Class: Thing
The most basic, identifiable item. In addition to the slots that are common between a Thing and an AttributeSpecification (see ThingMixin), two additional slots are provided. The pid slot takes the required identifier for a Thing. The relation slot allows for the inline specification of other Thing instances. Such a relation is unqualified (and symmetric), and should be further characterized via a Statement (see characterized_by). From a schema perspective, the relation slots allows for building self-contained, structured documents (e.g., a JSON object) with arbitrarily complex information on a Thing.
URI: dlthings:Thing
classDiagram
class Thing
click Thing href "../Thing/"
ThingMixin <|-- Thing
click ThingMixin href "../ThingMixin/"
Thing <|-- Property
click Property href "../Property/"
Thing <|-- ValueSpecification
click ValueSpecification href "../ValueSpecification/"
Thing <|-- AnnotationTag
click AnnotationTag href "../AnnotationTag/"
Thing : about
Thing --> "*" Thing : about
click Thing href "../Thing/"
Thing : annotations
Thing --> "*" Annotation : annotations
click Annotation href "../Annotation/"
Thing : attributes
Thing --> "*" AttributeSpecification : attributes
click AttributeSpecification href "../AttributeSpecification/"
Thing : broad_mappings
Thing : characterized_by
Thing --> "*" Statement : characterized_by
click Statement href "../Statement/"
Thing : close_mappings
Thing : description
Thing : display_label
Thing : display_note
Thing : editorial_notes
Thing : exact_mappings
Thing : identifiers
Thing --> "*" Identifier : identifiers
click Identifier href "../Identifier/"
Thing : kind
Thing --> "0..1" Thing : kind
click Thing href "../Thing/"
Thing : narrow_mappings
Thing : pid
Thing : related_mappings
Thing : relations
Thing --> "*" Thing : relations
click Thing href "../Thing/"
Thing : schema_type
Inheritance
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| pid | 1 Uriorcurie |
Persistent and globally unique identifier of a Thing |
direct |
| relations | * Thing |
Declares an unqualified relation of the subject Thing to another Thing |
direct |
| about | * Thing |
A relation of an information artifact to the subject, such as a URL identifyi... | ThingMixin |
| annotations | * Annotation |
A record of properties of the metadata record on a subject, a collection of t... | ThingMixin |
| broad_mappings | * Uriorcurie |
A list of terms from different schemas or terminology systems that have broad... | ThingMixin |
| close_mappings | * Uriorcurie |
A list of terms from different schemas or terminology systems that have close... | ThingMixin |
| description | 0..1 String |
A free-text account of the subject | ThingMixin |
| display_label | 0..1 String |
Label that can be shown when the metadata record is displayed as an item | ThingMixin |
| display_note | 0..1 String |
Note that can be shown when the record is displayed as an item | ThingMixin |
| editorial_notes | * String |
A comment about a metadata record either providing additional information for... | ThingMixin |
| exact_mappings | * Uriorcurie |
A list of terms from different schemas or terminology systems that have ident... | ThingMixin |
| identifiers | * Identifier |
An unambiguous reference to the subject within a given context | ThingMixin |
| kind | 0..1 Thing |
The nature of the subject | ThingMixin |
| attributes | * AttributeSpecification |
Declares a relation that associates a Thing (or another attribute) with an ... |
ThingMixin |
| characterized_by | * Statement |
Qualifies relationships between a subject Thing and an object Thing with ... |
ThingMixin |
| narrow_mappings | * Uriorcurie |
A list of terms from different schemas or terminology systems that have narro... | ThingMixin |
| related_mappings | * Uriorcurie |
A list of terms from different schemas or terminology systems that have relat... | ThingMixin |
| schema_type | 0..1 NodeUriOrCurie |
State that the subject is an instance of a particular schema class | ThingMixin |
Usages
| used by | used in | type | used |
|---|---|---|---|
| ThingMixin | about | range | Thing |
| ThingMixin | kind | range | Thing |
| AttributeSpecification | about | range | Thing |
| AttributeSpecification | kind | range | Thing |
| Identifier | creator | range | Thing |
| Property | relations | range | Thing |
| Property | about | range | Thing |
| Property | kind | range | Thing |
| Statement | object | range | Thing |
| Thing | relations | range | Thing |
| Thing | about | range | Thing |
| Thing | kind | range | Thing |
| ValueSpecification | relations | range | Thing |
| ValueSpecification | about | range | Thing |
| ValueSpecification | kind | range | Thing |
| AnnotationTag | relations | range | Thing |
| AnnotationTag | about | range | Thing |
| AnnotationTag | kind | range | Thing |
Identifier and Mapping Information
Schema Source
- from schema: https://concepts.datalad.org/s/things/v2
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | dlthings:Thing |
| native | dlthings:Thing |
| exact | schema:Thing |
Examples
Example: Thing-01-minimal
# Any document on a Thing requires a identifier.
# Beyond that, no property is required.
pid: ex:mything
Example: Thing-05-publication
# A record on a scientific publication, as an example of describing
# a rather specialized thing without any dedicated support for
# specialized concepts by the schema itself.
# other schemas for those aspects.
pid: https://doi.org/10.1038/s41597-022-01163-2
exact_mappings:
- bibo:AcademicArticle
description: "Large-scale datasets present unique opportunities to perform scientific investigations with unprecedented breadth. However, they also pose considerable challenges for the findability, accessibility, interoperability, and reusability (FAIR) of research outcomes due to infrastructure limitations, data usage constraints, or software license restrictions. Here we introduce a DataLad-based, domain-agnostic framework suitable for reproducible data processing in compliance with open science mandates. The framework attempts to minimize platform idiosyncrasies and performance-related complexities. It affords the capture of machine-actionable computational provenance records that can be used to retrace and verify the origins of research outcomes, as well as be re-executed independent of the original computing infrastructure. We demonstrate the frameworkâs performance using two showcases: one highlighting data sharing and transparency (using the studyforrest.org dataset) and another highlighting scalability (using the largest public brain imaging dataset available: the UK Biobank dataset)."
relations:
# the containing journal with some information on it
ISSN:2052-4463:
exact_mappings:
- bibo:Journal
attributes:
- predicate: ex:title
value: "Scientific Data"
attributes:
- predicate: ex:title
value: "FAIRly big: A framework for computationally reproducible processing of large-scale data"
# DOI
- predicate: ex:identifier
exact_mappings:
- obo:IAO_0020000
attributes:
- predicate: skos:notation
value: 10.1038/s41597-022-01163-2
- predicate: dcterms:creator
value: https://doi.org
# bibliographic information
- predicate: ex:bibliographicCitation
value: "Wagner, A.S., Waite, L.K., Wierzba, M. et al. FAIRly big: A framework for computationally reproducible processing of large-scale data. Sci Data 9, 80 (2022)."
- predicate: bibo:doi
attributes:
- predicate: ex:title
value: DOI
value: https://doi.org/10.1038/s41597-022-01163-2
- predicate: bibo:volume
attributes:
- predicate: ex:title
value: Volume
value: "9"
- predicate: bibo:number
attributes:
- predicate: ex:title
value: Document number
value: "80"
- predicate: bibo:numPages
attributes:
- predicate: ex:title
value: Number of pages
value: "17"
range: xsd:nonNegativeInteger
- predicate: ex:modified
range: xsd:date
value: "2022-02-11"
- predicate: ex:date
range: xsd:date
value: "2022-03-11"
characterized_by:
# containing journal
- predicate: ex:isPartOf
object: ISSN:2052-4463
# related topics
- predicate: ex:subject
object: https://www.nature.com/subjects/data-processing
- predicate: ex:subject
object: https://www.nature.com/subjects/data-publication-and-archiving
- predicate: ex:subject
object: https://www.nature.com/subjects/software
# publisher landing page
- predicate: owl:sameAs
object: https://www.nature.com/articles/s41597-022-01163-2
- predicate: ex:license
object: https://spdx.org/licenses/CC-BY-4.0
Example: Thing-02-identifiers
# Identification options for a thing.
#
# `pid` is the identifier of the metadata record. In practice it can
# by any of the identifiers below. In a particular context, it is often
# useful to agree on a particular type of identifier to simplify knowledge
# aggregation for individual things. Arbitrary other identifiers
# can be recorded in addition.
pid: https://ror.org/02nv7yv05
identifiers:
# Research Organization Registry
- notation: 02nv7yv05
creator: https://ror.org
# German National Library
# (here not using the direct value specification, but defining
# a proper identifier with a `notation`)
- notation: 5008462-8
creator: https://d-nb.info
characterized_by:
# Use `sameAs` to point to other sources talking about the same thing
- object: https://en.wikipedia.org/wiki/Forschungszentrum_J%C3%BClich
predicate: owl:sameAs
- object: https://www.wikidata.org/wiki/Q697111
predicate: owl:sameAs
Example: Thing-03-topic
# Relate a thing to topic/subjects
pid: https://doi.org/10.21105/joss.03262
characterized_by:
# DataLad software
- object: https://www.scicrunch.org/resolver/SCR_003931
predicate: ex:subject
Example: Thing-02-aid
pid: ex:mything
display_label: My Thing
display_note: >-
In case someone is wondering what that thing of mine is,
they could read further here...
editorial_notes:
- >-
The only reason this record exists, is to function as
an example in the documentation of `FlatThing`.
Remove whenever there is no longer a need for that.
- "And also: this is lame!"
identifiers:
- creator: obo:FOODON_03411328
notation: meh
Example: Thing-04-relations
# `relations` is the only slot that allows for inlining other `Thing`
# records
# example: a paper
pid: https://doi.org/10.21105/joss.03262
relations:
# the containing journal
ISSN:2475-9066:
# inlined information
attributes:
- predicate: ex:title
value: "Journal of Open Source Software"
# the datalad software (no information beyond the `pid` is inlined)
https://www.scicrunch.org/resolver/SCR_003931:
Example: Thing-06-annotations
# generic record annotation available for any `Thing`.
# annotation tags can be Thing identifiers, enabling the
# use of convention-driven local annotation patterns.
# annotation values are arbitrary strings, their interpretation
# being subject to such conventions
pid: https://example.org/thething
annotations:
# approved by
obo:NCIT_C42615: https://www.trr379.de/contributors/michael-hanke
# target audience is the public
dcterms:audience: obo:NCIT_C49060
# deprecated
obo:NCIT_C71491:
LinkML Source
Direct
name: Thing
description: The most basic, identifiable item. In addition to the slots that are
common between a `Thing` and an `AttributeSpecification` (see `ThingMixin`), two
additional slots are provided. The `pid` slot takes the required identifier for
a `Thing`. The `relation` slot allows for the inline specification of other `Thing`
instances. Such a relation is unqualified (and symmetric), and should be further
characterized via a `Statement` (see `characterized_by`). From a schema perspective,
the `relation` slots allows for building self-contained, structured documents (e.g.,
a JSON object) with arbitrarily complex information on a `Thing`.
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- schema:Thing
mixins:
- ThingMixin
slots:
- pid
- relations
slot_usage:
about:
name: about
multivalued: true
relations:
name: relations
inlined: true
inlined_as_list: false
class_uri: dlthings:Thing
Induced
name: Thing
description: The most basic, identifiable item. In addition to the slots that are
common between a `Thing` and an `AttributeSpecification` (see `ThingMixin`), two
additional slots are provided. The `pid` slot takes the required identifier for
a `Thing`. The `relation` slot allows for the inline specification of other `Thing`
instances. Such a relation is unqualified (and symmetric), and should be further
characterized via a `Statement` (see `characterized_by`). From a schema perspective,
the `relation` slots allows for building self-contained, structured documents (e.g.,
a JSON object) with arbitrarily complex information on a `Thing`.
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- schema:Thing
mixins:
- ThingMixin
slot_usage:
about:
name: about
multivalued: true
relations:
name: relations
inlined: true
inlined_as_list: false
attributes:
pid:
name: pid
description: Persistent and globally unique identifier of a `Thing`.
title: Persistent identifier
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- dcterms:identifier
- schema:identifier
rank: 1000
identifier: true
alias: pid
owner: Thing
domain_of:
- Thing
range: uriorcurie
required: true
relations:
name: relations
description: Declares an unqualified relation of the subject `Thing` to another
`Thing`. This schema slot is used to define related things inline. If such a
definition is not needed. A qualified relationship can be declared directly
using the `characterized_by` slot.
title: Relations
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- dcat:relation
- dcterms:relation
rank: 1000
slot_uri: dlthings:relation
alias: relations
owner: Thing
domain_of:
- Thing
symmetric: true
relational_role: OBJECT
range: Thing
multivalued: true
inlined: true
inlined_as_list: false
about:
name: about
description: A relation of an information artifact to the subject, such as a URL
identifying the topic of a document.
title: About
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- schema:about
- obo:IAO_0000136
rank: 1000
slot_uri: dcterms:subject
alias: about
owner: Thing
domain_of:
- ThingMixin
range: Thing
multivalued: true
annotations:
name: annotations
description: A record of properties of the metadata record on a subject, a collection
of tag/text tuples with the semantics of OWL Annotation.
title: Annotations
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- obo:NCIT_C44272
rank: 1000
slot_uri: dlthings:annotations
alias: annotations
owner: Thing
domain_of:
- ThingMixin
range: Annotation
multivalued: true
inlined: true
broad_mappings:
name: broad_mappings
description: A list of terms from different schemas or terminology systems that
have broader meaning.
title: Broad mappings
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
is_a: mappings
slot_uri: skos:broadMatch
alias: broad_mappings
owner: Thing
domain_of:
- ThingMixin
range: uriorcurie
multivalued: true
close_mappings:
name: close_mappings
description: A list of terms from different schemas or terminology systems that
have close meaning.
title: Close mappings
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
is_a: mappings
slot_uri: skos:closeMatch
alias: close_mappings
owner: Thing
domain_of:
- ThingMixin
range: uriorcurie
multivalued: true
description:
name: description
annotations:
dash:singleLine:
tag: dash:singleLine
value: false
description: A free-text account of the subject.
title: Description
from_schema: https://concepts.datalad.org/s/things/v2
close_mappings:
- rdfs:comment
broad_mappings:
- obo:IAO_0000300
rank: 1000
slot_uri: dcterms:description
alias: description
owner: Thing
domain_of:
- ThingMixin
range: string
display_label:
name: display_label
description: Label that can be shown when the metadata record is displayed as
an item.
title: Record display label
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
slot_uri: skos:prefLabel
alias: display_label
owner: Thing
domain_of:
- ThingMixin
range: string
display_note:
name: display_note
annotations:
dash:singleLine:
tag: dash:singleLine
value: false
description: Note that can be shown when the record is displayed as an item. This
is typically longer than a label.
title: Record display note
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
slot_uri: skos:note
alias: display_note
owner: Thing
domain_of:
- ThingMixin
range: string
editorial_notes:
name: editorial_notes
annotations:
dash:singleLine:
tag: dash:singleLine
value: false
description: A comment about a metadata record either providing additional information
for a record curation, or leaving a comment after curation occurred. This can
be used to include information that is deemed relevant, but could not be expressed
in the provided fields.
title: Editorial note
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
slot_uri: skos:editorialNote
alias: editorial_notes
owner: Thing
domain_of:
- ThingMixin
range: string
multivalued: true
exact_mappings:
name: exact_mappings
description: A list of terms from different schemas or terminology systems that
have identical meaning.
title: Exact mappings
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
is_a: mappings
slot_uri: skos:exactMatch
alias: exact_mappings
owner: Thing
domain_of:
- ThingMixin
range: uriorcurie
multivalued: true
identifiers:
name: identifiers
description: An unambiguous reference to the subject within a given context.
title: Identifiers
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- schema:identifier
rank: 1000
slot_uri: dcterms:identifier
alias: identifiers
owner: Thing
domain_of:
- ThingMixin
range: Identifier
multivalued: true
inlined: true
inlined_as_list: true
kind:
name: kind
description: The nature of the subject.
title: Kind
comments:
- This is conceptually the same as an instance-level `broad_mappings`. It can
make sense to use this slot (in addition) in order to enable straightforward
type declarations for instances from a controlled, application specific vocabulary,
while also keeping the ability to use `broad_mappings` for alignment with external
vocabularies and applications.
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- dcterms:type
rank: 1000
slot_uri: dcterms:type
alias: kind
owner: Thing
domain_of:
- ThingMixin
range: Thing
attributes:
name: attributes
description: Declares a relation that associates a `Thing` (or another attribute)
with an attribute, where an attribute is an intrinsic characteristic, such as
a quality, capability, disposition, function, or is an externally derived attribute
determined from some descriptor (e.g. a quantity, position, label/identifier).
Technically, this declaration is done via an `AttributeSpecification` that combines
a `predicate` with a value declaration and the attribute-related slots of a
`Thing`. Importantly, such attributes are declared inline, because they do not
have a unique identifier. If an identifier is available, a `Thing` declaration
(see `relation`), and a qualification of that relationship via a `Statement`
(see `characterized_by`) should be preferred.
title: Attributes
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- sio:SIO_000008
rank: 1000
slot_uri: dlthings:attributes
alias: attributes
owner: Thing
domain_of:
- ThingMixin
range: AttributeSpecification
multivalued: true
inlined: true
inlined_as_list: true
characterized_by:
name: characterized_by
description: Qualifies relationships between a subject `Thing` and an object `Thing`
with a `Statement` declaring a `predicate` on the nature of the relationship.
title: Characterized by
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- obo:RO_0000053
rank: 1000
slot_uri: dlthings:characterized_by
alias: characterized_by
owner: Thing
domain_of:
- ThingMixin
range: Statement
multivalued: true
inlined: true
inlined_as_list: true
narrow_mappings:
name: narrow_mappings
description: A list of terms from different schemas or terminology systems that
have narrower meaning.
title: Narrow mappings
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
is_a: mappings
slot_uri: skos:narrowMatch
alias: narrow_mappings
owner: Thing
domain_of:
- ThingMixin
range: uriorcurie
multivalued: true
related_mappings:
name: related_mappings
description: A list of terms from different schemas or terminology systems that
have related meaning.
title: Related mappings
from_schema: https://concepts.datalad.org/s/things/v2
rank: 1000
is_a: mappings
slot_uri: skos:relatedMatch
alias: related_mappings
owner: Thing
domain_of:
- ThingMixin
range: uriorcurie
multivalued: true
schema_type:
name: schema_type
description: State that the subject is an instance of a particular schema class.
Typically, no explicit value needs to be assigned to this slot, because it matches
the class type of a particular record. However, this slots can be used as a
type designator of a schema element for validation and schema structure handling
purposes. This is used to indicate specialized schema classes for properties
that accept a hierarchy of classes as their range.
title: Schema type
from_schema: https://concepts.datalad.org/s/things/v2
exact_mappings:
- dcterms:type
rank: 1000
slot_uri: rdf:type
designates_type: true
alias: schema_type
owner: Thing
domain_of:
- ThingMixin
- Identifier
range: NodeUriOrCurie
class_uri: dlthings:Thing