@prefix dash: <http://datashapes.org/dash#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix dlcommonmx: <https://concepts.datalad.org/s/common-mixin/unreleased/> .
@prefix dlflat: <https://concepts.datalad.org/s/flat/unreleased/> .
@prefix dlflatstudy: <https://concepts.datalad.org/s/flat-study/unreleased/> .
@prefix dlidentifiers: <https://concepts.datalad.org/s/identifiers/unreleased/> .
@prefix dlprovmx: <https://concepts.datalad.org/s/prov-mixin/unreleased/> .
@prefix dlquantmx: <https://concepts.datalad.org/s/quantities-mixin/unreleased/> .
@prefix dlrelationsmx: <https://concepts.datalad.org/s/relations-mixin/unreleased/> .
@prefix dlschemas: <https://concepts.datalad.org/s/> .
@prefix dlstudymx: <https://concepts.datalad.org/s/study-mixin/unreleased/> .
@prefix dlthings: <https://concepts.datalad.org/s/things/v1/> .
@prefix dltypes: <https://concepts.datalad.org/s/types/v1/> .
@prefix eunal: <http://publications.europa.eu/resource/authority/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix FRAPO: <http://purl.org/cerif/frapo/> .
@prefix linkml: <https://w3id.org/linkml/> .
@prefix obo: <http://purl.obolibrary.org/obo/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix w3ctr: <https://www.w3.org/TR/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .


dlflat:FlatThing a sh:NodeShape ;
    rdfs:label "Thing" ;
    rdfs:comment """`Thing` variant that provides a basis for the annotation and curation of more specialized concepts.
It equips `Thing` with additional slots to annotate labels and notes that aid information entry and curation in workflows and user interfaces. Moreover, the `identifiers` slot enables the specification is any number of identifiers (issued or computed) associated with a `Thing`.""" ;
    sh:closed true ;
    sh:ignoredProperties ( dlstudymx:dimensions dlrelationsmx:kind dlprovmx:associated_with dlstudymx:study dlstudymx:factors dlcommonmx:name dlrelationsmx:part_of rdf:type dlprovmx:derived_from dlstudymx:instruments ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "Note that can be shown when the record is displayed as an item. This is typically longer than a label." ;
            sh:maxCount 1 ;
            sh:name "Record display note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:note ],
        [ sh:class dlflat:FlatStatement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlidentifiers:Identifier ;
            sh:description "An unambiguous reference to the subject within a given context." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlidentifiers:identifier ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh: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." ;
            sh:name "Editorial note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:editorialNote ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:string ;
            sh:description "Label that can be shown when the metadata record is displayed as an item." ;
            sh:maxCount 1 ;
            sh:name "Record display label" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:prefLabel ],
        [ sh:class dlflat:FlatAttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ sh:class dlflat:FlatAnnotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ] ;
    sh:targetClass dlflat:FlatThing .

dlidentifiers:Checksum a sh:NodeShape ;
    rdfs:comment "A Checksum is a value that allows to check the integrity of the contents of a file. Even small changes to the content of the file will change its checksum. This class allows the results of a variety of checksum and cryptographic message digest algorithms to be represented." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "Identifies the software agent (algorithm) used to produce the subject `Checksum`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:creator ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:hexBinary ;
            sh:description "Lower case hexadecimal encoded checksum digest value." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:notation ;
            sh:pattern "^[a-fA-F0-9]+$" ] ;
    sh:targetClass dlidentifiers:Checksum .

dlidentifiers:ComputedIdentifier a sh:NodeShape ;
    rdfs:comment "An identifier that has been derived from information on the identified entity." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:string ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:notation ],
        [ sh:datatype xsd:anyURI ;
            sh:description "An agent responsible for making an entity." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:creator ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ] ;
    sh:targetClass dlidentifiers:ComputedIdentifier .

dlidentifiers:DOI a sh:NodeShape ;
    rdfs:comment "Digital Object Identifier (DOI; ISO 26324), an identifier system governed by the DOI Foundation, where individual identifiers are issued by one of several registration agencies." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:string ;
            sh:description "The identifier notation is specified without a URL-prefix, or a `doi:` prefix." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:notation ;
            sh:pattern "(?i)^(?!(?:https?://|doi:)).+$" ],
        [ sh:datatype xsd:string ;
            sh:defaultValue "DOI Foundation"^^xsd:string ;
            sh:description "By default, the schema agency is identified as `DOI Foundation`." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:schema_agency ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:defaultValue "https://doi.org"^^xsd:anyURI ;
            sh:description "By default, the creator is identified as \"https://doi.org\"." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:creator ] ;
    sh:targetClass dlidentifiers:DOI .

