(Statements about an entity)



Statement Template


Predicate Constraint



Value Constraint

Instance Data, whether in the form of metadata records, databases, or networked graphs such as Wikidata, typically makes statements about things “in the world” — books, their authors, viruses, buildings, and the like. A single Statement consists of a Property-Value pair. A set of statements about a distinct entity in the world is referred to here as as a Description. Because a given body of Instance Data may describe multiple things in the world, it may be said to consist of multiple Descriptions.

An Application Profile (here: a TAP) enumerates the properties and characterizes the values that are expected to be found in a given body of Instance Data. In effect, an Application Profile is a description of a description – a notion that is inevitably somewhat confusing. To minimize this confusion, the DCTAP Model names the things “in Instance Data” differently from the things “in an Application Profile” (see table above).

In an Application Profile: - a Statement in Instance Data is described with a Statement Template; - a Property-Value pair is described with a Predicate Constraint and Value Constraint; - a set of Statements in Instance Data about exactly one real-world Entity (aka Description) is described in a Shape. Where a Description in Instance Data groups a set of Statements, a Shape groups a set of Statement Templates.

The DCTAP Model consists of Shapes and Statement Templates, each of which consists of DCTAP Elements (a generic term for the column headers in a CSV File).

Because the DCTAP Model was designed for compatibility with RDF and Linked Data, property constraints, shapes, literal datatypes, and some value constraints are represented in a TAP with IRIs (or Compact IRIs).