Skip to content

Over the last decade, RDF representations of schema have acquired increasing importance. Both DDI-CDI and  DDI-L 4.0 in development) are designed from the ground up as model-based specifications that can automatically generate multiple representations and serialisations.  This simply means that these products can be used in the format of your choice, whether you prefer XML, JSON, or other implementation syntaxes.  This page outlines some of the options available to you to consume RDF artefacts.

RDF namespace

Put simply, this means that all RDF-related artefacts are reachable under this base URI.
 

JSON-LD

The top-level JSON-LD file for all classes and properties is available from:
http://www.ddialliance.org/Specification/DDI-CDI/1.0/RDF/ddi-cdi.jsonld

Individual JSON-LD files for each class and property are also available - see full list here.


Ontology (Turtle)

The top-level TTL ontology file for all classes and properties is available from:
http://www.ddialliance.org/Specification/DDI-CDI/1.0/RDF/ddi-cdi.onto.ttl

 Imported TTL files by the top-level wrapper file are also available - see full list here.


RDF URI resolution and content negotiation

All DDI-CDI classes and properties have a unique identifier.  This means that you can machine-actionably resolve a URI to either JSON-LD or TTL information depending on how you specify the HTTP Accept header.

Using the DDI-CDI Agent class as an example, the URI is http://www.ddialliance.org/Specification/DDI-CDI/1.0/RDF/Agent.
By default, if no content type is specified, then the URI will resolve to the appropriate HTML page in the model documentation.

However, if you specify either application/ld+json or text/turtle in the HTTP Accept Header, then RDF data will be returned to the client.

A practical example using cURL is provided below:
curl --location 'http://www.ddialliance.org/Specification/DDI-CDI/1.0/RDF/Agent' --header 'Accept: application/ld+json'