dlidentifiers:IssuedIdentifier a sh:NodeShape ;
    rdfs:comment "An identifier that was issued by a particular agent with a notation that has no (or an undefined) relation to the nature of the identified entity." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:string ;
            sh:description "Name of the agency that issued an identifier." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:schema_agency ],
        [ sh:datatype xsd:anyURI ;
            sh:description "An agent responsible for making an entity." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:creator ],
        [ sh:datatype xsd:string ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:notation ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ] ;
    sh:targetClass dlidentifiers:IssuedIdentifier .

dlprovmx:ActivityInfluence a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ) ;
    sh:property [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Activity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ] ;
    sh:targetClass dlprovmx:ActivityInfluence .

dlprovmx:ActivityMixin a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed false ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlprovmx:Association ;
            sh: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." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:associated_with ],
        [ sh:class dlprovmx:Usage ;
            sh: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." ;
            sh:name "Used" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:used ],
        [ sh:class dlprovmx:Communication ;
            sh:description "Communication is the exchange of an entity by two activities, one activity using the entity generated by the other." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:informed_by ],
        [ sh:class dlprovmx:Influence ;
            sh: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." ;
            sh:name "Influenced by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:influenced_by ],
        [ sh:class dlprovmx:End ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:ended ],
        [ sh:class dlprovmx:Start ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:started ] ;
    sh:targetClass dlprovmx:ActivityMixin .

dlprovmx:AgentInfluence a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type dlprovmx:started dlprovmx:ended ) ;
    sh:property [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Agent" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ] ;
    sh:targetClass dlprovmx:AgentInfluence .

dlprovmx:AgentMixin a sh:NodeShape ;
    rdfs:comment "Something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity." ;
    sh:closed false ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlprovmx:Influence ;
            sh: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." ;
            sh:name "Influenced by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:influenced_by ],
        [ sh:class dlprovmx:Delegation ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:delegated_by ] ;
    sh:targetClass dlprovmx:AgentMixin .

dlprovmx:EntityInfluence a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> rdf:type dlprovmx:used dlprovmx:generated_by ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Entity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ] ;
    sh:targetClass dlprovmx:EntityInfluence .

dlprovmx:EntityMixin a sh:NodeShape ;
    rdfs:comment "A physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary." ;
    sh:closed false ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlprovmx:Derivation ;
            sh: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." ;
            sh:name "Derived from" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:derived_from ],
        [ sh:class dlprovmx:Attribution ;
            sh:description "Attribution is the ascribing of an entity to an agent." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:attributed_to ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path dlprovmx:specialization_of ],
        [ sh:class dlprovmx:Invalidation ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:invalidated_by ],
        [ sh:class dlprovmx:Influence ;
            sh: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." ;
            sh:name "Influenced by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:influenced_by ],
        [ sh:class dlprovmx:Revision ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:revision_of ],
        [ sh:class dlprovmx:Quotation ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:quoted_from ],
        [ sh:class dlprovmx:Generation ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:name "Generated by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:generated_by ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path dlprovmx:alternate_of ] ;
    sh:targetClass dlprovmx:EntityMixin .

dlprovmx:InstantaneousEventMixin a sh:NodeShape ;
    rdfs:comment "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" ;
    sh:closed false ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Thing ;
            sh:description "Associate the subject with a location. This can be a geographic place, or another uniquely identified object." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ],
        [ sh:datatype w3ctr:NOTE-datetime ;
            sh:description "Time at which an instanteneous event takes place or took place." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> ;
            sh: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))$" ] ;
    sh:targetClass dlprovmx:InstantaneousEventMixin .

dlthings:ThingMixin a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed false ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:attributes ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:closeMatch ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:narrowMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:path dlthings:description ] ;
    sh:targetClass dlthings:ThingMixin .

dlthings:ValueSpecification a sh:NodeShape ;
    rdfs:comment "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`)." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Declares that the value of a `Thing` or `AttributeSpecification` are instances of a particular class." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdfs:range ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:string ;
            sh:description "Value that is a direct representation of a thing." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:value ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ] ;
    sh:targetClass dlthings:ValueSpecification .

dlthings:ValueSpecificationMixin a sh:NodeShape ;
    rdfs:comment "Mix-in for a (structured) value specification. Two slots are provided to define a (literal) value (`value`) and its type (`range`)." ;
    sh:closed false ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "Declares that the value of a `Thing` or `AttributeSpecification` are instances of a particular class." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdfs:range ],
        [ sh:datatype xsd:string ;
            sh:description "Value that is a direct representation of a thing." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:value ] ;
    sh:targetClass dlthings:ValueSpecificationMixin .

dlflatstudy:Subject a sh:NodeShape ;
    rdfs:comment "A subject is an entity being investigated in a study. This is a contextual entity. One and the same entity can be different subjects in two different studies." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlflatstudy:Study ;
            sh:description "The study in which the subject took place or existed." ;
            sh:maxCount 1 ;
            sh:name "Study context" ;
            sh:nodeKind sh:IRI ;
            sh:order 1 ;
            sh:path dlstudymx:study ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ sh:class dlflatstudy:Subject ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:name "Derived from" ;
            sh:nodeKind sh:IRI ;
            sh:order 5 ;
            sh:path dlprovmx:derived_from ],
        [ sh:class dlflat:FlatAttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ],
        [ sh:class dlidentifiers:Identifier ;
            sh:description "An unambiguous reference to the subject within a given context." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlidentifiers:identifier ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ sh:datatype xsd:string ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:order 2 ;
            sh:path dlcommonmx:name ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ sh:class dlflat:FlatStatement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:string ;
            sh:description "Label that can be shown when the metadata record is displayed as an item." ;
            sh:maxCount 1 ;
            sh:name "Record display label" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:prefLabel ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh: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." ;
            sh:name "Editorial note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:editorialNote ],
        [ sh:class dlflat:FlatAnnotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:class dlthings:Thing ;
            sh:description "A classifier that identifies the nature/type of a subject. For specimen (a subject derived/taken from another subject), this classifier should be more precise than the classifier of the source subject." ;
            sh:maxCount 1 ;
            sh:name "Type" ;
            sh:nodeKind sh:IRI ;
            sh:order 3 ;
            sh:path dlrelationsmx:kind ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "Note that can be shown when the record is displayed as an item. This is typically longer than a label." ;
            sh:maxCount 1 ;
            sh:name "Record display note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:note ] ;
    sh:targetClass dlflatstudy:Subject .

dlflat:AnnotationTag a sh:NodeShape ;
    rdfs:label "Annotation tag" ;
    rdfs:comment "A tag identifying an annotation." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlidentifiers:Identifier ;
            sh:description "An unambiguous reference to the subject within a given context." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlidentifiers:identifier ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ sh:class dlflat:FlatAnnotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "Note that can be shown when the record is displayed as an item. This is typically longer than a label." ;
            sh:maxCount 1 ;
            sh:name "Record display note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:note ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh: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." ;
            sh:name "Editorial note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:editorialNote ],
        [ sh:class dlflat:FlatStatement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlflat:FlatAttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:string ;
            sh:description "Label that can be shown when the metadata record is displayed as an item." ;
            sh:maxCount 1 ;
            sh:name "Record display label" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:prefLabel ] ;
    sh:targetClass dlflat:AnnotationTag .

dlprovmx:Attribution a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Thing ;
            sh:description "Agent the entity was attributed to." ;
            sh:maxCount 1 ;
            sh:name "Agent" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Roles the agent had with respect to the entity." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ] ;
    sh:targetClass dlprovmx:Attribution .

dlprovmx:Communication a sh:NodeShape ;
    rdfs:comment "Communication is the exchange of an entity by two activities, one activity using the entity generated by the other." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Activity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ] ;
    sh:targetClass dlprovmx:Communication .

dlprovmx:Delegation a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlprovmx:Start ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:started ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlprovmx:End ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:ended ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Agent" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ] ;
    sh:targetClass dlprovmx:Delegation .

dlprovmx:Derivation a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Entity that was derived from." ;
            sh:maxCount 1 ;
            sh:name "Entity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Roles the entity had with respect to the derivation." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlprovmx:Generation ;
            sh:description "Activity that generated the derived entity." ;
            sh:maxCount 1 ;
            sh:name "Generated by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:generated_by ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlprovmx:Usage ;
            sh:description "Entities used for the derivation (e.g., instruments)." ;
            sh:name "Used" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:used ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ] ;
    sh:targetClass dlprovmx:Derivation .

dlprovmx:Invalidation a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Activity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype w3ctr:NOTE-datetime ;
            sh:description "Time at which an instanteneous event takes place or took place." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> ;
            sh: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))$" ],
        [ sh:class dlthings:Thing ;
            sh:description "Associate the subject with a location. This can be a geographic place, or another uniquely identified object." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ] ;
    sh:targetClass dlprovmx:Invalidation .

dlprovmx:Quotation a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Thing ;
            sh:description "Entity that was derived from." ;
            sh:maxCount 1 ;
            sh:name "Entity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlprovmx:Generation ;
            sh:description "Activity that generated the derived entity." ;
            sh:maxCount 1 ;
            sh:name "Generated by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:generated_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:class dlthings:Thing ;
            sh:description "Roles the entity had with respect to the derivation." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlprovmx:Usage ;
            sh:description "Entities used for the derivation (e.g., instruments)." ;
            sh:name "Used" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:used ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ] ;
    sh:targetClass dlprovmx:Quotation .

dlprovmx:Revision a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlprovmx:Usage ;
            sh:description "Entities used for the derivation (e.g., instruments)." ;
            sh:name "Used" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:used ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Entity that was derived from." ;
            sh:maxCount 1 ;
            sh:name "Entity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:Thing ;
            sh:description "Roles the entity had with respect to the derivation." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlprovmx:Generation ;
            sh:description "Activity that generated the derived entity." ;
            sh:maxCount 1 ;
            sh:name "Generated by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:generated_by ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ] ;
    sh:targetClass dlprovmx:Revision .

dlflatstudy:Study a sh:NodeShape ;
    rdfs:comment "A planned process that consists of parts: planning, study design execution, documentation and which produce conclusion(s). An investigational endeavour that involves research, enabled by a project. The study relates to the scholarly and practical aspects of conducting the research itself, including the hypotheses being investigated, the data being gathered and analysed, the interpretations being drawn from the data, and the results obtained. In contrast, a project that enables it encompasses the administrative aspects of undertaking the endeavour, including the funding obtained, the people involved, and the management of the project in terms of deadlines and deliverables." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:class dlflat:FlatAnnotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:class dlidentifiers:Identifier ;
            sh:description "An unambiguous reference to the subject within a given context." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlidentifiers:identifier ],
        [ sh:class dlflat:FlatStatement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "Note that can be shown when the record is displayed as an item. This is typically longer than a label." ;
            sh:maxCount 1 ;
            sh:name "Record display note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:note ],
        [ sh:datatype xsd:string ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlcommonmx:name ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ sh:class dlprovmx:Association ;
            sh: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." ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 6 ;
            sh:path dlprovmx:associated_with ],
        [ sh:datatype xsd:string ;
            sh:description "Label that can be shown when the metadata record is displayed as an item." ;
            sh:maxCount 1 ;
            sh:name "Record display label" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:prefLabel ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Associated outcome variables." ;
            sh:name "Outcomes variables" ;
            sh:nodeKind sh:IRI ;
            sh:order 4 ;
            sh:path dlstudymx:dimensions ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Instruments employed in a study activity. This could be physical devices, but also software tools." ;
            sh:name "Used instruments" ;
            sh:nodeKind sh:IRI ;
            sh:order 3 ;
            sh:path dlstudymx:instruments ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh: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." ;
            sh:name "Editorial note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:editorialNote ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ],
        [ sh:class dlflatstudy:Study ;
            sh:description "The entity that the subject is a part of. A core relation that holds between a part and its whole." ;
            sh:nodeKind sh:IRI ;
            sh:order 5 ;
            sh:path dlrelationsmx:part_of ],
        [ sh:class dlthings:Thing ;
            sh:description "Factors that influence the subject matter." ;
            sh:name "Influencing factors" ;
            sh:nodeKind sh:IRI ;
            sh:order 2 ;
            sh:path dlstudymx:factors ],
        [ sh:class dlflat:FlatAttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ] ;
    sh:targetClass dlflatstudy:Study .

dlflat:FlatProperty a sh:NodeShape ;
    rdfs:label "Property" ;
    rdfs:comment "An RDF property, a `Thing` used to define a `predicate`, for example in a `Statement`." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "Note that can be shown when the record is displayed as an item. This is typically longer than a label." ;
            sh:maxCount 1 ;
            sh:name "Record display note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:note ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh: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." ;
            sh:name "Editorial note" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:editorialNote ],
        [ sh:datatype xsd:string ;
            sh:description "Label that can be shown when the metadata record is displayed as an item." ;
            sh:maxCount 1 ;
            sh:name "Record display label" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:prefLabel ] ;
    sh:targetClass dlflat:FlatProperty .

dlprovmx:Association a sh:NodeShape ;
    rdfs:comment "An activity association is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlprovmx:End ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:ended ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlprovmx:Start ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlprovmx:started ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Agent" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ] ;
    sh:targetClass dlprovmx:Association .

