TREEcg / specification

RDF vocabulary and hypermedia specification to publish your Linked Data using search trees
https://w3id.org/tree/specification
27 stars 12 forks source link

Question about: The Member Extraction Algorithm #87

Closed xdxxxdx closed 8 months ago

xdxxxdx commented 8 months ago

Hello, I am making this issue for the transparency between the discussions and concerns for https://github.com/TREEcg/specification/pull/78

1: the immutable concern addressed by @sandervd

https://treecg.github.io/specification/#member-extraction-algorithm

For the 1a, if SHACL shape is set, a template needs to be created for executing member extraction algorithm. (might be good have change line "br /" before 1.a, 1b?)

Then https://treecg.github.io/specification/#shape-template-extraction

If the current focus node is a named node and it was not requested before: test if all required paths are set, if not do an HTTP request, if they are set, then, (Here should be something after then? might be a typo?) test if at least one of each list in the atLeastOneLists was set. If not, do an HTTP request.

How we can guarantee the triples behind the deference are immutable. (From the scope of LDES).

2: Node links and atLeastOneLists

I am lost by these two definitions, might be useful to have an example?

Thanks

pietercolpaert commented 8 months ago

Q1: Immutability concern

  1. Indeed, formatting should add a newline there
  2. For LDES, the publisher should indeed guarantee the member extracted from the dereferenced page are immutable -- this is the case for for example Marine Regions, where version identifiers are being used each time the entity on that page updates.

Q1: Node Links and At Least One Lists

NodeLinks are a reference to another node shape that must be valid on a certain path.

At least one lists are a list of shapes, where only one of them need to be set to not trigger an HTTP request. Only the valid shapes are further processed for the quads to be included in the member. They exist in order to be able to model a logical OR for multiple options instead of the AND that is there by default.