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 id 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 is_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

erDiagram Thing { uriorcurie id uriorcurie schema_type uriorcurie type } Statement { } Property { uriorcurie id uriorcurie schema_type uriorcurie type } AttributeSpecification { uriorcurie schema_type uriorcurie type uriorcurie range string value } Thing ||--}o Thing : "relations" Thing ||--}o AttributeSpecification : "has_attributes" Thing ||--}o Statement : "is_characterized_by" Statement ||--|| Thing : "object" Statement ||--|| Property : "predicate" Property ||--}o Thing : "relations" Property ||--}o AttributeSpecification : "has_attributes" Property ||--}o Statement : "is_characterized_by" AttributeSpecification ||--|| Property : "predicate" AttributeSpecification ||--}o AttributeSpecification : "has_attributes" AttributeSpecification ||--}o Statement : "is_characterized_by"

Inheritance

Slots

Name Cardinality and Range Description Inheritance
id 1
Uriorcurie
Globally unique identifier of a metadata object, such as a Thing direct
relations *
Thing
Declares an unqualified relation of the subject Thing to another Thing direct
has_attributes *
AttributeSpecification
Declares a relation that associates a Thing (or another attribute) with an ... ThingMixin
is_characterized_by *
Statement
Qualifies relationships between a subject Thing and an object Thing with ... ThingMixin
schema_type 0..1
Uriorcurie
Type designator of a schema element for validation and schema structure handl... ThingMixin
type 0..1
Uriorcurie
State that the subject is an instance of a particular RDF class ThingMixin

Usages

used by used in type used
Property relations domain Thing
Property relations range Thing
Statement object range Thing
Thing relations domain Thing
Thing relations range Thing
ValueSpecification relations domain Thing
ValueSpecification relations range Thing

Identifier and Mapping Information

Schema Source

  • from schema: https://concepts.datalad.org/s/things/v1

Mappings

Mapping Type Mapped Value
self dlthings:Thing
native dlthings:Thing
exact schema:Thing

Examples

Example: Thing-03-topic

# Relate a thing to topic/subjects
id: https://doi.org/10.21105/joss.03262
is_characterized_by:
  # DataLad software
  - object: https://www.scicrunch.org/resolver/SCR_003931
    predicate: schema:about

Example: Thing-04-relations

# `relations` is the only slot that allows for inlining other `Thing`
# records
# example: a paper
id: https://doi.org/10.21105/joss.03262
relations:
  # the containing journal
  https://portal.issn.org/resource/issn/2475-9066:
    # inlined information
    has_attributes:
      - predicate: dcterms:title
        value: "Journal of Open Source Software"
  # the datalad software (no information beyond the `id` is inlined)
  https://www.scicrunch.org/resolver/SCR_003931:

Example: Thing-01-minimal

# Any document on a Thing requires a identifier.
# Beyond that, no property is required.
id: exthisns:mything

Example: Thing-02-identifiers

# Identification options for a thing.
#
# `id` 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.
id: https://ror.org/02nv7yv05
has_attributes:
  # Research Organization Registry
  - predicate: dcterms:identifier
    value: 02nv7yv05
    has_attributes:
      - predicate: ADMS:schemaAgency
        value: https://ror.org
        range: uri
  # German National Library
  # (here not using the direct value specification, but defining
  #  a proper identifier with a `notation`)
  - predicate: dcterms:identifier
    type: ADMS:Identifier
    has_attributes:
      - predicate: skos:notation
        value: 5008462-8
      - predicate: ADMS:schemaAgency
        value: https://d-nb.info
is_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-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.
id: https://doi.org/10.1038/s41597-022-01163-2
type: bibo:AcademicArticle
relations:
  # the containing journal with some information on it
  https://portal.issn.org/resource/issn/2052-4463:
    type: bibo:Journal
    has_attributes:
      - predicate: dcterms:title
        value: "Scientific Data"
