@prefix IAO: <http://purl.obolibrary.org/obo/IAO_> .
@prefix OIO: <http://www.geneontology.org/formats/oboInOwl#> .
@prefix bibo: <http://purl.org/ontology/bibo/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix linkml: <https://w3id.org/linkml/> .
@prefix oslc: <http://open-services.net/ns/core#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix pav: <http://purl.org/pav/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <https://w3id.org/shacl/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

linkml:boolean_slot a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "boolean_slot" ;
    rdfs:range linkml:Expression ;
    skos:definition "A grouping of slots that expression a boolean operator over a list of operands" .

linkml:equals_number_in a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "equals_number_in" ;
    rdfs:range linkml:Integer ;
    rdfs:subPropertyOf linkml:list_value_specification_constant ;
    skos:definition "the slot must have range number and the value of the slot must equal one of the specified values" .

linkml:meta a owl:Ontology ;
    rdfs:label "meta" ;
    IAO:0000700 linkml:AltDescription,
        linkml:Annotatable,
        linkml:ClassExpression,
        linkml:ClassLevelRule,
        linkml:CommonMetadata,
        linkml:Example,
        linkml:Expression,
        linkml:Extensible,
        linkml:Extension,
        linkml:LocalName,
        linkml:Prefix ;
    dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ;
    dcterms:title "LinkML Schema Metamodel" ;
    pav:version "2.0.0" ;
    skos:definition "A metamodel for defining linked open data schemas" ;
    linkml:generation_date "2021-10-27T23:35:54" ;
    linkml:metamodel_version "1.7.0" ;
    linkml:source_file "meta.yaml" ;
    linkml:source_file_date "2021-10-27T23:30:13" ;
    linkml:source_file_size 45186 .

linkml:topValue a owl:DatatypeProperty ;
    rdfs:label "value" .

linkml:value_presence a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "value_presence" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range <http://UNKNOWN.org/presence_enum> ;
    rdfs:subPropertyOf linkml:value_specification_constant ;
    skos:definition "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)" ;
    skos:note "if set to true this has the same effect as required=true. In contrast, required=false allows a value to be present" .

oslc:modifiedBy a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "modified_by" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "agent that modified the element" .

dcterms:conformsTo a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "conforms_to" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "An established standard to which the element conforms." .

dcterms:license a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "license" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:String ;
    skos:definition "license for the schema" .

bibo:status a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "status" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "status of the element" ;
    linkml:examples "Example(value='bibo:draft', description=None)" .

pav:createdBy a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "created_by" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "agent that created the element" .

pav:createdOn a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "created_on" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Datetime ;
    skos:definition "time at which the element was created" .

pav:lastUpdatedOn a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "last_updated_on" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Datetime ;
    skos:definition "time at which the element was last updated" .

pav:version a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "version" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:String ;
    skos:definition "particular version of schema" .

rdfs:subClassOf a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "subclass_of" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "rdfs:subClassOf to be emitted in OWL generation" .

rdfs:subPropertyOf a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "subproperty_of" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "Ontology property which this slot is a subproperty of" .

owl:inverseOf a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "inverse" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "indicates that any instance of d s r implies that there is also an instance of r s' d" .

skos:broadMatch a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "broad mappings" ;
    rdfs:range linkml:Uriorcurie ;
    rdfs:subPropertyOf skos:mappingRelation ;
    skos:definition "A list of terms from different schemas or terminology systems that have broader meaning." .

skos:closeMatch a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "close mappings" ;
    rdfs:range linkml:Uriorcurie ;
    rdfs:subPropertyOf skos:mappingRelation ;
    skos:definition "A list of terms from different schemas or terminology systems that have close meaning." .

skos:exactMatch a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "exact mappings" ;
    rdfs:range linkml:Uriorcurie ;
    rdfs:subPropertyOf skos:mappingRelation ;
    skos:definition "A list of terms from different schemas or terminology systems that have identical meaning." .

skos:example a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "value" ;
    rdfs:domain linkml:Example ;
    rdfs:range linkml:String ;
    skos:definition "example value" .

skos:narrowMatch a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "narrow mappings" ;
    rdfs:range linkml:Uriorcurie ;
    rdfs:subPropertyOf skos:mappingRelation ;
    skos:definition "A list of terms from different schemas or terminology systems that have narrower meaning." .

skos:prefLabel a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "alias" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:String ;
    skos:definition "the name used for a slot in the context of its owning class.  If present, this is used instead of the actual slot name." .

skos:relatedMatch a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "related mappings" ;
    rdfs:range linkml:Uriorcurie ;
    rdfs:subPropertyOf skos:mappingRelation ;
    skos:definition "A list of terms from different schemas or terminology systems that have related meaning." .