dlthings:Property a sh:NodeShape ;
    rdfs:comment "An RDF property, a `Thing` used to define a `predicate`, for example in a `Statement`." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type skos:note skos:prefLabel skos:editorialNote ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ] ;
    sh:targetClass dlthings:Property .

dlprovmx:End a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Associate the subject with a location. This can be a geographic place, or another uniquely identified object." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Trigger" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:datatype w3ctr:NOTE-datetime ;
            sh:description "Time at which an instanteneous event takes place or took place." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> ;
            sh: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))$" ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ] ;
    sh:targetClass dlprovmx:End .

dlprovmx:Influence a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> dlprovmx:started <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> dlprovmx:generated_by rdf:type dlprovmx:ended dlprovmx:used ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Influencer" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ] ;
    sh:targetClass dlprovmx:Influence .

dlprovmx:Start a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype w3ctr:NOTE-datetime ;
            sh:description "Time at which an instanteneous event takes place or took place." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> ;
            sh: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))$" ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:name "Trigger" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Associate the subject with a location. This can be a geographic place, or another uniquely identified object." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Describes the function of an entity or agent (object) within the scope of a relationship with the subject." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ] ;
    sh:targetClass dlprovmx:Start .

dlflat:FlatAnnotation a sh:NodeShape ;
    rdfs:label "Annotation" ;
    rdfs:comment "A tag/value pair with the semantics of OWL Annotation." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:string ;
            sh:description "The actual annotation." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlthings:annotation_value ],
        [ sh:class dlflat:AnnotationTag ;
            sh:description "A tag identifying an annotation." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path dlthings:annotation_tag ] ;
    sh:targetClass dlflat:FlatAnnotation .

dlflat:FlatAttributeSpecification a sh:NodeShape ;
    rdfs:label "Attribute" ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Declares that the value of a `Thing` or `AttributeSpecification` are instances of a particular class." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdfs:range ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:string ;
            sh:description "Value that is a direct representation of a thing." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:value ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:exactMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:closeMatch ],
        [ sh:class dlflat:FlatProperty ;
            sh:description "Reference to a `Property` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:predicate ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:narrowMatch ] ;
    sh:targetClass dlflat:FlatAttributeSpecification .

dlflat:FlatStatement a sh:NodeShape ;
    rdfs:label "Statement" ;
    rdfs:comment "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`." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:class dlflat:FlatProperty ;
            sh:description "Reference to a `Property` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:predicate ] ;
    sh:targetClass dlflat:FlatStatement .

dlidentifiers:Identifier a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type dlidentifiers:schema_agency ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "An agent responsible for making an entity." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:creator ],
        [ sh:datatype xsd:string ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlidentifiers:notation ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ] ;
    sh:targetClass dlidentifiers:Identifier .

dlprovmx:Generation a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Location where the generating activity took place." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:datatype w3ctr:NOTE-datetime ;
            sh:description "Timepoint when the generating activity happened." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> ;
            sh: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))$" ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlthings:Thing ;
            sh:description "Generating activity." ;
            sh:maxCount 1 ;
            sh:name "Activity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:class dlthings:Thing ;
            sh:description "Roles the activity had with respect to the generation." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ] ;
    sh:targetClass dlprovmx:Generation .

dlprovmx:Usage a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:class dlthings:Thing ;
            sh:description "Entity that was derived from." ;
            sh:maxCount 1 ;
            sh:name "Entity" ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 142 ;
            sh:path skos:broadMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 100 ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype w3ctr:NOTE-datetime ;
            sh:description "Timepoint when the usage happened." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path <https://concepts.datalad.org/s/temporal-mixin/unreleased/at_time> ;
            sh: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))$" ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 144 ;
            sh:path skos:relatedMatch ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 120 ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 141 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 110 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 143 ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 130 ;
            sh:path dlthings:annotations ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 140 ;
            sh:path skos:exactMatch ],
        [ sh:class dlthings:Thing ;
            sh:description "Roles the entity had with respect to the derivation." ;
            sh:nodeKind sh:IRI ;
            sh:path dlrelationsmx:roles ],
        [ sh:class dlthings:Thing ;
            sh:description "Location where the usage took place." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path <https://concepts.datalad.org/s/spatial-mixin/unreleased/at_location> ] ;
    sh:targetClass dlprovmx:Usage .

dlthings:Annotation a sh:NodeShape ;
    rdfs:comment "A tag/value pair with the semantics of OWL Annotation." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Thing ;
            sh:description "A tag identifying an annotation." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path dlthings:annotation_tag ],
        [ sh:datatype xsd:string ;
            sh:description "The actual annotation." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path dlthings:annotation_value ] ;
    sh:targetClass dlthings:Annotation .

