for Developers

This is a placeholder page for developer-oriented information about In particular it gives access to machine-readable representations of our schemas.

Machine Readable Term Definitions

Machine-readable definitions of individual terms are availble as RDFa, embeded into the term page html. It is also available in other formats by accessing term URLs, using the Linked Data Content Negotiation technique of providing the required type in an HTTP Accept header value. The same content is also available by providing an appropriate suffix to the term URL. For example the Triples definition for the Book Type can bet retrieved with the following URL /Book.nt.

The currently supported format types, relevant Accept values, and url suffixes are:

Note: This is currently an experimental feature

Vocabulary Definition Files

To assist developers, files containing the definition of the core vocabulary and its extensions are available for download in common RDF formats.

Older releases can be found (under data/releases/) at GitHub.

Select the file and format required and click Download. The CSV format downloads are split accross two files: Types includes definitions of Types and Enumeration Values, including lists of associated properties; Properties contains property definitions.

Note: File schema contains the definition of the core vocabulary; bib contains only the definitions for the extension; all-layers contains definitions for the core plus all the extensions.

File: Format:


The following representations are experimental and may change or be removed in future releases.


A simplification of the type hierarchy, in which each type has at most one super-type, represented in a hybrid format that combines JSON-LD, RDFS and D3: tree.jsonld.

This file is made available to support developers using the D3 JavaScript library for manipulating documents based on data. It uses JSON-LD to declare that D3's default "children" JSON field represents "subClassOf" relationships, but expressed in the reverse direction (example usage).


As an experimental feature, an OWL definition file schemaorg.owl is available. It includes the core and all current extensions to the vocabulary.

The structure of the file differs from the above vocabulary definition files, in that schema:domainIncludes and schema:rangeIncludes values are converted into rdfs:domain and rdfs:range values using owl:unionOf to capture the multiplicity of values. Included in the range values are the, implicit within the vocabulary, default values of Text, URL, and Role.

This file has been made available to enable the representation of the vocabulary in some OWL-based modeling tools. The mapping into OWL is an approximation, and should not be considered an authoritative definition for's terms; see datamodel page for details. As an experimental feature, there are no expectations as to its interpretation by any third party tools.