name: things-prov-schema
description: 'This schema mixin provides the majority of the terms and relationships

  defined by [PROV-O](https://www.w3.org/TR/prov-o/), with the following

  exceptions and deviations. It is implemented as a mixin to be able to

  flexibly add provenance-focused interfaces to classes that are part

  of a topical class hierarchy already.


  All relationships are implemented using the "qualified relation" pattern, but

  combined with properties that are named after their (shortened) "binary"

  equivalent. For example, a `wasDerivedFrom` is implemented as the

  `derived_from` slot, and has the `Derivation` association class as its

  `range`. This means that qualifying properties of a relationship are

  consolidated into the respective relationship class. Consequently, there is

  no equivalent of, for example, `generatedAtTime`. Instead, the time needs to

  be annotated via the `at_time` slot of `Generation`.


  Consistent with PROV-DM, all relationship classes support the expression of

  arbitrary attributes to further characterize a relationship beyond the set of

  dedicated slots. This is achieved by applying the core `ThingMixin` to the

  `Influence` class, the base class of all relationships. This allows for the

  same annotation patterns that are enabled by `Thing` to also be used for PROV

  relationships. This includes, custom attributes, `characterized_by` relations,

  mapping declarations, annotations, and semantic mappings.


  All relationship classes uniformly use an `object` slot to reference the

  respective entity, agent, or activity. PROV-O''s `actedOnBehalfOf` is named

  `delegated_by` for consistency with the association class `Delegation`.


  No inverse properties are defined, i.e. there is `invalidated_by`, but not

  `invalidated`.


  This schema does not implement support for PROV bundles.


  There is no explicit support for annotating an `Influence` with an unspecific

  `Activity` (`hadActivity`, optional in PROV-O). For describing, for example,

  the generating activity in a derivation, `generated_by` is provided.


  The annotation of `Agent` and `Entity` instances with a location (PROV-O

  `atLocation`) is not supported. The idea of a (single) location for these

  concepts is at odds with the core approach of this schema to use persistent

  identifiers for all `Thing`s. However, `at_location` is supported within

  `Start` and `End` that are available to annotate `Activity`, and

  `EntityInfluence` like `Usage` with temporal and spatial locators.


  There is not direct support for the PROV-O classes `Location`, `Plan`,

  (and with it `hadPlan`), `Role`, and `SoftwareAgent`. The `Thing` class can

  be used to express these concepts in a generic fashion. Dedicated support

  is left to more application-specific schemas that require these concepts.


  The PROV-O concept of `PrimarySource`, as a special case of a `Derivation`

  is not supported. Use the role annotation to identify an influencing entity

  in a `Derivation` as a "primary source".


  More information may be available on the schema''s [about page](about).


  The schema definition is available as


  - [JSON-LD context](../v1.context.jsonld)

  - [LinkML YAML](../v1.yaml)

  - [LinkML YAML (static/resolved)](../v1.static.yaml)

  - [OWL TTL](../v1.owl.ttl)

  - [SHACL TTL](../v1.shacl.ttl)


  Upcoming changes to this schema may be available in an [(unreleased)

  development version](../../things-prov/unreleased).

  '
title: Provenance properties and class mixins for use with the things schema
comments:
- ALL CONTENT HERE IS UNRELEASED AND MAY CHANGE ANY TIME
status: eunal:concept-status/DRAFT
id: https://concepts.datalad.org/s/things-prov/v1
version: 1.0.0
license: MIT
prefixes:
  dlschemas:
    prefix_prefix: dlschemas
    prefix_reference: https://concepts.datalad.org/s/
  dlthings:
    prefix_prefix: dlthings
    prefix_reference: https://concepts.datalad.org/s/things/v2/
  eunal:
    prefix_prefix: eunal
    prefix_reference: http://publications.europa.eu/resource/authority/
  linkml:
    prefix_prefix: linkml
    prefix_reference: https://w3id.org/linkml/
  prov:
    prefix_prefix: prov
    prefix_reference: http://www.w3.org/ns/prov#
  rdf:
    prefix_prefix: rdf
    prefix_reference: http://www.w3.org/1999/02/22-rdf-syntax-ns#
  rdfs:
    prefix_prefix: rdfs
    prefix_reference: http://www.w3.org/2000/01/rdf-schema#
  skos:
    prefix_prefix: skos
    prefix_reference: http://www.w3.org/2004/02/skos/core#
  xsd:
    prefix_prefix: xsd
    prefix_reference: http://www.w3.org/2001/XMLSchema#
  shex:
    prefix_prefix: shex
    prefix_reference: http://www.w3.org/ns/shex#
  schema:
    prefix_prefix: schema
    prefix_reference: http://schema.org/
  bibo:
    prefix_prefix: bibo
    prefix_reference: http://purl.org/ontology/bibo/
  dash:
    prefix_prefix: dash
    prefix_reference: http://datashapes.org/dash#
  dcat:
    prefix_prefix: dcat
    prefix_reference: http://www.w3.org/ns/dcat#
  dcterms:
    prefix_prefix: dcterms
    prefix_reference: http://purl.org/dc/terms/
  ex:
    prefix_prefix: ex
    prefix_reference: http://example.org/
  obo:
    prefix_prefix: obo
    prefix_reference: http://purl.obolibrary.org/obo/
  owl:
    prefix_prefix: owl
    prefix_reference: http://www.w3.org/2002/07/owl#
  sh:
    prefix_prefix: sh
    prefix_reference: http://www.w3.org/ns/shacl#
  sio:
    prefix_prefix: sio
    prefix_reference: http://semanticscience.org/resource/
  foaf:
    prefix_prefix: foaf
    prefix_reference: http://xmlns.com/foaf/0.1/
  pq:
    prefix_prefix: pq
    prefix_reference: http://www.wikidata.org/prop/qualifier/
emit_prefixes:
- dlthings
- rdf
- rdfs
- skos
- xsd
default_prefix: dlthings
types:
  string:
    name: string
    description: A character string
    notes:
    - In RDF serializations, a slot with range of string is treated as a literal or
      type xsd:string.   If you are authoring schemas in LinkML YAML, the type is
      referenced with the lower case "string".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:Text
    base: str
    uri: xsd:string
  integer:
    name: integer
    description: An integer
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "integer".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:Integer
    base: int
    uri: xsd:integer
  boolean:
    name: boolean
    description: A binary (true or false) value
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "boolean".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:Boolean
    base: Bool
    uri: xsd:boolean
    repr: bool
  float:
    name: float
    description: A real number that conforms to the xsd:float specification
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "float".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:Float
    base: float
    uri: xsd:float
  double:
    name: double
    description: A real number that conforms to the xsd:double specification
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "double".
    from_schema: https://w3id.org/linkml/types
    close_mappings:
    - schema:Float
    base: float
    uri: xsd:double
  decimal:
    name: decimal
    description: A real number with arbitrary precision that conforms to the xsd:decimal
      specification
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "decimal".
    from_schema: https://w3id.org/linkml/types
    broad_mappings:
    - schema:Number
    base: Decimal
    uri: xsd:decimal
  time:
    name: time
    description: A time object represents a (local) time of day, independent of any
      particular day
    notes:
    - URI is dateTime because OWL reasoners do not work with straight date or time
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "time".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:Time
    base: XSDTime
    uri: xsd:time
    repr: str
  date:
    name: date
    description: a date (year, month and day) in an idealized calendar
    notes:
    - URI is dateTime because OWL reasoners don't work with straight date or time
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "date".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:Date
    base: XSDDate
    uri: xsd:date
    repr: str
  datetime:
    name: datetime
    description: The combination of a date and time
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "datetime".
    from_schema: https://w3id.org/linkml/types
    exact_mappings:
    - schema:DateTime
    base: XSDDateTime
    uri: xsd:dateTime
    repr: str
  date_or_datetime:
    name: date_or_datetime
    description: Either a date or a datetime
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "date_or_datetime".
    from_schema: https://w3id.org/linkml/types
    base: str
    uri: linkml:DateOrDatetime
    repr: str
  uriorcurie:
    name: uriorcurie
    description: a URI or a CURIE
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "uriorcurie".
    from_schema: https://w3id.org/linkml/types
    base: URIorCURIE
    uri: xsd:anyURI
    repr: str
  curie:
    name: curie
    conforms_to: https://www.w3.org/TR/curie/
    description: a compact URI
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "curie".
    comments:
    - in RDF serializations this MUST be expanded to a URI
    - in non-RDF serializations MAY be serialized as the compact representation
    from_schema: https://w3id.org/linkml/types
    base: Curie
    uri: xsd:string
    repr: str
  uri:
    name: uri
    conforms_to: https://www.ietf.org/rfc/rfc3987.txt
    description: a complete URI
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "uri".
    comments:
    - in RDF serializations a slot with range of uri is treated as a literal or type
      xsd:anyURI unless it is an identifier or a reference to an identifier, in which
      case it is translated directly to a node
    from_schema: https://w3id.org/linkml/types
    close_mappings:
    - schema:URL
    base: URI
    uri: xsd:anyURI
    repr: str
  ncname:
    name: ncname
    description: Prefix part of CURIE
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "ncname".
    from_schema: https://w3id.org/linkml/types
    base: NCName
    uri: xsd:string
    repr: str
  objectidentifier:
    name: objectidentifier
    description: A URI or CURIE that represents an object in the model.
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "objectidentifier".
    comments:
    - Used for inheritance and type checking
    from_schema: https://w3id.org/linkml/types
    base: ElementIdentifier
    uri: shex:iri
    repr: str
  nodeidentifier:
    name: nodeidentifier
    description: A URI, CURIE or BNODE that represents a node in a model.
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "nodeidentifier".
    from_schema: https://w3id.org/linkml/types
    base: NodeIdentifier
    uri: shex:nonLiteral
    repr: str
  jsonpointer:
    name: jsonpointer
    conforms_to: https://datatracker.ietf.org/doc/html/rfc6901
    description: A string encoding a JSON Pointer. The value of the string MUST conform
      to JSON Point syntax and SHOULD dereference to a valid object within the current
      instance document when encoded in tree form.
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "jsonpointer".
    from_schema: https://w3id.org/linkml/types
    base: str
    uri: xsd:string
    repr: str
  jsonpath:
    name: jsonpath
    conforms_to: https://www.ietf.org/archive/id/draft-goessner-dispatch-jsonpath-00.html
    description: A string encoding a JSON Path. The value of the string MUST conform
      to JSON Point syntax and SHOULD dereference to zero or more valid objects within
      the current instance document when encoded in tree form.
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "jsonpath".
    from_schema: https://w3id.org/linkml/types
    base: str
    uri: xsd:string
    repr: str
  sparqlpath:
    name: sparqlpath
    conforms_to: https://www.w3.org/TR/sparql11-query/#propertypaths
    description: A string encoding a SPARQL Property Path. The value of the string
      MUST conform to SPARQL syntax and SHOULD dereference to zero or more valid objects
      within the current instance document when encoded as RDF.
    notes:
    - If you are authoring schemas in LinkML YAML, the type is referenced with the
      lower case "sparqlpath".
    from_schema: https://w3id.org/linkml/types
    base: str
    uri: xsd:string
    repr: str
  EmailAddress:
    name: EmailAddress
    description: RFC 5322 compliant email address
    notes:
    - The validation regex is taken from https://stackoverflow.com/a/201378
    - The regex is single-quoted for YAML encoding, hence all inner "'" have been
      doubled
    from_schema: https://concepts.datalad.org/s/things/v2
    typeof: string
    base: str
    uri: dlthings:EmailAddress
    pattern: (?:[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[A-Za-z0-9](?:[A-Za-z0-9-]*[A-Za-z0-9])?\.)+[A-Za-z0-9](?:[A-Za-z0-9-]*[A-Za-z0-9])?|\[(?:(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9]))\.){3}(?:(2(5[0-5]|[0-4][0-9])|1[0-9][0-9]|[1-9]?[0-9])|[A-Za-z0-9-]*[A-Za-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])
  HexBinary:
    name: HexBinary
    description: hex-encoded binary data.
    from_schema: https://concepts.datalad.org/s/things/v2
    typeof: string
    base: str
    uri: xsd:hexBinary
    pattern: ^[a-fA-F0-9]+$
  NodeUriOrCurie:
    name: NodeUriOrCurie
    description: A type referencing an graph node. This is like `uriorcurie`, but
      in an RDF export leads to the desirable `rdf.type` declaration, rather then
      an `rdf.literal` of the corresponding URI.
    from_schema: https://concepts.datalad.org/s/things/v2
    typeof: uriorcurie
    base: str
    uri: rdfs:Resource
  NonNegativeInteger:
    name: NonNegativeInteger
    description: An integer
    notes:
    - Integer with minimum (inclusive) value of zero, i.e. the standard mathematical
      concept of the non-negative integers.
    from_schema: https://concepts.datalad.org/s/things/v2
    broad_mappings:
    - schema:Integer
    typeof: integer
    base: int
    uri: xsd:nonNegativeInteger
  W3CISO8601:
    name: W3CISO8601
    description: W3C variant/subset of IS08601 for specifying date(times). Supported
      are - YYYY (eg 1997) - YYYY-MM (eg 1997-07) - YYYY-MM-DD (eg 1997-07-16) - YYYY-MM-DDThh:mmTZD
      (eg 1997-07-16T19:20+01:00) - YYYY-MM-DDThh:mm:ssTZD (eg 1997-07-16T19:20:30+01:00)
      - YYYY-MM-DDThh:mm:ss.sTZD (eg 1997-07-16T19:20:30.45+01:00) where TZD is the
      time zone designator (Z or +hh:mm or -hh:mm)
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    see_also:
    - https://www.w3.org/TR/NOTE-datetime
    typeof: string
    base: str
    uri: dlthings:w3ctr-datetime
    pattern: ^([-+]\d+)|(\d{4})|(\d{4}-[01]\d)|(\d{4}-[01]\d-[0-3]\d)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))$