linkml:ClassRule a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "class_rule" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:AltDescription ;
            owl:onProperty linkml:alt_descriptions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty sh:order ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:title ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:note ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_possible_replacement ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousClassExpression ;
            owl:onProperty linkml:postconditions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:imported_from ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:bidirectional ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousClassExpression ;
            owl:onProperty sh:condition ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Example ;
            owl:onProperty linkml:examples ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:editorialNote ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uri ;
            owl:onProperty skos:inScheme ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:open_world ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousClassExpression ;
            owl:onProperty linkml:elseconditions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_exact_replacement ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty OIO:inSubset ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:deprecated ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:todos ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty rdfs:seeAlso ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty sh:deactivated ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:definition ],
        linkml:Annotatable,
        linkml:ClassLevelRule,
        linkml:CommonMetadata,
        linkml:Extensible ;
    skos:altLabel "if rule" ;
    skos:closeMatch swrl:Imp,
        sh:TripleRule ;
    skos:definition "A rule that applies to instances of a class" .

linkml:abstract a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "abstract" ;
    rdfs:domain linkml:Definition ;
    rdfs:range linkml:Boolean ;
    skos:definition "an abstract class is a high level class or slot that is typically used to group common slots together and cannot be directly instantiated." .

linkml:attributes a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "attributes" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "Inline definition of slots" ;
    skos:note "attributes are an alternative way of defining new slots.  An attribute adds a slot to the global space in the form <class_name>__<slot_name> (lower case, double underscores).  Attributes can be specialized via slot_usage." .

linkml:base a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "base" ;
    rdfs:domain linkml:TypeDefinition ;
    rdfs:range linkml:String ;
    skos:definition "python base type that implements this type definition" ;
    skos:note "every root type must have a base",
        "the base is inherited by child types but may be overriden.  Base compatibility is not checked." .

linkml:bidirectional a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "bidirectional" ;
    rdfs:range linkml:Boolean ;
    skos:definition "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" .

linkml:class_uri a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "class_uri" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "URI of the class in an RDF environment" .

linkml:classes a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "classes" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:ClassDefinition ;
    skos:definition "class definitions" .

linkml:classification_rules a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "classification_rules" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:AnonymousClassExpression ;
    skos:definition "the collection of classification rules that apply to all members of this class" .

linkml:code_set a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "code_set" ;
    rdfs:domain linkml:EnumDefinition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "the identifier of an enumeration code set." .

linkml:code_set_tag a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "code_set_tag" ;
    rdfs:domain linkml:EnumDefinition ;
    rdfs:range linkml:String ;
    skos:definition "the version tag of the enumeration code set" ;
    skos:note "enum_definition cannot have both a code_set_tag and a code_set_version" .

linkml:code_set_version a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "code_set_version" ;
    rdfs:domain linkml:EnumDefinition ;
    rdfs:range linkml:String ;
    skos:definition "the version identifier of the enumeration code set" ;
    skos:note "we assume that version identifiers lexically sort in temporal order. Recommend semver when possible" .

linkml:default_curi_maps a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "default_curi_maps" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:String ;
    skos:definition "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" .

linkml:default_prefix a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "default_prefix" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:String ;
    skos:definition "default and base prefix -- used for ':' identifiers, @base and @vocab" .

linkml:default_range a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "default_range" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:TypeDefinition ;
    skos:definition "default slot range to be used if range element is omitted from a slot definition" ;
    skos:editorialNote "restricted to type definitions for the time being.  Could be broadened if required" .

linkml:defining_slots a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "defining_slots" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" .

linkml:definition_uri a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "definition_uri" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "the \"native\" URI of the element" ;
    skos:note "Formed by combining the default_prefix with the mangled element" .

linkml:designates_type a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "designates_type" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" .

linkml:domain a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "domain" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:ClassDefinition ;
    skos:definition """defines the type of the subject of the slot.  Given the following slot definition
  S1:
    domain: C1
    range:  C2
the declaration
  X:
    S1: Y

implicitly asserts that X is an instance of C1
""" .

linkml:domain_of a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "domain_of" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:ClassDefinition ;
    skos:definition "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" .

linkml:elseconditions a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "elseconditions" ;
    rdfs:range linkml:AnonymousClassExpression ;
    skos:definition "an expression that must hold for an instance of the class, if the preconditions no not hold" .

linkml:emit_prefixes a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "emit_prefixes" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Ncname ;
    skos:definition "a list of Curie prefixes that are used in the representation of instances of the model.  All prefixes in this list are added to the prefix sections of the target models." .

linkml:enums a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "enums" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:EnumDefinition ;
    skos:definition "enumerated ranges" .

linkml:generation_date a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "generation_date" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Datetime ;
    skos:definition "date and time that the schema was loaded/generated" .

linkml:id a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "id" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Uri ;
    skos:definition "The official schema URI" .

linkml:id_prefixes a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "id_prefixes" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Ncname ;
    rdfs:seeAlso "https://github.com/linkml/linkml-model/issues/28",
        "https://github.com/linkml/linkml/issues/194" ;
    skos:definition "the identifier of this class or slot must begin with the URIs referenced by this prefix" ;
    skos:note "If identifiers are treated as CURIEs, then the CURIE must start with one of the indicated prefixes followed by `:` (_should_ start if the list is open)",
        "If identifiers are treated as URIs, then the URI string must start with the expanded for of the prefix (_should_ start if the list is open)",
        "Order of elements may be used to indicate priority order" .

linkml:identifier a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "identifier" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    rdfs:seeAlso "https://en.wikipedia.org/wiki/Identifier" ;
    skos:definition "True means that the key slot(s) uniquely identify the container. There can be at most one identifier or key per container" ;
    skos:note "a given domain can have at most one identifier",
        "a key slot is automatically required.  Identifiers cannot be optional",
        "identifier is inherited",
        "identifiers and keys are mutually exclusive.  A given domain cannot have both" .

linkml:ifabsent a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "ifabsent" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:String ;
    skos:definition """function that provides a default value for the slot.  Possible values for this slot are defined in biolink.utils.ifabsent_functions.default_library:
  * [Tt]rue -- boolean True
  * [Ff]alse -- boolean False
  * int(value) -- integer value
  * str(value) -- string value
  * default_range -- schema default range
  * bnode -- blank node identifier
  * slot_uri -- URI for the slot
  * class_curie -- CURIE for the containing class
  * class_uri -- URI for the containing class""" .

linkml:imports a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "imports" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "other schemas that are included in this schema" .

linkml:inherited a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "inherited" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "true means that the *value* of a slot is inherited by subclasses" ;
    skos:note "Inherited applies to slot values.  Parent *slots* are always inherited by subclasses" .

linkml:inlined a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "inlined" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "True means that keyed or identified slot appears in an outer structure by value.  False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ;
    skos:note "classes without keys or identifiers are necessarily inlined as lists" .

linkml:inlined_as_list a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "inlined_as_list" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "True means that an inlined slot is represented as a list of range instances.  False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ;
    skos:note """A keyed or identified class with one additional slot can be input in a third form, a dictionary whose key
is the key or identifier and whose value is the one additional element.  This form is still stored according
to the inlined_as_list setting.""",
        """The default loader will accept either list or dictionary form as input.  This parameter controls internal
representation and output.""" .

linkml:is_class_field a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "is_class_field" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "indicates that any instance, i,  the domain of this slot will include an assert of i s range" .

linkml:is_usage_slot a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "is_usage_slot" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "True means that this slot was defined in a slot_usage situation" .

linkml:key a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "key" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "True means that the key slot(s) uniquely identify the container." ;
    skos:note "a given domain can have at most one key slot (restriction to be removed in the future)",
        "a key slot is automatically required.  Keys cannot be optional",
        "identifiers and keys are mutually exclusive.  A given domain cannot have both",
        "key is inherited",
        "see also 'unique_key'" .

linkml:local_name_source a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "local_name_source" ;
    rdfs:domain linkml:LocalName ;
    rdfs:range linkml:Ncname ;
    skos:definition "the ncname of the source of the name" .

linkml:local_names a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "local_names" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:LocalName .

linkml:meaning a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "meaning" ;
    rdfs:domain linkml:PermissibleValue ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "the value meaning (in the 11179 sense) of a permissible value" ;
    skos:editorialNote "we may want to change the range of this (and other) elements in the model to an entitydescription type construct" .

linkml:metamodel_version a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "metamodel_version" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:String ;
    skos:definition "Version of the metamodel used to load the schema" .

linkml:multivalued a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "multivalued" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "true means that slot can have more than one value" .

linkml:open_world a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "open_world" ;
    rdfs:range linkml:Boolean ;
    skos:definition "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" .

linkml:owner a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "owner" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Definition ;
    skos:definition "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" .

linkml:permissible_values a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "permissible_values" ;
    rdfs:domain linkml:EnumDefinition ;
    rdfs:range linkml:PermissibleValue ;
    skos:definition "A list of possible values for a slot range" .

linkml:postconditions a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "postconditions" ;
    rdfs:range linkml:AnonymousClassExpression ;
    skos:definition "an expression that must hold for an instance of the class, if the preconditions hold" .

linkml:prefix_prefix a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "prefix_prefix" ;
    rdfs:domain linkml:Prefix ;
    rdfs:range linkml:Ncname ;
    skos:definition "the nsname (sans ':' for a given prefix)" .

linkml:prefix_reference a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "prefix_reference" ;
    rdfs:domain linkml:Prefix ;
    rdfs:range linkml:Uri ;
    skos:definition "A URI associated with a given prefix" .

linkml:prefixes a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "prefixes" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Prefix ;
    skos:definition "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes" .

linkml:pv_formula a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "pv_formula" ;
    rdfs:domain linkml:EnumDefinition ;
    rdfs:range <http://UNKNOWN.org/pv_formula_options> ;
    skos:definition "Defines the specific formula to be used to generate the permissible values." ;
    skos:note "code_set must be supplied for this to be valid",
        "you cannot have BOTH the permissible_values and permissible_value_formula tag" .

linkml:readonly a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "readonly" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:String ;
    skos:definition "If present, slot is read only.  Text explains why" .

linkml:repr a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "repr" ;
    rdfs:domain linkml:TypeDefinition ;
    rdfs:range linkml:String ;
    skos:definition "the name of the python object that implements this type definition" .

linkml:role a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "role" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:String ;
    skos:definition "the role played by the slot range" .

