Skip to content

Relax constraints on rdf:type #45

@acoburn

Description

@acoburn

At present, the constraints module forbids setting any rdf:type triples where the type is in the LDP type domain. The idea here was to encourage clients to use Link headers for setting the resource types.

However, this seems to be rather heavy-handed. I would rather remove any sort of "type restrictions"; that is, users should be able to put whatever RDF in a resource they want to, even if that RDF makes no sense -- it shouldn't be up to Trellis to enforce such things.

That is, if a client wants to create a ldp:BasicContainer resource (via link headers) that contains the triple <> rdf:type ldp:DirectContainer, so be it. The LDP spec is clear on this point: the Link header always wins.

A middle position would be to allow setting rdf:type triples in the LDP domain but only if that type is the same as the resource's interaction model or some subtype thereof. My counter-argument to that is just that doing so will add more complexity to the code and I really don't want Trellis to be in the business of policing rdf:type semantics.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions