-
Notifications
You must be signed in to change notification settings - Fork 2
Linked data platform
The Linked Data Platform is a W3C specification, currently at First Pass Working Draft stage. http://www.w3.org/TR/ldp/
While it is not a registry it does provide additional constraints on linked data resources (LDPR) and provides a notion of a mutable container (LDPC) that are relevant to registries.
LDP imposes restrictions on RDF that can be used. In particular, it limits datatypes in a way that precludes use of skos:notation. This means that full compliance with LDP as currently formulated would not be possible.
Use of dct is encouraged but dct:title and dct:description are restricted to being XML literals.
Use of rdfs:label is restricted to only use for vocabulary terms (!)
GET | returns an RDF representation of the resource in the usual way, Turtle support is required, RDF/XML support optional. |
PUT | replaces the whole RDF representation of the resource except for dct:modified and dct:creator which are managed directly by the container. ETag is required to be supported so that a client can do a conditional "If-Match" update. |
DELETE | to delete a resource. |
PATCH | is allowed to be supported but no standardized PATCH format is defined. |
Container membership is defined by a set of membership triples with same subject and predicate. Default is for the subject to be the container itself and the predicate to be rdfs:member but a container can override either or post of those.
GET | returns a list of members and optionally some description of each member. The amount of information returned for each member is defined by the server. The query string <container>?non-member-properties is used to force return of non-member properties of the container, i.e. only the container metadata. Paging is supported by treating <container>?firstPage as the URI for a page of members, the page should contain a ldp:nextPage link to the next page e.g. <container>?p=2 or rdf:nil if it is the last page. Lacks the ordering capabilities of the Linked Data API. |
POST | adds a new member to the container, returns 201 with a Location header pointing to the created resource. The "null relative URI <>" in the POST body refers to the entity being created. |
PUT | only allowed on <container>?non-member-properties and only allowed to update container metadata, not members. |
DELETE | deletes the container and may or may not delete the contained resources. |