linkml:slot_uri a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "slot_uri" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "predicate of this slot for semantic web application" .

linkml:slot_usage a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "slot_usage" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "the redefinition of a slot in the context of the containing class definition." ;
    skos:note "Many slots may be re-used across different classes, but the meaning of the slot may be refined by context. For example, a generic association model may use slots subject/predicate/object with generic semantics and minimal constraints. When this is subclasses, e.g. to disease-phenotype associations then slot usage may specify both local naming (e.g. subject=disease) and local constraints" .

linkml:source a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "source" ;
    rdfs:domain linkml:AltDescription ;
    rdfs:range linkml:String ;
    skos:definition "the source of an attributed description" .

linkml:source_file a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "source_file" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:String ;
    skos:definition "name, uri or description of the source of the schema" .

linkml:source_file_date a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "source_file_date" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Datetime ;
    skos:definition "modification date of the source of the schema" .

linkml:source_file_size a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "source_file_size" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:Integer ;
    skos:definition "size in bytes of the source of the schema" .

linkml:string_serialization a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "string_serialization" ;
    rdfs:domain linkml:Definition ;
    rdfs:range linkml:String ;
    rdfs:seeAlso "https://github.com/linkml/issues/128" ;
    skos:definition """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots.
We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion.
Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects
For example, a Measurement class may have 3 fields: unit, value, and string_value. The string_value slot may have a string_serialization of {value}{unit} such that if unit=cm and value=2, the value of string_value shouldd be 2cm""" .

linkml:subsets a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "subsets" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:SubsetDefinition ;
    skos:definition "list of subsets referenced in this model" .

linkml:symmetric a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "symmetric" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "True means that any instance of  d s r implies that there is also an instance of r s d" .

linkml:tag a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "tag" ;
    rdfs:domain linkml:Extension ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "a tag associated with an extension" .

linkml:text a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "text" ;
    rdfs:domain linkml:PermissibleValue ;
    rdfs:range linkml:String .

linkml:tree_root a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "tree_root" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "indicator that this is the root class in tree structures" ;
    skos:editorialNote "each schema should have at most one tree root" .

linkml:typeof a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "typeof" ;
    rdfs:domain linkml:TypeDefinition ;
    rdfs:range linkml:TypeDefinition ;
    skos:definition "Names a parent type" ;
    skos:note "the target type definition of the typeof slot is referred to as the \"parent type\"",
        "the type definition containing the typeof slot is referred to as the \"child type\"",
        "type definitions without a typeof slot are referred to as a \"root type\"" .

linkml:types a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "types" ;
    rdfs:domain linkml:SchemaDefinition ;
    rdfs:range linkml:TypeDefinition ;
    skos:definition "data types used in the model" .

linkml:union_of a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "union_of" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:ClassDefinition ;
    skos:definition "indicates that the domain class consists exactly of the members of the classes in the range" ;
    skos:editorialNote "this only applies in the OWL generation" .

linkml:unique_keys a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "unique_keys" ;
    rdfs:domain linkml:ClassDefinition ;
    rdfs:range linkml:UniqueKey ;
    skos:definition "Set of unique keys for this slot" .

linkml:uri a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "uri" ;
    rdfs:domain linkml:TypeDefinition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "The uri that defines the possible values for the type definition" ;
    skos:note "every root type must have a type uri",
        "uri is typically drawn from the set of URI's defined in OWL (https://www.w3.org/TR/2012/REC-owl2-syntax-20121211/#Datatype_Maps)" .

linkml:usage_slot_name a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "usage_slot_name" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:String ;
    skos:definition "The name of the slot referenced in the slot_usage" .

linkml:values_from a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "values_from" ;
    rdfs:domain linkml:Definition ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "the identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot" .

sh:condition a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "preconditions" ;
    rdfs:range linkml:AnonymousClassExpression ;
    skos:definition "an expression that must hold in order for the rule to be applicable to an instance" .

sh:deactivated a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "deactivated" ;
    rdfs:range linkml:Boolean ;
    skos:definition "a deactivated rule is not executed by the rules engine" .

sh:order a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "precedence" ;
    rdfs:range linkml:Integer ;
    skos:definition "the relative order in which the rule is applied" .

sh:rule a owl:ObjectProperty,
        linkml:SlotDefinition .

rdfs:label a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:AnonymousExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "anonymous_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty OIO:inSubset ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:deprecated ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uri ;
            owl:onProperty skos:inScheme ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:imported_from ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:todos ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_exact_replacement ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:editorialNote ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_possible_replacement ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:title ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:definition ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty rdfs:seeAlso ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AltDescription ;
            owl:onProperty linkml:alt_descriptions ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:note ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Example ;
            owl:onProperty linkml:examples ],
        linkml:Annotatable,
        linkml:CommonMetadata,
        linkml:Expression,
        linkml:Extensible .

linkml:ClassLevelRule a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "class_level_rule" ;
    skos:definition "A rule that is applied to classes" .

linkml:TypeExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "type_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:pattern ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:equals_string_in ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_string ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:equals_number ],
        linkml:Expression,
        linkml:mixin .