slots:
  alternate_of:
    name: alternate_of
    description: Two alternate entities present aspects of the same thing. These aspects
      may be the same or different, and the alternate entities may or may not overlap
      in time.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:alternateOf
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/alternate_of
    range: Thing
  associated_with:
    name: associated_with
    description: An activity association is an assignment of responsibility to an
      agent for an activity, indicating that the agent had a role in the activity.
      It further allows for a plan to be specified, which is the plan intended by
      the agent to achieve some goals in the context of this activity.
    notes:
    - PROV-O "wasAssociatedWith" is a short-cut property. "Association" also has "agent".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasAssociatedWith
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/associated_with
    range: Association
  attributed_to:
    name: attributed_to
    description: Attribution is the ascribing of an entity to an agent.
    notes:
    - PROV-O "wasAttributedTo" is a short-cut property. "Attribution" also has "agent".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasAttributedTo
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/attributed_to
    range: Attribution
  delegated_by:
    name: delegated_by
    description: Delegation is the assignment of authority and responsibility to an
      agent (by itself or by another agent) to carry out a specific activity as a
      delegate or representative, while the agent it acts on behalf of retains some
      responsibility for the outcome of the delegated work. For example, a student
      acted on behalf of his supervisor, who acted on behalf of the department chair,
      who acted on behalf of the university; all those agents are responsible in some
      way for the activity that took place but we do not say explicitly who bears
      responsibility and to what degree.
    notes:
    - This is PROV-O's "acted_on_behalf_of", which is a short-cut property -- "Delegation"
      also identifies an agent.
    - naming is different for homogeneity with the other slots
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:actedOnBehalfOf
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/delegated_by
    range: Delegation
  derived_from:
    name: derived_from
    description: A entity from which the subject was created through some kind of
      process. Derivation is a transformation of an entity into another, an update
      of an entity resulting in a new one, or the construction of a new entity based
      on a pre-existing entity.
    title: Derived from
    notes:
    - PROV-O "wasDerivedFrom" is a short-cut property. "Derivation" also has "entity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasDerivedFrom
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/derived_from
    range: Derivation
  ended:
    name: ended
    description: End is when an activity is deemed to have been ended by an entity,
      known as trigger. The activity no longer exists after its end. Any usage, generation,
      or invalidation involving an activity precedes the activity's end. An end may
      refer to a trigger entity that terminated the activity, or to an activity, known
      as ender that generated the trigger.
    notes:
    - PROV-O "endedAt" is a short-cut property. "Start" also has "atTime".
    - same naming remarks as for "started" apply.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasEndedBy
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/ended
    range: End
  generated_by:
    name: generated_by
    description: Identification of the process that led to the production of the subject
      entity. Generation is the completion of production of a new entity by an activity.
      This entity did not exist before generation and becomes available for usage
      after this generation.
    title: Generated by
    notes:
    - PROV-O "wasGeneratedBy" is a short-cut property. "Generation" also has "activity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasGeneratedBy
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/generated_by
    range: Generation
  influenced_by:
    name: influenced_by
    description: Influence is the capacity of an entity, activity, or agent to have
      an effect on the character, development, or behavior of another by means of
      usage, start, end, generation, invalidation, communication, derivation, attribution,
      association, or delegation.
    title: Influenced by
    notes:
    - PROV-O "wasInfluencedBy" is a short-cut property. "Influence" also identifies
      an "influencer".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasInfluencedBy
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/influenced_by
    range: Influence
  informed_by:
    name: informed_by
    description: Communication is the exchange of an entity by two activities, one
      activity using the entity generated by the other.
    notes:
    - PROV-O "wasInformedBy" is a short-cut property. "Communication" also has "activity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasInformedBy
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/informed_by
    range: Communication
  invalidated_by:
    name: invalidated_by
    description: Invalidation is the start of the destruction, cessation, or expiry
      of an existing entity by an activity. The entity is no longer available for
      use (or further invalidation) after invalidation. Any generation or usage of
      an entity precedes its invalidation.
    notes:
    - PROV-O "wasInvalidatedBy" is a short-cut property. "Invalidation" also identifies
      an "entity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasInvalidatedBy
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/invalidated_by
    range: Invalidation
  quoted_from:
    name: quoted_from
    description: A quotation is the repeat of (some or all of) an entity, such as
      text or image, by someone who may or may not be its original author. Quotation
      is a particular case of derivation.
    notes:
    - PROV-O "wasQuotedFrom" is a short-cut property. "Quotation" also identifies
      an "entity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasQuotedFrom
    is_a: derived_from
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/quoted_from
    range: Quotation
  revision_of:
    name: revision_of
    description: A revision is a derivation for which the resulting entity is a revised
      version of some original. The implication here is that the resulting entity
      contains substantial content from the original. Revision is a particular case
      of derivation.
    notes:
    - PROV-O "wasRevisionOf" is a short-cut property. "Revision" also identifies an
      "entity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasRevisionOf
    is_a: derived_from
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/revision_of
    range: Revision
  specialization_of:
    name: specialization_of
    description: An entity that is a specialization of another shares all aspects
      of the latter, and additionally presents more specific aspects of the same thing
      as the latter. In particular, the lifetime of the entity being specialized contains
      that of any specialization. Examples of aspects include a time period, an abstraction,
      and a context associated with the entity.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:specializationOf
    is_a: alternate_of
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/specialization_of
    range: Thing
  started:
    name: started
    description: Start is when an activity is deemed to have been started by an entity,
      known as trigger. The activity did not exist before its start. Any usage, generation,
      or invalidation involving an activity follows the activity's start. A start
      may refer to a trigger entity that set off the activity, or to an activity,
      known as starter, that generated the trigger.
    notes:
    - PROV-O "startedAt" is a short-cut property. "Start" also has "atTime".
    - name is just started, because the association class Start has both time information
      and trigger information. Hence the name needs to capture both started_by and
      started_at. "started" has the unfortunate ambiguity of having started an activity,
      however the range "Start" is an "EntityInfluence" where the linked "object"
      is an Entity -- hopefully limiting the confusion.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:wasStartedBy
    is_a: influenced_by
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/started
    range: Start
  used:
    name: used
    description: Usage is the beginning of utilizing an entity by an activity. Before
      usage, the activity had not begun to utilize this entity and could not have
      been affected by the entity.
    title: Used
    notes:
    - PROV-O "used" is a short-cut property. "Usage" also has "entity".
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:used
    slot_uri: https://concepts.datalad.org/s/things-prov/v1/used
    range: Usage
  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
    slot_uri: dcterms:subject
    range: Thing
  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
    slot_uri: dlthings:annotations
    range: Annotation
    multivalued: true
    inlined: true
  annotation_tag:
    name: annotation_tag
    description: A tag identifying an annotation.
    title: Tag
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: dlthings:annotation_tag
    range: Thing
  annotation_value:
    name: annotation_value
    description: The actual annotation.
    title: Value
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: dlthings:annotation_value
    range: string
  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
    slot_uri: dlthings:attributes
    range: AttributeSpecification
    multivalued: true
    inlined: true
    inlined_as_list: 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
    is_a: mappings
    slot_uri: skos:broadMatch
    range: uriorcurie
    multivalued: 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
    slot_uri: dlthings:characterized_by
    range: Statement
    multivalued: true
    inlined: true
    inlined_as_list: 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
    is_a: mappings
    slot_uri: skos:closeMatch
    range: uriorcurie
    multivalued: true
  creator:
    name: creator
    description: An agent responsible for making an entity.
    title: Creator
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: dcterms:creator
    range: Thing
  defined_by:
    name: defined_by
    description: Indicate a resource defining the subject. This may be a vocabulary
      that describes the subject.
    title: Defined by
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: rdfs:isDefinedBy
    range: uriorcurie
  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
    slot_uri: dcterms:description
    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
    slot_uri: skos:prefLabel
    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
    slot_uri: skos:note
    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
    slot_uri: skos:editorialNote
    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
    is_a: mappings
    slot_uri: skos:exactMatch
    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
    slot_uri: dcterms:identifier
    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
    slot_uri: dcterms:type
    range: Thing
  mappings:
    name: mappings
    description: A list of terms from different schemas or terminology systems that
      have comparable meaning. These may include terms that are precisely equivalent,
      broader or narrower in meaning, or otherwise semantically related but not equivalent
      from a strict ontological perspective.
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: skos:mappingRelation
    range: uriorcurie
    multivalued: 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
    is_a: mappings
    slot_uri: skos:narrowMatch
    range: uriorcurie
    multivalued: true
  notation:
    name: notation
    description: String of characters such as "T58:5" or "30:4833" used to uniquely
      identify a concept within the scope of a given concept scheme.
    title: Notation
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: skos:notation
    range: string
  object:
    name: object
    description: Reference to a `Thing` within a `Statement`.
    title: Object
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - rdf:object
    slot_uri: rdf:object
    relational_role:
      text: OBJECT
      description: a slot with this role connects a relationship to its object/target
        node
      meaning: http://www.w3.org/1999/02/22-rdf-syntax-ns#object
    range: Thing
  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
    slot_uri: dlthings:pid
    identifier: true
    range: uriorcurie
  predicate:
    name: predicate
    description: Reference to a `Property` within a `Statement`.
    title: Predicate
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - rdf:predicate
    slot_uri: rdf:predicate
    relational_role:
      text: PREDICATE
      description: a slot with this role connects a relationship to its predicate/property
      meaning: http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate
    range: Thing
    multivalued: false
  range:
    name: range
    description: Declares that the value of a `Thing` or `AttributeSpecification`
      are instances of a particular class.
    title: Value type (range)
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: rdfs:range
    range: uriorcurie
  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
    is_a: mappings
    slot_uri: skos:relatedMatch
    range: uriorcurie
    multivalued: 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
    slot_uri: dlthings:relation
    symmetric: true
    relational_role:
      text: OBJECT
      description: a slot with this role connects a relationship to its object/target
        node
      meaning: http://www.w3.org/1999/02/22-rdf-syntax-ns#object
    range: Thing
    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
    slot_uri: rdf:type
    designates_type: true
    range: NodeUriOrCurie
  unit:
    name: unit
    description: A unit of measurement is a standardized quantity of a physical quality.
    title: Unit
    from_schema: https://concepts.datalad.org/s/things/v2
    slot_uri: obo:UO_0000000
    range: uriorcurie
  value:
    name: value
    description: Value that is a direct representation of a thing.
    title: Value
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - rdf:value
    slot_uri: rdf:value
    relational_role:
      text: OBJECT
      description: a slot with this role connects a relationship to its object/target
        node
      meaning: http://www.w3.org/1999/02/22-rdf-syntax-ns#object
    range: string
  at_location:
    name: at_location
    description: Associate the subject with a location. This can be a geographic place,
      or another uniquely identified object.
    notes:
    - For specifying a context-specific location see `locator`.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - prov:atLocation
    - schema:location
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/at_location
    range: Thing
  at_time:
    name: at_time
    description: Time at which an instanteneous event takes place or took place.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - prov:atTime
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/at_time
    range: W3CISO8601
  conforms_to:
    name: conforms_to
    description: An established standard to which the subject conforms.
    comments:
    - This property SHOULD be used to indicate a model, schema, ontology, view or
      profile that the subject conforms to.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - dcterms:conformsTo
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/conforms_to
    range: Thing
  depends_on:
    name: depends_on
    description: The subject depends on object in some way.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - obo:RO_0002502
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/depends_on
    range: Thing
  depiction:
    name: depiction
    description: An image, or photograph information, or other visualization that
      annotates some aspect of the subject (e.g., a digital image of a portrait of
      a person).
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - foaf:depiction
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/depiction
    range: Thing
  keywords:
    name: keywords
    description: One or more keywords or tags describing the subject.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - dcat:keyword
    - schema:keywords
    - obo:IAO_0000629
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/keywords
    range: string
    multivalued: true
  locator:
    name: locator
    description: A descriptive identifier that locates a resource within a containing
      resource. This can be a unique name, a numerical key, or another notation that
      uniquely identifies the subject within the containing resource.
    notes:
    - For specifying a location via a globally unique identifier see `at_location`.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - bibo:locator
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/locator
    range: string
  name:
    name: name
    description: Name of the subject. A name is closely related to a `title`, but
      often more compact and identifier-like, but without the implication of uniqueness
      of an identifier. A name is often used by technical systems to display an item
      in an organizational structure, such as a file in a directory hierarchy.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - rdfs:label
    - schema:name
    - foaf:name
    close_mappings:
    - dcterms:title
    - obo:IAO_0000590
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/name
    range: string
  part_of:
    name: part_of
    description: The entity that the subject is a part of. A core relation that holds
      between a part and its whole.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - obo:BFO_0000050
    - dcterms:isPartOf
    - schema:isPartOf
    domain: Thing
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/part_of
    inverse: parts
    range: Thing
  parts:
    name: parts
    description: A related resource that is included either physically or logically
      in the described resource.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - dcterms:hasPart
    - schema:hasPart
    domain: Thing
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/parts
    inverse: part_of
    range: Thing
    multivalued: true
  roles:
    name: roles
    description: Describes the function of an entity or agent (object) within the
      scope of a relationship with the subject.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - prov:hadRole
    - dcat:had_role
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/roles
    range: Thing
    multivalued: true
  same_as:
    name: same_as
    description: Declares that the subject and an object are equal. Can be used to
      indicate a URL of a reference Web page that unambiguously indicates the subject's
      identity. For example, the URL of the subject's Wikipedia page, Wikidata entry,
      or official website.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - owl:sameAs
    close_mappings:
    - schema:sameAs
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/same_as
    range: Thing
  short_name:
    name: short_name
    description: A shortened name for the subject. For example, an acronym, initialism,
      nickname, or other abbreviation of the `name`.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - pq:P1813
    broad_mappings:
    - obo:NCIT_C42610
    is_a: name
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/short_name
    range: string
  title:
    name: title
    description: A summarily description of the subject. It is closely related to
      a `name`, but often less compact and more descriptive. Typically used for documents.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - dcterms:title
    related_mappings:
    - schema:name
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/title
    range: string
  version_of:
    name: version_of
    description: A related resource of which the described resource is a version,
      edition, or adaptation.
    from_schema: https://concepts.datalad.org/s/things-properties/v1
    exact_mappings:
    - dcterms:isVersionOf
    slot_uri: https://concepts.datalad.org/s/things-properties/v1/version_of
    range: Thing
