Generic schema for an arbitrarily detailed description of "things"
This schema provides a generic Thing concept as a basic building block.
Key concepts of this schema are that any Thing
- has a unique identifier (
pid) - can be mapped to arbitrary external schemas and terminologies to maximize
semantic alignment with existing metadata ecosystems
(see
mappings) - can be further described by attributes (
attributes) and qualified relations to other "things" (characterized_by), without prescribing a particular vocabulary - can be associated with a specialized schema class for enabling detailed
validation and precise data transformations (
schema_type) without limiting the general expressiveness to a fixed set of classes available this foundational schema. - can be associated with any number of (
identifiers.
More information on this schema is available on a dedicated page.
Each class comes with dedicated examples that exemplify its use. A good
starting point are the examples of the Thing class.
Although this generic schema could be used directly, it is meant to be used
as a foundational building block for more targeted schemas. Therefore, the
schema does not define common slots like name, or title, and leaves
this to more targeted schemas to decide if such slots are needed, and how they
should be defined. The envisioned use and reuse of this schema is to import
it and built targeted derivatives of Thing and other classes provided here.
See the things-data schema for an example that is built on
this schema.
This schema also incorporates a few fundamental type definitions, such as
HexBinary (for checksum-like identifiers), and
NonNegativeInteger for counts.
The schema definition is available as
Upcoming changes to this schema may be available in an (unreleased) development version.
Upgrading vom Version 1
Most changes to the schema have been additions and should not break existing use cases. However, the following changes are backward incompatible
- All
sh:orderslot annotations have been removed. - The
ADMSvocabulary is no longer used and the prefix definition was removed. - The obsolete
dltypesprefix has been removed. - The
exthisnsprefix definition was removed. Theexprefix continues to be available.
A dedicated AnnotationTag class has been added, and is used as the range
of the annotation_tag slot.
URI: https://concepts.datalad.org/s/things/v2
Name: things-schema
Classes
| Class | Description |
|---|---|
| Annotation | A tag/value pair with the semantics of OWL Annotation |
| AttributeSpecification | An attribute is conceptually a thing, but it requires no dedicated identifier... |
| Identifier | An identifier is a label that uniquely identifies an item in a particular con... |
| Statement | An RDF statement that links a predicate (a Property) with an object (a ... |
| Thing | The most basic, identifiable item |
| AnnotationTag | A tag identifying an annotation |
| Property | An RDF property, a Thing used to define a predicate, for example in a `St... |
| ValueSpecification | A Thing that is a value of some kind |
| ThingMixin | Mix-in with the common interface of Thing and AttributeSpecification |
| ValueSpecificationMixin | Mix-in for a (structured) value specification |
Slots
| Slot | Description |
|---|---|
| about | A relation of an information artifact to the subject, such as a URL identifyi... |
| annotation_tag | A tag identifying an annotation |
| annotation_value | The actual annotation |
| annotations | A record of properties of the metadata record on a subject, a collection of t... |
| attributes | Declares a relation that associates a Thing (or another attribute) with an ... |
| broad_mappings | A list of terms from different schemas or terminology systems that have broad... |
| characterized_by | Qualifies relationships between a subject Thing and an object Thing with ... |
| close_mappings | A list of terms from different schemas or terminology systems that have close... |
| creator | An agent responsible for making an entity |
| defined_by | Indicate a resource defining the subject |
| description | A free-text account of the subject |
| display_label | Label that can be shown when the metadata record is displayed as an item |
| display_note | Note that can be shown when the record is displayed as an item |
| editorial_notes | A comment about a metadata record either providing additional information for... |
| exact_mappings | A list of terms from different schemas or terminology systems that have ident... |
| identifiers | An unambiguous reference to the subject within a given context |
| kind | The nature of the subject |
| mappings | A list of terms from different schemas or terminology systems that have compa... |
| narrow_mappings | A list of terms from different schemas or terminology systems that have narro... |
| notation | String of characters such as "T58:5" or "30:4833" used to uniquely identify a... |
| object | Reference to a Thing within a Statement |
| pid | Persistent and globally unique identifier of a Thing |
| predicate | Reference to a Property within a Statement |
| range | Declares that the value of a Thing or AttributeSpecification are instance... |
| related_mappings | A list of terms from different schemas or terminology systems that have relat... |
| relations | Declares an unqualified relation of the subject Thing to another Thing |
| schema_type | State that the subject is an instance of a particular schema class |
| unit | A unit of measurement is a standardized quantity of a physical quality |
| value | Value that is a direct representation of a thing |
Enumerations
| Enumeration | Description |
|---|---|
Types
| Type | Description |
|---|---|
| Boolean | A binary (true or false) value |
| Curie | a compact URI |
| Date | a date (year, month and day) in an idealized calendar |
| DateOrDatetime | Either a date or a datetime |
| Datetime | The combination of a date and time |
| Decimal | A real number with arbitrary precision that conforms to the xsd:decimal speci... |
| Double | A real number that conforms to the xsd:double specification |
| EmailAddress | RFC 5322 compliant email address |
| Float | A real number that conforms to the xsd:float specification |
| HexBinary | hex-encoded binary data |
| Integer | An integer |
| Jsonpath | A string encoding a JSON Path |
| Jsonpointer | A string encoding a JSON Pointer |
| Ncname | Prefix part of CURIE |
| Nodeidentifier | A URI, CURIE or BNODE that represents a node in a model |
| NodeUriOrCurie | A type referencing an graph node |
| NonNegativeInteger | An integer |
| Objectidentifier | A URI or CURIE that represents an object in the model |
| Sparqlpath | A string encoding a SPARQL Property Path |
| String | A character string |
| Time | A time object represents a (local) time of day, independent of any particular... |
| Uri | a complete URI |
| Uriorcurie | a URI or a CURIE |
Subsets
| Subset | Description |
|---|---|