linkml:slots a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:unique_key_slots a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "unique_key_slots" ;
    rdfs:domain linkml:UniqueKey ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "list of slot names that form a key" .

skos:altLabel a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:ClassExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "class_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:slot_conditions ],
        linkml:mixin ;
    skos:definition "A boolean expression that can be used to dynamically determine membership of a class" .

linkml:SlotExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "slot_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousClassExpression ;
            owl:onProperty linkml:range_expression ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_expression ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Element ;
            owl:onProperty linkml:range ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:recommended ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:has_member ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:equals_number ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_string ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:maximum_cardinality ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:pattern ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:minimum_value ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:maximum_value ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:all_members ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:minimum_cardinality ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:required ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:equals_string_in ],
        linkml:Expression,
        linkml:mixin ;
    skos:definition "an expression that constrains the range of values a slot can take" .

linkml:UniqueKey a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "unique_key" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_possible_replacement ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AltDescription ;
            owl:onProperty linkml:alt_descriptions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:title ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_exact_replacement ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:imported_from ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Example ;
            owl:onProperty linkml:examples ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:editorialNote ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:deprecated ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:definition ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty OIO:inSubset ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uri ;
            owl:onProperty skos:inScheme ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty rdfs:seeAlso ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:todos ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:note ],
        [ a owl:Class ;
            owl:intersectionOf ( [ a owl:Restriction ;
                        owl:allValuesFrom linkml:SlotDefinition ;
                        owl:onProperty linkml:unique_key_slots ] [ a owl:Restriction ;
                        owl:onProperty linkml:unique_key_slots ;
                        owl:someValuesFrom linkml:SlotDefinition ] ) ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        linkml:Annotatable,
        linkml:CommonMetadata,
        linkml:Extensible ;
    skos:definition "a collection of slots whose values uniquely identify an instance of a class" .

linkml:all_members a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "all_members" ;
    rdfs:range linkml:SlotDefinition ;
    rdfs:subPropertyOf linkml:list_value_specification_constant ;
    skos:definition """the value of the multiavlued slot is a list where all elements conform to the specified values.
this defines a dynamic class with named slots according to matching constraints

E.g to state that all members of a list are between 1 and 10
```
all_members:
  x:
    range: integer
    minimum_value: 10
    maximum_value: 10
```""" .

linkml:apply_to a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:equals_expression a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "equals_expression" ;
    rdfs:range linkml:String ;
    rdfs:seeAlso "https://github.com/linkml/linkml/issues/75" ;
    rdfs:subPropertyOf linkml:value_specification_constant ;
    skos:definition "the value of the slot must equal the value of the evaluated expression" ;
    skos:note "for example, a 'length' slot may have an equals_expression with value '(end-start)+1'" .

linkml:has_member a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "has_member" ;
    rdfs:range linkml:AnonymousSlotExpression ;
    rdfs:subPropertyOf linkml:list_value_specification_constant ;
    skos:definition "the values of the slot is multivalued with at least one member satisfying the condition" .

linkml:maximum_cardinality a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "maximum_cardinality" ;
    rdfs:range linkml:Integer ;
    rdfs:subPropertyOf linkml:value_specification_constant ;
    skos:definition "the maximum number of entries for a multivalued slot" .

linkml:maximum_value a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "maximum_value" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Integer ;
    skos:definition "for slots with ranges of type number, the value must be equal to or lowe than this" .

linkml:minimum_cardinality a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "minimum_cardinality" ;
    rdfs:range linkml:Integer ;
    rdfs:subPropertyOf linkml:value_specification_constant ;
    skos:definition "the minimum number of entries for a multivalued slot" .

linkml:minimum_value a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "minimum_value" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Integer ;
    skos:definition "for slots with ranges of type number, the value must be equal to or higher than this" .

linkml:range a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "range" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Element ;
    skos:definition """defines the type of the object of the slot.  Given the following slot definition
  S1:
    domain: C1
    range:  C2
the declaration
  X:
    S1: Y

implicitly asserts Y is an instance of C2
""" ;
    skos:note "range is underspecified, as not all elements can appear as the range of a slot." .

linkml:range_expression a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "range_expression" ;
    rdfs:domain linkml:SlotExpression ;
    rdfs:range linkml:AnonymousClassExpression ;
    skos:definition "A range that is described as a boolean expression combining existing ranges" ;
    skos:note "one use for this is being able to describe a range using any_of expressions, for example to combine two enums" .

linkml:recommended a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "recommended" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    rdfs:seeAlso "https://github.com/linkml/linkml/issues/177" ;
    skos:definition "true means that the slot should be present in the loaded definition, but this is not required" ;
    skos:note "If a slot is recommended, and it is not populated, applications must not treat this as an error. Applications may use this to inform the user of missing data",
        "This is to be used where not all data is expected to conform to having a required field" .

linkml:required a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "required" ;
    rdfs:domain linkml:SlotDefinition ;
    rdfs:range linkml:Boolean ;
    skos:definition "true means that the slot must be present in the loaded definition" .

linkml:slot_conditions a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "slot_conditions" ;
    rdfs:range linkml:SlotDefinition ;
    skos:definition "the redefinition of a slot in the context of the containing class definition." .

linkml:LocalName a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "local_name" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:onClass linkml:String ;
            owl:onProperty skos:altLabel ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:onClass linkml:Ncname ;
            owl:onProperty linkml:local_name_source ;
            owl:qualifiedCardinality 1 ] ;
    skos:definition "an attributed label" .

