Description
The following compact data expands as expected to a @list
of vocabulary term IRIs:
{
"@context": {
"owl": "http://www.w3.org/2002/07/owl#",
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"owl:unionOf": {"@container": "@list", "@type": "@vocab"},
"@base": "http://purl.org/ontology/bibo/"
},
"@graph": [
{
"@id": "authorList",
"rdfs:range": {
"owl:unionOf": ["rdf:List", "rdf:Seq"]
}
}
]
}
However, when compacting the results using the same context, the JSON-LD 1.1 algorithm fails to produce the same compact form.
Here is the above example and the problematic compaction behaviour in the playground.
There are many use cases where a compact form of the combination of @container: @list
and @type: @vocab
is useful, such as when expressing an owl:unionOf
or a owl:propertyChainAxiom, a FRESNEL lens or various expressions in ShEx and SHACL .
I have implemented a fix for this in TRLD. As this implementation strives to follow the specification algortihm, these changes ought to be fairly easy to apply in the specification too (adjusting some prose, and introducing a new section for the new sub-algorithm).
Metadata
Metadata
Assignees
Labels
Type
Projects
Status