RDFLib / pyLDAPI

A very small module to add Linked Data API functionality to a Python Flask installation
BSD 3-Clause "New" or "Revised" License
41 stars 11 forks source link

reg:Register not appropriate as a generic container class #17

Closed dr-shorthair closed 4 years ago

dr-shorthair commented 4 years ago

The class reg:Registry is defined in the Registry Ontology .

The Registry Ontology was designed to follow the ISO 19135 registration model, which focuses primarily on 'registration' as an activity, relating to endorsement, identifier assignment, and lifecycle. A Register is a collection of RegisterItems. But note that a RegisterItem is "A metadata record for an entry in a register. " The actual entity is two more steps removed, via the path reg:definition/reg:entity.

image

I don't think this is the sense that it is being used in pyLDAPI, where it is being used a generic container for either 'features' (i.e. individual objects) or nested containers.

dr-shorthair commented 4 years ago

Maybe: https://www.w3.org/TR/ldp/#ldpc though this is oriented towards repositories rather than collections (a fine distinction, maybe too fine).

Not clear if LDP has a life though. Apache Marmotta has not implemented the full spec yet, and the issue tracker is not very active.

Trellis has a smaller team, but looks a bit more current

dr-shorthair commented 4 years ago

Having explored the documentation around RDF containers - e.g. https://www.w3.org/2007/02/turtle/primer/#L2581 https://www.oreilly.com/library/view/practical-rdf/0596002637/ch04.html I'm coming around to thinkng that rdf:Bag or rdf:Collection - together with rdfs:member is the generic case.

(of course rdfs:member points in the opposite direction to reg:register but that only requires SPARQL graph patterns to have the odd line reversed.)

nicholascar commented 4 years ago

Conneg by P branch of this repo now in test. I’ll make this change once the ConnegP branch has been merged into master.

nicholascar commented 4 years ago

Moved to rdf:Bag with suggested rdfs:member as of v3.3 https://github.com/RDFLib/pyLDAPI/commit/03b9b38ac014b00c996825b92fa10caa6d840437