linkml:list_value_specification_constant a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "list_value_specification_constant" ;
    rdfs:range linkml:String ;
    skos:definition "Grouping for metamodel slots that constrain members of a multivalued slot value to equal a specified constant" .

linkml:mixins a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:Expression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "expression" ;
    rdfs:subClassOf linkml:mixin ;
    skos:definition "todo" .

linkml:Prefix a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "prefix" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:onClass linkml:Uri ;
            owl:onProperty linkml:prefix_reference ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:onClass linkml:Ncname ;
            owl:onProperty linkml:prefix_prefix ;
            owl:qualifiedCardinality 1 ] ;
    skos:definition "prefix URI tuple" .

linkml:is_a a owl:ObjectProperty,
        linkml:SlotDefinition .

dcterms:title a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "title" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "the official title of the element" .

OIO:inSubset a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "in_subset" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:SubsetDefinition ;
    skos:definition "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)" .

rdfs:seeAlso a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "see_also" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "a reference" .

skos:definition a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "description" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "a description of the element's purpose and use" .

skos:editorialNote a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "notes" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "editorial notes about an element intended for internal consumption" .

skos:inScheme a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "from_schema" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Uri ;
    skos:definition "id of the schema that defined the element" ;
    skos:editorialNote "A stronger model would be range schema_definition, but this doesn't address the import model" .

skos:mappingRelation a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "mappings" ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." .

skos:note a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "comments" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "notes and comments about an element intended for external consumption" .

linkml:CommonMetadata a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "common_metadata" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_possible_replacement ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Example ;
            owl:onProperty linkml:examples ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:editorialNote ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_exact_replacement ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uri ;
            owl:onProperty skos:inScheme ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:note ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty rdfs:seeAlso ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:imported_from ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:definition ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:title ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty OIO:inSubset ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AltDescription ;
            owl:onProperty linkml:alt_descriptions ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:todos ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:deprecated ],
        linkml:mixin ;
    skos:definition "Generic metadata shared across definitions" .

linkml:PermissibleValue a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "permissible_value" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:imported_from ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:PermissibleValue ;
            owl:onProperty linkml:is_a ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:note ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:definition ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:deprecated ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty OIO:inSubset ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:title ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:todos ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty rdfs:seeAlso ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Example ;
            owl:onProperty linkml:examples ],
        [ a owl:Restriction ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:text ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:editorialNote ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_exact_replacement ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:PermissibleValue ;
            owl:onProperty linkml:mixins ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AltDescription ;
            owl:onProperty linkml:alt_descriptions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_possible_replacement ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:meaning ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uri ;
            owl:onProperty skos:inScheme ],
        linkml:Annotatable,
        linkml:CommonMetadata,
        linkml:Extensible ;
    skos:definition "a permissible value, accompanied by intended text and an optional mapping to a concept URI" .

linkml:alt_descriptions a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "alt_descriptions" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:AltDescription .

linkml:deprecated a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "deprecated" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "Description of why and when this element will no longer be used" .

linkml:deprecated_element_has_exact_replacement a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "deprecated element has exact replacement" ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "When an element is deprecated, it can be automatically replaced by this uri or curie" .

linkml:deprecated_element_has_possible_replacement a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "deprecated element has possible replacement" ;
    rdfs:range linkml:Uriorcurie ;
    skos:definition "When an element is deprecated, it can be potentially replaced by this uri or curie" .

linkml:equals_number a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "equals_number" ;
    rdfs:range linkml:Integer ;
    rdfs:subPropertyOf linkml:value_specification_constant ;
    skos:definition "the slot must have range of a number and the value of the slot must equal the specified value" .

linkml:equals_string a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "equals_string" ;
    rdfs:range linkml:String ;
    rdfs:subPropertyOf linkml:value_specification_constant ;
    skos:definition "the slot must have range string and the value of the slot must equal the specified value" .

linkml:equals_string_in a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "equals_string_in" ;
    rdfs:range linkml:String ;
    rdfs:subPropertyOf linkml:list_value_specification_constant ;
    skos:definition "the slot must have range string and the value of the slot must equal one of the specified values" .

linkml:examples a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "examples" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:Example ;
    skos:definition "example usages of an element" .

linkml:imported_from a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "imported_from" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "the imports entry that this element was derived from.  Empty means primary source" .

linkml:pattern a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "pattern" ;
    rdfs:domain linkml:Definition ;
    rdfs:range linkml:String ;
    skos:definition "the string value of the slot must conform to this regular expression" .

linkml:todos a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "todos" ;
    rdfs:domain linkml:Element ;
    rdfs:range linkml:String ;
    skos:definition "Outstanding issue that needs resolution" .

