This document describes the Shape Expression Vocabulary and Term definitions used for describing Shape Expressions [[shex-semantics]]. This document provides the RDFS [[RDF-SCHEMA]] vocabulary definition and a description of the JSON-LD context definition for use with defining shape expressions.
Alternate versions of the vocabulary definition exist in
which also includes the
@context required for metadata descriptions.
This document describes the RDFS vocabulary description used in the Shape Expression Language (ShEx) [[shex-semantics]] along with the default JSON-LD Context and shape expression to validate RDF versions of shapes.
This specification makes use of the following namespaces:
The following are class definitions in the
Annotations provide a format-independent way to provide additional information about elements in a schema.
A TripleExpression composed of one or more sub-expressions, all of which must match.
An IRI prefix used for matching IRIs.
An IRI prefix (or wildcard) along with a set of excluded values, used for node matching.
An Language tag used for matching Literal Languages.
An Language prefix used for matching Literal Languages.
An Language prefix (or wildcard) along with a set of excluded values, used for node matching.
An Literal prefix used for matching Literals.
An Literal prefix (or wildcard) along with a set of excluded values, used for node matching.
A constraint on the type or value of an RDF Node.
The set of kinds of RDF Nodes.
A TripleExpression composed of one or more sub-expressions, one of which must match.
A Schema contains the set of shapes, used for matching a focus node.
A list of Semantic Actions that serve as an extension point for Shape Expressions. They appear in lists in Schema's startActs and Shape, OneOf, EachOf and TripleConstraint's semActs.
A shapes schema is captured in a Schema object where shapes is a mapping from shape label to shape expression.
A ShapeExpression composed of one or more sub-expressions, all of which must match.
The abstract class of Shape Expressions.
A reference to a shape defined in some external Schema.
A ShapeNot is satisfied when it’s included ShapeExpression is not satisfied.
A ShapeExpression composed of one or more sub-expressions, one of which must match.
Abstract class for Stems
Abstract Class for Stem Ranges
A constraint on a triple having a specific predicate and optionally a shape expression used for matching values.
The abstract class of Triple Expressions.
Indicates that a stem is a Wildcard, rather than a URI prefix.
The following are property definitions in the
Annotations on a TripleExpression.
Indicates that a Shape is closed, meaning that it may contain no property values other than those used within TripleConstraints.
Code executed by Semantic Action.
A datatype constraint.
Values that are excluded from value matching.
Expression associated with the TripleExpression.
List of 2 or more expressions associated with the TripleExpression.
Properties which may have extra values beyond those matched through a constraint.
Regular expression flags
for "fractiondigits" constraints, v is less than or equals the number of digits to the right of the decimal place in the XML Schema canonical form[xmlschema-2] of the value of n, ignoring trailing zeros.
Constrains the subject of a triple, rather than the object.
The value used to match the language tag of a language-tagged string.
The exact length of the value of the cell.
Maximum number of times this TripleExpression may match; -1 for “*”
An atomic property that contains a single number that is the maximum valid value (exclusive).
An atomic property that contains a single number that is the maximum valid value (inclusive).
A numeric atomic property that contains a single integer that is the maximum length of the value.
Minimum number of times this TripleExpression may match.
An atomic property that contains a single number that is the minimum valid value (exclusive).
An atomic property that contains a single number that is the minimum valid value (inclusive).
An atomic property that contains a single integer that is the minimum length of the value.
Identifier of SemAct extension.
Restiction on the kind of node matched; restricted to the defined instances of NodeKind. One of shex:iri, shex:bnode, shex:literal, or shex:nonliteral.
Abstract property of numeric facets on a NodeConstraint.
The object of an Annotation.
A regular expression used for matching a value.
The predicate of a TripleConstraint or Annotation.
Semantic Actions on this TripleExpression.
Shape Expression referenced by this shape.
A list of 2 or more Shape Expressions referenced by this shape.
Shapes in this Schema.
A ShapeExpression matched against the focus node prior to any other mapped expressions.
Semantic Actions run on the Schema.
A stem value used for matching or excluding values.
An abstract property of string facets on a NodeConstraint.
for "totaldigits" constraints, v equals the number of digits in the XML Schema canonical form[xmlschema-2] of the value of n
A ShapeExpression used for matching the object (or subject if inverted) of a TripleConstraint.
A value restriction on a NodeConstraint.
An abstract property of string and numeric facets on a NodeConstraint.
The following are datatype definitions in the
The following are instance definitions in the
Requires node to be a Blank Node
Requires node to be an IRI
Requires node to be an rdf:Literal
Requires node to be a Blank Node or IRI