has_attributes:
  - predicate: dcterms:title
    value: "FAIRly big: A framework for computationally reproducible processing of large-scale data"
  - predicate: dcterms:description
    value: "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)."
  # DOI
  - predicate: dcterms:identifier
    type: ADMS:Identifier
    has_attributes:
      - predicate: skos:notation
        value: 10.1038/s41597-022-01163-2
      - predicate: ADMS:schemaAgency
        value: https://doi.org
  # bibliographic information
  - predicate: dcterms: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
    has_attributes:
      - predicate: dcterms:title
        value: DOI
    value: https://doi.org/10.1038/s41597-022-01163-2
  - predicate: bibo:volume
    has_attributes:
      - predicate: dcterms:title
        value: Volume
    value: "9"
  - predicate: bibo:number
    has_attributes:
      - predicate: dcterms:title
        value: Document number
    value: "80"
  - predicate: bibo:numPages
    has_attributes:
      - predicate: dcterms:title
        value: Number of pages
    value: "17"
    range: xsd:nonNegativeInteger
  - predicate: dcterms:modified
    range: xsd:date
    value: "2022-02-11"
  - predicate: dcterms:date
    range: xsd:date
    value: "2022-03-11"
is_characterized_by:
  # containing journal
  - predicate: dcterms:isPartOf
    object: https://portal.issn.org/resource/issn/2052-4463
  # related topics
  - predicate: schema:about
    object: https://www.nature.com/subjects/data-processing
  - predicate: schema:about
    object: https://www.nature.com/subjects/data-publication-and-archiving
  - predicate: schema:about
    object: https://www.nature.com/subjects/software
  # publisher landing page
  - predicate: schema:sameAs
    object: https://www.nature.com/articles/s41597-022-01163-2
  - predicate: dcterms:license
    object: https://spdx.org/licenses/CC-BY-4.0

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 `id` 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 `is_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/v1
exact_mappings:
- schema:Thing
mixins:
- ThingMixin
slots:
- id
- relations
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 `id` 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 `is_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/v1
exact_mappings:
- schema:Thing
mixins:
- ThingMixin
attributes:
  id:
    name: id
    description: Globally unique identifier of a metadata object, such as a `Thing`.
    from_schema: https://concepts.datalad.org/s/things/v1
    exact_mappings:
    - dcterms:identifier
    - schema:identifier
    - ADMS:identifier
    rank: 1000
    slot_uri: dlthings:id
    identifier: true
    alias: id
    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 `is_characterized_by` slot.
    from_schema: https://concepts.datalad.org/s/things/v1
    exact_mappings:
    - dcat:relation
    - dcterms:relation
    rank: 1000
    domain: Thing
    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
  has_attributes:
    name: has_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 `is_characterized_by`) should be preferred.
    from_schema: https://concepts.datalad.org/s/things/v1
    exact_mappings:
    - sio:SIO_000008
    rank: 1000
    slot_uri: dlthings:has_attributes
    alias: has_attributes
    owner: Thing
    domain_of:
    - ThingMixin
    range: AttributeSpecification
    multivalued: true
    inlined: true
    inlined_as_list: true
  is_characterized_by:
    name: is_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.
    from_schema: https://concepts.datalad.org/s/things/v1
    exact_mappings:
    - obo:RO_0000053
    rank: 1000
    slot_uri: dlthings:is_characterized_by
    alias: is_characterized_by
    owner: Thing
    domain_of:
    - ThingMixin
    range: Statement
    multivalued: true
    inlined: true
    inlined_as_list: true
  schema_type:
    name: schema_type
    annotations:
      sh:path:
        tag: sh:path
        value: dlthings:schema_type
    description: 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.
    from_schema: https://concepts.datalad.org/s/things/v1
    exact_mappings:
    - dcterms:type
    rank: 1000
    slot_uri: rdf:type
    designates_type: true
    alias: schema_type
    owner: Thing
    domain_of:
    - ThingMixin
    range: uriorcurie
  type:
    name: type
    description: State that the subject is an instance of a particular RDF class.
    from_schema: https://concepts.datalad.org/s/things/v1
    exact_mappings:
    - dcterms:type
    rank: 1000
    slot_uri: rdf:type
    alias: type
    owner: Thing
    domain_of:
    - ThingMixin
    range: uriorcurie
class_uri: dlthings:Thing