linkml:value_specification_constant a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "value_specification_constant" ;
    rdfs:range linkml:String ;
    skos:definition "Grouping for metamodel slots that constrain the a slot value to equal a specified constant" .

linkml:EnumDefinition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "enum_definition" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:code_set_version ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:code_set ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:code_set_tag ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:PermissibleValue ;
            owl:onProperty linkml:permissible_values ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass <http://UNKNOWN.org/pv_formula_options> ;
            owl:onProperty linkml:pv_formula ],
        linkml:Element ;
    skos:definition "List of values that constrain the range of a slot" .

linkml:Extensible a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "extensible" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        linkml:mixin ;
    skos:definition "mixin for classes that support extension" .

linkml:annotations a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "annotations" ;
    rdfs:domain linkml:Annotatable ;
    rdfs:range linkml:Annotation ;
    rdfs:subPropertyOf linkml:extensions ;
    skos:definition "a collection of tag/text tuples with the semantics of OWL Annotation" .

linkml:Annotatable a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "annotatable" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        linkml:mixin ;
    skos:definition "mixin for classes that support annotations" .

linkml:Annotation a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "annotation" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        linkml:Annotatable,
        linkml:Extension ;
    skos:definition "a tag/value pair with the semantics of OWL Annotation" .

linkml:extensions a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "extensions" ;
    rdfs:domain linkml:Extensible ;
    rdfs:range linkml:Extension ;
    skos:definition "a tag/text tuple attached to an arbitrary element" .

linkml:mixin a owl:ObjectProperty,
        linkml:SlotDefinition ;
    rdfs:label "mixin" ;
    rdfs:domain linkml:Definition ;
    rdfs:range linkml:Boolean ;
    rdfs:seeAlso "https://en.wikipedia.org/wiki/Mixin" ;
    skos:definition "this slot or class can only be used as a mixin." .

linkml:AltDescription a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "alt_description" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:description ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:source ;
            owl:qualifiedCardinality 1 ] ;
    skos:definition "an attributed description" .

linkml:Example a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "example" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:example ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:description ] ;
    skos:definition "usage example and description" .

linkml:SubsetDefinition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "subset_definition" ;
    rdfs:subClassOf linkml:Element ;
    skos:definition "the name and description of a subset" .

linkml:all_of a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:any_of a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:exactly_one_of a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:none_of a owl:ObjectProperty,
        linkml:SlotDefinition .

linkml:TypeDefinition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "type_definition" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:equals_string_in ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:pattern ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:uri ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:TypeDefinition ;
            owl:onProperty linkml:typeof ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:base ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:equals_number ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:repr ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_string ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:all_of ],
        linkml:Element,
        linkml:TypeExpression ;
    skos:definition "A data type definition." .

linkml:Extension a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "extension" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:tag ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        [ a owl:Restriction ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:value ;
            owl:qualifiedCardinality 1 ] ;
    skos:definition "a tag/value pair used to add non-model information to an entry" .

linkml:AnonymousTypeExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "anonymous_type_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:pattern ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:equals_string_in ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousTypeExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:equals_number ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_string ],
        linkml:TypeExpression .

linkml:Definition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "definition" ;
    rdfs:seeAlso "https://en.wikipedia.org/wiki/Data_element_definition" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty oslc:modifiedBy ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:mixin ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Definition ;
            owl:onProperty linkml:apply_to ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty bibo:status ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Definition ;
            owl:onProperty linkml:is_a ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:abstract ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty linkml:values_from ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Datetime ;
            owl:onProperty pav:createdOn ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty pav:createdBy ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Datetime ;
            owl:onProperty pav:lastUpdatedOn ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:string_serialization ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Definition ;
            owl:onProperty linkml:mixins ],
        linkml:Element ;
    skos:definition "base class for definitions" .

linkml:AnonymousSlotExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "anonymous_slot_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:equals_string_in ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:minimum_cardinality ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:maximum_cardinality ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_string ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:minimum_value ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Element ;
            owl:onProperty linkml:range ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:maximum_value ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:required ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_expression ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:pattern ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:all_members ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousClassExpression ;
            owl:onProperty linkml:range_expression ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:recommended ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:has_member ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:equals_number ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:exactly_one_of ],
        linkml:AnonymousExpression,
        linkml:SlotExpression .

linkml:SchemaDefinition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "schema_definition" ;
    rdfs:seeAlso "https://en.wikipedia.org/wiki/Data_dictionary" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Datetime ;
            owl:onProperty linkml:generation_date ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:EnumDefinition ;
            owl:onProperty linkml:enums ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty pav:version ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:slots ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:metamodel_version ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:ClassDefinition ;
            owl:onProperty linkml:classes ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:TypeDefinition ;
            owl:onProperty linkml:default_range ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty linkml:imports ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:source_file ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Datetime ;
            owl:onProperty linkml:source_file_date ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Prefix ;
            owl:onProperty linkml:prefixes ],
        [ a owl:Restriction ;
            owl:onClass linkml:Uri ;
            owl:onProperty linkml:id ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:default_curi_maps ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:source_file_size ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Ncname ;
            owl:onProperty linkml:emit_prefixes ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty linkml:subsets ],
        [ a owl:Restriction ;
            owl:onClass linkml:Ncname ;
            owl:onProperty rdfs:label ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:TypeDefinition ;
            owl:onProperty linkml:types ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:default_prefix ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:license ],
        linkml:Element ;
    skos:altLabel "data dictionary" ;
    skos:definition "a collection of subset, type, slot and class definitions" .