dlthings:AttributeSpecification a sh:NodeShape ;
    rdfs:comment "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." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Declares that the value of a `Thing` or `AttributeSpecification` are instances of a particular class." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdfs:range ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:narrowMatch ],
        [ sh:class dlthings:Property ;
            sh:description "Reference to a `Property` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:predicate ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:characterized_by ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ sh:datatype xsd:string ;
            sh:description "Value that is a direct representation of a thing." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:value ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:path dlthings:description ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:closeMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:path skos:relatedMatch ],
        [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path dlthings:annotations ] ;
    sh:targetClass dlthings:AttributeSpecification .

dlthings:Statement a sh:NodeShape ;
    rdfs:comment "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`." ;
    sh:closed true ;
    sh:ignoredProperties ( rdf:type ) ;
    sh:property [ sh:class dlthings:Property ;
            sh:description "Reference to a `Property` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:predicate ],
        [ sh:class dlthings:Thing ;
            sh:description "Reference to a `Thing` within a `Statement`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path rdf:object ] ;
    sh:targetClass dlthings:Statement .

dlthings:Thing a sh:NodeShape ;
    rdfs:comment "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`." ;
    sh:closed true ;
    sh:ignoredProperties ( dlstudymx:dimensions skos:prefLabel dlrelationsmx:kind dlidentifiers:identifier skos:note dlprovmx:associated_with dlstudymx:study dlcommonmx:name skos:editorialNote rdfs:range dlstudymx:factors dlrelationsmx:part_of rdf:type dlprovmx:derived_from rdf:value dlstudymx:instruments ) ;
    sh:property [ sh:class dlthings:Annotation ;
            sh:description "A record of properties of the metadata record on a subject, a collection of tag/text tuples with the semantics of OWL Annotation." ;
            sh:name "Annotations" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 5 ;
            sh:path dlthings:annotations ],
        [ sh:datatype rdfs:Resource ;
            sh: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." ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path rdf:type ],
        [ dash:singleLine false ;
            sh:datatype xsd:string ;
            sh:description "A free-text account of the subject." ;
            sh:maxCount 1 ;
            sh:name "Description" ;
            sh:nodeKind sh:Literal ;
            sh:order 4 ;
            sh:path dlthings:description ],
        [ sh:class dlthings:AttributeSpecification ;
            sh: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." ;
            sh:name "Attributes" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 3 ;
            sh:path dlthings:attributes ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have related meaning." ;
            sh:name "Related mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 11 ;
            sh:path skos:relatedMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "Persistent and globally unique identifier of a `Thing`." ;
            sh:maxCount 1 ;
            sh:minCount 1 ;
            sh:name "Persistent identifier" ;
            sh:nodeKind sh:Literal ;
            sh:order 1 ;
            sh:path dlthings:pid ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ;
            sh:name "Exact mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 7 ;
            sh:path skos:exactMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ;
            sh:name "Narrow mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 10 ;
            sh:path skos:narrowMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ;
            sh:name "Broad mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 9 ;
            sh:path skos:broadMatch ],
        [ sh:datatype xsd:anyURI ;
            sh:description "A list of terms from different schemas or terminology systems that have close meaning." ;
            sh:name "Close mappings" ;
            sh:nodeKind sh:Literal ;
            sh:order 8 ;
            sh:path skos:closeMatch ],
        [ sh:class dlthings:Statement ;
            sh:description "Qualifies relationships between a subject `Thing` and an object `Thing` with a `Statement` declaring a `predicate` on the nature of the relationship." ;
            sh:name "Is characterized by" ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:order 2 ;
            sh:path dlthings:characterized_by ],
        [ sh:class dlthings:Thing ;
            sh: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." ;
            sh:name "Relations" ;
            sh:nodeKind sh:IRI ;
            sh:order 6 ;
            sh:path dlthings:relation ] ;
    sh:targetClass dlthings:Thing .

