DS Specifications
Domain SpecificationsListsVocabularies
main
main
  • DS Specifications Overview
  • Domain Specifications
    • DS-V7
      • DS-V7 - Changelog
      • DS-V7 - Developer Notes
      • DS-V7 - Grammar
        • Domain Specification
          • @Context
          • Domain Specification Node
          • Property Node
          • Class Node
          • DataType Node
          • Enumeration Node
        • Verification Report
          • Verification Report Node
          • Error Entry Node
          • Error List for the domain-specific verification
        • DS-Path
      • DS-V7 - Examples
    • DS-V6
    • DS-V5
      • DS-V5 - Grammar
        • VerificationReport
          • Error List for the basic verification
          • Verification of schema.org annotations
          • Error List for the Meta verification of DS (unfinished)
          • Error List for the DS-based verification
        • Grammar and semantics of Domain Specifications
          • Enumeration Node
          • Property Node
          • Domain Specification Node
          • Class Node
          • Terms used in Domain Specifications
          • @Context
          • DataType Node
      • DS-V5 - Examples
    • DS-V4
    • DS-V3
      • DS-V3 - Examples
      • DS-V3 - Grammar
        • VerificationReport
          • Error List for the basic verification
          • Verification of schema.org annotations
          • Error List for the DS-based verification
          • Error List for the Meta verification of DS
        • Grammar and semantics of Domain Specifications
          • SDO Enumeration
          • SDO Property
          • Domain Specification
          • SDO Class
          • SDO Datatype
          • @Context
    • DS-V2
      • DS-V2 - Grammar
        • Grammar and semantics of Domain Specifications
          • Grammar Documentation for node type "RestrictedEnumeration"
          • Grammar Documentation for node type "CustomEnumerationValue"
          • Grammar Documentation for node type "Enumeration"
          • Grammar Documentation for node type "Property"
          • Grammar Documentation for node type "RestrictedProperty"
          • Grammar Documentation for node type "DomainSpecification"
          • Grammar Documentation for node type "RestrictedClass"
          • Grammar Documentation for node type "EnumerationValue"
          • Grammar Documentation for node type "Class"
          • Grammar Documentation for node type "DataType"
        • Numeric Pattern
        • Grammar Documentation for node type "VerificationReport"
          • Grammar Documentation for node type "Error"
          • Error codes for Verification Reports
        • Rules Grammar
          • Grammar Documentation for node type "ComplexRule"
          • Grammar Documentation for node type "DateRule"
          • Grammar Documentation for node type "TextRule"
          • Grammar Documentation for node type "TimeRule"
          • Grammar Documentation for node type "NumberRule"
          • Grammar Documentation for node type "BooleanRule"
          • Grammar Documentation for node type "DateTimeRule"
      • DS-V2 - Examples
    • DS-V1
      • DS-V1 - Examples
      • DS-V1 - Grammar
  • SDO-Verification
  • Lists
    • List-V1
  • Vocabularies
  • DS-Vocabulary
    • Input
      • Vocabulary for Domain Specifications
      • DS-Vocabulary
    • DS-Vocab-V1
Powered by GitBook
On this page
  • Domain Specification Node
  • Restricted Class Node
  • Property Node
  • Class Node
  • Restricted Enumeration Node
  • Enumeration Value Node
  • Data Type Node
  1. Domain Specifications
  2. DS-V1

DS-V1 - Grammar

PreviousDS-V1 - ExamplesNextSDO-Verification

Last updated 4 years ago

The grammar for DS-V1 is given below in . The grammar consists of 7 different node-types, that are used to construct a Domain Specification. A Domain Specification is a tree-shaped JSON-LD, like the annotations it should represent.

Domain Specification Node

The Domain Specification Node is the start node (aka. root-node) for a Domain Specification.

It contains the @context for the whole document, which includes only schema.org and the (virtual) DS Vocabulary:

"@context": {
    "dsv": "http://ontologies.sti-innsbruck.at/dsv/",
    "schema": "http://schema.org/"
}

dsv:class holds an array of possible restricted Classes that this DS would allow. If an annotation complies to at least one of these restricted classes, the annotation would be in compliance to the DS.

Restricted Class Node

A Restricted Class Node is used to represent a Class from schema.org (dsv:baseClass) that has a specific set of further specified properties (dsv:property).

Property Node

A Property Node is used to represent a Property from schema.org (dsv:baseProperty) that has cardinality constraints (dsv:isOptional and dsv:multipleValuesAllowed), and a specific set of further specified ranges (dsv:expectedType).

Class Node

A Class Node is used to represent a Class from schema.org (@id). In this case no further constraints are given: the corresponding Class may have any set of properties allowed by schema.org for this class.

Restricted Enumeration Node

A Restricted Enumeration Node is used to represent an Enumeration from schema.org (dsv:baseEnumeration) that has a specific set of further specified enumeration values = valid instances (dsv:expectedEnumerationValue).

Enumeration Value Node

An Enumeration Value Node is used to represent an Enumeration Value from schema.org (@id).

Data Type Node

A Data Type Node is used to represent a Data Type from schema.org (@id).

BNF
Syntax diagram
Syntax diagram
Syntax diagram
Syntax diagram
Syntax diagram
Syntax diagram
Syntax diagram