linkml:AnonymousClassExpression a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "anonymous_class_expression" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Definition ;
            owl:onProperty linkml:is_a ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:slot_conditions ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:any_of ],
        linkml:AnonymousExpression,
        linkml:ClassExpression .

linkml:Element a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "element" ;
    rdfs:seeAlso "https://en.wikipedia.org/wiki/Data_element" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:note ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Ncname ;
            owl:onProperty linkml:id_prefixes ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty skos:narrowMatch ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:imported_from ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty skos:mappingRelation ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Extension ;
            owl:onProperty linkml:extensions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:definition ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:LocalName ;
            owl:onProperty linkml:local_names ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_possible_replacement ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:altLabel ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AltDescription ;
            owl:onProperty linkml:alt_descriptions ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:deprecated ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:title ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty rdfs:seeAlso ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:todos ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty skos:relatedMatch ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:definition_uri ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SubsetDefinition ;
            owl:onProperty OIO:inSubset ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty dcterms:conformsTo ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty skos:broadMatch ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uri ;
            owl:onProperty skos:inScheme ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:deprecated_element_has_exact_replacement ],
        [ a owl:Restriction ;
            owl:onClass linkml:String ;
            owl:onProperty rdfs:label ;
            owl:qualifiedCardinality 1 ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty skos:closeMatch ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Example ;
            owl:onProperty linkml:examples ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Annotation ;
            owl:onProperty linkml:annotations ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty skos:editorialNote ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:Uriorcurie ;
            owl:onProperty skos:exactMatch ],
        linkml:Annotatable,
        linkml:CommonMetadata,
        linkml:Extensible ;
    skos:definition "a named element in the model" .

linkml:ClassDefinition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "class_definition" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:tree_root ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:ClassDefinition ;
            owl:onProperty linkml:mixins ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:attributes ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty rdfs:subClassOf ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:slot_conditions ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:UniqueKey ;
            owl:onProperty linkml:unique_keys ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:slot_usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:ClassDefinition ;
            owl:onProperty linkml:apply_to ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:class_uri ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:ClassDefinition ;
            owl:onProperty linkml:is_a ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:ClassDefinition ;
            owl:onProperty linkml:union_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:ClassRule ;
            owl:onProperty sh:rule ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:defining_slots ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:slots ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:classification_rules ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousClassExpression ;
            owl:onProperty linkml:all_of ],
        linkml:ClassExpression,
        linkml:Definition ;
    skos:altLabel "message",
        "observation",
        "record",
        "table",
        "template" ;
    skos:closeMatch owl:Class ;
    skos:definition "the definition of a class or interface" .

linkml:SlotDefinition a owl:Class,
        linkml:ClassDefinition ;
    rdfs:label "slot_definition" ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:identifier ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:SlotDefinition ;
            owl:onProperty linkml:is_a ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:exactly_one_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:minimum_cardinality ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:recommended ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:is_class_field ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:apply_to ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Definition ;
            owl:onProperty linkml:owner ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:readonly ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:ClassDefinition ;
            owl:onProperty linkml:domain_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:inlined ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:all_members ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:prefLabel ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:is_usage_slot ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:symmetric ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:any_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:equals_number ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:key ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:minimum_value ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:usage_slot_name ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:SlotDefinition ;
            owl:onProperty rdfs:subPropertyOf ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:all_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:required ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:String ;
            owl:onProperty linkml:equals_string_in ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty skos:altLabel ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:designates_type ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:SlotDefinition ;
            owl:onProperty linkml:mixins ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:ifabsent ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:has_member ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_expression ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Uriorcurie ;
            owl:onProperty linkml:slot_uri ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:inlined_as_list ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:maximum_cardinality ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:role ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:AnonymousClassExpression ;
            owl:onProperty linkml:range_expression ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:SlotDefinition ;
            owl:onProperty owl:inverseOf ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Integer ;
            owl:onProperty linkml:maximum_value ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Element ;
            owl:onProperty linkml:range ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:ClassDefinition ;
            owl:onProperty linkml:domain ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:pattern ],
        [ a owl:Restriction ;
            owl:allValuesFrom linkml:AnonymousSlotExpression ;
            owl:onProperty linkml:none_of ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:String ;
            owl:onProperty linkml:equals_string ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:inherited ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality 1 ;
            owl:onClass linkml:Boolean ;
            owl:onProperty linkml:multivalued ],
        linkml:Definition,
        linkml:SlotExpression ;
    skos:altLabel "attribute",
        "column",
        "field",
        "property",
        "slot",
        "variable" ;
    skos:closeMatch rdf:Property ;
    skos:definition "the definition of a property or a slot" .