classes:
  ActivityMixin:
    name: ActivityMixin
    description: An activity is something that occurs over a period of time and acts
      upon or with entities; it may include consuming, processing, transforming, modifying,
      relocating, using, or generating entities.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Activity
    mixin: true
    slots:
    - started
    - ended
    - associated_with
    - used
    - informed_by
    - influenced_by
    slot_usage:
      associated_with:
        name: associated_with
        range: Association
        multivalued: true
        inlined: true
        inlined_as_list: true
      ended:
        name: ended
        range: End
        inlined: true
      influenced_by:
        name: influenced_by
        range: Influence
        multivalued: true
        inlined: true
        inlined_as_list: true
      informed_by:
        name: informed_by
        range: Communication
        multivalued: true
        inlined: true
        inlined_as_list: true
      started:
        name: started
        range: Start
        inlined: true
      used:
        name: used
        range: Usage
        multivalued: true
        inlined: true
        inlined_as_list: true
    class_uri: https://concepts.datalad.org/s/things-prov/v1/ActivityMixin
  AgentMixin:
    name: AgentMixin
    description: Something that bears some form of responsibility for an activity
      taking place, for the existence of an entity, or for another agent's activity.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Agent
    mixin: true
    slots:
    - delegated_by
    - influenced_by
    slot_usage:
      delegated_by:
        name: delegated_by
        range: Delegation
        inlined: true
      influenced_by:
        name: influenced_by
        range: Influence
        multivalued: true
        inlined: true
        inlined_as_list: true
    class_uri: https://concepts.datalad.org/s/things-prov/v1/AgentMixin
  EntityMixin:
    name: EntityMixin
    description: A physical, digital, conceptual, or other kind of thing with some
      fixed aspects; entities may be real or imaginary.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Entity
    mixin: true
    slots:
    - attributed_to
    - generated_by
    - derived_from
    - revision_of
    - quoted_from
    - invalidated_by
    - alternate_of
    - specialization_of
    - influenced_by
    slot_usage:
      attributed_to:
        name: attributed_to
        range: Attribution
        multivalued: true
        inlined: true
        inlined_as_list: true
      derived_from:
        name: derived_from
        range: Derivation
        multivalued: true
        inlined: true
        inlined_as_list: true
      generated_by:
        name: generated_by
        range: Generation
        inlined: true
      influenced_by:
        name: influenced_by
        range: Influence
        multivalued: true
        inlined: true
        inlined_as_list: true
      invalidated_by:
        name: invalidated_by
        range: Invalidation
        inlined: true
      quoted_from:
        name: quoted_from
        range: Quotation
        inlined: true
      revision_of:
        name: revision_of
        range: Revision
        inlined: true
    class_uri: https://concepts.datalad.org/s/things-prov/v1/EntityMixin
  InstantaneousEventMixin:
    name: InstantaneousEventMixin
    description: The PROV data model is implicitly based on a notion of instantaneous
      events (or just events), that mark transitions in the world. Events include
      generation, usage, or invalidation of entities, as well as starting or ending
      of activities. This notion of event is not first-class in the data model, but
      it is useful for explaining its other concepts and its semantics
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:InstantaneousEvent
    mixin: true
    slots:
    - at_location
    - at_time
    class_uri: https://concepts.datalad.org/s/things-prov/v1/InstantaneousEventMixin
  Influence:
    name: Influence
    description: Influence is the capacity of an entity, activity, or agent to have
      an effect on the character, development, or behavior of another by means of
      usage, start, end, generation, invalidation, communication, derivation, attribution,
      association, or delegation.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Influence
    mixins:
    - ThingMixin
    slots:
    - object
    - roles
    slot_usage:
      object:
        name: object
        title: Influencer
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Influence
  EntityInfluence:
    name: EntityInfluence
    description: EntityInfluence is the capacity of an entity to have an effect on
      the character, development, or behavior of another by means of usage, start,
      end, derivation, or other.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:EntityInfluence
    is_a: Influence
    slot_usage:
      object:
        name: object
        title: Entity
    class_uri: https://concepts.datalad.org/s/things-prov/v1/EntityInfluence
  Usage:
    name: Usage
    description: Usage is the beginning of utilizing an entity by an activity. Before
      usage, the activity had not begun to utilize this entity and could not have
      been affected by the entity.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Usage
    is_a: EntityInfluence
    mixins:
    - InstantaneousEventMixin
    slot_usage:
      object:
        name: object
        description: Entity that was derived from.
      roles:
        name: roles
        description: Roles the entity had with respect to the derivation.
      at_location:
        name: at_location
        description: Location where the usage took place.
      at_time:
        name: at_time
        description: Timepoint when the usage happened.
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Usage
  Start:
    name: Start
    description: Start is when an activity is deemed to have been started by an entity,
      known as trigger. The activity did not exist before its start. Any usage, generation,
      or invalidation involving an activity follows the activity's start. A start
      may refer to a trigger entity that set off the activity, or to an activity,
      known as starter, that generated the trigger.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Start
    is_a: EntityInfluence
    mixins:
    - InstantaneousEventMixin
    slot_usage:
      object:
        name: object
        title: Trigger
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Start
  End:
    name: End
    description: End is when an activity is deemed to have been ended by an entity,
      known as trigger. The activity no longer exists after its end. Any usage, generation,
      or invalidation involving an activity precedes the activity's end. An end may
      refer to a trigger entity that terminated the activity, or to an activity, known
      as ender that generated the trigger.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:End
    is_a: EntityInfluence
    mixins:
    - InstantaneousEventMixin
    slot_usage:
      object:
        name: object
        title: Trigger
    class_uri: https://concepts.datalad.org/s/things-prov/v1/End
  Derivation:
    name: Derivation
    description: A derivation is a transformation of an entity into another, an update
      of an entity resulting in a new one, or the construction of a new entity based
      on a pre-existing entity.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Derivation
    is_a: EntityInfluence
    slots:
    - generated_by
    - used
    slot_usage:
      object:
        name: object
        description: Entity that was derived from.
      roles:
        name: roles
        description: Roles the entity had with respect to the derivation.
      generated_by:
        name: generated_by
        description: Activity that generated the derived entity.
        range: Generation
        inlined: true
      used:
        name: used
        description: Entities used for the derivation (e.g., instruments).
        range: Usage
        multivalued: true
        inlined: true
        inlined_as_list: true
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Derivation
  Quotation:
    name: Quotation
    description: A quotation is the repeat of (some or all of) an entity, such as
      text or image, by someone who may or may not be its original author. Quotation
      is a particular case of derivation.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Quotation
    is_a: Derivation
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Quotation
  Revision:
    name: Revision
    description: A revision is a derivation for which the resulting entity is a revised
      version of some original. The implication here is that the resulting entity
      contains substantial content from the original. Revision is a particular case
      of derivation.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Revision
    is_a: Derivation
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Revision
  ActivityInfluence:
    name: ActivityInfluence
    description: ActivitiyInfluence is the capacity of an activity to have an effect
      on the character, development, or behavior of another by means of generation,
      invalidation, communication, or other.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:ActivityInfluence
    is_a: Influence
    slot_usage:
      object:
        name: object
        title: Activity
    class_uri: https://concepts.datalad.org/s/things-prov/v1/ActivityInfluence
  Generation:
    name: Generation
    description: Generation is the completion of production of a new entity by an
      activity. This entity did not exist before generation and becomes available
      for usage after this generation.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Generation
    is_a: ActivityInfluence
    mixins:
    - InstantaneousEventMixin
    slots:
    - used
    slot_usage:
      object:
        name: object
        description: Generating activity.
      roles:
        name: roles
        description: Roles the activity had with respect to the generation.
      at_location:
        name: at_location
        description: Location where the generating activity took place.
      at_time:
        name: at_time
        description: Timepoint when the generating activity happened.
      used:
        name: used
        description: Entities used for the generation (e.g., instruments).
        range: Usage
        multivalued: true
        inlined: true
        inlined_as_list: true
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Generation
  Communication:
    name: Communication
    description: Communication is the exchange of an entity by two activities, one
      activity using the entity generated by the other.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Communication
    is_a: ActivityInfluence
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Communication
  Invalidation:
    name: Invalidation
    description: Invalidation is the start of the destruction, cessation, or expiry
      of an existing entity by an activity. The entity is no longer available for
      use (or further invalidation) after invalidation. Any generation or usage of
      an entity precedes its invalidation.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Invalidation
    is_a: ActivityInfluence
    mixins:
    - InstantaneousEventMixin
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Invalidation
  AgentInfluence:
    name: AgentInfluence
    description: AgentInfluence is the capacity of an agent to have an effect on the
      character, development, or behavior of another by means of attribution, association,
      delegation, or other.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:AgentInfluence
    is_a: Influence
    slot_usage:
      object:
        name: object
        title: Agent
    class_uri: https://concepts.datalad.org/s/things-prov/v1/AgentInfluence
  Attribution:
    name: Attribution
    description: Attribution is the ascribing of an entity to an agent. When an entity
      e is attributed to agent ag, entity e was generated by some unspecified activity
      that in turn was associated to agent ag. Thus, this relation is useful when
      the activity is not known, or irrelevant.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Attribution
    is_a: AgentInfluence
    slot_usage:
      object:
        name: object
        description: Agent the entity was attributed to.
      roles:
        name: roles
        description: Roles the agent had with respect to the entity.
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Attribution
  Association:
    name: Association
    description: An activity association is an assignment of responsibility to an
      agent for an activity, indicating that the agent had a role in the activity.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Association
    is_a: AgentInfluence
    slots:
    - started
    - ended
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Association
  Delegation:
    name: Delegation
    description: Delegation is the assignment of authority and responsibility to an
      agent (by itself or by another agent) to carry out a specific activity as a
      delegate or representative, while the agent it acts on behalf of retains some
      responsibility for the outcome of the delegated work. For example, a student
      acted on behalf of his supervisor, who acted on behalf of the department chair,
      who acted on behalf of the university; all those agents are responsible in some
      way for the activity that took place but we do not say explicitly who bears
      responsibility and to what degree.
    from_schema: https://concepts.datalad.org/s/things-prov/v1
    exact_mappings:
    - prov:Delegation
    is_a: AgentInfluence
    slots:
    - started
    - ended
    class_uri: https://concepts.datalad.org/s/things-prov/v1/Delegation
  ThingMixin:
    name: ThingMixin
    description: Mix-in with the common interface of `Thing` and `AttributeSpecification`.
      This interface enables type specifications (`rdf:type`) for things and attributes
      via a `type` designator slot to indicate specialized schema classes for validation
      where a slot's `range` is too generic. A thing or attribute can be further describe
      with statements on qualified relations to other things (`characterized_by`),
      or inline attributes (`attributes`). A set of `mappings` slots enables the alignment
      for arbitrary external schemas and terminologies.
    from_schema: https://concepts.datalad.org/s/things/v2
    mixin: true
    slots:
    - about
    - annotations
    - broad_mappings
    - close_mappings
    - description
    - display_label
    - display_note
    - editorial_notes
    - exact_mappings
    - identifiers
    - kind
    - attributes
    - characterized_by
    - narrow_mappings
    - related_mappings
    - schema_type
    class_uri: dlthings:ThingMixin
  ValueSpecificationMixin:
    name: ValueSpecificationMixin
    description: Mix-in for a (structured) value specification. Two slots are provided
      to define a (literal) value (`value`) and its type (`range`).
    comments:
    - This mixin enables the expression of quantitative and qualitative assessments/measurements/values.
      For a quantitative value, the numerical value, and a possible unit is given.
      For a qualitative value, `defined_by` is used to identify the quality of the
      assessment from a controlled vocabulary or standard term.
    from_schema: https://concepts.datalad.org/s/things/v2
    mixin: true
    slots:
    - defined_by
    - range
    - unit
    - value
    class_uri: dlthings:ValueSpecificationMixin
  AttributeSpecification:
    name: AttributeSpecification
    description: An attribute is conceptually a thing, but it requires no dedicated
      identifier (`pid`). Instead, it is linked to a `Thing` via its `attributes`
      slot and declares a `predicate` on the nature of the relationship.
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - sio:SIO_000614
    close_mappings:
    - dlthings:Thing
    mixins:
    - ThingMixin
    - ValueSpecificationMixin
    slots:
    - predicate
    slot_usage:
      about:
        name: about
        multivalued: true
      predicate:
        name: predicate
        range: Property
        required: true
    class_uri: dlthings:AttributeSpecification
  Identifier:
    name: Identifier
    description: An identifier is a label that uniquely identifies an item in a particular
      context. Some identifiers are globally unique. All identifiers are unique within
      their individual scope.
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - obo:IAO_0020000
    mixins:
    - ThingMixin
    slots:
    - creator
    - notation
    slot_usage:
      notation:
        name: notation
        required: true
    class_uri: dlthings:Identifier
  Property:
    name: Property
    description: An RDF property, a `Thing` used to define a `predicate`, for example
      in a `Statement`.
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - rdf:Property
    is_a: Thing
    class_uri: dlthings:Property
  Statement:
    name: Statement
    description: An RDF statement that links a `predicate` (a `Property`) with an
      `object` (a `Thing`) to the subject to form a triple. A `Statement` is used
      to qualify a relation to a `Thing` referenced by its identifier. For specifying
      a qualified relation to an attribute that has no dedicated identifier, use an
      `AttributeSpecification`.
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - rdf:Statement
    slots:
    - object
    - predicate
    - annotations
    - characterized_by
    - editorial_notes
    slot_usage:
      object:
        name: object
        range: Thing
        required: true
      predicate:
        name: predicate
        range: Property
        required: true
      characterized_by:
        name: characterized_by
        description: Make statements about statement, also known as reification.
        see_also:
        - https://patterns.dataincubator.org/book/reified-statement.html
    class_uri: dlthings:Statement
  Thing:
    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
  ValueSpecification:
    name: ValueSpecification
    description: A `Thing` that is a value of some kind. This class can be used to
      describe an outcome of a measurement, a factual value or constant, or other
      qualitative or quantitative information with an associated identifier. If no
      identifier is available, an `AttributeSpecification` can be used within the
      context of an associated `Thing` (`attributes`).
    from_schema: https://concepts.datalad.org/s/things/v2
    exact_mappings:
    - obo:OBI_0001933
    is_a: Thing
    mixins:
    - ValueSpecificationMixin
    slot_usage:
      value:
        name: value
        notes:
        - It is required, because when it is not needed, `Thing` should be used as
          a type. Its absence is therefore likely a sign of an error.
        required: true
    class_uri: dlthings:ValueSpecification
  Annotation:
    name: Annotation
    description: A tag/value pair with the semantics of OWL Annotation.
    from_schema: https://concepts.datalad.org/s/things/v2
    slots:
    - annotation_tag
    - annotation_value
    slot_usage:
      annotation_tag:
        name: annotation_tag
        key: true
        range: AnnotationTag
    class_uri: dlthings:Annotation
  AnnotationTag:
    name: AnnotationTag
    description: A tag identifying an annotation.
    title: Annotation tag
    from_schema: https://concepts.datalad.org/s/things/v2
    is_a: Thing
    class_uri: dlthings:AnnotationTag
source_file: src/things-prov/v1.yaml

