diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6bb5a9843..8df34a772 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,14 +1,31 @@ default_language_version: python: python3 +# Note: the `exclude` patterns below cover `make gen-project` outputs written +# into linkml_model/ which we do not control. Artefacts copied verbatim from the +# LinkML generators, which emit trailing whitespace and inconsistent final +# newlines (e.g. the bare "// " comment line in protobuf/meta.proto). Native +# sources stay covered: model/schema/, model/docs/, linkml_files.py, etc. +# Note: Keep the two exclude patterns in sync. + repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: - id: end-of-file-fixer + exclude: | + (?x)^linkml_model/( + (excel|graphql|jsonld|jsonschema|owl|prefixmap|protobuf|rdf|shacl|shex|sqlddl|sqlschema)/ + |(annotations|array|datasets|extensions|mappings|meta|types|units|validation)\.py$ + ) - id: check-yaml - id: check-toml - id: trailing-whitespace + exclude: | + (?x)^linkml_model/( + (excel|graphql|jsonld|jsonschema|owl|prefixmap|protobuf|rdf|shacl|shex|sqlddl|sqlschema)/ + |(annotations|array|datasets|extensions|mappings|meta|types|units|validation)\.py$ + ) - repo: https://github.com/codespell-project/codespell rev: v2.4.1 diff --git a/linkml_model/annotations.py b/linkml_model/annotations.py index 9a6dd3ab5..1b6452754 100644 --- a/linkml_model/annotations.py +++ b/linkml_model/annotations.py @@ -1,5 +1,5 @@ # Auto generated from annotations.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:09 +# Generation date: 2026-07-27T16:30:13 # Schema: annotations # # id: https://w3id.org/linkml/annotations @@ -55,7 +55,7 @@ from .types import Uriorcurie from linkml_runtime.utils.metamodelcore import URIorCURIE -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = "2.0.0" # Namespaces @@ -126,3 +126,4 @@ class slots: slots.annotations = Slot(uri=LINKML.annotations, name="annotations", curie=LINKML.curie('annotations'), model_uri=LINKML.annotations, domain=None, range=Optional[Union[dict[Union[str, AnnotationTag], Union[dict, "Annotation"]], list[Union[dict, "Annotation"]]]]) + diff --git a/linkml_model/array.py b/linkml_model/array.py index 7d0baf898..2e2cfec63 100644 --- a/linkml_model/array.py +++ b/linkml_model/array.py @@ -1,5 +1,5 @@ # Auto generated from array.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:10 +# Generation date: 2026-07-27T16:30:14 # Schema: arrays # # id: https://w3id.org/linkml/lib/arrays @@ -55,7 +55,7 @@ from .types import Integer, String -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = None # Namespaces @@ -282,3 +282,4 @@ class slots: slots.RowOrderedArray_array_linearization_order = Slot(uri=LINKML.array_linearization_order, name="RowOrderedArray_array_linearization_order", curie=LINKML.curie('array_linearization_order'), model_uri=LINKML.RowOrderedArray_array_linearization_order, domain=None, range=Optional[Union[str, "ArrayLinearizationOrderOptions"]]) + diff --git a/linkml_model/datasets.py b/linkml_model/datasets.py index 2e1519046..ec05db18e 100644 --- a/linkml_model/datasets.py +++ b/linkml_model/datasets.py @@ -1,5 +1,5 @@ # Auto generated from datasets.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:10 +# Generation date: 2026-07-27T16:30:15 # Schema: datasets # # id: https://w3id.org/linkml/datasets @@ -54,7 +54,7 @@ from .types import Datetime, Integer, String, Uri, Uriorcurie from linkml_runtime.utils.metamodelcore import URI, URIorCURIE, XSDDateTime -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = None # Namespaces @@ -570,3 +570,4 @@ class slots: slots.formatDialect__quote_char = Slot(uri=DATASETS.quote_char, name="formatDialect__quote_char", curie=DATASETS.curie('quote_char'), model_uri=DATASETS.formatDialect__quote_char, domain=None, range=Optional[str]) + diff --git a/linkml_model/excel/meta.xlsx b/linkml_model/excel/meta.xlsx index ba15ecefe..2e5577403 100644 Binary files a/linkml_model/excel/meta.xlsx and b/linkml_model/excel/meta.xlsx differ diff --git a/linkml_model/extensions.py b/linkml_model/extensions.py index 4b40c5170..c4f494630 100644 --- a/linkml_model/extensions.py +++ b/linkml_model/extensions.py @@ -1,5 +1,5 @@ # Auto generated from extensions.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:11 +# Generation date: 2026-07-27T16:30:16 # Schema: extensions # # id: https://w3id.org/linkml/extensions @@ -54,7 +54,7 @@ from .types import Uriorcurie from linkml_runtime.utils.metamodelcore import URIorCURIE -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = "2.0.0" # Namespaces @@ -133,3 +133,4 @@ class slots: slots.extension_value = Slot(uri=LINKML.value, name="extension_value", curie=LINKML.curie('value'), model_uri=LINKML.extension_value, domain=Extension, range=Union[dict, AnyValue]) + diff --git a/linkml_model/graphql/meta.graphql b/linkml_model/graphql/meta.graphql index 23a689b7e..9b0e73e53 100644 --- a/linkml_model/graphql/meta.graphql +++ b/linkml_model/graphql/meta.graphql @@ -112,6 +112,7 @@ type AnonymousEnumExpression implements EnumExpression codeSetVersion: String pvFormula: PvFormulaOptions permissibleValues: [PermissibleValue] + isOpen: Boolean include: [AnonymousEnumExpression] minus: [AnonymousEnumExpression] inherits: [EnumDefinition] @@ -708,6 +709,7 @@ type EnumDefinition implements EnumExpression codeSetVersion: String pvFormula: PvFormulaOptions permissibleValues: [PermissibleValue] + isOpen: Boolean include: [AnonymousEnumExpression] minus: [AnonymousEnumExpression] inherits: [EnumDefinition] @@ -723,6 +725,7 @@ type EnumExpression codeSetVersion: String pvFormula: PvFormulaOptions permissibleValues: [PermissibleValue] + isOpen: Boolean include: [AnonymousEnumExpression] minus: [AnonymousEnumExpression] inherits: [EnumDefinition] diff --git a/linkml_model/jsonld/meta.context.jsonld b/linkml_model/jsonld/meta.context.jsonld index 48d257778..448d44a9e 100644 --- a/linkml_model/jsonld/meta.context.jsonld +++ b/linkml_model/jsonld/meta.context.jsonld @@ -457,6 +457,10 @@ "@type": "xsd:boolean", "@id": "is_grouping_slot" }, + "is_open": { + "@type": "xsd:boolean", + "@id": "is_open" + }, "is_usage_slot": { "@type": "xsd:boolean", "@id": "is_usage_slot" diff --git a/linkml_model/jsonld/meta.jsonld b/linkml_model/jsonld/meta.jsonld index b53ec4aca..bee7a53e9 100644 --- a/linkml_model/jsonld/meta.jsonld +++ b/linkml_model/jsonld/meta.jsonld @@ -1625,6 +1625,33 @@ "inlined": true, "@type": "SlotDefinition" }, + { + "name": "is_open", + "definition_uri": "https://w3id.org/linkml/is_open", + "description": "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values.", + "comments": [ + "An open enumeration is analogous to the `allow-other=\"yes\"` construct in the OSCAL Metamodel.", + "When an enum is open, the permissible value set is not exhaustive - they document the advised, recommended, or expected values but allow values outside the permissible set." + ], + "in_subset": [ + "SpecificationSubset" + ], + "from_schema": "https://w3id.org/linkml/meta", + "see_also": [ + "https://pages.nist.gov/metaschema/specification/syntax/constraints/#allow-other", + "https://github.com/linkml/linkml/issues/127", + "https://github.com/linkml/linkml/pull/3712" + ], + "status": "testing", + "domain": "EnumExpression", + "slot_uri": "https://w3id.org/linkml/is_open", + "owner": "EnumExpression", + "domain_of": [ + "EnumExpression" + ], + "range": "boolean", + "@type": "SlotDefinition" + }, { "name": "enum_uri", "definition_uri": "https://w3id.org/linkml/enum_uri", @@ -2955,7 +2982,10 @@ { "name": "unique_keys", "definition_uri": "https://w3id.org/linkml/unique_keys", - "description": "A collection of named unique keys for this class. Unique keys may be singular or compound.", + "description": "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key.", + "comments": [ + "Not to be confused with a \"singular unique key\", which is defined by means of the `key` slot, or with an \"identifier\", which is defined by means of the \"identifier\" slot. Compound keys, singular unique keys, and identifiers all create a unicity constraint, but singular unique keys and identifiers have additional effects that compound keys do not have.\n" + ], "in_subset": [ "SpecificationSubset", "BasicSubset", @@ -2963,7 +2993,9 @@ ], "from_schema": "https://w3id.org/linkml/meta", "see_also": [ - "https://linkml.io/linkml/schemas/constraints.html#unique-key" + "https://linkml.io/linkml/schemas/constraints.html#unique-keys", + "linkml:key", + "linkml:identifier" ], "exact_mappings": [ "http://www.w3.org/2002/07/owl#hasKey" @@ -3941,12 +3973,12 @@ { "name": "key", "definition_uri": "https://w3id.org/linkml/key", - "description": "True means that the key slot(s) uniquely identify the elements within a single container", + "description": "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container.", "comments": [ - "key is inherited", - "a given domain can have at most one key slot (restriction to be removed in the future)", - "identifiers and keys are mutually exclusive. A given domain cannot have both", - "a key slot is automatically required. Keys cannot be optional" + "The key slot is inherited.", + "A domain can have at most one key slot OR one identifier slot. However a domain can have both a key slot and any number of compound keys.", + "A key slot is automatically required. Singular unique keys cannot be optional.", + "The presence of a key slot makes a class eligible for inlining as a dictionary." ], "in_subset": [ "SpecificationSubset", @@ -3955,7 +3987,10 @@ ], "from_schema": "https://w3id.org/linkml/meta", "see_also": [ - "linkml:unique_keys" + "https://linkml.io/linkml/schemas/constraints.html#singular-unique-keys", + "https://linkml.io/linkml/schemas/inlining.html", + "linkml:unique_keys", + "linkml:identifier" ], "domain": "SlotDefinition", "slot_uri": "https://w3id.org/linkml/key", @@ -3970,12 +4005,13 @@ { "name": "identifier", "definition_uri": "https://w3id.org/linkml/identifier", - "description": "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container", + "description": "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document.", "comments": [ - "identifier is inherited", - "a key slot is automatically required. Identifiers cannot be optional", - "a given domain can have at most one identifier", - "identifiers and keys are mutually exclusive. A given domain cannot have both" + "The identifier slot is inherited.", + "A domain can have at most one identifier slot OR a key slot. However a domain can have both an identifier slot and any number of compound keys.", + "An identifier slot is automatically required. Identifiers cannot be optional.", + "The presence of an identifier slot makes a class eligible for inlining as a dictionary.", + "The presence of an identifier slot makes a class eligible for being referenced rather than inlined." ], "in_subset": [ "SpecificationSubset", @@ -3986,7 +4022,10 @@ "from_schema": "https://w3id.org/linkml/meta", "see_also": [ "https://en.wikipedia.org/wiki/Identifier", - "linkml:unique_keys" + "https://linkml.io/linkml/schemas/constraints.html#unique-keys", + "https://linkml.io/linkml/schemas/inlining.html", + "linkml:unique_keys", + "linkml:key" ], "aliases": [ "primary key", @@ -5504,6 +5543,13 @@ { "name": "extension_value", "definition_uri": "https://w3id.org/linkml/extension_value", + "annotations": [ + { + "tag": "simple_dict_value", + "value": true, + "@type": "Annotation" + } + ], "description": "the actual annotation", "from_schema": "https://w3id.org/linkml/extensions", "imported_from": "linkml:extensions", @@ -5649,7 +5695,7 @@ { "name": "abbreviation", "definition_uri": "https://w3id.org/linkml/abbreviation", - "description": "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)", + "description": "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)", "from_schema": "https://w3id.org/linkml/units", "imported_from": "linkml:units", "mappings": [ @@ -7243,6 +7289,7 @@ "code_set_version", "pv_formula", "permissible_values", + "is_open", "include", "minus", "inherits", @@ -7268,6 +7315,7 @@ "code_set_version", "pv_formula", "permissible_values", + "is_open", "include", "minus", "inherits", @@ -7373,6 +7421,7 @@ "code_set_version", "pv_formula", "permissible_values", + "is_open", "include", "minus", "inherits", @@ -8777,7 +8826,7 @@ { "name": "UnitOfMeasure", "definition_uri": "https://w3id.org/linkml/UnitOfMeasure", - "description": "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension).", + "description": "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension).", "from_schema": "https://w3id.org/linkml/units", "imported_from": "linkml:units", "mappings": [ @@ -8842,9 +8891,9 @@ ], "metamodel_version": "1.11.0", "source_file": "meta.yaml", - "source_file_date": "2026-05-05T16:16:44", - "source_file_size": 99888, - "generation_date": "2026-05-05T18:49:57", + "source_file_date": "2026-07-27T16:17:57", + "source_file_size": 102848, + "generation_date": "2026-07-27T16:31:11", "@type": "SchemaDefinition", "@context": [ "staging/jsonld/meta.context.jsonld", diff --git a/linkml_model/jsonschema/meta.schema.json b/linkml_model/jsonschema/meta.schema.json index 7eedb05f3..571e765e2 100644 --- a/linkml_model/jsonschema/meta.schema.json +++ b/linkml_model/jsonschema/meta.schema.json @@ -646,6 +646,13 @@ "null" ] }, + "is_open": { + "description": "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values.", + "type": [ + "boolean", + "null" + ] + }, "matches": { "anyOf": [ { @@ -2859,7 +2866,7 @@ } ] }, - "description": "A collection of named unique keys for this class. Unique keys may be singular or compound.", + "description": "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key.", "type": [ "object", "null" @@ -3565,7 +3572,7 @@ } ] }, - "description": "A collection of named unique keys for this class. Unique keys may be singular or compound.", + "description": "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key.", "type": [ "object", "null" @@ -6322,6 +6329,13 @@ "null" ] }, + "is_open": { + "description": "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values.", + "type": [ + "boolean", + "null" + ] + }, "keywords": { "description": "Keywords or tags used to describe the element", "items": { @@ -6907,6 +6921,13 @@ "null" ] }, + "is_open": { + "description": "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values.", + "type": [ + "boolean", + "null" + ] + }, "keywords": { "description": "Keywords or tags used to describe the element", "items": { @@ -7198,6 +7219,13 @@ "null" ] }, + "is_open": { + "description": "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values.", + "type": [ + "boolean", + "null" + ] + }, "matches": { "anyOf": [ { @@ -10693,7 +10721,7 @@ ] }, "identifier": { - "description": "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container", + "description": "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document.", "type": [ "boolean", "null" @@ -10821,7 +10849,7 @@ ] }, "key": { - "description": "True means that the key slot(s) uniquely identify the elements within a single container", + "description": "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container.", "type": [ "boolean", "null" @@ -11714,7 +11742,7 @@ ] }, "identifier": { - "description": "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container", + "description": "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document.", "type": [ "boolean", "null" @@ -11842,7 +11870,7 @@ ] }, "key": { - "description": "True means that the key slot(s) uniquely identify the elements within a single container", + "description": "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container.", "type": [ "boolean", "null" @@ -16503,10 +16531,44 @@ }, "UnitOfMeasure": { "additionalProperties": false, - "description": "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension).", + "anyOf": [ + { + "properties": { + "ucum_code": {} + }, + "required": [ + "ucum_code" + ] + }, + { + "properties": { + "iec61360code": {} + }, + "required": [ + "iec61360code" + ] + }, + { + "properties": { + "symbol": {} + }, + "required": [ + "symbol" + ] + }, + { + "properties": { + "exact_mappings": {} + }, + "required": [ + "exact_mappings" + ] + } + ], + "description": "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension).", "properties": { "abbreviation": { - "description": "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)", + "description": "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)", "type": [ "string", "null" diff --git a/linkml_model/mappings.py b/linkml_model/mappings.py index 0de816cc7..530b7dc22 100644 --- a/linkml_model/mappings.py +++ b/linkml_model/mappings.py @@ -1,5 +1,5 @@ # Auto generated from mappings.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:12 +# Generation date: 2026-07-27T16:30:18 # Schema: mappings # # id: https://w3id.org/linkml/mappings @@ -54,7 +54,7 @@ from .types import Uriorcurie from linkml_runtime.utils.metamodelcore import URIorCURIE -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = "2.0.0" # Namespaces @@ -105,3 +105,4 @@ class slots: slots.deprecated_element_has_possible_replacement = Slot(uri=LINKML.deprecated_element_has_possible_replacement, name="deprecated element has possible replacement", curie=LINKML.curie('deprecated_element_has_possible_replacement'), model_uri=LINKML.deprecated_element_has_possible_replacement, domain=None, range=Optional[Union[str, URIorCURIE]], mappings = [OIO["consider"]]) + diff --git a/linkml_model/meta.py b/linkml_model/meta.py index 36e41a7cc..22bf6fc36 100644 --- a/linkml_model/meta.py +++ b/linkml_model/meta.py @@ -1,5 +1,5 @@ # Auto generated from meta.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:13 +# Generation date: 2026-07-27T16:30:19 # Schema: meta # # id: https://w3id.org/linkml/meta @@ -906,6 +906,7 @@ class AnonymousEnumExpression(YAMLRoot): code_set_version: Optional[str] = None pv_formula: Optional[Union[str, "PvFormulaOptions"]] = None permissible_values: Optional[Union[dict[Union[str, PermissibleValueText], Union[dict, "PermissibleValue"]], list[Union[dict, "PermissibleValue"]]]] = empty_dict() + is_open: Optional[Union[bool, Bool]] = None include: Optional[Union[Union[dict, "AnonymousEnumExpression"], list[Union[dict, "AnonymousEnumExpression"]]]] = empty_list() minus: Optional[Union[Union[dict, "AnonymousEnumExpression"], list[Union[dict, "AnonymousEnumExpression"]]]] = empty_list() inherits: Optional[Union[Union[str, EnumDefinitionName], list[Union[str, EnumDefinitionName]]]] = empty_list() @@ -928,6 +929,9 @@ def __post_init__(self, *_: str, **kwargs: Any): self._normalize_inlined_as_dict(slot_name="permissible_values", slot_type=PermissibleValue, key_name="text", keyed=True) + if self.is_open is not None and not isinstance(self.is_open, Bool): + self.is_open = Bool(self.is_open) + if not isinstance(self.include, list): self.include = [self.include] if self.include is not None else [] self.include = [v if isinstance(v, AnonymousEnumExpression) else AnonymousEnumExpression(**as_dict(v)) for v in self.include] @@ -972,6 +976,7 @@ class EnumDefinition(Definition): code_set_version: Optional[str] = None pv_formula: Optional[Union[str, "PvFormulaOptions"]] = None permissible_values: Optional[Union[dict[Union[str, PermissibleValueText], Union[dict, "PermissibleValue"]], list[Union[dict, "PermissibleValue"]]]] = empty_dict() + is_open: Optional[Union[bool, Bool]] = None include: Optional[Union[Union[dict, AnonymousEnumExpression], list[Union[dict, AnonymousEnumExpression]]]] = empty_list() minus: Optional[Union[Union[dict, AnonymousEnumExpression], list[Union[dict, AnonymousEnumExpression]]]] = empty_list() inherits: Optional[Union[Union[str, EnumDefinitionName], list[Union[str, EnumDefinitionName]]]] = empty_list() @@ -1002,6 +1007,9 @@ def __post_init__(self, *_: str, **kwargs: Any): self._normalize_inlined_as_dict(slot_name="permissible_values", slot_type=PermissibleValue, key_name="text", keyed=True) + if self.is_open is not None and not isinstance(self.is_open, Bool): + self.is_open = Bool(self.is_open) + if not isinstance(self.include, list): self.include = [self.include] if self.include is not None else [] self.include = [v if isinstance(v, AnonymousEnumExpression) else AnonymousEnumExpression(**as_dict(v)) for v in self.include] @@ -1564,6 +1572,7 @@ class EnumExpression(Expression): code_set_version: Optional[str] = None pv_formula: Optional[Union[str, "PvFormulaOptions"]] = None permissible_values: Optional[Union[dict[Union[str, PermissibleValueText], Union[dict, "PermissibleValue"]], list[Union[dict, "PermissibleValue"]]]] = empty_dict() + is_open: Optional[Union[bool, Bool]] = None include: Optional[Union[Union[dict, AnonymousEnumExpression], list[Union[dict, AnonymousEnumExpression]]]] = empty_list() minus: Optional[Union[Union[dict, AnonymousEnumExpression], list[Union[dict, AnonymousEnumExpression]]]] = empty_list() inherits: Optional[Union[Union[str, EnumDefinitionName], list[Union[str, EnumDefinitionName]]]] = empty_list() @@ -1586,6 +1595,9 @@ def __post_init__(self, *_: str, **kwargs: Any): self._normalize_inlined_as_dict(slot_name="permissible_values", slot_type=PermissibleValue, key_name="text", keyed=True) + if self.is_open is not None and not isinstance(self.is_open, Bool): + self.is_open = Bool(self.is_open) + if not isinstance(self.include, list): self.include = [self.include] if self.include is not None else [] self.include = [v if isinstance(v, AnonymousEnumExpression) else AnonymousEnumExpression(**as_dict(v)) for v in self.include] @@ -4706,6 +4718,9 @@ class slots: slots.permissible_values = Slot(uri=LINKML.permissible_values, name="permissible_values", curie=LINKML.curie('permissible_values'), model_uri=LINKML.permissible_values, domain=EnumExpression, range=Optional[Union[dict[Union[str, PermissibleValueText], Union[dict, "PermissibleValue"]], list[Union[dict, "PermissibleValue"]]]]) +slots.is_open = Slot(uri=LINKML.is_open, name="is_open", curie=LINKML.curie('is_open'), + model_uri=LINKML.is_open, domain=EnumExpression, range=Optional[Union[bool, Bool]]) + slots.enum_uri = Slot(uri=LINKML.enum_uri, name="enum_uri", curie=LINKML.curie('enum_uri'), model_uri=LINKML.enum_uri, domain=EnumDefinition, range=Optional[Union[str, URIorCURIE]]) @@ -5323,3 +5338,4 @@ class slots: slots.extra_slots_expression_range_expression = Slot(uri=LINKML.range_expression, name="extra_slots_expression_range_expression", curie=LINKML.curie('range_expression'), model_uri=LINKML.extra_slots_expression_range_expression, domain=ExtraSlotsExpression, range=Optional[Union[dict, AnonymousSlotExpression]]) + diff --git a/linkml_model/model/schema/meta.yaml b/linkml_model/model/schema/meta.yaml index 4b1b65140..8377566e1 100644 --- a/linkml_model/model/schema/meta.yaml +++ b/linkml_model/model/schema/meta.yaml @@ -650,6 +650,27 @@ slots: exact_mappings: - cdisc:PermissibleValue + is_open: + domain: enum_expression + range: boolean + description: >- + Whether the enumeration is open, meaning that values outside of the set of + permissible values are allowed. If true, the enumeration is open and data values + that are not in the set of permissible values are permitted (though they SHOULD be + drawn from the permissible values if available). If false (runtime default), the + enumeration is closed and data values MUST be drawn from the set of permissible values. + comments: + - An open enumeration is analogous to the `allow-other="yes"` construct in the OSCAL Metamodel. + - When an enum is open, the permissible value set is not exhaustive - they document the + advised, recommended, or expected values but allow values outside the permissible set. + see_also: + - https://pages.nist.gov/metaschema/specification/syntax/constraints/#allow-other + - https://github.com/linkml/linkml/issues/127 + - https://github.com/linkml/linkml/pull/3712 + in_subset: + - SpecificationSubset + status: testing + enum_uri: aliases: - public ID @@ -2782,6 +2803,7 @@ classes: - code_set_version - pv_formula - permissible_values + - is_open - include - minus - inherits diff --git a/linkml_model/owl/meta.owl.ttl b/linkml_model/owl/meta.owl.ttl index 5c86b1291..5fad1a509 100644 --- a/linkml_model/owl/meta.owl.ttl +++ b/linkml_model/owl/meta.owl.ttl @@ -156,37 +156,37 @@ linkml:DimensionExpression a owl:Class, bibo:status ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_cardinality ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exact_cardinality ], + owl:onProperty linkml:alias ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:alias ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:minimum_cardinality ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:alias ], + owl:minCardinality 0 ; + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:maxCardinality 1 ; owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:alias ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:minimum_cardinality ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:maximum_cardinality ], @@ -200,22 +200,22 @@ linkml:ExtraSlotsExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "extra_slots_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:allowed ], - [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:allowed ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:range_expression ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:allowed ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:allowed ], linkml:Expression ; skos:definition """An expression that defines how to handle additional data in an instance of class @@ -316,32 +316,32 @@ linkml:TypeMapping a owl:Class, linkml:ClassDefinition ; rdfs:label "type_mapping" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:string_serialization ], + owl:maxCardinality 1 ; + owl:onProperty linkml:framework_key ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:string_serialization ], + owl:onProperty linkml:framework_key ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:framework_key ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:framework_key ], + owl:onProperty linkml:string_serialization ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; owl:allValuesFrom linkml:TypeDefinition ; owl:onProperty linkml:mapped_type ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:mapped_type ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mapped_type ], + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:framework_key ], + owl:onProperty linkml:mapped_type ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -763,10 +763,10 @@ linkml:Annotation a owl:Class, linkml:ClassDefinition ; rdfs:label "annotation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Annotation ; owl:onProperty linkml:annotations ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; + owl:minCardinality 0 ; owl:onProperty linkml:annotations ], linkml:Annotatable, linkml:Extension ; @@ -777,14 +777,20 @@ linkml:ClassExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "class_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_conditions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:none_of ], @@ -793,31 +799,25 @@ linkml:ClassExpression a owl:Class, owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slot_conditions ], + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:slot_conditions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_conditions ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:none_of ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exactly_one_of ] ; + owl:onProperty linkml:any_of ] ; skos:definition "A boolean expression that can be used to dynamically determine membership of a class" ; skos:inScheme linkml:meta . @@ -825,68 +825,68 @@ linkml:ClassRule a owl:Class, linkml:ClassDefinition ; rdfs:label "class_rule" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:bidirectional ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:open_world ], + owl:onProperty linkml:bidirectional ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:rank ], + owl:maxCardinality 1 ; + owl:onProperty linkml:deactivated ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:deactivated ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:bidirectional ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:postconditions ], + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:preconditions ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:elseconditions ], + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:postconditions ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:preconditions ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:elseconditions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:rank ], + owl:onProperty linkml:postconditions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:bidirectional ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:open_world ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:rank ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:maxCardinality 1 ; owl:onProperty linkml:elseconditions ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:open_world ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:minCardinality 0 ; owl:onProperty linkml:postconditions ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:postconditions ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:bidirectional ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:rank ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:open_world ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:deactivated ], + owl:onProperty linkml:preconditions ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:deactivated ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:elseconditions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:elseconditions ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:preconditions ], + owl:onProperty linkml:open_world ], linkml:Annotatable, linkml:ClassLevelRule, linkml:CommonMetadata, @@ -906,17 +906,17 @@ linkml:MatchQuery a owl:Class, [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:source_ontology ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source_ontology ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:identifier_pattern ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:identifier_pattern ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:identifier_pattern ] ; skos:definition "A query that is used on an enum expression to dynamically obtain a set of permissible values via a query that matches on properties of the external concepts." ; skos:inScheme linkml:meta . @@ -925,119 +925,119 @@ linkml:TypeExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "type_expression" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], + [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pattern ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:structured_pattern ], + owl:minCardinality 0 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:pattern ], + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:implicit_prefix ], + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:minimum_value ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:maximum_value ], + owl:minCardinality 0 ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:implicit_prefix ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_string_in ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:equals_number ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:equals_number ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:maxCardinality 1 ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string ], + owl:allValuesFrom linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:unit ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:implicit_prefix ], + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:all_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:equals_string ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:structured_pattern ], + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:minimum_value ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:UnitOfMeasure ; + owl:maxCardinality 1 ; owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_string ], + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:minimum_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], linkml:Expression ; skos:definition "An abstract class grouping named types and anonymous type expressions" ; skos:inScheme linkml:meta . @@ -1045,7 +1045,7 @@ linkml:TypeExpression a owl:Class, linkml:abbreviation a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "abbreviation" ; - skos:definition "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + skos:definition "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; skos:inScheme linkml:units . linkml:abstract a owl:ObjectProperty, @@ -1360,7 +1360,8 @@ linkml:extension_value a owl:ObjectProperty, rdfs:range linkml:AnyValue ; skos:definition "the actual annotation" ; skos:inScheme linkml:extensions ; - skos:prefLabel "value" . + skos:prefLabel "value" ; + linkml:simple_dict_value true . linkml:extra_slots a owl:ObjectProperty, linkml:SlotDefinition ; @@ -1444,25 +1445,6 @@ linkml:id_prefixes_are_closed a owl:ObjectProperty, skos:definition "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; skos:inScheme linkml:meta . -linkml:identifier a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "identifier" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:seeAlso , - linkml:unique_keys ; - skos:altLabel "ID", - "UID", - "code", - "primary key" ; - skos:definition "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; - skos:inScheme linkml:meta ; - 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" ; - sh:order 5 . - linkml:identifier_pattern a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "identifier_pattern" ; @@ -1615,6 +1597,20 @@ linkml:is_direct a owl:ObjectProperty, skos:definition "True if the reachability query should only include directly related nodes, if False then include also transitively connected" ; skos:inScheme linkml:meta . +linkml:is_open a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "is_open" ; + bibo:status ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso , + , + ; + skos:definition "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values." ; + skos:inScheme linkml:meta ; + skos:note "An open enumeration is analogous to the `allow-other=\"yes\"` construct in the OSCAL Metamodel.", + "When an enum is open, the permissible value set is not exhaustive - they document the advised, recommended, or expected values but allow values outside the permissible set." . + linkml:is_usage_slot a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "is_usage_slot" ; @@ -1623,19 +1619,6 @@ linkml:is_usage_slot a owl:ObjectProperty, skos:definition "True means that this slot was defined in a slot_usage situation" ; skos:inScheme linkml:meta . -linkml:key a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "key" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:seeAlso linkml:unique_keys ; - skos:definition "True means that the key slot(s) uniquely identify the elements within a single container" ; - skos:inScheme linkml:meta ; - 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" . - linkml:last_updated_on a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "last_updated_on" ; @@ -2244,22 +2227,22 @@ linkml:AltDescription a owl:Class, linkml:ClassDefinition ; rdfs:label "alt_description" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:alt_description_source ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:alt_description_source ], + owl:maxCardinality 1 ; + owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:alt_description_source ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 1 ; owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:alt_description_text ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alt_description_source ], [ a owl:Restriction ; owl:minCardinality 1 ; + owl:onProperty linkml:alt_description_source ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:alt_description_text ] ; skos:altLabel "structured description" ; skos:definition "an attributed description" ; @@ -2283,41 +2266,41 @@ linkml:EnumBinding a owl:Class, linkml:ClassDefinition ; rdfs:label "enum_binding" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:obligation_level ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ObligationLevelEnum ; + owl:minCardinality 0 ; owl:onProperty linkml:obligation_level ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:binds_value_of ], + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:range ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:PvFormulaOptions ; owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pv_formula ], + owl:onProperty linkml:range ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:range ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ObligationLevelEnum ; + owl:onProperty linkml:obligation_level ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:obligation_level ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:binds_value_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:range ], + owl:minCardinality 0 ; + owl:onProperty linkml:binds_value_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:range ], + owl:onProperty linkml:binds_value_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:obligation_level ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PvFormulaOptions ; owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:binds_value_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:pv_formula ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -2329,26 +2312,26 @@ linkml:ImportExpression a owl:Class, rdfs:label "import_expression" ; bibo:status ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:import_map ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:import_from ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:import_as ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Setting ; - owl:onProperty linkml:import_map ], + owl:maxCardinality 1 ; + owl:onProperty linkml:import_as ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:import_from ], + owl:minCardinality 0 ; + owl:onProperty linkml:import_map ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:import_as ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:minCardinality 1 ; owl:onProperty linkml:import_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:import_as ], + owl:allValuesFrom linkml:Setting ; + owl:onProperty linkml:import_map ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:import_from ], @@ -2362,23 +2345,23 @@ linkml:LocalName a owl:Class, linkml:ClassDefinition ; rdfs:label "local_name" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:local_name_source ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:local_name_source ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:local_name_value ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:local_name_source ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:local_name_source ] ; + owl:minCardinality 1 ; + owl:onProperty linkml:local_name_source ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:local_name_value ] ; skos:definition "an attributed label" ; skos:inScheme linkml:meta . @@ -2386,22 +2369,22 @@ linkml:Prefix a owl:Class, linkml:ClassDefinition ; rdfs:label "prefix" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty linkml:prefix_reference ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; + owl:minCardinality 1 ; owl:onProperty linkml:prefix_reference ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; + owl:maxCardinality 1 ; owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Uri ; owl:onProperty linkml:prefix_reference ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:prefix_prefix ] ; skos:definition "prefix URI tuple" ; skos:inScheme linkml:meta ; @@ -2528,28 +2511,35 @@ linkml:unique_keys a owl:ObjectProperty, rdfs:label "unique_keys" ; rdfs:domain linkml:ClassDefinition ; rdfs:range linkml:UniqueKey ; - rdfs:seeAlso ; - skos:definition "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + rdfs:seeAlso , + linkml:identifier, + linkml:key ; + skos:definition "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key." ; skos:exactMatch owl:hasKey ; - skos:inScheme linkml:meta . + skos:inScheme linkml:meta ; + skos:note """Not to be confused with a "singular unique key", which is defined by means of the `key` slot, or with an "identifier", which is defined by means of the "identifier" slot. Compound keys, singular unique keys, and identifiers all create a unicity constraint, but singular unique keys and identifiers have additional effects that compound keys do not have. +""" . linkml:Example a owl:Class, linkml:ClassDefinition ; rdfs:label "example" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:value_description ], + [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:value ], + owl:onProperty linkml:value_description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:value_object ], + owl:maxCardinality 1 ; + owl:onProperty linkml:value ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:value_object ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:value ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:value_object ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty linkml:value ], [ a owl:Restriction ; owl:maxCardinality 1 ; @@ -2557,12 +2547,9 @@ linkml:Example a owl:Class, [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:value_object ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:value_description ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:value_description ] ; + owl:onProperty linkml:value ] ; skos:definition "usage example and description" ; skos:inScheme linkml:meta . @@ -2570,269 +2557,269 @@ linkml:SlotExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "slot_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:minimum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:enum_range ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:multivalued ], + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:allValuesFrom linkml:PatternExpression ; owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_string_in ], + owl:onProperty linkml:unit ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:required ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:enum_range ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:range ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; owl:onProperty linkml:has_member ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:minimum_value ], + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exact_cardinality ], + owl:maxCardinality 1 ; + owl:onProperty linkml:multivalued ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:structured_pattern ], + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:minimum_value ], + owl:onProperty linkml:required ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], + owl:maxCardinality 1 ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumBinding ; - owl:onProperty linkml:bindings ], + owl:allValuesFrom linkml:ArrayExpression ; + owl:onProperty linkml:array ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; + owl:onProperty linkml:implicit_prefix ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:multivalued ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:inlined_as_list ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:allValuesFrom linkml:EnumBinding ; + owl:onProperty linkml:bindings ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:recommended ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:all_members ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:required ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:exact_cardinality ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:multivalued ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:inlined ], + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:range ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:array ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:UnitOfMeasure ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inlined ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:has_member ], + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:all_members ], + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:implicit_prefix ], + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:multivalued ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_value ], + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_cardinality ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:bindings ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_number ], + owl:onProperty linkml:array ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inlined_as_list ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:array ], + owl:allValuesFrom linkml:PresenceEnum ; + owl:onProperty linkml:value_presence ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:inlined ], + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:allValuesFrom linkml:Element ; owl:onProperty linkml:range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:bindings ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:inlined ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:recommended ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:exact_cardinality ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:pattern ], + owl:allValuesFrom linkml:EnumExpression ; + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:recommended ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:minimum_cardinality ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:inlined_as_list ], + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:all_members ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:range ], + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:range_expression ], + owl:onProperty linkml:array ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:enum_range ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:structured_pattern ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:range_expression ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:exactly_one_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ArrayExpression ; - owl:onProperty linkml:array ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:equals_string ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:minimum_cardinality ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inlined ], [ a owl:Restriction ; owl:allValuesFrom linkml:Anything ; owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumExpression ; - owl:onProperty linkml:enum_range ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:required ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:maximum_cardinality ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:required ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pattern ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:value_presence ], + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:implicit_prefix ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:value_presence ], + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_expression ], + owl:onProperty linkml:inlined ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:recommended ], + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:maximum_cardinality ], + owl:minCardinality 0 ; + owl:onProperty linkml:equals_expression ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:has_member ], + owl:onProperty linkml:recommended ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:all_members ], linkml:Expression ; skos:definition "an expression that constrains the range of values a slot can take" ; skos:inScheme linkml:meta . @@ -2841,16 +2828,10 @@ linkml:StructuredAlias a owl:Class, linkml:ClassDefinition ; rdfs:label "structured_alias" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:literal_form ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:alias_contexts ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:categories ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AliasPredicateEnum ; - owl:onProperty linkml:alias_predicate ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; owl:onProperty linkml:alias_contexts ], [ a owl:Restriction ; owl:maxCardinality 1 ; @@ -2858,18 +2839,24 @@ linkml:StructuredAlias a owl:Class, [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:literal_form ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:alias_predicate ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AliasPredicateEnum ; + owl:onProperty linkml:alias_predicate ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:categories ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:literal_form ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:alias_contexts ], + owl:onProperty linkml:categories ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:literal_form ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:alias_predicate ], linkml:Annotatable, linkml:CommonMetadata, linkml:Expression, @@ -2890,28 +2877,28 @@ linkml:UniqueKey a owl:Class, linkml:ClassDefinition ; rdfs:label "unique_key" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:unique_key_name ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:unique_key_slots ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:unique_key_name ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:consider_nulls_inequal ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:consider_nulls_inequal ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:consider_nulls_inequal ], [ a owl:Restriction ; owl:minCardinality 1 ; - owl:onProperty linkml:unique_key_slots ], + owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:consider_nulls_inequal ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; + owl:minCardinality 1 ; owl:onProperty linkml:unique_key_slots ], linkml:Annotatable, linkml:CommonMetadata, @@ -2924,35 +2911,35 @@ linkml:UnitOfMeasure a owl:Class, linkml:ClassDefinition ; rdfs:label "UnitOfMeasure" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:symbol ], + owl:maxCardinality 1 ; + owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exact_mappings ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:iec61360code ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:iec61360code ], + owl:onProperty linkml:symbol ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:ucum_code ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:has_quantity_kind ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:derivation ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:descriptive_name ], + owl:onProperty linkml:iec61360code ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:abbreviation ], + owl:maxCardinality 1 ; + owl:onProperty linkml:symbol ], [ owl:unionOf ( [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:ucum_code ] [ a owl:Restriction ; @@ -2963,45 +2950,45 @@ linkml:UnitOfMeasure a owl:Class, owl:allValuesFrom linkml:String ; owl:onProperty linkml:exact_mappings ] ) ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:iec61360code ], + owl:minCardinality 0 ; + owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:ucum_code ], + owl:onProperty linkml:iec61360code ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:derivation ], + owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:ucum_code ], + owl:minCardinality 0 ; + owl:onProperty linkml:exact_mappings ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:exact_mappings ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:derivation ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:symbol ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:symbol ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:descriptive_name ], + owl:onProperty linkml:symbol ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:ucum_code ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:derivation ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:derivation ] ; - skos:definition "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; + owl:minCardinality 0 ; + owl:onProperty linkml:descriptive_name ] ; + skos:definition "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; skos:exactMatch qudt:Unit ; skos:inScheme linkml:units . @@ -3024,6 +3011,29 @@ linkml:exact_mappings a owl:ObjectProperty, skos:definition "A list of terms from different schemas or terminology systems that have identical meaning." ; skos:inScheme linkml:mappings . +linkml:identifier a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "identifier" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso , + , + , + linkml:key, + linkml:unique_keys ; + skos:altLabel "ID", + "UID", + "code", + "primary key" ; + skos:definition "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document." ; + skos:inScheme linkml:meta ; + skos:note "A domain can have at most one identifier slot OR a key slot. However a domain can have both an identifier slot and any number of compound keys.", + "An identifier slot is automatically required. Identifiers cannot be optional.", + "The identifier slot is inherited.", + "The presence of an identifier slot makes a class eligible for being referenced rather than inlined.", + "The presence of an identifier slot makes a class eligible for inlining as a dictionary." ; + sh:order 5 . + linkml:implements a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "implements" ; @@ -3041,29 +3051,39 @@ linkml:is_grouping_slot a owl:ObjectProperty, skos:definition "true if this slot is a grouping slot" ; skos:inScheme linkml:meta . +linkml:key a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "key" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso , + , + linkml:identifier, + linkml:unique_keys ; + skos:definition "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container." ; + skos:inScheme linkml:meta ; + skos:note "A domain can have at most one key slot OR one identifier slot. However a domain can have both a key slot and any number of compound keys.", + "A key slot is automatically required. Singular unique keys cannot be optional.", + "The key slot is inherited.", + "The presence of a key slot makes a class eligible for inlining as a dictionary." . + linkml:ArrayExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "array_expression" ; bibo:status ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:DimensionExpression ; - owl:onProperty linkml:dimensions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:maxCardinality 1 ; owl:onProperty linkml:minimum_number_dimensions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:minimum_number_dimensions ], + owl:onProperty linkml:maximum_number_dimensions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:maximum_number_dimensions ], + owl:onProperty linkml:minimum_number_dimensions ], [ a owl:Restriction ; owl:allValuesFrom [ owl:intersectionOf ( [ a rdfs:Datatype ; owl:unionOf ( linkml:Integer linkml:Boolean ) ] linkml:Anything ) ] ; owl:onProperty linkml:maximum_number_dimensions ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:dimensions ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:maximum_number_dimensions ], @@ -3077,8 +3097,14 @@ linkml:ArrayExpression a owl:Class, owl:maxCardinality 1 ; owl:onProperty linkml:exact_number_dimensions ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:minimum_number_dimensions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:DimensionExpression ; + owl:onProperty linkml:dimensions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:dimensions ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -3089,11 +3115,8 @@ linkml:Extension a owl:Class, linkml:ClassDefinition ; rdfs:label "extension" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; + owl:minCardinality 0 ; owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnyValue ; owl:onProperty linkml:extension_value ], @@ -3101,17 +3124,20 @@ linkml:Extension a owl:Class, owl:maxCardinality 1 ; owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:extension_value ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; owl:minCardinality 1 ; - owl:onProperty linkml:extension_value ], + owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:extensions ] ; + owl:maxCardinality 1 ; + owl:onProperty linkml:extension_value ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:extension_value ] ; skos:definition "a tag/value pair used to add non-model information to an entry" ; skos:inScheme linkml:extensions . @@ -3119,12 +3145,6 @@ linkml:PatternExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "pattern_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:syntax ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:syntax ], - [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:interpolated ], [ a owl:Restriction ; @@ -3134,14 +3154,20 @@ linkml:PatternExpression a owl:Class, owl:maxCardinality 1 ; owl:onProperty linkml:interpolated ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:partial_match ], + owl:minCardinality 0 ; + owl:onProperty linkml:syntax ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:partial_match ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:partial_match ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:interpolated ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:syntax ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:partial_match ], @@ -3155,68 +3181,68 @@ linkml:PermissibleValue a owl:Class, linkml:ClassDefinition ; rdfs:label "permissible_value" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:description ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:UnitOfMeasure ; owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; + owl:minCardinality 0 ; owl:onProperty linkml:is_a ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:implements ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:meaning ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:description ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:implements ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:description ], + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:is_a ], + owl:minCardinality 1 ; + owl:onProperty linkml:text ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:description ], + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:instantiates ], [ a owl:Restriction ; - owl:allValuesFrom linkml:UnitOfMeasure ; + owl:maxCardinality 1 ; owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:meaning ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:description ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:implements ], [ a owl:Restriction ; owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:text ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:instantiates ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:text ], + owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:implements ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:instantiates ], + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; owl:onProperty linkml:text ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:meaning ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:instantiates ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:text ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -3230,23 +3256,23 @@ linkml:Setting a owl:Class, linkml:ClassDefinition ; rdfs:label "setting" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:setting_key ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 1 ; owl:onProperty linkml:setting_value ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:setting_value ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:setting_key ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:setting_key ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:setting_value ] ; + owl:onProperty linkml:setting_value ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:setting_key ] ; skos:definition "assignment of a key to a value" ; skos:inScheme linkml:meta . @@ -3478,32 +3504,20 @@ linkml:PathExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "path_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:followed_by ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:range_expression ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:traverse ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:none_of ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:reversed ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:reversed ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:followed_by ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:reversed ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:none_of ], @@ -3511,44 +3525,56 @@ linkml:PathExpression a owl:Class, owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:range_expression ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:traverse ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:traverse ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:any_of ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:followed_by ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:reversed ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:range_expression ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:followed_by ], + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:PathExpression ; owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:followed_by ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:all_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:followed_by ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:traverse ], linkml:Annotatable, linkml:CommonMetadata, linkml:Expression, @@ -3560,53 +3586,53 @@ linkml:ReachabilityQuery a owl:Class, linkml:ClassDefinition ; rdfs:label "reachability_query" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_direct ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:source_nodes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source_ontology ], + owl:onProperty linkml:traverse_up ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:source_ontology ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:relationship_types ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:traverse_up ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source_nodes ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:is_direct ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:source_ontology ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:include_self ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:relationship_types ], + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_direct ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:traverse_up ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:include_self ], + owl:onProperty linkml:source_nodes ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:relationship_types ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:include_self ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:source_nodes ], + owl:onProperty linkml:relationship_types ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:include_self ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:traverse_up ] ; + owl:onProperty linkml:include_self ] ; skos:definition "A query that is used on an enum expression to dynamically obtain a set of permissible values via walking from a set of source nodes to a set of descendants or ancestors over a set of relationship types." ; skos:inScheme linkml:meta . @@ -3714,13 +3740,13 @@ linkml:EnumDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "enum_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:enum_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:enum_uri ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:enum_uri ], linkml:Definition, linkml:EnumExpression ; @@ -3816,248 +3842,248 @@ linkml:CommonMetadata a owl:Class, linkml:ClassDefinition ; rdfs:label "common_metadata" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:source ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:close_mappings ], + owl:onProperty linkml:examples ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:status ], + owl:onProperty linkml:modified_by ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:in_language ], + owl:maxCardinality 1 ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:created_on ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:created_on ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:source ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:modified_by ], + owl:onProperty linkml:status ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:aliases ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:categories ], + owl:maxCardinality 1 ; + owl:onProperty linkml:status ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:exact_mappings ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:notes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mappings ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:modified_by ], + owl:onProperty linkml:rank ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:notes ], + owl:maxCardinality 1 ; + owl:onProperty linkml:from_schema ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:title ], + owl:onProperty linkml:contributors ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:from_schema ], + owl:onProperty linkml:status ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:status ], + owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:in_language ], + owl:minCardinality 0 ; + owl:onProperty linkml:from_schema ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:mappings ], + owl:onProperty linkml:categories ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:created_on ], + owl:onProperty linkml:close_mappings ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:deprecated ], + owl:onProperty linkml:keywords ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:broad_mappings ], + owl:maxCardinality 1 ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:exact_mappings ], + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:narrow_mappings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:created_on ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:broad_mappings ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:comments ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:in_language ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:from_schema ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:status ], + owl:minCardinality 0 ; + owl:onProperty linkml:modified_by ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:rank ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:see_also ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:examples ], + owl:onProperty linkml:notes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:source ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:title ], + owl:minCardinality 0 ; + owl:onProperty linkml:comments ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty linkml:in_language ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:broad_mappings ], + owl:onProperty linkml:description ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:imported_from ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:rank ], + owl:maxCardinality 1 ; + owl:onProperty linkml:title ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:keywords ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:related_mappings ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty linkml:in_subset ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:notes ], + owl:onProperty linkml:in_subset ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source ], + owl:onProperty linkml:structured_aliases ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:from_schema ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:modified_by ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:imported_from ], + owl:onProperty linkml:broad_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:contributors ], + owl:onProperty linkml:title ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:keywords ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:created_on ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:deprecated ], + owl:onProperty linkml:created_by ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:categories ], + owl:minCardinality 0 ; + owl:onProperty linkml:related_mappings ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:last_updated_on ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:created_by ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:imported_from ], + owl:onProperty linkml:narrow_mappings ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:created_by ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:description ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:created_by ], + owl:onProperty linkml:categories ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:deprecated ], + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:narrow_mappings ], + owl:maxCardinality 1 ; + owl:onProperty linkml:modified_by ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:aliases ], + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty linkml:structured_aliases ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:onProperty linkml:title ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:title ], + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:description ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:keywords ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:narrow_mappings ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:last_updated_on ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:rank ], + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:todos ], + owl:onProperty linkml:see_also ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:comments ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:description ], + owl:maxCardinality 1 ; + owl:onProperty linkml:created_by ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:in_subset ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:close_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:structured_aliases ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty linkml:in_subset ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:see_also ], + owl:onProperty linkml:aliases ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:see_also ], + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:related_mappings ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; - owl:onProperty linkml:from_schema ], + owl:onProperty linkml:contributors ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:close_mappings ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:description ], + owl:onProperty linkml:source ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:contributors ], + owl:onProperty linkml:mappings ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:created_on ], + owl:minCardinality 0 ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:in_language ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty linkml:structured_aliases ] ; + owl:minCardinality 0 ; + owl:onProperty linkml:mappings ] ; skos:definition "Generic metadata shared across definitions" ; skos:inScheme linkml:meta . @@ -4085,10 +4111,10 @@ linkml:Extensible a owl:Class, linkml:ClassDefinition ; rdfs:label "extensible" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Extension ; owl:onProperty linkml:extensions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; + owl:minCardinality 0 ; owl:onProperty linkml:extensions ] ; skos:definition "mixin for classes that support extension" ; skos:inScheme linkml:extensions . @@ -4097,44 +4123,44 @@ linkml:TypeDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "type_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:repr ], - [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:union_of ], + owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:union_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:type_uri ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:repr ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:TypeDefinition ; owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:typeof ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:base ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:type_uri ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:base ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:type_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:base ], + owl:onProperty linkml:repr ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:type_uri ], + owl:minCardinality 0 ; + owl:onProperty linkml:repr ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:base ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:repr ], + owl:maxCardinality 1 ; + owl:onProperty linkml:base ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:typeof ], @@ -4156,130 +4182,139 @@ linkml:Annotatable a owl:Class, skos:definition "mixin for classes that support annotations" ; skos:inScheme linkml:annotations . +linkml:is_a a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "is_a" ; + rdfs:range linkml:Definition ; + skos:definition "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + skos:inScheme linkml:meta ; + sh:order 11 . + +linkml:mappings a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "mappings" ; + rdfs:range linkml:Uriorcurie ; + skos:altLabel "alternate identifiers", + "alternate ids", + "identifiers", + "xrefs" ; + 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:inScheme linkml:mappings . + +linkml:AnonymousClassExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "anonymous_class_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:is_a ], + linkml:AnonymousExpression, + linkml:ClassExpression ; + skos:inScheme linkml:meta . + linkml:EnumExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "enum_expression" ; rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:include ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_open ], + [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], + owl:onProperty linkml:code_set ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:reachable_from ], + owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], + owl:maxCardinality 1 ; + owl:onProperty linkml:matches ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:AnonymousEnumExpression ; owl:onProperty linkml:minus ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:code_set ], + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:include ], + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:matches ], + owl:onProperty linkml:concepts ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:reachable_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; owl:allValuesFrom linkml:ReachabilityQuery ; owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:minCardinality 0 ; owl:onProperty linkml:minus ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], + owl:minCardinality 0 ; + owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; owl:allValuesFrom linkml:PermissibleValue ; owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:pv_formula ], + owl:minCardinality 0 ; + owl:onProperty linkml:matches ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:concepts ], + owl:onProperty linkml:is_open ], [ a owl:Restriction ; - owl:allValuesFrom linkml:MatchQuery ; - owl:onProperty linkml:matches ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:code_set_tag ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_open ], [ a owl:Restriction ; owl:allValuesFrom linkml:PvFormulaOptions ; owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:code_set_version ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:code_set_version ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:matches ], + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:inherits ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:code_set_tag ], + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:include ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:inherits ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:minCardinality 0 ; owl:onProperty linkml:code_set ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:concepts ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pv_formula ], + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:code_set ], - linkml:Expression ; - skos:definition "An expression that constrains the range of a slot" ; - skos:inScheme linkml:meta . - -linkml:is_a a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "is_a" ; - rdfs:range linkml:Definition ; - skos:definition "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; - skos:inScheme linkml:meta ; - sh:order 11 . - -linkml:mappings a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "mappings" ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "alternate identifiers", - "alternate ids", - "identifiers", - "xrefs" ; - 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:inScheme linkml:mappings . - -linkml:AnonymousClassExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "anonymous_class_expression" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:is_a ], - linkml:AnonymousExpression, - linkml:ClassExpression ; + owl:onProperty linkml:code_set ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:MatchQuery ; + owl:onProperty linkml:matches ], + linkml:Expression ; + skos:definition "An expression that constrains the range of a slot" ; skos:inScheme linkml:meta . linkml:SchemaDefinition a owl:Class, @@ -4287,178 +4322,178 @@ linkml:SchemaDefinition a owl:Class, rdfs:label "schema_definition" ; rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:slot_names_unique ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:default_curi_maps ], + owl:minCardinality 1 ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:bindings ], + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:default_range ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source_file_date ], + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty linkml:subsets ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:settings ], + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:default_range ], + owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:version ], + owl:minCardinality 0 ; + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:default_range ], + owl:minCardinality 0 ; + owl:onProperty linkml:settings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:types ], + owl:onProperty linkml:version ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:source_file ], + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:version ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:metamodel_version ], + owl:minCardinality 0 ; + owl:onProperty linkml:types ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:enums ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:source_file ], + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:enums ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:default_prefix ], + owl:onProperty linkml:enums ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:source_file_size ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumBinding ; - owl:onProperty linkml:bindings ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:classes ], + owl:onProperty linkml:default_range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:default_range ], + owl:onProperty linkml:slot_definitions ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:license ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:subsets ], + owl:maxCardinality 1 ; + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Prefix ; owl:onProperty linkml:prefixes ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:slot_names_unique ], + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:types ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:name ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:id ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:generation_date ], + owl:maxCardinality 1 ; + owl:onProperty linkml:license ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:default_prefix ], + owl:onProperty linkml:default_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:classes ], + owl:minCardinality 0 ; + owl:onProperty linkml:prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty linkml:subsets ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:slot_names_unique ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:metamodel_version ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:name ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Setting ; + owl:onProperty linkml:settings ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:imports ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:license ], + owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_definitions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:imports ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:classes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source_file_date ], + owl:onProperty linkml:bindings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:metamodel_version ], + owl:onProperty linkml:classes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Prefix ; - owl:onProperty linkml:prefixes ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source_file_size ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:name ], + owl:minCardinality 0 ; + owl:onProperty linkml:license ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:emit_prefixes ], + owl:minCardinality 0 ; + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:EnumBinding ; + owl:onProperty linkml:bindings ], + [ a owl:Restriction ; + owl:minCardinality 1 ; owl:onProperty linkml:id ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:emit_prefixes ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:version ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:source_file_date ], + owl:minCardinality 0 ; + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:enums ], + owl:maxCardinality 1 ; + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:metamodel_version ], + owl:minCardinality 0 ; + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:types ], + owl:minCardinality 0 ; + owl:onProperty linkml:subsets ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:version ], + owl:onProperty linkml:imports ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:license ], + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Setting ; - owl:onProperty linkml:settings ], + owl:maxCardinality 1 ; + owl:onProperty linkml:id ], [ a owl:Restriction ; owl:allValuesFrom linkml:Datetime ; owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:name ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:default_prefix ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:id ], + owl:maxCardinality 1 ; + owl:onProperty linkml:version ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; - owl:onProperty linkml:id ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:slot_definitions ], linkml:Element ; skos:altLabel "data dictionary", @@ -4478,60 +4513,60 @@ linkml:Definition a owl:Class, rdfs:label "definition" ; rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:abstract ], - [ owl:unionOf ( linkml:ClassDefinition linkml:EnumDefinition linkml:SlotDefinition ) ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Definition ; owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:values_from ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:abstract ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:maxCardinality 1 ; owl:onProperty linkml:mixin ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:abstract ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:mixins ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:mixin ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:values_from ], + owl:minCardinality 0 ; + owl:onProperty linkml:mixins ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:abstract ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:string_serialization ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:is_a ], + [ owl:unionOf ( linkml:ClassDefinition linkml:EnumDefinition linkml:SlotDefinition ) ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:mixin ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:mixin ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:abstract ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:values_from ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:string_serialization ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:apply_to ], linkml:Element ; skos:definition "abstract base class for core metaclasses" ; skos:inScheme linkml:meta . @@ -4541,66 +4576,66 @@ linkml:Element a owl:Class, rdfs:label "element" ; rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:definition_uri ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:name ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; + owl:minCardinality 0 ; owl:onProperty linkml:id_prefixes ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:definition_uri ], - [ owl:unionOf ( linkml:Definition linkml:SchemaDefinition linkml:SubsetDefinition linkml:TypeDefinition ) ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:local_names ], + owl:onProperty linkml:implements ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:conforms_to ], + owl:allValuesFrom linkml:LocalName ; + owl:onProperty linkml:local_names ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:conforms_to ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:name ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:definition_uri ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:LocalName ; - owl:onProperty linkml:local_names ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:local_names ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:conforms_to ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:definition_uri ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:implements ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:instantiates ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:implements ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:id_prefixes_are_closed ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:definition_uri ], + [ owl:unionOf ( linkml:Definition linkml:SchemaDefinition linkml:SubsetDefinition linkml:TypeDefinition ) ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:id_prefixes_are_closed ], + owl:maxCardinality 1 ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:conforms_to ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:instantiates ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:conforms_to ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:implements ], + owl:onProperty linkml:id_prefixes_are_closed ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -4614,151 +4649,151 @@ linkml:ClassDefinition a owl:Class, rdfs:label "class_definition" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:subclass_of ], + owl:onProperty linkml:slots ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:class_uri ], + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:classification_rules ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:tree_root ], + owl:allValuesFrom linkml:UniqueKey ; + owl:onProperty linkml:unique_keys ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:extra_slots ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; owl:allValuesFrom linkml:ClassDefinition ; owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slots ], + owl:onProperty linkml:extra_slots ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:alias ], + owl:minCardinality 0 ; + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:represents_relationship ], + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:union_of ], + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:slot_names_unique ], + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:class_uri ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:defining_slots ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:disjoint_with ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; owl:allValuesFrom linkml:ExtraSlotsExpression ; owl:onProperty linkml:extra_slots ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:slot_usage ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:slot_names_unique ], + owl:maxCardinality 1 ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:disjoint_with ], + owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:attributes ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:class_uri ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:apply_to ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:UniqueKey ; owl:onProperty linkml:unique_keys ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:extra_slots ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:defining_slots ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:classification_rules ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:slot_names_unique ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:attributes ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:tree_root ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:disjoint_with ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:minCardinality 0 ; + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onProperty linkml:defining_slots ], [ a owl:Restriction ; owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:apply_to ], + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:rules ], + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:attributes ], + owl:minCardinality 0 ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:defining_slots ], + owl:minCardinality 0 ; + owl:onProperty linkml:rules ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:extra_slots ], + owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; owl:allValuesFrom linkml:ClassRule ; owl:onProperty linkml:rules ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:tree_root ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:classification_rules ], + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:represents_relationship ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:union_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:attributes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_usage ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slots ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:subclass_of ], + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:alias ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slots ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:alias ], + owl:onProperty linkml:classification_rules ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:unique_keys ], + owl:maxCardinality 1 ; + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:represents_relationship ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:tree_root ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alias ], linkml:ClassExpression, linkml:Definition ; skos:altLabel "message", @@ -4805,113 +4840,110 @@ linkml:SlotDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "slot_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:ifabsent ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:domain ], + owl:onProperty linkml:readonly ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:alias ], + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:transitive_form_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:reflexive ], + owl:onProperty linkml:readonly ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:minCardinality 0 ; + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:list_elements_unique ], + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:list_elements_ordered ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:identifier ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:readonly ], + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:locally_reflexive ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:usage_slot_name ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:shared ], + owl:onProperty linkml:transitive ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:subproperty_of ], + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:role ], + owl:onProperty linkml:readonly ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:children_are_mutually_disjoint ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty linkml:relational_role ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:list_elements_ordered ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:mixins ], + owl:maxCardinality 1 ; + owl:onProperty linkml:role ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slot_uri ], + owl:onProperty linkml:key ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:transitive ], + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:readonly ], + owl:maxCardinality 1 ; + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:owner ], + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_grouping_slot ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; + owl:minCardinality 0 ; owl:onProperty linkml:path_rule ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:inverse ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:disjoint_with ], + owl:maxCardinality 1 ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:symmetric ], + owl:minCardinality 0 ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:irreflexive ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:irreflexive ], + owl:allValuesFrom linkml:RelationalRoleEnum ; + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:shared ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:key ], + owl:onProperty linkml:is_grouping_slot ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:domain_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:path_rule ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:owner ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:ifabsent ], @@ -4919,17 +4951,20 @@ linkml:SlotDefinition a owl:Class, owl:minCardinality 0 ; owl:onProperty linkml:type_mappings ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:key ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:slot_group ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:slot_group ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:domain ], + owl:onProperty linkml:slot_group ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:is_grouping_slot ], @@ -4937,217 +4972,217 @@ linkml:SlotDefinition a owl:Class, owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:alias ], + owl:minCardinality 0 ; + owl:onProperty linkml:role ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:identifier ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:key ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:minCardinality 0 ; owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:key ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:identifier ], + owl:minCardinality 0 ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:role ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:is_a ], + owl:minCardinality 0 ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_class_field ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:apply_to ], + owl:onProperty linkml:ifabsent ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:symmetric ], + owl:onProperty linkml:disjoint_with ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:subproperty_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:is_grouping_slot ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:transitive ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:inherited ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:asymmetric ], + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:singular_name ], + owl:onProperty linkml:transitive ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:designates_type ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:usage_slot_name ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:disjoint_with ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:inherited ], + owl:onProperty linkml:shared ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:inverse ], + owl:minCardinality 0 ; + owl:onProperty linkml:subproperty_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:domain_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:ifabsent ], + owl:minCardinality 0 ; + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:reflexive ], + owl:onProperty linkml:identifier ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:irreflexive ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:subproperty_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:asymmetric ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:transitive ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:inherited ], + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:union_of ], + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:list_elements_ordered ], + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:path_rule ], + owl:allValuesFrom owl:Thing ; + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:domain ], + owl:maxCardinality 1 ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:reflexive ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_usage_slot ], + owl:onProperty linkml:inherited ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:union_of ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:list_elements_unique ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_usage_slot ], + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:designates_type ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:transitive ], + owl:onProperty linkml:owner ], [ a owl:Restriction ; - owl:allValuesFrom linkml:RelationalRoleEnum ; - owl:onProperty linkml:relational_role ], + owl:maxCardinality 1 ; + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeMapping ; - owl:onProperty linkml:type_mappings ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:locally_reflexive ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:locally_reflexive ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:owner ], + owl:minCardinality 0 ; + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:is_class_field ], + owl:minCardinality 0 ; + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom owl:Thing ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:identifier ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:readonly ], + owl:onProperty linkml:inverse ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:is_usage_slot ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:path_rule ], + owl:onProperty linkml:domain ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:transitive_form_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:asymmetric ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:singular_name ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:identifier ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:inverse ], + owl:allValuesFrom linkml:TypeMapping ; + owl:onProperty linkml:type_mappings ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:slot_uri ], + owl:onProperty linkml:shared ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:key ], + owl:maxCardinality 1 ; + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:role ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:symmetric ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:children_are_mutually_disjoint ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:ifabsent ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:singular_name ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Definition ; owl:onProperty linkml:owner ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:designates_type ], + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:relational_role ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:alias ], + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:allValuesFrom [ owl:intersectionOf ( [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:is_grouping_slot ] linkml:SlotDefinition ) ] ; owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:shared ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:singular_name ], + owl:onProperty linkml:symmetric ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:locally_reflexive ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:asymmetric ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:asymmetric ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:usage_slot_name ], linkml:Definition, linkml:SlotExpression ; skos:altLabel "attribute", @@ -5161,3 +5196,4 @@ linkml:SlotDefinition a owl:Class, skos:definition "an element that describes how instances are related to other instances" ; skos:inScheme linkml:meta ; sh:order 3 . + diff --git a/linkml_model/protobuf/meta.proto b/linkml_model/protobuf/meta.proto index 5fd517e2c..31e521feb 100644 --- a/linkml_model/protobuf/meta.proto +++ b/linkml_model/protobuf/meta.proto @@ -67,6 +67,7 @@ message AnonymousEnumExpression string codeSetVersion = 0 pvFormulaOptions pvFormula = 0 repeated permissibleValue permissibleValues = 0 + boolean isOpen = 0 repeated anonymousEnumExpression include = 0 repeated anonymousEnumExpression minus = 0 repeated enumDefinition inherits = 0 @@ -468,6 +469,7 @@ message EnumDefinition string codeSetVersion = 0 pvFormulaOptions pvFormula = 0 repeated permissibleValue permissibleValues = 0 + boolean isOpen = 0 repeated anonymousEnumExpression include = 0 repeated anonymousEnumExpression minus = 0 repeated enumDefinition inherits = 0 @@ -483,6 +485,7 @@ message EnumExpression string codeSetVersion = 0 pvFormulaOptions pvFormula = 0 repeated permissibleValue permissibleValues = 0 + boolean isOpen = 0 repeated anonymousEnumExpression include = 0 repeated anonymousEnumExpression minus = 0 repeated enumDefinition inherits = 0 @@ -507,7 +510,7 @@ message Extension // An expression that defines how to handle additional data in an instance of class // beyond the slots/attributes defined for that class. // See `extra_slots` for usage examples. -// +// message ExtraSlotsExpression { boolean allowed = 0 @@ -1152,7 +1155,7 @@ message UniqueKey repeated uriorcurie categories = 0 repeated string keywords = 0 } -// A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension). +// A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension). message UnitOfMeasure { string symbol = 0 diff --git a/linkml_model/rdf/annotations.model.ttl b/linkml_model/rdf/annotations.model.ttl index 0d8450e53..9049305f9 100644 --- a/linkml_model/rdf/annotations.model.ttl +++ b/linkml_model/rdf/annotations.model.ttl @@ -240,13 +240,13 @@ linkml:annotations a linkml:SchemaDefinition, linkml:domain_of linkml:Annotatable, linkml:Annotation ; linkml:emit_prefixes "linkml" ; - linkml:generation_date "2026-05-05T18:49:20"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:28"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/annotations"^^xsd:anyURI ; linkml:imports "linkml:extensions"^^xsd:anyURI, "linkml:types"^^xsd:anyURI ; linkml:inlined true ; linkml:is_a linkml:extensions ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:multivalued true ; linkml:owner linkml:Annotation ; linkml:range linkml:Annotation ; @@ -256,7 +256,7 @@ linkml:annotations a linkml:SchemaDefinition, linkml:extension_value, linkml:extensions ; linkml:source_file "annotations.yaml" ; - linkml:source_file_date "2026-05-05T18:15:49"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 832 ; linkml:types linkml:boolean, linkml:curie, @@ -295,6 +295,9 @@ linkml:extension_tag a linkml:SlotDefinition ; linkml:extension_value a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; skos:prefLabel "value" ; + linkml:annotations [ a linkml:Annotation ; + skos:example true ; + linkml:tag linkml:simple_dict_value ] ; linkml:definition_uri "https://w3id.org/linkml/extension_value"^^xsd:anyURI ; linkml:description "the actual annotation" ; linkml:domain linkml:Extension ; @@ -316,6 +319,16 @@ linkml:Annotatable a linkml:ClassDefinition ; linkml:slot_usage [ ] ; linkml:slots linkml:annotations . +linkml:Extensible a linkml:ClassDefinition ; + skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; + linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:description "mixin for classes that support extension" ; + linkml:imported_from "linkml:extensions" ; + linkml:mixin true ; + linkml:slot_usage [ ] ; + linkml:slots linkml:extensions . + linkml:Annotation a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; @@ -329,16 +342,6 @@ linkml:Annotation a linkml:ClassDefinition ; linkml:extension_value, linkml:extensions . -linkml:Extensible a linkml:ClassDefinition ; - skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; - linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:description "mixin for classes that support extension" ; - linkml:imported_from "linkml:extensions" ; - linkml:mixin true ; - linkml:slot_usage [ ] ; - linkml:slots linkml:extensions . - linkml:extensions a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/extensions"^^xsd:anyURI ; @@ -363,3 +366,4 @@ linkml:Extension a linkml:ClassDefinition ; linkml:slots linkml:extension_tag, linkml:extension_value, linkml:extensions . + diff --git a/linkml_model/rdf/annotations.ttl b/linkml_model/rdf/annotations.ttl index f294d7498..8a5960530 100644 --- a/linkml_model/rdf/annotations.ttl +++ b/linkml_model/rdf/annotations.ttl @@ -240,13 +240,13 @@ linkml:annotations a linkml:SchemaDefinition, linkml:domain_of linkml:Annotatable, linkml:Annotation ; linkml:emit_prefixes "linkml" ; - linkml:generation_date "2026-05-05T18:49:17"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:25"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/annotations"^^xsd:anyURI ; linkml:imports "linkml:extensions"^^xsd:anyURI, "linkml:types"^^xsd:anyURI ; linkml:inlined true ; linkml:is_a linkml:extensions ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:multivalued true ; linkml:owner linkml:Annotation ; linkml:range linkml:Annotation ; @@ -256,7 +256,7 @@ linkml:annotations a linkml:SchemaDefinition, linkml:extension_value, linkml:extensions ; linkml:source_file "annotations.yaml" ; - linkml:source_file_date "2026-05-05T18:15:49"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 832 ; linkml:types linkml:boolean, linkml:curie, @@ -295,6 +295,9 @@ linkml:extension_tag a linkml:SlotDefinition ; linkml:extension_value a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; skos:prefLabel "value" ; + linkml:annotations [ a linkml:Annotation ; + skos:example true ; + linkml:tag linkml:simple_dict_value ] ; linkml:definition_uri "https://w3id.org/linkml/extension_value"^^xsd:anyURI ; linkml:description "the actual annotation" ; linkml:domain linkml:Extension ; @@ -316,6 +319,16 @@ linkml:Annotatable a linkml:ClassDefinition ; linkml:slot_usage [ ] ; linkml:slots linkml:annotations . +linkml:Extensible a linkml:ClassDefinition ; + skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; + linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:description "mixin for classes that support extension" ; + linkml:imported_from "linkml:extensions" ; + linkml:mixin true ; + linkml:slot_usage [ ] ; + linkml:slots linkml:extensions . + linkml:Annotation a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; @@ -329,16 +342,6 @@ linkml:Annotation a linkml:ClassDefinition ; linkml:extension_value, linkml:extensions . -linkml:Extensible a linkml:ClassDefinition ; - skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; - linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:description "mixin for classes that support extension" ; - linkml:imported_from "linkml:extensions" ; - linkml:mixin true ; - linkml:slot_usage [ ] ; - linkml:slots linkml:extensions . - linkml:extensions a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/extensions"^^xsd:anyURI ; @@ -363,3 +366,4 @@ linkml:Extension a linkml:ClassDefinition ; linkml:slots linkml:extension_tag, linkml:extension_value, linkml:extensions . + diff --git a/linkml_model/rdf/datasets.model.ttl b/linkml_model/rdf/datasets.model.ttl index 3868a6086..bf0232d04 100644 --- a/linkml_model/rdf/datasets.model.ttl +++ b/linkml_model/rdf/datasets.model.ttl @@ -11,34 +11,34 @@ linkml:datasets a linkml:SchemaDefinition ; rdfs:seeAlso "https://specs.frictionlessdata.io/data-resource"^^xsd:anyURI, "https://www.w3.org/TR/hcls-dataset/"^^xsd:anyURI, "https://www.w3.org/TR/void/"^^xsd:anyURI ; - sh:declare [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; - sh:prefix "datasets" ], - [ sh:namespace "http://rdfs.org/ns/void#"^^xsd:anyURI ; - sh:prefix "void" ], + sh:declare [ sh:namespace "http://schema.org/"^^xsd:anyURI ; + sh:prefix "schema" ], [ sh:namespace "https://www.iana.org/assignments/media-types/"^^xsd:anyURI ; sh:prefix "mediatypes" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; - sh:prefix "skos" ], - [ sh:namespace "http://www.w3.org/ns/formats/"^^xsd:anyURI ; - sh:prefix "formats" ], - [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; - sh:prefix "oslc" ], - [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; - sh:prefix "pav" ], + [ sh:namespace "https://w3id.org/shacl/"^^xsd:anyURI ; + sh:prefix "sh" ], [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; sh:prefix "linkml" ], + [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; + sh:prefix "datasets" ], + [ sh:namespace "https://specs.frictionlessdata.io/"^^xsd:anyURI ; + sh:prefix "frictionless" ], [ sh:namespace "http://www.w3.org/ns/dcat#"^^xsd:anyURI ; sh:prefix "dcat" ], [ sh:namespace "http://purl.org/ontology/bibo/"^^xsd:anyURI ; sh:prefix "bibo" ], - [ sh:namespace "http://schema.org/"^^xsd:anyURI ; - sh:prefix "schema" ], - [ sh:namespace "https://specs.frictionlessdata.io/"^^xsd:anyURI ; - sh:prefix "frictionless" ], [ sh:namespace "http://www.w3.org/ns/csvw#"^^xsd:anyURI ; sh:prefix "csvw" ], - [ sh:namespace "https://w3id.org/shacl/"^^xsd:anyURI ; - sh:prefix "sh" ] ; + [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; + sh:prefix "oslc" ], + [ sh:namespace "http://www.w3.org/ns/formats/"^^xsd:anyURI ; + sh:prefix "formats" ], + [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; + sh:prefix "pav" ], + [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:prefix "skos" ], + [ sh:namespace "http://rdfs.org/ns/void#"^^xsd:anyURI ; + sh:prefix "void" ] ; linkml:classes linkml:DataPackage, linkml:DataResource, linkml:FormatDialect, @@ -55,10 +55,10 @@ linkml:datasets a linkml:SchemaDefinition ; linkml:enums linkml:FormatEnum, linkml:MediaTypeEnum, linkml:TestRole ; - linkml:generation_date "2026-05-05T18:49:23"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:32"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/datasets"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:slots linkml:bytes, linkml:compression, linkml:conforms_to, @@ -99,7 +99,7 @@ linkml:datasets a linkml:SchemaDefinition ; linkml:version, linkml:was_derived_from ; linkml:source_file "datasets.yaml" ; - linkml:source_file_date "2026-05-05T18:15:53"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 7835 ; linkml:types linkml:boolean, linkml:curie, @@ -516,9 +516,9 @@ linkml:media_type a linkml:SlotDefinition ; linkml:definition_uri "https://w3id.org/linkml/reportmedia_type"^^xsd:anyURI ; linkml:domain_of linkml:DataResource ; linkml:examples [ a linkml:Example ; - skos:example "text/csv" ], + skos:example "application/json" ], [ a linkml:Example ; - skos:example "application/json" ] ; + skos:example "text/csv" ] ; linkml:owner linkml:DataResource ; linkml:range linkml:string ; linkml:slot_uri "http://www.w3.org/ns/dcat#mediaType"^^xsd:anyURI . @@ -916,3 +916,4 @@ linkml:Information a linkml:ClassDefinition ; linkml:title, linkml:version, linkml:was_derived_from . + diff --git a/linkml_model/rdf/datasets.ttl b/linkml_model/rdf/datasets.ttl index 956a77cf8..b62e06665 100644 --- a/linkml_model/rdf/datasets.ttl +++ b/linkml_model/rdf/datasets.ttl @@ -11,34 +11,34 @@ linkml:datasets a linkml:SchemaDefinition ; rdfs:seeAlso "https://specs.frictionlessdata.io/data-resource"^^xsd:anyURI, "https://www.w3.org/TR/hcls-dataset/"^^xsd:anyURI, "https://www.w3.org/TR/void/"^^xsd:anyURI ; - sh:declare [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; - sh:prefix "oslc" ], + sh:declare [ sh:namespace "http://rdfs.org/ns/void#"^^xsd:anyURI ; + sh:prefix "void" ], + [ sh:namespace "http://www.w3.org/ns/formats/"^^xsd:anyURI ; + sh:prefix "formats" ], + [ sh:namespace "https://www.iana.org/assignments/media-types/"^^xsd:anyURI ; + sh:prefix "mediatypes" ], [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; sh:prefix "linkml" ], [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; sh:prefix "pav" ], + [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; + sh:prefix "oslc" ], + [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:prefix "skos" ], + [ sh:namespace "http://www.w3.org/ns/csvw#"^^xsd:anyURI ; + sh:prefix "csvw" ], [ sh:namespace "https://w3id.org/shacl/"^^xsd:anyURI ; sh:prefix "sh" ], [ sh:namespace "http://purl.org/ontology/bibo/"^^xsd:anyURI ; sh:prefix "bibo" ], - [ sh:namespace "https://www.iana.org/assignments/media-types/"^^xsd:anyURI ; - sh:prefix "mediatypes" ], - [ sh:namespace "https://specs.frictionlessdata.io/"^^xsd:anyURI ; - sh:prefix "frictionless" ], - [ sh:namespace "http://www.w3.org/ns/csvw#"^^xsd:anyURI ; - sh:prefix "csvw" ], - [ sh:namespace "http://rdfs.org/ns/void#"^^xsd:anyURI ; - sh:prefix "void" ], - [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; - sh:prefix "datasets" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; - sh:prefix "skos" ], [ sh:namespace "http://www.w3.org/ns/dcat#"^^xsd:anyURI ; sh:prefix "dcat" ], - [ sh:namespace "http://www.w3.org/ns/formats/"^^xsd:anyURI ; - sh:prefix "formats" ], + [ sh:namespace "https://specs.frictionlessdata.io/"^^xsd:anyURI ; + sh:prefix "frictionless" ], [ sh:namespace "http://schema.org/"^^xsd:anyURI ; - sh:prefix "schema" ] ; + sh:prefix "schema" ], + [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; + sh:prefix "datasets" ] ; linkml:classes linkml:DataPackage, linkml:DataResource, linkml:FormatDialect, @@ -55,10 +55,10 @@ linkml:datasets a linkml:SchemaDefinition ; linkml:enums linkml:FormatEnum, linkml:MediaTypeEnum, linkml:TestRole ; - linkml:generation_date "2026-05-05T18:49:22"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:30"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/datasets"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:slots linkml:bytes, linkml:compression, linkml:conforms_to, @@ -99,7 +99,7 @@ linkml:datasets a linkml:SchemaDefinition ; linkml:version, linkml:was_derived_from ; linkml:source_file "datasets.yaml" ; - linkml:source_file_date "2026-05-05T18:15:53"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 7835 ; linkml:types linkml:boolean, linkml:curie, @@ -916,3 +916,4 @@ linkml:Information a linkml:ClassDefinition ; linkml:title, linkml:version, linkml:was_derived_from . + diff --git a/linkml_model/rdf/extensions.model.ttl b/linkml_model/rdf/extensions.model.ttl index 467b4c07b..8f7522ab2 100644 --- a/linkml_model/rdf/extensions.model.ttl +++ b/linkml_model/rdf/extensions.model.ttl @@ -267,11 +267,11 @@ linkml:extensions a linkml:SchemaDefinition, linkml:domain_of linkml:Extensible, linkml:Extension ; linkml:emit_prefixes "linkml" ; - linkml:generation_date "2026-05-05T18:49:27"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:35"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/extensions"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; linkml:inlined true ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:multivalued true ; linkml:owner linkml:Extensible ; linkml:range linkml:Extension ; @@ -280,7 +280,7 @@ linkml:extensions a linkml:SchemaDefinition, linkml:extension_value, linkml:extensions ; linkml:source_file "extensions.yaml" ; - linkml:source_file_date "2026-05-05T18:15:54"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 1164 ; linkml:types linkml:boolean, linkml:curie, @@ -320,3 +320,4 @@ linkml:Extension a linkml:ClassDefinition ; linkml:slots linkml:extension_tag, linkml:extension_value, linkml:extensions . + diff --git a/linkml_model/rdf/extensions.ttl b/linkml_model/rdf/extensions.ttl index 3ddb492fb..87f53d247 100644 --- a/linkml_model/rdf/extensions.ttl +++ b/linkml_model/rdf/extensions.ttl @@ -267,11 +267,11 @@ linkml:extensions a linkml:SchemaDefinition, linkml:domain_of linkml:Extensible, linkml:Extension ; linkml:emit_prefixes "linkml" ; - linkml:generation_date "2026-05-05T18:49:25"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:34"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/extensions"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; linkml:inlined true ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:multivalued true ; linkml:owner linkml:Extensible ; linkml:range linkml:Extension ; @@ -280,7 +280,7 @@ linkml:extensions a linkml:SchemaDefinition, linkml:extension_value, linkml:extensions ; linkml:source_file "extensions.yaml" ; - linkml:source_file_date "2026-05-05T18:15:54"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 1164 ; linkml:types linkml:boolean, linkml:curie, @@ -320,3 +320,4 @@ linkml:Extension a linkml:ClassDefinition ; linkml:slots linkml:extension_tag, linkml:extension_value, linkml:extensions . + diff --git a/linkml_model/rdf/mappings.model.ttl b/linkml_model/rdf/mappings.model.ttl index cb4adda46..11f47bab1 100644 --- a/linkml_model/rdf/mappings.model.ttl +++ b/linkml_model/rdf/mappings.model.ttl @@ -280,10 +280,10 @@ linkml:mappings a linkml:SchemaDefinition, skos:mappingRelation "http://www.w3.org/2004/02/skos/core#mappingRelation"^^xsd:anyURI ; sh:declare [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; sh:prefix "linkml" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; - sh:prefix "skos" ], [ sh:namespace "http://purl.obolibrary.org/obo/IAO_"^^xsd:anyURI ; sh:prefix "IAO" ], + [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:prefix "skos" ], [ sh:namespace "http://www.geneontology.org/formats/oboInOwl#"^^xsd:anyURI ; sh:prefix "OIO" ] ; linkml:default_curi_maps "semweb_context" ; @@ -299,10 +299,10 @@ linkml:mappings a linkml:SchemaDefinition, "rdfs", "skos", "xsd" ; - linkml:generation_date "2026-05-05T18:49:30"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:39"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/mappings"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:multivalued true ; linkml:range linkml:uriorcurie ; linkml:slot_uri "http://www.w3.org/2004/02/skos/core#mappingRelation"^^xsd:anyURI ; @@ -315,7 +315,7 @@ linkml:mappings a linkml:SchemaDefinition, linkml:narrow_mappings, linkml:related_mappings ; linkml:source_file "mappings.yaml" ; - linkml:source_file_date "2026-05-05T18:15:56"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 2753 ; linkml:types linkml:boolean, linkml:curie, @@ -346,3 +346,4 @@ linkml:uriorcurie a linkml:TypeDefinition ; linkml:imported_from "linkml:types" ; linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#anyURI"^^xsd:anyURI . + diff --git a/linkml_model/rdf/mappings.ttl b/linkml_model/rdf/mappings.ttl index 7117ecad9..8b024b77c 100644 --- a/linkml_model/rdf/mappings.ttl +++ b/linkml_model/rdf/mappings.ttl @@ -278,14 +278,14 @@ linkml:mappings a linkml:SchemaDefinition, "xrefs" ; skos:inScheme "https://w3id.org/linkml/mappings"^^xsd:anyURI ; skos:mappingRelation "http://www.w3.org/2004/02/skos/core#mappingRelation"^^xsd:anyURI ; - sh:declare [ sh:namespace "http://purl.obolibrary.org/obo/IAO_"^^xsd:anyURI ; - sh:prefix "IAO" ], - [ sh:namespace "http://www.geneontology.org/formats/oboInOwl#"^^xsd:anyURI ; - sh:prefix "OIO" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:declare [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; sh:prefix "skos" ], + [ sh:namespace "http://purl.obolibrary.org/obo/IAO_"^^xsd:anyURI ; + sh:prefix "IAO" ], [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; - sh:prefix "linkml" ] ; + sh:prefix "linkml" ], + [ sh:namespace "http://www.geneontology.org/formats/oboInOwl#"^^xsd:anyURI ; + sh:prefix "OIO" ] ; linkml:default_curi_maps "semweb_context" ; linkml:default_prefix "linkml" ; linkml:default_range linkml:string ; @@ -299,10 +299,10 @@ linkml:mappings a linkml:SchemaDefinition, "rdfs", "skos", "xsd" ; - linkml:generation_date "2026-05-05T18:49:28"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:37"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/mappings"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:multivalued true ; linkml:range linkml:uriorcurie ; linkml:slot_uri "http://www.w3.org/2004/02/skos/core#mappingRelation"^^xsd:anyURI ; @@ -315,7 +315,7 @@ linkml:mappings a linkml:SchemaDefinition, linkml:narrow_mappings, linkml:related_mappings ; linkml:source_file "mappings.yaml" ; - linkml:source_file_date "2026-05-05T18:15:56"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 2753 ; linkml:types linkml:boolean, linkml:curie, @@ -346,3 +346,4 @@ linkml:uriorcurie a linkml:TypeDefinition ; linkml:imported_from "linkml:types" ; linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#anyURI"^^xsd:anyURI . + diff --git a/linkml_model/rdf/meta.model.ttl b/linkml_model/rdf/meta.model.ttl index 6ba27dccc..7eeb3656e 100644 --- a/linkml_model/rdf/meta.model.ttl +++ b/linkml_model/rdf/meta.model.ttl @@ -23,42 +23,42 @@ linkml:meta a linkml:SchemaDefinition ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "LinkML Schema Metamodel" ; - sh:declare [ sh:namespace "http://www.w3.org/ns/prov#"^^xsd:anyURI ; - sh:prefix "prov" ], - [ sh:namespace "http://purl.org/ontology/bibo/"^^xsd:anyURI ; - sh:prefix "bibo" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:declare [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; sh:prefix "skos" ], - [ sh:namespace "http://www.w3.org/2008/05/skos-xl#"^^xsd:anyURI ; - sh:prefix "skosxl" ], + [ sh:namespace "http://www.w3.org/ns/prov#"^^xsd:anyURI ; + sh:prefix "prov" ], + [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; + sh:prefix "linkml" ], + [ sh:namespace "http://purl.org/linked-data/cube#"^^xsd:anyURI ; + sh:prefix "qb" ], [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; sh:prefix "oslc" ], - [ sh:namespace "http://www.w3.org/2003/11/swrl#"^^xsd:anyURI ; - sh:prefix "swrl" ], + [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; + sh:prefix "pav" ], [ sh:namespace "http://qudt.org/schema/qudt/"^^xsd:anyURI ; sh:prefix "qudt" ], - [ sh:namespace "https://vocab.org/vann/"^^xsd:anyURI ; - sh:prefix "vann" ], - [ sh:namespace "http://rdf.cdisc.org/mms#"^^xsd:anyURI ; - sh:prefix "cdisc" ], - [ sh:namespace "http://schema.org/"^^xsd:anyURI ; - sh:prefix "schema" ], + [ sh:namespace "http://www.w3.org/2003/11/swrl#"^^xsd:anyURI ; + sh:prefix "swrl" ], [ sh:namespace "http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#"^^xsd:anyURI ; sh:prefix "NCIT" ], [ sh:namespace "http://www.w3.org/ns/shacl#"^^xsd:anyURI ; sh:prefix "sh" ], - [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; - sh:prefix "pav" ], [ sh:namespace "http://semanticscience.org/resource/SIO_"^^xsd:anyURI ; sh:prefix "SIO" ], - [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; - sh:prefix "linkml" ], - [ sh:namespace "http://purl.org/linked-data/cube#"^^xsd:anyURI ; - sh:prefix "qb" ], + [ sh:namespace "http://rdf.cdisc.org/mms#"^^xsd:anyURI ; + sh:prefix "cdisc" ], [ sh:namespace "http://www.w3.org/2002/07/owl#"^^xsd:anyURI ; sh:prefix "owl" ], [ sh:namespace "http://www.geneontology.org/formats/oboInOwl#"^^xsd:anyURI ; - sh:prefix "OIO" ] ; + sh:prefix "OIO" ], + [ sh:namespace "https://vocab.org/vann/"^^xsd:anyURI ; + sh:prefix "vann" ], + [ sh:namespace "http://www.w3.org/2008/05/skos-xl#"^^xsd:anyURI ; + sh:prefix "skosxl" ], + [ sh:namespace "http://purl.org/ontology/bibo/"^^xsd:anyURI ; + sh:prefix "bibo" ], + [ sh:namespace "http://schema.org/"^^xsd:anyURI ; + sh:prefix "schema" ] ; linkml:classes linkml:AltDescription, linkml:Annotatable, linkml:Annotation, @@ -148,7 +148,7 @@ refer to the official URI for each construct, e.g. linkml:presence_enum, linkml:pv_formula_options, linkml:relational_role_enum ; - linkml:generation_date "2026-05-05T18:49:36"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:46"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/meta"^^xsd:anyURI ; linkml:imports "linkml:annotations"^^xsd:anyURI, "linkml:extensions"^^xsd:anyURI, @@ -283,6 +283,7 @@ refer to the official URI for each construct, e.g. linkml:is_class_field, linkml:is_direct, linkml:is_grouping_slot, + linkml:is_open, linkml:is_usage_slot, linkml:key, linkml:keywords, @@ -429,8 +430,8 @@ refer to the official URI for each construct, e.g. linkml:values_from, linkml:version ; linkml:source_file "meta.yaml" ; - linkml:source_file_date "2026-05-05T16:16:44"^^xsd:dateTime ; - linkml:source_file_size 99888 ; + linkml:source_file_date "2026-07-27T16:17:57"^^xsd:dateTime ; + linkml:source_file_size 102848 ; linkml:subsets linkml:BasicSubset, linkml:MinimalSubset, linkml:ObjectOrientedProfile, @@ -692,7 +693,7 @@ linkml:abbreviation a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/units"^^xsd:anyURI ; skos:mappingRelation qudt:abbreviation ; linkml:definition_uri "https://w3id.org/linkml/abbreviation"^^xsd:anyURI ; - linkml:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + linkml:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; linkml:domain_of linkml:UnitOfMeasure ; linkml:imported_from "linkml:units" ; linkml:owner linkml:UnitOfMeasure ; @@ -1285,17 +1286,11 @@ Possible values: linkml:domain linkml:ClassDefinition ; linkml:domain_of linkml:ClassDefinition ; linkml:examples [ a linkml:Example ; + linkml:description "Allow all additional data" ; + linkml:object [ linkml:allowed true ] ], + [ a linkml:Example ; linkml:description "Allow additional data if they are instances of the class definition \"AClassDefinition\"" ; linkml:object [ linkml:range_expression [ linkml:range linkml:AClassDefinition ] ] ], - [ a linkml:Example ; - linkml:description """Allow additional data if they are integers. -`required` is meaningless in this context and ignored, since by definition all "extra" slots are optional. -""" ; - linkml:object [ linkml:range_expression [ linkml:range linkml:integer ; - linkml:required true ] ] ], - [ a linkml:Example ; - linkml:description "Forbid any additional data" ; - linkml:object [ linkml:allowed false ] ], [ a linkml:Example ; linkml:description """Allow additional data if they are lists of integers of at most length 5. Note that this does *not* mean that a maximum of 5 extra slots are allowed. @@ -1306,6 +1301,10 @@ Note that this does *not* mean that a maximum of 5 extra slots are allowed. [ a linkml:Example ; linkml:description "Allow additional data that are strings" ; linkml:object [ linkml:range_expression [ linkml:range linkml:string ] ] ], + [ a linkml:Example ; + linkml:description "allow additional data if they are either strings or integers" ; + linkml:object [ linkml:range_expression [ linkml:any_of [ linkml:range linkml:integer ], + [ linkml:range linkml:string ] ] ] ], [ a linkml:Example ; linkml:description """A semantically *invalid* use of `extra_slots`, as extra slots will be forbidden and the `anonymous_slot_expression` will be ignored. @@ -1313,12 +1312,14 @@ Note that this does *not* mean that a maximum of 5 extra slots are allowed. linkml:object [ linkml:allowed false ; linkml:range_expression [ linkml:range linkml:string ] ] ], [ a linkml:Example ; - linkml:description "allow additional data if they are either strings or integers" ; - linkml:object [ linkml:range_expression [ linkml:any_of [ linkml:range linkml:integer ], - [ linkml:range linkml:string ] ] ] ], + linkml:description "Forbid any additional data" ; + linkml:object [ linkml:allowed false ] ], [ a linkml:Example ; - linkml:description "Allow all additional data" ; - linkml:object [ linkml:allowed true ] ] ; + linkml:description """Allow additional data if they are integers. +`required` is meaningless in this context and ignored, since by definition all "extra" slots are optional. +""" ; + linkml:object [ linkml:range_expression [ linkml:range linkml:integer ; + linkml:required true ] ] ] ; linkml:inlined true ; linkml:inlined_as_list true ; linkml:owner linkml:ClassDefinition ; @@ -1413,19 +1414,23 @@ linkml:identifier a linkml:SlotDefinition ; linkml:RelationalModelProfile, linkml:SpecificationSubset ; rdfs:seeAlso "https://en.wikipedia.org/wiki/Identifier"^^xsd:anyURI, + "https://linkml.io/linkml/schemas/constraints.html#unique-keys"^^xsd:anyURI, + "https://linkml.io/linkml/schemas/inlining.html"^^xsd:anyURI, + "linkml:key"^^xsd:anyURI, "linkml:unique_keys"^^xsd:anyURI ; skos:altLabel "ID", "UID", "code", "primary key" ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; - 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" ; + skos:note "A domain can have at most one identifier slot OR a key slot. However a domain can have both an identifier slot and any number of compound keys.", + "An identifier slot is automatically required. Identifiers cannot be optional.", + "The identifier slot is inherited.", + "The presence of an identifier slot makes a class eligible for being referenced rather than inlined.", + "The presence of an identifier slot makes a class eligible for inlining as a dictionary." ; sh:order 5 ; linkml:definition_uri "https://w3id.org/linkml/identifier"^^xsd:anyURI ; - linkml:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; + linkml:description "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document." ; linkml:domain linkml:SlotDefinition ; linkml:domain_of linkml:SlotDefinition ; linkml:inherited true ; @@ -1644,14 +1649,17 @@ linkml:key a linkml:SlotDefinition ; OIO:inSubset linkml:BasicSubset, linkml:RelationalModelProfile, linkml:SpecificationSubset ; - rdfs:seeAlso "linkml:unique_keys"^^xsd:anyURI ; + rdfs:seeAlso "https://linkml.io/linkml/schemas/constraints.html#singular-unique-keys"^^xsd:anyURI, + "https://linkml.io/linkml/schemas/inlining.html"^^xsd:anyURI, + "linkml:identifier"^^xsd:anyURI, + "linkml:unique_keys"^^xsd:anyURI ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; - 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" ; + skos:note "A domain can have at most one key slot OR one identifier slot. However a domain can have both a key slot and any number of compound keys.", + "A key slot is automatically required. Singular unique keys cannot be optional.", + "The key slot is inherited.", + "The presence of a key slot makes a class eligible for inlining as a dictionary." ; linkml:definition_uri "https://w3id.org/linkml/key"^^xsd:anyURI ; - linkml:description "True means that the key slot(s) uniquely identify the elements within a single container" ; + linkml:description "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container." ; linkml:domain linkml:SlotDefinition ; linkml:domain_of linkml:SlotDefinition ; linkml:inherited true ; @@ -1764,9 +1772,9 @@ linkml:maximum_number_dimensions a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; skos:note "maximum_number_dimensions cannot be less than minimum_number_dimensions" ; linkml:any_of [ a linkml:AnonymousSlotExpression ; - linkml:range linkml:boolean ], + linkml:range linkml:integer ], [ a linkml:AnonymousSlotExpression ; - linkml:range linkml:integer ] ; + linkml:range linkml:boolean ] ; linkml:definition_uri "https://w3id.org/linkml/maximum_number_dimensions"^^xsd:anyURI ; linkml:description "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" ; linkml:domain linkml:ArrayExpression ; @@ -2903,11 +2911,15 @@ linkml:unique_keys a linkml:SlotDefinition ; OIO:inSubset linkml:BasicSubset, linkml:RelationalModelProfile, linkml:SpecificationSubset ; - rdfs:seeAlso "https://linkml.io/linkml/schemas/constraints.html#unique-key"^^xsd:anyURI ; + rdfs:seeAlso "https://linkml.io/linkml/schemas/constraints.html#unique-keys"^^xsd:anyURI, + "linkml:identifier"^^xsd:anyURI, + "linkml:key"^^xsd:anyURI ; skos:exactMatch owl:hasKey ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; + skos:note """Not to be confused with a "singular unique key", which is defined by means of the `key` slot, or with an "identifier", which is defined by means of the "identifier" slot. Compound keys, singular unique keys, and identifiers all create a unicity constraint, but singular unique keys and identifiers have additional effects that compound keys do not have. +""" ; linkml:definition_uri "https://w3id.org/linkml/unique_keys"^^xsd:anyURI ; - linkml:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + linkml:description "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key." ; linkml:domain linkml:ClassDefinition ; linkml:domain_of linkml:ClassDefinition ; linkml:inlined true ; @@ -2991,6 +3003,7 @@ linkml:AnonymousEnumExpression a linkml:ClassDefinition ; linkml:concepts, linkml:include, linkml:inherits, + linkml:is_open, linkml:matches, linkml:minus, linkml:permissible_values, @@ -3062,6 +3075,9 @@ linkml:extension_tag a linkml:SlotDefinition ; linkml:extension_value a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; skos:prefLabel "value" ; + linkml:annotations [ a linkml:Annotation ; + skos:example true ; + linkml:tag linkml:simple_dict_value ] ; linkml:definition_uri "https://w3id.org/linkml/extension_value"^^xsd:anyURI ; linkml:description "the actual annotation" ; linkml:domain linkml:Extension ; @@ -3151,20 +3167,6 @@ linkml:ucum_code a linkml:SlotDefinition ; linkml:required true ; linkml:slot_uri "http://qudt.org/schema/qudt/ucumCode"^^xsd:anyURI . -linkml:Annotation a linkml:ClassDefinition ; - skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; - linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; - linkml:definition_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; - linkml:description "a tag/value pair with the semantics of OWL Annotation" ; - linkml:imported_from "linkml:annotations" ; - linkml:is_a linkml:Extension ; - linkml:mixins linkml:Annotatable ; - linkml:slot_usage [ ] ; - linkml:slots linkml:annotations, - linkml:extension_tag, - linkml:extension_value, - linkml:extensions . - linkml:alias a linkml:SlotDefinition ; OIO:inSubset linkml:SpecificationSubset ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; @@ -3421,6 +3423,23 @@ linkml:inherits a linkml:SlotDefinition ; linkml:range linkml:EnumDefinition ; linkml:slot_uri "https://w3id.org/linkml/inherits"^^xsd:anyURI . +linkml:is_open a linkml:SlotDefinition ; + bibo:status "testing"^^xsd:anyURI ; + OIO:inSubset linkml:SpecificationSubset ; + rdfs:seeAlso "https://github.com/linkml/linkml/issues/127"^^xsd:anyURI, + "https://github.com/linkml/linkml/pull/3712"^^xsd:anyURI, + "https://pages.nist.gov/metaschema/specification/syntax/constraints/#allow-other"^^xsd:anyURI ; + skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; + skos:note "An open enumeration is analogous to the `allow-other=\"yes\"` construct in the OSCAL Metamodel.", + "When an enum is open, the permissible value set is not exhaustive - they document the advised, recommended, or expected values but allow values outside the permissible set." ; + linkml:definition_uri "https://w3id.org/linkml/is_open"^^xsd:anyURI ; + linkml:description "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values." ; + linkml:domain linkml:EnumExpression ; + linkml:domain_of linkml:EnumExpression ; + linkml:owner linkml:EnumExpression ; + linkml:range linkml:boolean ; + linkml:slot_uri "https://w3id.org/linkml/is_open"^^xsd:anyURI . + linkml:matches a linkml:SlotDefinition ; OIO:inSubset linkml:SpecificationSubset ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; @@ -3670,6 +3689,20 @@ linkml:type_expression_none_of a linkml:SlotDefinition ; linkml:slot_uri "https://w3id.org/linkml/none_of"^^xsd:anyURI ; linkml:usage_slot_name "none_of" . +linkml:Annotation a linkml:ClassDefinition ; + skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; + linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; + linkml:definition_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; + linkml:description "a tag/value pair with the semantics of OWL Annotation" ; + linkml:imported_from "linkml:annotations" ; + linkml:is_a linkml:Extension ; + linkml:mixins linkml:Annotatable ; + linkml:slot_usage [ ] ; + linkml:slots linkml:annotations, + linkml:extension_tag, + linkml:extension_value, + linkml:extensions . + linkml:AnonymousTypeExpression a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; linkml:class_uri "https://w3id.org/linkml/AnonymousTypeExpression"^^xsd:anyURI ; @@ -4229,6 +4262,7 @@ linkml:EnumDefinition a linkml:ClassDefinition ; linkml:inherits, linkml:instantiates, linkml:is_a, + linkml:is_open, linkml:keywords, linkml:last_updated_on, linkml:local_names, @@ -5339,16 +5373,16 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/units"^^xsd:anyURI ; skos:mappingRelation qudt:Unit ; linkml:any_of [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:iec61360code ], + linkml:slot_conditions linkml:symbol ], [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:exact_mappings ], [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:ucum_code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:symbol ] ; + linkml:slot_conditions linkml:iec61360code ] ; linkml:class_uri "http://qudt.org/schema/qudt/Unit"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/UnitOfMeasure"^^xsd:anyURI ; - linkml:description "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; + linkml:description "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; linkml:imported_from "linkml:units" ; linkml:slot_usage [ ] ; linkml:slots linkml:UnitOfMeasure_exact_mappings, @@ -6084,6 +6118,7 @@ linkml:EnumExpression a linkml:ClassDefinition ; linkml:concepts, linkml:include, linkml:inherits, + linkml:is_open, linkml:matches, linkml:minus, linkml:permissible_values, @@ -6678,3 +6713,4 @@ linkml:SlotDefinition a linkml:ClassDefinition ; linkml:usage_slot_name, linkml:value_presence, linkml:values_from . + diff --git a/linkml_model/rdf/meta.ttl b/linkml_model/rdf/meta.ttl index c03c2ef55..021048e5b 100644 --- a/linkml_model/rdf/meta.ttl +++ b/linkml_model/rdf/meta.ttl @@ -23,42 +23,42 @@ linkml:meta a linkml:SchemaDefinition ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "LinkML Schema Metamodel" ; - sh:declare [ sh:namespace "https://vocab.org/vann/"^^xsd:anyURI ; - sh:prefix "vann" ], - [ sh:namespace "http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#"^^xsd:anyURI ; + sh:declare [ sh:namespace "http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#"^^xsd:anyURI ; sh:prefix "NCIT" ], - [ sh:namespace "http://www.w3.org/2002/07/owl#"^^xsd:anyURI ; - sh:prefix "owl" ], [ sh:namespace "http://www.w3.org/ns/prov#"^^xsd:anyURI ; sh:prefix "prov" ], - [ sh:namespace "http://www.w3.org/ns/shacl#"^^xsd:anyURI ; - sh:prefix "sh" ], - [ sh:namespace "http://purl.org/ontology/bibo/"^^xsd:anyURI ; - sh:prefix "bibo" ], [ sh:namespace "http://qudt.org/schema/qudt/"^^xsd:anyURI ; sh:prefix "qudt" ], - [ sh:namespace "http://schema.org/"^^xsd:anyURI ; - sh:prefix "schema" ], - [ sh:namespace "http://www.w3.org/2003/11/swrl#"^^xsd:anyURI ; - sh:prefix "swrl" ], + [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:prefix "skos" ], [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; sh:prefix "pav" ], - [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; - sh:prefix "oslc" ], - [ sh:namespace "http://www.geneontology.org/formats/oboInOwl#"^^xsd:anyURI ; - sh:prefix "OIO" ], - [ sh:namespace "http://semanticscience.org/resource/SIO_"^^xsd:anyURI ; - sh:prefix "SIO" ], + [ sh:namespace "http://www.w3.org/2008/05/skos-xl#"^^xsd:anyURI ; + sh:prefix "skosxl" ], + [ sh:namespace "http://purl.org/ontology/bibo/"^^xsd:anyURI ; + sh:prefix "bibo" ], [ sh:namespace "http://rdf.cdisc.org/mms#"^^xsd:anyURI ; sh:prefix "cdisc" ], + [ sh:namespace "http://www.geneontology.org/formats/oboInOwl#"^^xsd:anyURI ; + sh:prefix "OIO" ], [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; sh:prefix "linkml" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; - sh:prefix "skos" ], - [ sh:namespace "http://www.w3.org/2008/05/skos-xl#"^^xsd:anyURI ; - sh:prefix "skosxl" ], + [ sh:namespace "http://www.w3.org/ns/shacl#"^^xsd:anyURI ; + sh:prefix "sh" ], [ sh:namespace "http://purl.org/linked-data/cube#"^^xsd:anyURI ; - sh:prefix "qb" ] ; + sh:prefix "qb" ], + [ sh:namespace "http://open-services.net/ns/core#"^^xsd:anyURI ; + sh:prefix "oslc" ], + [ sh:namespace "http://schema.org/"^^xsd:anyURI ; + sh:prefix "schema" ], + [ sh:namespace "https://vocab.org/vann/"^^xsd:anyURI ; + sh:prefix "vann" ], + [ sh:namespace "http://semanticscience.org/resource/SIO_"^^xsd:anyURI ; + sh:prefix "SIO" ], + [ sh:namespace "http://www.w3.org/2003/11/swrl#"^^xsd:anyURI ; + sh:prefix "swrl" ], + [ sh:namespace "http://www.w3.org/2002/07/owl#"^^xsd:anyURI ; + sh:prefix "owl" ] ; linkml:classes linkml:AltDescription, linkml:Annotatable, linkml:Annotation, @@ -148,7 +148,7 @@ refer to the official URI for each construct, e.g. linkml:presence_enum, linkml:pv_formula_options, linkml:relational_role_enum ; - linkml:generation_date "2026-05-05T18:49:31"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:41"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/meta"^^xsd:anyURI ; linkml:imports "linkml:annotations"^^xsd:anyURI, "linkml:extensions"^^xsd:anyURI, @@ -283,6 +283,7 @@ refer to the official URI for each construct, e.g. linkml:is_class_field, linkml:is_direct, linkml:is_grouping_slot, + linkml:is_open, linkml:is_usage_slot, linkml:key, linkml:keywords, @@ -429,8 +430,8 @@ refer to the official URI for each construct, e.g. linkml:values_from, linkml:version ; linkml:source_file "meta.yaml" ; - linkml:source_file_date "2026-05-05T16:16:44"^^xsd:dateTime ; - linkml:source_file_size 99888 ; + linkml:source_file_date "2026-07-27T16:17:57"^^xsd:dateTime ; + linkml:source_file_size 102848 ; linkml:subsets linkml:BasicSubset, linkml:MinimalSubset, linkml:ObjectOrientedProfile, @@ -692,7 +693,7 @@ linkml:abbreviation a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/units"^^xsd:anyURI ; skos:mappingRelation qudt:abbreviation ; linkml:definition_uri "https://w3id.org/linkml/abbreviation"^^xsd:anyURI ; - linkml:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + linkml:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; linkml:domain_of linkml:UnitOfMeasure ; linkml:imported_from "linkml:units" ; linkml:owner linkml:UnitOfMeasure ; @@ -1291,34 +1292,34 @@ Possible values: linkml:object [ linkml:allowed false ; linkml:range_expression [ linkml:range linkml:string ] ] ], [ a linkml:Example ; - linkml:description """Allow additional data if they are lists of integers of at most length 5. -Note that this does *not* mean that a maximum of 5 extra slots are allowed. + linkml:description "allow additional data if they are either strings or integers" ; + linkml:object [ linkml:range_expression [ linkml:any_of [ linkml:range linkml:integer ], + [ linkml:range linkml:string ] ] ] ], + [ a linkml:Example ; + linkml:description """Allow additional data if they are integers. +`required` is meaningless in this context and ignored, since by definition all "extra" slots are optional. """ ; - linkml:object [ linkml:range_expression [ linkml:maximum_cardinality 5 ; - linkml:multivalued true ; - linkml:range linkml:integer ] ] ], + linkml:object [ linkml:range_expression [ linkml:range linkml:integer ; + linkml:required true ] ] ], [ a linkml:Example ; linkml:description "Allow additional data that are strings" ; linkml:object [ linkml:range_expression [ linkml:range linkml:string ] ] ], - [ a linkml:Example ; - linkml:description "Allow all additional data" ; - linkml:object [ linkml:allowed true ] ], [ a linkml:Example ; linkml:description "Allow additional data if they are instances of the class definition \"AClassDefinition\"" ; linkml:object [ linkml:range_expression [ linkml:range linkml:AClassDefinition ] ] ], [ a linkml:Example ; - linkml:description "Forbid any additional data" ; - linkml:object [ linkml:allowed false ] ], + linkml:description "Allow all additional data" ; + linkml:object [ linkml:allowed true ] ], [ a linkml:Example ; - linkml:description """Allow additional data if they are integers. -`required` is meaningless in this context and ignored, since by definition all "extra" slots are optional. + linkml:description """Allow additional data if they are lists of integers of at most length 5. +Note that this does *not* mean that a maximum of 5 extra slots are allowed. """ ; - linkml:object [ linkml:range_expression [ linkml:range linkml:integer ; - linkml:required true ] ] ], + linkml:object [ linkml:range_expression [ linkml:maximum_cardinality 5 ; + linkml:multivalued true ; + linkml:range linkml:integer ] ] ], [ a linkml:Example ; - linkml:description "allow additional data if they are either strings or integers" ; - linkml:object [ linkml:range_expression [ linkml:any_of [ linkml:range linkml:integer ], - [ linkml:range linkml:string ] ] ] ] ; + linkml:description "Forbid any additional data" ; + linkml:object [ linkml:allowed false ] ] ; linkml:inlined true ; linkml:inlined_as_list true ; linkml:owner linkml:ClassDefinition ; @@ -1413,19 +1414,23 @@ linkml:identifier a linkml:SlotDefinition ; linkml:RelationalModelProfile, linkml:SpecificationSubset ; rdfs:seeAlso "https://en.wikipedia.org/wiki/Identifier"^^xsd:anyURI, + "https://linkml.io/linkml/schemas/constraints.html#unique-keys"^^xsd:anyURI, + "https://linkml.io/linkml/schemas/inlining.html"^^xsd:anyURI, + "linkml:key"^^xsd:anyURI, "linkml:unique_keys"^^xsd:anyURI ; skos:altLabel "ID", "UID", "code", "primary key" ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; - 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" ; + skos:note "A domain can have at most one identifier slot OR a key slot. However a domain can have both an identifier slot and any number of compound keys.", + "An identifier slot is automatically required. Identifiers cannot be optional.", + "The identifier slot is inherited.", + "The presence of an identifier slot makes a class eligible for being referenced rather than inlined.", + "The presence of an identifier slot makes a class eligible for inlining as a dictionary." ; sh:order 5 ; linkml:definition_uri "https://w3id.org/linkml/identifier"^^xsd:anyURI ; - linkml:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; + linkml:description "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document." ; linkml:domain linkml:SlotDefinition ; linkml:domain_of linkml:SlotDefinition ; linkml:inherited true ; @@ -1644,14 +1649,17 @@ linkml:key a linkml:SlotDefinition ; OIO:inSubset linkml:BasicSubset, linkml:RelationalModelProfile, linkml:SpecificationSubset ; - rdfs:seeAlso "linkml:unique_keys"^^xsd:anyURI ; + rdfs:seeAlso "https://linkml.io/linkml/schemas/constraints.html#singular-unique-keys"^^xsd:anyURI, + "https://linkml.io/linkml/schemas/inlining.html"^^xsd:anyURI, + "linkml:identifier"^^xsd:anyURI, + "linkml:unique_keys"^^xsd:anyURI ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; - 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" ; + skos:note "A domain can have at most one key slot OR one identifier slot. However a domain can have both a key slot and any number of compound keys.", + "A key slot is automatically required. Singular unique keys cannot be optional.", + "The key slot is inherited.", + "The presence of a key slot makes a class eligible for inlining as a dictionary." ; linkml:definition_uri "https://w3id.org/linkml/key"^^xsd:anyURI ; - linkml:description "True means that the key slot(s) uniquely identify the elements within a single container" ; + linkml:description "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container." ; linkml:domain linkml:SlotDefinition ; linkml:domain_of linkml:SlotDefinition ; linkml:inherited true ; @@ -1764,9 +1772,9 @@ linkml:maximum_number_dimensions a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; skos:note "maximum_number_dimensions cannot be less than minimum_number_dimensions" ; linkml:any_of [ a linkml:AnonymousSlotExpression ; - linkml:range linkml:boolean ], + linkml:range linkml:integer ], [ a linkml:AnonymousSlotExpression ; - linkml:range linkml:integer ] ; + linkml:range linkml:boolean ] ; linkml:definition_uri "https://w3id.org/linkml/maximum_number_dimensions"^^xsd:anyURI ; linkml:description "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" ; linkml:domain linkml:ArrayExpression ; @@ -2903,11 +2911,15 @@ linkml:unique_keys a linkml:SlotDefinition ; OIO:inSubset linkml:BasicSubset, linkml:RelationalModelProfile, linkml:SpecificationSubset ; - rdfs:seeAlso "https://linkml.io/linkml/schemas/constraints.html#unique-key"^^xsd:anyURI ; + rdfs:seeAlso "https://linkml.io/linkml/schemas/constraints.html#unique-keys"^^xsd:anyURI, + "linkml:identifier"^^xsd:anyURI, + "linkml:key"^^xsd:anyURI ; skos:exactMatch owl:hasKey ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; + skos:note """Not to be confused with a "singular unique key", which is defined by means of the `key` slot, or with an "identifier", which is defined by means of the "identifier" slot. Compound keys, singular unique keys, and identifiers all create a unicity constraint, but singular unique keys and identifiers have additional effects that compound keys do not have. +""" ; linkml:definition_uri "https://w3id.org/linkml/unique_keys"^^xsd:anyURI ; - linkml:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + linkml:description "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key." ; linkml:domain linkml:ClassDefinition ; linkml:domain_of linkml:ClassDefinition ; linkml:inlined true ; @@ -2991,6 +3003,7 @@ linkml:AnonymousEnumExpression a linkml:ClassDefinition ; linkml:concepts, linkml:include, linkml:inherits, + linkml:is_open, linkml:matches, linkml:minus, linkml:permissible_values, @@ -3062,6 +3075,9 @@ linkml:extension_tag a linkml:SlotDefinition ; linkml:extension_value a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; skos:prefLabel "value" ; + linkml:annotations [ a linkml:Annotation ; + skos:example true ; + linkml:tag linkml:simple_dict_value ] ; linkml:definition_uri "https://w3id.org/linkml/extension_value"^^xsd:anyURI ; linkml:description "the actual annotation" ; linkml:domain linkml:Extension ; @@ -3151,20 +3167,6 @@ linkml:ucum_code a linkml:SlotDefinition ; linkml:required true ; linkml:slot_uri "http://qudt.org/schema/qudt/ucumCode"^^xsd:anyURI . -linkml:Annotation a linkml:ClassDefinition ; - skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; - linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; - linkml:definition_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; - linkml:description "a tag/value pair with the semantics of OWL Annotation" ; - linkml:imported_from "linkml:annotations" ; - linkml:is_a linkml:Extension ; - linkml:mixins linkml:Annotatable ; - linkml:slot_usage [ ] ; - linkml:slots linkml:annotations, - linkml:extension_tag, - linkml:extension_value, - linkml:extensions . - linkml:alias a linkml:SlotDefinition ; OIO:inSubset linkml:SpecificationSubset ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; @@ -3421,6 +3423,23 @@ linkml:inherits a linkml:SlotDefinition ; linkml:range linkml:EnumDefinition ; linkml:slot_uri "https://w3id.org/linkml/inherits"^^xsd:anyURI . +linkml:is_open a linkml:SlotDefinition ; + bibo:status "testing"^^xsd:anyURI ; + OIO:inSubset linkml:SpecificationSubset ; + rdfs:seeAlso "https://github.com/linkml/linkml/issues/127"^^xsd:anyURI, + "https://github.com/linkml/linkml/pull/3712"^^xsd:anyURI, + "https://pages.nist.gov/metaschema/specification/syntax/constraints/#allow-other"^^xsd:anyURI ; + skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; + skos:note "An open enumeration is analogous to the `allow-other=\"yes\"` construct in the OSCAL Metamodel.", + "When an enum is open, the permissible value set is not exhaustive - they document the advised, recommended, or expected values but allow values outside the permissible set." ; + linkml:definition_uri "https://w3id.org/linkml/is_open"^^xsd:anyURI ; + linkml:description "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values." ; + linkml:domain linkml:EnumExpression ; + linkml:domain_of linkml:EnumExpression ; + linkml:owner linkml:EnumExpression ; + linkml:range linkml:boolean ; + linkml:slot_uri "https://w3id.org/linkml/is_open"^^xsd:anyURI . + linkml:matches a linkml:SlotDefinition ; OIO:inSubset linkml:SpecificationSubset ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; @@ -3670,6 +3689,20 @@ linkml:type_expression_none_of a linkml:SlotDefinition ; linkml:slot_uri "https://w3id.org/linkml/none_of"^^xsd:anyURI ; linkml:usage_slot_name "none_of" . +linkml:Annotation a linkml:ClassDefinition ; + skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; + linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; + linkml:definition_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; + linkml:description "a tag/value pair with the semantics of OWL Annotation" ; + linkml:imported_from "linkml:annotations" ; + linkml:is_a linkml:Extension ; + linkml:mixins linkml:Annotatable ; + linkml:slot_usage [ ] ; + linkml:slots linkml:annotations, + linkml:extension_tag, + linkml:extension_value, + linkml:extensions . + linkml:AnonymousTypeExpression a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/meta"^^xsd:anyURI ; linkml:class_uri "https://w3id.org/linkml/AnonymousTypeExpression"^^xsd:anyURI ; @@ -4229,6 +4262,7 @@ linkml:EnumDefinition a linkml:ClassDefinition ; linkml:inherits, linkml:instantiates, linkml:is_a, + linkml:is_open, linkml:keywords, linkml:last_updated_on, linkml:local_names, @@ -5339,16 +5373,16 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/units"^^xsd:anyURI ; skos:mappingRelation qudt:Unit ; linkml:any_of [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:symbol ], + linkml:slot_conditions linkml:ucum_code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:iec61360code ], + linkml:slot_conditions linkml:symbol ], [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:exact_mappings ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:ucum_code ] ; + linkml:slot_conditions linkml:iec61360code ] ; linkml:class_uri "http://qudt.org/schema/qudt/Unit"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/UnitOfMeasure"^^xsd:anyURI ; - linkml:description "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; + linkml:description "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; linkml:imported_from "linkml:units" ; linkml:slot_usage [ ] ; linkml:slots linkml:UnitOfMeasure_exact_mappings, @@ -6084,6 +6118,7 @@ linkml:EnumExpression a linkml:ClassDefinition ; linkml:concepts, linkml:include, linkml:inherits, + linkml:is_open, linkml:matches, linkml:minus, linkml:permissible_values, @@ -6678,3 +6713,4 @@ linkml:SlotDefinition a linkml:ClassDefinition ; linkml:usage_slot_name, linkml:value_presence, linkml:values_from . + diff --git a/linkml_model/rdf/types.model.ttl b/linkml_model/rdf/types.model.ttl index 5f36a341d..f260ac74e 100644 --- a/linkml_model/rdf/types.model.ttl +++ b/linkml_model/rdf/types.model.ttl @@ -7,22 +7,22 @@ linkml:types a linkml:SchemaDefinition ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "Core LinkML metamodel types" ; - sh:declare [ sh:namespace "http://www.w3.org/2001/XMLSchema#"^^xsd:anyURI ; - sh:prefix "xsd" ], + sh:declare [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; + sh:prefix "linkml" ], [ sh:namespace "http://www.w3.org/ns/shex#"^^xsd:anyURI ; sh:prefix "shex" ], [ sh:namespace "http://schema.org/"^^xsd:anyURI ; sh:prefix "schema" ], - [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; - sh:prefix "linkml" ] ; + [ sh:namespace "http://www.w3.org/2001/XMLSchema#"^^xsd:anyURI ; + sh:prefix "xsd" ] ; linkml:default_prefix "linkml" ; linkml:default_range linkml:string ; linkml:description "Shared type definitions for the core LinkML mode and metamodel" ; - linkml:generation_date "2026-05-05T18:49:42"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:52"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:source_file "types.yaml" ; - linkml:source_file_date "2026-05-05T18:15:59"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 7296 ; linkml:types linkml:boolean, linkml:curie, @@ -230,3 +230,4 @@ linkml:string a linkml:TypeDefinition ; linkml:definition_uri "https://w3id.org/linkml/String"^^xsd:anyURI ; linkml:description "A character string" ; linkml:uri "http://www.w3.org/2001/XMLSchema#string"^^xsd:anyURI . + diff --git a/linkml_model/rdf/types.ttl b/linkml_model/rdf/types.ttl index f89c2df4e..cd7c2e0f8 100644 --- a/linkml_model/rdf/types.ttl +++ b/linkml_model/rdf/types.ttl @@ -7,22 +7,22 @@ linkml:types a linkml:SchemaDefinition ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "Core LinkML metamodel types" ; - sh:declare [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; - sh:prefix "linkml" ], - [ sh:namespace "http://www.w3.org/2001/XMLSchema#"^^xsd:anyURI ; + sh:declare [ sh:namespace "http://www.w3.org/2001/XMLSchema#"^^xsd:anyURI ; sh:prefix "xsd" ], + [ sh:namespace "http://www.w3.org/ns/shex#"^^xsd:anyURI ; + sh:prefix "shex" ], [ sh:namespace "http://schema.org/"^^xsd:anyURI ; sh:prefix "schema" ], - [ sh:namespace "http://www.w3.org/ns/shex#"^^xsd:anyURI ; - sh:prefix "shex" ] ; + [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; + sh:prefix "linkml" ] ; linkml:default_prefix "linkml" ; linkml:default_range linkml:string ; linkml:description "Shared type definitions for the core LinkML mode and metamodel" ; - linkml:generation_date "2026-05-05T18:49:41"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:51"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:source_file "types.yaml" ; - linkml:source_file_date "2026-05-05T18:15:59"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 7296 ; linkml:types linkml:boolean, linkml:curie, @@ -230,3 +230,4 @@ linkml:string a linkml:TypeDefinition ; linkml:definition_uri "https://w3id.org/linkml/String"^^xsd:anyURI ; linkml:description "A character string" ; linkml:uri "http://www.w3.org/2001/XMLSchema#string"^^xsd:anyURI . + diff --git a/linkml_model/rdf/units.model.ttl b/linkml_model/rdf/units.model.ttl index a00562bd3..497cd23fc 100644 --- a/linkml_model/rdf/units.model.ttl +++ b/linkml_model/rdf/units.model.ttl @@ -10,10 +10,10 @@ linkml:units a linkml:SchemaDefinition ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; - sh:declare [ sh:namespace "http://qudt.org/schema/qudt/"^^xsd:anyURI ; - sh:prefix "qudt" ], - [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; - sh:prefix "linkml" ] ; + sh:declare [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; + sh:prefix "linkml" ], + [ sh:namespace "http://qudt.org/schema/qudt/"^^xsd:anyURI ; + sh:prefix "qudt" ] ; linkml:classes linkml:Annotatable, linkml:Annotation, linkml:AnyValue, @@ -30,13 +30,13 @@ linkml:units a linkml:SchemaDefinition ; "rdfs", "skos", "xsd" ; - linkml:generation_date "2026-05-05T18:49:46"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:57"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/units"^^xsd:anyURI ; linkml:imports "linkml:annotations"^^xsd:anyURI, "linkml:extensions"^^xsd:anyURI, "linkml:mappings"^^xsd:anyURI, "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:slots linkml:UnitOfMeasure_exact_mappings, linkml:abbreviation, linkml:annotations, @@ -59,7 +59,7 @@ linkml:units a linkml:SchemaDefinition ; linkml:ucum_code, linkml:unit ; linkml:source_file "units.yaml" ; - linkml:source_file_date "2026-05-05T18:16:00"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 2801 ; linkml:types linkml:boolean, linkml:curie, @@ -451,6 +451,9 @@ linkml:extension_tag a linkml:SlotDefinition ; linkml:extension_value a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; skos:prefLabel "value" ; + linkml:annotations [ a linkml:Annotation ; + skos:example true ; + linkml:tag linkml:simple_dict_value ] ; linkml:definition_uri "https://w3id.org/linkml/extension_value"^^xsd:anyURI ; linkml:description "the actual annotation" ; linkml:domain linkml:Extension ; @@ -507,6 +510,16 @@ linkml:Annotatable a linkml:ClassDefinition ; linkml:slot_usage [ ] ; linkml:slots linkml:annotations . +linkml:Extensible a linkml:ClassDefinition ; + skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; + linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:description "mixin for classes that support extension" ; + linkml:imported_from "linkml:extensions" ; + linkml:mixin true ; + linkml:slot_usage [ ] ; + linkml:slots linkml:extensions . + linkml:Annotation a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; @@ -521,16 +534,6 @@ linkml:Annotation a linkml:ClassDefinition ; linkml:extension_value, linkml:extensions . -linkml:Extensible a linkml:ClassDefinition ; - skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; - linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:description "mixin for classes that support extension" ; - linkml:imported_from "linkml:extensions" ; - linkml:mixin true ; - linkml:slot_usage [ ] ; - linkml:slots linkml:extensions . - linkml:extensions a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/extensions"^^xsd:anyURI ; @@ -594,13 +597,13 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/units"^^xsd:anyURI ; skos:mappingRelation qudt:Unit ; linkml:any_of [ a linkml:AnonymousClassExpression ; + linkml:slot_conditions linkml:ucum_code ], + [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:symbol ], [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:iec61360code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:exact_mappings ], - [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:ucum_code ] ; + linkml:slot_conditions linkml:exact_mappings ] ; linkml:class_uri "http://qudt.org/schema/qudt/Unit"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/UnitOfMeasure"^^xsd:anyURI ; linkml:description "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; @@ -613,3 +616,4 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; linkml:iec61360code, linkml:symbol, linkml:ucum_code . + diff --git a/linkml_model/rdf/units.ttl b/linkml_model/rdf/units.ttl index cfc88dbaf..2a064685f 100644 --- a/linkml_model/rdf/units.ttl +++ b/linkml_model/rdf/units.ttl @@ -30,13 +30,13 @@ linkml:units a linkml:SchemaDefinition ; "rdfs", "skos", "xsd" ; - linkml:generation_date "2026-05-05T18:49:43"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:30:53"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/units"^^xsd:anyURI ; linkml:imports "linkml:annotations"^^xsd:anyURI, "linkml:extensions"^^xsd:anyURI, "linkml:mappings"^^xsd:anyURI, "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:slots linkml:UnitOfMeasure_exact_mappings, linkml:abbreviation, linkml:annotations, @@ -59,7 +59,7 @@ linkml:units a linkml:SchemaDefinition ; linkml:ucum_code, linkml:unit ; linkml:source_file "units.yaml" ; - linkml:source_file_date "2026-05-05T18:16:00"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 2801 ; linkml:types linkml:boolean, linkml:curie, @@ -451,6 +451,9 @@ linkml:extension_tag a linkml:SlotDefinition ; linkml:extension_value a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; skos:prefLabel "value" ; + linkml:annotations [ a linkml:Annotation ; + skos:example true ; + linkml:tag linkml:simple_dict_value ] ; linkml:definition_uri "https://w3id.org/linkml/extension_value"^^xsd:anyURI ; linkml:description "the actual annotation" ; linkml:domain linkml:Extension ; @@ -507,6 +510,16 @@ linkml:Annotatable a linkml:ClassDefinition ; linkml:slot_usage [ ] ; linkml:slots linkml:annotations . +linkml:Extensible a linkml:ClassDefinition ; + skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; + linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; + linkml:description "mixin for classes that support extension" ; + linkml:imported_from "linkml:extensions" ; + linkml:mixin true ; + linkml:slot_usage [ ] ; + linkml:slots linkml:extensions . + linkml:Annotation a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/annotations"^^xsd:anyURI ; linkml:class_uri "https://w3id.org/linkml/Annotation"^^xsd:anyURI ; @@ -521,16 +534,6 @@ linkml:Annotation a linkml:ClassDefinition ; linkml:extension_value, linkml:extensions . -linkml:Extensible a linkml:ClassDefinition ; - skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; - linkml:class_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:definition_uri "https://w3id.org/linkml/Extensible"^^xsd:anyURI ; - linkml:description "mixin for classes that support extension" ; - linkml:imported_from "linkml:extensions" ; - linkml:mixin true ; - linkml:slot_usage [ ] ; - linkml:slots linkml:extensions . - linkml:extensions a linkml:SlotDefinition ; skos:inScheme "https://w3id.org/linkml/extensions"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/extensions"^^xsd:anyURI ; @@ -594,13 +597,13 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; skos:inScheme "https://w3id.org/linkml/units"^^xsd:anyURI ; skos:mappingRelation qudt:Unit ; linkml:any_of [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:symbol ], + linkml:slot_conditions linkml:iec61360code ], [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:exact_mappings ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:iec61360code ], + linkml:slot_conditions linkml:ucum_code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:ucum_code ] ; + linkml:slot_conditions linkml:symbol ] ; linkml:class_uri "http://qudt.org/schema/qudt/Unit"^^xsd:anyURI ; linkml:definition_uri "https://w3id.org/linkml/UnitOfMeasure"^^xsd:anyURI ; linkml:description "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; @@ -613,3 +616,4 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; linkml:iec61360code, linkml:symbol, linkml:ucum_code . + diff --git a/linkml_model/rdf/validation.model.ttl b/linkml_model/rdf/validation.model.ttl index c76acee0e..8c509923c 100644 --- a/linkml_model/rdf/validation.model.ttl +++ b/linkml_model/rdf/validation.model.ttl @@ -9,16 +9,16 @@ linkml:reporting a linkml:SchemaDefinition ; dcterms:title "LinkML Report Metamodel" ; sh:declare [ sh:namespace "https://w3id.org/shacl/"^^xsd:anyURI ; sh:prefix "sh" ], - [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; - sh:prefix "reporting" ], - [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; - sh:prefix "skos" ], [ sh:namespace "http://schema.org/"^^xsd:anyURI ; sh:prefix "schema" ], + [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; + sh:prefix "pav" ], + [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; + sh:prefix "reporting" ], [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; sh:prefix "linkml" ], - [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; - sh:prefix "pav" ] ; + [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; + sh:prefix "skos" ] ; linkml:classes linkml:ValidationReport, linkml:ValidationResult ; linkml:default_curi_maps "semweb_context" ; @@ -32,10 +32,10 @@ linkml:reporting a linkml:SchemaDefinition ; "xsd" ; linkml:enums linkml:problem_type, linkml:severity_options ; - linkml:generation_date "2026-05-05T18:49:52"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:31:02"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/reporting"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:slots linkml:info, linkml:instantiates, linkml:node_source, @@ -47,7 +47,7 @@ linkml:reporting a linkml:SchemaDefinition ; linkml:type, linkml:validationReport__results ; linkml:source_file "validation.yaml" ; - linkml:source_file_date "2026-05-05T18:16:03"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 2959 ; linkml:types linkml:boolean, linkml:curie, @@ -429,3 +429,4 @@ linkml:ValidationResult a linkml:ClassDefinition ; linkml:severity, linkml:subject, linkml:type . + diff --git a/linkml_model/rdf/validation.ttl b/linkml_model/rdf/validation.ttl index 8457c3fc8..0dd421858 100644 --- a/linkml_model/rdf/validation.ttl +++ b/linkml_model/rdf/validation.ttl @@ -7,18 +7,18 @@ linkml:reporting a linkml:SchemaDefinition ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "LinkML Report Metamodel" ; - sh:declare [ sh:namespace "https://w3id.org/shacl/"^^xsd:anyURI ; + sh:declare [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; + sh:prefix "reporting" ], + [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; + sh:prefix "pav" ], + [ sh:namespace "https://w3id.org/shacl/"^^xsd:anyURI ; sh:prefix "sh" ], - [ sh:namespace "http://schema.org/"^^xsd:anyURI ; - sh:prefix "schema" ], [ sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI ; sh:prefix "linkml" ], [ sh:namespace "http://www.w3.org/2004/02/skos/core#"^^xsd:anyURI ; sh:prefix "skos" ], - [ sh:namespace "http://purl.org/pav/"^^xsd:anyURI ; - sh:prefix "pav" ], - [ sh:namespace "https://w3id.org/linkml/report"^^xsd:anyURI ; - sh:prefix "reporting" ] ; + [ sh:namespace "http://schema.org/"^^xsd:anyURI ; + sh:prefix "schema" ] ; linkml:classes linkml:ValidationReport, linkml:ValidationResult ; linkml:default_curi_maps "semweb_context" ; @@ -32,10 +32,10 @@ linkml:reporting a linkml:SchemaDefinition ; "xsd" ; linkml:enums linkml:problem_type, linkml:severity_options ; - linkml:generation_date "2026-05-05T18:49:50"^^xsd:dateTime ; + linkml:generation_date "2026-07-27T16:31:00"^^xsd:dateTime ; linkml:id "https://w3id.org/linkml/reporting"^^xsd:anyURI ; linkml:imports "linkml:types"^^xsd:anyURI ; - linkml:metamodel_version "1.7.0" ; + linkml:metamodel_version "1.11.0" ; linkml:slots linkml:info, linkml:instantiates, linkml:node_source, @@ -47,7 +47,7 @@ linkml:reporting a linkml:SchemaDefinition ; linkml:type, linkml:validationReport__results ; linkml:source_file "validation.yaml" ; - linkml:source_file_date "2026-05-05T18:16:03"^^xsd:dateTime ; + linkml:source_file_date "2026-07-02T12:53:02"^^xsd:dateTime ; linkml:source_file_size 2959 ; linkml:types linkml:boolean, linkml:curie, @@ -429,3 +429,4 @@ linkml:ValidationResult a linkml:ClassDefinition ; linkml:severity, linkml:subject, linkml:type . + diff --git a/linkml_model/shacl/meta.shacl.ttl b/linkml_model/shacl/meta.shacl.ttl index 418d28583..24f0aa3d3 100644 --- a/linkml_model/shacl/meta.shacl.ttl +++ b/linkml_model/shacl/meta.shacl.ttl @@ -28,72 +28,85 @@ linkml:Annotatable a sh:NodeShape ; linkml:AnonymousExpression a sh:NodeShape ; rdfs:comment "An abstract parent class for any nested expression" ; sh:closed false ; - sh:ignoredProperties ( linkml:exact_cardinality linkml:array linkml:none_of linkml:implicit_prefix linkml:is_a linkml:slot_conditions linkml:minimum_cardinality linkml:any_of linkml:has_member linkml:range_expression linkml:pattern linkml:inlined_as_list linkml:structured_pattern rdf:type linkml:minimum_value linkml:exactly_one_of linkml:inlined linkml:value_presence linkml:equals_expression linkml:all_members linkml:maximum_cardinality linkml:enum_range linkml:maximum_value linkml:equals_string_in linkml:all_of linkml:equals_number linkml:range linkml:multivalued qudt:unit linkml:required linkml:equals_string linkml:bindings linkml:recommended ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:ignoredProperties ( linkml:equals_string linkml:required linkml:multivalued linkml:exactly_one_of linkml:equals_number linkml:all_members linkml:is_a linkml:pattern linkml:slot_conditions linkml:all_of linkml:bindings linkml:range_expression linkml:equals_expression linkml:array linkml:implicit_prefix linkml:any_of linkml:maximum_cardinality linkml:equals_string_in linkml:minimum_value linkml:inlined linkml:range linkml:none_of linkml:minimum_cardinality qudt:unit linkml:recommended linkml:exact_cardinality linkml:inlined_as_list linkml:value_presence rdf:type linkml:has_member linkml:enum_range linkml:maximum_value linkml:structured_pattern ) ; + sh:property [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path sh:order ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 28 ; + sh:path pav:createdOn ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:narrowMatch ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path skos:editorialNote ], + sh:order 17 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path skos:relatedMatch ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path skos:inScheme ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path oslc:modifiedBy ], [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 31 ; sh:path bibo:status ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:broadMatch ], + sh:order 15 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path schema1:inLanguage ], + sh:order 5 ; + sh:path linkml:deprecated ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path linkml:imported_from ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; + sh:order 4 ; + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path skos:inScheme ], + sh:order 25 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path skos:note ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path dcterms:contributor ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 34 ; - sh:path schema1:keywords ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path pav:createdBy ], + sh:order 18 ; + sh:path skos:altLabel ], [ sh:datatype xsd:string ; sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; @@ -104,105 +117,92 @@ linkml:AnonymousExpression a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path linkml:extensions ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 19 ; - sh:path skosxl:altLabel ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path oslc:modifiedBy ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path dcterms:subject ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 29 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path dcterms:title ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path dcterms:source ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:deprecated ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:order 2 ; + sh:path skos:definition ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:examples ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path rdfs:seeAlso ], + sh:order 1 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path skos:altLabel ], + sh:order 12 ; + sh:path linkml:imported_from ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 21 ; sh:path skos:exactMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:alt_descriptions ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 22 ; + sh:path skos:closeMatch ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 10 ; sh:path OIO:inSubset ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 14 ; + sh:path schema1:inLanguage ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path dcterms:subject ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; sh:order 20 ; sh:path skos:mappingRelation ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path dcterms:contributor ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 19 ; + sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 34 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path skos:definition ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:annotations ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 32 ; + sh:path sh:order ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 26 ; + sh:path pav:createdBy ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 28 ; - sh:path pav:createdOn ] ; + sh:order 29 ; + sh:path pav:lastUpdatedOn ] ; sh:targetClass linkml:AnonymousExpression . linkml:Any a sh:NodeShape ; @@ -220,147 +220,177 @@ linkml:ClassExpression a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path linkml:any_of ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:all_of ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; sh:path linkml:none_of ], [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:exactly_one_of ], + sh:order 3 ; + sh:path linkml:all_of ], [ sh:class linkml:SlotDefinition ; sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml:slot_conditions ] ; + sh:path linkml:slot_conditions ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml:exactly_one_of ] ; sh:targetClass linkml:ClassExpression . linkml:ClassLevelRule a sh:NodeShape ; rdfs:comment "A rule that is applied to classes" ; sh:closed false ; - sh:ignoredProperties ( pav:createdOn linkml:extensions sh:deactivated OIO:inSubset linkml:todos skosxl:altLabel linkml:deprecated linkml:alt_descriptions dcterms:title rdfs:seeAlso skos:closeMatch skos:definition skos:broadMatch dcterms:source linkml:imported_from schema1:inLanguage skos:relatedMatch schema1:keywords rdf:type linkml:elseconditions linkml:examples skos:narrowMatch linkml:annotations linkml:open_world dcterms:contributor sh:condition oslc:modifiedBy skos:inScheme linkml:bidirectional pav:createdBy linkml:deprecated_element_has_exact_replacement linkml:postconditions skos:mappingRelation linkml:deprecated_element_has_possible_replacement bibo:status skos:editorialNote skos:note skos:altLabel pav:lastUpdatedOn sh:order dcterms:subject skos:exactMatch ) ; + sh:ignoredProperties ( sh:deactivated skos:inScheme pav:lastUpdatedOn oslc:modifiedBy linkml:bidirectional linkml:deprecated_element_has_possible_replacement pav:createdBy dcterms:title linkml:deprecated_element_has_exact_replacement OIO:inSubset schema1:keywords skos:broadMatch skos:narrowMatch skos:definition linkml:alt_descriptions linkml:annotations linkml:imported_from schema1:inLanguage linkml:todos sh:order skos:mappingRelation sh:condition linkml:examples skos:exactMatch skos:relatedMatch linkml:extensions dcterms:subject skos:editorialNote skosxl:altLabel rdf:type dcterms:contributor dcterms:source skos:closeMatch pav:createdOn skos:altLabel bibo:status linkml:open_world skos:note linkml:elseconditions rdfs:seeAlso linkml:deprecated linkml:postconditions ) ; sh:targetClass linkml:ClassLevelRule . linkml:CommonMetadata a sh:NodeShape ; rdfs:comment "Generic metadata shared across definitions" ; sh:closed false ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:property [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 26 ; - sh:path pav:createdOn ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; + sh:order 30 ; + sh:path sh:order ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path oslc:modifiedBy ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path skos:altLabel ], + sh:order 8 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 21 ; + sh:path skos:relatedMatch ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path skos:narrowMatch ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 6 ; + sh:path skos:note ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 24 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 26 ; + sh:path pav:createdOn ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path skos:editorialNote ], - [ sh:description "status of the element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 18 ; + sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path skos:exactMatch ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path bibo:status ], + sh:order 28 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 16 ; + sh:path skos:altLabel ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 27 ; sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path skos:exactMatch ], - [ sh:description "id of the schema that defined the element" ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 9 ; - sh:path skos:inScheme ], + sh:order 11 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path skos:definition ], [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; sh:order 25 ; sh:path dcterms:contributor ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path linkml:deprecated ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; sh:order 20 ; sh:path skos:closeMatch ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path skos:inScheme ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 15 ; sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 32 ; + sh:path schema1:keywords ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 17 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path linkml:imported_from ], + sh:order 2 ; + sh:path dcterms:title ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 13 ; sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path linkml:todos ], + sh:order 10 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path skos:broadMatch ], [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; sh:order 31 ; sh:path dcterms:subject ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 30 ; - sh:path sh:order ], + sh:order 3 ; + sh:path linkml:deprecated ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; @@ -372,56 +402,26 @@ linkml:CommonMetadata a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 22 ; + sh:path skos:narrowMatch ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 7 ; sh:path linkml:examples ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 17 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path skos:note ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path dcterms:source ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path skos:broadMatch ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path pav:createdBy ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path skos:mappingRelation ] ; + sh:order 4 ; + sh:path linkml:todos ] ; sh:targetClass linkml:CommonMetadata . linkml:Expression a sh:NodeShape ; rdfs:comment "general mixin for any class that can represent some form of expression" ; sh:closed false ; - sh:ignoredProperties ( linkml:exact_cardinality linkml:array linkml:none_of linkml:implicit_prefix linkml:include linkml:minimum_cardinality linkml:inherits linkml:any_of linkml:minus linkml:has_member linkml:pv_formula linkml:range_expression linkml:pattern linkml:inlined_as_list linkml:structured_pattern rdf:type linkml:minimum_value linkml:exactly_one_of linkml:inlined linkml:value_presence linkml:code_set_tag linkml:equals_expression linkml:all_members linkml:code_set_version linkml:maximum_cardinality linkml:enum_range linkml:maximum_value linkml:equals_string_in linkml:code_set linkml:all_of linkml:equals_number linkml:permissible_values linkml:range linkml:reachable_from linkml:multivalued linkml:matches qudt:unit linkml:required linkml:equals_string linkml:bindings linkml:concepts linkml:recommended ) ; + sh:ignoredProperties ( linkml:code_set_tag linkml:equals_string linkml:code_set_version linkml:required linkml:multivalued linkml:exactly_one_of linkml:equals_number linkml:all_members linkml:pattern linkml:all_of linkml:permissible_values linkml:matches linkml:is_open linkml:bindings linkml:pv_formula linkml:range_expression linkml:code_set linkml:equals_expression linkml:minus linkml:array linkml:implicit_prefix linkml:any_of linkml:maximum_cardinality linkml:equals_string_in linkml:structured_pattern linkml:minimum_value linkml:inlined linkml:none_of linkml:range linkml:minimum_cardinality qudt:unit linkml:include linkml:recommended linkml:exact_cardinality linkml:inlined_as_list linkml:value_presence rdf:type linkml:has_member linkml:reachable_from linkml:inherits linkml:enum_range linkml:maximum_value linkml:concepts ) ; sh:targetClass linkml:Expression . linkml:Extensible a sh:NodeShape ; @@ -439,128 +439,132 @@ linkml:ImportExpression a sh:NodeShape ; rdfs:comment "an expression describing an import" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; + sh:property [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:maxCount 1 ; - sh:minCount 1 ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:import_from ], + sh:order 34 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:class linkml:Setting ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path linkml:import_map ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path oslc:modifiedBy ], + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 21 ; + sh:path skos:altLabel ], [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:import_as ], + sh:order 15 ; + sh:path linkml:imported_from ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; sh:order 11 ; sh:path skos:note ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "Controlled terms used to categorize an element." ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path dcterms:subject ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path sh:order ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "agent that created the element" ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path skos:relatedMatch ], + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:extensions ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 35 ; + sh:path sh:order ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path dcterms:source ], + sh:order 0 ; + sh:path linkml:import_from ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; sh:order 23 ; sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:description "status of the element" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path bibo:status ], + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 12 ; + sh:path linkml:examples ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; @@ -570,30 +574,22 @@ linkml:ImportExpression a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 25 ; sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path rdfs:seeAlso ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:todos ], + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; @@ -605,160 +601,148 @@ linkml:ImportExpression a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 14 ; sh:path skos:inScheme ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; + [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path skos:definition ], + sh:order 1 ; + sh:path linkml:import_as ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path linkml:imported_from ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:class linkml:Setting ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:annotations ] ; + sh:order 2 ; + sh:path linkml:import_map ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:exactMatch ] ; sh:targetClass linkml:ImportExpression . linkml:SchemaDefinition a sh:NodeShape ; rdfs:comment "A collection of definitions that make up a schema or a data model." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:slot_names_unique ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 53 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description "Version of the metamodel used to load the schema" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path linkml:metamodel_version ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 49 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "a unique name for the schema that is both human-readable and consists of only characters from the NCName set" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path rdfs:label ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 32 ; sh:path skos:definition ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path linkml:deprecated ], [ sh:datatype xsd:string ; sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; sh:order 48 ; sh:path skos:altLabel ], - [ sh:description "An element in another schema which this element instantiates." ; + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 37 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path linkml:instantiates ], + sh:order 54 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 40 ; + sh:path OIO:inSubset ], [ sh:datatype xsd:string ; sh:description "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" ; sh:nodeKind sh:Literal ; sh:order 6 ; sh:path linkml:default_curi_maps ], - [ sh:class linkml:ClassDefinition ; - sh:description "An index to the collection of all class definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path linkml:classes ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 43 ; - sh:path dcterms:source ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 58 ; - sh:path pav:createdOn ], + sh:order 45 ; + sh:path rdfs:seeAlso ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 33 ; sh:path linkml:alt_descriptions ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; + [ sh:class linkml:SlotDefinition ; + sh:description "An index to the collection of all slot definitions in the schema" ; sh:nodeKind sh:IRI ; - sh:order 41 ; - sh:path skos:inScheme ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:order 12 ; + sh:path linkml:slot_definitions ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 39 ; - sh:path linkml:examples ], - [ sh:datatype xsd:integer ; - sh:description "size in bytes of the source of the schema" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path linkml:source_file_size ], + sh:order 31 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; sh:nodeKind sh:Literal ; - sh:order 64 ; - sh:path schema1:keywords ], + sh:order 23 ; + sh:path linkml:id_prefixes ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 57 ; + sh:path dcterms:contributor ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 50 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 36 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:nodeKind sh:Literal ; + sh:order 38 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 34 ; - sh:path dcterms:title ], + sh:order 42 ; + sh:path linkml:imported_from ], [ sh:class linkml:Setting ; sh:description "A collection of global variable settings" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 20 ; sh:path linkml:settings ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:nodeKind sh:IRI ; - sh:order 56 ; - sh:path pav:createdBy ], + sh:order 28 ; + sh:path linkml:implements ], + [ sh:datatype xsd:string ; + sh:description "name, uri or description of the source of the schema" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 15 ; + sh:path linkml:source_file ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 44 ; sh:path schema1:inLanguage ], - [ sh:description "agent that modified the element" ; + [ sh:description "The official schema URI" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:IRI ; - sh:order 60 ; - sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 0 ; + sh:path linkml:id ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 52 ; - sh:path skos:closeMatch ], + sh:order 41 ; + sh:path skos:inScheme ], [ sh:class linkml:TypeDefinition ; sh:description "default slot range to be used if range element is omitted from a slot definition" ; sh:maxCount 1 ; @@ -766,300 +750,260 @@ linkml:SchemaDefinition a sh:NodeShape ; sh:order 8 ; sh:path linkml:default_range ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 27 ; - sh:path dcterms:conformsTo ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 46 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 61 ; - sh:path bibo:status ], - [ sh:class linkml:EnumBinding ; - sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. -LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). -Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 21 ; - sh:path linkml:bindings ], - [ sh:class linkml:EnumDefinition ; - sh:description "An index to the collection of all enum definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml:enums ], - [ sh:class linkml:Prefix ; - sh:description "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path sh:declare ], - [ sh:datatype xsd:string ; - sh:description "particular version of schema" ; + sh:order 34 ; + sh:path dcterms:title ], + [ sh:datatype xsd:boolean ; + sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path pav:version ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path linkml:todos ], - [ sh:datatype xsd:string ; - sh:description "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." ; + sh:order 19 ; + sh:path linkml:slot_names_unique ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:emit_prefixes ], + sh:order 24 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 26 ; sh:path linkml:local_names ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:string ; + sh:description "license for the schema" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path dcterms:license ], [ sh:class linkml:SubsetDefinition ; sh:description "An index to the collection of all subset definitions in the schema" ; sh:nodeKind sh:IRI ; sh:order 9 ; sh:path linkml:subsets ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 45 ; - sh:path rdfs:seeAlso ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 49 ; + sh:path skosxl:altLabel ], [ sh:class linkml:TypeDefinition ; sh:description "An index to the collection of all type definitions in the schema" ; sh:nodeKind sh:IRI ; sh:order 10 ; sh:path linkml:types ], - [ sh:datatype xsd:dateTime ; - sh:description "date and time that the schema was loaded/generated" ; + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path linkml:generation_date ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 40 ; - sh:path OIO:inSubset ], - [ sh:description "agent that contributed to the element" ; + sh:order 60 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 57 ; - sh:path dcterms:contributor ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 53 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:integer ; + sh:description "size in bytes of the source of the schema" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:definition_uri ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:nodeKind sh:Literal ; + sh:order 17 ; + sh:path linkml:source_file_size ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 47 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 43 ; + sh:path dcterms:source ], [ sh:datatype xsd:string ; - sh:description "license for the schema" ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path dcterms:license ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path skos:editorialNote ], - [ sh:description "Controlled terms used to categorize an element." ; + sh:order 27 ; + sh:path dcterms:conformsTo ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; - sh:order 63 ; - sh:path dcterms:subject ], + sh:order 55 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 38 ; - sh:path skos:note ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "a unique name for the schema that is both human-readable and consists of only characters from the NCName set" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 59 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:SlotDefinition ; - sh:description "An index to the collection of all slot definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 12 ; - sh:path linkml:slot_definitions ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:nodeKind sh:Literal ; - sh:order 23 ; - sh:path linkml:id_prefixes ], - [ sh:description "A list of schemas that are to be included in this schema" ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml:imports ], + sh:order 22 ; + sh:path rdfs:label ], [ sh:datatype xsd:string ; - sh:defaultValue "default_ns"^^xsd:string ; - sh:description "The prefix that is used for all elements within a schema" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path linkml:default_prefix ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 35 ; + sh:path linkml:deprecated ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 30 ; + sh:path linkml:extensions ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path linkml:implements ], + sh:order 56 ; + sh:path pav:createdBy ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 62 ; sh:path sh:order ], - [ sh:description "The official schema URI" ; + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:id ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; - sh:order 55 ; - sh:path skos:broadMatch ], + sh:order 25 ; + sh:path linkml:definition_uri ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; + sh:description "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." ; sh:nodeKind sh:Literal ; - sh:order 42 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:order 5 ; + sh:path linkml:emit_prefixes ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 39 ; + sh:path linkml:examples ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 24 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 50 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 54 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 30 ; - sh:path linkml:extensions ], + sh:order 59 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:dateTime ; sh:description "modification date of the source of the schema" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 16 ; sh:path linkml:source_file_date ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 63 ; + sh:path dcterms:subject ], + [ sh:class linkml:EnumBinding ; + sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. +LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). +Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 21 ; + sh:path linkml:bindings ], + [ sh:class linkml:ClassDefinition ; + sh:description "An index to the collection of all class definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml:classes ], [ sh:datatype xsd:string ; - sh:description "name, uri or description of the source of the schema" ; + sh:description "Version of the metamodel used to load the schema" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path linkml:source_file ], + sh:order 14 ; + sh:path linkml:metamodel_version ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 46 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 61 ; + sh:path bibo:status ], + [ sh:class linkml:EnumDefinition ; + sh:description "An index to the collection of all enum definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml:enums ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 51 ; sh:path skos:exactMatch ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 52 ; + sh:path skos:closeMatch ], + [ sh:class linkml:Prefix ; + sh:description "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 31 ; - sh:path linkml:annotations ] ; + sh:order 4 ; + sh:path sh:declare ], + [ sh:datatype xsd:string ; + sh:defaultValue "default_ns"^^xsd:string ; + sh:description "The prefix that is used for all elements within a schema" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path linkml:default_prefix ], + [ sh:datatype xsd:string ; + sh:description "particular version of schema" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path pav:version ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 64 ; + sh:path schema1:keywords ], + [ sh:description "A list of schemas that are to be included in this schema" ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml:imports ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 58 ; + sh:path pav:createdOn ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 47 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:dateTime ; + sh:description "date and time that the schema was loaded/generated" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 18 ; + sh:path linkml:generation_date ] ; sh:targetClass linkml:SchemaDefinition . linkml:SlotExpression a sh:NodeShape ; rdfs:comment "an expression that constrains the range of values a slot can take" ; sh:closed false ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path linkml:enum_range ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:property [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:recommended ], + sh:order 10 ; + sh:path linkml:maximum_value ], [ sh:datatype xsd:string ; sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 14 ; sh:path linkml:implicit_prefix ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 23 ; - sh:path linkml:has_member ], - [ sh:description "if PRESENT then a value must be present (for lists there must be at least one value). If ABSENT then a value must be absent (for lists, must be empty)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; - sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:value_presence ], - [ sh:datatype xsd:boolean ; - sh:description "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." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path linkml:inlined_as_list ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 26 ; - sh:path linkml:exactly_one_of ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 28 ; - sh:path linkml:all_of ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 13 ; - sh:path qudt:unit ], + sh:order 1 ; + sh:path linkml:range_expression ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path linkml:equals_string_in ], + sh:order 16 ; + sh:path linkml:equals_string ], [ sh:datatype xsd:boolean ; sh:description "true means that the slot must be present in instances of the class definition" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path linkml:required ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path linkml:any_of ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path linkml:equals_string ], - [ sh:class linkml:EnumBinding ; - sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. -LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). -Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:bindings ], - [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:maximum_value ], [ sh:class linkml:Element ; sh:defaultValue "string"^^xsd:string ; sh:description """defines the type of the object of the slot. Given the following slot definition @@ -1076,582 +1020,638 @@ implicitly asserts Y is an instance of C2 sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:range ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 24 ; - sh:path linkml:all_members ], - [ sh:datatype xsd:boolean ; - sh:description "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." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path linkml:inlined ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 25 ; sh:path linkml:none_of ], - [ sh:datatype xsd:boolean ; - sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path linkml:multivalued ], - [ sh:class linkml:ArrayExpression ; - sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; + sh:order 18 ; + sh:path linkml:equals_number ], + [ sh:description "if PRESENT then a value must be present (for lists there must be at least one value). If ABSENT then a value must be absent (for lists, must be empty)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:value_presence ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 29 ; - sh:path linkml:array ], + sh:order 2 ; + sh:path linkml:enum_range ], [ sh:class linkml:PatternExpression ; sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 12 ; sh:path linkml:structured_pattern ], - [ sh:datatype xsd:string ; - sh:description "the value of the slot must equal the value of the evaluated expression" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:equals_expression ], - [ sh:datatype xsd:integer ; - sh:description "the exact number of entries for a multivalued slot" ; + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 20 ; - sh:path linkml:exact_cardinality ], + sh:order 5 ; + sh:path linkml:recommended ], [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path linkml:pattern ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path linkml:equals_number ], + sh:order 17 ; + sh:path linkml:equals_string_in ], [ sh:datatype xsd:integer ; sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 21 ; sh:path linkml:minimum_cardinality ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:range_expression ], - [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path linkml:maximum_cardinality ], + sh:order 23 ; + sh:path linkml:has_member ], [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; sh:order 9 ; - sh:path linkml:minimum_value ] ; - sh:targetClass linkml:SlotExpression . - -linkml:TypeExpression a sh:NodeShape ; - rdfs:comment "An abstract class grouping named types and anonymous type expressions" ; - sh:closed false ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:path linkml:minimum_value ], + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 20 ; + sh:path linkml:exact_cardinality ], + [ sh:datatype xsd:boolean ; + sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path linkml:multivalued ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 22 ; + sh:path linkml:maximum_cardinality ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 27 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:string ; sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; + sh:order 11 ; sh:path linkml:pattern ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 24 ; + sh:path linkml:all_members ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 28 ; + sh:path linkml:all_of ], + [ sh:class linkml:ArrayExpression ; + sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 29 ; + sh:path linkml:array ], + [ sh:datatype xsd:boolean ; + sh:description "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." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path linkml:inlined ], + [ sh:datatype xsd:boolean ; + sh:description "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." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 8 ; + sh:path linkml:inlined_as_list ], + [ sh:class linkml:EnumBinding ; + sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. +LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). +Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:bindings ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 26 ; + sh:path linkml:exactly_one_of ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path linkml:equals_string ], - [ sh:class linkml:AnonymousTypeExpression ; + sh:order 19 ; + sh:path linkml:equals_expression ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 13 ; + sh:path qudt:unit ] ; + sh:targetClass linkml:SlotExpression . + +linkml:TypeExpression a sh:NodeShape ; + rdfs:comment "An abstract class grouping named types and anonymous type expressions" ; + sh:closed false ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 10 ; sh:path linkml:exactly_one_of ], - [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:maximum_value ], [ sh:datatype xsd:string ; sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path linkml:implicit_prefix ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path linkml:equals_number ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path linkml:equals_string_in ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path qudt:unit ], + sh:order 11 ; + sh:path linkml:any_of ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 9 ; sh:path linkml:none_of ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:maximum_value ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path linkml:equals_number ], + sh:order 0 ; + sh:path linkml:pattern ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path linkml:equals_string ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path qudt:unit ], [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; sh:order 7 ; sh:path linkml:minimum_value ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:structured_pattern ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 11 ; - sh:path linkml:any_of ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 12 ; sh:path linkml:all_of ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:equals_string_in ] ; + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml:structured_pattern ] ; sh:targetClass linkml:TypeExpression . linkml:ClassRule a sh:NodeShape ; rdfs:comment "A rule that applies to instances of a class" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:property [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path linkml:todos ], + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:exactMatch ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:nodeKind sh:IRI ; + sh:order 22 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 16 ; + sh:path linkml:examples ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; sh:order 15 ; sh:path skos:note ], - [ sh:datatype xsd:boolean ; - sh:description "a deactivated rule is not executed by the rules engine" ; + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 38 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path sh:deactivated ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 36 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 20 ; + sh:path dcterms:source ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path schema1:inLanguage ], + sh:order 19 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 35 ; + sh:path pav:createdOn ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold for an instance of the class, if the preconditions no not hold" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml:elseconditions ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold for an instance of the class, if the preconditions hold" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml:postconditions ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 26 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 25 ; + sh:path skos:altLabel ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:extensions ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 10 ; sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 40 ; - sh:path schema1:keywords ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 17 ; sh:path OIO:inSubset ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path skos:definition ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path oslc:modifiedBy ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; + sh:order 23 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 32 ; + sh:path skos:broadMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:boolean ; - sh:description "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; + sh:order 29 ; + sh:path skos:closeMatch ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 40 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path linkml:open_world ], + sh:order 11 ; + sh:path dcterms:title ], [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 18 ; sh:path skos:inScheme ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold for an instance of the class, if the preconditions no not hold" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path linkml:elseconditions ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 12 ; sh:path linkml:deprecated ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 26 ; - sh:path skosxl:altLabel ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 16 ; - sh:path linkml:examples ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 25 ; - sh:path skos:altLabel ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path dcterms:source ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold in order for the rule to be applicable to an instance" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 0 ; - sh:path sh:condition ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:exactMatch ], + sh:order 30 ; + sh:path skos:relatedMatch ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path dcterms:title ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:extensions ], - [ sh:description "agent that created the element" ; + sh:order 14 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:boolean ; + sh:description "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path linkml:open_world ], + [ sh:datatype xsd:boolean ; + sh:description "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path sh:order ], + sh:order 3 ; + sh:path linkml:bidirectional ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; sh:order 31 ; sh:path skos:narrowMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path pav:createdOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 32 ; - sh:path skos:broadMatch ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold for an instance of the class, if the preconditions hold" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:postconditions ], + sh:order 5 ; + sh:path sh:order ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path skos:definition ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path rdfs:seeAlso ], + sh:order 21 ; + sh:path schema1:inLanguage ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:boolean ; - sh:description "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; + sh:order 13 ; + sh:path linkml:todos ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path linkml:bidirectional ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 37 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold in order for the rule to be applicable to an instance" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:imported_from ], + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path sh:condition ], [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; sh:order 39 ; sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:mappingRelation ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:datatype xsd:boolean ; + sh:description "a deactivated rule is not executed by the rules engine" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path sh:deactivated ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_possible_replacement ] ; + sh:order 33 ; + sh:path pav:createdBy ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml:annotations ] ; sh:targetClass linkml:ClassRule . linkml:DimensionExpression a sh:NodeShape ; rdfs:comment "defines one of the dimensions of an array" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path bibo:status ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path dcterms:source ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; + sh:property [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml:annotations ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml:extensions ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:integer ; - sh:description "the exact number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path linkml:exact_cardinality ], + sh:order 19 ; + sh:path rdfs:seeAlso ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; sh:order 27 ; sh:path skos:relatedMatch ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; + sh:order 38 ; + sh:path schema1:keywords ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 17 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:maximum_cardinality ], + sh:order 9 ; + sh:path linkml:deprecated ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 23 ; sh:path skosxl:altLabel ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:alt_descriptions ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; sh:order 29 ; sh:path skos:broadMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path sh:order ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path OIO:inSubset ], - [ sh:description "agent that created the element" ; + sh:order 1 ; + sh:path linkml:maximum_cardinality ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 33 ; - sh:path pav:lastUpdatedOn ], + sh:order 20 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path skos:definition ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:order 12 ; + sh:path skos:note ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 13 ; - sh:path linkml:examples ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:narrowMatch ], + sh:order 7 ; + sh:path linkml:alt_descriptions ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path skos:altLabel ], + sh:order 10 ; + sh:path linkml:todos ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path skos:note ], + sh:order 8 ; + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path skos:prefLabel ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 36 ; + sh:path sh:order ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:minimum_cardinality ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 16 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 11 ; + sh:path skos:editorialNote ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 35 ; + sh:path bibo:status ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 37 ; + sh:path dcterms:subject ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path dcterms:contributor ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 18 ; sh:path schema1:inLanguage ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path linkml:todos ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 32 ; sh:path pav:createdOn ], - [ sh:description "agent that modified the element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 26 ; + sh:path skos:closeMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path oslc:modifiedBy ], + sh:order 28 ; + sh:path skos:narrowMatch ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path pav:createdBy ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 21 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path dcterms:title ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path skos:inScheme ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path dcterms:subject ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path linkml:annotations ], + sh:order 33 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:integer ; - sh:description "the minimum number of entries for a multivalued slot" ; + sh:description "the exact number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:minimum_cardinality ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:extensions ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:order 3 ; + sh:path linkml:exact_cardinality ], + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:deprecated ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:mappingRelation ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path dcterms:contributor ], + sh:order 15 ; + sh:path skos:inScheme ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 38 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path skos:closeMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:exactMatch ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 22 ; + sh:path skos:altLabel ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path rdfs:seeAlso ] ; + sh:order 34 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 13 ; + sh:path linkml:examples ] ; sh:targetClass linkml:DimensionExpression . linkml:ExtraSlotsExpression a sh:NodeShape ; @@ -1679,162 +1679,198 @@ linkml:Prefix a sh:NodeShape ; rdfs:comment "prefix URI tuple" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:description "The namespace to which a prefix expands to." ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path sh:namespace ], + [ sh:datatype xsd:string ; sh:description "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path sh:prefix ], - [ sh:description "The namespace to which a prefix expands to." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path sh:namespace ] ; + sh:path sh:prefix ] ; sh:targetClass linkml:Prefix . linkml:TypeMapping a sh:NodeShape ; rdfs:comment "Represents how a slot or type can be serialized to a format." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "agent that created the element" ; - sh:maxCount 1 ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path skos:note ], + sh:order 7 ; + sh:path dcterms:title ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 20 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "id of the schema that defined the element" ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path skos:inScheme ], + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 12 ; + sh:path linkml:examples ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 22 ; sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description """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) GENERATE: 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""" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:string_serialization ], + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path sh:order ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path rdfs:seeAlso ], + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:TypeDefinition ; + sh:description "type to coerce to" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:mapped_type ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; sh:order 37 ; sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path skos:mappingRelation ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; sh:order 26 ; sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path linkml:deprecated ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 35 ; + sh:path sh:order ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path bibo:status ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 33 ; sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], + sh:order 16 ; + sh:path dcterms:source ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:closeMatch ], + sh:order 24 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path dcterms:title ], + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path dcterms:contributor ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; sh:order 10 ; sh:path skos:editorialNote ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path skos:definition ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 11 ; + sh:path skos:note ], [ sh:datatype xsd:string ; sh:description "The name of a format that can be used to serialize LinkML data. The string value should be a code from the LinkML frameworks vocabulary, but this is not strictly enforced" ; sh:maxCount 1 ; @@ -1842,154 +1878,150 @@ linkml:TypeMapping a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path linkml:framework_key ], - [ sh:datatype xsd:string ; - sh:description """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) GENERATE: 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""" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:string_serialization ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:description "Controlled terms used to categorize an element." ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path dcterms:subject ], + sh:order 18 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:class linkml:TypeDefinition ; - sh:description "type to coerce to" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:mapped_type ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:exactMatch ] ; + sh:order 5 ; + sh:path skos:definition ] ; sh:targetClass linkml:TypeMapping . linkml:UniqueKey a sh:NodeShape ; rdfs:comment "a collection of slots whose values uniquely identify an instance of a class" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "status of the element" ; + sh:property [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path bibo:status ], + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path skos:note ], + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 22 ; + sh:path skosxl:altLabel ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 32 ; sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path linkml:todos ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 12 ; sh:path linkml:examples ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:consider_nulls_inequal ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 18 ; sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path skos:altLabel ], + sh:order 7 ; + sh:path dcterms:title ], [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; sh:order 36 ; sh:path dcterms:subject ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path pav:createdOn ], + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path bibo:status ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; sh:order 26 ; sh:path skos:relatedMatch ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:SlotDefinition ; - sh:description "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:unique_key_slots ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path skos:definition ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:narrowMatch ], + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 35 ; + sh:path sh:order ], [ sh:datatype xsd:string ; sh:description "name of the unique key" ; sh:maxCount 1 ; @@ -2003,96 +2035,64 @@ linkml:UniqueKey a sh:NodeShape ; sh:order 3 ; sh:path linkml:extensions ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], + sh:order 15 ; + sh:path linkml:imported_from ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path sh:order ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path pav:createdBy ], + sh:order 8 ; + sh:path linkml:deprecated ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 16 ; sh:path dcterms:source ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:boolean ; - sh:description "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:consider_nulls_inequal ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 22 ; - sh:path skosxl:altLabel ], + sh:order 33 ; + sh:path oslc:modifiedBy ], [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 14 ; - sh:path skos:inScheme ] ; + sh:path skos:inScheme ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:class linkml:SlotDefinition ; + sh:description "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; + sh:minCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:unique_key_slots ] ; sh:targetClass linkml:UniqueKey . linkml:Setting a sh:NodeShape ; @@ -2100,294 +2100,324 @@ linkml:Setting a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "The value assigned for a setting" ; + sh:description "the variable name for a setting" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:setting_value ], + sh:order 0 ; + sh:path linkml:setting_key ], [ sh:datatype xsd:string ; - sh:description "the variable name for a setting" ; + sh:description "The value assigned for a setting" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path linkml:setting_key ] ; + sh:order 1 ; + sh:path linkml:setting_value ] ; sh:targetClass linkml:Setting . linkml:ArrayExpression a sh:NodeShape ; rdfs:comment "defines the dimensions of an array" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:property [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path dcterms:title ], - [ sh:description "status of the element" ; + sh:order 36 ; + sh:path sh:order ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path bibo:status ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 13 ; - sh:path linkml:examples ], + sh:order 21 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" ; + sh:maxCount 1 ; + sh:or ( [ sh:datatype xsd:integer ; + sh:nodeKind sh:Literal ] [ sh:datatype xsd:boolean ; + sh:nodeKind sh:Literal ] ) ; + sh:order 2 ; + sh:path linkml:maximum_number_dimensions ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 18 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 22 ; + sh:path skos:altLabel ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 30 ; sh:path pav:createdBy ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path skos:definition ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:nodeKind sh:IRI ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path pav:createdOn ], + sh:order 8 ; + sh:path dcterms:title ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 16 ; sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path linkml:todos ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 33 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 37 ; + sh:path dcterms:subject ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:integer ; + sh:description "minimum number of dimensions in the array" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path linkml:minimum_number_dimensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 13 ; + sh:path linkml:examples ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 6 ; + sh:path skos:definition ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:exactMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 19 ; + sh:path rdfs:seeAlso ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:alt_descriptions ], + sh:order 23 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 38 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 32 ; + sh:path pav:createdOn ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 35 ; + sh:path bibo:status ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 15 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:integer ; + sh:description "exact number of dimensions in the array" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path linkml:exact_number_dimensions ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 17 ; sh:path dcterms:source ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 10 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path skos:relatedMatch ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path linkml:extensions ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 33 ; - sh:path pav:lastUpdatedOn ], + sh:order 12 ; + sh:path skos:note ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path linkml:annotations ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path skos:broadMatch ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 14 ; sh:path OIO:inSubset ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:alt_descriptions ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 11 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path skos:exactMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 26 ; + sh:path skos:closeMatch ], + [ sh:class linkml:DimensionExpression ; + sh:description "definitions of each axis in the array" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:dimensions ] ; + sh:targetClass linkml:ArrayExpression . + +linkml:Element a sh:NodeShape ; + rdfs:comment "A named element in the model" ; + sh:closed false ; + sh:ignoredProperties ( linkml:equals_string linkml:multivalued linkml:is_class_field linkml:reflexive_transitive_form_of linkml:repr linkml:exactly_one_of linkml:locally_reflexive linkml:readonly linkml:inherited linkml:reflexive linkml:values_from linkml:default_curi_maps linkml:slot_conditions linkml:key linkml:pv_formula linkml:asymmetric linkml:range_expression linkml:slots linkml:designates_type linkml:minus sh:group linkml:generation_date linkml:type_mappings linkml:list_elements_unique linkml:maximum_cardinality linkml:equals_string_in linkml:identifier linkml:inlined linkml:source_file_size linkml:types skos:prefLabel dcterms:license linkml:value_presence linkml:string_serialization linkml:mixin linkml:transitive_form_of linkml:include linkml:union_of linkml:is_grouping_slot linkml:represents_relationship linkml:base linkml:slot_definitions linkml:equals_number linkml:singular_name linkml:default_prefix linkml:is_a linkml:pattern linkml:symmetric linkml:is_open linkml:bindings pav:version linkml:code_set linkml:source_file linkml:classes linkml:none_of linkml:range linkml:irreflexive linkml:extra_slots linkml:minimum_cardinality linkml:transitive linkml:exact_cardinality linkml:mixins linkml:abstract linkml:id linkml:ifabsent linkml:shared linkml:owner linkml:has_member linkml:slot_names_unique linkml:enum_range linkml:concepts linkml:settings linkml:code_set_tag linkml:source_file_date linkml:usage_slot_name linkml:slot_usage owl:inverseOf linkml:relational_role linkml:all_members linkml:attributes linkml:all_of linkml:role linkml:domain_of linkml:type_uri linkml:equals_expression linkml:metamodel_version linkml:any_of linkml:defining_slots linkml:enums rdfs:subPropertyOf linkml:minimum_value linkml:subsets linkml:recommended linkml:disjoint_with linkml:slot_uri linkml:reachable_from linkml:maximum_value sh:declare linkml:imports linkml:code_set_version linkml:required linkml:domain linkml:enum_uri linkml:unique_keys linkml:subclass_of linkml:permissible_values linkml:matches linkml:default_range linkml:typeof linkml:emit_prefixes linkml:array linkml:class_uri linkml:implicit_prefix linkml:list_elements_ordered linkml:path_rule sh:rule linkml:apply_to qudt:unit linkml:is_usage_slot linkml:classification_rules linkml:inlined_as_list linkml:children_are_mutually_disjoint rdf:type linkml:tree_root linkml:inherits linkml:structured_pattern ) ; + sh:property [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 27 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path sh:order ], + sh:order 22 ; + sh:path schema1:inLanguage ], [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path skos:inScheme ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 19 ; - sh:path rdfs:seeAlso ], - [ sh:description "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" ; - sh:maxCount 1 ; - sh:or ( [ sh:datatype xsd:integer ; - sh:nodeKind sh:Literal ] [ sh:datatype xsd:boolean ; - sh:nodeKind sh:Literal ] ) ; - sh:order 2 ; - sh:path linkml:maximum_number_dimensions ], + sh:path skos:inScheme ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 26 ; + sh:order 30 ; sh:path skos:closeMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:narrowMatch ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; sh:order 37 ; - sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:mappingRelation ], + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 12 ; + sh:order 16 ; sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path skos:broadMatch ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 38 ; + sh:path oslc:modifiedBy ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path pav:createdBy ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 38 ; - sh:path schema1:keywords ], - [ sh:description "agent that contributed to the element" ; + sh:order 10 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 35 ; sh:path dcterms:contributor ], - [ sh:datatype xsd:integer ; - sh:description "exact number of dimensions in the array" ; + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 11 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path linkml:exact_number_dimensions ], + sh:order 20 ; + sh:path linkml:imported_from ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 21 ; + sh:order 25 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 12 ; + sh:path dcterms:title ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml:extensions ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path oslc:modifiedBy ], + sh:order 6 ; + sh:path linkml:implements ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path skos:altLabel ], - [ sh:datatype xsd:integer ; - sh:description "minimum number of dimensions in the array" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:minimum_number_dimensions ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path skos:editorialNote ], - [ sh:class linkml:DimensionExpression ; - sh:description "definitions of each axis in the array" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:dimensions ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 23 ; - sh:path skosxl:altLabel ] ; - sh:targetClass linkml:ArrayExpression . - -linkml:Element a sh:NodeShape ; - rdfs:comment "A named element in the model" ; - sh:closed false ; - sh:ignoredProperties ( linkml:exact_cardinality linkml:path_rule linkml:is_a linkml:inherits linkml:any_of linkml:children_are_mutually_disjoint linkml:has_member linkml:enums linkml:classification_rules linkml:role rdf:type linkml:ifabsent linkml:value_presence rdfs:subPropertyOf linkml:code_set_tag linkml:equals_expression linkml:source_file_date linkml:is_class_field linkml:repr linkml:symmetric linkml:identifier linkml:none_of linkml:default_curi_maps linkml:include linkml:tree_root linkml:minus linkml:shared linkml:apply_to linkml:pv_formula linkml:relational_role linkml:slot_usage linkml:structured_pattern linkml:owner linkml:metamodel_version linkml:minimum_value linkml:inherited linkml:slot_definitions linkml:generation_date linkml:singular_name linkml:readonly linkml:maximum_value linkml:attributes linkml:usage_slot_name linkml:equals_number linkml:permissible_values linkml:domain_of linkml:slots linkml:asymmetric linkml:required linkml:recommended linkml:array linkml:list_elements_unique linkml:mixins linkml:base linkml:represents_relationship linkml:slot_names_unique linkml:designates_type linkml:pattern linkml:inlined_as_list linkml:extra_slots pav:version linkml:disjoint_with linkml:domain linkml:union_of linkml:transitive_form_of linkml:all_members linkml:transitive sh:declare linkml:defining_slots linkml:equals_string_in linkml:default_range linkml:slot_uri sh:group linkml:reflexive_transitive_form_of owl:inverseOf linkml:class_uri linkml:classes qudt:unit linkml:concepts linkml:is_grouping_slot linkml:locally_reflexive linkml:imports linkml:type_uri linkml:abstract linkml:emit_prefixes linkml:implicit_prefix linkml:slot_conditions linkml:irreflexive linkml:minimum_cardinality linkml:is_usage_slot linkml:subclass_of dcterms:license linkml:type_mappings linkml:range_expression linkml:enum_uri linkml:source_file_size linkml:subsets linkml:id linkml:mixin linkml:exactly_one_of linkml:list_elements_ordered linkml:source_file linkml:key skos:prefLabel linkml:inlined linkml:settings linkml:string_serialization linkml:code_set_version linkml:maximum_cardinality linkml:enum_range sh:rule linkml:code_set linkml:all_of linkml:typeof linkml:types linkml:unique_keys linkml:range linkml:reachable_from linkml:multivalued linkml:matches linkml:values_from linkml:reflexive linkml:equals_string linkml:bindings linkml:default_prefix ) ; - sh:property [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path dcterms:source ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 20 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 40 ; - sh:path sh:order ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 26 ; - sh:path skos:altLabel ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path linkml:todos ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:instantiates ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path skos:closeMatch ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path linkml:id_prefixes ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:extensions ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path skos:note ], [ sh:datatype xsd:string ; sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; @@ -2395,245 +2425,212 @@ linkml:Element a sh:NodeShape ; sh:order 5 ; sh:path dcterms:conformsTo ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path skos:definition ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; - sh:maxCount 1 ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path rdfs:seeAlso ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 41 ; - sh:path dcterms:subject ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:local_names ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 11 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 32 ; - sh:path skos:narrowMatch ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:exactMatch ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:implements ], + sh:order 26 ; + sh:path skos:altLabel ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path dcterms:title ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path pav:createdBy ], + sh:order 42 ; + sh:path schema1:keywords ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 18 ; sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path rdfs:label ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:mappingRelation ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 39 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 17 ; + sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path skos:broadMatch ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; + sh:order 32 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path oslc:modifiedBy ], - [ sh:description "id of the schema that defined the element" ; + sh:order 23 ; + sh:path rdfs:seeAlso ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path skos:inScheme ], + sh:order 21 ; + sh:path dcterms:source ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 36 ; sh:path pav:createdOn ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path skos:relatedMatch ], + sh:order 3 ; + sh:path linkml:definition_uri ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 42 ; - sh:path schema1:keywords ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 17 ; - sh:path linkml:examples ], + sh:order 14 ; + sh:path linkml:todos ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 41 ; + sh:path dcterms:subject ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 24 ; sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path schema1:inLanguage ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 13 ; + sh:path linkml:deprecated ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml:local_names ], + [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; - sh:maxCount 1 ; + sh:order 39 ; + sh:path bibo:status ], + [ sh:description "An element in another schema which this element instantiates." ; sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:definition_uri ] ; + sh:order 7 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 40 ; + sh:path sh:order ] ; sh:targetClass linkml:Element . linkml:EnumExpression a sh:NodeShape ; rdfs:comment "An expression that constrains the range of a slot" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; + sh:property [ sh:class linkml:ReachabilityQuery ; + sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:minus ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:nodeKind sh:IRI ; - sh:order 10 ; - sh:path linkml:concepts ], + sh:order 9 ; + sh:path linkml:reachable_from ], [ sh:class linkml:MatchQuery ; sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; + sh:order 10 ; sh:path linkml:matches ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ], - [ sh:class linkml:ReachabilityQuery ; - sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:reachable_from ], - [ sh:description "the identifier of an enumeration code set." ; - sh:maxCount 1 ; + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:code_set ], + sh:order 11 ; + sh:path linkml:concepts ], [ sh:class linkml:EnumDefinition ; sh:description "An enum definition that is used as the basis to create a new enum" ; sh:nodeKind sh:IRI ; - sh:order 7 ; + sh:order 8 ; sh:path linkml:inherits ], + [ sh:datatype xsd:boolean ; + sh:description "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path linkml:is_open ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:minus ], [ sh:class linkml:PermissibleValue ; sh:description "A list of possible values for a slot range" ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml:permissible_values ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml:include ], + [ sh:datatype xsd:string ; + sh:description "the version tag of the enumeration code set" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path linkml:code_set_tag ], [ sh:datatype xsd:string ; sh:description "the version identifier of the enumeration code set" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path linkml:code_set_version ], - [ sh:datatype xsd:string ; - sh:description "the version tag of the enumeration code set" ; + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:code_set_tag ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path linkml:include ] ; + sh:order 3 ; + sh:path linkml:pv_formula ], + [ sh:description "the identifier of an enumeration code set." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:code_set ] ; sh:targetClass linkml:EnumExpression . linkml:MatchQuery a sh:NodeShape ; rdfs:comment "A query that is used on an enum expression to dynamically obtain a set of permissible values via a query that matches on properties of the external concepts." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:source_ontology ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path linkml:identifier_pattern ] ; + sh:path linkml:identifier_pattern ], + [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:source_ontology ] ; sh:targetClass linkml:MatchQuery . linkml:ReachabilityQuery a sh:NodeShape ; rdfs:comment "A query that is used on an enum expression to dynamically obtain a set of permissible values via walking from a set of source nodes to a set of descendants or ancestors over a set of relationship types." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:source_ontology ], - [ sh:description "A list of nodes that are used in the reachability query" ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:source_nodes ], - [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:boolean ; sh:description "True if the query is reflexive" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -2645,177 +2642,129 @@ linkml:ReachabilityQuery a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path linkml:is_direct ], + [ sh:description "A list of relationship types (properties) that are used in a reachability query" ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml:relationship_types ], + [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:source_ontology ], + [ sh:description "A list of nodes that are used in the reachability query" ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:source_nodes ], [ sh:datatype xsd:boolean ; sh:description "True if the direction of the reachability query is reversed and ancestors are retrieved" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; - sh:path linkml:traverse_up ], - [ sh:description "A list of relationship types (properties) that are used in a reachability query" ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml:relationship_types ] ; + sh:path linkml:traverse_up ] ; sh:targetClass linkml:ReachabilityQuery . linkml:EnumBinding a sh:NodeShape ; rdfs:comment "A binding of a slot or a class to a permissible value from an enumeration." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 13 ; - sh:path linkml:examples ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path linkml:todos ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; + sh:property [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path oslc:modifiedBy ], + sh:order 19 ; + sh:path rdfs:seeAlso ], [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; sh:order 37 ; sh:path dcterms:subject ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path OIO:inSubset ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 28 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path skos:broadMatch ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:mappingRelation ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 38 ; - sh:path schema1:keywords ], + sh:order 33 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path skos:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:relatedMatch ], + sh:order 16 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 36 ; + sh:path sh:order ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 9 ; sh:path linkml:deprecated ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:exactMatch ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path linkml:extensions ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path schema1:inLanguage ], + sh:order 6 ; + sh:path skos:definition ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path OIO:inSubset ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 32 ; sh:path pav:createdOn ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path skos:definition ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path sh:order ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path rdfs:seeAlso ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; sh:order 26 ; sh:path skos:closeMatch ], - [ sh:description "The level of obligation or recommendation strength for a metadata element" ; - sh:in ( "REQUIRED" "RECOMMENDED" "OPTIONAL" "EXAMPLE" "DISCOURAGED" ) ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:obligation_level ], - [ sh:datatype xsd:string ; - sh:description "A path to a slot that is being bound to a permissible value from an enumeration." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:binds_value_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path dcterms:title ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path dcterms:source ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path dcterms:contributor ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; + sh:order 27 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 13 ; + sh:path linkml:examples ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ], + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path oslc:modifiedBy ], [ sh:class linkml:EnumDefinition ; sh:defaultValue "string"^^xsd:string ; sh:description """defines the type of the object of the slot. Given the following slot definition @@ -2832,309 +2781,319 @@ implicitly asserts Y is an instance of C2 sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:range ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 35 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 17 ; + sh:path dcterms:source ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 21 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:pv_formula ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path skos:note ], + sh:order 8 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 22 ; + sh:path skos:altLabel ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 15 ; + sh:path skos:inScheme ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path pav:createdBy ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 23 ; sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:nodeKind sh:Literal ; + sh:order 12 ; + sh:path skos:note ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; sh:order 11 ; sh:path skos:editorialNote ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 33 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "agent that created the element" ; + sh:order 18 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "A path to a slot that is being bound to a permissible value from an enumeration." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path pav:createdBy ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:broadMatch ] ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:binds_value_of ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 38 ; + sh:path schema1:keywords ], + [ sh:description "The level of obligation or recommendation strength for a metadata element" ; + sh:in ( "REQUIRED" "RECOMMENDED" "OPTIONAL" "EXAMPLE" "DISCOURAGED" ) ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:obligation_level ] ; sh:targetClass linkml:EnumBinding . linkml:EnumDefinition a sh:NodeShape ; rdfs:comment "an element whose instances must be drawn from a specified set of permissible values" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "the version identifier of the enumeration code set" ; + sh:property [ sh:description "the identifier of an enumeration code set." ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path linkml:code_set_version ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:code_set ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 56 ; - sh:path pav:lastUpdatedOn ], + sh:nodeKind sh:IRI ; + sh:order 59 ; + sh:path bibo:status ], + [ sh:class linkml:ReachabilityQuery ; + sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path linkml:reachable_from ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "the version tag of the enumeration code set" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 33 ; - sh:path linkml:todos ], + sh:order 2 ; + sh:path linkml:code_set_tag ], [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; - sh:maxCount 1 ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; sh:nodeKind sh:IRI ; - sh:order 12 ; - sh:path linkml:is_a ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 17 ; + sh:path linkml:apply_to ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 24 ; + sh:path linkml:local_names ], + [ sh:datatype xsd:boolean ; + sh:description "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 43 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path linkml:is_open ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 40 ; + sh:path linkml:imported_from ], [ sh:datatype xsd:string ; sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 24 ; + sh:order 25 ; sh:path dcterms:conformsTo ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 51 ; - sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 52 ; - sh:path skos:broadMatch ], - [ sh:class linkml:EnumDefinition ; - sh:description "An enum definition that is used as the basis to create a new enum" ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml:inherits ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 30 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 40 ; - sh:path dcterms:source ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; + sh:order 42 ; + sh:path schema1:inLanguage ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; sh:nodeKind sh:IRI ; - sh:order 58 ; - sh:path bibo:status ], + sh:order 18 ; + sh:path linkml:values_from ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 53 ; + sh:order 54 ; sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 47 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:Definition ; - sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path linkml:mixins ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 23 ; - sh:path linkml:local_names ], [ sh:description "Defines the specific formula to be used to generate the permissible values." ; sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; sh:order 4 ; sh:path linkml:pv_formula ], - [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path rdfs:label ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path linkml:extensions ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 60 ; + sh:path sh:order ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 14 ; + sh:path linkml:abstract ], + [ sh:defaultValue "linkml:EnumDefinition"^^xsd:string ; + sh:description "URI of the enum that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:implements ], + sh:order 0 ; + sh:path linkml:enum_uri ], [ sh:datatype xsd:string ; - sh:description "the version tag of the enumeration code set" ; + sh:description "the version identifier of the enumeration code set" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:code_set_tag ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 50 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 3 ; + sh:path linkml:code_set_version ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 28 ; - sh:path linkml:annotations ], - [ sh:description "the identifier of an enumeration code set." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:code_set ], - [ sh:class linkml:ReachabilityQuery ; - sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + sh:order 8 ; + sh:path linkml:minus ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:reachable_from ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path linkml:values_from ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path skos:note ], + sh:order 56 ; + sh:path pav:createdOn ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 32 ; + sh:order 33 ; sh:path linkml:deprecated ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 44 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "An element in another schema which this element instantiates." ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path linkml:instantiates ], + sh:order 50 ; + sh:path skos:closeMatch ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 29 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 30 ; + sh:path skos:definition ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 36 ; + sh:order 37 ; sh:path linkml:examples ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 55 ; - sh:path pav:createdOn ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path linkml:definition_uri ], + sh:order 13 ; + sh:path linkml:is_a ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; sh:nodeKind sh:Literal ; - sh:order 39 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 48 ; - sh:path skos:exactMatch ], - [ sh:class linkml:PermissibleValue ; - sh:description "A list of possible values for a slot range" ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:permissible_values ], - [ sh:description "id of the schema that defined the element" ; + sh:order 21 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 32 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 46 ; + sh:path skos:altLabel ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 28 ; + sh:path linkml:extensions ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 38 ; - sh:path skos:inScheme ], - [ sh:class linkml:Definition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:path OIO:inSubset ], + [ sh:description "An element in another schema which this element instantiates." ; sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path linkml:apply_to ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:order 27 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 29 ; - sh:path skos:definition ], + sh:order 22 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:datatype xsd:boolean ; sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 14 ; + sh:order 15 ; sh:path linkml:mixin ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 42 ; + sh:order 43 ; sh:path rdfs:seeAlso ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 54 ; - sh:path dcterms:contributor ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml:concepts ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path OIO:inSubset ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 57 ; + sh:order 58 ; sh:path oslc:modifiedBy ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path linkml:abstract ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 46 ; + sh:order 47 ; sh:path skosxl:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 31 ; + sh:path linkml:alt_descriptions ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path linkml:definition_uri ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:nodeKind sh:IRI ; + sh:order 26 ; + sh:path linkml:implements ], + [ sh:class linkml:EnumDefinition ; + sh:description "An enum definition that is used as the basis to create a new enum" ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml:inherits ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 49 ; - sh:path skos:closeMatch ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:minus ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 61 ; - sh:path schema1:keywords ], + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; sh:description """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. @@ -3142,56 +3101,109 @@ Implementations of frameworks may choose to use this property to either (a) PARS 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""" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 18 ; + sh:order 19 ; sh:path linkml:string_serialization ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 39 ; + sh:path skos:inScheme ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; + sh:order 62 ; + sh:path schema1:keywords ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 55 ; + sh:path dcterms:contributor ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 48 ; + sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 53 ; + sh:path skos:broadMatch ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 61 ; + sh:path dcterms:subject ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; sh:order 45 ; - sh:path skos:altLabel ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:include ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 44 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 20 ; - sh:path linkml:id_prefixes ], + sh:order 57 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 34 ; + sh:order 35 ; sh:path skos:editorialNote ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 52 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:Definition ; + sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path linkml:mixins ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 59 ; - sh:path sh:order ], - [ sh:description "Controlled terms used to categorize an element." ; + sh:order 20 ; + sh:path rdfs:label ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 60 ; - sh:path dcterms:subject ], + sh:order 41 ; + sh:path dcterms:source ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 41 ; - sh:path schema1:inLanguage ], + sh:order 36 ; + sh:path skos:note ], [ sh:class linkml:MatchQuery ; sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 10 ; + sh:order 11 ; sh:path linkml:matches ], - [ sh:defaultValue "linkml:EnumDefinition"^^xsd:string ; - sh:description "URI of the enum that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; - sh:maxCount 1 ; + [ sh:class linkml:PermissibleValue ; + sh:description "A list of possible values for a slot range" ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:enum_uri ] ; + sh:order 5 ; + sh:path linkml:permissible_values ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 34 ; + sh:path linkml:todos ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml:concepts ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:include ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 51 ; + sh:path skos:relatedMatch ] ; sh:targetClass linkml:EnumDefinition . linkml:PermissibleValue a sh:NodeShape ; @@ -3199,812 +3211,792 @@ linkml:PermissibleValue a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path dcterms:title ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path OIO:inSubset ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 13 ; + sh:path linkml:todos ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 10 ; - sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:closeMatch ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; + sh:order 16 ; + sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "The actual permissible value itself" ; + sh:order 30 ; + sh:path skos:relatedMatch ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path linkml:text ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:mappingRelation ], + sh:order 20 ; + sh:path dcterms:source ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 28 ; sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path linkml:todos ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:nodeKind sh:IRI ; + sh:order 22 ; + sh:path rdfs:seeAlso ], + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path linkml:deprecated ], + sh:nodeKind sh:IRI ; + sh:order 18 ; + sh:path skos:inScheme ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 40 ; + sh:path dcterms:subject ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 39 ; sh:path sh:order ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path dcterms:source ], + sh:nodeKind sh:Literal ; + sh:order 19 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 21 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 41 ; + sh:path schema1:keywords ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 26 ; sh:path skosxl:altLabel ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:extensions ], - [ sh:description "Controlled terms used to categorize an element." ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 40 ; - sh:path dcterms:subject ], - [ sh:description "agent that modified the element" ; + sh:order 31 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:PermissibleValue ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path oslc:modifiedBy ], - [ sh:description "agent that created the element" ; + sh:order 6 ; + sh:path linkml:is_a ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml:annotations ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 17 ; + sh:path OIO:inSubset ], + [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:order 38 ; + sh:path bibo:status ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path schema1:inLanguage ], + sh:order 35 ; + sh:path pav:createdOn ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 37 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml:extensions ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; sh:order 32 ; sh:path skos:broadMatch ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path qudt:unit ], [ sh:datatype xsd:string ; sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; sh:order 25 ; sh:path skos:altLabel ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml:implements ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 14 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 12 ; + sh:path linkml:deprecated ], [ sh:description "the value meaning of a permissible value" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 2 ; sh:path linkml:meaning ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 36 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path pav:createdBy ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 24 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + [ sh:description "An element in another schema which this element instantiates." ; sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path skos:narrowMatch ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:instantiates ], + [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path skos:inScheme ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 34 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:nodeKind sh:Literal ; + sh:order 15 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 11 ; + sh:path dcterms:title ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 23 ; sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:PermissibleValue ; - sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:mixins ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 16 ; - sh:path linkml:examples ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path pav:lastUpdatedOn ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path qudt:unit ], + sh:order 29 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path skos:definition ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:description "The actual permissible value itself" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 41 ; - sh:path schema1:keywords ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path dcterms:contributor ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:implements ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path rdfs:seeAlso ], + sh:order 0 ; + sh:path linkml:text ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path linkml:alt_descriptions ], [ sh:class linkml:PermissibleValue ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:is_a ], - [ sh:description "An element in another schema which this element instantiates." ; + sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:instantiates ] ; + sh:order 7 ; + sh:path linkml:mixins ] ; sh:targetClass linkml:PermissibleValue . linkml:TypeDefinition a sh:NodeShape ; rdfs:comment "an element that whose instances are atomic scalar values that can be mapped to primitive types" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:TypeDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:union_of ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 38 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 34 ; - sh:path skos:note ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 14 ; - sh:path linkml:none_of ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path linkml:annotations ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:property [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:nodeKind sh:IRI ; sh:order 24 ; sh:path linkml:implements ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 28 ; - sh:path skos:definition ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 59 ; - sh:path dcterms:subject ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:structured_pattern ], - [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path rdfs:label ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 43 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 40 ; - sh:path schema1:inLanguage ], + sh:order 48 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; sh:order 44 ; sh:path skos:altLabel ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 42 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 46 ; - sh:path skos:mappingRelation ], - [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:order 37 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path linkml:implicit_prefix ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:order 54 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:pattern ], + sh:order 55 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 11 ; + sh:path linkml:equals_number ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 53 ; + sh:path dcterms:contributor ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; sh:order 50 ; sh:path skos:narrowMatch ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path linkml:todos ], + sh:order 58 ; + sh:path sh:order ], [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 21 ; sh:path linkml:definition_uri ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 51 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 60 ; + sh:path schema1:keywords ], [ sh:description "An element in another schema which this element instantiates." ; sh:nodeKind sh:IRI ; sh:order 25 ; sh:path linkml:instantiates ], - [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:minimum_value ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 59 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:equals_string ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 28 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 49 ; + sh:path skos:relatedMatch ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 39 ; - sh:path dcterms:source ], + sh:order 52 ; + sh:path pav:createdBy ], [ sh:datatype xsd:string ; - sh:description "the name of the python object that implements this type definition" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path linkml:repr ], - [ sh:class linkml:LocalName ; + sh:order 40 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 38 ; + sh:path linkml:imported_from ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 22 ; - sh:path linkml:local_names ], + sh:order 26 ; + sh:path linkml:extensions ], [ sh:description "The uri that defines the possible values for the type definition" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 2 ; sh:path linkml:type_uri ], - [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:maximum_value ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 58 ; - sh:path sh:order ], - [ sh:class linkml:TypeDefinition ; - sh:description "A parent type from which type properties are inherited" ; + sh:order 8 ; + sh:path linkml:implicit_prefix ], + [ sh:datatype xsd:string ; + sh:description "python base type in the LinkML runtime that implements this type definition" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path linkml:base ], + [ sh:class linkml:TypeDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:typeof ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 4 ; + sh:path linkml:union_of ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; - sh:order 48 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:order 47 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path linkml:equals_number ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 20 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 30 ; - sh:path dcterms:title ], + sh:nodeKind sh:IRI ; + sh:order 57 ; + sh:path bibo:status ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; sh:nodeKind sh:Literal ; - sh:order 60 ; - sh:path schema1:keywords ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 53 ; - sh:path dcterms:contributor ], + sh:order 10 ; + sh:path linkml:equals_string_in ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 29 ; sh:path linkml:alt_descriptions ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path OIO:inSubset ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 30 ; + sh:path dcterms:title ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path qudt:unit ], + sh:order 6 ; + sh:path linkml:structured_pattern ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 39 ; + sh:path dcterms:source ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 16 ; + sh:path linkml:any_of ], + [ sh:class linkml:TypeDefinition ; + sh:description "A parent type from which type properties are inherited" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:typeof ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path linkml:equals_string_in ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 19 ; + sh:path linkml:id_prefixes ], + [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path linkml:maximum_value ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 49 ; - sh:path skos:relatedMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 43 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 15 ; + sh:path linkml:exactly_one_of ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 45 ; + sh:path skosxl:altLabel ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 51 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:order 41 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 54 ; - sh:path pav:createdOn ], - [ sh:description "agent that created the element" ; + sh:order 31 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 52 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:nodeKind sh:Literal ; + sh:order 18 ; + sh:path rdfs:label ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 55 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 16 ; - sh:path linkml:any_of ], + sh:order 5 ; + sh:path linkml:pattern ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 35 ; sh:path linkml:examples ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 22 ; + sh:path linkml:local_names ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path OIO:inSubset ], + [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:minimum_value ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 27 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "python base type in the LinkML runtime that implements this type definition" ; + sh:description "the name of the python object that implements this type definition" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:base ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 47 ; - sh:path skos:exactMatch ], - [ sh:description "status of the element" ; + sh:order 3 ; + sh:path linkml:repr ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 57 ; - sh:path bibo:status ], - [ sh:description "id of the schema that defined the element" ; + sh:order 56 ; + sh:path oslc:modifiedBy ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path skos:inScheme ], + sh:order 42 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; sh:order 33 ; sh:path skos:editorialNote ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 46 ; + sh:path skos:mappingRelation ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 17 ; sh:path linkml:all_of ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 45 ; - sh:path skosxl:altLabel ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 56 ; - sh:path oslc:modifiedBy ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 26 ; - sh:path linkml:extensions ], [ sh:datatype xsd:string ; sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 23 ; sh:path dcterms:conformsTo ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 41 ; - sh:path rdfs:seeAlso ], [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 15 ; - sh:path linkml:exactly_one_of ], + sh:order 14 ; + sh:path linkml:none_of ], [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:id_prefixes ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:order 32 ; + sh:path linkml:todos ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path qudt:unit ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 20 ; - sh:path linkml:id_prefixes_are_closed ] ; + sh:order 34 ; + sh:path skos:note ] ; sh:targetClass linkml:TypeDefinition . linkml:AnonymousEnumExpression a sh:NodeShape ; rdfs:comment "An enum_expression that is not named" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:PermissibleValue ; + sh:property [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml:include ], + [ sh:class linkml:PermissibleValue ; sh:description "A list of possible values for a slot range" ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml:permissible_values ], - [ sh:description "the identifier of an enumeration code set." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:code_set ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:nodeKind sh:IRI ; - sh:order 10 ; - sh:path linkml:concepts ], - [ sh:class linkml:MatchQuery ; - sh:description "Specifies a match query that is used to calculate the list of permissible values" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:matches ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ], - [ sh:datatype xsd:string ; - sh:description "the version tag of the enumeration code set" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:code_set_tag ], - [ sh:datatype xsd:string ; - sh:description "the version identifier of the enumeration code set" ; + [ sh:datatype xsd:string ; + sh:description "the version identifier of the enumeration code set" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path linkml:code_set_version ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path linkml:include ], [ sh:class linkml:AnonymousEnumExpression ; sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; + sh:order 7 ; sh:path linkml:minus ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml:concepts ], [ sh:class linkml:ReachabilityQuery ; sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; + sh:order 9 ; sh:path linkml:reachable_from ], + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:pv_formula ], + [ sh:description "the identifier of an enumeration code set." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:code_set ], [ sh:class linkml:EnumDefinition ; sh:description "An enum definition that is used as the basis to create a new enum" ; sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:inherits ] ; + sh:order 8 ; + sh:path linkml:inherits ], + [ sh:datatype xsd:boolean ; + sh:description "Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path linkml:is_open ], + [ sh:class linkml:MatchQuery ; + sh:description "Specifies a match query that is used to calculate the list of permissible values" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path linkml:matches ], + [ sh:datatype xsd:string ; + sh:description "the version tag of the enumeration code set" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path linkml:code_set_tag ] ; sh:targetClass linkml:AnonymousEnumExpression . linkml:PathExpression a sh:NodeShape ; rdfs:comment "An expression that describes an abstract path from an object to another through a sequence of slot lookups" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:property [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 42 ; - sh:path schema1:keywords ], - [ sh:class linkml:PathExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path linkml:any_of ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 11 ; - sh:path linkml:alt_descriptions ], + sh:order 37 ; + sh:path pav:lastUpdatedOn ], [ sh:class linkml:PathExpression ; - sh:description "holds if none of the expressions hold" ; + sh:description "in a sequential list, this indicates the next member" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:none_of ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:order 0 ; + sh:path linkml:followed_by ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path pav:createdOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:extensions ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path skos:note ], - [ sh:datatype xsd:boolean ; - sh:description "true if the slot is to be inversed" ; + sh:order 38 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:reversed ], + sh:order 40 ; + sh:path sh:order ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 21 ; sh:path dcterms:source ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path skos:inScheme ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path skosxl:altLabel ], - [ sh:class linkml:PathExpression ; - sh:description "holds if all of the expressions hold" ; + sh:order 8 ; + sh:path linkml:extensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:all_of ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path linkml:deprecated ], + sh:order 11 ; + sh:path linkml:alt_descriptions ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path linkml:todos ], + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 29 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 10 ; sh:path skos:definition ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 40 ; - sh:path sh:order ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + [ sh:datatype xsd:boolean ; + sh:description "true if the slot is to be inversed" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path schema1:inLanguage ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 41 ; - sh:path dcterms:subject ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path dcterms:contributor ], + sh:order 5 ; + sh:path linkml:reversed ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 18 ; sh:path OIO:inSubset ], + [ sh:class linkml:PathExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:all_of ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 35 ; + sh:path dcterms:contributor ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 17 ; sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path skos:broadMatch ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 34 ; sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path skos:closeMatch ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 27 ; + sh:path skosxl:altLabel ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 24 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path skos:relatedMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path skos:broadMatch ], + sh:order 22 ; + sh:path schema1:inLanguage ], [ sh:datatype xsd:string ; sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; sh:order 26 ; sh:path skos:altLabel ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 39 ; - sh:path bibo:status ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; - sh:maxCount 1 ; + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:range_expression ], - [ sh:class linkml:SlotDefinition ; - sh:description "the slot to traverse" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:traverse ], + sh:order 9 ; + sh:path linkml:annotations ], [ sh:class linkml:PathExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:exactly_one_of ], + sh:order 1 ; + sh:path linkml:none_of ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 20 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:exactMatch ], + sh:order 16 ; + sh:path skos:note ], [ sh:class linkml:PathExpression ; - sh:description "in a sequential list, this indicates the next member" ; - sh:maxCount 1 ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 0 ; - sh:path linkml:followed_by ], + sh:order 4 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path skos:inScheme ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], + sh:order 36 ; + sh:path pav:createdOn ], + [ sh:class linkml:PathExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml:any_of ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path skos:editorialNote ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 20 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:description "agent that modified the element" ; + sh:order 7 ; + sh:path linkml:range_expression ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path oslc:modifiedBy ], + sh:nodeKind sh:Literal ; + sh:order 13 ; + sh:path linkml:deprecated ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; sh:order 32 ; @@ -4012,902 +4004,928 @@ linkml:PathExpression a sh:NodeShape ; [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 23 ; - sh:path rdfs:seeAlso ] ; - sh:targetClass linkml:PathExpression . - -linkml:PatternExpression a sh:NodeShape ; - rdfs:comment "a regular expression pattern used to evaluate conformance of a string" ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path dcterms:subject ], + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 22 ; - sh:path skosxl:altLabel ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; + sh:nodeKind sh:Literal ; sh:order 12 ; - sh:path linkml:examples ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:class linkml:SlotDefinition ; + sh:description "the slot to traverse" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 6 ; + sh:path linkml:traverse ], + [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 39 ; + sh:path bibo:status ] ; + sh:targetClass linkml:PathExpression . + +linkml:PatternExpression a sh:NodeShape ; + rdfs:comment "a regular expression pattern used to evaluate conformance of a string" ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:extensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:datatype xsd:boolean ; - sh:description "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:partial_match ], + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path linkml:deprecated ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:boolean ; + sh:description "if true then the pattern is first string interpolated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path sh:order ], + sh:order 1 ; + sh:path linkml:interpolated ], [ sh:datatype xsd:string ; sh:description "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path linkml:syntax ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 31 ; sh:path pav:createdOn ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "id of the schema that defined the element" ; + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:datatype xsd:boolean ; - sh:description "if true then the pattern is first string interpolated" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path linkml:interpolated ], + sh:order 33 ; + sh:path oslc:modifiedBy ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 18 ; sh:path rdfs:seeAlso ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:description "agent that contributed to the element" ; + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path dcterms:contributor ], + sh:order 36 ; + sh:path dcterms:subject ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; sh:order 26 ; sh:path skos:relatedMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path schema1:keywords ], + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 22 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:datatype xsd:boolean ; + sh:description "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:partial_match ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 35 ; + sh:path sh:order ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; sh:order 11 ; sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path linkml:todos ], [ sh:datatype xsd:string ; sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:broadMatch ] ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 10 ; + sh:path skos:editorialNote ] ; sh:targetClass linkml:PatternExpression . qudt:Unit a sh:NodeShape ; - rdfs:comment "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; + rdfs:comment "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT" ; - sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "Expression for deriving this unit from other units" ; + sh:property [ sh:datatype xsd:string ; + sh:description "name of the unit encoded as a symbol" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:derivation ], + sh:order 0 ; + sh:path qudt:symbol ], [ sh:datatype xsd:string ; + sh:description "associates a QUDT unit with its UCUM code (case-sensitive)." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path qudt:iec61360Code ], + sh:order 4 ; + sh:path qudt:ucumCode ], [ sh:datatype xsd:string ; - sh:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + sh:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path qudt:abbreviation ], [ sh:datatype xsd:string ; - sh:description "name of the unit encoded as a symbol" ; + sh:description "the spelled out name of the unit, for example, meter" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path qudt:symbol ], + sh:order 2 ; + sh:path rdfs:label ], [ sh:datatype xsd:string ; - sh:description "associates a QUDT unit with its UCUM code (case-sensitive)." ; + sh:description "Expression for deriving this unit from other units" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path qudt:ucumCode ], + sh:order 5 ; + sh:path linkml:derivation ], [ sh:description "Concept in a vocabulary or ontology that denotes the kind of quantity being measured, e.g. length" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 6 ; sh:path qudt:hasQuantityKind ], [ sh:datatype xsd:string ; - sh:description "the spelled out name of the unit, for example, meter" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path rdfs:label ] ; + sh:order 7 ; + sh:path qudt:iec61360Code ], + [ sh:description "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT" ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path skos:exactMatch ] ; sh:targetClass qudt:Unit . linkml:ClassDefinition a sh:NodeShape ; rdfs:comment "an element whose instances are complex objects that may have slot-value assignments" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:SlotDefinition ; - sh:description "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" ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:defining_slots ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 39 ; - sh:path skos:definition ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 32 ; - sh:path linkml:definition_uri ], - [ sh:class linkml:ClassDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:union_of ], + sh:property [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 37 ; + sh:path linkml:extensions ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 50 ; sh:path dcterms:source ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 42 ; - sh:path linkml:deprecated ], - [ sh:class linkml:UniqueKey ; - sh:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:unique_keys ], - [ sh:class linkml:ClassDefinition ; - sh:description "A primary parent class from which inheritable metaslots are propagated" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path linkml:is_a ], - [ sh:description "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; + sh:description """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) GENERATE: 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""" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:subclass_of ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 70 ; - sh:path dcterms:subject ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 43 ; - sh:path linkml:todos ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 68 ; - sh:path bibo:status ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 10 ; - sh:path linkml:classification_rules ], + sh:order 28 ; + sh:path linkml:string_serialization ], [ sh:datatype xsd:boolean ; - sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path linkml:children_are_mutually_disjoint ], - [ sh:class linkml:ExtraSlotsExpression ; - sh:description """How a class instance handles extra data not specified in the class definition. -Note that this does *not* define the constraints that are placed on additional slots defined by inheriting classes. - -Possible values: -- `allowed: true` - allow all additional data -- `allowed: false` (or `allowed:` or `allowed: null` while `range_expression` is `null`) - - forbid all additional data (default) -- `range_expression: ...` - allow additional data if it matches the slot expression (see examples) -""" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 15 ; - sh:path linkml:extra_slots ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 40 ; - sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:description "true if this class represents a relationship rather than an entity" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 69 ; - sh:path sh:order ], + sh:order 12 ; + sh:path linkml:represents_relationship ], [ sh:datatype xsd:string ; sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 34 ; sh:path dcterms:conformsTo ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 39 ; + sh:path skos:definition ], + [ sh:class linkml:SlotDefinition ; + sh:description "expresses constraints on a group of slots for a class expression" ; + sh:nodeKind sh:IRI ; + sh:order 21 ; + sh:path linkml:slot_conditions ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 52 ; sh:path rdfs:seeAlso ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:datatype xsd:boolean ; + sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 49 ; - sh:path linkml:imported_from ], + sh:order 14 ; + sh:path linkml:children_are_mutually_disjoint ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 46 ; + sh:path linkml:examples ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 18 ; + sh:path linkml:exactly_one_of ], [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 24 ; - sh:path linkml:mixin ], - [ sh:class linkml:ClassDefinition ; - sh:description "A collection of secondary parent mixin classes from which inheritable metaslots are propagated" ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:mixins ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 63 ; - sh:path pav:createdBy ], + sh:order 23 ; + sh:path linkml:abstract ], [ sh:datatype xsd:boolean ; sh:description "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path linkml:tree_root ], - [ sh:datatype xsd:boolean ; - sh:description "true if this class represents a relationship rather than an entity" ; - sh:maxCount 1 ; + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path linkml:represents_relationship ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:order 55 ; + sh:path skos:altLabel ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 40 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 59 ; + sh:path skos:closeMatch ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 68 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 23 ; - sh:path linkml:abstract ], + sh:order 49 ; + sh:path linkml:imported_from ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 48 ; + sh:path skos:inScheme ], + [ sh:class linkml:SlotDefinition ; + sh:description "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" ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml:defining_slots ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 47 ; sh:path OIO:inSubset ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 67 ; - sh:path oslc:modifiedBy ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 44 ; - sh:path skos:editorialNote ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 18 ; - sh:path linkml:exactly_one_of ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path linkml:values_from ], [ sh:class linkml:SlotDefinition ; sh:description "Inline definition of slots" ; sh:nodeKind sh:IRI ; sh:order 2 ; sh:path linkml:attributes ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 64 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 57 ; - sh:path skos:mappingRelation ], [ sh:description "An element in another schema which this element instantiates." ; sh:nodeKind sh:IRI ; sh:order 36 ; sh:path linkml:instantiates ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 66 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:SlotDefinition ; - sh:description "the refinement of a slot in the context of the containing class definition." ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:slot_usage ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path linkml:implements ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 58 ; - sh:path skos:exactMatch ], + sh:order 43 ; + sh:path linkml:todos ], [ sh:datatype xsd:string ; sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; sh:nodeKind sh:Literal ; sh:order 30 ; sh:path linkml:id_prefixes ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:nodeKind sh:Literal ; + sh:order 45 ; + sh:path skos:note ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:nodeKind sh:IRI ; - sh:order 53 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 35 ; + sh:path linkml:implements ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 51 ; + sh:path schema1:inLanguage ], + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 62 ; - sh:path skos:broadMatch ], + sh:order 70 ; + sh:path dcterms:subject ], [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 33 ; sh:path linkml:local_names ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 65 ; - sh:path pav:createdOn ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 46 ; - sh:path linkml:examples ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 71 ; - sh:path schema1:keywords ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; + [ sh:class linkml:ClassDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; sh:nodeKind sh:IRI ; - sh:order 48 ; - sh:path skos:inScheme ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if all of the expressions hold" ; + sh:order 5 ; + sh:path linkml:union_of ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 20 ; - sh:path linkml:all_of ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 56 ; + sh:path skosxl:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 62 ; + sh:path skos:broadMatch ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 41 ; - sh:path dcterms:title ], + sh:nodeKind sh:IRI ; + sh:order 67 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:ClassDefinition ; + sh:description "A collection of secondary parent mixin classes from which inheritable metaslots are propagated" ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path linkml:mixins ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; sh:order 60 ; sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description """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) GENERATE: 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""" ; + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 38 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:boolean ; + sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 28 ; - sh:path linkml:string_serialization ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 54 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 11 ; + sh:path linkml:slot_names_unique ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 19 ; sh:path linkml:none_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 61 ; - sh:path skos:narrowMatch ], + sh:order 64 ; + sh:path dcterms:contributor ], [ sh:class linkml:SlotDefinition ; sh:description "collection of slot names that are applicable to a class" ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:slots ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 17 ; + sh:path linkml:any_of ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path linkml:classification_rules ], [ sh:class linkml:ClassDefinition ; - sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path linkml:disjoint_with ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 26 ; + sh:path linkml:apply_to ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 55 ; - sh:path skos:altLabel ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 37 ; - sh:path linkml:extensions ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:order 31 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 56 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:order 20 ; + sh:path linkml:all_of ], + [ sh:class linkml:ClassRule ; + sh:description "the collection of rules that apply to all members of this class" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path sh:rule ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 53 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 61 ; + sh:path skos:narrowMatch ], + [ sh:defaultValue "linkml:ClassDefinition"^^xsd:string ; + sh:description "URI of the class that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml:class_uri ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 51 ; - sh:path schema1:inLanguage ], - [ sh:datatype xsd:boolean ; - sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; + sh:order 66 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:ClassDefinition ; + sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml:disjoint_with ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 71 ; + sh:path schema1:keywords ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 54 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:SlotDefinition ; + sh:description "the refinement of a slot in the context of the containing class definition." ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:slot_usage ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 63 ; + sh:path pav:createdBy ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path linkml:values_from ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path linkml:slot_names_unique ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 17 ; - sh:path linkml:any_of ], + sh:order 44 ; + sh:path skos:editorialNote ], [ sh:datatype xsd:string ; sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 16 ; sh:path skos:prefLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 57 ; + sh:path skos:mappingRelation ], [ sh:class linkml:ClassDefinition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:description "A primary parent class from which inheritable metaslots are propagated" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path linkml:apply_to ], + sh:order 22 ; + sh:path linkml:is_a ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 42 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 41 ; + sh:path dcterms:title ], [ sh:datatype xsd:string ; sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 29 ; sh:path rdfs:label ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 38 ; - sh:path linkml:annotations ], - [ sh:class linkml:SlotDefinition ; - sh:description "expresses constraints on a group of slots for a class expression" ; - sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path linkml:slot_conditions ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 59 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 45 ; - sh:path skos:note ], - [ sh:defaultValue "linkml:ClassDefinition"^^xsd:string ; - sh:description "URI of the class that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:class_uri ], - [ sh:class linkml:ClassRule ; - sh:description "the collection of rules that apply to all members of this class" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path sh:rule ] ; - sh:targetClass linkml:ClassDefinition . + sh:nodeKind sh:Literal ; + sh:order 65 ; + sh:path pav:createdOn ], + [ sh:class linkml:ExtraSlotsExpression ; + sh:description """How a class instance handles extra data not specified in the class definition. +Note that this does *not* define the constraints that are placed on additional slots defined by inheriting classes. -linkml:Definition a sh:NodeShape ; - rdfs:comment "abstract base class for core metaclasses" ; - sh:closed false ; - sh:ignoredProperties ( linkml:exact_cardinality linkml:path_rule linkml:inherits linkml:any_of linkml:children_are_mutually_disjoint linkml:has_member linkml:classification_rules linkml:role rdf:type linkml:ifabsent linkml:value_presence rdfs:subPropertyOf linkml:code_set_tag linkml:equals_expression linkml:is_class_field linkml:symmetric linkml:identifier linkml:none_of linkml:include linkml:tree_root linkml:minus linkml:shared linkml:pv_formula linkml:relational_role linkml:slot_usage linkml:structured_pattern linkml:owner linkml:minimum_value linkml:inherited linkml:singular_name linkml:readonly linkml:maximum_value linkml:attributes linkml:usage_slot_name linkml:equals_number linkml:permissible_values linkml:domain_of linkml:slots linkml:asymmetric linkml:required linkml:recommended linkml:array linkml:list_elements_unique linkml:represents_relationship linkml:slot_names_unique linkml:designates_type linkml:pattern linkml:inlined_as_list linkml:extra_slots linkml:disjoint_with linkml:domain linkml:union_of linkml:transitive_form_of linkml:all_members linkml:transitive linkml:defining_slots linkml:equals_string_in linkml:slot_uri sh:group linkml:reflexive_transitive_form_of owl:inverseOf linkml:class_uri qudt:unit linkml:concepts linkml:is_grouping_slot linkml:locally_reflexive linkml:slot_conditions linkml:implicit_prefix linkml:irreflexive linkml:minimum_cardinality linkml:is_usage_slot linkml:subclass_of linkml:type_mappings linkml:range_expression linkml:enum_uri linkml:exactly_one_of linkml:list_elements_ordered linkml:key skos:prefLabel linkml:inlined linkml:code_set_version linkml:maximum_cardinality linkml:enum_range sh:rule linkml:code_set linkml:all_of linkml:unique_keys linkml:range linkml:reachable_from linkml:multivalued linkml:matches linkml:reflexive linkml:equals_string linkml:bindings ) ; - sh:property [ sh:class linkml:Example ; - sh:description "example usages of an element" ; +Possible values: +- `allowed: true` - allow all additional data +- `allowed: false` (or `allowed:` or `allowed: null` while `range_expression` is `null`) - + forbid all additional data (default) +- `range_expression: ...` - allow additional data if it matches the slot expression (see examples) +""" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 15 ; + sh:path linkml:extra_slots ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; sh:order 24 ; - sh:path linkml:examples ], - [ sh:description "agent that modified the element" ; + sh:path linkml:mixin ], + [ sh:class linkml:UniqueKey ; + sh:description "A collection of named unique keys for this class. Such unique keys may be spread over several slots, which is why there are also called \"compound keys\". A unique key uniquely identifies instances of the class within a given container, meaning there cannot be two (or more) instances of the class with the same values for all the slots that make up the unique key." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml:unique_keys ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 45 ; - sh:path oslc:modifiedBy ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 32 ; + sh:path linkml:definition_uri ], + [ sh:description "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path dcterms:source ], + sh:order 4 ; + sh:path linkml:subclass_of ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; - sh:order 36 ; + sh:order 58 ; sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 33 ; - sh:path skos:altLabel ], - [ sh:class linkml:Definition ; - sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; - sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:mixins ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path dcterms:title ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 15 ; - sh:path linkml:extensions ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 47 ; - sh:path sh:order ], + sh:order 69 ; + sh:path sh:order ] ; + sh:targetClass linkml:ClassDefinition . + +linkml:Definition a sh:NodeShape ; + rdfs:comment "abstract base class for core metaclasses" ; + sh:closed false ; + sh:ignoredProperties ( linkml:equals_string linkml:multivalued linkml:is_class_field linkml:reflexive_transitive_form_of linkml:locally_reflexive linkml:exactly_one_of linkml:readonly linkml:inherited linkml:reflexive linkml:slot_conditions linkml:key linkml:pv_formula linkml:asymmetric linkml:range_expression linkml:slots linkml:designates_type sh:group linkml:minus linkml:type_mappings linkml:list_elements_unique linkml:maximum_cardinality linkml:equals_string_in linkml:identifier linkml:inlined skos:prefLabel linkml:value_presence linkml:transitive_form_of linkml:include linkml:is_grouping_slot linkml:union_of linkml:represents_relationship linkml:equals_number linkml:singular_name linkml:pattern linkml:symmetric linkml:is_open linkml:bindings linkml:code_set linkml:range linkml:irreflexive linkml:none_of linkml:extra_slots linkml:minimum_cardinality linkml:transitive linkml:exact_cardinality linkml:ifabsent linkml:shared linkml:owner linkml:has_member linkml:slot_names_unique linkml:enum_range linkml:concepts linkml:code_set_tag linkml:usage_slot_name linkml:slot_usage owl:inverseOf linkml:relational_role linkml:all_members linkml:attributes linkml:all_of linkml:role linkml:domain_of linkml:equals_expression linkml:any_of linkml:defining_slots rdfs:subPropertyOf linkml:minimum_value linkml:recommended linkml:disjoint_with linkml:slot_uri linkml:reachable_from linkml:maximum_value linkml:code_set_version linkml:required linkml:domain linkml:enum_uri linkml:unique_keys linkml:subclass_of linkml:permissible_values linkml:matches linkml:array linkml:class_uri linkml:implicit_prefix linkml:list_elements_ordered linkml:path_rule sh:rule linkml:is_usage_slot qudt:unit linkml:classification_rules linkml:inlined_as_list linkml:children_are_mutually_disjoint rdf:type linkml:tree_root linkml:inherits linkml:structured_pattern ) ; + sh:property [ sh:datatype xsd:string ; + sh:description """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) GENERATE: 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""" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path linkml:string_serialization ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml:implements ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 30 ; sh:path rdfs:seeAlso ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 32 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 17 ; sh:path skos:definition ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:values_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 35 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:Definition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; sh:nodeKind sh:IRI ; - sh:order 39 ; - sh:path skos:narrowMatch ], + sh:order 4 ; + sh:path linkml:apply_to ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 49 ; - sh:path schema1:keywords ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 42 ; - sh:path dcterms:contributor ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 27 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path linkml:id_prefixes ], + sh:order 2 ; + sh:path linkml:mixin ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 18 ; sh:path linkml:alt_descriptions ], - [ sh:description "status of the element" ; + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 46 ; - sh:path bibo:status ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:Literal ; + sh:order 12 ; + sh:path dcterms:conformsTo ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 16 ; - sh:path linkml:annotations ], + sh:order 24 ; + sh:path linkml:examples ], [ sh:datatype xsd:string ; - sh:description """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) GENERATE: 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""" ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:nodeKind sh:Literal ; + sh:order 23 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 38 ; + sh:path skos:relatedMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 37 ; + sh:path skos:closeMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 44 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 39 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 33 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path linkml:string_serialization ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 47 ; + sh:path sh:order ], + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 10 ; - sh:path linkml:definition_uri ], + sh:order 26 ; + sh:path skos:inScheme ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path dcterms:conformsTo ], + sh:order 29 ; + sh:path schema1:inLanguage ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 44 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:order 43 ; + sh:path pav:createdOn ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 15 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 19 ; + sh:path dcterms:title ], + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:is_a ], + sh:order 48 ; + sh:path dcterms:subject ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 41 ; sh:path pav:createdBy ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path linkml:todos ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 49 ; + sh:path schema1:keywords ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path skos:mappingRelation ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 5 ; + sh:path linkml:values_from ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 27 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml:definition_uri ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 16 ; + sh:path linkml:annotations ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml:instantiates ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 42 ; + sh:path dcterms:contributor ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 29 ; - sh:path schema1:inLanguage ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path OIO:inSubset ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 45 ; + sh:path oslc:modifiedBy ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path linkml:implements ], - [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:order 28 ; + sh:path dcterms:source ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path rdfs:label ], - [ sh:class linkml:Definition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:apply_to ], + sh:order 46 ; + sh:path bibo:status ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 20 ; sh:path linkml:deprecated ], - [ sh:description "id of the schema that defined the element" ; + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path skos:inScheme ], + sh:order 31 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:nodeKind sh:Literal ; + sh:order 8 ; + sh:path linkml:id_prefixes ], + [ sh:class linkml:Definition ; + sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml:mixins ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path rdfs:label ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path skos:exactMatch ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 11 ; + sh:path linkml:local_names ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 34 ; sh:path skosxl:altLabel ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 43 ; - sh:path pav:createdOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 23 ; - sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:order 25 ; + sh:path OIO:inSubset ], + [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path skos:closeMatch ], + sh:order 0 ; + sh:path linkml:is_a ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; sh:order 40 ; sh:path skos:broadMatch ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:mixin ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 48 ; - sh:path dcterms:subject ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 32 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:boolean ; sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path linkml:abstract ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 11 ; - sh:path linkml:local_names ] ; + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 22 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 21 ; + sh:path linkml:todos ] ; sh:targetClass linkml:Definition . linkml:LocalName a sh:NodeShape ; @@ -4915,44 +4933,35 @@ linkml:LocalName a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "a name assigned to an element in a given ontology" ; + sh:description "the ncname of the source of the name" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path skos:altLabel ], + sh:order 0 ; + sh:path linkml:local_name_source ], [ sh:datatype xsd:string ; - sh:description "the ncname of the source of the name" ; + sh:description "a name assigned to an element in a given ontology" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path linkml:local_name_source ] ; + sh:order 1 ; + sh:path skos:altLabel ] ; sh:targetClass linkml:LocalName . linkml:AnonymousTypeExpression a sh:NodeShape ; rdfs:comment "A type expression that is not a top-level named type definition. Used for nesting." ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:none_of ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 10 ; - sh:path linkml:exactly_one_of ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 11 ; - sh:path linkml:any_of ], - [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:property [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:maximum_value ], + sh:order 7 ; + sh:path linkml:minimum_value ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path linkml:equals_number ], [ sh:class qudt:Unit ; sh:description "an encoding of a unit" ; sh:maxCount 1 ; @@ -4965,12 +4974,6 @@ linkml:AnonymousTypeExpression a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path linkml:structured_pattern ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path linkml:pattern ], [ sh:datatype xsd:string ; sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; sh:nodeKind sh:Literal ; @@ -4981,22 +4984,37 @@ linkml:AnonymousTypeExpression a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 12 ; sh:path linkml:all_of ], + [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:maximum_value ], [ sh:datatype xsd:string ; sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path linkml:equals_string ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path linkml:equals_number ], - [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:minimum_value ], + sh:order 0 ; + sh:path linkml:pattern ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml:none_of ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 11 ; + sh:path linkml:any_of ], [ sh:datatype xsd:string ; sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; @@ -5008,126 +5026,110 @@ linkml:AnonymousTypeExpression a sh:NodeShape ; linkml:AnonymousSlotExpression a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 14 ; - sh:path linkml:implicit_prefix ], - [ sh:datatype xsd:string ; - sh:description "the value of the slot must equal the value of the evaluated expression" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:equals_expression ], - [ sh:datatype xsd:integer ; - sh:description "the minimum number of entries for a multivalued slot" ; + sh:property [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path linkml:minimum_cardinality ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 5 ; + sh:path linkml:recommended ], + [ sh:class linkml:ArrayExpression ; + sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 46 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 30 ; - sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 52 ; - sh:path skos:closeMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 29 ; + sh:path linkml:array ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 55 ; - sh:path skos:broadMatch ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; + sh:order 45 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; - sh:order 43 ; - sh:path dcterms:source ], - [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:order 54 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:minimum_value ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 26 ; - sh:path linkml:exactly_one_of ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 62 ; - sh:path sh:order ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 63 ; - sh:path dcterms:subject ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 34 ; - sh:path dcterms:title ], + sh:order 2 ; + sh:path linkml:enum_range ], [ sh:datatype xsd:boolean ; sh:description "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." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path linkml:inlined ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 60 ; - sh:path oslc:modifiedBy ], + sh:nodeKind sh:Literal ; + sh:order 14 ; + sh:path linkml:implicit_prefix ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path linkml:todos ], + sh:order 38 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 52 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:boolean ; - sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:description "true means that the slot must be present in instances of the class definition" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:recommended ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:order 4 ; + sh:path linkml:required ], + [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:maximum_value ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:nodeKind sh:Literal ; + sh:order 17 ; + sh:path linkml:equals_string_in ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:range_expression ], - [ sh:description "if PRESENT then a value must be present (for lists there must be at least one value). If ABSENT then a value must be absent (for lists, must be empty)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:order 28 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:boolean ; + sh:description "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." ; sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:value_presence ], - [ sh:class linkml:ArrayExpression ; - sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; + sh:nodeKind sh:Literal ; + sh:order 8 ; + sh:path linkml:inlined_as_list ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 46 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 29 ; - sh:path linkml:array ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:order 12 ; + sh:path linkml:structured_pattern ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 33 ; + sh:path linkml:alt_descriptions ], + [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:minimum_value ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path skos:definition ], - [ sh:description "agent that created the element" ; + sh:order 64 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 56 ; - sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 53 ; - sh:path skos:relatedMatch ], + sh:nodeKind sh:Literal ; + sh:order 18 ; + sh:path linkml:equals_number ], [ sh:class linkml:Element ; sh:defaultValue "string"^^xsd:string ; sh:description """defines the type of the object of the slot. Given the following slot definition @@ -5144,47 +5146,69 @@ implicitly asserts Y is an instance of C2 sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:range ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 39 ; + sh:path linkml:examples ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 25 ; + sh:path linkml:none_of ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 26 ; + sh:path linkml:exactly_one_of ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; - sh:order 40 ; - sh:path OIO:inSubset ], + sh:order 55 ; + sh:path skos:broadMatch ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 43 ; + sh:path dcterms:source ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 41 ; + sh:path skos:inScheme ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "the value of the slot is multivalued with all members satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 24 ; sh:path linkml:all_members ], - [ sh:class linkml:EnumBinding ; - sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. -LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). -Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:bindings ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path linkml:equals_string_in ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 59 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; + sh:order 19 ; + sh:path linkml:equals_expression ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 44 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 23 ; - sh:path linkml:has_member ], + sh:order 31 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 32 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 44 ; - sh:path schema1:inLanguage ], + sh:order 48 ; + sh:path skos:altLabel ], [ sh:class qudt:Unit ; sh:description "an encoding of a unit" ; sh:maxCount 1 ; @@ -5196,899 +5220,856 @@ Enum bindings allow enums to be bound to any object, including complex nested ob sh:nodeKind sh:Literal ; sh:order 37 ; sh:path skos:editorialNote ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 45 ; - sh:path rdfs:seeAlso ], - [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:maximum_value ], + sh:nodeKind sh:Literal ; + sh:order 62 ; + sh:path sh:order ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 42 ; sh:path linkml:imported_from ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 27 ; + sh:path linkml:any_of ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 30 ; + sh:path linkml:extensions ], [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 61 ; sh:path bibo:status ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 41 ; - sh:path skos:inScheme ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 33 ; - sh:path linkml:alt_descriptions ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path linkml:equals_string ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:order 34 ; + sh:path dcterms:title ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 47 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path linkml:pattern ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 25 ; - sh:path linkml:none_of ], + sh:order 20 ; + sh:path linkml:exact_cardinality ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; sh:order 50 ; sh:path skos:mappingRelation ], - [ sh:datatype xsd:boolean ; - sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path linkml:multivalued ], - [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 57 ; - sh:path dcterms:contributor ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; + sh:order 60 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 22 ; + sh:path linkml:maximum_cardinality ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 28 ; - sh:path linkml:all_of ], + sh:order 1 ; + sh:path linkml:range_expression ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 58 ; + sh:path pav:createdOn ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 64 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 36 ; + sh:path linkml:todos ], + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 54 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:order 63 ; + sh:path dcterms:subject ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 53 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 12 ; - sh:path linkml:structured_pattern ], + sh:order 23 ; + sh:path linkml:has_member ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 56 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 59 ; + sh:path pav:lastUpdatedOn ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 49 ; + sh:path skosxl:altLabel ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 40 ; + sh:path OIO:inSubset ], [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path linkml:equals_number ], + sh:order 21 ; + sh:path linkml:minimum_cardinality ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 51 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:boolean ; - sh:description "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." ; + sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path linkml:inlined_as_list ], - [ sh:datatype xsd:integer ; - sh:description "the exact number of entries for a multivalued slot" ; + sh:order 6 ; + sh:path linkml:multivalued ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 20 ; - sh:path linkml:exact_cardinality ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 39 ; - sh:path linkml:examples ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path linkml:any_of ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path linkml:enum_range ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 11 ; + sh:path linkml:pattern ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 47 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:nodeKind sh:Literal ; + sh:order 16 ; + sh:path linkml:equals_string ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 38 ; - sh:path skos:note ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 35 ; + sh:path linkml:deprecated ], + [ sh:class linkml:EnumBinding ; + sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. +LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). +Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 31 ; - sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 3 ; + sh:path linkml:bindings ], + [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 51 ; - sh:path skos:exactMatch ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 49 ; - sh:path skosxl:altLabel ], + sh:order 57 ; + sh:path dcterms:contributor ], + [ sh:description "if PRESENT then a value must be present (for lists there must be at least one value). If ABSENT then a value must be absent (for lists, must be empty)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:value_presence ] ; + sh:targetClass linkml:AnonymousSlotExpression . + +linkml:AnonymousClassExpression a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 35 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:is_a ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 58 ; + sh:order 34 ; sh:path pav:createdOn ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path linkml:exactly_one_of ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path oslc:modifiedBy ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path dcterms:contributor ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 35 ; + sh:order 11 ; sh:path linkml:deprecated ], - [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path linkml:maximum_cardinality ], + sh:order 18 ; + sh:path linkml:imported_from ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; - sh:order 48 ; - sh:path skos:altLabel ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the slot must be present in instances of the class definition" ; + sh:order 12 ; + sh:path linkml:todos ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 32 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path linkml:required ] ; - sh:targetClass linkml:AnonymousSlotExpression . - -linkml:AnonymousClassExpression a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:order 13 ; + sh:path skos:editorialNote ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path linkml:extensions ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path OIO:inSubset ], + sh:order 26 ; + sh:path skos:mappingRelation ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 25 ; + sh:path skosxl:altLabel ], [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; sh:order 39 ; sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path skos:mappingRelation ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path linkml:extensions ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:nodeKind sh:Literal ; + sh:order 10 ; + sh:path dcterms:title ], + [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path linkml:any_of ], + sh:order 37 ; + sh:path bibo:status ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 27 ; sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 24 ; - sh:path skos:altLabel ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:none_of ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 20 ; sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:closeMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path dcterms:source ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path linkml:deprecated ], [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 17 ; sh:path skos:inScheme ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 29 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path linkml:exactly_one_of ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 35 ; - sh:path pav:lastUpdatedOn ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 25 ; - sh:path skosxl:altLabel ], + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; sh:order 14 ; sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path skos:editorialNote ], + sh:order 38 ; + sh:path sh:order ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path linkml:all_of ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 24 ; + sh:path skos:altLabel ], + [ sh:class linkml:SlotDefinition ; + sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path rdfs:seeAlso ], + sh:order 5 ; + sh:path linkml:slot_conditions ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path dcterms:title ], + sh:order 8 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; sh:order 40 ; sh:path schema1:keywords ], - [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; - sh:maxCount 1 ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:is_a ], - [ sh:description "agent that modified the element" ; + sh:order 29 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path OIO:inSubset ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:nodeKind sh:IRI ; + sh:order 21 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 15 ; + sh:path linkml:examples ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path oslc:modifiedBy ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path linkml:todos ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 22 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:annotations ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path linkml:imported_from ], + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path dcterms:source ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:none_of ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 1 ; + sh:path linkml:any_of ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path skos:broadMatch ] ; + sh:targetClass linkml:AnonymousClassExpression . + +linkml:SlotDefinition a sh:NodeShape ; + rdfs:comment "an element that describes how instances are related to other instances" ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:SlotDefinition ; + sh:description "A collection of secondary parent mixin slots from which inheritable metaslots are propagated" ; + sh:nodeKind sh:IRI ; + sh:order 70 ; + sh:path linkml:mixins ], [ sh:class linkml:SlotDefinition ; - sh:description "expresses constraints on a group of slots for a class expression" ; + sh:description "A primary parent slot from which inheritable metaslots are propagated" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:slot_conditions ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:order 67 ; + sh:path linkml:is_a ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path skos:definition ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:annotations ], + sh:order 69 ; + sh:path linkml:mixin ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:nodeKind sh:Literal ; + sh:order 89 ; + sh:path skos:editorialNote ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 15 ; + sh:order 91 ; sh:path linkml:examples ], - [ sh:description "status of the element" ; + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 50 ; + sh:path qudt:unit ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:nodeKind sh:Literal ; + sh:order 88 ; + sh:path linkml:todos ], + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path bibo:status ], + sh:order 93 ; + sh:path skos:inScheme ], + [ sh:description "if PRESENT then a value must be present (for lists there must be at least one value). If ABSENT then a value must be absent (for lists, must be empty)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 52 ; + sh:path linkml:value_presence ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 34 ; - sh:path pav:createdOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path skos:broadMatch ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 111 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:SlotDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path skos:narrowMatch ], + sh:order 35 ; + sh:path linkml:union_of ], + [ sh:class linkml:TypeMapping ; + sh:description "A collection of type mappings that specify how a slot's range should be mapped or serialized in different frameworks" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 36 ; + sh:path linkml:type_mappings ], + [ sh:datatype xsd:string ; + sh:description """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) GENERATE: 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""" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 73 ; + sh:path linkml:string_serialization ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 38 ; + sh:order 114 ; sh:path sh:order ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 32 ; - sh:path pav:createdBy ] ; - sh:targetClass linkml:AnonymousClassExpression . - -linkml:SlotDefinition a sh:NodeShape ; - rdfs:comment "an element that describes how instances are related to other instances" ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:EnumBinding ; + [ sh:class linkml:EnumBinding ; sh:description """A collection of enum bindings that specify how a slot can be bound to a permissible value from an enumeration. LinkML provides enums to allow string values to be restricted to one of a set of permissible values (specified statically or dynamically). Enum bindings allow enums to be bound to any object, including complex nested objects. For example, given a (generic) class Concept with slots id and label, it may be desirable to restrict the values the id takes on in a given context. For example, a HumanSample class may have a slot for representing sample site, with a range of concept, but the values of that slot may be restricted to concepts from a particular branch of an anatomy ontology.""" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 40 ; sh:path linkml:bindings ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 114 ; - sh:path sh:order ], - [ sh:datatype xsd:boolean ; - sh:description "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path linkml:locally_reflexive ], - [ sh:datatype xsd:boolean ; - sh:description "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 21 ; - sh:path linkml:transitive ], [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 74 ; - sh:path rdfs:label ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 91 ; - sh:path linkml:examples ], + sh:order 84 ; + sh:path skos:definition ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:nodeKind sh:IRI ; + sh:order 115 ; + sh:path dcterms:subject ], [ sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; sh:order 47 ; sh:path linkml:maximum_value ], [ sh:datatype xsd:boolean ; - sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; + sh:description "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 34 ; - sh:path linkml:children_are_mutually_disjoint ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 104 ; - sh:path skos:closeMatch ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 83 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:integer ; - sh:description "the minimum number of entries for a multivalued slot" ; + sh:order 23 ; + sh:path linkml:is_class_field ], + [ sh:class linkml:ClassDefinition ; + sh:description """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 +""" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 58 ; - sh:path linkml:minimum_cardinality ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 106 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 92 ; - sh:path OIO:inSubset ], - [ sh:class linkml:PathExpression ; - sh:description "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 32 ; - sh:path linkml:path_rule ], + sh:order 1 ; + sh:path linkml:domain ], [ sh:datatype xsd:boolean ; - sh:description "If s is reflexive, then i.s=i for all instances i" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 17 ; - sh:path linkml:reflexive ], - [ sh:datatype xsd:string ; - sh:description """function that provides a default value for the slot. - * [Tt]rue -- boolean True - * [Ff]alse -- boolean False - * bnode -- blank node identifier - * class_curie -- CURIE for the containing class - * class_uri -- URI for the containing class - * default_ns -- schema default namespace - * default_range -- schema default range - * int(value) -- integer value - * slot_uri -- URI for the slot - * slot_curie -- CURIE for the slot - * string(value) -- string value - * EnumName(PermissibleValue) -- enum value""" ; + sh:description "True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path linkml:ifabsent ], + sh:order 10 ; + sh:path linkml:identifier ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 62 ; + sh:path linkml:none_of ], [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:nodeKind sh:Literal ; - sh:order 75 ; - sh:path linkml:id_prefixes ], - [ sh:datatype xsd:boolean ; - sh:description "If True, then there must be no duplicates in the elements of a multivalued slot" ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path linkml:list_elements_unique ], - [ sh:datatype xsd:boolean ; - sh:description "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." ; + sh:order 56 ; + sh:path linkml:equals_expression ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 44 ; - sh:path linkml:inlined ], - [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 109 ; - sh:path dcterms:contributor ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:order 113 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 107 ; + sh:path skos:broadMatch ], + [ sh:class linkml:SlotDefinition ; + sh:description "transitive_form_of including the reflexive case" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 49 ; - sh:path linkml:structured_pattern ], + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path linkml:reflexive_transitive_form_of ], [ sh:datatype xsd:string ; - sh:description "a name that is used in the singular form" ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path linkml:singular_name ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:order 74 ; + sh:path rdfs:label ], + [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 53 ; - sh:path linkml:equals_string ], - [ sh:class linkml:TypeMapping ; - sh:description "A collection of type mappings that specify how a slot's range should be mapped or serialized in different frameworks" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 36 ; - sh:path linkml:type_mappings ], + sh:order 46 ; + sh:path linkml:minimum_value ], [ sh:datatype xsd:string ; sh:description "The name of the slot referenced in the slot_usage" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 28 ; sh:path linkml:usage_slot_name ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 101 ; - sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; sh:nodeKind sh:Literal ; - sh:order 94 ; - sh:path linkml:imported_from ], + sh:order 54 ; + sh:path linkml:equals_string_in ], [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 78 ; sh:path linkml:local_names ], - [ sh:datatype xsd:boolean ; - sh:description "If True, then the relationship between the slot domain and range is many to one or many to many" ; + [ sh:description "An element in another schema which this element instantiates." ; + sh:nodeKind sh:IRI ; + sh:order 81 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 8 ; - sh:path linkml:shared ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:nodeKind sh:IRI ; - sh:order 103 ; - sh:path skos:exactMatch ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:order 59 ; + sh:path linkml:maximum_cardinality ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 38 ; - sh:path linkml:range_expression ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 61 ; + sh:path linkml:all_members ], + [ sh:class linkml:SlotDefinition ; + sh:description "If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transitive (3) d holds whenever s holds and there are no intermediates, and s is not reflexive" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 98 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 24 ; + sh:path linkml:transitive_form_of ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the *value* of a slot is inherited by subclasses" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 99 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path linkml:inherited ], + [ sh:datatype xsd:boolean ; + sh:description "If s is symmetric, and i.s=v, then v.s=i" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 16 ; + sh:path linkml:symmetric ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 54 ; - sh:path linkml:equals_string_in ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 105 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:SlotDefinition ; - sh:description "A collection of secondary parent mixin slots from which inheritable metaslots are propagated" ; - sh:nodeKind sh:IRI ; - sh:order 70 ; - sh:path linkml:mixins ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 116 ; + sh:path schema1:keywords ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 85 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:ClassDefinition ; - sh:description "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; - sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path linkml:domain_of ], + sh:order 49 ; + sh:path linkml:structured_pattern ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 88 ; - sh:path linkml:todos ], + sh:order 51 ; + sh:path linkml:implicit_prefix ], [ sh:datatype xsd:boolean ; - sh:description "true means that the slot must be present in instances of the class definition" ; + sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 41 ; - sh:path linkml:required ], + sh:order 34 ; + sh:path linkml:children_are_mutually_disjoint ], [ sh:datatype xsd:string ; - sh:description """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) GENERATE: 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""" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 73 ; - sh:path linkml:string_serialization ], + sh:order 96 ; + sh:path schema1:inLanguage ], [ sh:datatype xsd:boolean ; sh:description "If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path linkml:list_elements_ordered ], - [ sh:datatype xsd:boolean ; - sh:description "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path linkml:designates_type ], - [ sh:class linkml:Element ; - sh:defaultValue "string"^^xsd:string ; - sh:description """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 -""" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path linkml:range ], - [ sh:class linkml:SlotDefinition ; - sh:description "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path rdfs:subPropertyOf ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if none of the expressions hold" ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 62 ; - sh:path linkml:none_of ], - [ sh:datatype xsd:boolean ; - sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 43 ; - sh:path linkml:multivalued ], + sh:order 63 ; + sh:path linkml:exactly_one_of ], [ sh:datatype xsd:boolean ; - sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:description "If True, then there must be no duplicates in the elements of a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 42 ; - sh:path linkml:recommended ], + sh:order 6 ; + sh:path linkml:list_elements_unique ], [ sh:datatype xsd:string ; - sh:description "If present, slot is read only. Text explains why" ; + sh:description "a textual descriptor that indicates the role played by the slot range" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path linkml:readonly ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:order 26 ; + sh:path linkml:role ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 110 ; - sh:path pav:createdOn ], + sh:order 87 ; + sh:path linkml:deprecated ], [ sh:datatype xsd:string ; - sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 56 ; - sh:path linkml:equals_expression ], - [ sh:class linkml:SlotDefinition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; - sh:order 71 ; - sh:path linkml:apply_to ], - [ sh:class linkml:SlotDefinition ; - sh:description "A primary parent slot from which inheritable metaslots are propagated" ; + sh:order 53 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:boolean ; + sh:description "True means that this slot was defined in a slot_usage situation" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 67 ; - sh:path linkml:is_a ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:Literal ; + sh:order 27 ; + sh:path linkml:is_usage_slot ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 82 ; - sh:path linkml:extensions ], + sh:order 83 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 100 ; - sh:path skos:altLabel ], - [ sh:class linkml:SlotDefinition ; - sh:description "If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transitive (3) d holds whenever s holds and there are no intermediates, and s is not reflexive" ; + sh:order 79 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:boolean ; + sh:description "If s is reflexive, then i.s=i for all instances i" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path linkml:transitive_form_of ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:nodeKind sh:Literal ; + sh:order 17 ; + sh:path linkml:reflexive ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 39 ; + sh:path linkml:enum_range ], + [ sh:datatype xsd:boolean ; + sh:description "If s is irreflexive, then there exists no i such i.s=i" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 84 ; - sh:path skos:definition ], - [ sh:class linkml:SlotDefinition ; - sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path linkml:disjoint_with ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:nodeKind sh:IRI ; - sh:order 72 ; - sh:path linkml:values_from ], + sh:order 19 ; + sh:path linkml:irreflexive ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 38 ; + sh:path linkml:range_expression ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; + sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 65 ; - sh:path linkml:all_of ], + sh:order 64 ; + sh:path linkml:any_of ], + [ sh:description "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; + sh:in ( rdf:subject rdf:object rdf:predicate "NODE" "OTHER_ROLE" ) ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path linkml:relational_role ], + [ sh:class linkml:PathExpression ; + sh:description "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 32 ; + sh:path linkml:path_rule ], + [ sh:class linkml:ArrayExpression ; + sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 66 ; + sh:path linkml:array ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:nodeKind sh:Literal ; + sh:order 75 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:boolean ; + sh:description "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 96 ; - sh:path schema1:inLanguage ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 63 ; - sh:path linkml:exactly_one_of ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:order 18 ; + sh:path linkml:locally_reflexive ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:nodeKind sh:Literal ; + sh:order 100 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:boolean ; + sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 61 ; - sh:path linkml:all_members ], + sh:nodeKind sh:Literal ; + sh:order 43 ; + sh:path linkml:multivalued ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 112 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:ClassDefinition ; + sh:description "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml:domain_of ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 104 ; + sh:path skos:closeMatch ], [ sh:defaultValue "linkml:slot_uri"^^xsd:string ; sh:description "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 2 ; sh:path linkml:slot_uri ], - [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; + [ sh:datatype xsd:boolean ; + sh:description "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." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 59 ; - sh:path linkml:maximum_cardinality ], + sh:order 44 ; + sh:path linkml:inlined ], [ sh:datatype xsd:boolean ; - sh:description "True means that this slot was defined in a slot_usage situation" ; + sh:description "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." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 27 ; - sh:path linkml:is_usage_slot ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 113 ; - sh:path bibo:status ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 115 ; - sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 45 ; + sh:path linkml:inlined_as_list ], + [ sh:description "agent that contributed to the element" ; sh:nodeKind sh:IRI ; - sh:order 102 ; - sh:path skos:mappingRelation ], + sh:order 109 ; + sh:path dcterms:contributor ], [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:description "True means that the slot is the \"singular unique key\" (also known more simply as the \"key slot\") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 69 ; - sh:path linkml:mixin ], - [ sh:description "if PRESENT then a value must be present (for lists there must be at least one value). If ABSENT then a value must be absent (for lists, must be empty)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; - sh:maxCount 1 ; - sh:order 52 ; - sh:path linkml:value_presence ], - [ sh:description "id of the schema that defined the element" ; + sh:order 9 ; + sh:path linkml:key ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 85 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:boolean ; + sh:description "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 21 ; + sh:path linkml:transitive ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 93 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:order 92 ; + sh:path OIO:inSubset ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 48 ; - sh:path linkml:pattern ], - [ sh:datatype xsd:string ; - sh:description "a textual descriptor that indicates the role played by the slot range" ; + sh:nodeKind sh:IRI ; + sh:order 108 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:boolean ; + sh:description "true if this slot is a grouping slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 26 ; - sh:path linkml:role ], - [ sh:class linkml:SlotDefinition ; - sh:description "indicates that any instance of d s r implies that there is also an instance of r s' d" ; + sh:order 31 ; + sh:path linkml:is_grouping_slot ], + [ sh:class linkml:Definition ; + sh:description "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 22 ; - sh:path owl:inverseOf ], - [ sh:description "An element in another schema which this element instantiates." ; + sh:order 13 ; + sh:path linkml:owner ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:nodeKind sh:IRI ; - sh:order 81 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:string ; - sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path skos:prefLabel ], + sh:order 102 ; + sh:path skos:mappingRelation ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 60 ; sh:path linkml:has_member ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the *value* of a slot is inherited by subclasses" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path linkml:inherited ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 111 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 116 ; - sh:path schema1:keywords ], - [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 79 ; - sh:path dcterms:conformsTo ], + sh:order 57 ; + sh:path linkml:exact_cardinality ], [ sh:datatype xsd:boolean ; - sh:description "If s is symmetric, and i.s=v, then v.s=i" ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path linkml:symmetric ], + sh:order 68 ; + sh:path linkml:abstract ], [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 77 ; sh:path linkml:definition_uri ], - [ sh:description "For ordinal ranges, the value must be equal to or higher than this" ; - sh:maxCount 1 ; - sh:order 46 ; - sh:path linkml:minimum_value ], - [ sh:description "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; - sh:in ( rdf:subject rdf:object rdf:predicate "NODE" "OTHER_ROLE" ) ; - sh:maxCount 1 ; - sh:order 29 ; - sh:path linkml:relational_role ], - [ sh:class linkml:Definition ; - sh:description "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; - sh:maxCount 1 ; + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path linkml:owner ], - [ sh:class linkml:ArrayExpression ; - sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 66 ; - sh:path linkml:array ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:order 72 ; + sh:path linkml:values_from ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 50 ; - sh:path qudt:unit ], + sh:nodeKind sh:Literal ; + sh:order 55 ; + sh:path linkml:equals_number ], [ sh:datatype xsd:boolean ; sh:description "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" ; sh:maxCount 1 ; @@ -6096,67 +6077,78 @@ implicitly asserts Y is an instance of C2 sh:order 20 ; sh:path linkml:asymmetric ], [ sh:datatype xsd:boolean ; - sh:description "true if this slot is a grouping slot" ; + sh:description "If True, then the relationship between the slot domain and range is many to one or many to many" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 31 ; - sh:path linkml:is_grouping_slot ], + sh:order 8 ; + sh:path linkml:shared ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 101 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 86 ; + sh:path dcterms:title ], [ sh:class linkml:SlotDefinition ; - sh:description "transitive_form_of including the reflexive case" ; + sh:description "indicates that any instance of d s r implies that there is also an instance of r s' d" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:reflexive_transitive_form_of ], - [ sh:class linkml:SlotDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; + sh:order 22 ; + sh:path owl:inverseOf ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path linkml:union_of ], + sh:order 105 ; + sh:path skos:relatedMatch ], [ sh:datatype xsd:boolean ; - sh:description "True means that the key slot(s) uniquely identify the elements within a single container" ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path linkml:key ], + sh:order 42 ; + sh:path linkml:recommended ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 98 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot must be present in instances of the class definition" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 41 ; + sh:path linkml:required ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 48 ; + sh:path linkml:pattern ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 86 ; - sh:path dcterms:title ], + sh:order 76 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 106 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; sh:order 90 ; sh:path skos:note ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:nodeKind sh:IRI ; - sh:order 97 ; - sh:path rdfs:seeAlso ], - [ sh:datatype xsd:boolean ; - sh:description "If s is irreflexive, then there exists no i such i.s=i" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 19 ; - sh:path linkml:irreflexive ], - [ sh:datatype xsd:boolean ; - sh:description "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 23 ; - sh:path linkml:is_class_field ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 64 ; - sh:path linkml:any_of ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; + [ sh:class linkml:SlotDefinition ; + sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; sh:nodeKind sh:IRI ; - sh:order 108 ; - sh:path pav:createdBy ], - [ sh:class linkml:ClassDefinition ; - sh:description """defines the type of the subject of the slot. Given the following slot definition + sh:order 33 ; + sh:path linkml:disjoint_with ], + [ sh:class linkml:Element ; + sh:defaultValue "string"^^xsd:string ; + sh:description """defines the type of the object of the slot. Given the following slot definition S1: domain: C1 range: C2 @@ -6164,291 +6156,317 @@ the declaration X: S1: Y -implicitly asserts that X is an instance of C1 +implicitly asserts Y is an instance of C2 """ ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:domain ], + sh:order 37 ; + sh:path linkml:range ], + [ sh:class linkml:SlotDefinition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 71 ; + sh:path linkml:apply_to ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 87 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:description "If present, slot is read only. Text explains why" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 76 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 4 ; + sh:path linkml:readonly ], + [ sh:class linkml:SlotDefinition ; + sh:description "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 95 ; - sh:path dcterms:source ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 39 ; - sh:path linkml:enum_range ], + sh:order 15 ; + sh:path rdfs:subPropertyOf ], [ sh:class linkml:SlotDefinition ; sh:description "allows for grouping of related slots into a grouping slot that serves the role of a group" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 30 ; sh:path sh:group ], + [ sh:datatype xsd:string ; + sh:description "a name that is used in the singular form" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path linkml:singular_name ], + [ sh:datatype xsd:string ; + sh:description """function that provides a default value for the slot. + * [Tt]rue -- boolean True + * [Ff]alse -- boolean False + * bnode -- blank node identifier + * class_curie -- CURIE for the containing class + * class_uri -- URI for the containing class + * default_ns -- schema default namespace + * default_range -- schema default range + * int(value) -- integer value + * slot_uri -- URI for the slot + * slot_curie -- CURIE for the slot + * string(value) -- string value + * EnumName(PermissibleValue) -- enum value""" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path linkml:ifabsent ], [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 55 ; - sh:path linkml:equals_number ], + sh:order 58 ; + sh:path linkml:minimum_cardinality ], [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:nodeKind sh:IRI ; sh:order 80 ; sh:path linkml:implements ], - [ sh:datatype xsd:boolean ; - sh:description "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." ; + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 45 ; - sh:path linkml:inlined_as_list ], + sh:order 94 ; + sh:path linkml:imported_from ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:nodeKind sh:IRI ; + sh:order 97 ; + sh:path rdfs:seeAlso ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 95 ; + sh:path dcterms:source ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 65 ; + sh:path linkml:all_of ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 99 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 82 ; + sh:path linkml:extensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:nodeKind sh:IRI ; + sh:order 103 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:description "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 68 ; - sh:path linkml:abstract ], + sh:order 11 ; + sh:path linkml:designates_type ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 110 ; + sh:path pav:createdOn ], [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 51 ; - sh:path linkml:implicit_prefix ], + sh:order 12 ; + sh:path skos:prefLabel ] ; + sh:targetClass linkml:SlotDefinition . + +skosxl:Label a sh:NodeShape ; + rdfs:comment "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 36 ; + sh:path sh:order ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 89 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:boolean ; - sh:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; + sh:order 12 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path linkml:alt_descriptions ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; sh:order 10 ; - sh:path linkml:identifier ], + sh:path linkml:todos ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 112 ; + sh:order 34 ; sh:path oslc:modifiedBy ], - [ sh:datatype xsd:integer ; - sh:description "the exact number of entries for a multivalued slot" ; + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "The literal lexical form of a structured alias; i.e the actual alias value." ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 57 ; - sh:path linkml:exact_cardinality ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 0 ; + sh:path skosxl:literalForm ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:nodeKind sh:Literal ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:nodeKind sh:IRI ; - sh:order 107 ; - sh:path skos:broadMatch ] ; - sh:targetClass linkml:SlotDefinition . - -skosxl:Label a sh:NodeShape ; - rdfs:comment "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "id of the schema that defined the element" ; + sh:order 27 ; + sh:path skos:relatedMatch ], + [ sh:description "The relationship between an element and its alias." ; + sh:in ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path rdf:predicate ], + [ sh:description "status of the element" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path skos:inScheme ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path linkml:annotations ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path OIO:inSubset ], + sh:order 35 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 18 ; + sh:path schema1:inLanguage ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 13 ; sh:path linkml:examples ], - [ sh:description "The relationship between an element and its alias." ; - sh:in ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path rdf:predicate ], - [ sh:description "The category or categories of an alias. This can be drawn from any relevant vocabulary" ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path dcterms:subject ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path linkml:extensions ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path dcterms:source ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 9 ; sh:path linkml:deprecated ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path dcterms:contributor ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path pav:createdBy ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 21 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path skos:definition ], + sh:order 22 ; + sh:path skos:altLabel ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 25 ; sh:path skos:exactMatch ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; sh:order 11 ; sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 32 ; - sh:path pav:createdOn ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 16 ; sh:path linkml:imported_from ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; + [ sh:description "The category or categories of an alias. This can be drawn from any relevant vocabulary" ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path pav:createdBy ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 23 ; - sh:path skosxl:altLabel ], - [ sh:description "agent that contributed to the element" ; + sh:order 2 ; + sh:path dcterms:subject ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path dcterms:contributor ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 14 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path rdfs:seeAlso ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:order 26 ; + sh:path skos:closeMatch ], + [ sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 18 ; - sh:path schema1:inLanguage ], - [ sh:description "The context in which an alias should be applied" ; sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:alias_contexts ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 15 ; + sh:path skos:inScheme ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path linkml:annotations ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 17 ; + sh:path dcterms:source ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; - sh:order 27 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 33 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path linkml:todos ], + sh:order 19 ; + sh:path rdfs:seeAlso ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:nodeKind sh:IRI ; sh:order 29 ; sh:path skos:broadMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path skos:mappingRelation ], - [ sh:description "status of the element" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path skos:altLabel ], + sh:order 32 ; + sh:path pav:createdOn ], + [ sh:description "The context in which an alias should be applied" ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml:alias_contexts ], [ sh:datatype xsd:string ; sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "The literal lexical form of a structured alias; i.e the actual alias value." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path skosxl:literalForm ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 36 ; - sh:path sh:order ], + sh:order 33 ; + sh:path pav:lastUpdatedOn ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 23 ; + sh:path skosxl:altLabel ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:nodeKind sh:IRI ; sh:order 28 ; - sh:path skos:narrowMatch ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path skos:note ] ; + sh:path skos:narrowMatch ] ; sh:targetClass skosxl:Label . linkml:AltDescription a sh:NodeShape ; @@ -6475,7 +6493,13 @@ linkml:Example a sh:NodeShape ; rdfs:comment "usage example and description" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "direct object representation of the example" ; + sh:property [ sh:datatype xsd:string ; + sh:description "example value" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path skos:example ], + [ sh:description "direct object representation of the example" ; sh:maxCount 1 ; sh:order 2 ; sh:path linkml:value_object ], @@ -6484,195 +6508,109 @@ linkml:Example a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path linkml:value_description ], - [ sh:datatype xsd:string ; - sh:description "example value" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path skos:example ] ; + sh:path linkml:value_description ] ; sh:targetClass linkml:Example . linkml:Annotation a sh:NodeShape ; rdfs:comment "a tag/value pair with the semantics of OWL Annotation" ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "a tag associated with an extension" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:extension_tag ], + sh:property [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path linkml:extensions ], [ sh:description "the actual annotation" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 2 ; sh:path linkml:extension_value ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 0 ; - sh:path linkml:annotations ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path linkml:extensions ] ; - sh:targetClass linkml:Annotation . - -linkml:SubsetDefinition a sh:NodeShape ; - rdfs:comment "an element that can be used to group other metamodel elements" ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 22 ; - sh:path schema1:inLanguage ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path oslc:modifiedBy ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:nodeKind sh:IRI ; - sh:order 32 ; - sh:path skos:narrowMatch ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:description "a tag associated with an extension" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:IRI ; - sh:order 21 ; - sh:path dcterms:source ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:nodeKind sh:Literal ; - sh:order 15 ; - sh:path skos:editorialNote ], - [ sh:class linkml:SubsetDefinition ; + sh:order 1 ; + sh:path linkml:extension_tag ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path linkml:annotations ] ; + sh:targetClass linkml:Annotation . + +linkml:SubsetDefinition a sh:NodeShape ; + rdfs:comment "an element that can be used to group other metamodel elements" ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 18 ; sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:nodeKind sh:IRI ; - sh:order 33 ; - sh:path skos:broadMatch ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path skos:inScheme ], - [ sh:description "agent that created the element" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path pav:createdBy ], - [ sh:description "agent that contributed to the element" ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path dcterms:contributor ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 27 ; - sh:path skosxl:altLabel ], + sh:nodeKind sh:Literal ; + sh:order 10 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:nodeKind sh:Literal ; - sh:order 42 ; - sh:path schema1:keywords ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 39 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path skos:relatedMatch ], + sh:order 16 ; + sh:path skos:note ], [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path rdfs:label ], + sh:order 13 ; + sh:path linkml:deprecated ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 36 ; sh:path pav:createdOn ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path linkml:extensions ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path linkml:deprecated ], + sh:order 15 ; + sh:path skos:editorialNote ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path dcterms:title ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:order 26 ; + sh:path skos:altLabel ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:implements ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; - sh:maxCount 1 ; + sh:order 21 ; + sh:path dcterms:source ], + [ sh:description "Controlled terms used to categorize an element." ; sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:definition_uri ], + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path dcterms:conformsTo ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 11 ; sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:nodeKind sh:IRI ; - sh:order 28 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:nodeKind sh:IRI ; - sh:order 41 ; - sh:path dcterms:subject ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path linkml:extensions ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 17 ; - sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path rdfs:label ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:nodeKind sh:IRI ; sh:order 23 ; @@ -6687,21 +6625,36 @@ linkml:SubsetDefinition a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 40 ; sh:path sh:order ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 12 ; + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:nodeKind sh:IRI ; + sh:order 32 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 20 ; sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 17 ; + sh:path linkml:examples ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 30 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:nodeKind sh:Literal ; - sh:order 26 ; - sh:path skos:altLabel ], + sh:order 3 ; + sh:path linkml:definition_uri ], [ sh:datatype xsd:string ; sh:description "Outstanding issues that needs resolution" ; sh:nodeKind sh:Literal ; @@ -6712,32 +6665,97 @@ linkml:SubsetDefinition a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path linkml:id_prefixes ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path linkml:id_prefixes_are_closed ], + sh:order 22 ; + sh:path schema1:inLanguage ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 27 ; + sh:path skosxl:altLabel ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 24 ; sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml:implements ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:nodeKind sh:IRI ; + sh:order 28 ; + sh:path skos:mappingRelation ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path pav:createdBy ], + [ sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path skos:inScheme ], + [ sh:description "agent that contributed to the element" ; + sh:nodeKind sh:IRI ; + sh:order 35 ; + sh:path dcterms:contributor ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:nodeKind sh:IRI ; + sh:order 30 ; + sh:path skos:closeMatch ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 9 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:description "Keywords or tags used to describe the element" ; sh:nodeKind sh:Literal ; - sh:order 16 ; - sh:path skos:note ], + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 39 ; + sh:path bibo:status ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 38 ; + sh:path oslc:modifiedBy ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml:instantiates ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:nodeKind sh:IRI ; sh:order 29 ; sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:nodeKind sh:IRI ; + sh:order 33 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path dcterms:conformsTo ] ; + sh:order 37 ; + sh:path pav:lastUpdatedOn ] ; sh:targetClass linkml:SubsetDefinition . linkml:Extension a sh:NodeShape ; @@ -6761,3 +6779,4 @@ linkml:Extension a sh:NodeShape ; sh:order 1 ; sh:path linkml:extension_value ] ; sh:targetClass linkml:Extension . + diff --git a/linkml_model/shex/meta.shex b/linkml_model/shex/meta.shex index 00dc71c76..2812a2610 100644 --- a/linkml_model/shex/meta.shex +++ b/linkml_model/shex/meta.shex @@ -104,6 +104,7 @@ PREFIX oboInOwl: ] ? ; @ * ; + @ ? ; @ * ; @ * ; @ * ; @@ -635,6 +636,7 @@ PREFIX oboInOwl: ] ? ; @ * ; + @ ? ; @ * ; @ * ; @ * ; @@ -656,6 +658,7 @@ PREFIX oboInOwl: ] ? ; @ * ; + @ ? ; @ * ; @ * ; @ * ; diff --git a/linkml_model/sqlddl/meta.sql b/linkml_model/sqlddl/meta.sql index 0185c5bb3..03afb4643 100644 --- a/linkml_model/sqlddl/meta.sql +++ b/linkml_model/sqlddl/meta.sql @@ -172,6 +172,7 @@ -- * Slot: code_set_tag Description: the version tag of the enumeration code set -- * Slot: code_set_version Description: the version identifier of the enumeration code set -- * Slot: pv_formula Description: Defines the specific formula to be used to generate the permissible values. +-- * Slot: is_open Description: Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values. -- * Slot: reachable_from_id Description: Specifies a query for obtaining a list of permissible values based on graph reachability -- * Slot: matches_id Description: Specifies a match query that is used to calculate the list of permissible values -- # Class: anonymous_enum_expression Description: An enum_expression that is not named @@ -180,6 +181,7 @@ -- * Slot: code_set_tag Description: the version tag of the enumeration code set -- * Slot: code_set_version Description: the version identifier of the enumeration code set -- * Slot: pv_formula Description: Defines the specific formula to be used to generate the permissible values. +-- * Slot: is_open Description: Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values. -- * Slot: reachable_from_id Description: Specifies a query for obtaining a list of permissible values based on graph reachability -- * Slot: matches_id Description: Specifies a match query that is used to calculate the list of permissible values -- # Class: enum_definition Description: an element whose instances must be drawn from a specified set of permissible values @@ -188,6 +190,7 @@ -- * Slot: code_set_tag Description: the version tag of the enumeration code set -- * Slot: code_set_version Description: the version identifier of the enumeration code set -- * Slot: pv_formula Description: Defines the specific formula to be used to generate the permissible values. +-- * Slot: is_open Description: Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values. -- * Slot: is_a Description: A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded -- * Slot: abstract Description: Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes. -- * Slot: mixin Description: Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins. @@ -408,8 +411,8 @@ -- * Slot: list_elements_unique Description: If True, then there must be no duplicates in the elements of a multivalued slot -- * Slot: list_elements_ordered Description: If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed -- * Slot: shared Description: If True, then the relationship between the slot domain and range is many to one or many to many --- * Slot: key Description: True means that the key slot(s) uniquely identify the elements within a single container --- * Slot: identifier Description: True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container +-- * Slot: key Description: True means that the slot is the "singular unique key" (also known more simply as the "key slot") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container. +-- * Slot: identifier Description: True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document. -- * Slot: designates_type Description: True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition -- * Slot: alias Description: the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name. -- * Slot: owner Description: the "owner" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot @@ -843,10 +846,10 @@ -- * Slot: annotatable_id Description: Autocreated FK slot -- * Slot: annotation_tag Description: Autocreated FK slot -- * Slot: value_id Description: the actual annotation --- # Class: UnitOfMeasure Description: A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension). +-- # Class: UnitOfMeasure Description: A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension). -- * Slot: id -- * Slot: symbol Description: name of the unit encoded as a symbol --- * Slot: abbreviation Description: An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt) +-- * Slot: abbreviation Description: An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt) -- * Slot: descriptive_name Description: the spelled out name of the unit, for example, meter -- * Slot: ucum_code Description: associates a QUDT unit with its UCUM code (case-sensitive). -- * Slot: derivation Description: Expression for deriving this unit from other units @@ -2889,6 +2892,7 @@ CREATE TABLE enum_expression ( code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_open BOOLEAN, reachable_from_id INTEGER, matches_id INTEGER, PRIMARY KEY (id), @@ -2903,6 +2907,7 @@ CREATE TABLE anonymous_enum_expression ( code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_open BOOLEAN, reachable_from_id INTEGER, matches_id INTEGER, PRIMARY KEY (id), @@ -2917,6 +2922,7 @@ CREATE TABLE enum_definition ( code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_open BOOLEAN, is_a TEXT, abstract BOOLEAN, mixin BOOLEAN, @@ -3019,11 +3025,11 @@ CREATE TABLE setting ( FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_setting_setting_key ON setting (setting_key); -CREATE INDEX ix_setting_setting_value ON setting (setting_value); CREATE INDEX setting_import_expression_id_setting_key_idx ON setting (import_expression_id, setting_key); -CREATE INDEX ix_setting_import_expression_id ON setting (import_expression_id); +CREATE INDEX ix_setting_setting_key ON setting (setting_key); CREATE INDEX setting_schema_definition_name_setting_key_idx ON setting (schema_definition_name, setting_key); +CREATE INDEX ix_setting_import_expression_id ON setting (import_expression_id); +CREATE INDEX ix_setting_setting_value ON setting (setting_value); CREATE INDEX ix_setting_schema_definition_name ON setting (schema_definition_name); CREATE TABLE prefix ( @@ -3034,10 +3040,10 @@ CREATE TABLE prefix ( UNIQUE (schema_definition_name, prefix_prefix), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_prefix_prefix_prefix ON prefix (prefix_prefix); -CREATE INDEX ix_prefix_prefix_reference ON prefix (prefix_reference); CREATE INDEX ix_prefix_schema_definition_name ON prefix (schema_definition_name); CREATE INDEX prefix_schema_definition_name_prefix_prefix_idx ON prefix (schema_definition_name, prefix_prefix); +CREATE INDEX ix_prefix_prefix_prefix ON prefix (prefix_prefix); +CREATE INDEX ix_prefix_prefix_reference ON prefix (prefix_reference); CREATE TABLE unique_key ( unique_key_name TEXT NOT NULL, @@ -3062,25 +3068,25 @@ CREATE TABLE unique_key ( UNIQUE (class_definition_name, unique_key_name), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX unique_key_class_definition_name_unique_key_name_idx ON unique_key (class_definition_name, unique_key_name); -CREATE INDEX ix_unique_key_deprecated_element_has_exact_replacement ON unique_key (deprecated_element_has_exact_replacement); CREATE INDEX ix_unique_key_class_definition_name ON unique_key (class_definition_name); -CREATE INDEX ix_unique_key_source ON unique_key (source); -CREATE INDEX ix_unique_key_title ON unique_key (title); -CREATE INDEX ix_unique_key_from_schema ON unique_key (from_schema); +CREATE INDEX ix_unique_key_deprecated ON unique_key (deprecated); CREATE INDEX ix_unique_key_created_by ON unique_key (created_by); +CREATE INDEX unique_key_class_definition_name_unique_key_name_idx ON unique_key (class_definition_name, unique_key_name); +CREATE INDEX ix_unique_key_created_on ON unique_key (created_on); +CREATE INDEX ix_unique_key_imported_from ON unique_key (imported_from); CREATE INDEX ix_unique_key_last_updated_on ON unique_key (last_updated_on); +CREATE INDEX ix_unique_key_from_schema ON unique_key (from_schema); +CREATE INDEX ix_unique_key_source ON unique_key (source); +CREATE INDEX ix_unique_key_description ON unique_key (description); +CREATE INDEX ix_unique_key_modified_by ON unique_key (modified_by); +CREATE INDEX ix_unique_key_unique_key_name ON unique_key (unique_key_name); +CREATE INDEX ix_unique_key_in_language ON unique_key (in_language); CREATE INDEX ix_unique_key_status ON unique_key (status); CREATE INDEX ix_unique_key_consider_nulls_inequal ON unique_key (consider_nulls_inequal); -CREATE INDEX ix_unique_key_in_language ON unique_key (in_language); -CREATE INDEX ix_unique_key_imported_from ON unique_key (imported_from); -CREATE INDEX ix_unique_key_deprecated_element_has_possible_replacement ON unique_key (deprecated_element_has_possible_replacement); -CREATE INDEX ix_unique_key_deprecated ON unique_key (deprecated); -CREATE INDEX ix_unique_key_created_on ON unique_key (created_on); -CREATE INDEX ix_unique_key_modified_by ON unique_key (modified_by); +CREATE INDEX ix_unique_key_deprecated_element_has_exact_replacement ON unique_key (deprecated_element_has_exact_replacement); CREATE INDEX ix_unique_key_rank ON unique_key (rank); -CREATE INDEX ix_unique_key_description ON unique_key (description); -CREATE INDEX ix_unique_key_unique_key_name ON unique_key (unique_key_name); +CREATE INDEX ix_unique_key_title ON unique_key (title); +CREATE INDEX ix_unique_key_deprecated_element_has_possible_replacement ON unique_key (deprecated_element_has_possible_replacement); CREATE TABLE type_mapping ( framework TEXT NOT NULL, @@ -3104,24 +3110,24 @@ CREATE TABLE type_mapping ( PRIMARY KEY (framework, type, string_serialization, description, title, deprecated, from_schema, imported_from, source, in_language, deprecated_element_has_exact_replacement, deprecated_element_has_possible_replacement, created_by, created_on, last_updated_on, modified_by, status, rank), FOREIGN KEY(type) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_mapping_description ON type_mapping (description); -CREATE INDEX ix_type_mapping_title ON type_mapping (title); -CREATE INDEX ix_type_mapping_string_serialization ON type_mapping (string_serialization); -CREATE INDEX ix_type_mapping_created_by ON type_mapping (created_by); -CREATE INDEX ix_type_mapping_created_on ON type_mapping (created_on); -CREATE INDEX ix_type_mapping_framework ON type_mapping (framework); -CREATE INDEX ix_type_mapping_last_updated_on ON type_mapping (last_updated_on); -CREATE INDEX ix_type_mapping_modified_by ON type_mapping (modified_by); +CREATE INDEX ix_type_mapping_deprecated ON type_mapping (deprecated); +CREATE INDEX ix_type_mapping_deprecated_element_has_possible_replacement ON type_mapping (deprecated_element_has_possible_replacement); +CREATE INDEX ix_type_mapping_rank ON type_mapping (rank); CREATE INDEX ix_type_mapping_source ON type_mapping (source); CREATE INDEX ix_type_mapping_status ON type_mapping (status); -CREATE INDEX ix_type_mapping_rank ON type_mapping (rank); +CREATE INDEX ix_type_mapping_description ON type_mapping (description); CREATE INDEX ix_type_mapping_type ON type_mapping (type); -CREATE INDEX ix_type_mapping_in_language ON type_mapping (in_language); +CREATE INDEX ix_type_mapping_created_on ON type_mapping (created_on); +CREATE INDEX ix_type_mapping_string_serialization ON type_mapping (string_serialization); +CREATE INDEX ix_type_mapping_imported_from ON type_mapping (imported_from); CREATE INDEX ix_type_mapping_deprecated_element_has_exact_replacement ON type_mapping (deprecated_element_has_exact_replacement); -CREATE INDEX ix_type_mapping_deprecated_element_has_possible_replacement ON type_mapping (deprecated_element_has_possible_replacement); +CREATE INDEX ix_type_mapping_modified_by ON type_mapping (modified_by); +CREATE INDEX ix_type_mapping_framework ON type_mapping (framework); +CREATE INDEX ix_type_mapping_created_by ON type_mapping (created_by); CREATE INDEX ix_type_mapping_from_schema ON type_mapping (from_schema); -CREATE INDEX ix_type_mapping_imported_from ON type_mapping (imported_from); -CREATE INDEX ix_type_mapping_deprecated ON type_mapping (deprecated); +CREATE INDEX ix_type_mapping_title ON type_mapping (title); +CREATE INDEX ix_type_mapping_last_updated_on ON type_mapping (last_updated_on); +CREATE INDEX ix_type_mapping_in_language ON type_mapping (in_language); CREATE TABLE common_metadata_todos ( common_metadata_id INTEGER, @@ -3129,8 +3135,8 @@ CREATE TABLE common_metadata_todos ( PRIMARY KEY (common_metadata_id, todos), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_todos_common_metadata_id ON common_metadata_todos (common_metadata_id); CREATE INDEX ix_common_metadata_todos_todos ON common_metadata_todos (todos); +CREATE INDEX ix_common_metadata_todos_common_metadata_id ON common_metadata_todos (common_metadata_id); CREATE TABLE common_metadata_notes ( common_metadata_id INTEGER, @@ -3156,8 +3162,8 @@ CREATE TABLE common_metadata_see_also ( PRIMARY KEY (common_metadata_id, see_also), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_see_also_common_metadata_id ON common_metadata_see_also (common_metadata_id); CREATE INDEX ix_common_metadata_see_also_see_also ON common_metadata_see_also (see_also); +CREATE INDEX ix_common_metadata_see_also_common_metadata_id ON common_metadata_see_also (common_metadata_id); CREATE TABLE common_metadata_aliases ( common_metadata_id INTEGER, @@ -3174,8 +3180,8 @@ CREATE TABLE common_metadata_mappings ( PRIMARY KEY (common_metadata_id, mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_mappings_common_metadata_id ON common_metadata_mappings (common_metadata_id); CREATE INDEX ix_common_metadata_mappings_mappings ON common_metadata_mappings (mappings); +CREATE INDEX ix_common_metadata_mappings_common_metadata_id ON common_metadata_mappings (common_metadata_id); CREATE TABLE common_metadata_exact_mappings ( common_metadata_id INTEGER, @@ -3192,8 +3198,8 @@ CREATE TABLE common_metadata_close_mappings ( PRIMARY KEY (common_metadata_id, close_mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_close_mappings_close_mappings ON common_metadata_close_mappings (close_mappings); CREATE INDEX ix_common_metadata_close_mappings_common_metadata_id ON common_metadata_close_mappings (common_metadata_id); +CREATE INDEX ix_common_metadata_close_mappings_close_mappings ON common_metadata_close_mappings (close_mappings); CREATE TABLE common_metadata_related_mappings ( common_metadata_id INTEGER, @@ -3201,8 +3207,8 @@ CREATE TABLE common_metadata_related_mappings ( PRIMARY KEY (common_metadata_id, related_mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_related_mappings_common_metadata_id ON common_metadata_related_mappings (common_metadata_id); CREATE INDEX ix_common_metadata_related_mappings_related_mappings ON common_metadata_related_mappings (related_mappings); +CREATE INDEX ix_common_metadata_related_mappings_common_metadata_id ON common_metadata_related_mappings (common_metadata_id); CREATE TABLE common_metadata_narrow_mappings ( common_metadata_id INTEGER, @@ -3237,8 +3243,8 @@ CREATE TABLE common_metadata_category ( PRIMARY KEY (common_metadata_id, category), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_category_common_metadata_id ON common_metadata_category (common_metadata_id); CREATE INDEX ix_common_metadata_category_category ON common_metadata_category (category); +CREATE INDEX ix_common_metadata_category_common_metadata_id ON common_metadata_category (common_metadata_id); CREATE TABLE common_metadata_keyword ( common_metadata_id INTEGER, @@ -3255,8 +3261,8 @@ CREATE TABLE element_id_prefixes ( PRIMARY KEY (element_name, id_prefixes), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_id_prefixes_element_name ON element_id_prefixes (element_name); CREATE INDEX ix_element_id_prefixes_id_prefixes ON element_id_prefixes (id_prefixes); +CREATE INDEX ix_element_id_prefixes_element_name ON element_id_prefixes (element_name); CREATE TABLE element_implements ( element_name TEXT, @@ -3282,8 +3288,8 @@ CREATE TABLE element_todos ( PRIMARY KEY (element_name, todos), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_todos_todos ON element_todos (todos); CREATE INDEX ix_element_todos_element_name ON element_todos (element_name); +CREATE INDEX ix_element_todos_todos ON element_todos (todos); CREATE TABLE element_notes ( element_name TEXT, @@ -3318,8 +3324,8 @@ CREATE TABLE element_aliases ( PRIMARY KEY (element_name, aliases), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_aliases_aliases ON element_aliases (aliases); CREATE INDEX ix_element_aliases_element_name ON element_aliases (element_name); +CREATE INDEX ix_element_aliases_aliases ON element_aliases (aliases); CREATE TABLE element_mappings ( element_name TEXT, @@ -3327,8 +3333,8 @@ CREATE TABLE element_mappings ( PRIMARY KEY (element_name, mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_mappings_element_name ON element_mappings (element_name); CREATE INDEX ix_element_mappings_mappings ON element_mappings (mappings); +CREATE INDEX ix_element_mappings_element_name ON element_mappings (element_name); CREATE TABLE element_exact_mappings ( element_name TEXT, @@ -3336,8 +3342,8 @@ CREATE TABLE element_exact_mappings ( PRIMARY KEY (element_name, exact_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_exact_mappings_element_name ON element_exact_mappings (element_name); CREATE INDEX ix_element_exact_mappings_exact_mappings ON element_exact_mappings (exact_mappings); +CREATE INDEX ix_element_exact_mappings_element_name ON element_exact_mappings (element_name); CREATE TABLE element_close_mappings ( element_name TEXT, @@ -3345,8 +3351,8 @@ CREATE TABLE element_close_mappings ( PRIMARY KEY (element_name, close_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_close_mappings_element_name ON element_close_mappings (element_name); CREATE INDEX ix_element_close_mappings_close_mappings ON element_close_mappings (close_mappings); +CREATE INDEX ix_element_close_mappings_element_name ON element_close_mappings (element_name); CREATE TABLE element_related_mappings ( element_name TEXT, @@ -3354,8 +3360,8 @@ CREATE TABLE element_related_mappings ( PRIMARY KEY (element_name, related_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_related_mappings_related_mappings ON element_related_mappings (related_mappings); CREATE INDEX ix_element_related_mappings_element_name ON element_related_mappings (element_name); +CREATE INDEX ix_element_related_mappings_related_mappings ON element_related_mappings (related_mappings); CREATE TABLE element_narrow_mappings ( element_name TEXT, @@ -3363,8 +3369,8 @@ CREATE TABLE element_narrow_mappings ( PRIMARY KEY (element_name, narrow_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_narrow_mappings_narrow_mappings ON element_narrow_mappings (narrow_mappings); CREATE INDEX ix_element_narrow_mappings_element_name ON element_narrow_mappings (element_name); +CREATE INDEX ix_element_narrow_mappings_narrow_mappings ON element_narrow_mappings (narrow_mappings); CREATE TABLE element_broad_mappings ( element_name TEXT, @@ -3372,8 +3378,8 @@ CREATE TABLE element_broad_mappings ( PRIMARY KEY (element_name, broad_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_broad_mappings_broad_mappings ON element_broad_mappings (broad_mappings); CREATE INDEX ix_element_broad_mappings_element_name ON element_broad_mappings (element_name); +CREATE INDEX ix_element_broad_mappings_broad_mappings ON element_broad_mappings (broad_mappings); CREATE TABLE element_contributors ( element_name TEXT, @@ -3381,8 +3387,8 @@ CREATE TABLE element_contributors ( PRIMARY KEY (element_name, contributors), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_contributors_element_name ON element_contributors (element_name); CREATE INDEX ix_element_contributors_contributors ON element_contributors (contributors); +CREATE INDEX ix_element_contributors_element_name ON element_contributors (element_name); CREATE TABLE element_category ( element_name TEXT, @@ -3390,8 +3396,8 @@ CREATE TABLE element_category ( PRIMARY KEY (element_name, category), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_category_element_name ON element_category (element_name); CREATE INDEX ix_element_category_category ON element_category (category); +CREATE INDEX ix_element_category_element_name ON element_category (element_name); CREATE TABLE element_keyword ( element_name TEXT, @@ -3399,8 +3405,8 @@ CREATE TABLE element_keyword ( PRIMARY KEY (element_name, keyword), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_keyword_element_name ON element_keyword (element_name); CREATE INDEX ix_element_keyword_keyword ON element_keyword (keyword); +CREATE INDEX ix_element_keyword_element_name ON element_keyword (element_name); CREATE TABLE schema_definition_imports ( schema_definition_name TEXT, @@ -3444,8 +3450,8 @@ CREATE TABLE schema_definition_implements ( PRIMARY KEY (schema_definition_name, implements), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_implements_implements ON schema_definition_implements (implements); CREATE INDEX ix_schema_definition_implements_schema_definition_name ON schema_definition_implements (schema_definition_name); +CREATE INDEX ix_schema_definition_implements_implements ON schema_definition_implements (implements); CREATE TABLE schema_definition_instantiates ( schema_definition_name TEXT, @@ -3453,8 +3459,8 @@ CREATE TABLE schema_definition_instantiates ( PRIMARY KEY (schema_definition_name, instantiates), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_instantiates_schema_definition_name ON schema_definition_instantiates (schema_definition_name); CREATE INDEX ix_schema_definition_instantiates_instantiates ON schema_definition_instantiates (instantiates); +CREATE INDEX ix_schema_definition_instantiates_schema_definition_name ON schema_definition_instantiates (schema_definition_name); CREATE TABLE schema_definition_todos ( schema_definition_name TEXT, @@ -3480,8 +3486,8 @@ CREATE TABLE schema_definition_comments ( PRIMARY KEY (schema_definition_name, comments), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_comments_schema_definition_name ON schema_definition_comments (schema_definition_name); CREATE INDEX ix_schema_definition_comments_comments ON schema_definition_comments (comments); +CREATE INDEX ix_schema_definition_comments_schema_definition_name ON schema_definition_comments (schema_definition_name); CREATE TABLE schema_definition_see_also ( schema_definition_name TEXT, @@ -3489,8 +3495,8 @@ CREATE TABLE schema_definition_see_also ( PRIMARY KEY (schema_definition_name, see_also), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_see_also_schema_definition_name ON schema_definition_see_also (schema_definition_name); CREATE INDEX ix_schema_definition_see_also_see_also ON schema_definition_see_also (see_also); +CREATE INDEX ix_schema_definition_see_also_schema_definition_name ON schema_definition_see_also (schema_definition_name); CREATE TABLE schema_definition_aliases ( schema_definition_name TEXT, @@ -3498,8 +3504,8 @@ CREATE TABLE schema_definition_aliases ( PRIMARY KEY (schema_definition_name, aliases), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_aliases_aliases ON schema_definition_aliases (aliases); CREATE INDEX ix_schema_definition_aliases_schema_definition_name ON schema_definition_aliases (schema_definition_name); +CREATE INDEX ix_schema_definition_aliases_aliases ON schema_definition_aliases (aliases); CREATE TABLE schema_definition_mappings ( schema_definition_name TEXT, @@ -3516,8 +3522,8 @@ CREATE TABLE schema_definition_exact_mappings ( PRIMARY KEY (schema_definition_name, exact_mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_exact_mappings_schema_definition_name ON schema_definition_exact_mappings (schema_definition_name); CREATE INDEX ix_schema_definition_exact_mappings_exact_mappings ON schema_definition_exact_mappings (exact_mappings); +CREATE INDEX ix_schema_definition_exact_mappings_schema_definition_name ON schema_definition_exact_mappings (schema_definition_name); CREATE TABLE schema_definition_close_mappings ( schema_definition_name TEXT, @@ -3525,8 +3531,8 @@ CREATE TABLE schema_definition_close_mappings ( PRIMARY KEY (schema_definition_name, close_mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_close_mappings_schema_definition_name ON schema_definition_close_mappings (schema_definition_name); CREATE INDEX ix_schema_definition_close_mappings_close_mappings ON schema_definition_close_mappings (close_mappings); +CREATE INDEX ix_schema_definition_close_mappings_schema_definition_name ON schema_definition_close_mappings (schema_definition_name); CREATE TABLE schema_definition_related_mappings ( schema_definition_name TEXT, @@ -3579,8 +3585,8 @@ CREATE TABLE schema_definition_keyword ( PRIMARY KEY (schema_definition_name, keyword), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_keyword_schema_definition_name ON schema_definition_keyword (schema_definition_name); CREATE INDEX ix_schema_definition_keyword_keyword ON schema_definition_keyword (keyword); +CREATE INDEX ix_schema_definition_keyword_schema_definition_name ON schema_definition_keyword (schema_definition_name); CREATE TABLE type_definition_union_of ( type_definition_name TEXT, @@ -3589,8 +3595,8 @@ CREATE TABLE type_definition_union_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(union_of_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_union_of_type_definition_name ON type_definition_union_of (type_definition_name); CREATE INDEX ix_type_definition_union_of_union_of_name ON type_definition_union_of (union_of_name); +CREATE INDEX ix_type_definition_union_of_type_definition_name ON type_definition_union_of (type_definition_name); CREATE TABLE type_definition_equals_string_in ( type_definition_name TEXT, @@ -3607,8 +3613,8 @@ CREATE TABLE type_definition_id_prefixes ( PRIMARY KEY (type_definition_name, id_prefixes), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_id_prefixes_type_definition_name ON type_definition_id_prefixes (type_definition_name); CREATE INDEX ix_type_definition_id_prefixes_id_prefixes ON type_definition_id_prefixes (id_prefixes); +CREATE INDEX ix_type_definition_id_prefixes_type_definition_name ON type_definition_id_prefixes (type_definition_name); CREATE TABLE type_definition_implements ( type_definition_name TEXT, @@ -3625,8 +3631,8 @@ CREATE TABLE type_definition_instantiates ( PRIMARY KEY (type_definition_name, instantiates), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_instantiates_type_definition_name ON type_definition_instantiates (type_definition_name); CREATE INDEX ix_type_definition_instantiates_instantiates ON type_definition_instantiates (instantiates); +CREATE INDEX ix_type_definition_instantiates_type_definition_name ON type_definition_instantiates (type_definition_name); CREATE TABLE type_definition_todos ( type_definition_name TEXT, @@ -3661,8 +3667,8 @@ CREATE TABLE type_definition_see_also ( PRIMARY KEY (type_definition_name, see_also), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_see_also_type_definition_name ON type_definition_see_also (type_definition_name); CREATE INDEX ix_type_definition_see_also_see_also ON type_definition_see_also (see_also); +CREATE INDEX ix_type_definition_see_also_type_definition_name ON type_definition_see_also (type_definition_name); CREATE TABLE type_definition_aliases ( type_definition_name TEXT, @@ -3670,8 +3676,8 @@ CREATE TABLE type_definition_aliases ( PRIMARY KEY (type_definition_name, aliases), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_aliases_type_definition_name ON type_definition_aliases (type_definition_name); CREATE INDEX ix_type_definition_aliases_aliases ON type_definition_aliases (aliases); +CREATE INDEX ix_type_definition_aliases_type_definition_name ON type_definition_aliases (type_definition_name); CREATE TABLE type_definition_mappings ( type_definition_name TEXT, @@ -3679,8 +3685,8 @@ CREATE TABLE type_definition_mappings ( PRIMARY KEY (type_definition_name, mappings), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_mappings_type_definition_name ON type_definition_mappings (type_definition_name); CREATE INDEX ix_type_definition_mappings_mappings ON type_definition_mappings (mappings); +CREATE INDEX ix_type_definition_mappings_type_definition_name ON type_definition_mappings (type_definition_name); CREATE TABLE type_definition_exact_mappings ( type_definition_name TEXT, @@ -3688,8 +3694,8 @@ CREATE TABLE type_definition_exact_mappings ( PRIMARY KEY (type_definition_name, exact_mappings), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_exact_mappings_type_definition_name ON type_definition_exact_mappings (type_definition_name); CREATE INDEX ix_type_definition_exact_mappings_exact_mappings ON type_definition_exact_mappings (exact_mappings); +CREATE INDEX ix_type_definition_exact_mappings_type_definition_name ON type_definition_exact_mappings (type_definition_name); CREATE TABLE type_definition_close_mappings ( type_definition_name TEXT, @@ -3715,8 +3721,8 @@ CREATE TABLE type_definition_narrow_mappings ( PRIMARY KEY (type_definition_name, narrow_mappings), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_narrow_mappings_type_definition_name ON type_definition_narrow_mappings (type_definition_name); CREATE INDEX ix_type_definition_narrow_mappings_narrow_mappings ON type_definition_narrow_mappings (narrow_mappings); +CREATE INDEX ix_type_definition_narrow_mappings_type_definition_name ON type_definition_narrow_mappings (type_definition_name); CREATE TABLE type_definition_broad_mappings ( type_definition_name TEXT, @@ -3733,8 +3739,8 @@ CREATE TABLE type_definition_contributors ( PRIMARY KEY (type_definition_name, contributors), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_contributors_type_definition_name ON type_definition_contributors (type_definition_name); CREATE INDEX ix_type_definition_contributors_contributors ON type_definition_contributors (contributors); +CREATE INDEX ix_type_definition_contributors_type_definition_name ON type_definition_contributors (type_definition_name); CREATE TABLE type_definition_category ( type_definition_name TEXT, @@ -3742,8 +3748,8 @@ CREATE TABLE type_definition_category ( PRIMARY KEY (type_definition_name, category), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_category_category ON type_definition_category (category); CREATE INDEX ix_type_definition_category_type_definition_name ON type_definition_category (type_definition_name); +CREATE INDEX ix_type_definition_category_category ON type_definition_category (category); CREATE TABLE type_definition_keyword ( type_definition_name TEXT, @@ -3780,8 +3786,8 @@ CREATE TABLE definition_values_from ( PRIMARY KEY (definition_name, values_from), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_values_from_definition_name ON definition_values_from (definition_name); CREATE INDEX ix_definition_values_from_values_from ON definition_values_from (values_from); +CREATE INDEX ix_definition_values_from_definition_name ON definition_values_from (definition_name); CREATE TABLE definition_id_prefixes ( definition_name TEXT, @@ -3798,8 +3804,8 @@ CREATE TABLE definition_implements ( PRIMARY KEY (definition_name, implements), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_implements_definition_name ON definition_implements (definition_name); CREATE INDEX ix_definition_implements_implements ON definition_implements (implements); +CREATE INDEX ix_definition_implements_definition_name ON definition_implements (definition_name); CREATE TABLE definition_instantiates ( definition_name TEXT, @@ -3888,8 +3894,8 @@ CREATE TABLE definition_related_mappings ( PRIMARY KEY (definition_name, related_mappings), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_related_mappings_definition_name ON definition_related_mappings (definition_name); CREATE INDEX ix_definition_related_mappings_related_mappings ON definition_related_mappings (related_mappings); +CREATE INDEX ix_definition_related_mappings_definition_name ON definition_related_mappings (definition_name); CREATE TABLE definition_narrow_mappings ( definition_name TEXT, @@ -3897,8 +3903,8 @@ CREATE TABLE definition_narrow_mappings ( PRIMARY KEY (definition_name, narrow_mappings), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_narrow_mappings_definition_name ON definition_narrow_mappings (definition_name); CREATE INDEX ix_definition_narrow_mappings_narrow_mappings ON definition_narrow_mappings (narrow_mappings); +CREATE INDEX ix_definition_narrow_mappings_definition_name ON definition_narrow_mappings (definition_name); CREATE TABLE definition_broad_mappings ( definition_name TEXT, @@ -3942,8 +3948,8 @@ CREATE TABLE reachability_query_source_nodes ( PRIMARY KEY (reachability_query_id, source_nodes), FOREIGN KEY(reachability_query_id) REFERENCES reachability_query (id) ); -CREATE INDEX ix_reachability_query_source_nodes_source_nodes ON reachability_query_source_nodes (source_nodes); CREATE INDEX ix_reachability_query_source_nodes_reachability_query_id ON reachability_query_source_nodes (reachability_query_id); +CREATE INDEX ix_reachability_query_source_nodes_source_nodes ON reachability_query_source_nodes (source_nodes); CREATE TABLE reachability_query_relationship_types ( reachability_query_id INTEGER, @@ -3969,8 +3975,8 @@ CREATE TABLE anonymous_expression_notes ( PRIMARY KEY (anonymous_expression_id, notes), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_notes_anonymous_expression_id ON anonymous_expression_notes (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_notes_notes ON anonymous_expression_notes (notes); +CREATE INDEX ix_anonymous_expression_notes_anonymous_expression_id ON anonymous_expression_notes (anonymous_expression_id); CREATE TABLE anonymous_expression_comments ( anonymous_expression_id INTEGER, @@ -3978,8 +3984,8 @@ CREATE TABLE anonymous_expression_comments ( PRIMARY KEY (anonymous_expression_id, comments), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_comments_comments ON anonymous_expression_comments (comments); CREATE INDEX ix_anonymous_expression_comments_anonymous_expression_id ON anonymous_expression_comments (anonymous_expression_id); +CREATE INDEX ix_anonymous_expression_comments_comments ON anonymous_expression_comments (comments); CREATE TABLE anonymous_expression_see_also ( anonymous_expression_id INTEGER, @@ -3996,8 +4002,8 @@ CREATE TABLE anonymous_expression_aliases ( PRIMARY KEY (anonymous_expression_id, aliases), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_aliases_aliases ON anonymous_expression_aliases (aliases); CREATE INDEX ix_anonymous_expression_aliases_anonymous_expression_id ON anonymous_expression_aliases (anonymous_expression_id); +CREATE INDEX ix_anonymous_expression_aliases_aliases ON anonymous_expression_aliases (aliases); CREATE TABLE anonymous_expression_mappings ( anonymous_expression_id INTEGER, @@ -4005,8 +4011,8 @@ CREATE TABLE anonymous_expression_mappings ( PRIMARY KEY (anonymous_expression_id, mappings), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_mappings_mappings ON anonymous_expression_mappings (mappings); CREATE INDEX ix_anonymous_expression_mappings_anonymous_expression_id ON anonymous_expression_mappings (anonymous_expression_id); +CREATE INDEX ix_anonymous_expression_mappings_mappings ON anonymous_expression_mappings (mappings); CREATE TABLE anonymous_expression_exact_mappings ( anonymous_expression_id INTEGER, @@ -4014,8 +4020,8 @@ CREATE TABLE anonymous_expression_exact_mappings ( PRIMARY KEY (anonymous_expression_id, exact_mappings), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_exact_mappings_anonymous_expression_id ON anonymous_expression_exact_mappings (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_exact_mappings_exact_mappings ON anonymous_expression_exact_mappings (exact_mappings); +CREATE INDEX ix_anonymous_expression_exact_mappings_anonymous_expression_id ON anonymous_expression_exact_mappings (anonymous_expression_id); CREATE TABLE anonymous_expression_close_mappings ( anonymous_expression_id INTEGER, @@ -4023,8 +4029,8 @@ CREATE TABLE anonymous_expression_close_mappings ( PRIMARY KEY (anonymous_expression_id, close_mappings), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_close_mappings_anonymous_expression_id ON anonymous_expression_close_mappings (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_close_mappings_close_mappings ON anonymous_expression_close_mappings (close_mappings); +CREATE INDEX ix_anonymous_expression_close_mappings_anonymous_expression_id ON anonymous_expression_close_mappings (anonymous_expression_id); CREATE TABLE anonymous_expression_related_mappings ( anonymous_expression_id INTEGER, @@ -4050,8 +4056,8 @@ CREATE TABLE anonymous_expression_broad_mappings ( PRIMARY KEY (anonymous_expression_id, broad_mappings), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_broad_mappings_anonymous_expression_id ON anonymous_expression_broad_mappings (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_broad_mappings_broad_mappings ON anonymous_expression_broad_mappings (broad_mappings); +CREATE INDEX ix_anonymous_expression_broad_mappings_anonymous_expression_id ON anonymous_expression_broad_mappings (anonymous_expression_id); CREATE TABLE anonymous_expression_contributors ( anonymous_expression_id INTEGER, @@ -4097,8 +4103,8 @@ CREATE TABLE path_expression_any_of ( FOREIGN KEY(path_expression_id) REFERENCES path_expression (id), FOREIGN KEY(any_of_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_any_of_path_expression_id ON path_expression_any_of (path_expression_id); CREATE INDEX ix_path_expression_any_of_any_of_id ON path_expression_any_of (any_of_id); +CREATE INDEX ix_path_expression_any_of_path_expression_id ON path_expression_any_of (path_expression_id); CREATE TABLE path_expression_all_of ( path_expression_id INTEGER, @@ -4126,8 +4132,8 @@ CREATE TABLE path_expression_todos ( PRIMARY KEY (path_expression_id, todos), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_todos_path_expression_id ON path_expression_todos (path_expression_id); CREATE INDEX ix_path_expression_todos_todos ON path_expression_todos (todos); +CREATE INDEX ix_path_expression_todos_path_expression_id ON path_expression_todos (path_expression_id); CREATE TABLE path_expression_notes ( path_expression_id INTEGER, @@ -4135,8 +4141,8 @@ CREATE TABLE path_expression_notes ( PRIMARY KEY (path_expression_id, notes), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_notes_path_expression_id ON path_expression_notes (path_expression_id); CREATE INDEX ix_path_expression_notes_notes ON path_expression_notes (notes); +CREATE INDEX ix_path_expression_notes_path_expression_id ON path_expression_notes (path_expression_id); CREATE TABLE path_expression_comments ( path_expression_id INTEGER, @@ -4153,8 +4159,8 @@ CREATE TABLE path_expression_see_also ( PRIMARY KEY (path_expression_id, see_also), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_see_also_path_expression_id ON path_expression_see_also (path_expression_id); CREATE INDEX ix_path_expression_see_also_see_also ON path_expression_see_also (see_also); +CREATE INDEX ix_path_expression_see_also_path_expression_id ON path_expression_see_also (path_expression_id); CREATE TABLE path_expression_aliases ( path_expression_id INTEGER, @@ -4189,8 +4195,8 @@ CREATE TABLE path_expression_close_mappings ( PRIMARY KEY (path_expression_id, close_mappings), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_close_mappings_close_mappings ON path_expression_close_mappings (close_mappings); CREATE INDEX ix_path_expression_close_mappings_path_expression_id ON path_expression_close_mappings (path_expression_id); +CREATE INDEX ix_path_expression_close_mappings_close_mappings ON path_expression_close_mappings (close_mappings); CREATE TABLE path_expression_related_mappings ( path_expression_id INTEGER, @@ -4198,8 +4204,8 @@ CREATE TABLE path_expression_related_mappings ( PRIMARY KEY (path_expression_id, related_mappings), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_related_mappings_path_expression_id ON path_expression_related_mappings (path_expression_id); CREATE INDEX ix_path_expression_related_mappings_related_mappings ON path_expression_related_mappings (related_mappings); +CREATE INDEX ix_path_expression_related_mappings_path_expression_id ON path_expression_related_mappings (path_expression_id); CREATE TABLE path_expression_narrow_mappings ( path_expression_id INTEGER, @@ -4207,8 +4213,8 @@ CREATE TABLE path_expression_narrow_mappings ( PRIMARY KEY (path_expression_id, narrow_mappings), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_narrow_mappings_path_expression_id ON path_expression_narrow_mappings (path_expression_id); CREATE INDEX ix_path_expression_narrow_mappings_narrow_mappings ON path_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_path_expression_narrow_mappings_path_expression_id ON path_expression_narrow_mappings (path_expression_id); CREATE TABLE path_expression_broad_mappings ( path_expression_id INTEGER, @@ -4243,8 +4249,8 @@ CREATE TABLE path_expression_keyword ( PRIMARY KEY (path_expression_id, keyword), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_keyword_path_expression_id ON path_expression_keyword (path_expression_id); CREATE INDEX ix_path_expression_keyword_keyword ON path_expression_keyword (keyword); +CREATE INDEX ix_path_expression_keyword_path_expression_id ON path_expression_keyword (path_expression_id); CREATE TABLE anonymous_slot_expression_equals_string_in ( anonymous_slot_expression_id INTEGER, @@ -4262,8 +4268,8 @@ CREATE TABLE anonymous_slot_expression_none_of ( FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_none_of_anonymous_slot_expression_id ON anonymous_slot_expression_none_of (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_none_of_none_of_id ON anonymous_slot_expression_none_of (none_of_id); +CREATE INDEX ix_anonymous_slot_expression_none_of_anonymous_slot_expression_id ON anonymous_slot_expression_none_of (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_exactly_one_of ( anonymous_slot_expression_id INTEGER, @@ -4292,8 +4298,8 @@ CREATE TABLE anonymous_slot_expression_all_of ( FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_all_of_anonymous_slot_expression_id ON anonymous_slot_expression_all_of (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_all_of_all_of_id ON anonymous_slot_expression_all_of (all_of_id); +CREATE INDEX ix_anonymous_slot_expression_all_of_anonymous_slot_expression_id ON anonymous_slot_expression_all_of (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_todos ( anonymous_slot_expression_id INTEGER, @@ -4337,8 +4343,8 @@ CREATE TABLE anonymous_slot_expression_aliases ( PRIMARY KEY (anonymous_slot_expression_id, aliases), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_aliases_anonymous_slot_expression_id ON anonymous_slot_expression_aliases (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_aliases_aliases ON anonymous_slot_expression_aliases (aliases); +CREATE INDEX ix_anonymous_slot_expression_aliases_anonymous_slot_expression_id ON anonymous_slot_expression_aliases (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_mappings ( anonymous_slot_expression_id INTEGER, @@ -4346,8 +4352,8 @@ CREATE TABLE anonymous_slot_expression_mappings ( PRIMARY KEY (anonymous_slot_expression_id, mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_mappings (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_mappings_mappings ON anonymous_slot_expression_mappings (mappings); +CREATE INDEX ix_anonymous_slot_expression_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_mappings (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_exact_mappings ( anonymous_slot_expression_id INTEGER, @@ -4355,8 +4361,8 @@ CREATE TABLE anonymous_slot_expression_exact_mappings ( PRIMARY KEY (anonymous_slot_expression_id, exact_mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_exact_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_exact_mappings (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_exact_mappings_exact_mappings ON anonymous_slot_expression_exact_mappings (exact_mappings); +CREATE INDEX ix_anonymous_slot_expression_exact_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_exact_mappings (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_close_mappings ( anonymous_slot_expression_id INTEGER, @@ -4382,8 +4388,8 @@ CREATE TABLE anonymous_slot_expression_narrow_mappings ( PRIMARY KEY (anonymous_slot_expression_id, narrow_mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_narrow_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_narrow_mappings (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_narrow_mappings_narrow_mappings ON anonymous_slot_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_anonymous_slot_expression_narrow_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_narrow_mappings (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_broad_mappings ( anonymous_slot_expression_id INTEGER, @@ -4391,8 +4397,8 @@ CREATE TABLE anonymous_slot_expression_broad_mappings ( PRIMARY KEY (anonymous_slot_expression_id, broad_mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_broad_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_broad_mappings (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_broad_mappings_broad_mappings ON anonymous_slot_expression_broad_mappings (broad_mappings); +CREATE INDEX ix_anonymous_slot_expression_broad_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_broad_mappings (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_contributors ( anonymous_slot_expression_id INTEGER, @@ -4400,8 +4406,8 @@ CREATE TABLE anonymous_slot_expression_contributors ( PRIMARY KEY (anonymous_slot_expression_id, contributors), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_contributors_contributors ON anonymous_slot_expression_contributors (contributors); CREATE INDEX ix_anonymous_slot_expression_contributors_anonymous_slot_expression_id ON anonymous_slot_expression_contributors (anonymous_slot_expression_id); +CREATE INDEX ix_anonymous_slot_expression_contributors_contributors ON anonymous_slot_expression_contributors (contributors); CREATE TABLE anonymous_slot_expression_category ( anonymous_slot_expression_id INTEGER, @@ -4438,8 +4444,8 @@ CREATE TABLE slot_definition_disjoint_with ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(disjoint_with_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_disjoint_with_slot_definition_name ON slot_definition_disjoint_with (slot_definition_name); CREATE INDEX ix_slot_definition_disjoint_with_disjoint_with_name ON slot_definition_disjoint_with (disjoint_with_name); +CREATE INDEX ix_slot_definition_disjoint_with_slot_definition_name ON slot_definition_disjoint_with (slot_definition_name); CREATE TABLE slot_definition_union_of ( slot_definition_name TEXT, @@ -4467,8 +4473,8 @@ CREATE TABLE slot_definition_none_of ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(none_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_definition_none_of_none_of_id ON slot_definition_none_of (none_of_id); CREATE INDEX ix_slot_definition_none_of_slot_definition_name ON slot_definition_none_of (slot_definition_name); +CREATE INDEX ix_slot_definition_none_of_none_of_id ON slot_definition_none_of (none_of_id); CREATE TABLE slot_definition_exactly_one_of ( slot_definition_name TEXT, @@ -4526,8 +4532,8 @@ CREATE TABLE slot_definition_values_from ( PRIMARY KEY (slot_definition_name, values_from), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_values_from_values_from ON slot_definition_values_from (values_from); CREATE INDEX ix_slot_definition_values_from_slot_definition_name ON slot_definition_values_from (slot_definition_name); +CREATE INDEX ix_slot_definition_values_from_values_from ON slot_definition_values_from (values_from); CREATE TABLE slot_definition_id_prefixes ( slot_definition_name TEXT, @@ -4535,8 +4541,8 @@ CREATE TABLE slot_definition_id_prefixes ( PRIMARY KEY (slot_definition_name, id_prefixes), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_id_prefixes_slot_definition_name ON slot_definition_id_prefixes (slot_definition_name); CREATE INDEX ix_slot_definition_id_prefixes_id_prefixes ON slot_definition_id_prefixes (id_prefixes); +CREATE INDEX ix_slot_definition_id_prefixes_slot_definition_name ON slot_definition_id_prefixes (slot_definition_name); CREATE TABLE slot_definition_implements ( slot_definition_name TEXT, @@ -4544,8 +4550,8 @@ CREATE TABLE slot_definition_implements ( PRIMARY KEY (slot_definition_name, implements), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_implements_slot_definition_name ON slot_definition_implements (slot_definition_name); CREATE INDEX ix_slot_definition_implements_implements ON slot_definition_implements (implements); +CREATE INDEX ix_slot_definition_implements_slot_definition_name ON slot_definition_implements (slot_definition_name); CREATE TABLE slot_definition_instantiates ( slot_definition_name TEXT, @@ -4553,8 +4559,8 @@ CREATE TABLE slot_definition_instantiates ( PRIMARY KEY (slot_definition_name, instantiates), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_instantiates_slot_definition_name ON slot_definition_instantiates (slot_definition_name); CREATE INDEX ix_slot_definition_instantiates_instantiates ON slot_definition_instantiates (instantiates); +CREATE INDEX ix_slot_definition_instantiates_slot_definition_name ON slot_definition_instantiates (slot_definition_name); CREATE TABLE slot_definition_todos ( slot_definition_name TEXT, @@ -4562,8 +4568,8 @@ CREATE TABLE slot_definition_todos ( PRIMARY KEY (slot_definition_name, todos), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_todos_todos ON slot_definition_todos (todos); CREATE INDEX ix_slot_definition_todos_slot_definition_name ON slot_definition_todos (slot_definition_name); +CREATE INDEX ix_slot_definition_todos_todos ON slot_definition_todos (todos); CREATE TABLE slot_definition_notes ( slot_definition_name TEXT, @@ -4571,8 +4577,8 @@ CREATE TABLE slot_definition_notes ( PRIMARY KEY (slot_definition_name, notes), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_notes_slot_definition_name ON slot_definition_notes (slot_definition_name); CREATE INDEX ix_slot_definition_notes_notes ON slot_definition_notes (notes); +CREATE INDEX ix_slot_definition_notes_slot_definition_name ON slot_definition_notes (slot_definition_name); CREATE TABLE slot_definition_comments ( slot_definition_name TEXT, @@ -4607,8 +4613,8 @@ CREATE TABLE slot_definition_mappings ( PRIMARY KEY (slot_definition_name, mappings), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_mappings_slot_definition_name ON slot_definition_mappings (slot_definition_name); CREATE INDEX ix_slot_definition_mappings_mappings ON slot_definition_mappings (mappings); +CREATE INDEX ix_slot_definition_mappings_slot_definition_name ON slot_definition_mappings (slot_definition_name); CREATE TABLE slot_definition_exact_mappings ( slot_definition_name TEXT, @@ -4616,8 +4622,8 @@ CREATE TABLE slot_definition_exact_mappings ( PRIMARY KEY (slot_definition_name, exact_mappings), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_exact_mappings_exact_mappings ON slot_definition_exact_mappings (exact_mappings); CREATE INDEX ix_slot_definition_exact_mappings_slot_definition_name ON slot_definition_exact_mappings (slot_definition_name); +CREATE INDEX ix_slot_definition_exact_mappings_exact_mappings ON slot_definition_exact_mappings (exact_mappings); CREATE TABLE slot_definition_close_mappings ( slot_definition_name TEXT, @@ -4625,8 +4631,8 @@ CREATE TABLE slot_definition_close_mappings ( PRIMARY KEY (slot_definition_name, close_mappings), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_close_mappings_slot_definition_name ON slot_definition_close_mappings (slot_definition_name); CREATE INDEX ix_slot_definition_close_mappings_close_mappings ON slot_definition_close_mappings (close_mappings); +CREATE INDEX ix_slot_definition_close_mappings_slot_definition_name ON slot_definition_close_mappings (slot_definition_name); CREATE TABLE slot_definition_related_mappings ( slot_definition_name TEXT, @@ -4679,8 +4685,8 @@ CREATE TABLE slot_definition_keyword ( PRIMARY KEY (slot_definition_name, keyword), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_keyword_slot_definition_name ON slot_definition_keyword (slot_definition_name); CREATE INDEX ix_slot_definition_keyword_keyword ON slot_definition_keyword (keyword); +CREATE INDEX ix_slot_definition_keyword_slot_definition_name ON slot_definition_keyword (slot_definition_name); CREATE TABLE class_expression_any_of ( class_expression_id INTEGER, @@ -4709,8 +4715,8 @@ CREATE TABLE class_expression_none_of ( FOREIGN KEY(class_expression_id) REFERENCES class_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_expression_none_of_none_of_id ON class_expression_none_of (none_of_id); CREATE INDEX ix_class_expression_none_of_class_expression_id ON class_expression_none_of (class_expression_id); +CREATE INDEX ix_class_expression_none_of_none_of_id ON class_expression_none_of (none_of_id); CREATE TABLE class_expression_all_of ( class_expression_id INTEGER, @@ -4719,8 +4725,8 @@ CREATE TABLE class_expression_all_of ( FOREIGN KEY(class_expression_id) REFERENCES class_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_expression_all_of_all_of_id ON class_expression_all_of (all_of_id); CREATE INDEX ix_class_expression_all_of_class_expression_id ON class_expression_all_of (class_expression_id); +CREATE INDEX ix_class_expression_all_of_all_of_id ON class_expression_all_of (all_of_id); CREATE TABLE anonymous_class_expression_any_of ( anonymous_class_expression_id INTEGER, @@ -4739,8 +4745,8 @@ CREATE TABLE anonymous_class_expression_exactly_one_of ( FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_exactly_one_of_exactly_one_of_id ON anonymous_class_expression_exactly_one_of (exactly_one_of_id); CREATE INDEX ix_anonymous_class_expression_exactly_one_of_anonymous_class_expression_id ON anonymous_class_expression_exactly_one_of (anonymous_class_expression_id); +CREATE INDEX ix_anonymous_class_expression_exactly_one_of_exactly_one_of_id ON anonymous_class_expression_exactly_one_of (exactly_one_of_id); CREATE TABLE anonymous_class_expression_none_of ( anonymous_class_expression_id INTEGER, @@ -4759,8 +4765,8 @@ CREATE TABLE anonymous_class_expression_all_of ( FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_all_of_all_of_id ON anonymous_class_expression_all_of (all_of_id); CREATE INDEX ix_anonymous_class_expression_all_of_anonymous_class_expression_id ON anonymous_class_expression_all_of (anonymous_class_expression_id); +CREATE INDEX ix_anonymous_class_expression_all_of_all_of_id ON anonymous_class_expression_all_of (all_of_id); CREATE TABLE anonymous_class_expression_todos ( anonymous_class_expression_id INTEGER, @@ -4813,8 +4819,8 @@ CREATE TABLE anonymous_class_expression_mappings ( PRIMARY KEY (anonymous_class_expression_id, mappings), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_mappings_anonymous_class_expression_id ON anonymous_class_expression_mappings (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_mappings_mappings ON anonymous_class_expression_mappings (mappings); +CREATE INDEX ix_anonymous_class_expression_mappings_anonymous_class_expression_id ON anonymous_class_expression_mappings (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_exact_mappings ( anonymous_class_expression_id INTEGER, @@ -4822,8 +4828,8 @@ CREATE TABLE anonymous_class_expression_exact_mappings ( PRIMARY KEY (anonymous_class_expression_id, exact_mappings), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_exact_mappings_anonymous_class_expression_id ON anonymous_class_expression_exact_mappings (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_exact_mappings_exact_mappings ON anonymous_class_expression_exact_mappings (exact_mappings); +CREATE INDEX ix_anonymous_class_expression_exact_mappings_anonymous_class_expression_id ON anonymous_class_expression_exact_mappings (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_close_mappings ( anonymous_class_expression_id INTEGER, @@ -4858,8 +4864,8 @@ CREATE TABLE anonymous_class_expression_broad_mappings ( PRIMARY KEY (anonymous_class_expression_id, broad_mappings), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_broad_mappings_broad_mappings ON anonymous_class_expression_broad_mappings (broad_mappings); CREATE INDEX ix_anonymous_class_expression_broad_mappings_anonymous_class_expression_id ON anonymous_class_expression_broad_mappings (anonymous_class_expression_id); +CREATE INDEX ix_anonymous_class_expression_broad_mappings_broad_mappings ON anonymous_class_expression_broad_mappings (broad_mappings); CREATE TABLE anonymous_class_expression_contributors ( anonymous_class_expression_id INTEGER, @@ -4867,8 +4873,8 @@ CREATE TABLE anonymous_class_expression_contributors ( PRIMARY KEY (anonymous_class_expression_id, contributors), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_contributors_anonymous_class_expression_id ON anonymous_class_expression_contributors (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_contributors_contributors ON anonymous_class_expression_contributors (contributors); +CREATE INDEX ix_anonymous_class_expression_contributors_anonymous_class_expression_id ON anonymous_class_expression_contributors (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_category ( anonymous_class_expression_id INTEGER, @@ -4876,8 +4882,8 @@ CREATE TABLE anonymous_class_expression_category ( PRIMARY KEY (anonymous_class_expression_id, category), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_category_anonymous_class_expression_id ON anonymous_class_expression_category (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_category_category ON anonymous_class_expression_category (category); +CREATE INDEX ix_anonymous_class_expression_category_anonymous_class_expression_id ON anonymous_class_expression_category (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_keyword ( anonymous_class_expression_id INTEGER, @@ -4895,8 +4901,8 @@ CREATE TABLE class_definition_slots ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(slots_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_class_definition_slots_class_definition_name ON class_definition_slots (class_definition_name); CREATE INDEX ix_class_definition_slots_slots_name ON class_definition_slots (slots_name); +CREATE INDEX ix_class_definition_slots_class_definition_name ON class_definition_slots (class_definition_name); CREATE TABLE class_definition_union_of ( class_definition_name TEXT, @@ -4925,8 +4931,8 @@ CREATE TABLE class_definition_disjoint_with ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(disjoint_with_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_disjoint_with_class_definition_name ON class_definition_disjoint_with (class_definition_name); CREATE INDEX ix_class_definition_disjoint_with_disjoint_with_name ON class_definition_disjoint_with (disjoint_with_name); +CREATE INDEX ix_class_definition_disjoint_with_class_definition_name ON class_definition_disjoint_with (class_definition_name); CREATE TABLE class_definition_any_of ( class_definition_name TEXT, @@ -4955,8 +4961,8 @@ CREATE TABLE class_definition_none_of ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(none_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_definition_none_of_none_of_id ON class_definition_none_of (none_of_id); CREATE INDEX ix_class_definition_none_of_class_definition_name ON class_definition_none_of (class_definition_name); +CREATE INDEX ix_class_definition_none_of_none_of_id ON class_definition_none_of (none_of_id); CREATE TABLE class_definition_all_of ( class_definition_name TEXT, @@ -4975,8 +4981,8 @@ CREATE TABLE class_definition_mixins ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(mixins_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_mixins_mixins_name ON class_definition_mixins (mixins_name); CREATE INDEX ix_class_definition_mixins_class_definition_name ON class_definition_mixins (class_definition_name); +CREATE INDEX ix_class_definition_mixins_mixins_name ON class_definition_mixins (mixins_name); CREATE TABLE class_definition_apply_to ( class_definition_name TEXT, @@ -4985,8 +4991,8 @@ CREATE TABLE class_definition_apply_to ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(apply_to_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_apply_to_apply_to_name ON class_definition_apply_to (apply_to_name); CREATE INDEX ix_class_definition_apply_to_class_definition_name ON class_definition_apply_to (class_definition_name); +CREATE INDEX ix_class_definition_apply_to_apply_to_name ON class_definition_apply_to (apply_to_name); CREATE TABLE class_definition_values_from ( class_definition_name TEXT, @@ -5003,8 +5009,8 @@ CREATE TABLE class_definition_id_prefixes ( PRIMARY KEY (class_definition_name, id_prefixes), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_id_prefixes_class_definition_name ON class_definition_id_prefixes (class_definition_name); CREATE INDEX ix_class_definition_id_prefixes_id_prefixes ON class_definition_id_prefixes (id_prefixes); +CREATE INDEX ix_class_definition_id_prefixes_class_definition_name ON class_definition_id_prefixes (class_definition_name); CREATE TABLE class_definition_implements ( class_definition_name TEXT, @@ -5030,8 +5036,8 @@ CREATE TABLE class_definition_todos ( PRIMARY KEY (class_definition_name, todos), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_todos_class_definition_name ON class_definition_todos (class_definition_name); CREATE INDEX ix_class_definition_todos_todos ON class_definition_todos (todos); +CREATE INDEX ix_class_definition_todos_class_definition_name ON class_definition_todos (class_definition_name); CREATE TABLE class_definition_notes ( class_definition_name TEXT, @@ -5057,8 +5063,8 @@ CREATE TABLE class_definition_see_also ( PRIMARY KEY (class_definition_name, see_also), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_see_also_class_definition_name ON class_definition_see_also (class_definition_name); CREATE INDEX ix_class_definition_see_also_see_also ON class_definition_see_also (see_also); +CREATE INDEX ix_class_definition_see_also_class_definition_name ON class_definition_see_also (class_definition_name); CREATE TABLE class_definition_aliases ( class_definition_name TEXT, @@ -5066,8 +5072,8 @@ CREATE TABLE class_definition_aliases ( PRIMARY KEY (class_definition_name, aliases), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_aliases_aliases ON class_definition_aliases (aliases); CREATE INDEX ix_class_definition_aliases_class_definition_name ON class_definition_aliases (class_definition_name); +CREATE INDEX ix_class_definition_aliases_aliases ON class_definition_aliases (aliases); CREATE TABLE class_definition_mappings ( class_definition_name TEXT, @@ -5075,8 +5081,8 @@ CREATE TABLE class_definition_mappings ( PRIMARY KEY (class_definition_name, mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_mappings_class_definition_name ON class_definition_mappings (class_definition_name); CREATE INDEX ix_class_definition_mappings_mappings ON class_definition_mappings (mappings); +CREATE INDEX ix_class_definition_mappings_class_definition_name ON class_definition_mappings (class_definition_name); CREATE TABLE class_definition_exact_mappings ( class_definition_name TEXT, @@ -5084,8 +5090,8 @@ CREATE TABLE class_definition_exact_mappings ( PRIMARY KEY (class_definition_name, exact_mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_exact_mappings_class_definition_name ON class_definition_exact_mappings (class_definition_name); CREATE INDEX ix_class_definition_exact_mappings_exact_mappings ON class_definition_exact_mappings (exact_mappings); +CREATE INDEX ix_class_definition_exact_mappings_class_definition_name ON class_definition_exact_mappings (class_definition_name); CREATE TABLE class_definition_close_mappings ( class_definition_name TEXT, @@ -5093,8 +5099,8 @@ CREATE TABLE class_definition_close_mappings ( PRIMARY KEY (class_definition_name, close_mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_close_mappings_class_definition_name ON class_definition_close_mappings (class_definition_name); CREATE INDEX ix_class_definition_close_mappings_close_mappings ON class_definition_close_mappings (close_mappings); +CREATE INDEX ix_class_definition_close_mappings_class_definition_name ON class_definition_close_mappings (class_definition_name); CREATE TABLE class_definition_related_mappings ( class_definition_name TEXT, @@ -5147,8 +5153,8 @@ CREATE TABLE class_definition_keyword ( PRIMARY KEY (class_definition_name, keyword), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_keyword_class_definition_name ON class_definition_keyword (class_definition_name); CREATE INDEX ix_class_definition_keyword_keyword ON class_definition_keyword (keyword); +CREATE INDEX ix_class_definition_keyword_class_definition_name ON class_definition_keyword (class_definition_name); CREATE TABLE dimension_expression_todos ( dimension_expression_id INTEGER, @@ -5183,8 +5189,8 @@ CREATE TABLE dimension_expression_see_also ( PRIMARY KEY (dimension_expression_id, see_also), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_see_also_dimension_expression_id ON dimension_expression_see_also (dimension_expression_id); CREATE INDEX ix_dimension_expression_see_also_see_also ON dimension_expression_see_also (see_also); +CREATE INDEX ix_dimension_expression_see_also_dimension_expression_id ON dimension_expression_see_also (dimension_expression_id); CREATE TABLE dimension_expression_aliases ( dimension_expression_id INTEGER, @@ -5219,8 +5225,8 @@ CREATE TABLE dimension_expression_close_mappings ( PRIMARY KEY (dimension_expression_id, close_mappings), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_close_mappings_dimension_expression_id ON dimension_expression_close_mappings (dimension_expression_id); CREATE INDEX ix_dimension_expression_close_mappings_close_mappings ON dimension_expression_close_mappings (close_mappings); +CREATE INDEX ix_dimension_expression_close_mappings_dimension_expression_id ON dimension_expression_close_mappings (dimension_expression_id); CREATE TABLE dimension_expression_related_mappings ( dimension_expression_id INTEGER, @@ -5237,8 +5243,8 @@ CREATE TABLE dimension_expression_narrow_mappings ( PRIMARY KEY (dimension_expression_id, narrow_mappings), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_narrow_mappings_dimension_expression_id ON dimension_expression_narrow_mappings (dimension_expression_id); CREATE INDEX ix_dimension_expression_narrow_mappings_narrow_mappings ON dimension_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_dimension_expression_narrow_mappings_dimension_expression_id ON dimension_expression_narrow_mappings (dimension_expression_id); CREATE TABLE dimension_expression_broad_mappings ( dimension_expression_id INTEGER, @@ -5246,8 +5252,8 @@ CREATE TABLE dimension_expression_broad_mappings ( PRIMARY KEY (dimension_expression_id, broad_mappings), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_broad_mappings_dimension_expression_id ON dimension_expression_broad_mappings (dimension_expression_id); CREATE INDEX ix_dimension_expression_broad_mappings_broad_mappings ON dimension_expression_broad_mappings (broad_mappings); +CREATE INDEX ix_dimension_expression_broad_mappings_dimension_expression_id ON dimension_expression_broad_mappings (dimension_expression_id); CREATE TABLE dimension_expression_contributors ( dimension_expression_id INTEGER, @@ -5264,8 +5270,8 @@ CREATE TABLE dimension_expression_category ( PRIMARY KEY (dimension_expression_id, category), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_category_category ON dimension_expression_category (category); CREATE INDEX ix_dimension_expression_category_dimension_expression_id ON dimension_expression_category (dimension_expression_id); +CREATE INDEX ix_dimension_expression_category_category ON dimension_expression_category (category); CREATE TABLE dimension_expression_keyword ( dimension_expression_id INTEGER, @@ -5273,8 +5279,8 @@ CREATE TABLE dimension_expression_keyword ( PRIMARY KEY (dimension_expression_id, keyword), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_keyword_dimension_expression_id ON dimension_expression_keyword (dimension_expression_id); CREATE INDEX ix_dimension_expression_keyword_keyword ON dimension_expression_keyword (keyword); +CREATE INDEX ix_dimension_expression_keyword_dimension_expression_id ON dimension_expression_keyword (dimension_expression_id); CREATE TABLE pattern_expression_todos ( pattern_expression_id INTEGER, @@ -5282,8 +5288,8 @@ CREATE TABLE pattern_expression_todos ( PRIMARY KEY (pattern_expression_id, todos), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_todos_pattern_expression_id ON pattern_expression_todos (pattern_expression_id); CREATE INDEX ix_pattern_expression_todos_todos ON pattern_expression_todos (todos); +CREATE INDEX ix_pattern_expression_todos_pattern_expression_id ON pattern_expression_todos (pattern_expression_id); CREATE TABLE pattern_expression_notes ( pattern_expression_id INTEGER, @@ -5291,8 +5297,8 @@ CREATE TABLE pattern_expression_notes ( PRIMARY KEY (pattern_expression_id, notes), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_notes_notes ON pattern_expression_notes (notes); CREATE INDEX ix_pattern_expression_notes_pattern_expression_id ON pattern_expression_notes (pattern_expression_id); +CREATE INDEX ix_pattern_expression_notes_notes ON pattern_expression_notes (notes); CREATE TABLE pattern_expression_comments ( pattern_expression_id INTEGER, @@ -5300,8 +5306,8 @@ CREATE TABLE pattern_expression_comments ( PRIMARY KEY (pattern_expression_id, comments), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_comments_pattern_expression_id ON pattern_expression_comments (pattern_expression_id); CREATE INDEX ix_pattern_expression_comments_comments ON pattern_expression_comments (comments); +CREATE INDEX ix_pattern_expression_comments_pattern_expression_id ON pattern_expression_comments (pattern_expression_id); CREATE TABLE pattern_expression_see_also ( pattern_expression_id INTEGER, @@ -5318,8 +5324,8 @@ CREATE TABLE pattern_expression_aliases ( PRIMARY KEY (pattern_expression_id, aliases), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_aliases_pattern_expression_id ON pattern_expression_aliases (pattern_expression_id); CREATE INDEX ix_pattern_expression_aliases_aliases ON pattern_expression_aliases (aliases); +CREATE INDEX ix_pattern_expression_aliases_pattern_expression_id ON pattern_expression_aliases (pattern_expression_id); CREATE TABLE pattern_expression_mappings ( pattern_expression_id INTEGER, @@ -5327,8 +5333,8 @@ CREATE TABLE pattern_expression_mappings ( PRIMARY KEY (pattern_expression_id, mappings), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_mappings_pattern_expression_id ON pattern_expression_mappings (pattern_expression_id); CREATE INDEX ix_pattern_expression_mappings_mappings ON pattern_expression_mappings (mappings); +CREATE INDEX ix_pattern_expression_mappings_pattern_expression_id ON pattern_expression_mappings (pattern_expression_id); CREATE TABLE pattern_expression_exact_mappings ( pattern_expression_id INTEGER, @@ -5363,8 +5369,8 @@ CREATE TABLE pattern_expression_narrow_mappings ( PRIMARY KEY (pattern_expression_id, narrow_mappings), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_narrow_mappings_pattern_expression_id ON pattern_expression_narrow_mappings (pattern_expression_id); CREATE INDEX ix_pattern_expression_narrow_mappings_narrow_mappings ON pattern_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_pattern_expression_narrow_mappings_pattern_expression_id ON pattern_expression_narrow_mappings (pattern_expression_id); CREATE TABLE pattern_expression_broad_mappings ( pattern_expression_id INTEGER, @@ -5372,8 +5378,8 @@ CREATE TABLE pattern_expression_broad_mappings ( PRIMARY KEY (pattern_expression_id, broad_mappings), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_broad_mappings_pattern_expression_id ON pattern_expression_broad_mappings (pattern_expression_id); CREATE INDEX ix_pattern_expression_broad_mappings_broad_mappings ON pattern_expression_broad_mappings (broad_mappings); +CREATE INDEX ix_pattern_expression_broad_mappings_pattern_expression_id ON pattern_expression_broad_mappings (pattern_expression_id); CREATE TABLE pattern_expression_contributors ( pattern_expression_id INTEGER, @@ -5426,8 +5432,8 @@ CREATE TABLE import_expression_comments ( PRIMARY KEY (import_expression_id, comments), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_comments_import_expression_id ON import_expression_comments (import_expression_id); CREATE INDEX ix_import_expression_comments_comments ON import_expression_comments (comments); +CREATE INDEX ix_import_expression_comments_import_expression_id ON import_expression_comments (import_expression_id); CREATE TABLE import_expression_see_also ( import_expression_id INTEGER, @@ -5453,8 +5459,8 @@ CREATE TABLE import_expression_mappings ( PRIMARY KEY (import_expression_id, mappings), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_mappings_import_expression_id ON import_expression_mappings (import_expression_id); CREATE INDEX ix_import_expression_mappings_mappings ON import_expression_mappings (mappings); +CREATE INDEX ix_import_expression_mappings_import_expression_id ON import_expression_mappings (import_expression_id); CREATE TABLE import_expression_exact_mappings ( import_expression_id INTEGER, @@ -5489,8 +5495,8 @@ CREATE TABLE import_expression_narrow_mappings ( PRIMARY KEY (import_expression_id, narrow_mappings), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_narrow_mappings_import_expression_id ON import_expression_narrow_mappings (import_expression_id); CREATE INDEX ix_import_expression_narrow_mappings_narrow_mappings ON import_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_import_expression_narrow_mappings_import_expression_id ON import_expression_narrow_mappings (import_expression_id); CREATE TABLE import_expression_broad_mappings ( import_expression_id INTEGER, @@ -5498,8 +5504,8 @@ CREATE TABLE import_expression_broad_mappings ( PRIMARY KEY (import_expression_id, broad_mappings), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_broad_mappings_import_expression_id ON import_expression_broad_mappings (import_expression_id); CREATE INDEX ix_import_expression_broad_mappings_broad_mappings ON import_expression_broad_mappings (broad_mappings); +CREATE INDEX ix_import_expression_broad_mappings_import_expression_id ON import_expression_broad_mappings (import_expression_id); CREATE TABLE import_expression_contributors ( import_expression_id INTEGER, @@ -5516,8 +5522,8 @@ CREATE TABLE import_expression_category ( PRIMARY KEY (import_expression_id, category), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_category_import_expression_id ON import_expression_category (import_expression_id); CREATE INDEX ix_import_expression_category_category ON import_expression_category (category); +CREATE INDEX ix_import_expression_category_import_expression_id ON import_expression_category (import_expression_id); CREATE TABLE import_expression_keyword ( import_expression_id INTEGER, @@ -5534,8 +5540,8 @@ CREATE TABLE "UnitOfMeasure_exact_mappings" ( PRIMARY KEY ("UnitOfMeasure_id", exact_mappings), FOREIGN KEY("UnitOfMeasure_id") REFERENCES "UnitOfMeasure" (id) ); -CREATE INDEX "ix_UnitOfMeasure_exact_mappings_exact_mappings" ON "UnitOfMeasure_exact_mappings" (exact_mappings); CREATE INDEX "ix_UnitOfMeasure_exact_mappings_UnitOfMeasure_id" ON "UnitOfMeasure_exact_mappings" ("UnitOfMeasure_id"); +CREATE INDEX "ix_UnitOfMeasure_exact_mappings_exact_mappings" ON "UnitOfMeasure_exact_mappings" (exact_mappings); CREATE TABLE slot_expression ( id INTEGER NOT NULL, @@ -5606,24 +5612,24 @@ CREATE TABLE local_name ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_local_name_slot_definition_name ON local_name (slot_definition_name); -CREATE INDEX ix_local_name_type_definition_name ON local_name (type_definition_name); +CREATE INDEX ix_local_name_local_name_source ON local_name (local_name_source); +CREATE INDEX ix_local_name_enum_definition_name ON local_name (enum_definition_name); CREATE INDEX ix_local_name_definition_name ON local_name (definition_name); +CREATE INDEX local_name_enum_definition_name_local_name_source_idx ON local_name (enum_definition_name, local_name_source); CREATE INDEX local_name_type_definition_name_local_name_source_idx ON local_name (type_definition_name, local_name_source); +CREATE INDEX ix_local_name_subset_definition_name ON local_name (subset_definition_name); +CREATE INDEX local_name_slot_definition_name_local_name_source_idx ON local_name (slot_definition_name, local_name_source); +CREATE INDEX ix_local_name_type_definition_name ON local_name (type_definition_name); CREATE INDEX local_name_subset_definition_name_local_name_source_idx ON local_name (subset_definition_name, local_name_source); -CREATE INDEX ix_local_name_element_name ON local_name (element_name); +CREATE INDEX ix_local_name_schema_definition_name ON local_name (schema_definition_name); +CREATE INDEX local_name_element_name_local_name_source_idx ON local_name (element_name, local_name_source); CREATE INDEX ix_local_name_local_name_value ON local_name (local_name_value); +CREATE INDEX local_name_schema_definition_name_local_name_source_idx ON local_name (schema_definition_name, local_name_source); +CREATE INDEX ix_local_name_element_name ON local_name (element_name); +CREATE INDEX local_name_class_definition_name_local_name_source_idx ON local_name (class_definition_name, local_name_source); CREATE INDEX local_name_definition_name_local_name_source_idx ON local_name (definition_name, local_name_source); -CREATE INDEX local_name_enum_definition_name_local_name_source_idx ON local_name (enum_definition_name, local_name_source); CREATE INDEX ix_local_name_class_definition_name ON local_name (class_definition_name); -CREATE INDEX local_name_element_name_local_name_source_idx ON local_name (element_name, local_name_source); -CREATE INDEX local_name_class_definition_name_local_name_source_idx ON local_name (class_definition_name, local_name_source); -CREATE INDEX ix_local_name_schema_definition_name ON local_name (schema_definition_name); -CREATE INDEX local_name_slot_definition_name_local_name_source_idx ON local_name (slot_definition_name, local_name_source); -CREATE INDEX ix_local_name_subset_definition_name ON local_name (subset_definition_name); -CREATE INDEX ix_local_name_enum_definition_name ON local_name (enum_definition_name); -CREATE INDEX local_name_schema_definition_name_local_name_source_idx ON local_name (schema_definition_name, local_name_source); -CREATE INDEX ix_local_name_local_name_source ON local_name (local_name_source); +CREATE INDEX ix_local_name_slot_definition_name ON local_name (slot_definition_name); CREATE TABLE permissible_value ( text TEXT NOT NULL, @@ -5664,8 +5670,8 @@ CREATE TABLE common_metadata_in_subset ( FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_common_metadata_in_subset_common_metadata_id ON common_metadata_in_subset (common_metadata_id); CREATE INDEX ix_common_metadata_in_subset_in_subset_name ON common_metadata_in_subset (in_subset_name); +CREATE INDEX ix_common_metadata_in_subset_common_metadata_id ON common_metadata_in_subset (common_metadata_id); CREATE TABLE element_in_subset ( element_name TEXT, @@ -5674,8 +5680,8 @@ CREATE TABLE element_in_subset ( FOREIGN KEY(element_name) REFERENCES element (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_element_in_subset_element_name ON element_in_subset (element_name); CREATE INDEX ix_element_in_subset_in_subset_name ON element_in_subset (in_subset_name); +CREATE INDEX ix_element_in_subset_element_name ON element_in_subset (element_name); CREATE TABLE schema_definition_in_subset ( schema_definition_name TEXT, @@ -5684,8 +5690,8 @@ CREATE TABLE schema_definition_in_subset ( FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_schema_definition_in_subset_schema_definition_name ON schema_definition_in_subset (schema_definition_name); CREATE INDEX ix_schema_definition_in_subset_in_subset_name ON schema_definition_in_subset (in_subset_name); +CREATE INDEX ix_schema_definition_in_subset_schema_definition_name ON schema_definition_in_subset (schema_definition_name); CREATE TABLE type_expression_equals_string_in ( type_expression_id INTEGER, @@ -5693,8 +5699,8 @@ CREATE TABLE type_expression_equals_string_in ( PRIMARY KEY (type_expression_id, equals_string_in), FOREIGN KEY(type_expression_id) REFERENCES type_expression (id) ); -CREATE INDEX ix_type_expression_equals_string_in_equals_string_in ON type_expression_equals_string_in (equals_string_in); CREATE INDEX ix_type_expression_equals_string_in_type_expression_id ON type_expression_equals_string_in (type_expression_id); +CREATE INDEX ix_type_expression_equals_string_in_equals_string_in ON type_expression_equals_string_in (equals_string_in); CREATE TABLE type_expression_none_of ( type_expression_id INTEGER, @@ -5703,8 +5709,8 @@ CREATE TABLE type_expression_none_of ( FOREIGN KEY(type_expression_id) REFERENCES type_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_expression_none_of_type_expression_id ON type_expression_none_of (type_expression_id); CREATE INDEX ix_type_expression_none_of_none_of_id ON type_expression_none_of (none_of_id); +CREATE INDEX ix_type_expression_none_of_type_expression_id ON type_expression_none_of (type_expression_id); CREATE TABLE type_expression_exactly_one_of ( type_expression_id INTEGER, @@ -5733,8 +5739,8 @@ CREATE TABLE type_expression_all_of ( FOREIGN KEY(type_expression_id) REFERENCES type_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_expression_all_of_type_expression_id ON type_expression_all_of (type_expression_id); CREATE INDEX ix_type_expression_all_of_all_of_id ON type_expression_all_of (all_of_id); +CREATE INDEX ix_type_expression_all_of_type_expression_id ON type_expression_all_of (type_expression_id); CREATE TABLE anonymous_type_expression_equals_string_in ( anonymous_type_expression_id INTEGER, @@ -5772,8 +5778,8 @@ CREATE TABLE anonymous_type_expression_any_of ( FOREIGN KEY(anonymous_type_expression_id) REFERENCES anonymous_type_expression (id), FOREIGN KEY(any_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_anonymous_type_expression_any_of_anonymous_type_expression_id ON anonymous_type_expression_any_of (anonymous_type_expression_id); CREATE INDEX ix_anonymous_type_expression_any_of_any_of_id ON anonymous_type_expression_any_of (any_of_id); +CREATE INDEX ix_anonymous_type_expression_any_of_anonymous_type_expression_id ON anonymous_type_expression_any_of (anonymous_type_expression_id); CREATE TABLE anonymous_type_expression_all_of ( anonymous_type_expression_id INTEGER, @@ -5782,8 +5788,8 @@ CREATE TABLE anonymous_type_expression_all_of ( FOREIGN KEY(anonymous_type_expression_id) REFERENCES anonymous_type_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_anonymous_type_expression_all_of_anonymous_type_expression_id ON anonymous_type_expression_all_of (anonymous_type_expression_id); CREATE INDEX ix_anonymous_type_expression_all_of_all_of_id ON anonymous_type_expression_all_of (all_of_id); +CREATE INDEX ix_anonymous_type_expression_all_of_anonymous_type_expression_id ON anonymous_type_expression_all_of (anonymous_type_expression_id); CREATE TABLE type_definition_none_of ( type_definition_name TEXT, @@ -5802,8 +5808,8 @@ CREATE TABLE type_definition_exactly_one_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_definition_exactly_one_of_type_definition_name ON type_definition_exactly_one_of (type_definition_name); CREATE INDEX ix_type_definition_exactly_one_of_exactly_one_of_id ON type_definition_exactly_one_of (exactly_one_of_id); +CREATE INDEX ix_type_definition_exactly_one_of_type_definition_name ON type_definition_exactly_one_of (type_definition_name); CREATE TABLE type_definition_any_of ( type_definition_name TEXT, @@ -5812,8 +5818,8 @@ CREATE TABLE type_definition_any_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(any_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_definition_any_of_type_definition_name ON type_definition_any_of (type_definition_name); CREATE INDEX ix_type_definition_any_of_any_of_id ON type_definition_any_of (any_of_id); +CREATE INDEX ix_type_definition_any_of_type_definition_name ON type_definition_any_of (type_definition_name); CREATE TABLE type_definition_all_of ( type_definition_name TEXT, @@ -5850,8 +5856,8 @@ CREATE TABLE subset_definition_implements ( PRIMARY KEY (subset_definition_name, implements), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_implements_subset_definition_name ON subset_definition_implements (subset_definition_name); CREATE INDEX ix_subset_definition_implements_implements ON subset_definition_implements (implements); +CREATE INDEX ix_subset_definition_implements_subset_definition_name ON subset_definition_implements (subset_definition_name); CREATE TABLE subset_definition_instantiates ( subset_definition_name TEXT, @@ -5859,8 +5865,8 @@ CREATE TABLE subset_definition_instantiates ( PRIMARY KEY (subset_definition_name, instantiates), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_instantiates_instantiates ON subset_definition_instantiates (instantiates); CREATE INDEX ix_subset_definition_instantiates_subset_definition_name ON subset_definition_instantiates (subset_definition_name); +CREATE INDEX ix_subset_definition_instantiates_instantiates ON subset_definition_instantiates (instantiates); CREATE TABLE subset_definition_todos ( subset_definition_name TEXT, @@ -5868,8 +5874,8 @@ CREATE TABLE subset_definition_todos ( PRIMARY KEY (subset_definition_name, todos), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_todos_todos ON subset_definition_todos (todos); CREATE INDEX ix_subset_definition_todos_subset_definition_name ON subset_definition_todos (subset_definition_name); +CREATE INDEX ix_subset_definition_todos_todos ON subset_definition_todos (todos); CREATE TABLE subset_definition_notes ( subset_definition_name TEXT, @@ -5877,8 +5883,8 @@ CREATE TABLE subset_definition_notes ( PRIMARY KEY (subset_definition_name, notes), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_notes_subset_definition_name ON subset_definition_notes (subset_definition_name); CREATE INDEX ix_subset_definition_notes_notes ON subset_definition_notes (notes); +CREATE INDEX ix_subset_definition_notes_subset_definition_name ON subset_definition_notes (subset_definition_name); CREATE TABLE subset_definition_comments ( subset_definition_name TEXT, @@ -5896,8 +5902,8 @@ CREATE TABLE subset_definition_in_subset ( FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_in_subset_subset_definition_name ON subset_definition_in_subset (subset_definition_name); CREATE INDEX ix_subset_definition_in_subset_in_subset_name ON subset_definition_in_subset (in_subset_name); +CREATE INDEX ix_subset_definition_in_subset_subset_definition_name ON subset_definition_in_subset (subset_definition_name); CREATE TABLE subset_definition_see_also ( subset_definition_name TEXT, @@ -5905,8 +5911,8 @@ CREATE TABLE subset_definition_see_also ( PRIMARY KEY (subset_definition_name, see_also), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_see_also_subset_definition_name ON subset_definition_see_also (subset_definition_name); CREATE INDEX ix_subset_definition_see_also_see_also ON subset_definition_see_also (see_also); +CREATE INDEX ix_subset_definition_see_also_subset_definition_name ON subset_definition_see_also (subset_definition_name); CREATE TABLE subset_definition_aliases ( subset_definition_name TEXT, @@ -5923,8 +5929,8 @@ CREATE TABLE subset_definition_mappings ( PRIMARY KEY (subset_definition_name, mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_mappings_mappings ON subset_definition_mappings (mappings); CREATE INDEX ix_subset_definition_mappings_subset_definition_name ON subset_definition_mappings (subset_definition_name); +CREATE INDEX ix_subset_definition_mappings_mappings ON subset_definition_mappings (mappings); CREATE TABLE subset_definition_exact_mappings ( subset_definition_name TEXT, @@ -5932,8 +5938,8 @@ CREATE TABLE subset_definition_exact_mappings ( PRIMARY KEY (subset_definition_name, exact_mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_exact_mappings_subset_definition_name ON subset_definition_exact_mappings (subset_definition_name); CREATE INDEX ix_subset_definition_exact_mappings_exact_mappings ON subset_definition_exact_mappings (exact_mappings); +CREATE INDEX ix_subset_definition_exact_mappings_subset_definition_name ON subset_definition_exact_mappings (subset_definition_name); CREATE TABLE subset_definition_close_mappings ( subset_definition_name TEXT, @@ -5941,8 +5947,8 @@ CREATE TABLE subset_definition_close_mappings ( PRIMARY KEY (subset_definition_name, close_mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_close_mappings_subset_definition_name ON subset_definition_close_mappings (subset_definition_name); CREATE INDEX ix_subset_definition_close_mappings_close_mappings ON subset_definition_close_mappings (close_mappings); +CREATE INDEX ix_subset_definition_close_mappings_subset_definition_name ON subset_definition_close_mappings (subset_definition_name); CREATE TABLE subset_definition_related_mappings ( subset_definition_name TEXT, @@ -5959,8 +5965,8 @@ CREATE TABLE subset_definition_narrow_mappings ( PRIMARY KEY (subset_definition_name, narrow_mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_narrow_mappings_narrow_mappings ON subset_definition_narrow_mappings (narrow_mappings); CREATE INDEX ix_subset_definition_narrow_mappings_subset_definition_name ON subset_definition_narrow_mappings (subset_definition_name); +CREATE INDEX ix_subset_definition_narrow_mappings_narrow_mappings ON subset_definition_narrow_mappings (narrow_mappings); CREATE TABLE subset_definition_broad_mappings ( subset_definition_name TEXT, @@ -5968,8 +5974,8 @@ CREATE TABLE subset_definition_broad_mappings ( PRIMARY KEY (subset_definition_name, broad_mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_broad_mappings_broad_mappings ON subset_definition_broad_mappings (broad_mappings); CREATE INDEX ix_subset_definition_broad_mappings_subset_definition_name ON subset_definition_broad_mappings (subset_definition_name); +CREATE INDEX ix_subset_definition_broad_mappings_broad_mappings ON subset_definition_broad_mappings (broad_mappings); CREATE TABLE subset_definition_contributors ( subset_definition_name TEXT, @@ -5995,8 +6001,8 @@ CREATE TABLE subset_definition_keyword ( PRIMARY KEY (subset_definition_name, keyword), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_keyword_subset_definition_name ON subset_definition_keyword (subset_definition_name); CREATE INDEX ix_subset_definition_keyword_keyword ON subset_definition_keyword (keyword); +CREATE INDEX ix_subset_definition_keyword_subset_definition_name ON subset_definition_keyword (subset_definition_name); CREATE TABLE definition_in_subset ( definition_name TEXT, @@ -6025,8 +6031,8 @@ CREATE TABLE enum_expression_minus ( FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id), FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_enum_expression_minus_enum_expression_id ON enum_expression_minus (enum_expression_id); CREATE INDEX ix_enum_expression_minus_minus_id ON enum_expression_minus (minus_id); +CREATE INDEX ix_enum_expression_minus_enum_expression_id ON enum_expression_minus (enum_expression_id); CREATE TABLE enum_expression_inherits ( enum_expression_id INTEGER, @@ -6044,8 +6050,8 @@ CREATE TABLE enum_expression_concepts ( PRIMARY KEY (enum_expression_id, concepts), FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id) ); -CREATE INDEX ix_enum_expression_concepts_enum_expression_id ON enum_expression_concepts (enum_expression_id); CREATE INDEX ix_enum_expression_concepts_concepts ON enum_expression_concepts (concepts); +CREATE INDEX ix_enum_expression_concepts_enum_expression_id ON enum_expression_concepts (enum_expression_id); CREATE TABLE anonymous_enum_expression_include ( anonymous_enum_expression_id INTEGER, @@ -6054,8 +6060,8 @@ CREATE TABLE anonymous_enum_expression_include ( FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_anonymous_enum_expression_include_anonymous_enum_expression_id ON anonymous_enum_expression_include (anonymous_enum_expression_id); CREATE INDEX ix_anonymous_enum_expression_include_include_id ON anonymous_enum_expression_include (include_id); +CREATE INDEX ix_anonymous_enum_expression_include_anonymous_enum_expression_id ON anonymous_enum_expression_include (anonymous_enum_expression_id); CREATE TABLE anonymous_enum_expression_minus ( anonymous_enum_expression_id INTEGER, @@ -6074,8 +6080,8 @@ CREATE TABLE anonymous_enum_expression_inherits ( FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), FOREIGN KEY(inherits_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_anonymous_enum_expression_inherits_inherits_name ON anonymous_enum_expression_inherits (inherits_name); CREATE INDEX ix_anonymous_enum_expression_inherits_anonymous_enum_expression_id ON anonymous_enum_expression_inherits (anonymous_enum_expression_id); +CREATE INDEX ix_anonymous_enum_expression_inherits_inherits_name ON anonymous_enum_expression_inherits (inherits_name); CREATE TABLE anonymous_enum_expression_concepts ( anonymous_enum_expression_id INTEGER, @@ -6093,8 +6099,8 @@ CREATE TABLE enum_definition_include ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_enum_definition_include_include_id ON enum_definition_include (include_id); CREATE INDEX ix_enum_definition_include_enum_definition_name ON enum_definition_include (enum_definition_name); +CREATE INDEX ix_enum_definition_include_include_id ON enum_definition_include (include_id); CREATE TABLE enum_definition_minus ( enum_definition_name TEXT, @@ -6103,8 +6109,8 @@ CREATE TABLE enum_definition_minus ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_enum_definition_minus_enum_definition_name ON enum_definition_minus (enum_definition_name); CREATE INDEX ix_enum_definition_minus_minus_id ON enum_definition_minus (minus_id); +CREATE INDEX ix_enum_definition_minus_enum_definition_name ON enum_definition_minus (enum_definition_name); CREATE TABLE enum_definition_inherits ( enum_definition_name TEXT, @@ -6122,8 +6128,8 @@ CREATE TABLE enum_definition_concepts ( PRIMARY KEY (enum_definition_name, concepts), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_concepts_enum_definition_name ON enum_definition_concepts (enum_definition_name); CREATE INDEX ix_enum_definition_concepts_concepts ON enum_definition_concepts (concepts); +CREATE INDEX ix_enum_definition_concepts_enum_definition_name ON enum_definition_concepts (enum_definition_name); CREATE TABLE enum_definition_mixins ( enum_definition_name TEXT, @@ -6132,8 +6138,8 @@ CREATE TABLE enum_definition_mixins ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(mixins_name) REFERENCES definition (name) ); -CREATE INDEX ix_enum_definition_mixins_mixins_name ON enum_definition_mixins (mixins_name); CREATE INDEX ix_enum_definition_mixins_enum_definition_name ON enum_definition_mixins (enum_definition_name); +CREATE INDEX ix_enum_definition_mixins_mixins_name ON enum_definition_mixins (mixins_name); CREATE TABLE enum_definition_apply_to ( enum_definition_name TEXT, @@ -6142,8 +6148,8 @@ CREATE TABLE enum_definition_apply_to ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(apply_to_name) REFERENCES definition (name) ); -CREATE INDEX ix_enum_definition_apply_to_apply_to_name ON enum_definition_apply_to (apply_to_name); CREATE INDEX ix_enum_definition_apply_to_enum_definition_name ON enum_definition_apply_to (enum_definition_name); +CREATE INDEX ix_enum_definition_apply_to_apply_to_name ON enum_definition_apply_to (apply_to_name); CREATE TABLE enum_definition_values_from ( enum_definition_name TEXT, @@ -6151,8 +6157,8 @@ CREATE TABLE enum_definition_values_from ( PRIMARY KEY (enum_definition_name, values_from), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_values_from_enum_definition_name ON enum_definition_values_from (enum_definition_name); CREATE INDEX ix_enum_definition_values_from_values_from ON enum_definition_values_from (values_from); +CREATE INDEX ix_enum_definition_values_from_enum_definition_name ON enum_definition_values_from (enum_definition_name); CREATE TABLE enum_definition_id_prefixes ( enum_definition_name TEXT, @@ -6169,8 +6175,8 @@ CREATE TABLE enum_definition_implements ( PRIMARY KEY (enum_definition_name, implements), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_implements_enum_definition_name ON enum_definition_implements (enum_definition_name); CREATE INDEX ix_enum_definition_implements_implements ON enum_definition_implements (implements); +CREATE INDEX ix_enum_definition_implements_enum_definition_name ON enum_definition_implements (enum_definition_name); CREATE TABLE enum_definition_instantiates ( enum_definition_name TEXT, @@ -6178,8 +6184,8 @@ CREATE TABLE enum_definition_instantiates ( PRIMARY KEY (enum_definition_name, instantiates), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_instantiates_enum_definition_name ON enum_definition_instantiates (enum_definition_name); CREATE INDEX ix_enum_definition_instantiates_instantiates ON enum_definition_instantiates (instantiates); +CREATE INDEX ix_enum_definition_instantiates_enum_definition_name ON enum_definition_instantiates (enum_definition_name); CREATE TABLE enum_definition_todos ( enum_definition_name TEXT, @@ -6205,8 +6211,8 @@ CREATE TABLE enum_definition_comments ( PRIMARY KEY (enum_definition_name, comments), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_comments_enum_definition_name ON enum_definition_comments (enum_definition_name); CREATE INDEX ix_enum_definition_comments_comments ON enum_definition_comments (comments); +CREATE INDEX ix_enum_definition_comments_enum_definition_name ON enum_definition_comments (enum_definition_name); CREATE TABLE enum_definition_in_subset ( enum_definition_name TEXT, @@ -6215,8 +6221,8 @@ CREATE TABLE enum_definition_in_subset ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_enum_definition_in_subset_enum_definition_name ON enum_definition_in_subset (enum_definition_name); CREATE INDEX ix_enum_definition_in_subset_in_subset_name ON enum_definition_in_subset (in_subset_name); +CREATE INDEX ix_enum_definition_in_subset_enum_definition_name ON enum_definition_in_subset (enum_definition_name); CREATE TABLE enum_definition_see_also ( enum_definition_name TEXT, @@ -6224,8 +6230,8 @@ CREATE TABLE enum_definition_see_also ( PRIMARY KEY (enum_definition_name, see_also), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_see_also_enum_definition_name ON enum_definition_see_also (enum_definition_name); CREATE INDEX ix_enum_definition_see_also_see_also ON enum_definition_see_also (see_also); +CREATE INDEX ix_enum_definition_see_also_enum_definition_name ON enum_definition_see_also (enum_definition_name); CREATE TABLE enum_definition_aliases ( enum_definition_name TEXT, @@ -6233,8 +6239,8 @@ CREATE TABLE enum_definition_aliases ( PRIMARY KEY (enum_definition_name, aliases), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_aliases_aliases ON enum_definition_aliases (aliases); CREATE INDEX ix_enum_definition_aliases_enum_definition_name ON enum_definition_aliases (enum_definition_name); +CREATE INDEX ix_enum_definition_aliases_aliases ON enum_definition_aliases (aliases); CREATE TABLE enum_definition_mappings ( enum_definition_name TEXT, @@ -6251,8 +6257,8 @@ CREATE TABLE enum_definition_exact_mappings ( PRIMARY KEY (enum_definition_name, exact_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_exact_mappings_enum_definition_name ON enum_definition_exact_mappings (enum_definition_name); CREATE INDEX ix_enum_definition_exact_mappings_exact_mappings ON enum_definition_exact_mappings (exact_mappings); +CREATE INDEX ix_enum_definition_exact_mappings_enum_definition_name ON enum_definition_exact_mappings (enum_definition_name); CREATE TABLE enum_definition_close_mappings ( enum_definition_name TEXT, @@ -6260,8 +6266,8 @@ CREATE TABLE enum_definition_close_mappings ( PRIMARY KEY (enum_definition_name, close_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_close_mappings_enum_definition_name ON enum_definition_close_mappings (enum_definition_name); CREATE INDEX ix_enum_definition_close_mappings_close_mappings ON enum_definition_close_mappings (close_mappings); +CREATE INDEX ix_enum_definition_close_mappings_enum_definition_name ON enum_definition_close_mappings (enum_definition_name); CREATE TABLE enum_definition_related_mappings ( enum_definition_name TEXT, @@ -6269,8 +6275,8 @@ CREATE TABLE enum_definition_related_mappings ( PRIMARY KEY (enum_definition_name, related_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_related_mappings_enum_definition_name ON enum_definition_related_mappings (enum_definition_name); CREATE INDEX ix_enum_definition_related_mappings_related_mappings ON enum_definition_related_mappings (related_mappings); +CREATE INDEX ix_enum_definition_related_mappings_enum_definition_name ON enum_definition_related_mappings (enum_definition_name); CREATE TABLE enum_definition_narrow_mappings ( enum_definition_name TEXT, @@ -6278,8 +6284,8 @@ CREATE TABLE enum_definition_narrow_mappings ( PRIMARY KEY (enum_definition_name, narrow_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_narrow_mappings_enum_definition_name ON enum_definition_narrow_mappings (enum_definition_name); CREATE INDEX ix_enum_definition_narrow_mappings_narrow_mappings ON enum_definition_narrow_mappings (narrow_mappings); +CREATE INDEX ix_enum_definition_narrow_mappings_enum_definition_name ON enum_definition_narrow_mappings (enum_definition_name); CREATE TABLE enum_definition_broad_mappings ( enum_definition_name TEXT, @@ -6296,8 +6302,8 @@ CREATE TABLE enum_definition_contributors ( PRIMARY KEY (enum_definition_name, contributors), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_contributors_enum_definition_name ON enum_definition_contributors (enum_definition_name); CREATE INDEX ix_enum_definition_contributors_contributors ON enum_definition_contributors (contributors); +CREATE INDEX ix_enum_definition_contributors_enum_definition_name ON enum_definition_contributors (enum_definition_name); CREATE TABLE enum_definition_category ( enum_definition_name TEXT, @@ -6305,8 +6311,8 @@ CREATE TABLE enum_definition_category ( PRIMARY KEY (enum_definition_name, category), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_category_enum_definition_name ON enum_definition_category (enum_definition_name); CREATE INDEX ix_enum_definition_category_category ON enum_definition_category (category); +CREATE INDEX ix_enum_definition_category_enum_definition_name ON enum_definition_category (enum_definition_name); CREATE TABLE enum_definition_keyword ( enum_definition_name TEXT, @@ -6314,8 +6320,8 @@ CREATE TABLE enum_definition_keyword ( PRIMARY KEY (enum_definition_name, keyword), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_keyword_enum_definition_name ON enum_definition_keyword (enum_definition_name); CREATE INDEX ix_enum_definition_keyword_keyword ON enum_definition_keyword (keyword); +CREATE INDEX ix_enum_definition_keyword_enum_definition_name ON enum_definition_keyword (enum_definition_name); CREATE TABLE anonymous_expression_in_subset ( anonymous_expression_id INTEGER, @@ -6324,8 +6330,8 @@ CREATE TABLE anonymous_expression_in_subset ( FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_anonymous_expression_in_subset_anonymous_expression_id ON anonymous_expression_in_subset (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_in_subset_in_subset_name ON anonymous_expression_in_subset (in_subset_name); +CREATE INDEX ix_anonymous_expression_in_subset_anonymous_expression_id ON anonymous_expression_in_subset (anonymous_expression_id); CREATE TABLE path_expression_in_subset ( path_expression_id INTEGER, @@ -6354,8 +6360,8 @@ CREATE TABLE slot_definition_type_mappings ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(type_mappings_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_slot_definition_type_mappings_type_mappings_framework ON slot_definition_type_mappings (type_mappings_framework); CREATE INDEX ix_slot_definition_type_mappings_slot_definition_name ON slot_definition_type_mappings (slot_definition_name); +CREATE INDEX ix_slot_definition_type_mappings_type_mappings_framework ON slot_definition_type_mappings (type_mappings_framework); CREATE TABLE slot_definition_in_subset ( slot_definition_name TEXT, @@ -6364,8 +6370,8 @@ CREATE TABLE slot_definition_in_subset ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_slot_definition_in_subset_in_subset_name ON slot_definition_in_subset (in_subset_name); CREATE INDEX ix_slot_definition_in_subset_slot_definition_name ON slot_definition_in_subset (slot_definition_name); +CREATE INDEX ix_slot_definition_in_subset_in_subset_name ON slot_definition_in_subset (in_subset_name); CREATE TABLE anonymous_class_expression_in_subset ( anonymous_class_expression_id INTEGER, @@ -6374,8 +6380,8 @@ CREATE TABLE anonymous_class_expression_in_subset ( FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_anonymous_class_expression_in_subset_anonymous_class_expression_id ON anonymous_class_expression_in_subset (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_in_subset_in_subset_name ON anonymous_class_expression_in_subset (in_subset_name); +CREATE INDEX ix_anonymous_class_expression_in_subset_anonymous_class_expression_id ON anonymous_class_expression_in_subset (anonymous_class_expression_id); CREATE TABLE class_definition_in_subset ( class_definition_name TEXT, @@ -6421,8 +6427,8 @@ CREATE TABLE class_rule_in_subset ( FOREIGN KEY(class_rule_id) REFERENCES class_rule (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_class_rule_in_subset_class_rule_id ON class_rule_in_subset (class_rule_id); CREATE INDEX ix_class_rule_in_subset_in_subset_name ON class_rule_in_subset (in_subset_name); +CREATE INDEX ix_class_rule_in_subset_class_rule_id ON class_rule_in_subset (class_rule_id); CREATE TABLE class_rule_see_also ( class_rule_id INTEGER, @@ -6439,8 +6445,8 @@ CREATE TABLE class_rule_aliases ( PRIMARY KEY (class_rule_id, aliases), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_aliases_aliases ON class_rule_aliases (aliases); CREATE INDEX ix_class_rule_aliases_class_rule_id ON class_rule_aliases (class_rule_id); +CREATE INDEX ix_class_rule_aliases_aliases ON class_rule_aliases (aliases); CREATE TABLE class_rule_mappings ( class_rule_id INTEGER, @@ -6457,8 +6463,8 @@ CREATE TABLE class_rule_exact_mappings ( PRIMARY KEY (class_rule_id, exact_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_exact_mappings_class_rule_id ON class_rule_exact_mappings (class_rule_id); CREATE INDEX ix_class_rule_exact_mappings_exact_mappings ON class_rule_exact_mappings (exact_mappings); +CREATE INDEX ix_class_rule_exact_mappings_class_rule_id ON class_rule_exact_mappings (class_rule_id); CREATE TABLE class_rule_close_mappings ( class_rule_id INTEGER, @@ -6466,8 +6472,8 @@ CREATE TABLE class_rule_close_mappings ( PRIMARY KEY (class_rule_id, close_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_close_mappings_class_rule_id ON class_rule_close_mappings (class_rule_id); CREATE INDEX ix_class_rule_close_mappings_close_mappings ON class_rule_close_mappings (close_mappings); +CREATE INDEX ix_class_rule_close_mappings_class_rule_id ON class_rule_close_mappings (class_rule_id); CREATE TABLE class_rule_related_mappings ( class_rule_id INTEGER, @@ -6475,8 +6481,8 @@ CREATE TABLE class_rule_related_mappings ( PRIMARY KEY (class_rule_id, related_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_related_mappings_class_rule_id ON class_rule_related_mappings (class_rule_id); CREATE INDEX ix_class_rule_related_mappings_related_mappings ON class_rule_related_mappings (related_mappings); +CREATE INDEX ix_class_rule_related_mappings_class_rule_id ON class_rule_related_mappings (class_rule_id); CREATE TABLE class_rule_narrow_mappings ( class_rule_id INTEGER, @@ -6493,8 +6499,8 @@ CREATE TABLE class_rule_broad_mappings ( PRIMARY KEY (class_rule_id, broad_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_broad_mappings_broad_mappings ON class_rule_broad_mappings (broad_mappings); CREATE INDEX ix_class_rule_broad_mappings_class_rule_id ON class_rule_broad_mappings (class_rule_id); +CREATE INDEX ix_class_rule_broad_mappings_broad_mappings ON class_rule_broad_mappings (broad_mappings); CREATE TABLE class_rule_contributors ( class_rule_id INTEGER, @@ -6511,8 +6517,8 @@ CREATE TABLE class_rule_category ( PRIMARY KEY (class_rule_id, category), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_category_class_rule_id ON class_rule_category (class_rule_id); CREATE INDEX ix_class_rule_category_category ON class_rule_category (category); +CREATE INDEX ix_class_rule_category_class_rule_id ON class_rule_category (class_rule_id); CREATE TABLE class_rule_keyword ( class_rule_id INTEGER, @@ -6520,8 +6526,8 @@ CREATE TABLE class_rule_keyword ( PRIMARY KEY (class_rule_id, keyword), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_keyword_class_rule_id ON class_rule_keyword (class_rule_id); CREATE INDEX ix_class_rule_keyword_keyword ON class_rule_keyword (keyword); +CREATE INDEX ix_class_rule_keyword_class_rule_id ON class_rule_keyword (class_rule_id); CREATE TABLE array_expression_dimensions ( array_expression_id INTEGER, @@ -6530,8 +6536,8 @@ CREATE TABLE array_expression_dimensions ( FOREIGN KEY(array_expression_id) REFERENCES array_expression (id), FOREIGN KEY(dimensions_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_array_expression_dimensions_array_expression_id ON array_expression_dimensions (array_expression_id); CREATE INDEX ix_array_expression_dimensions_dimensions_id ON array_expression_dimensions (dimensions_id); +CREATE INDEX ix_array_expression_dimensions_array_expression_id ON array_expression_dimensions (array_expression_id); CREATE TABLE array_expression_todos ( array_expression_id INTEGER, @@ -6548,8 +6554,8 @@ CREATE TABLE array_expression_notes ( PRIMARY KEY (array_expression_id, notes), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_notes_array_expression_id ON array_expression_notes (array_expression_id); CREATE INDEX ix_array_expression_notes_notes ON array_expression_notes (notes); +CREATE INDEX ix_array_expression_notes_array_expression_id ON array_expression_notes (array_expression_id); CREATE TABLE array_expression_comments ( array_expression_id INTEGER, @@ -6557,8 +6563,8 @@ CREATE TABLE array_expression_comments ( PRIMARY KEY (array_expression_id, comments), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_comments_array_expression_id ON array_expression_comments (array_expression_id); CREATE INDEX ix_array_expression_comments_comments ON array_expression_comments (comments); +CREATE INDEX ix_array_expression_comments_array_expression_id ON array_expression_comments (array_expression_id); CREATE TABLE array_expression_in_subset ( array_expression_id INTEGER, @@ -6567,8 +6573,8 @@ CREATE TABLE array_expression_in_subset ( FOREIGN KEY(array_expression_id) REFERENCES array_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_array_expression_in_subset_in_subset_name ON array_expression_in_subset (in_subset_name); CREATE INDEX ix_array_expression_in_subset_array_expression_id ON array_expression_in_subset (array_expression_id); +CREATE INDEX ix_array_expression_in_subset_in_subset_name ON array_expression_in_subset (in_subset_name); CREATE TABLE array_expression_see_also ( array_expression_id INTEGER, @@ -6585,8 +6591,8 @@ CREATE TABLE array_expression_aliases ( PRIMARY KEY (array_expression_id, aliases), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_aliases_array_expression_id ON array_expression_aliases (array_expression_id); CREATE INDEX ix_array_expression_aliases_aliases ON array_expression_aliases (aliases); +CREATE INDEX ix_array_expression_aliases_array_expression_id ON array_expression_aliases (array_expression_id); CREATE TABLE array_expression_mappings ( array_expression_id INTEGER, @@ -6612,8 +6618,8 @@ CREATE TABLE array_expression_close_mappings ( PRIMARY KEY (array_expression_id, close_mappings), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_close_mappings_array_expression_id ON array_expression_close_mappings (array_expression_id); CREATE INDEX ix_array_expression_close_mappings_close_mappings ON array_expression_close_mappings (close_mappings); +CREATE INDEX ix_array_expression_close_mappings_array_expression_id ON array_expression_close_mappings (array_expression_id); CREATE TABLE array_expression_related_mappings ( array_expression_id INTEGER, @@ -6639,8 +6645,8 @@ CREATE TABLE array_expression_broad_mappings ( PRIMARY KEY (array_expression_id, broad_mappings), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_broad_mappings_broad_mappings ON array_expression_broad_mappings (broad_mappings); CREATE INDEX ix_array_expression_broad_mappings_array_expression_id ON array_expression_broad_mappings (array_expression_id); +CREATE INDEX ix_array_expression_broad_mappings_broad_mappings ON array_expression_broad_mappings (broad_mappings); CREATE TABLE array_expression_contributors ( array_expression_id INTEGER, @@ -6648,8 +6654,8 @@ CREATE TABLE array_expression_contributors ( PRIMARY KEY (array_expression_id, contributors), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_contributors_array_expression_id ON array_expression_contributors (array_expression_id); CREATE INDEX ix_array_expression_contributors_contributors ON array_expression_contributors (contributors); +CREATE INDEX ix_array_expression_contributors_array_expression_id ON array_expression_contributors (array_expression_id); CREATE TABLE array_expression_category ( array_expression_id INTEGER, @@ -6666,8 +6672,8 @@ CREATE TABLE array_expression_keyword ( PRIMARY KEY (array_expression_id, keyword), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_keyword_array_expression_id ON array_expression_keyword (array_expression_id); CREATE INDEX ix_array_expression_keyword_keyword ON array_expression_keyword (keyword); +CREATE INDEX ix_array_expression_keyword_array_expression_id ON array_expression_keyword (array_expression_id); CREATE TABLE dimension_expression_in_subset ( dimension_expression_id INTEGER, @@ -6676,8 +6682,8 @@ CREATE TABLE dimension_expression_in_subset ( FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_dimension_expression_in_subset_in_subset_name ON dimension_expression_in_subset (in_subset_name); CREATE INDEX ix_dimension_expression_in_subset_dimension_expression_id ON dimension_expression_in_subset (dimension_expression_id); +CREATE INDEX ix_dimension_expression_in_subset_in_subset_name ON dimension_expression_in_subset (in_subset_name); CREATE TABLE pattern_expression_in_subset ( pattern_expression_id INTEGER, @@ -6686,8 +6692,8 @@ CREATE TABLE pattern_expression_in_subset ( FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_pattern_expression_in_subset_in_subset_name ON pattern_expression_in_subset (in_subset_name); CREATE INDEX ix_pattern_expression_in_subset_pattern_expression_id ON pattern_expression_in_subset (pattern_expression_id); +CREATE INDEX ix_pattern_expression_in_subset_in_subset_name ON pattern_expression_in_subset (in_subset_name); CREATE TABLE import_expression_in_subset ( import_expression_id INTEGER, @@ -6733,8 +6739,8 @@ CREATE TABLE unique_key_comments ( PRIMARY KEY (unique_key_unique_key_name, comments), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_comments_unique_key_unique_key_name ON unique_key_comments (unique_key_unique_key_name); CREATE INDEX ix_unique_key_comments_comments ON unique_key_comments (comments); +CREATE INDEX ix_unique_key_comments_unique_key_unique_key_name ON unique_key_comments (unique_key_unique_key_name); CREATE TABLE unique_key_in_subset ( unique_key_unique_key_name TEXT, @@ -6761,8 +6767,8 @@ CREATE TABLE unique_key_aliases ( PRIMARY KEY (unique_key_unique_key_name, aliases), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_aliases_aliases ON unique_key_aliases (aliases); CREATE INDEX ix_unique_key_aliases_unique_key_unique_key_name ON unique_key_aliases (unique_key_unique_key_name); +CREATE INDEX ix_unique_key_aliases_aliases ON unique_key_aliases (aliases); CREATE TABLE unique_key_mappings ( unique_key_unique_key_name TEXT, @@ -6770,8 +6776,8 @@ CREATE TABLE unique_key_mappings ( PRIMARY KEY (unique_key_unique_key_name, mappings), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_mappings_unique_key_unique_key_name ON unique_key_mappings (unique_key_unique_key_name); CREATE INDEX ix_unique_key_mappings_mappings ON unique_key_mappings (mappings); +CREATE INDEX ix_unique_key_mappings_unique_key_unique_key_name ON unique_key_mappings (unique_key_unique_key_name); CREATE TABLE unique_key_exact_mappings ( unique_key_unique_key_name TEXT, @@ -6824,8 +6830,8 @@ CREATE TABLE unique_key_contributors ( PRIMARY KEY (unique_key_unique_key_name, contributors), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_contributors_unique_key_unique_key_name ON unique_key_contributors (unique_key_unique_key_name); CREATE INDEX ix_unique_key_contributors_contributors ON unique_key_contributors (contributors); +CREATE INDEX ix_unique_key_contributors_unique_key_unique_key_name ON unique_key_contributors (unique_key_unique_key_name); CREATE TABLE unique_key_category ( unique_key_unique_key_name TEXT, @@ -6860,8 +6866,8 @@ CREATE TABLE type_mapping_notes ( PRIMARY KEY (type_mapping_framework, notes), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_notes_type_mapping_framework ON type_mapping_notes (type_mapping_framework); CREATE INDEX ix_type_mapping_notes_notes ON type_mapping_notes (notes); +CREATE INDEX ix_type_mapping_notes_type_mapping_framework ON type_mapping_notes (type_mapping_framework); CREATE TABLE type_mapping_comments ( type_mapping_framework TEXT, @@ -6869,8 +6875,8 @@ CREATE TABLE type_mapping_comments ( PRIMARY KEY (type_mapping_framework, comments), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_comments_type_mapping_framework ON type_mapping_comments (type_mapping_framework); CREATE INDEX ix_type_mapping_comments_comments ON type_mapping_comments (comments); +CREATE INDEX ix_type_mapping_comments_type_mapping_framework ON type_mapping_comments (type_mapping_framework); CREATE TABLE type_mapping_in_subset ( type_mapping_framework TEXT, @@ -6888,8 +6894,8 @@ CREATE TABLE type_mapping_see_also ( PRIMARY KEY (type_mapping_framework, see_also), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_see_also_type_mapping_framework ON type_mapping_see_also (type_mapping_framework); CREATE INDEX ix_type_mapping_see_also_see_also ON type_mapping_see_also (see_also); +CREATE INDEX ix_type_mapping_see_also_type_mapping_framework ON type_mapping_see_also (type_mapping_framework); CREATE TABLE type_mapping_aliases ( type_mapping_framework TEXT, @@ -6906,8 +6912,8 @@ CREATE TABLE type_mapping_mappings ( PRIMARY KEY (type_mapping_framework, mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_mappings_type_mapping_framework ON type_mapping_mappings (type_mapping_framework); CREATE INDEX ix_type_mapping_mappings_mappings ON type_mapping_mappings (mappings); +CREATE INDEX ix_type_mapping_mappings_type_mapping_framework ON type_mapping_mappings (type_mapping_framework); CREATE TABLE type_mapping_exact_mappings ( type_mapping_framework TEXT, @@ -6915,8 +6921,8 @@ CREATE TABLE type_mapping_exact_mappings ( PRIMARY KEY (type_mapping_framework, exact_mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_exact_mappings_type_mapping_framework ON type_mapping_exact_mappings (type_mapping_framework); CREATE INDEX ix_type_mapping_exact_mappings_exact_mappings ON type_mapping_exact_mappings (exact_mappings); +CREATE INDEX ix_type_mapping_exact_mappings_type_mapping_framework ON type_mapping_exact_mappings (type_mapping_framework); CREATE TABLE type_mapping_close_mappings ( type_mapping_framework TEXT, @@ -6924,8 +6930,8 @@ CREATE TABLE type_mapping_close_mappings ( PRIMARY KEY (type_mapping_framework, close_mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_close_mappings_type_mapping_framework ON type_mapping_close_mappings (type_mapping_framework); CREATE INDEX ix_type_mapping_close_mappings_close_mappings ON type_mapping_close_mappings (close_mappings); +CREATE INDEX ix_type_mapping_close_mappings_type_mapping_framework ON type_mapping_close_mappings (type_mapping_framework); CREATE TABLE type_mapping_related_mappings ( type_mapping_framework TEXT, @@ -6942,8 +6948,8 @@ CREATE TABLE type_mapping_narrow_mappings ( PRIMARY KEY (type_mapping_framework, narrow_mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_narrow_mappings_type_mapping_framework ON type_mapping_narrow_mappings (type_mapping_framework); CREATE INDEX ix_type_mapping_narrow_mappings_narrow_mappings ON type_mapping_narrow_mappings (narrow_mappings); +CREATE INDEX ix_type_mapping_narrow_mappings_type_mapping_framework ON type_mapping_narrow_mappings (type_mapping_framework); CREATE TABLE type_mapping_broad_mappings ( type_mapping_framework TEXT, @@ -6951,8 +6957,8 @@ CREATE TABLE type_mapping_broad_mappings ( PRIMARY KEY (type_mapping_framework, broad_mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_broad_mappings_broad_mappings ON type_mapping_broad_mappings (broad_mappings); CREATE INDEX ix_type_mapping_broad_mappings_type_mapping_framework ON type_mapping_broad_mappings (type_mapping_framework); +CREATE INDEX ix_type_mapping_broad_mappings_broad_mappings ON type_mapping_broad_mappings (broad_mappings); CREATE TABLE type_mapping_contributors ( type_mapping_framework TEXT, @@ -6969,8 +6975,8 @@ CREATE TABLE type_mapping_category ( PRIMARY KEY (type_mapping_framework, category), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_category_type_mapping_framework ON type_mapping_category (type_mapping_framework); CREATE INDEX ix_type_mapping_category_category ON type_mapping_category (category); +CREATE INDEX ix_type_mapping_category_type_mapping_framework ON type_mapping_category (type_mapping_framework); CREATE TABLE type_mapping_keyword ( type_mapping_framework TEXT, @@ -6978,8 +6984,8 @@ CREATE TABLE type_mapping_keyword ( PRIMARY KEY (type_mapping_framework, keyword), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_keyword_type_mapping_framework ON type_mapping_keyword (type_mapping_framework); CREATE INDEX ix_type_mapping_keyword_keyword ON type_mapping_keyword (keyword); +CREATE INDEX ix_type_mapping_keyword_type_mapping_framework ON type_mapping_keyword (type_mapping_framework); CREATE TABLE enum_binding ( id INTEGER NOT NULL, @@ -7031,8 +7037,8 @@ CREATE TABLE slot_expression_none_of ( FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_expression_none_of_slot_expression_id ON slot_expression_none_of (slot_expression_id); CREATE INDEX ix_slot_expression_none_of_none_of_id ON slot_expression_none_of (none_of_id); +CREATE INDEX ix_slot_expression_none_of_slot_expression_id ON slot_expression_none_of (slot_expression_id); CREATE TABLE slot_expression_exactly_one_of ( slot_expression_id INTEGER, @@ -7041,8 +7047,8 @@ CREATE TABLE slot_expression_exactly_one_of ( FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_expression_exactly_one_of_slot_expression_id ON slot_expression_exactly_one_of (slot_expression_id); CREATE INDEX ix_slot_expression_exactly_one_of_exactly_one_of_id ON slot_expression_exactly_one_of (exactly_one_of_id); +CREATE INDEX ix_slot_expression_exactly_one_of_slot_expression_id ON slot_expression_exactly_one_of (slot_expression_id); CREATE TABLE slot_expression_any_of ( slot_expression_id INTEGER, @@ -7061,8 +7067,8 @@ CREATE TABLE slot_expression_all_of ( FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_expression_all_of_all_of_id ON slot_expression_all_of (all_of_id); CREATE INDEX ix_slot_expression_all_of_slot_expression_id ON slot_expression_all_of (slot_expression_id); +CREATE INDEX ix_slot_expression_all_of_all_of_id ON slot_expression_all_of (all_of_id); CREATE TABLE permissible_value_instantiates ( permissible_value_text TEXT, @@ -7070,8 +7076,8 @@ CREATE TABLE permissible_value_instantiates ( PRIMARY KEY (permissible_value_text, instantiates), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_instantiates_instantiates ON permissible_value_instantiates (instantiates); CREATE INDEX ix_permissible_value_instantiates_permissible_value_text ON permissible_value_instantiates (permissible_value_text); +CREATE INDEX ix_permissible_value_instantiates_instantiates ON permissible_value_instantiates (instantiates); CREATE TABLE permissible_value_implements ( permissible_value_text TEXT, @@ -7079,8 +7085,8 @@ CREATE TABLE permissible_value_implements ( PRIMARY KEY (permissible_value_text, implements), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_implements_permissible_value_text ON permissible_value_implements (permissible_value_text); CREATE INDEX ix_permissible_value_implements_implements ON permissible_value_implements (implements); +CREATE INDEX ix_permissible_value_implements_permissible_value_text ON permissible_value_implements (permissible_value_text); CREATE TABLE permissible_value_mixins ( permissible_value_text TEXT, @@ -7098,8 +7104,8 @@ CREATE TABLE permissible_value_todos ( PRIMARY KEY (permissible_value_text, todos), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_todos_permissible_value_text ON permissible_value_todos (permissible_value_text); CREATE INDEX ix_permissible_value_todos_todos ON permissible_value_todos (todos); +CREATE INDEX ix_permissible_value_todos_permissible_value_text ON permissible_value_todos (permissible_value_text); CREATE TABLE permissible_value_notes ( permissible_value_text TEXT, @@ -7107,8 +7113,8 @@ CREATE TABLE permissible_value_notes ( PRIMARY KEY (permissible_value_text, notes), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_notes_notes ON permissible_value_notes (notes); CREATE INDEX ix_permissible_value_notes_permissible_value_text ON permissible_value_notes (permissible_value_text); +CREATE INDEX ix_permissible_value_notes_notes ON permissible_value_notes (notes); CREATE TABLE permissible_value_comments ( permissible_value_text TEXT, @@ -7116,8 +7122,8 @@ CREATE TABLE permissible_value_comments ( PRIMARY KEY (permissible_value_text, comments), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_comments_permissible_value_text ON permissible_value_comments (permissible_value_text); CREATE INDEX ix_permissible_value_comments_comments ON permissible_value_comments (comments); +CREATE INDEX ix_permissible_value_comments_permissible_value_text ON permissible_value_comments (permissible_value_text); CREATE TABLE permissible_value_in_subset ( permissible_value_text TEXT, @@ -7126,8 +7132,8 @@ CREATE TABLE permissible_value_in_subset ( FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_permissible_value_in_subset_in_subset_name ON permissible_value_in_subset (in_subset_name); CREATE INDEX ix_permissible_value_in_subset_permissible_value_text ON permissible_value_in_subset (permissible_value_text); +CREATE INDEX ix_permissible_value_in_subset_in_subset_name ON permissible_value_in_subset (in_subset_name); CREATE TABLE permissible_value_see_also ( permissible_value_text TEXT, @@ -7144,8 +7150,8 @@ CREATE TABLE permissible_value_aliases ( PRIMARY KEY (permissible_value_text, aliases), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_aliases_permissible_value_text ON permissible_value_aliases (permissible_value_text); CREATE INDEX ix_permissible_value_aliases_aliases ON permissible_value_aliases (aliases); +CREATE INDEX ix_permissible_value_aliases_permissible_value_text ON permissible_value_aliases (permissible_value_text); CREATE TABLE permissible_value_mappings ( permissible_value_text TEXT, @@ -7153,8 +7159,8 @@ CREATE TABLE permissible_value_mappings ( PRIMARY KEY (permissible_value_text, mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_mappings_permissible_value_text ON permissible_value_mappings (permissible_value_text); CREATE INDEX ix_permissible_value_mappings_mappings ON permissible_value_mappings (mappings); +CREATE INDEX ix_permissible_value_mappings_permissible_value_text ON permissible_value_mappings (permissible_value_text); CREATE TABLE permissible_value_exact_mappings ( permissible_value_text TEXT, @@ -7189,8 +7195,8 @@ CREATE TABLE permissible_value_narrow_mappings ( PRIMARY KEY (permissible_value_text, narrow_mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_narrow_mappings_permissible_value_text ON permissible_value_narrow_mappings (permissible_value_text); CREATE INDEX ix_permissible_value_narrow_mappings_narrow_mappings ON permissible_value_narrow_mappings (narrow_mappings); +CREATE INDEX ix_permissible_value_narrow_mappings_permissible_value_text ON permissible_value_narrow_mappings (permissible_value_text); CREATE TABLE permissible_value_broad_mappings ( permissible_value_text TEXT, @@ -7198,8 +7204,8 @@ CREATE TABLE permissible_value_broad_mappings ( PRIMARY KEY (permissible_value_text, broad_mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_broad_mappings_permissible_value_text ON permissible_value_broad_mappings (permissible_value_text); CREATE INDEX ix_permissible_value_broad_mappings_broad_mappings ON permissible_value_broad_mappings (broad_mappings); +CREATE INDEX ix_permissible_value_broad_mappings_permissible_value_text ON permissible_value_broad_mappings (permissible_value_text); CREATE TABLE permissible_value_contributors ( permissible_value_text TEXT, @@ -7303,8 +7309,8 @@ CREATE TABLE enum_binding_todos ( PRIMARY KEY (enum_binding_id, todos), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_todos_todos ON enum_binding_todos (todos); CREATE INDEX ix_enum_binding_todos_enum_binding_id ON enum_binding_todos (enum_binding_id); +CREATE INDEX ix_enum_binding_todos_todos ON enum_binding_todos (todos); CREATE TABLE enum_binding_notes ( enum_binding_id INTEGER, @@ -7358,8 +7364,8 @@ CREATE TABLE enum_binding_mappings ( PRIMARY KEY (enum_binding_id, mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_mappings_enum_binding_id ON enum_binding_mappings (enum_binding_id); CREATE INDEX ix_enum_binding_mappings_mappings ON enum_binding_mappings (mappings); +CREATE INDEX ix_enum_binding_mappings_enum_binding_id ON enum_binding_mappings (enum_binding_id); CREATE TABLE enum_binding_exact_mappings ( enum_binding_id INTEGER, @@ -7376,8 +7382,8 @@ CREATE TABLE enum_binding_close_mappings ( PRIMARY KEY (enum_binding_id, close_mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_close_mappings_enum_binding_id ON enum_binding_close_mappings (enum_binding_id); CREATE INDEX ix_enum_binding_close_mappings_close_mappings ON enum_binding_close_mappings (close_mappings); +CREATE INDEX ix_enum_binding_close_mappings_enum_binding_id ON enum_binding_close_mappings (enum_binding_id); CREATE TABLE enum_binding_related_mappings ( enum_binding_id INTEGER, @@ -7403,8 +7409,8 @@ CREATE TABLE enum_binding_broad_mappings ( PRIMARY KEY (enum_binding_id, broad_mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_broad_mappings_broad_mappings ON enum_binding_broad_mappings (broad_mappings); CREATE INDEX ix_enum_binding_broad_mappings_enum_binding_id ON enum_binding_broad_mappings (enum_binding_id); +CREATE INDEX ix_enum_binding_broad_mappings_broad_mappings ON enum_binding_broad_mappings (broad_mappings); CREATE TABLE enum_binding_contributors ( enum_binding_id INTEGER, @@ -7563,54 +7569,54 @@ CREATE TABLE alt_description ( FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_alt_description_anonymous_expression_id ON alt_description (anonymous_expression_id); -CREATE INDEX ix_alt_description_element_name ON alt_description (element_name); +CREATE INDEX ix_alt_description_import_expression_id ON alt_description (import_expression_id); +CREATE INDEX alt_description_permissible_value_text_source_idx ON alt_description (permissible_value_text, source); +CREATE INDEX alt_description_structured_alias_id_source_idx ON alt_description (structured_alias_id, source); +CREATE INDEX ix_alt_description_class_rule_id ON alt_description (class_rule_id); +CREATE INDEX alt_description_unique_key_unique_key_name_source_idx ON alt_description (unique_key_unique_key_name, source); +CREATE INDEX ix_alt_description_schema_definition_name ON alt_description (schema_definition_name); +CREATE INDEX alt_description_anonymous_expression_id_source_idx ON alt_description (anonymous_expression_id, source); +CREATE INDEX alt_description_import_expression_id_source_idx ON alt_description (import_expression_id, source); +CREATE INDEX ix_alt_description_anonymous_slot_expression_id ON alt_description (anonymous_slot_expression_id); +CREATE INDEX alt_description_type_mapping_framework_source_idx ON alt_description (type_mapping_framework, source); +CREATE INDEX ix_alt_description_enum_binding_id ON alt_description (enum_binding_id); +CREATE INDEX alt_description_path_expression_id_source_idx ON alt_description (path_expression_id, source); +CREATE INDEX ix_alt_description_permissible_value_text ON alt_description (permissible_value_text); +CREATE INDEX alt_description_anonymous_slot_expression_id_source_idx ON alt_description (anonymous_slot_expression_id, source); CREATE INDEX ix_alt_description_array_expression_id ON alt_description (array_expression_id); -CREATE INDEX alt_description_array_expression_id_source_idx ON alt_description (array_expression_id, source); -CREATE INDEX alt_description_enum_definition_name_source_idx ON alt_description (enum_definition_name, source); -CREATE INDEX ix_alt_description_source ON alt_description (source); -CREATE INDEX ix_alt_description_type_mapping_framework ON alt_description (type_mapping_framework); +CREATE INDEX ix_alt_description_type_definition_name ON alt_description (type_definition_name); +CREATE INDEX alt_description_slot_definition_name_source_idx ON alt_description (slot_definition_name, source); +CREATE INDEX ix_alt_description_slot_definition_name ON alt_description (slot_definition_name); +CREATE INDEX ix_alt_description_common_metadata_id ON alt_description (common_metadata_id); +CREATE INDEX alt_description_enum_binding_id_source_idx ON alt_description (enum_binding_id, source); CREATE INDEX alt_description_common_metadata_id_source_idx ON alt_description (common_metadata_id, source); -CREATE INDEX alt_description_anonymous_class_expression_id_source_idx ON alt_description (anonymous_class_expression_id, source); CREATE INDEX ix_alt_description_structured_alias_id ON alt_description (structured_alias_id); -CREATE INDEX ix_alt_description_class_rule_id ON alt_description (class_rule_id); -CREATE INDEX ix_alt_description_common_metadata_id ON alt_description (common_metadata_id); +CREATE INDEX alt_description_anonymous_class_expression_id_source_idx ON alt_description (anonymous_class_expression_id, source); +CREATE INDEX ix_alt_description_source ON alt_description (source); CREATE INDEX ix_alt_description_unique_key_unique_key_name ON alt_description (unique_key_unique_key_name); -CREATE INDEX alt_description_path_expression_id_source_idx ON alt_description (path_expression_id, source); -CREATE INDEX alt_description_permissible_value_text_source_idx ON alt_description (permissible_value_text, source); -CREATE INDEX ix_alt_description_enum_binding_id ON alt_description (enum_binding_id); -CREATE INDEX alt_description_dimension_expression_id_source_idx ON alt_description (dimension_expression_id, source); -CREATE INDEX ix_alt_description_class_definition_name ON alt_description (class_definition_name); -CREATE INDEX alt_description_enum_binding_id_source_idx ON alt_description (enum_binding_id, source); -CREATE INDEX ix_alt_description_permissible_value_text ON alt_description (permissible_value_text); -CREATE INDEX alt_description_anonymous_expression_id_source_idx ON alt_description (anonymous_expression_id, source); +CREATE INDEX ix_alt_description_subset_definition_name ON alt_description (subset_definition_name); CREATE INDEX alt_description_element_name_source_idx ON alt_description (element_name, source); CREATE INDEX alt_description_class_definition_name_source_idx ON alt_description (class_definition_name, source); -CREATE INDEX ix_alt_description_anonymous_class_expression_id ON alt_description (anonymous_class_expression_id); +CREATE INDEX ix_alt_description_dimension_expression_id ON alt_description (dimension_expression_id); CREATE INDEX alt_description_schema_definition_name_source_idx ON alt_description (schema_definition_name, source); -CREATE INDEX alt_description_anonymous_slot_expression_id_source_idx ON alt_description (anonymous_slot_expression_id, source); -CREATE INDEX ix_alt_description_definition_name ON alt_description (definition_name); -CREATE INDEX ix_alt_description_import_expression_id ON alt_description (import_expression_id); -CREATE INDEX alt_description_unique_key_unique_key_name_source_idx ON alt_description (unique_key_unique_key_name, source); -CREATE INDEX ix_alt_description_slot_definition_name ON alt_description (slot_definition_name); +CREATE INDEX alt_description_class_rule_id_source_idx ON alt_description (class_rule_id, source); +CREATE INDEX ix_alt_description_anonymous_class_expression_id ON alt_description (anonymous_class_expression_id); +CREATE INDEX ix_alt_description_description ON alt_description (description); CREATE INDEX alt_description_type_definition_name_source_idx ON alt_description (type_definition_name, source); +CREATE INDEX ix_alt_description_anonymous_expression_id ON alt_description (anonymous_expression_id); +CREATE INDEX alt_description_array_expression_id_source_idx ON alt_description (array_expression_id, source); +CREATE INDEX ix_alt_description_type_mapping_framework ON alt_description (type_mapping_framework); +CREATE INDEX ix_alt_description_definition_name ON alt_description (definition_name); CREATE INDEX alt_description_subset_definition_name_source_idx ON alt_description (subset_definition_name, source); -CREATE INDEX alt_description_structured_alias_id_source_idx ON alt_description (structured_alias_id, source); -CREATE INDEX alt_description_pattern_expression_id_source_idx ON alt_description (pattern_expression_id, source); -CREATE INDEX alt_description_import_expression_id_source_idx ON alt_description (import_expression_id, source); -CREATE INDEX ix_alt_description_subset_definition_name ON alt_description (subset_definition_name); -CREATE INDEX ix_alt_description_description ON alt_description (description); -CREATE INDEX ix_alt_description_anonymous_slot_expression_id ON alt_description (anonymous_slot_expression_id); +CREATE INDEX alt_description_dimension_expression_id_source_idx ON alt_description (dimension_expression_id, source); CREATE INDEX ix_alt_description_pattern_expression_id ON alt_description (pattern_expression_id); -CREATE INDEX alt_description_class_rule_id_source_idx ON alt_description (class_rule_id, source); -CREATE INDEX ix_alt_description_type_definition_name ON alt_description (type_definition_name); CREATE INDEX alt_description_definition_name_source_idx ON alt_description (definition_name, source); +CREATE INDEX alt_description_pattern_expression_id_source_idx ON alt_description (pattern_expression_id, source); +CREATE INDEX ix_alt_description_class_definition_name ON alt_description (class_definition_name); +CREATE INDEX ix_alt_description_element_name ON alt_description (element_name); +CREATE INDEX alt_description_enum_definition_name_source_idx ON alt_description (enum_definition_name, source); CREATE INDEX ix_alt_description_path_expression_id ON alt_description (path_expression_id); -CREATE INDEX alt_description_slot_definition_name_source_idx ON alt_description (slot_definition_name, source); -CREATE INDEX alt_description_type_mapping_framework_source_idx ON alt_description (type_mapping_framework, source); -CREATE INDEX ix_alt_description_dimension_expression_id ON alt_description (dimension_expression_id); CREATE INDEX ix_alt_description_enum_definition_name ON alt_description (enum_definition_name); -CREATE INDEX ix_alt_description_schema_definition_name ON alt_description (schema_definition_name); CREATE TABLE annotation ( tag TEXT NOT NULL, @@ -7690,56 +7696,56 @@ CREATE TABLE annotation ( FOREIGN KEY(annotation_tag) REFERENCES annotation (tag), FOREIGN KEY(value_id) REFERENCES "AnyValue" (id) ); -CREATE INDEX ix_annotation_schema_definition_name ON annotation (schema_definition_name); -CREATE INDEX annotation_schema_definition_name_tag_idx ON annotation (schema_definition_name, tag); -CREATE INDEX annotation_import_expression_id_tag_idx ON annotation (import_expression_id, tag); CREATE INDEX ix_annotation_dimension_expression_id ON annotation (dimension_expression_id); -CREATE INDEX annotation_type_definition_name_tag_idx ON annotation (type_definition_name, tag); +CREATE INDEX annotation_anonymous_slot_expression_id_tag_idx ON annotation (anonymous_slot_expression_id, tag); +CREATE INDEX annotation_annotation_tag_tag_idx ON annotation (annotation_tag, tag); +CREATE INDEX ix_annotation_subset_definition_name ON annotation (subset_definition_name); +CREATE INDEX ix_annotation_anonymous_class_expression_id ON annotation (anonymous_class_expression_id); +CREATE INDEX annotation_slot_definition_name_tag_idx ON annotation (slot_definition_name, tag); CREATE INDEX ix_annotation_anonymous_expression_id ON annotation (anonymous_expression_id); -CREATE INDEX ix_annotation_value_id ON annotation (value_id); -CREATE INDEX annotation_subset_definition_name_tag_idx ON annotation (subset_definition_name, tag); -CREATE INDEX annotation_anonymous_expression_id_tag_idx ON annotation (anonymous_expression_id, tag); CREATE INDEX annotation_annotatable_id_tag_idx ON annotation (annotatable_id, tag); -CREATE INDEX annotation_array_expression_id_tag_idx ON annotation (array_expression_id, tag); -CREATE INDEX ix_annotation_array_expression_id ON annotation (array_expression_id); -CREATE INDEX annotation_definition_name_tag_idx ON annotation (definition_name, tag); -CREATE INDEX ix_annotation_annotation_tag ON annotation (annotation_tag); -CREATE INDEX ix_annotation_annotatable_id ON annotation (annotatable_id); -CREATE INDEX annotation_enum_definition_name_tag_idx ON annotation (enum_definition_name, tag); CREATE INDEX annotation_anonymous_class_expression_id_tag_idx ON annotation (anonymous_class_expression_id, tag); -CREATE INDEX ix_annotation_class_rule_id ON annotation (class_rule_id); -CREATE INDEX annotation_permissible_value_text_tag_idx ON annotation (permissible_value_text, tag); -CREATE INDEX ix_annotation_element_name ON annotation (element_name); +CREATE INDEX ix_annotation_definition_name ON annotation (definition_name); CREATE INDEX ix_annotation_type_mapping_framework ON annotation (type_mapping_framework); -CREATE INDEX annotation_slot_definition_name_tag_idx ON annotation (slot_definition_name, tag); -CREATE INDEX ix_annotation_enum_binding_id ON annotation (enum_binding_id); +CREATE INDEX annotation_element_name_tag_idx ON annotation (element_name, tag); +CREATE INDEX ix_annotation_pattern_expression_id ON annotation (pattern_expression_id); +CREATE INDEX annotation_class_definition_name_tag_idx ON annotation (class_definition_name, tag); +CREATE INDEX ix_annotation_schema_definition_name ON annotation (schema_definition_name); +CREATE INDEX annotation_schema_definition_name_tag_idx ON annotation (schema_definition_name, tag); CREATE INDEX ix_annotation_class_definition_name ON annotation (class_definition_name); +CREATE INDEX annotation_class_rule_id_tag_idx ON annotation (class_rule_id, tag); +CREATE INDEX ix_annotation_tag ON annotation (tag); +CREATE INDEX annotation_type_definition_name_tag_idx ON annotation (type_definition_name, tag); +CREATE INDEX ix_annotation_path_expression_id ON annotation (path_expression_id); CREATE INDEX annotation_path_expression_id_tag_idx ON annotation (path_expression_id, tag); -CREATE INDEX annotation_annotation_tag_tag_idx ON annotation (annotation_tag, tag); -CREATE INDEX ix_annotation_unique_key_unique_key_name ON annotation (unique_key_unique_key_name); -CREATE INDEX annotation_dimension_expression_id_tag_idx ON annotation (dimension_expression_id, tag); +CREATE INDEX annotation_array_expression_id_tag_idx ON annotation (array_expression_id, tag); +CREATE INDEX ix_annotation_annotatable_id ON annotation (annotatable_id); CREATE INDEX ix_annotation_enum_definition_name ON annotation (enum_definition_name); -CREATE INDEX ix_annotation_anonymous_class_expression_id ON annotation (anonymous_class_expression_id); -CREATE INDEX annotation_enum_binding_id_tag_idx ON annotation (enum_binding_id, tag); -CREATE INDEX annotation_class_definition_name_tag_idx ON annotation (class_definition_name, tag); -CREATE INDEX annotation_unique_key_unique_key_name_tag_idx ON annotation (unique_key_unique_key_name, tag); -CREATE INDEX ix_annotation_definition_name ON annotation (definition_name); -CREATE INDEX ix_annotation_permissible_value_text ON annotation (permissible_value_text); -CREATE INDEX ix_annotation_tag ON annotation (tag); -CREATE INDEX ix_annotation_slot_definition_name ON annotation (slot_definition_name); -CREATE INDEX annotation_element_name_tag_idx ON annotation (element_name, tag); -CREATE INDEX annotation_anonymous_slot_expression_id_tag_idx ON annotation (anonymous_slot_expression_id, tag); -CREATE INDEX ix_annotation_structured_alias_id ON annotation (structured_alias_id); -CREATE INDEX annotation_pattern_expression_id_tag_idx ON annotation (pattern_expression_id, tag); -CREATE INDEX ix_annotation_subset_definition_name ON annotation (subset_definition_name); +CREATE INDEX annotation_subset_definition_name_tag_idx ON annotation (subset_definition_name, tag); CREATE INDEX ix_annotation_import_expression_id ON annotation (import_expression_id); -CREATE INDEX ix_annotation_type_definition_name ON annotation (type_definition_name); +CREATE INDEX annotation_dimension_expression_id_tag_idx ON annotation (dimension_expression_id, tag); +CREATE INDEX ix_annotation_element_name ON annotation (element_name); +CREATE INDEX annotation_definition_name_tag_idx ON annotation (definition_name, tag); +CREATE INDEX ix_annotation_class_rule_id ON annotation (class_rule_id); +CREATE INDEX annotation_pattern_expression_id_tag_idx ON annotation (pattern_expression_id, tag); +CREATE INDEX annotation_enum_definition_name_tag_idx ON annotation (enum_definition_name, tag); CREATE INDEX ix_annotation_anonymous_slot_expression_id ON annotation (anonymous_slot_expression_id); +CREATE INDEX annotation_import_expression_id_tag_idx ON annotation (import_expression_id, tag); +CREATE INDEX ix_annotation_annotation_tag ON annotation (annotation_tag); +CREATE INDEX ix_annotation_enum_binding_id ON annotation (enum_binding_id); +CREATE INDEX annotation_enum_binding_id_tag_idx ON annotation (enum_binding_id, tag); +CREATE INDEX ix_annotation_permissible_value_text ON annotation (permissible_value_text); +CREATE INDEX annotation_permissible_value_text_tag_idx ON annotation (permissible_value_text, tag); CREATE INDEX annotation_structured_alias_id_tag_idx ON annotation (structured_alias_id, tag); -CREATE INDEX annotation_class_rule_id_tag_idx ON annotation (class_rule_id, tag); +CREATE INDEX ix_annotation_array_expression_id ON annotation (array_expression_id); +CREATE INDEX annotation_unique_key_unique_key_name_tag_idx ON annotation (unique_key_unique_key_name, tag); +CREATE INDEX ix_annotation_type_definition_name ON annotation (type_definition_name); +CREATE INDEX annotation_anonymous_expression_id_tag_idx ON annotation (anonymous_expression_id, tag); +CREATE INDEX ix_annotation_slot_definition_name ON annotation (slot_definition_name); CREATE INDEX annotation_type_mapping_framework_tag_idx ON annotation (type_mapping_framework, tag); -CREATE INDEX ix_annotation_pattern_expression_id ON annotation (pattern_expression_id); -CREATE INDEX ix_annotation_path_expression_id ON annotation (path_expression_id); +CREATE INDEX ix_annotation_value_id ON annotation (value_id); +CREATE INDEX ix_annotation_structured_alias_id ON annotation (structured_alias_id); +CREATE INDEX ix_annotation_unique_key_unique_key_name ON annotation (unique_key_unique_key_name); CREATE TABLE structured_alias_category ( structured_alias_id INTEGER, @@ -7747,8 +7753,8 @@ CREATE TABLE structured_alias_category ( PRIMARY KEY (structured_alias_id, category), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_category_category ON structured_alias_category (category); CREATE INDEX ix_structured_alias_category_structured_alias_id ON structured_alias_category (structured_alias_id); +CREATE INDEX ix_structured_alias_category_category ON structured_alias_category (category); CREATE TABLE structured_alias_contexts ( structured_alias_id INTEGER, @@ -7765,8 +7771,8 @@ CREATE TABLE structured_alias_todos ( PRIMARY KEY (structured_alias_id, todos), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_todos_structured_alias_id ON structured_alias_todos (structured_alias_id); CREATE INDEX ix_structured_alias_todos_todos ON structured_alias_todos (todos); +CREATE INDEX ix_structured_alias_todos_structured_alias_id ON structured_alias_todos (structured_alias_id); CREATE TABLE structured_alias_notes ( structured_alias_id INTEGER, @@ -7783,8 +7789,8 @@ CREATE TABLE structured_alias_comments ( PRIMARY KEY (structured_alias_id, comments), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_comments_structured_alias_id ON structured_alias_comments (structured_alias_id); CREATE INDEX ix_structured_alias_comments_comments ON structured_alias_comments (comments); +CREATE INDEX ix_structured_alias_comments_structured_alias_id ON structured_alias_comments (structured_alias_id); CREATE TABLE structured_alias_in_subset ( structured_alias_id INTEGER, @@ -7802,8 +7808,8 @@ CREATE TABLE structured_alias_see_also ( PRIMARY KEY (structured_alias_id, see_also), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_see_also_structured_alias_id ON structured_alias_see_also (structured_alias_id); CREATE INDEX ix_structured_alias_see_also_see_also ON structured_alias_see_also (see_also); +CREATE INDEX ix_structured_alias_see_also_structured_alias_id ON structured_alias_see_also (structured_alias_id); CREATE TABLE structured_alias_aliases ( structured_alias_id INTEGER, @@ -7811,8 +7817,8 @@ CREATE TABLE structured_alias_aliases ( PRIMARY KEY (structured_alias_id, aliases), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_aliases_structured_alias_id ON structured_alias_aliases (structured_alias_id); CREATE INDEX ix_structured_alias_aliases_aliases ON structured_alias_aliases (aliases); +CREATE INDEX ix_structured_alias_aliases_structured_alias_id ON structured_alias_aliases (structured_alias_id); CREATE TABLE structured_alias_mappings ( structured_alias_id INTEGER, @@ -7820,8 +7826,8 @@ CREATE TABLE structured_alias_mappings ( PRIMARY KEY (structured_alias_id, mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_mappings_structured_alias_id ON structured_alias_mappings (structured_alias_id); CREATE INDEX ix_structured_alias_mappings_mappings ON structured_alias_mappings (mappings); +CREATE INDEX ix_structured_alias_mappings_structured_alias_id ON structured_alias_mappings (structured_alias_id); CREATE TABLE structured_alias_exact_mappings ( structured_alias_id INTEGER, @@ -7829,8 +7835,8 @@ CREATE TABLE structured_alias_exact_mappings ( PRIMARY KEY (structured_alias_id, exact_mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_exact_mappings_exact_mappings ON structured_alias_exact_mappings (exact_mappings); CREATE INDEX ix_structured_alias_exact_mappings_structured_alias_id ON structured_alias_exact_mappings (structured_alias_id); +CREATE INDEX ix_structured_alias_exact_mappings_exact_mappings ON structured_alias_exact_mappings (exact_mappings); CREATE TABLE structured_alias_close_mappings ( structured_alias_id INTEGER, @@ -7856,8 +7862,8 @@ CREATE TABLE structured_alias_narrow_mappings ( PRIMARY KEY (structured_alias_id, narrow_mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_narrow_mappings_structured_alias_id ON structured_alias_narrow_mappings (structured_alias_id); CREATE INDEX ix_structured_alias_narrow_mappings_narrow_mappings ON structured_alias_narrow_mappings (narrow_mappings); +CREATE INDEX ix_structured_alias_narrow_mappings_structured_alias_id ON structured_alias_narrow_mappings (structured_alias_id); CREATE TABLE structured_alias_broad_mappings ( structured_alias_id INTEGER, @@ -7967,55 +7973,56 @@ CREATE TABLE extension ( FOREIGN KEY(annotation_tag) REFERENCES annotation (tag), FOREIGN KEY(value_id) REFERENCES "AnyValue" (id) ); -CREATE INDEX extension_slot_definition_name_tag_idx ON extension (slot_definition_name, tag); -CREATE INDEX ix_extension_pattern_expression_id ON extension (pattern_expression_id); -CREATE INDEX ix_extension_structured_alias_id ON extension (structured_alias_id); -CREATE INDEX extension_definition_name_tag_idx ON extension (definition_name, tag); -CREATE INDEX ix_extension_subset_definition_name ON extension (subset_definition_name); CREATE INDEX ix_extension_anonymous_slot_expression_id ON extension (anonymous_slot_expression_id); -CREATE INDEX extension_extension_tag_tag_idx ON extension (extension_tag, tag); -CREATE INDEX extension_array_expression_id_tag_idx ON extension (array_expression_id, tag); -CREATE INDEX ix_extension_type_definition_name ON extension (type_definition_name); -CREATE INDEX extension_element_name_tag_idx ON extension (element_name, tag); +CREATE INDEX extension_permissible_value_text_tag_idx ON extension (permissible_value_text, tag); +CREATE INDEX ix_extension_extensible_id ON extension (extensible_id); +CREATE INDEX ix_extension_enum_binding_id ON extension (enum_binding_id); +CREATE INDEX extension_structured_alias_id_tag_idx ON extension (structured_alias_id, tag); +CREATE INDEX ix_extension_permissible_value_text ON extension (permissible_value_text); +CREATE INDEX extension_unique_key_unique_key_name_tag_idx ON extension (unique_key_unique_key_name, tag); CREATE INDEX extension_anonymous_expression_id_tag_idx ON extension (anonymous_expression_id, tag); +CREATE INDEX ix_extension_array_expression_id ON extension (array_expression_id); +CREATE INDEX extension_type_mapping_framework_tag_idx ON extension (type_mapping_framework, tag); +CREATE INDEX ix_extension_type_definition_name ON extension (type_definition_name); +CREATE INDEX extension_path_expression_id_tag_idx ON extension (path_expression_id, tag); +CREATE INDEX ix_extension_slot_definition_name ON extension (slot_definition_name); +CREATE INDEX extension_extension_tag_tag_idx ON extension (extension_tag, tag); +CREATE INDEX ix_extension_annotation_tag ON extension (annotation_tag); +CREATE INDEX ix_extension_structured_alias_id ON extension (structured_alias_id); +CREATE INDEX extension_anonymous_slot_expression_id_tag_idx ON extension (anonymous_slot_expression_id, tag); +CREATE INDEX ix_extension_unique_key_unique_key_name ON extension (unique_key_unique_key_name); +CREATE INDEX extension_extensible_id_tag_idx ON extension (extensible_id, tag); +CREATE INDEX extension_slot_definition_name_tag_idx ON extension (slot_definition_name, tag); CREATE INDEX ix_extension_dimension_expression_id ON extension (dimension_expression_id); -CREATE INDEX ix_extension_path_expression_id ON extension (path_expression_id); -CREATE INDEX ix_extension_value_id ON extension (value_id); -CREATE INDEX extension_permissible_value_text_tag_idx ON extension (permissible_value_text, tag); +CREATE INDEX extension_annotation_tag_tag_idx ON extension (annotation_tag, tag); +CREATE INDEX ix_extension_subset_definition_name ON extension (subset_definition_name); CREATE INDEX extension_anonymous_class_expression_id_tag_idx ON extension (anonymous_class_expression_id, tag); -CREATE INDEX extension_import_expression_id_tag_idx ON extension (import_expression_id, tag); -CREATE INDEX ix_extension_schema_definition_name ON extension (schema_definition_name); -CREATE INDEX ix_extension_annotation_tag ON extension (annotation_tag); -CREATE INDEX extension_enum_definition_name_tag_idx ON extension (enum_definition_name, tag); +CREATE INDEX ix_extension_anonymous_class_expression_id ON extension (anonymous_class_expression_id); +CREATE INDEX ix_extension_value_id ON extension (value_id); +CREATE INDEX extension_element_name_tag_idx ON extension (element_name, tag); CREATE INDEX ix_extension_anonymous_expression_id ON extension (anonymous_expression_id); -CREATE INDEX ix_extension_array_expression_id ON extension (array_expression_id); -CREATE INDEX ix_extension_extensible_id ON extension (extensible_id); -CREATE INDEX extension_extensible_id_tag_idx ON extension (extensible_id, tag); -CREATE INDEX extension_dimension_expression_id_tag_idx ON extension (dimension_expression_id, tag); -CREATE INDEX ix_extension_extension_tag ON extension (extension_tag); -CREATE INDEX extension_path_expression_id_tag_idx ON extension (path_expression_id, tag); -CREATE INDEX ix_extension_element_name ON extension (element_name); -CREATE INDEX ix_extension_class_rule_id ON extension (class_rule_id); -CREATE INDEX extension_unique_key_unique_key_name_tag_idx ON extension (unique_key_unique_key_name, tag); +CREATE INDEX extension_class_definition_name_tag_idx ON extension (class_definition_name, tag); +CREATE INDEX ix_extension_definition_name ON extension (definition_name); CREATE INDEX ix_extension_type_mapping_framework ON extension (type_mapping_framework); CREATE INDEX extension_schema_definition_name_tag_idx ON extension (schema_definition_name, tag); -CREATE INDEX extension_class_definition_name_tag_idx ON extension (class_definition_name, tag); -CREATE INDEX extension_enum_binding_id_tag_idx ON extension (enum_binding_id, tag); -CREATE INDEX ix_extension_class_definition_name ON extension (class_definition_name); -CREATE INDEX extension_annotation_tag_tag_idx ON extension (annotation_tag, tag); -CREATE INDEX ix_extension_enum_binding_id ON extension (enum_binding_id); -CREATE INDEX ix_extension_unique_key_unique_key_name ON extension (unique_key_unique_key_name); -CREATE INDEX extension_pattern_expression_id_tag_idx ON extension (pattern_expression_id, tag); -CREATE INDEX extension_anonymous_slot_expression_id_tag_idx ON extension (anonymous_slot_expression_id, tag); -CREATE INDEX ix_extension_enum_definition_name ON extension (enum_definition_name); -CREATE INDEX ix_extension_anonymous_class_expression_id ON extension (anonymous_class_expression_id); -CREATE INDEX ix_extension_permissible_value_text ON extension (permissible_value_text); -CREATE INDEX extension_type_definition_name_tag_idx ON extension (type_definition_name, tag); CREATE INDEX extension_class_rule_id_tag_idx ON extension (class_rule_id, tag); -CREATE INDEX extension_type_mapping_framework_tag_idx ON extension (type_mapping_framework, tag); +CREATE INDEX ix_extension_pattern_expression_id ON extension (pattern_expression_id); +CREATE INDEX ix_extension_schema_definition_name ON extension (schema_definition_name); +CREATE INDEX extension_type_definition_name_tag_idx ON extension (type_definition_name, tag); +CREATE INDEX extension_array_expression_id_tag_idx ON extension (array_expression_id, tag); +CREATE INDEX ix_extension_class_definition_name ON extension (class_definition_name); CREATE INDEX ix_extension_tag ON extension (tag); CREATE INDEX extension_subset_definition_name_tag_idx ON extension (subset_definition_name, tag); -CREATE INDEX extension_structured_alias_id_tag_idx ON extension (structured_alias_id, tag); +CREATE INDEX ix_extension_path_expression_id ON extension (path_expression_id); +CREATE INDEX extension_dimension_expression_id_tag_idx ON extension (dimension_expression_id, tag); +CREATE INDEX ix_extension_extension_tag ON extension (extension_tag); +CREATE INDEX ix_extension_enum_definition_name ON extension (enum_definition_name); +CREATE INDEX extension_definition_name_tag_idx ON extension (definition_name, tag); +CREATE INDEX extension_pattern_expression_id_tag_idx ON extension (pattern_expression_id, tag); CREATE INDEX ix_extension_import_expression_id ON extension (import_expression_id); -CREATE INDEX ix_extension_slot_definition_name ON extension (slot_definition_name); -CREATE INDEX ix_extension_definition_name ON extension (definition_name); +CREATE INDEX ix_extension_element_name ON extension (element_name); +CREATE INDEX extension_enum_definition_name_tag_idx ON extension (enum_definition_name, tag); +CREATE INDEX extension_import_expression_id_tag_idx ON extension (import_expression_id, tag); +CREATE INDEX ix_extension_class_rule_id ON extension (class_rule_id); +CREATE INDEX extension_enum_binding_id_tag_idx ON extension (enum_binding_id, tag); + diff --git a/linkml_model/sqlschema/meta.sql b/linkml_model/sqlschema/meta.sql index a4c4350b3..701c6d6dc 100644 --- a/linkml_model/sqlschema/meta.sql +++ b/linkml_model/sqlschema/meta.sql @@ -172,6 +172,7 @@ -- * Slot: code_set_tag Description: the version tag of the enumeration code set -- * Slot: code_set_version Description: the version identifier of the enumeration code set -- * Slot: pv_formula Description: Defines the specific formula to be used to generate the permissible values. +-- * Slot: is_open Description: Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values. -- * Slot: reachable_from_id Description: Specifies a query for obtaining a list of permissible values based on graph reachability -- * Slot: matches_id Description: Specifies a match query that is used to calculate the list of permissible values -- # Class: anonymous_enum_expression Description: An enum_expression that is not named @@ -180,6 +181,7 @@ -- * Slot: code_set_tag Description: the version tag of the enumeration code set -- * Slot: code_set_version Description: the version identifier of the enumeration code set -- * Slot: pv_formula Description: Defines the specific formula to be used to generate the permissible values. +-- * Slot: is_open Description: Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values. -- * Slot: reachable_from_id Description: Specifies a query for obtaining a list of permissible values based on graph reachability -- * Slot: matches_id Description: Specifies a match query that is used to calculate the list of permissible values -- # Class: enum_definition Description: an element whose instances must be drawn from a specified set of permissible values @@ -188,6 +190,7 @@ -- * Slot: code_set_tag Description: the version tag of the enumeration code set -- * Slot: code_set_version Description: the version identifier of the enumeration code set -- * Slot: pv_formula Description: Defines the specific formula to be used to generate the permissible values. +-- * Slot: is_open Description: Whether the enumeration is open, meaning that values outside of the set of permissible values are allowed. If true, the enumeration is open and data values that are not in the set of permissible values are permitted (though they SHOULD be drawn from the permissible values if available). If false (runtime default), the enumeration is closed and data values MUST be drawn from the set of permissible values. -- * Slot: is_a Description: A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded -- * Slot: abstract Description: Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes. -- * Slot: mixin Description: Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins. @@ -408,8 +411,8 @@ -- * Slot: list_elements_unique Description: If True, then there must be no duplicates in the elements of a multivalued slot -- * Slot: list_elements_ordered Description: If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed -- * Slot: shared Description: If True, then the relationship between the slot domain and range is many to one or many to many --- * Slot: key Description: True means that the key slot(s) uniquely identify the elements within a single container --- * Slot: identifier Description: True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container +-- * Slot: key Description: True means that the slot is the "singular unique key" (also known more simply as the "key slot") of its class. Such a slot uniquely identifies instances of the class within a single container, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the key slot within the container. +-- * Slot: identifier Description: True means that the slot is the identifier slot of its class. Such a slot uniquely identifies instances of the class throughout an entire document, meaning there cannot be two (or more) instances of the class (or instances of any of its descendants) with the same value for the identifier slot anywhere in the document. -- * Slot: designates_type Description: True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition -- * Slot: alias Description: the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name. -- * Slot: owner Description: the "owner" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot @@ -843,10 +846,10 @@ -- * Slot: annotatable_id Description: Autocreated FK slot -- * Slot: annotation_tag Description: Autocreated FK slot -- * Slot: value_id Description: the actual annotation --- # Class: UnitOfMeasure Description: A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension). +-- # Class: UnitOfMeasure Description: A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension). -- * Slot: id -- * Slot: symbol Description: name of the unit encoded as a symbol --- * Slot: abbreviation Description: An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt) +-- * Slot: abbreviation Description: An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt) -- * Slot: descriptive_name Description: the spelled out name of the unit, for example, meter -- * Slot: ucum_code Description: associates a QUDT unit with its UCUM code (case-sensitive). -- * Slot: derivation Description: Expression for deriving this unit from other units @@ -2889,6 +2892,7 @@ CREATE TABLE enum_expression ( code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_open BOOLEAN, reachable_from_id INTEGER, matches_id INTEGER, PRIMARY KEY (id), @@ -2903,6 +2907,7 @@ CREATE TABLE anonymous_enum_expression ( code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_open BOOLEAN, reachable_from_id INTEGER, matches_id INTEGER, PRIMARY KEY (id), @@ -2917,6 +2922,7 @@ CREATE TABLE enum_definition ( code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_open BOOLEAN, is_a TEXT, abstract BOOLEAN, mixin BOOLEAN, @@ -3019,12 +3025,12 @@ CREATE TABLE setting ( FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX setting_schema_definition_name_setting_key_idx ON setting (schema_definition_name, setting_key); -CREATE INDEX ix_setting_setting_value ON setting (setting_value); CREATE INDEX ix_setting_setting_key ON setting (setting_key); -CREATE INDEX setting_import_expression_id_setting_key_idx ON setting (import_expression_id, setting_key); CREATE INDEX ix_setting_import_expression_id ON setting (import_expression_id); CREATE INDEX ix_setting_schema_definition_name ON setting (schema_definition_name); +CREATE INDEX ix_setting_setting_value ON setting (setting_value); +CREATE INDEX setting_schema_definition_name_setting_key_idx ON setting (schema_definition_name, setting_key); +CREATE INDEX setting_import_expression_id_setting_key_idx ON setting (import_expression_id, setting_key); CREATE TABLE prefix ( prefix_prefix TEXT NOT NULL, @@ -3034,10 +3040,10 @@ CREATE TABLE prefix ( UNIQUE (schema_definition_name, prefix_prefix), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_prefix_prefix_prefix ON prefix (prefix_prefix); -CREATE INDEX ix_prefix_prefix_reference ON prefix (prefix_reference); CREATE INDEX ix_prefix_schema_definition_name ON prefix (schema_definition_name); +CREATE INDEX ix_prefix_prefix_reference ON prefix (prefix_reference); CREATE INDEX prefix_schema_definition_name_prefix_prefix_idx ON prefix (schema_definition_name, prefix_prefix); +CREATE INDEX ix_prefix_prefix_prefix ON prefix (prefix_prefix); CREATE TABLE unique_key ( unique_key_name TEXT NOT NULL, @@ -3062,25 +3068,25 @@ CREATE TABLE unique_key ( UNIQUE (class_definition_name, unique_key_name), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_unique_key_unique_key_name ON unique_key (unique_key_name); -CREATE INDEX unique_key_class_definition_name_unique_key_name_idx ON unique_key (class_definition_name, unique_key_name); -CREATE INDEX ix_unique_key_class_definition_name ON unique_key (class_definition_name); -CREATE INDEX ix_unique_key_status ON unique_key (status); -CREATE INDEX ix_unique_key_deprecated_element_has_exact_replacement ON unique_key (deprecated_element_has_exact_replacement); -CREATE INDEX ix_unique_key_created_by ON unique_key (created_by); -CREATE INDEX ix_unique_key_last_updated_on ON unique_key (last_updated_on); CREATE INDEX ix_unique_key_from_schema ON unique_key (from_schema); CREATE INDEX ix_unique_key_source ON unique_key (source); -CREATE INDEX ix_unique_key_title ON unique_key (title); -CREATE INDEX ix_unique_key_deprecated ON unique_key (deprecated); -CREATE INDEX ix_unique_key_consider_nulls_inequal ON unique_key (consider_nulls_inequal); -CREATE INDEX ix_unique_key_in_language ON unique_key (in_language); +CREATE INDEX ix_unique_key_description ON unique_key (description); CREATE INDEX ix_unique_key_modified_by ON unique_key (modified_by); +CREATE INDEX ix_unique_key_unique_key_name ON unique_key (unique_key_name); +CREATE INDEX ix_unique_key_in_language ON unique_key (in_language); +CREATE INDEX ix_unique_key_status ON unique_key (status); +CREATE INDEX ix_unique_key_consider_nulls_inequal ON unique_key (consider_nulls_inequal); +CREATE INDEX ix_unique_key_deprecated_element_has_exact_replacement ON unique_key (deprecated_element_has_exact_replacement); CREATE INDEX ix_unique_key_rank ON unique_key (rank); +CREATE INDEX ix_unique_key_title ON unique_key (title); CREATE INDEX ix_unique_key_deprecated_element_has_possible_replacement ON unique_key (deprecated_element_has_possible_replacement); +CREATE INDEX ix_unique_key_class_definition_name ON unique_key (class_definition_name); +CREATE INDEX ix_unique_key_deprecated ON unique_key (deprecated); +CREATE INDEX ix_unique_key_created_by ON unique_key (created_by); +CREATE INDEX unique_key_class_definition_name_unique_key_name_idx ON unique_key (class_definition_name, unique_key_name); CREATE INDEX ix_unique_key_created_on ON unique_key (created_on); CREATE INDEX ix_unique_key_imported_from ON unique_key (imported_from); -CREATE INDEX ix_unique_key_description ON unique_key (description); +CREATE INDEX ix_unique_key_last_updated_on ON unique_key (last_updated_on); CREATE TABLE type_mapping ( framework TEXT NOT NULL, @@ -3104,24 +3110,24 @@ CREATE TABLE type_mapping ( PRIMARY KEY (framework, type, string_serialization, description, title, deprecated, from_schema, imported_from, source, in_language, deprecated_element_has_exact_replacement, deprecated_element_has_possible_replacement, created_by, created_on, last_updated_on, modified_by, status, rank), FOREIGN KEY(type) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_mapping_description ON type_mapping (description); -CREATE INDEX ix_type_mapping_title ON type_mapping (title); -CREATE INDEX ix_type_mapping_string_serialization ON type_mapping (string_serialization); +CREATE INDEX ix_type_mapping_last_updated_on ON type_mapping (last_updated_on); +CREATE INDEX ix_type_mapping_deprecated ON type_mapping (deprecated); CREATE INDEX ix_type_mapping_source ON type_mapping (source); -CREATE INDEX ix_type_mapping_in_language ON type_mapping (in_language); -CREATE INDEX ix_type_mapping_deprecated_element_has_exact_replacement ON type_mapping (deprecated_element_has_exact_replacement); CREATE INDEX ix_type_mapping_deprecated_element_has_possible_replacement ON type_mapping (deprecated_element_has_possible_replacement); -CREATE INDEX ix_type_mapping_framework ON type_mapping (framework); -CREATE INDEX ix_type_mapping_created_by ON type_mapping (created_by); +CREATE INDEX ix_type_mapping_status ON type_mapping (status); +CREATE INDEX ix_type_mapping_description ON type_mapping (description); +CREATE INDEX ix_type_mapping_type ON type_mapping (type); +CREATE INDEX ix_type_mapping_deprecated_element_has_exact_replacement ON type_mapping (deprecated_element_has_exact_replacement); +CREATE INDEX ix_type_mapping_string_serialization ON type_mapping (string_serialization); CREATE INDEX ix_type_mapping_created_on ON type_mapping (created_on); -CREATE INDEX ix_type_mapping_last_updated_on ON type_mapping (last_updated_on); -CREATE INDEX ix_type_mapping_modified_by ON type_mapping (modified_by); -CREATE INDEX ix_type_mapping_from_schema ON type_mapping (from_schema); CREATE INDEX ix_type_mapping_imported_from ON type_mapping (imported_from); -CREATE INDEX ix_type_mapping_status ON type_mapping (status); +CREATE INDEX ix_type_mapping_modified_by ON type_mapping (modified_by); CREATE INDEX ix_type_mapping_rank ON type_mapping (rank); -CREATE INDEX ix_type_mapping_type ON type_mapping (type); -CREATE INDEX ix_type_mapping_deprecated ON type_mapping (deprecated); +CREATE INDEX ix_type_mapping_framework ON type_mapping (framework); +CREATE INDEX ix_type_mapping_in_language ON type_mapping (in_language); +CREATE INDEX ix_type_mapping_from_schema ON type_mapping (from_schema); +CREATE INDEX ix_type_mapping_created_by ON type_mapping (created_by); +CREATE INDEX ix_type_mapping_title ON type_mapping (title); CREATE TABLE common_metadata_todos ( common_metadata_id INTEGER, @@ -3129,8 +3135,8 @@ CREATE TABLE common_metadata_todos ( PRIMARY KEY (common_metadata_id, todos), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_todos_common_metadata_id ON common_metadata_todos (common_metadata_id); CREATE INDEX ix_common_metadata_todos_todos ON common_metadata_todos (todos); +CREATE INDEX ix_common_metadata_todos_common_metadata_id ON common_metadata_todos (common_metadata_id); CREATE TABLE common_metadata_notes ( common_metadata_id INTEGER, @@ -3147,8 +3153,8 @@ CREATE TABLE common_metadata_comments ( PRIMARY KEY (common_metadata_id, comments), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_comments_comments ON common_metadata_comments (comments); CREATE INDEX ix_common_metadata_comments_common_metadata_id ON common_metadata_comments (common_metadata_id); +CREATE INDEX ix_common_metadata_comments_comments ON common_metadata_comments (comments); CREATE TABLE common_metadata_see_also ( common_metadata_id INTEGER, @@ -3165,8 +3171,8 @@ CREATE TABLE common_metadata_aliases ( PRIMARY KEY (common_metadata_id, aliases), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_aliases_common_metadata_id ON common_metadata_aliases (common_metadata_id); CREATE INDEX ix_common_metadata_aliases_aliases ON common_metadata_aliases (aliases); +CREATE INDEX ix_common_metadata_aliases_common_metadata_id ON common_metadata_aliases (common_metadata_id); CREATE TABLE common_metadata_mappings ( common_metadata_id INTEGER, @@ -3192,8 +3198,8 @@ CREATE TABLE common_metadata_close_mappings ( PRIMARY KEY (common_metadata_id, close_mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_close_mappings_common_metadata_id ON common_metadata_close_mappings (common_metadata_id); CREATE INDEX ix_common_metadata_close_mappings_close_mappings ON common_metadata_close_mappings (close_mappings); +CREATE INDEX ix_common_metadata_close_mappings_common_metadata_id ON common_metadata_close_mappings (common_metadata_id); CREATE TABLE common_metadata_related_mappings ( common_metadata_id INTEGER, @@ -3201,8 +3207,8 @@ CREATE TABLE common_metadata_related_mappings ( PRIMARY KEY (common_metadata_id, related_mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_related_mappings_common_metadata_id ON common_metadata_related_mappings (common_metadata_id); CREATE INDEX ix_common_metadata_related_mappings_related_mappings ON common_metadata_related_mappings (related_mappings); +CREATE INDEX ix_common_metadata_related_mappings_common_metadata_id ON common_metadata_related_mappings (common_metadata_id); CREATE TABLE common_metadata_narrow_mappings ( common_metadata_id INTEGER, @@ -3210,8 +3216,8 @@ CREATE TABLE common_metadata_narrow_mappings ( PRIMARY KEY (common_metadata_id, narrow_mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_narrow_mappings_narrow_mappings ON common_metadata_narrow_mappings (narrow_mappings); CREATE INDEX ix_common_metadata_narrow_mappings_common_metadata_id ON common_metadata_narrow_mappings (common_metadata_id); +CREATE INDEX ix_common_metadata_narrow_mappings_narrow_mappings ON common_metadata_narrow_mappings (narrow_mappings); CREATE TABLE common_metadata_broad_mappings ( common_metadata_id INTEGER, @@ -3219,8 +3225,8 @@ CREATE TABLE common_metadata_broad_mappings ( PRIMARY KEY (common_metadata_id, broad_mappings), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_broad_mappings_common_metadata_id ON common_metadata_broad_mappings (common_metadata_id); CREATE INDEX ix_common_metadata_broad_mappings_broad_mappings ON common_metadata_broad_mappings (broad_mappings); +CREATE INDEX ix_common_metadata_broad_mappings_common_metadata_id ON common_metadata_broad_mappings (common_metadata_id); CREATE TABLE common_metadata_contributors ( common_metadata_id INTEGER, @@ -3228,8 +3234,8 @@ CREATE TABLE common_metadata_contributors ( PRIMARY KEY (common_metadata_id, contributors), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_contributors_common_metadata_id ON common_metadata_contributors (common_metadata_id); CREATE INDEX ix_common_metadata_contributors_contributors ON common_metadata_contributors (contributors); +CREATE INDEX ix_common_metadata_contributors_common_metadata_id ON common_metadata_contributors (common_metadata_id); CREATE TABLE common_metadata_category ( common_metadata_id INTEGER, @@ -3237,8 +3243,8 @@ CREATE TABLE common_metadata_category ( PRIMARY KEY (common_metadata_id, category), FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id) ); -CREATE INDEX ix_common_metadata_category_common_metadata_id ON common_metadata_category (common_metadata_id); CREATE INDEX ix_common_metadata_category_category ON common_metadata_category (category); +CREATE INDEX ix_common_metadata_category_common_metadata_id ON common_metadata_category (common_metadata_id); CREATE TABLE common_metadata_keyword ( common_metadata_id INTEGER, @@ -3309,8 +3315,8 @@ CREATE TABLE element_see_also ( PRIMARY KEY (element_name, see_also), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_see_also_element_name ON element_see_also (element_name); CREATE INDEX ix_element_see_also_see_also ON element_see_also (see_also); +CREATE INDEX ix_element_see_also_element_name ON element_see_also (element_name); CREATE TABLE element_aliases ( element_name TEXT, @@ -3336,8 +3342,8 @@ CREATE TABLE element_exact_mappings ( PRIMARY KEY (element_name, exact_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_exact_mappings_exact_mappings ON element_exact_mappings (exact_mappings); CREATE INDEX ix_element_exact_mappings_element_name ON element_exact_mappings (element_name); +CREATE INDEX ix_element_exact_mappings_exact_mappings ON element_exact_mappings (exact_mappings); CREATE TABLE element_close_mappings ( element_name TEXT, @@ -3345,8 +3351,8 @@ CREATE TABLE element_close_mappings ( PRIMARY KEY (element_name, close_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_close_mappings_element_name ON element_close_mappings (element_name); CREATE INDEX ix_element_close_mappings_close_mappings ON element_close_mappings (close_mappings); +CREATE INDEX ix_element_close_mappings_element_name ON element_close_mappings (element_name); CREATE TABLE element_related_mappings ( element_name TEXT, @@ -3354,8 +3360,8 @@ CREATE TABLE element_related_mappings ( PRIMARY KEY (element_name, related_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_related_mappings_element_name ON element_related_mappings (element_name); CREATE INDEX ix_element_related_mappings_related_mappings ON element_related_mappings (related_mappings); +CREATE INDEX ix_element_related_mappings_element_name ON element_related_mappings (element_name); CREATE TABLE element_narrow_mappings ( element_name TEXT, @@ -3363,8 +3369,8 @@ CREATE TABLE element_narrow_mappings ( PRIMARY KEY (element_name, narrow_mappings), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_narrow_mappings_element_name ON element_narrow_mappings (element_name); CREATE INDEX ix_element_narrow_mappings_narrow_mappings ON element_narrow_mappings (narrow_mappings); +CREATE INDEX ix_element_narrow_mappings_element_name ON element_narrow_mappings (element_name); CREATE TABLE element_broad_mappings ( element_name TEXT, @@ -3390,8 +3396,8 @@ CREATE TABLE element_category ( PRIMARY KEY (element_name, category), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_category_category ON element_category (category); CREATE INDEX ix_element_category_element_name ON element_category (element_name); +CREATE INDEX ix_element_category_category ON element_category (category); CREATE TABLE element_keyword ( element_name TEXT, @@ -3399,8 +3405,8 @@ CREATE TABLE element_keyword ( PRIMARY KEY (element_name, keyword), FOREIGN KEY(element_name) REFERENCES element (name) ); -CREATE INDEX ix_element_keyword_element_name ON element_keyword (element_name); CREATE INDEX ix_element_keyword_keyword ON element_keyword (keyword); +CREATE INDEX ix_element_keyword_element_name ON element_keyword (element_name); CREATE TABLE schema_definition_imports ( schema_definition_name TEXT, @@ -3444,8 +3450,8 @@ CREATE TABLE schema_definition_implements ( PRIMARY KEY (schema_definition_name, implements), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_implements_schema_definition_name ON schema_definition_implements (schema_definition_name); CREATE INDEX ix_schema_definition_implements_implements ON schema_definition_implements (implements); +CREATE INDEX ix_schema_definition_implements_schema_definition_name ON schema_definition_implements (schema_definition_name); CREATE TABLE schema_definition_instantiates ( schema_definition_name TEXT, @@ -3471,8 +3477,8 @@ CREATE TABLE schema_definition_notes ( PRIMARY KEY (schema_definition_name, notes), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_notes_notes ON schema_definition_notes (notes); CREATE INDEX ix_schema_definition_notes_schema_definition_name ON schema_definition_notes (schema_definition_name); +CREATE INDEX ix_schema_definition_notes_notes ON schema_definition_notes (notes); CREATE TABLE schema_definition_comments ( schema_definition_name TEXT, @@ -3480,8 +3486,8 @@ CREATE TABLE schema_definition_comments ( PRIMARY KEY (schema_definition_name, comments), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_comments_schema_definition_name ON schema_definition_comments (schema_definition_name); CREATE INDEX ix_schema_definition_comments_comments ON schema_definition_comments (comments); +CREATE INDEX ix_schema_definition_comments_schema_definition_name ON schema_definition_comments (schema_definition_name); CREATE TABLE schema_definition_see_also ( schema_definition_name TEXT, @@ -3489,8 +3495,8 @@ CREATE TABLE schema_definition_see_also ( PRIMARY KEY (schema_definition_name, see_also), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_see_also_schema_definition_name ON schema_definition_see_also (schema_definition_name); CREATE INDEX ix_schema_definition_see_also_see_also ON schema_definition_see_also (see_also); +CREATE INDEX ix_schema_definition_see_also_schema_definition_name ON schema_definition_see_also (schema_definition_name); CREATE TABLE schema_definition_aliases ( schema_definition_name TEXT, @@ -3507,8 +3513,8 @@ CREATE TABLE schema_definition_mappings ( PRIMARY KEY (schema_definition_name, mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_mappings_schema_definition_name ON schema_definition_mappings (schema_definition_name); CREATE INDEX ix_schema_definition_mappings_mappings ON schema_definition_mappings (mappings); +CREATE INDEX ix_schema_definition_mappings_schema_definition_name ON schema_definition_mappings (schema_definition_name); CREATE TABLE schema_definition_exact_mappings ( schema_definition_name TEXT, @@ -3516,8 +3522,8 @@ CREATE TABLE schema_definition_exact_mappings ( PRIMARY KEY (schema_definition_name, exact_mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_exact_mappings_exact_mappings ON schema_definition_exact_mappings (exact_mappings); CREATE INDEX ix_schema_definition_exact_mappings_schema_definition_name ON schema_definition_exact_mappings (schema_definition_name); +CREATE INDEX ix_schema_definition_exact_mappings_exact_mappings ON schema_definition_exact_mappings (exact_mappings); CREATE TABLE schema_definition_close_mappings ( schema_definition_name TEXT, @@ -3534,8 +3540,8 @@ CREATE TABLE schema_definition_related_mappings ( PRIMARY KEY (schema_definition_name, related_mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_related_mappings_schema_definition_name ON schema_definition_related_mappings (schema_definition_name); CREATE INDEX ix_schema_definition_related_mappings_related_mappings ON schema_definition_related_mappings (related_mappings); +CREATE INDEX ix_schema_definition_related_mappings_schema_definition_name ON schema_definition_related_mappings (schema_definition_name); CREATE TABLE schema_definition_narrow_mappings ( schema_definition_name TEXT, @@ -3552,8 +3558,8 @@ CREATE TABLE schema_definition_broad_mappings ( PRIMARY KEY (schema_definition_name, broad_mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_broad_mappings_broad_mappings ON schema_definition_broad_mappings (broad_mappings); CREATE INDEX ix_schema_definition_broad_mappings_schema_definition_name ON schema_definition_broad_mappings (schema_definition_name); +CREATE INDEX ix_schema_definition_broad_mappings_broad_mappings ON schema_definition_broad_mappings (broad_mappings); CREATE TABLE schema_definition_contributors ( schema_definition_name TEXT, @@ -3570,8 +3576,8 @@ CREATE TABLE schema_definition_category ( PRIMARY KEY (schema_definition_name, category), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_category_category ON schema_definition_category (category); CREATE INDEX ix_schema_definition_category_schema_definition_name ON schema_definition_category (schema_definition_name); +CREATE INDEX ix_schema_definition_category_category ON schema_definition_category (category); CREATE TABLE schema_definition_keyword ( schema_definition_name TEXT, @@ -3579,8 +3585,8 @@ CREATE TABLE schema_definition_keyword ( PRIMARY KEY (schema_definition_name, keyword), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name) ); -CREATE INDEX ix_schema_definition_keyword_schema_definition_name ON schema_definition_keyword (schema_definition_name); CREATE INDEX ix_schema_definition_keyword_keyword ON schema_definition_keyword (keyword); +CREATE INDEX ix_schema_definition_keyword_schema_definition_name ON schema_definition_keyword (schema_definition_name); CREATE TABLE type_definition_union_of ( type_definition_name TEXT, @@ -3589,8 +3595,8 @@ CREATE TABLE type_definition_union_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(union_of_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_union_of_union_of_name ON type_definition_union_of (union_of_name); CREATE INDEX ix_type_definition_union_of_type_definition_name ON type_definition_union_of (type_definition_name); +CREATE INDEX ix_type_definition_union_of_union_of_name ON type_definition_union_of (union_of_name); CREATE TABLE type_definition_equals_string_in ( type_definition_name TEXT, @@ -3598,8 +3604,8 @@ CREATE TABLE type_definition_equals_string_in ( PRIMARY KEY (type_definition_name, equals_string_in), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_equals_string_in_type_definition_name ON type_definition_equals_string_in (type_definition_name); CREATE INDEX ix_type_definition_equals_string_in_equals_string_in ON type_definition_equals_string_in (equals_string_in); +CREATE INDEX ix_type_definition_equals_string_in_type_definition_name ON type_definition_equals_string_in (type_definition_name); CREATE TABLE type_definition_id_prefixes ( type_definition_name TEXT, @@ -3607,8 +3613,8 @@ CREATE TABLE type_definition_id_prefixes ( PRIMARY KEY (type_definition_name, id_prefixes), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_id_prefixes_type_definition_name ON type_definition_id_prefixes (type_definition_name); CREATE INDEX ix_type_definition_id_prefixes_id_prefixes ON type_definition_id_prefixes (id_prefixes); +CREATE INDEX ix_type_definition_id_prefixes_type_definition_name ON type_definition_id_prefixes (type_definition_name); CREATE TABLE type_definition_implements ( type_definition_name TEXT, @@ -3616,8 +3622,8 @@ CREATE TABLE type_definition_implements ( PRIMARY KEY (type_definition_name, implements), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_implements_type_definition_name ON type_definition_implements (type_definition_name); CREATE INDEX ix_type_definition_implements_implements ON type_definition_implements (implements); +CREATE INDEX ix_type_definition_implements_type_definition_name ON type_definition_implements (type_definition_name); CREATE TABLE type_definition_instantiates ( type_definition_name TEXT, @@ -3634,8 +3640,8 @@ CREATE TABLE type_definition_todos ( PRIMARY KEY (type_definition_name, todos), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_todos_todos ON type_definition_todos (todos); CREATE INDEX ix_type_definition_todos_type_definition_name ON type_definition_todos (type_definition_name); +CREATE INDEX ix_type_definition_todos_todos ON type_definition_todos (todos); CREATE TABLE type_definition_notes ( type_definition_name TEXT, @@ -3679,8 +3685,8 @@ CREATE TABLE type_definition_mappings ( PRIMARY KEY (type_definition_name, mappings), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_mappings_type_definition_name ON type_definition_mappings (type_definition_name); CREATE INDEX ix_type_definition_mappings_mappings ON type_definition_mappings (mappings); +CREATE INDEX ix_type_definition_mappings_type_definition_name ON type_definition_mappings (type_definition_name); CREATE TABLE type_definition_exact_mappings ( type_definition_name TEXT, @@ -3706,8 +3712,8 @@ CREATE TABLE type_definition_related_mappings ( PRIMARY KEY (type_definition_name, related_mappings), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_related_mappings_type_definition_name ON type_definition_related_mappings (type_definition_name); CREATE INDEX ix_type_definition_related_mappings_related_mappings ON type_definition_related_mappings (related_mappings); +CREATE INDEX ix_type_definition_related_mappings_type_definition_name ON type_definition_related_mappings (type_definition_name); CREATE TABLE type_definition_narrow_mappings ( type_definition_name TEXT, @@ -3724,8 +3730,8 @@ CREATE TABLE type_definition_broad_mappings ( PRIMARY KEY (type_definition_name, broad_mappings), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_broad_mappings_broad_mappings ON type_definition_broad_mappings (broad_mappings); CREATE INDEX ix_type_definition_broad_mappings_type_definition_name ON type_definition_broad_mappings (type_definition_name); +CREATE INDEX ix_type_definition_broad_mappings_broad_mappings ON type_definition_broad_mappings (broad_mappings); CREATE TABLE type_definition_contributors ( type_definition_name TEXT, @@ -3733,8 +3739,8 @@ CREATE TABLE type_definition_contributors ( PRIMARY KEY (type_definition_name, contributors), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_contributors_type_definition_name ON type_definition_contributors (type_definition_name); CREATE INDEX ix_type_definition_contributors_contributors ON type_definition_contributors (contributors); +CREATE INDEX ix_type_definition_contributors_type_definition_name ON type_definition_contributors (type_definition_name); CREATE TABLE type_definition_category ( type_definition_name TEXT, @@ -3742,8 +3748,8 @@ CREATE TABLE type_definition_category ( PRIMARY KEY (type_definition_name, category), FOREIGN KEY(type_definition_name) REFERENCES type_definition (name) ); -CREATE INDEX ix_type_definition_category_type_definition_name ON type_definition_category (type_definition_name); CREATE INDEX ix_type_definition_category_category ON type_definition_category (category); +CREATE INDEX ix_type_definition_category_type_definition_name ON type_definition_category (type_definition_name); CREATE TABLE type_definition_keyword ( type_definition_name TEXT, @@ -3780,8 +3786,8 @@ CREATE TABLE definition_values_from ( PRIMARY KEY (definition_name, values_from), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_values_from_definition_name ON definition_values_from (definition_name); CREATE INDEX ix_definition_values_from_values_from ON definition_values_from (values_from); +CREATE INDEX ix_definition_values_from_definition_name ON definition_values_from (definition_name); CREATE TABLE definition_id_prefixes ( definition_name TEXT, @@ -3789,8 +3795,8 @@ CREATE TABLE definition_id_prefixes ( PRIMARY KEY (definition_name, id_prefixes), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_id_prefixes_definition_name ON definition_id_prefixes (definition_name); CREATE INDEX ix_definition_id_prefixes_id_prefixes ON definition_id_prefixes (id_prefixes); +CREATE INDEX ix_definition_id_prefixes_definition_name ON definition_id_prefixes (definition_name); CREATE TABLE definition_implements ( definition_name TEXT, @@ -3834,8 +3840,8 @@ CREATE TABLE definition_comments ( PRIMARY KEY (definition_name, comments), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_comments_definition_name ON definition_comments (definition_name); CREATE INDEX ix_definition_comments_comments ON definition_comments (comments); +CREATE INDEX ix_definition_comments_definition_name ON definition_comments (definition_name); CREATE TABLE definition_see_also ( definition_name TEXT, @@ -3852,8 +3858,8 @@ CREATE TABLE definition_aliases ( PRIMARY KEY (definition_name, aliases), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_aliases_definition_name ON definition_aliases (definition_name); CREATE INDEX ix_definition_aliases_aliases ON definition_aliases (aliases); +CREATE INDEX ix_definition_aliases_definition_name ON definition_aliases (definition_name); CREATE TABLE definition_mappings ( definition_name TEXT, @@ -3870,8 +3876,8 @@ CREATE TABLE definition_exact_mappings ( PRIMARY KEY (definition_name, exact_mappings), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_exact_mappings_definition_name ON definition_exact_mappings (definition_name); CREATE INDEX ix_definition_exact_mappings_exact_mappings ON definition_exact_mappings (exact_mappings); +CREATE INDEX ix_definition_exact_mappings_definition_name ON definition_exact_mappings (definition_name); CREATE TABLE definition_close_mappings ( definition_name TEXT, @@ -3897,8 +3903,8 @@ CREATE TABLE definition_narrow_mappings ( PRIMARY KEY (definition_name, narrow_mappings), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_narrow_mappings_narrow_mappings ON definition_narrow_mappings (narrow_mappings); CREATE INDEX ix_definition_narrow_mappings_definition_name ON definition_narrow_mappings (definition_name); +CREATE INDEX ix_definition_narrow_mappings_narrow_mappings ON definition_narrow_mappings (narrow_mappings); CREATE TABLE definition_broad_mappings ( definition_name TEXT, @@ -3906,8 +3912,8 @@ CREATE TABLE definition_broad_mappings ( PRIMARY KEY (definition_name, broad_mappings), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_broad_mappings_definition_name ON definition_broad_mappings (definition_name); CREATE INDEX ix_definition_broad_mappings_broad_mappings ON definition_broad_mappings (broad_mappings); +CREATE INDEX ix_definition_broad_mappings_definition_name ON definition_broad_mappings (definition_name); CREATE TABLE definition_contributors ( definition_name TEXT, @@ -3915,8 +3921,8 @@ CREATE TABLE definition_contributors ( PRIMARY KEY (definition_name, contributors), FOREIGN KEY(definition_name) REFERENCES definition (name) ); -CREATE INDEX ix_definition_contributors_definition_name ON definition_contributors (definition_name); CREATE INDEX ix_definition_contributors_contributors ON definition_contributors (contributors); +CREATE INDEX ix_definition_contributors_definition_name ON definition_contributors (definition_name); CREATE TABLE definition_category ( definition_name TEXT, @@ -3942,8 +3948,8 @@ CREATE TABLE reachability_query_source_nodes ( PRIMARY KEY (reachability_query_id, source_nodes), FOREIGN KEY(reachability_query_id) REFERENCES reachability_query (id) ); -CREATE INDEX ix_reachability_query_source_nodes_reachability_query_id ON reachability_query_source_nodes (reachability_query_id); CREATE INDEX ix_reachability_query_source_nodes_source_nodes ON reachability_query_source_nodes (source_nodes); +CREATE INDEX ix_reachability_query_source_nodes_reachability_query_id ON reachability_query_source_nodes (reachability_query_id); CREATE TABLE reachability_query_relationship_types ( reachability_query_id INTEGER, @@ -3960,8 +3966,8 @@ CREATE TABLE anonymous_expression_todos ( PRIMARY KEY (anonymous_expression_id, todos), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_todos_anonymous_expression_id ON anonymous_expression_todos (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_todos_todos ON anonymous_expression_todos (todos); +CREATE INDEX ix_anonymous_expression_todos_anonymous_expression_id ON anonymous_expression_todos (anonymous_expression_id); CREATE TABLE anonymous_expression_notes ( anonymous_expression_id INTEGER, @@ -4005,8 +4011,8 @@ CREATE TABLE anonymous_expression_mappings ( PRIMARY KEY (anonymous_expression_id, mappings), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_mappings_anonymous_expression_id ON anonymous_expression_mappings (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_mappings_mappings ON anonymous_expression_mappings (mappings); +CREATE INDEX ix_anonymous_expression_mappings_anonymous_expression_id ON anonymous_expression_mappings (anonymous_expression_id); CREATE TABLE anonymous_expression_exact_mappings ( anonymous_expression_id INTEGER, @@ -4032,8 +4038,8 @@ CREATE TABLE anonymous_expression_related_mappings ( PRIMARY KEY (anonymous_expression_id, related_mappings), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_related_mappings_anonymous_expression_id ON anonymous_expression_related_mappings (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_related_mappings_related_mappings ON anonymous_expression_related_mappings (related_mappings); +CREATE INDEX ix_anonymous_expression_related_mappings_anonymous_expression_id ON anonymous_expression_related_mappings (anonymous_expression_id); CREATE TABLE anonymous_expression_narrow_mappings ( anonymous_expression_id INTEGER, @@ -4068,8 +4074,8 @@ CREATE TABLE anonymous_expression_category ( PRIMARY KEY (anonymous_expression_id, category), FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id) ); -CREATE INDEX ix_anonymous_expression_category_anonymous_expression_id ON anonymous_expression_category (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_category_category ON anonymous_expression_category (category); +CREATE INDEX ix_anonymous_expression_category_anonymous_expression_id ON anonymous_expression_category (anonymous_expression_id); CREATE TABLE anonymous_expression_keyword ( anonymous_expression_id INTEGER, @@ -4087,8 +4093,8 @@ CREATE TABLE path_expression_none_of ( FOREIGN KEY(path_expression_id) REFERENCES path_expression (id), FOREIGN KEY(none_of_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_none_of_path_expression_id ON path_expression_none_of (path_expression_id); CREATE INDEX ix_path_expression_none_of_none_of_id ON path_expression_none_of (none_of_id); +CREATE INDEX ix_path_expression_none_of_path_expression_id ON path_expression_none_of (path_expression_id); CREATE TABLE path_expression_any_of ( path_expression_id INTEGER, @@ -4107,8 +4113,8 @@ CREATE TABLE path_expression_all_of ( FOREIGN KEY(path_expression_id) REFERENCES path_expression (id), FOREIGN KEY(all_of_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_all_of_path_expression_id ON path_expression_all_of (path_expression_id); CREATE INDEX ix_path_expression_all_of_all_of_id ON path_expression_all_of (all_of_id); +CREATE INDEX ix_path_expression_all_of_path_expression_id ON path_expression_all_of (path_expression_id); CREATE TABLE path_expression_exactly_one_of ( path_expression_id INTEGER, @@ -4117,8 +4123,8 @@ CREATE TABLE path_expression_exactly_one_of ( FOREIGN KEY(path_expression_id) REFERENCES path_expression (id), FOREIGN KEY(exactly_one_of_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_exactly_one_of_path_expression_id ON path_expression_exactly_one_of (path_expression_id); CREATE INDEX ix_path_expression_exactly_one_of_exactly_one_of_id ON path_expression_exactly_one_of (exactly_one_of_id); +CREATE INDEX ix_path_expression_exactly_one_of_path_expression_id ON path_expression_exactly_one_of (path_expression_id); CREATE TABLE path_expression_todos ( path_expression_id INTEGER, @@ -4135,8 +4141,8 @@ CREATE TABLE path_expression_notes ( PRIMARY KEY (path_expression_id, notes), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_notes_path_expression_id ON path_expression_notes (path_expression_id); CREATE INDEX ix_path_expression_notes_notes ON path_expression_notes (notes); +CREATE INDEX ix_path_expression_notes_path_expression_id ON path_expression_notes (path_expression_id); CREATE TABLE path_expression_comments ( path_expression_id INTEGER, @@ -4144,8 +4150,8 @@ CREATE TABLE path_expression_comments ( PRIMARY KEY (path_expression_id, comments), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_comments_comments ON path_expression_comments (comments); CREATE INDEX ix_path_expression_comments_path_expression_id ON path_expression_comments (path_expression_id); +CREATE INDEX ix_path_expression_comments_comments ON path_expression_comments (comments); CREATE TABLE path_expression_see_also ( path_expression_id INTEGER, @@ -4180,8 +4186,8 @@ CREATE TABLE path_expression_exact_mappings ( PRIMARY KEY (path_expression_id, exact_mappings), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_exact_mappings_path_expression_id ON path_expression_exact_mappings (path_expression_id); CREATE INDEX ix_path_expression_exact_mappings_exact_mappings ON path_expression_exact_mappings (exact_mappings); +CREATE INDEX ix_path_expression_exact_mappings_path_expression_id ON path_expression_exact_mappings (path_expression_id); CREATE TABLE path_expression_close_mappings ( path_expression_id INTEGER, @@ -4198,8 +4204,8 @@ CREATE TABLE path_expression_related_mappings ( PRIMARY KEY (path_expression_id, related_mappings), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_related_mappings_path_expression_id ON path_expression_related_mappings (path_expression_id); CREATE INDEX ix_path_expression_related_mappings_related_mappings ON path_expression_related_mappings (related_mappings); +CREATE INDEX ix_path_expression_related_mappings_path_expression_id ON path_expression_related_mappings (path_expression_id); CREATE TABLE path_expression_narrow_mappings ( path_expression_id INTEGER, @@ -4234,8 +4240,8 @@ CREATE TABLE path_expression_category ( PRIMARY KEY (path_expression_id, category), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_category_path_expression_id ON path_expression_category (path_expression_id); CREATE INDEX ix_path_expression_category_category ON path_expression_category (category); +CREATE INDEX ix_path_expression_category_path_expression_id ON path_expression_category (path_expression_id); CREATE TABLE path_expression_keyword ( path_expression_id INTEGER, @@ -4243,8 +4249,8 @@ CREATE TABLE path_expression_keyword ( PRIMARY KEY (path_expression_id, keyword), FOREIGN KEY(path_expression_id) REFERENCES path_expression (id) ); -CREATE INDEX ix_path_expression_keyword_keyword ON path_expression_keyword (keyword); CREATE INDEX ix_path_expression_keyword_path_expression_id ON path_expression_keyword (path_expression_id); +CREATE INDEX ix_path_expression_keyword_keyword ON path_expression_keyword (keyword); CREATE TABLE anonymous_slot_expression_equals_string_in ( anonymous_slot_expression_id INTEGER, @@ -4262,8 +4268,8 @@ CREATE TABLE anonymous_slot_expression_none_of ( FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_none_of_anonymous_slot_expression_id ON anonymous_slot_expression_none_of (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_none_of_none_of_id ON anonymous_slot_expression_none_of (none_of_id); +CREATE INDEX ix_anonymous_slot_expression_none_of_anonymous_slot_expression_id ON anonymous_slot_expression_none_of (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_exactly_one_of ( anonymous_slot_expression_id INTEGER, @@ -4282,8 +4288,8 @@ CREATE TABLE anonymous_slot_expression_any_of ( FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id), FOREIGN KEY(any_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_any_of_anonymous_slot_expression_id ON anonymous_slot_expression_any_of (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_any_of_any_of_id ON anonymous_slot_expression_any_of (any_of_id); +CREATE INDEX ix_anonymous_slot_expression_any_of_anonymous_slot_expression_id ON anonymous_slot_expression_any_of (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_all_of ( anonymous_slot_expression_id INTEGER, @@ -4301,8 +4307,8 @@ CREATE TABLE anonymous_slot_expression_todos ( PRIMARY KEY (anonymous_slot_expression_id, todos), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_todos_anonymous_slot_expression_id ON anonymous_slot_expression_todos (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_todos_todos ON anonymous_slot_expression_todos (todos); +CREATE INDEX ix_anonymous_slot_expression_todos_anonymous_slot_expression_id ON anonymous_slot_expression_todos (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_notes ( anonymous_slot_expression_id INTEGER, @@ -4310,8 +4316,8 @@ CREATE TABLE anonymous_slot_expression_notes ( PRIMARY KEY (anonymous_slot_expression_id, notes), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_notes_anonymous_slot_expression_id ON anonymous_slot_expression_notes (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_notes_notes ON anonymous_slot_expression_notes (notes); +CREATE INDEX ix_anonymous_slot_expression_notes_anonymous_slot_expression_id ON anonymous_slot_expression_notes (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_comments ( anonymous_slot_expression_id INTEGER, @@ -4319,8 +4325,8 @@ CREATE TABLE anonymous_slot_expression_comments ( PRIMARY KEY (anonymous_slot_expression_id, comments), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_comments_comments ON anonymous_slot_expression_comments (comments); CREATE INDEX ix_anonymous_slot_expression_comments_anonymous_slot_expression_id ON anonymous_slot_expression_comments (anonymous_slot_expression_id); +CREATE INDEX ix_anonymous_slot_expression_comments_comments ON anonymous_slot_expression_comments (comments); CREATE TABLE anonymous_slot_expression_see_also ( anonymous_slot_expression_id INTEGER, @@ -4337,8 +4343,8 @@ CREATE TABLE anonymous_slot_expression_aliases ( PRIMARY KEY (anonymous_slot_expression_id, aliases), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_aliases_anonymous_slot_expression_id ON anonymous_slot_expression_aliases (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_aliases_aliases ON anonymous_slot_expression_aliases (aliases); +CREATE INDEX ix_anonymous_slot_expression_aliases_anonymous_slot_expression_id ON anonymous_slot_expression_aliases (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_mappings ( anonymous_slot_expression_id INTEGER, @@ -4364,8 +4370,8 @@ CREATE TABLE anonymous_slot_expression_close_mappings ( PRIMARY KEY (anonymous_slot_expression_id, close_mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_close_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_close_mappings (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_close_mappings_close_mappings ON anonymous_slot_expression_close_mappings (close_mappings); +CREATE INDEX ix_anonymous_slot_expression_close_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_close_mappings (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_related_mappings ( anonymous_slot_expression_id INTEGER, @@ -4373,8 +4379,8 @@ CREATE TABLE anonymous_slot_expression_related_mappings ( PRIMARY KEY (anonymous_slot_expression_id, related_mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_related_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_related_mappings (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_related_mappings_related_mappings ON anonymous_slot_expression_related_mappings (related_mappings); +CREATE INDEX ix_anonymous_slot_expression_related_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_related_mappings (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_narrow_mappings ( anonymous_slot_expression_id INTEGER, @@ -4382,8 +4388,8 @@ CREATE TABLE anonymous_slot_expression_narrow_mappings ( PRIMARY KEY (anonymous_slot_expression_id, narrow_mappings), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_narrow_mappings_narrow_mappings ON anonymous_slot_expression_narrow_mappings (narrow_mappings); CREATE INDEX ix_anonymous_slot_expression_narrow_mappings_anonymous_slot_expression_id ON anonymous_slot_expression_narrow_mappings (anonymous_slot_expression_id); +CREATE INDEX ix_anonymous_slot_expression_narrow_mappings_narrow_mappings ON anonymous_slot_expression_narrow_mappings (narrow_mappings); CREATE TABLE anonymous_slot_expression_broad_mappings ( anonymous_slot_expression_id INTEGER, @@ -4400,8 +4406,8 @@ CREATE TABLE anonymous_slot_expression_contributors ( PRIMARY KEY (anonymous_slot_expression_id, contributors), FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_anonymous_slot_expression_contributors_anonymous_slot_expression_id ON anonymous_slot_expression_contributors (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_contributors_contributors ON anonymous_slot_expression_contributors (contributors); +CREATE INDEX ix_anonymous_slot_expression_contributors_anonymous_slot_expression_id ON anonymous_slot_expression_contributors (anonymous_slot_expression_id); CREATE TABLE anonymous_slot_expression_category ( anonymous_slot_expression_id INTEGER, @@ -4428,8 +4434,8 @@ CREATE TABLE slot_definition_domain_of ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(domain_of_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_slot_definition_domain_of_slot_definition_name ON slot_definition_domain_of (slot_definition_name); CREATE INDEX ix_slot_definition_domain_of_domain_of_name ON slot_definition_domain_of (domain_of_name); +CREATE INDEX ix_slot_definition_domain_of_slot_definition_name ON slot_definition_domain_of (slot_definition_name); CREATE TABLE slot_definition_disjoint_with ( slot_definition_name TEXT, @@ -4487,8 +4493,8 @@ CREATE TABLE slot_definition_any_of ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(any_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_definition_any_of_slot_definition_name ON slot_definition_any_of (slot_definition_name); CREATE INDEX ix_slot_definition_any_of_any_of_id ON slot_definition_any_of (any_of_id); +CREATE INDEX ix_slot_definition_any_of_slot_definition_name ON slot_definition_any_of (slot_definition_name); CREATE TABLE slot_definition_all_of ( slot_definition_name TEXT, @@ -4535,8 +4541,8 @@ CREATE TABLE slot_definition_id_prefixes ( PRIMARY KEY (slot_definition_name, id_prefixes), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_id_prefixes_slot_definition_name ON slot_definition_id_prefixes (slot_definition_name); CREATE INDEX ix_slot_definition_id_prefixes_id_prefixes ON slot_definition_id_prefixes (id_prefixes); +CREATE INDEX ix_slot_definition_id_prefixes_slot_definition_name ON slot_definition_id_prefixes (slot_definition_name); CREATE TABLE slot_definition_implements ( slot_definition_name TEXT, @@ -4544,8 +4550,8 @@ CREATE TABLE slot_definition_implements ( PRIMARY KEY (slot_definition_name, implements), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_implements_implements ON slot_definition_implements (implements); CREATE INDEX ix_slot_definition_implements_slot_definition_name ON slot_definition_implements (slot_definition_name); +CREATE INDEX ix_slot_definition_implements_implements ON slot_definition_implements (implements); CREATE TABLE slot_definition_instantiates ( slot_definition_name TEXT, @@ -4553,8 +4559,8 @@ CREATE TABLE slot_definition_instantiates ( PRIMARY KEY (slot_definition_name, instantiates), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_instantiates_slot_definition_name ON slot_definition_instantiates (slot_definition_name); CREATE INDEX ix_slot_definition_instantiates_instantiates ON slot_definition_instantiates (instantiates); +CREATE INDEX ix_slot_definition_instantiates_slot_definition_name ON slot_definition_instantiates (slot_definition_name); CREATE TABLE slot_definition_todos ( slot_definition_name TEXT, @@ -4562,8 +4568,8 @@ CREATE TABLE slot_definition_todos ( PRIMARY KEY (slot_definition_name, todos), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_todos_slot_definition_name ON slot_definition_todos (slot_definition_name); CREATE INDEX ix_slot_definition_todos_todos ON slot_definition_todos (todos); +CREATE INDEX ix_slot_definition_todos_slot_definition_name ON slot_definition_todos (slot_definition_name); CREATE TABLE slot_definition_notes ( slot_definition_name TEXT, @@ -4571,8 +4577,8 @@ CREATE TABLE slot_definition_notes ( PRIMARY KEY (slot_definition_name, notes), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_notes_notes ON slot_definition_notes (notes); CREATE INDEX ix_slot_definition_notes_slot_definition_name ON slot_definition_notes (slot_definition_name); +CREATE INDEX ix_slot_definition_notes_notes ON slot_definition_notes (notes); CREATE TABLE slot_definition_comments ( slot_definition_name TEXT, @@ -4607,8 +4613,8 @@ CREATE TABLE slot_definition_mappings ( PRIMARY KEY (slot_definition_name, mappings), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_mappings_slot_definition_name ON slot_definition_mappings (slot_definition_name); CREATE INDEX ix_slot_definition_mappings_mappings ON slot_definition_mappings (mappings); +CREATE INDEX ix_slot_definition_mappings_slot_definition_name ON slot_definition_mappings (slot_definition_name); CREATE TABLE slot_definition_exact_mappings ( slot_definition_name TEXT, @@ -4661,8 +4667,8 @@ CREATE TABLE slot_definition_contributors ( PRIMARY KEY (slot_definition_name, contributors), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_contributors_slot_definition_name ON slot_definition_contributors (slot_definition_name); CREATE INDEX ix_slot_definition_contributors_contributors ON slot_definition_contributors (contributors); +CREATE INDEX ix_slot_definition_contributors_slot_definition_name ON slot_definition_contributors (slot_definition_name); CREATE TABLE slot_definition_category ( slot_definition_name TEXT, @@ -4679,8 +4685,8 @@ CREATE TABLE slot_definition_keyword ( PRIMARY KEY (slot_definition_name, keyword), FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_slot_definition_keyword_keyword ON slot_definition_keyword (keyword); CREATE INDEX ix_slot_definition_keyword_slot_definition_name ON slot_definition_keyword (slot_definition_name); +CREATE INDEX ix_slot_definition_keyword_keyword ON slot_definition_keyword (keyword); CREATE TABLE class_expression_any_of ( class_expression_id INTEGER, @@ -4689,8 +4695,8 @@ CREATE TABLE class_expression_any_of ( FOREIGN KEY(class_expression_id) REFERENCES class_expression (id), FOREIGN KEY(any_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_expression_any_of_class_expression_id ON class_expression_any_of (class_expression_id); CREATE INDEX ix_class_expression_any_of_any_of_id ON class_expression_any_of (any_of_id); +CREATE INDEX ix_class_expression_any_of_class_expression_id ON class_expression_any_of (class_expression_id); CREATE TABLE class_expression_exactly_one_of ( class_expression_id INTEGER, @@ -4709,8 +4715,8 @@ CREATE TABLE class_expression_none_of ( FOREIGN KEY(class_expression_id) REFERENCES class_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_expression_none_of_class_expression_id ON class_expression_none_of (class_expression_id); CREATE INDEX ix_class_expression_none_of_none_of_id ON class_expression_none_of (none_of_id); +CREATE INDEX ix_class_expression_none_of_class_expression_id ON class_expression_none_of (class_expression_id); CREATE TABLE class_expression_all_of ( class_expression_id INTEGER, @@ -4719,8 +4725,8 @@ CREATE TABLE class_expression_all_of ( FOREIGN KEY(class_expression_id) REFERENCES class_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_expression_all_of_class_expression_id ON class_expression_all_of (class_expression_id); CREATE INDEX ix_class_expression_all_of_all_of_id ON class_expression_all_of (all_of_id); +CREATE INDEX ix_class_expression_all_of_class_expression_id ON class_expression_all_of (class_expression_id); CREATE TABLE anonymous_class_expression_any_of ( anonymous_class_expression_id INTEGER, @@ -4729,8 +4735,8 @@ CREATE TABLE anonymous_class_expression_any_of ( FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id), FOREIGN KEY(any_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_any_of_anonymous_class_expression_id ON anonymous_class_expression_any_of (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_any_of_any_of_id ON anonymous_class_expression_any_of (any_of_id); +CREATE INDEX ix_anonymous_class_expression_any_of_anonymous_class_expression_id ON anonymous_class_expression_any_of (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_exactly_one_of ( anonymous_class_expression_id INTEGER, @@ -4739,8 +4745,8 @@ CREATE TABLE anonymous_class_expression_exactly_one_of ( FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_exactly_one_of_anonymous_class_expression_id ON anonymous_class_expression_exactly_one_of (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_exactly_one_of_exactly_one_of_id ON anonymous_class_expression_exactly_one_of (exactly_one_of_id); +CREATE INDEX ix_anonymous_class_expression_exactly_one_of_anonymous_class_expression_id ON anonymous_class_expression_exactly_one_of (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_none_of ( anonymous_class_expression_id INTEGER, @@ -4768,8 +4774,8 @@ CREATE TABLE anonymous_class_expression_todos ( PRIMARY KEY (anonymous_class_expression_id, todos), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_todos_anonymous_class_expression_id ON anonymous_class_expression_todos (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_todos_todos ON anonymous_class_expression_todos (todos); +CREATE INDEX ix_anonymous_class_expression_todos_anonymous_class_expression_id ON anonymous_class_expression_todos (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_notes ( anonymous_class_expression_id INTEGER, @@ -4786,8 +4792,8 @@ CREATE TABLE anonymous_class_expression_comments ( PRIMARY KEY (anonymous_class_expression_id, comments), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_comments_anonymous_class_expression_id ON anonymous_class_expression_comments (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_comments_comments ON anonymous_class_expression_comments (comments); +CREATE INDEX ix_anonymous_class_expression_comments_anonymous_class_expression_id ON anonymous_class_expression_comments (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_see_also ( anonymous_class_expression_id INTEGER, @@ -4795,8 +4801,8 @@ CREATE TABLE anonymous_class_expression_see_also ( PRIMARY KEY (anonymous_class_expression_id, see_also), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_see_also_anonymous_class_expression_id ON anonymous_class_expression_see_also (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_see_also_see_also ON anonymous_class_expression_see_also (see_also); +CREATE INDEX ix_anonymous_class_expression_see_also_anonymous_class_expression_id ON anonymous_class_expression_see_also (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_aliases ( anonymous_class_expression_id INTEGER, @@ -4840,8 +4846,8 @@ CREATE TABLE anonymous_class_expression_related_mappings ( PRIMARY KEY (anonymous_class_expression_id, related_mappings), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_related_mappings_anonymous_class_expression_id ON anonymous_class_expression_related_mappings (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_related_mappings_related_mappings ON anonymous_class_expression_related_mappings (related_mappings); +CREATE INDEX ix_anonymous_class_expression_related_mappings_anonymous_class_expression_id ON anonymous_class_expression_related_mappings (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_narrow_mappings ( anonymous_class_expression_id INTEGER, @@ -4849,8 +4855,8 @@ CREATE TABLE anonymous_class_expression_narrow_mappings ( PRIMARY KEY (anonymous_class_expression_id, narrow_mappings), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_narrow_mappings_anonymous_class_expression_id ON anonymous_class_expression_narrow_mappings (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_narrow_mappings_narrow_mappings ON anonymous_class_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_anonymous_class_expression_narrow_mappings_anonymous_class_expression_id ON anonymous_class_expression_narrow_mappings (anonymous_class_expression_id); CREATE TABLE anonymous_class_expression_broad_mappings ( anonymous_class_expression_id INTEGER, @@ -4885,8 +4891,8 @@ CREATE TABLE anonymous_class_expression_keyword ( PRIMARY KEY (anonymous_class_expression_id, keyword), FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_anonymous_class_expression_keyword_anonymous_class_expression_id ON anonymous_class_expression_keyword (anonymous_class_expression_id); CREATE INDEX ix_anonymous_class_expression_keyword_keyword ON anonymous_class_expression_keyword (keyword); +CREATE INDEX ix_anonymous_class_expression_keyword_anonymous_class_expression_id ON anonymous_class_expression_keyword (anonymous_class_expression_id); CREATE TABLE class_definition_slots ( class_definition_name TEXT, @@ -4895,8 +4901,8 @@ CREATE TABLE class_definition_slots ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(slots_name) REFERENCES slot_definition (name) ); -CREATE INDEX ix_class_definition_slots_slots_name ON class_definition_slots (slots_name); CREATE INDEX ix_class_definition_slots_class_definition_name ON class_definition_slots (class_definition_name); +CREATE INDEX ix_class_definition_slots_slots_name ON class_definition_slots (slots_name); CREATE TABLE class_definition_union_of ( class_definition_name TEXT, @@ -4905,8 +4911,8 @@ CREATE TABLE class_definition_union_of ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(union_of_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_union_of_union_of_name ON class_definition_union_of (union_of_name); CREATE INDEX ix_class_definition_union_of_class_definition_name ON class_definition_union_of (class_definition_name); +CREATE INDEX ix_class_definition_union_of_union_of_name ON class_definition_union_of (union_of_name); CREATE TABLE class_definition_defining_slots ( class_definition_name TEXT, @@ -4925,8 +4931,8 @@ CREATE TABLE class_definition_disjoint_with ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(disjoint_with_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_disjoint_with_disjoint_with_name ON class_definition_disjoint_with (disjoint_with_name); CREATE INDEX ix_class_definition_disjoint_with_class_definition_name ON class_definition_disjoint_with (class_definition_name); +CREATE INDEX ix_class_definition_disjoint_with_disjoint_with_name ON class_definition_disjoint_with (disjoint_with_name); CREATE TABLE class_definition_any_of ( class_definition_name TEXT, @@ -4945,8 +4951,8 @@ CREATE TABLE class_definition_exactly_one_of ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_definition_exactly_one_of_exactly_one_of_id ON class_definition_exactly_one_of (exactly_one_of_id); CREATE INDEX ix_class_definition_exactly_one_of_class_definition_name ON class_definition_exactly_one_of (class_definition_name); +CREATE INDEX ix_class_definition_exactly_one_of_exactly_one_of_id ON class_definition_exactly_one_of (exactly_one_of_id); CREATE TABLE class_definition_none_of ( class_definition_name TEXT, @@ -4955,8 +4961,8 @@ CREATE TABLE class_definition_none_of ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(none_of_id) REFERENCES anonymous_class_expression (id) ); -CREATE INDEX ix_class_definition_none_of_class_definition_name ON class_definition_none_of (class_definition_name); CREATE INDEX ix_class_definition_none_of_none_of_id ON class_definition_none_of (none_of_id); +CREATE INDEX ix_class_definition_none_of_class_definition_name ON class_definition_none_of (class_definition_name); CREATE TABLE class_definition_all_of ( class_definition_name TEXT, @@ -4985,8 +4991,8 @@ CREATE TABLE class_definition_apply_to ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(apply_to_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_apply_to_class_definition_name ON class_definition_apply_to (class_definition_name); CREATE INDEX ix_class_definition_apply_to_apply_to_name ON class_definition_apply_to (apply_to_name); +CREATE INDEX ix_class_definition_apply_to_class_definition_name ON class_definition_apply_to (class_definition_name); CREATE TABLE class_definition_values_from ( class_definition_name TEXT, @@ -5003,8 +5009,8 @@ CREATE TABLE class_definition_id_prefixes ( PRIMARY KEY (class_definition_name, id_prefixes), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_id_prefixes_class_definition_name ON class_definition_id_prefixes (class_definition_name); CREATE INDEX ix_class_definition_id_prefixes_id_prefixes ON class_definition_id_prefixes (id_prefixes); +CREATE INDEX ix_class_definition_id_prefixes_class_definition_name ON class_definition_id_prefixes (class_definition_name); CREATE TABLE class_definition_implements ( class_definition_name TEXT, @@ -5021,8 +5027,8 @@ CREATE TABLE class_definition_instantiates ( PRIMARY KEY (class_definition_name, instantiates), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_instantiates_class_definition_name ON class_definition_instantiates (class_definition_name); CREATE INDEX ix_class_definition_instantiates_instantiates ON class_definition_instantiates (instantiates); +CREATE INDEX ix_class_definition_instantiates_class_definition_name ON class_definition_instantiates (class_definition_name); CREATE TABLE class_definition_todos ( class_definition_name TEXT, @@ -5048,8 +5054,8 @@ CREATE TABLE class_definition_comments ( PRIMARY KEY (class_definition_name, comments), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_comments_class_definition_name ON class_definition_comments (class_definition_name); CREATE INDEX ix_class_definition_comments_comments ON class_definition_comments (comments); +CREATE INDEX ix_class_definition_comments_class_definition_name ON class_definition_comments (class_definition_name); CREATE TABLE class_definition_see_also ( class_definition_name TEXT, @@ -5066,8 +5072,8 @@ CREATE TABLE class_definition_aliases ( PRIMARY KEY (class_definition_name, aliases), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_aliases_class_definition_name ON class_definition_aliases (class_definition_name); CREATE INDEX ix_class_definition_aliases_aliases ON class_definition_aliases (aliases); +CREATE INDEX ix_class_definition_aliases_class_definition_name ON class_definition_aliases (class_definition_name); CREATE TABLE class_definition_mappings ( class_definition_name TEXT, @@ -5075,8 +5081,8 @@ CREATE TABLE class_definition_mappings ( PRIMARY KEY (class_definition_name, mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_mappings_class_definition_name ON class_definition_mappings (class_definition_name); CREATE INDEX ix_class_definition_mappings_mappings ON class_definition_mappings (mappings); +CREATE INDEX ix_class_definition_mappings_class_definition_name ON class_definition_mappings (class_definition_name); CREATE TABLE class_definition_exact_mappings ( class_definition_name TEXT, @@ -5084,8 +5090,8 @@ CREATE TABLE class_definition_exact_mappings ( PRIMARY KEY (class_definition_name, exact_mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_exact_mappings_exact_mappings ON class_definition_exact_mappings (exact_mappings); CREATE INDEX ix_class_definition_exact_mappings_class_definition_name ON class_definition_exact_mappings (class_definition_name); +CREATE INDEX ix_class_definition_exact_mappings_exact_mappings ON class_definition_exact_mappings (exact_mappings); CREATE TABLE class_definition_close_mappings ( class_definition_name TEXT, @@ -5102,8 +5108,8 @@ CREATE TABLE class_definition_related_mappings ( PRIMARY KEY (class_definition_name, related_mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_related_mappings_class_definition_name ON class_definition_related_mappings (class_definition_name); CREATE INDEX ix_class_definition_related_mappings_related_mappings ON class_definition_related_mappings (related_mappings); +CREATE INDEX ix_class_definition_related_mappings_class_definition_name ON class_definition_related_mappings (class_definition_name); CREATE TABLE class_definition_narrow_mappings ( class_definition_name TEXT, @@ -5111,8 +5117,8 @@ CREATE TABLE class_definition_narrow_mappings ( PRIMARY KEY (class_definition_name, narrow_mappings), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_narrow_mappings_class_definition_name ON class_definition_narrow_mappings (class_definition_name); CREATE INDEX ix_class_definition_narrow_mappings_narrow_mappings ON class_definition_narrow_mappings (narrow_mappings); +CREATE INDEX ix_class_definition_narrow_mappings_class_definition_name ON class_definition_narrow_mappings (class_definition_name); CREATE TABLE class_definition_broad_mappings ( class_definition_name TEXT, @@ -5129,8 +5135,8 @@ CREATE TABLE class_definition_contributors ( PRIMARY KEY (class_definition_name, contributors), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_class_definition_contributors_contributors ON class_definition_contributors (contributors); CREATE INDEX ix_class_definition_contributors_class_definition_name ON class_definition_contributors (class_definition_name); +CREATE INDEX ix_class_definition_contributors_contributors ON class_definition_contributors (contributors); CREATE TABLE class_definition_category ( class_definition_name TEXT, @@ -5174,8 +5180,8 @@ CREATE TABLE dimension_expression_comments ( PRIMARY KEY (dimension_expression_id, comments), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_comments_dimension_expression_id ON dimension_expression_comments (dimension_expression_id); CREATE INDEX ix_dimension_expression_comments_comments ON dimension_expression_comments (comments); +CREATE INDEX ix_dimension_expression_comments_dimension_expression_id ON dimension_expression_comments (dimension_expression_id); CREATE TABLE dimension_expression_see_also ( dimension_expression_id INTEGER, @@ -5192,8 +5198,8 @@ CREATE TABLE dimension_expression_aliases ( PRIMARY KEY (dimension_expression_id, aliases), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_aliases_aliases ON dimension_expression_aliases (aliases); CREATE INDEX ix_dimension_expression_aliases_dimension_expression_id ON dimension_expression_aliases (dimension_expression_id); +CREATE INDEX ix_dimension_expression_aliases_aliases ON dimension_expression_aliases (aliases); CREATE TABLE dimension_expression_mappings ( dimension_expression_id INTEGER, @@ -5201,8 +5207,8 @@ CREATE TABLE dimension_expression_mappings ( PRIMARY KEY (dimension_expression_id, mappings), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_mappings_dimension_expression_id ON dimension_expression_mappings (dimension_expression_id); CREATE INDEX ix_dimension_expression_mappings_mappings ON dimension_expression_mappings (mappings); +CREATE INDEX ix_dimension_expression_mappings_dimension_expression_id ON dimension_expression_mappings (dimension_expression_id); CREATE TABLE dimension_expression_exact_mappings ( dimension_expression_id INTEGER, @@ -5219,8 +5225,8 @@ CREATE TABLE dimension_expression_close_mappings ( PRIMARY KEY (dimension_expression_id, close_mappings), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_close_mappings_dimension_expression_id ON dimension_expression_close_mappings (dimension_expression_id); CREATE INDEX ix_dimension_expression_close_mappings_close_mappings ON dimension_expression_close_mappings (close_mappings); +CREATE INDEX ix_dimension_expression_close_mappings_dimension_expression_id ON dimension_expression_close_mappings (dimension_expression_id); CREATE TABLE dimension_expression_related_mappings ( dimension_expression_id INTEGER, @@ -5237,8 +5243,8 @@ CREATE TABLE dimension_expression_narrow_mappings ( PRIMARY KEY (dimension_expression_id, narrow_mappings), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_narrow_mappings_narrow_mappings ON dimension_expression_narrow_mappings (narrow_mappings); CREATE INDEX ix_dimension_expression_narrow_mappings_dimension_expression_id ON dimension_expression_narrow_mappings (dimension_expression_id); +CREATE INDEX ix_dimension_expression_narrow_mappings_narrow_mappings ON dimension_expression_narrow_mappings (narrow_mappings); CREATE TABLE dimension_expression_broad_mappings ( dimension_expression_id INTEGER, @@ -5255,8 +5261,8 @@ CREATE TABLE dimension_expression_contributors ( PRIMARY KEY (dimension_expression_id, contributors), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_contributors_dimension_expression_id ON dimension_expression_contributors (dimension_expression_id); CREATE INDEX ix_dimension_expression_contributors_contributors ON dimension_expression_contributors (contributors); +CREATE INDEX ix_dimension_expression_contributors_dimension_expression_id ON dimension_expression_contributors (dimension_expression_id); CREATE TABLE dimension_expression_category ( dimension_expression_id INTEGER, @@ -5264,8 +5270,8 @@ CREATE TABLE dimension_expression_category ( PRIMARY KEY (dimension_expression_id, category), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_category_dimension_expression_id ON dimension_expression_category (dimension_expression_id); CREATE INDEX ix_dimension_expression_category_category ON dimension_expression_category (category); +CREATE INDEX ix_dimension_expression_category_dimension_expression_id ON dimension_expression_category (dimension_expression_id); CREATE TABLE dimension_expression_keyword ( dimension_expression_id INTEGER, @@ -5273,8 +5279,8 @@ CREATE TABLE dimension_expression_keyword ( PRIMARY KEY (dimension_expression_id, keyword), FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id) ); -CREATE INDEX ix_dimension_expression_keyword_dimension_expression_id ON dimension_expression_keyword (dimension_expression_id); CREATE INDEX ix_dimension_expression_keyword_keyword ON dimension_expression_keyword (keyword); +CREATE INDEX ix_dimension_expression_keyword_dimension_expression_id ON dimension_expression_keyword (dimension_expression_id); CREATE TABLE pattern_expression_todos ( pattern_expression_id INTEGER, @@ -5282,8 +5288,8 @@ CREATE TABLE pattern_expression_todos ( PRIMARY KEY (pattern_expression_id, todos), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_todos_todos ON pattern_expression_todos (todos); CREATE INDEX ix_pattern_expression_todos_pattern_expression_id ON pattern_expression_todos (pattern_expression_id); +CREATE INDEX ix_pattern_expression_todos_todos ON pattern_expression_todos (todos); CREATE TABLE pattern_expression_notes ( pattern_expression_id INTEGER, @@ -5291,8 +5297,8 @@ CREATE TABLE pattern_expression_notes ( PRIMARY KEY (pattern_expression_id, notes), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_notes_pattern_expression_id ON pattern_expression_notes (pattern_expression_id); CREATE INDEX ix_pattern_expression_notes_notes ON pattern_expression_notes (notes); +CREATE INDEX ix_pattern_expression_notes_pattern_expression_id ON pattern_expression_notes (pattern_expression_id); CREATE TABLE pattern_expression_comments ( pattern_expression_id INTEGER, @@ -5300,8 +5306,8 @@ CREATE TABLE pattern_expression_comments ( PRIMARY KEY (pattern_expression_id, comments), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_comments_pattern_expression_id ON pattern_expression_comments (pattern_expression_id); CREATE INDEX ix_pattern_expression_comments_comments ON pattern_expression_comments (comments); +CREATE INDEX ix_pattern_expression_comments_pattern_expression_id ON pattern_expression_comments (pattern_expression_id); CREATE TABLE pattern_expression_see_also ( pattern_expression_id INTEGER, @@ -5309,8 +5315,8 @@ CREATE TABLE pattern_expression_see_also ( PRIMARY KEY (pattern_expression_id, see_also), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_see_also_pattern_expression_id ON pattern_expression_see_also (pattern_expression_id); CREATE INDEX ix_pattern_expression_see_also_see_also ON pattern_expression_see_also (see_also); +CREATE INDEX ix_pattern_expression_see_also_pattern_expression_id ON pattern_expression_see_also (pattern_expression_id); CREATE TABLE pattern_expression_aliases ( pattern_expression_id INTEGER, @@ -5327,8 +5333,8 @@ CREATE TABLE pattern_expression_mappings ( PRIMARY KEY (pattern_expression_id, mappings), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_mappings_mappings ON pattern_expression_mappings (mappings); CREATE INDEX ix_pattern_expression_mappings_pattern_expression_id ON pattern_expression_mappings (pattern_expression_id); +CREATE INDEX ix_pattern_expression_mappings_mappings ON pattern_expression_mappings (mappings); CREATE TABLE pattern_expression_exact_mappings ( pattern_expression_id INTEGER, @@ -5381,8 +5387,8 @@ CREATE TABLE pattern_expression_contributors ( PRIMARY KEY (pattern_expression_id, contributors), FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id) ); -CREATE INDEX ix_pattern_expression_contributors_pattern_expression_id ON pattern_expression_contributors (pattern_expression_id); CREATE INDEX ix_pattern_expression_contributors_contributors ON pattern_expression_contributors (contributors); +CREATE INDEX ix_pattern_expression_contributors_pattern_expression_id ON pattern_expression_contributors (pattern_expression_id); CREATE TABLE pattern_expression_category ( pattern_expression_id INTEGER, @@ -5417,8 +5423,8 @@ CREATE TABLE import_expression_notes ( PRIMARY KEY (import_expression_id, notes), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_notes_import_expression_id ON import_expression_notes (import_expression_id); CREATE INDEX ix_import_expression_notes_notes ON import_expression_notes (notes); +CREATE INDEX ix_import_expression_notes_import_expression_id ON import_expression_notes (import_expression_id); CREATE TABLE import_expression_comments ( import_expression_id INTEGER, @@ -5426,8 +5432,8 @@ CREATE TABLE import_expression_comments ( PRIMARY KEY (import_expression_id, comments), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_comments_import_expression_id ON import_expression_comments (import_expression_id); CREATE INDEX ix_import_expression_comments_comments ON import_expression_comments (comments); +CREATE INDEX ix_import_expression_comments_import_expression_id ON import_expression_comments (import_expression_id); CREATE TABLE import_expression_see_also ( import_expression_id INTEGER, @@ -5435,8 +5441,8 @@ CREATE TABLE import_expression_see_also ( PRIMARY KEY (import_expression_id, see_also), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_see_also_import_expression_id ON import_expression_see_also (import_expression_id); CREATE INDEX ix_import_expression_see_also_see_also ON import_expression_see_also (see_also); +CREATE INDEX ix_import_expression_see_also_import_expression_id ON import_expression_see_also (import_expression_id); CREATE TABLE import_expression_aliases ( import_expression_id INTEGER, @@ -5444,8 +5450,8 @@ CREATE TABLE import_expression_aliases ( PRIMARY KEY (import_expression_id, aliases), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_aliases_import_expression_id ON import_expression_aliases (import_expression_id); CREATE INDEX ix_import_expression_aliases_aliases ON import_expression_aliases (aliases); +CREATE INDEX ix_import_expression_aliases_import_expression_id ON import_expression_aliases (import_expression_id); CREATE TABLE import_expression_mappings ( import_expression_id INTEGER, @@ -5507,8 +5513,8 @@ CREATE TABLE import_expression_contributors ( PRIMARY KEY (import_expression_id, contributors), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_contributors_import_expression_id ON import_expression_contributors (import_expression_id); CREATE INDEX ix_import_expression_contributors_contributors ON import_expression_contributors (contributors); +CREATE INDEX ix_import_expression_contributors_import_expression_id ON import_expression_contributors (import_expression_id); CREATE TABLE import_expression_category ( import_expression_id INTEGER, @@ -5525,8 +5531,8 @@ CREATE TABLE import_expression_keyword ( PRIMARY KEY (import_expression_id, keyword), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); -CREATE INDEX ix_import_expression_keyword_import_expression_id ON import_expression_keyword (import_expression_id); CREATE INDEX ix_import_expression_keyword_keyword ON import_expression_keyword (keyword); +CREATE INDEX ix_import_expression_keyword_import_expression_id ON import_expression_keyword (import_expression_id); CREATE TABLE "UnitOfMeasure_exact_mappings" ( "UnitOfMeasure_id" INTEGER, @@ -5606,24 +5612,24 @@ CREATE TABLE local_name ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(class_definition_name) REFERENCES class_definition (name) ); -CREATE INDEX ix_local_name_enum_definition_name ON local_name (enum_definition_name); -CREATE INDEX local_name_slot_definition_name_local_name_source_idx ON local_name (slot_definition_name, local_name_source); -CREATE INDEX local_name_element_name_local_name_source_idx ON local_name (element_name, local_name_source); -CREATE INDEX ix_local_name_schema_definition_name ON local_name (schema_definition_name); +CREATE INDEX ix_local_name_class_definition_name ON local_name (class_definition_name); CREATE INDEX local_name_schema_definition_name_local_name_source_idx ON local_name (schema_definition_name, local_name_source); +CREATE INDEX ix_local_name_slot_definition_name ON local_name (slot_definition_name); CREATE INDEX ix_local_name_local_name_source ON local_name (local_name_source); -CREATE INDEX ix_local_name_subset_definition_name ON local_name (subset_definition_name); -CREATE INDEX local_name_class_definition_name_local_name_source_idx ON local_name (class_definition_name, local_name_source); +CREATE INDEX ix_local_name_enum_definition_name ON local_name (enum_definition_name); CREATE INDEX ix_local_name_definition_name ON local_name (definition_name); -CREATE INDEX ix_local_name_local_name_value ON local_name (local_name_value); CREATE INDEX local_name_enum_definition_name_local_name_source_idx ON local_name (enum_definition_name, local_name_source); -CREATE INDEX ix_local_name_slot_definition_name ON local_name (slot_definition_name); -CREATE INDEX ix_local_name_class_definition_name ON local_name (class_definition_name); CREATE INDEX local_name_type_definition_name_local_name_source_idx ON local_name (type_definition_name, local_name_source); -CREATE INDEX local_name_subset_definition_name_local_name_source_idx ON local_name (subset_definition_name, local_name_source); +CREATE INDEX ix_local_name_subset_definition_name ON local_name (subset_definition_name); +CREATE INDEX local_name_slot_definition_name_local_name_source_idx ON local_name (slot_definition_name, local_name_source); CREATE INDEX ix_local_name_type_definition_name ON local_name (type_definition_name); -CREATE INDEX local_name_definition_name_local_name_source_idx ON local_name (definition_name, local_name_source); +CREATE INDEX local_name_element_name_local_name_source_idx ON local_name (element_name, local_name_source); +CREATE INDEX ix_local_name_schema_definition_name ON local_name (schema_definition_name); +CREATE INDEX local_name_subset_definition_name_local_name_source_idx ON local_name (subset_definition_name, local_name_source); +CREATE INDEX ix_local_name_local_name_value ON local_name (local_name_value); CREATE INDEX ix_local_name_element_name ON local_name (element_name); +CREATE INDEX local_name_class_definition_name_local_name_source_idx ON local_name (class_definition_name, local_name_source); +CREATE INDEX local_name_definition_name_local_name_source_idx ON local_name (definition_name, local_name_source); CREATE TABLE permissible_value ( text TEXT NOT NULL, @@ -5664,8 +5670,8 @@ CREATE TABLE common_metadata_in_subset ( FOREIGN KEY(common_metadata_id) REFERENCES common_metadata (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_common_metadata_in_subset_common_metadata_id ON common_metadata_in_subset (common_metadata_id); CREATE INDEX ix_common_metadata_in_subset_in_subset_name ON common_metadata_in_subset (in_subset_name); +CREATE INDEX ix_common_metadata_in_subset_common_metadata_id ON common_metadata_in_subset (common_metadata_id); CREATE TABLE element_in_subset ( element_name TEXT, @@ -5684,8 +5690,8 @@ CREATE TABLE schema_definition_in_subset ( FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_schema_definition_in_subset_in_subset_name ON schema_definition_in_subset (in_subset_name); CREATE INDEX ix_schema_definition_in_subset_schema_definition_name ON schema_definition_in_subset (schema_definition_name); +CREATE INDEX ix_schema_definition_in_subset_in_subset_name ON schema_definition_in_subset (in_subset_name); CREATE TABLE type_expression_equals_string_in ( type_expression_id INTEGER, @@ -5693,8 +5699,8 @@ CREATE TABLE type_expression_equals_string_in ( PRIMARY KEY (type_expression_id, equals_string_in), FOREIGN KEY(type_expression_id) REFERENCES type_expression (id) ); -CREATE INDEX ix_type_expression_equals_string_in_type_expression_id ON type_expression_equals_string_in (type_expression_id); CREATE INDEX ix_type_expression_equals_string_in_equals_string_in ON type_expression_equals_string_in (equals_string_in); +CREATE INDEX ix_type_expression_equals_string_in_type_expression_id ON type_expression_equals_string_in (type_expression_id); CREATE TABLE type_expression_none_of ( type_expression_id INTEGER, @@ -5713,8 +5719,8 @@ CREATE TABLE type_expression_exactly_one_of ( FOREIGN KEY(type_expression_id) REFERENCES type_expression (id), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_expression_exactly_one_of_type_expression_id ON type_expression_exactly_one_of (type_expression_id); CREATE INDEX ix_type_expression_exactly_one_of_exactly_one_of_id ON type_expression_exactly_one_of (exactly_one_of_id); +CREATE INDEX ix_type_expression_exactly_one_of_type_expression_id ON type_expression_exactly_one_of (type_expression_id); CREATE TABLE type_expression_any_of ( type_expression_id INTEGER, @@ -5723,8 +5729,8 @@ CREATE TABLE type_expression_any_of ( FOREIGN KEY(type_expression_id) REFERENCES type_expression (id), FOREIGN KEY(any_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_expression_any_of_type_expression_id ON type_expression_any_of (type_expression_id); CREATE INDEX ix_type_expression_any_of_any_of_id ON type_expression_any_of (any_of_id); +CREATE INDEX ix_type_expression_any_of_type_expression_id ON type_expression_any_of (type_expression_id); CREATE TABLE type_expression_all_of ( type_expression_id INTEGER, @@ -5733,8 +5739,8 @@ CREATE TABLE type_expression_all_of ( FOREIGN KEY(type_expression_id) REFERENCES type_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_expression_all_of_type_expression_id ON type_expression_all_of (type_expression_id); CREATE INDEX ix_type_expression_all_of_all_of_id ON type_expression_all_of (all_of_id); +CREATE INDEX ix_type_expression_all_of_type_expression_id ON type_expression_all_of (type_expression_id); CREATE TABLE anonymous_type_expression_equals_string_in ( anonymous_type_expression_id INTEGER, @@ -5752,8 +5758,8 @@ CREATE TABLE anonymous_type_expression_none_of ( FOREIGN KEY(anonymous_type_expression_id) REFERENCES anonymous_type_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_anonymous_type_expression_none_of_anonymous_type_expression_id ON anonymous_type_expression_none_of (anonymous_type_expression_id); CREATE INDEX ix_anonymous_type_expression_none_of_none_of_id ON anonymous_type_expression_none_of (none_of_id); +CREATE INDEX ix_anonymous_type_expression_none_of_anonymous_type_expression_id ON anonymous_type_expression_none_of (anonymous_type_expression_id); CREATE TABLE anonymous_type_expression_exactly_one_of ( anonymous_type_expression_id INTEGER, @@ -5772,8 +5778,8 @@ CREATE TABLE anonymous_type_expression_any_of ( FOREIGN KEY(anonymous_type_expression_id) REFERENCES anonymous_type_expression (id), FOREIGN KEY(any_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_anonymous_type_expression_any_of_any_of_id ON anonymous_type_expression_any_of (any_of_id); CREATE INDEX ix_anonymous_type_expression_any_of_anonymous_type_expression_id ON anonymous_type_expression_any_of (anonymous_type_expression_id); +CREATE INDEX ix_anonymous_type_expression_any_of_any_of_id ON anonymous_type_expression_any_of (any_of_id); CREATE TABLE anonymous_type_expression_all_of ( anonymous_type_expression_id INTEGER, @@ -5802,8 +5808,8 @@ CREATE TABLE type_definition_exactly_one_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_definition_exactly_one_of_type_definition_name ON type_definition_exactly_one_of (type_definition_name); CREATE INDEX ix_type_definition_exactly_one_of_exactly_one_of_id ON type_definition_exactly_one_of (exactly_one_of_id); +CREATE INDEX ix_type_definition_exactly_one_of_type_definition_name ON type_definition_exactly_one_of (type_definition_name); CREATE TABLE type_definition_any_of ( type_definition_name TEXT, @@ -5812,8 +5818,8 @@ CREATE TABLE type_definition_any_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(any_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_definition_any_of_type_definition_name ON type_definition_any_of (type_definition_name); CREATE INDEX ix_type_definition_any_of_any_of_id ON type_definition_any_of (any_of_id); +CREATE INDEX ix_type_definition_any_of_type_definition_name ON type_definition_any_of (type_definition_name); CREATE TABLE type_definition_all_of ( type_definition_name TEXT, @@ -5822,8 +5828,8 @@ CREATE TABLE type_definition_all_of ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(all_of_id) REFERENCES anonymous_type_expression (id) ); -CREATE INDEX ix_type_definition_all_of_type_definition_name ON type_definition_all_of (type_definition_name); CREATE INDEX ix_type_definition_all_of_all_of_id ON type_definition_all_of (all_of_id); +CREATE INDEX ix_type_definition_all_of_type_definition_name ON type_definition_all_of (type_definition_name); CREATE TABLE type_definition_in_subset ( type_definition_name TEXT, @@ -5832,8 +5838,8 @@ CREATE TABLE type_definition_in_subset ( FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_type_definition_in_subset_type_definition_name ON type_definition_in_subset (type_definition_name); CREATE INDEX ix_type_definition_in_subset_in_subset_name ON type_definition_in_subset (in_subset_name); +CREATE INDEX ix_type_definition_in_subset_type_definition_name ON type_definition_in_subset (type_definition_name); CREATE TABLE subset_definition_id_prefixes ( subset_definition_name TEXT, @@ -5868,8 +5874,8 @@ CREATE TABLE subset_definition_todos ( PRIMARY KEY (subset_definition_name, todos), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_todos_subset_definition_name ON subset_definition_todos (subset_definition_name); CREATE INDEX ix_subset_definition_todos_todos ON subset_definition_todos (todos); +CREATE INDEX ix_subset_definition_todos_subset_definition_name ON subset_definition_todos (subset_definition_name); CREATE TABLE subset_definition_notes ( subset_definition_name TEXT, @@ -5886,8 +5892,8 @@ CREATE TABLE subset_definition_comments ( PRIMARY KEY (subset_definition_name, comments), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_comments_comments ON subset_definition_comments (comments); CREATE INDEX ix_subset_definition_comments_subset_definition_name ON subset_definition_comments (subset_definition_name); +CREATE INDEX ix_subset_definition_comments_comments ON subset_definition_comments (comments); CREATE TABLE subset_definition_in_subset ( subset_definition_name TEXT, @@ -5905,8 +5911,8 @@ CREATE TABLE subset_definition_see_also ( PRIMARY KEY (subset_definition_name, see_also), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_see_also_see_also ON subset_definition_see_also (see_also); CREATE INDEX ix_subset_definition_see_also_subset_definition_name ON subset_definition_see_also (subset_definition_name); +CREATE INDEX ix_subset_definition_see_also_see_also ON subset_definition_see_also (see_also); CREATE TABLE subset_definition_aliases ( subset_definition_name TEXT, @@ -5923,8 +5929,8 @@ CREATE TABLE subset_definition_mappings ( PRIMARY KEY (subset_definition_name, mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_mappings_subset_definition_name ON subset_definition_mappings (subset_definition_name); CREATE INDEX ix_subset_definition_mappings_mappings ON subset_definition_mappings (mappings); +CREATE INDEX ix_subset_definition_mappings_subset_definition_name ON subset_definition_mappings (subset_definition_name); CREATE TABLE subset_definition_exact_mappings ( subset_definition_name TEXT, @@ -5950,8 +5956,8 @@ CREATE TABLE subset_definition_related_mappings ( PRIMARY KEY (subset_definition_name, related_mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_related_mappings_subset_definition_name ON subset_definition_related_mappings (subset_definition_name); CREATE INDEX ix_subset_definition_related_mappings_related_mappings ON subset_definition_related_mappings (related_mappings); +CREATE INDEX ix_subset_definition_related_mappings_subset_definition_name ON subset_definition_related_mappings (subset_definition_name); CREATE TABLE subset_definition_narrow_mappings ( subset_definition_name TEXT, @@ -5968,8 +5974,8 @@ CREATE TABLE subset_definition_broad_mappings ( PRIMARY KEY (subset_definition_name, broad_mappings), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_broad_mappings_subset_definition_name ON subset_definition_broad_mappings (subset_definition_name); CREATE INDEX ix_subset_definition_broad_mappings_broad_mappings ON subset_definition_broad_mappings (broad_mappings); +CREATE INDEX ix_subset_definition_broad_mappings_subset_definition_name ON subset_definition_broad_mappings (subset_definition_name); CREATE TABLE subset_definition_contributors ( subset_definition_name TEXT, @@ -5977,8 +5983,8 @@ CREATE TABLE subset_definition_contributors ( PRIMARY KEY (subset_definition_name, contributors), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_contributors_subset_definition_name ON subset_definition_contributors (subset_definition_name); CREATE INDEX ix_subset_definition_contributors_contributors ON subset_definition_contributors (contributors); +CREATE INDEX ix_subset_definition_contributors_subset_definition_name ON subset_definition_contributors (subset_definition_name); CREATE TABLE subset_definition_category ( subset_definition_name TEXT, @@ -5995,8 +6001,8 @@ CREATE TABLE subset_definition_keyword ( PRIMARY KEY (subset_definition_name, keyword), FOREIGN KEY(subset_definition_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_subset_definition_keyword_keyword ON subset_definition_keyword (keyword); CREATE INDEX ix_subset_definition_keyword_subset_definition_name ON subset_definition_keyword (subset_definition_name); +CREATE INDEX ix_subset_definition_keyword_keyword ON subset_definition_keyword (keyword); CREATE TABLE definition_in_subset ( definition_name TEXT, @@ -6005,8 +6011,8 @@ CREATE TABLE definition_in_subset ( FOREIGN KEY(definition_name) REFERENCES definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_definition_in_subset_definition_name ON definition_in_subset (definition_name); CREATE INDEX ix_definition_in_subset_in_subset_name ON definition_in_subset (in_subset_name); +CREATE INDEX ix_definition_in_subset_definition_name ON definition_in_subset (definition_name); CREATE TABLE enum_expression_include ( enum_expression_id INTEGER, @@ -6025,8 +6031,8 @@ CREATE TABLE enum_expression_minus ( FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id), FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_enum_expression_minus_enum_expression_id ON enum_expression_minus (enum_expression_id); CREATE INDEX ix_enum_expression_minus_minus_id ON enum_expression_minus (minus_id); +CREATE INDEX ix_enum_expression_minus_enum_expression_id ON enum_expression_minus (enum_expression_id); CREATE TABLE enum_expression_inherits ( enum_expression_id INTEGER, @@ -6044,8 +6050,8 @@ CREATE TABLE enum_expression_concepts ( PRIMARY KEY (enum_expression_id, concepts), FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id) ); -CREATE INDEX ix_enum_expression_concepts_concepts ON enum_expression_concepts (concepts); CREATE INDEX ix_enum_expression_concepts_enum_expression_id ON enum_expression_concepts (enum_expression_id); +CREATE INDEX ix_enum_expression_concepts_concepts ON enum_expression_concepts (concepts); CREATE TABLE anonymous_enum_expression_include ( anonymous_enum_expression_id INTEGER, @@ -6054,8 +6060,8 @@ CREATE TABLE anonymous_enum_expression_include ( FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_anonymous_enum_expression_include_anonymous_enum_expression_id ON anonymous_enum_expression_include (anonymous_enum_expression_id); CREATE INDEX ix_anonymous_enum_expression_include_include_id ON anonymous_enum_expression_include (include_id); +CREATE INDEX ix_anonymous_enum_expression_include_anonymous_enum_expression_id ON anonymous_enum_expression_include (anonymous_enum_expression_id); CREATE TABLE anonymous_enum_expression_minus ( anonymous_enum_expression_id INTEGER, @@ -6074,8 +6080,8 @@ CREATE TABLE anonymous_enum_expression_inherits ( FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), FOREIGN KEY(inherits_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_anonymous_enum_expression_inherits_anonymous_enum_expression_id ON anonymous_enum_expression_inherits (anonymous_enum_expression_id); CREATE INDEX ix_anonymous_enum_expression_inherits_inherits_name ON anonymous_enum_expression_inherits (inherits_name); +CREATE INDEX ix_anonymous_enum_expression_inherits_anonymous_enum_expression_id ON anonymous_enum_expression_inherits (anonymous_enum_expression_id); CREATE TABLE anonymous_enum_expression_concepts ( anonymous_enum_expression_id INTEGER, @@ -6083,8 +6089,8 @@ CREATE TABLE anonymous_enum_expression_concepts ( PRIMARY KEY (anonymous_enum_expression_id, concepts), FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_anonymous_enum_expression_concepts_anonymous_enum_expression_id ON anonymous_enum_expression_concepts (anonymous_enum_expression_id); CREATE INDEX ix_anonymous_enum_expression_concepts_concepts ON anonymous_enum_expression_concepts (concepts); +CREATE INDEX ix_anonymous_enum_expression_concepts_anonymous_enum_expression_id ON anonymous_enum_expression_concepts (anonymous_enum_expression_id); CREATE TABLE enum_definition_include ( enum_definition_name TEXT, @@ -6093,8 +6099,8 @@ CREATE TABLE enum_definition_include ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_enum_definition_include_enum_definition_name ON enum_definition_include (enum_definition_name); CREATE INDEX ix_enum_definition_include_include_id ON enum_definition_include (include_id); +CREATE INDEX ix_enum_definition_include_enum_definition_name ON enum_definition_include (enum_definition_name); CREATE TABLE enum_definition_minus ( enum_definition_name TEXT, @@ -6103,8 +6109,8 @@ CREATE TABLE enum_definition_minus ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) ); -CREATE INDEX ix_enum_definition_minus_enum_definition_name ON enum_definition_minus (enum_definition_name); CREATE INDEX ix_enum_definition_minus_minus_id ON enum_definition_minus (minus_id); +CREATE INDEX ix_enum_definition_minus_enum_definition_name ON enum_definition_minus (enum_definition_name); CREATE TABLE enum_definition_inherits ( enum_definition_name TEXT, @@ -6113,8 +6119,8 @@ CREATE TABLE enum_definition_inherits ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(inherits_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_inherits_enum_definition_name ON enum_definition_inherits (enum_definition_name); CREATE INDEX ix_enum_definition_inherits_inherits_name ON enum_definition_inherits (inherits_name); +CREATE INDEX ix_enum_definition_inherits_enum_definition_name ON enum_definition_inherits (enum_definition_name); CREATE TABLE enum_definition_concepts ( enum_definition_name TEXT, @@ -6122,8 +6128,8 @@ CREATE TABLE enum_definition_concepts ( PRIMARY KEY (enum_definition_name, concepts), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_concepts_concepts ON enum_definition_concepts (concepts); CREATE INDEX ix_enum_definition_concepts_enum_definition_name ON enum_definition_concepts (enum_definition_name); +CREATE INDEX ix_enum_definition_concepts_concepts ON enum_definition_concepts (concepts); CREATE TABLE enum_definition_mixins ( enum_definition_name TEXT, @@ -6132,8 +6138,8 @@ CREATE TABLE enum_definition_mixins ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(mixins_name) REFERENCES definition (name) ); -CREATE INDEX ix_enum_definition_mixins_enum_definition_name ON enum_definition_mixins (enum_definition_name); CREATE INDEX ix_enum_definition_mixins_mixins_name ON enum_definition_mixins (mixins_name); +CREATE INDEX ix_enum_definition_mixins_enum_definition_name ON enum_definition_mixins (enum_definition_name); CREATE TABLE enum_definition_apply_to ( enum_definition_name TEXT, @@ -6142,8 +6148,8 @@ CREATE TABLE enum_definition_apply_to ( FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), FOREIGN KEY(apply_to_name) REFERENCES definition (name) ); -CREATE INDEX ix_enum_definition_apply_to_enum_definition_name ON enum_definition_apply_to (enum_definition_name); CREATE INDEX ix_enum_definition_apply_to_apply_to_name ON enum_definition_apply_to (apply_to_name); +CREATE INDEX ix_enum_definition_apply_to_enum_definition_name ON enum_definition_apply_to (enum_definition_name); CREATE TABLE enum_definition_values_from ( enum_definition_name TEXT, @@ -6178,8 +6184,8 @@ CREATE TABLE enum_definition_instantiates ( PRIMARY KEY (enum_definition_name, instantiates), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_instantiates_enum_definition_name ON enum_definition_instantiates (enum_definition_name); CREATE INDEX ix_enum_definition_instantiates_instantiates ON enum_definition_instantiates (instantiates); +CREATE INDEX ix_enum_definition_instantiates_enum_definition_name ON enum_definition_instantiates (enum_definition_name); CREATE TABLE enum_definition_todos ( enum_definition_name TEXT, @@ -6187,8 +6193,8 @@ CREATE TABLE enum_definition_todos ( PRIMARY KEY (enum_definition_name, todos), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_todos_enum_definition_name ON enum_definition_todos (enum_definition_name); CREATE INDEX ix_enum_definition_todos_todos ON enum_definition_todos (todos); +CREATE INDEX ix_enum_definition_todos_enum_definition_name ON enum_definition_todos (enum_definition_name); CREATE TABLE enum_definition_notes ( enum_definition_name TEXT, @@ -6196,8 +6202,8 @@ CREATE TABLE enum_definition_notes ( PRIMARY KEY (enum_definition_name, notes), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_notes_notes ON enum_definition_notes (notes); CREATE INDEX ix_enum_definition_notes_enum_definition_name ON enum_definition_notes (enum_definition_name); +CREATE INDEX ix_enum_definition_notes_notes ON enum_definition_notes (notes); CREATE TABLE enum_definition_comments ( enum_definition_name TEXT, @@ -6205,8 +6211,8 @@ CREATE TABLE enum_definition_comments ( PRIMARY KEY (enum_definition_name, comments), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_comments_enum_definition_name ON enum_definition_comments (enum_definition_name); CREATE INDEX ix_enum_definition_comments_comments ON enum_definition_comments (comments); +CREATE INDEX ix_enum_definition_comments_enum_definition_name ON enum_definition_comments (enum_definition_name); CREATE TABLE enum_definition_in_subset ( enum_definition_name TEXT, @@ -6224,8 +6230,8 @@ CREATE TABLE enum_definition_see_also ( PRIMARY KEY (enum_definition_name, see_also), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_see_also_enum_definition_name ON enum_definition_see_also (enum_definition_name); CREATE INDEX ix_enum_definition_see_also_see_also ON enum_definition_see_also (see_also); +CREATE INDEX ix_enum_definition_see_also_enum_definition_name ON enum_definition_see_also (enum_definition_name); CREATE TABLE enum_definition_aliases ( enum_definition_name TEXT, @@ -6233,8 +6239,8 @@ CREATE TABLE enum_definition_aliases ( PRIMARY KEY (enum_definition_name, aliases), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_aliases_enum_definition_name ON enum_definition_aliases (enum_definition_name); CREATE INDEX ix_enum_definition_aliases_aliases ON enum_definition_aliases (aliases); +CREATE INDEX ix_enum_definition_aliases_enum_definition_name ON enum_definition_aliases (enum_definition_name); CREATE TABLE enum_definition_mappings ( enum_definition_name TEXT, @@ -6251,8 +6257,8 @@ CREATE TABLE enum_definition_exact_mappings ( PRIMARY KEY (enum_definition_name, exact_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_exact_mappings_exact_mappings ON enum_definition_exact_mappings (exact_mappings); CREATE INDEX ix_enum_definition_exact_mappings_enum_definition_name ON enum_definition_exact_mappings (enum_definition_name); +CREATE INDEX ix_enum_definition_exact_mappings_exact_mappings ON enum_definition_exact_mappings (exact_mappings); CREATE TABLE enum_definition_close_mappings ( enum_definition_name TEXT, @@ -6269,8 +6275,8 @@ CREATE TABLE enum_definition_related_mappings ( PRIMARY KEY (enum_definition_name, related_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_related_mappings_enum_definition_name ON enum_definition_related_mappings (enum_definition_name); CREATE INDEX ix_enum_definition_related_mappings_related_mappings ON enum_definition_related_mappings (related_mappings); +CREATE INDEX ix_enum_definition_related_mappings_enum_definition_name ON enum_definition_related_mappings (enum_definition_name); CREATE TABLE enum_definition_narrow_mappings ( enum_definition_name TEXT, @@ -6278,8 +6284,8 @@ CREATE TABLE enum_definition_narrow_mappings ( PRIMARY KEY (enum_definition_name, narrow_mappings), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_narrow_mappings_enum_definition_name ON enum_definition_narrow_mappings (enum_definition_name); CREATE INDEX ix_enum_definition_narrow_mappings_narrow_mappings ON enum_definition_narrow_mappings (narrow_mappings); +CREATE INDEX ix_enum_definition_narrow_mappings_enum_definition_name ON enum_definition_narrow_mappings (enum_definition_name); CREATE TABLE enum_definition_broad_mappings ( enum_definition_name TEXT, @@ -6296,8 +6302,8 @@ CREATE TABLE enum_definition_contributors ( PRIMARY KEY (enum_definition_name, contributors), FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) ); -CREATE INDEX ix_enum_definition_contributors_enum_definition_name ON enum_definition_contributors (enum_definition_name); CREATE INDEX ix_enum_definition_contributors_contributors ON enum_definition_contributors (contributors); +CREATE INDEX ix_enum_definition_contributors_enum_definition_name ON enum_definition_contributors (enum_definition_name); CREATE TABLE enum_definition_category ( enum_definition_name TEXT, @@ -6324,8 +6330,8 @@ CREATE TABLE anonymous_expression_in_subset ( FOREIGN KEY(anonymous_expression_id) REFERENCES anonymous_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_anonymous_expression_in_subset_anonymous_expression_id ON anonymous_expression_in_subset (anonymous_expression_id); CREATE INDEX ix_anonymous_expression_in_subset_in_subset_name ON anonymous_expression_in_subset (in_subset_name); +CREATE INDEX ix_anonymous_expression_in_subset_anonymous_expression_id ON anonymous_expression_in_subset (anonymous_expression_id); CREATE TABLE path_expression_in_subset ( path_expression_id INTEGER, @@ -6344,8 +6350,8 @@ CREATE TABLE anonymous_slot_expression_in_subset ( FOREIGN KEY(anonymous_slot_expression_id) REFERENCES anonymous_slot_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_anonymous_slot_expression_in_subset_anonymous_slot_expression_id ON anonymous_slot_expression_in_subset (anonymous_slot_expression_id); CREATE INDEX ix_anonymous_slot_expression_in_subset_in_subset_name ON anonymous_slot_expression_in_subset (in_subset_name); +CREATE INDEX ix_anonymous_slot_expression_in_subset_anonymous_slot_expression_id ON anonymous_slot_expression_in_subset (anonymous_slot_expression_id); CREATE TABLE slot_definition_type_mappings ( slot_definition_name TEXT, @@ -6354,8 +6360,8 @@ CREATE TABLE slot_definition_type_mappings ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(type_mappings_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_slot_definition_type_mappings_slot_definition_name ON slot_definition_type_mappings (slot_definition_name); CREATE INDEX ix_slot_definition_type_mappings_type_mappings_framework ON slot_definition_type_mappings (type_mappings_framework); +CREATE INDEX ix_slot_definition_type_mappings_slot_definition_name ON slot_definition_type_mappings (slot_definition_name); CREATE TABLE slot_definition_in_subset ( slot_definition_name TEXT, @@ -6364,8 +6370,8 @@ CREATE TABLE slot_definition_in_subset ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_slot_definition_in_subset_slot_definition_name ON slot_definition_in_subset (slot_definition_name); CREATE INDEX ix_slot_definition_in_subset_in_subset_name ON slot_definition_in_subset (in_subset_name); +CREATE INDEX ix_slot_definition_in_subset_slot_definition_name ON slot_definition_in_subset (slot_definition_name); CREATE TABLE anonymous_class_expression_in_subset ( anonymous_class_expression_id INTEGER, @@ -6374,8 +6380,8 @@ CREATE TABLE anonymous_class_expression_in_subset ( FOREIGN KEY(anonymous_class_expression_id) REFERENCES anonymous_class_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_anonymous_class_expression_in_subset_in_subset_name ON anonymous_class_expression_in_subset (in_subset_name); CREATE INDEX ix_anonymous_class_expression_in_subset_anonymous_class_expression_id ON anonymous_class_expression_in_subset (anonymous_class_expression_id); +CREATE INDEX ix_anonymous_class_expression_in_subset_in_subset_name ON anonymous_class_expression_in_subset (in_subset_name); CREATE TABLE class_definition_in_subset ( class_definition_name TEXT, @@ -6384,8 +6390,8 @@ CREATE TABLE class_definition_in_subset ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_class_definition_in_subset_in_subset_name ON class_definition_in_subset (in_subset_name); CREATE INDEX ix_class_definition_in_subset_class_definition_name ON class_definition_in_subset (class_definition_name); +CREATE INDEX ix_class_definition_in_subset_in_subset_name ON class_definition_in_subset (in_subset_name); CREATE TABLE class_rule_todos ( class_rule_id INTEGER, @@ -6393,8 +6399,8 @@ CREATE TABLE class_rule_todos ( PRIMARY KEY (class_rule_id, todos), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_todos_class_rule_id ON class_rule_todos (class_rule_id); CREATE INDEX ix_class_rule_todos_todos ON class_rule_todos (todos); +CREATE INDEX ix_class_rule_todos_class_rule_id ON class_rule_todos (class_rule_id); CREATE TABLE class_rule_notes ( class_rule_id INTEGER, @@ -6411,8 +6417,8 @@ CREATE TABLE class_rule_comments ( PRIMARY KEY (class_rule_id, comments), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_comments_class_rule_id ON class_rule_comments (class_rule_id); CREATE INDEX ix_class_rule_comments_comments ON class_rule_comments (comments); +CREATE INDEX ix_class_rule_comments_class_rule_id ON class_rule_comments (class_rule_id); CREATE TABLE class_rule_in_subset ( class_rule_id INTEGER, @@ -6430,8 +6436,8 @@ CREATE TABLE class_rule_see_also ( PRIMARY KEY (class_rule_id, see_also), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_see_also_class_rule_id ON class_rule_see_also (class_rule_id); CREATE INDEX ix_class_rule_see_also_see_also ON class_rule_see_also (see_also); +CREATE INDEX ix_class_rule_see_also_class_rule_id ON class_rule_see_also (class_rule_id); CREATE TABLE class_rule_aliases ( class_rule_id INTEGER, @@ -6439,8 +6445,8 @@ CREATE TABLE class_rule_aliases ( PRIMARY KEY (class_rule_id, aliases), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_aliases_class_rule_id ON class_rule_aliases (class_rule_id); CREATE INDEX ix_class_rule_aliases_aliases ON class_rule_aliases (aliases); +CREATE INDEX ix_class_rule_aliases_class_rule_id ON class_rule_aliases (class_rule_id); CREATE TABLE class_rule_mappings ( class_rule_id INTEGER, @@ -6457,8 +6463,8 @@ CREATE TABLE class_rule_exact_mappings ( PRIMARY KEY (class_rule_id, exact_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_exact_mappings_exact_mappings ON class_rule_exact_mappings (exact_mappings); CREATE INDEX ix_class_rule_exact_mappings_class_rule_id ON class_rule_exact_mappings (class_rule_id); +CREATE INDEX ix_class_rule_exact_mappings_exact_mappings ON class_rule_exact_mappings (exact_mappings); CREATE TABLE class_rule_close_mappings ( class_rule_id INTEGER, @@ -6466,8 +6472,8 @@ CREATE TABLE class_rule_close_mappings ( PRIMARY KEY (class_rule_id, close_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_close_mappings_close_mappings ON class_rule_close_mappings (close_mappings); CREATE INDEX ix_class_rule_close_mappings_class_rule_id ON class_rule_close_mappings (class_rule_id); +CREATE INDEX ix_class_rule_close_mappings_close_mappings ON class_rule_close_mappings (close_mappings); CREATE TABLE class_rule_related_mappings ( class_rule_id INTEGER, @@ -6484,8 +6490,8 @@ CREATE TABLE class_rule_narrow_mappings ( PRIMARY KEY (class_rule_id, narrow_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_narrow_mappings_class_rule_id ON class_rule_narrow_mappings (class_rule_id); CREATE INDEX ix_class_rule_narrow_mappings_narrow_mappings ON class_rule_narrow_mappings (narrow_mappings); +CREATE INDEX ix_class_rule_narrow_mappings_class_rule_id ON class_rule_narrow_mappings (class_rule_id); CREATE TABLE class_rule_broad_mappings ( class_rule_id INTEGER, @@ -6493,8 +6499,8 @@ CREATE TABLE class_rule_broad_mappings ( PRIMARY KEY (class_rule_id, broad_mappings), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_broad_mappings_class_rule_id ON class_rule_broad_mappings (class_rule_id); CREATE INDEX ix_class_rule_broad_mappings_broad_mappings ON class_rule_broad_mappings (broad_mappings); +CREATE INDEX ix_class_rule_broad_mappings_class_rule_id ON class_rule_broad_mappings (class_rule_id); CREATE TABLE class_rule_contributors ( class_rule_id INTEGER, @@ -6511,8 +6517,8 @@ CREATE TABLE class_rule_category ( PRIMARY KEY (class_rule_id, category), FOREIGN KEY(class_rule_id) REFERENCES class_rule (id) ); -CREATE INDEX ix_class_rule_category_category ON class_rule_category (category); CREATE INDEX ix_class_rule_category_class_rule_id ON class_rule_category (class_rule_id); +CREATE INDEX ix_class_rule_category_category ON class_rule_category (category); CREATE TABLE class_rule_keyword ( class_rule_id INTEGER, @@ -6548,8 +6554,8 @@ CREATE TABLE array_expression_notes ( PRIMARY KEY (array_expression_id, notes), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_notes_notes ON array_expression_notes (notes); CREATE INDEX ix_array_expression_notes_array_expression_id ON array_expression_notes (array_expression_id); +CREATE INDEX ix_array_expression_notes_notes ON array_expression_notes (notes); CREATE TABLE array_expression_comments ( array_expression_id INTEGER, @@ -6557,8 +6563,8 @@ CREATE TABLE array_expression_comments ( PRIMARY KEY (array_expression_id, comments), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_comments_array_expression_id ON array_expression_comments (array_expression_id); CREATE INDEX ix_array_expression_comments_comments ON array_expression_comments (comments); +CREATE INDEX ix_array_expression_comments_array_expression_id ON array_expression_comments (array_expression_id); CREATE TABLE array_expression_in_subset ( array_expression_id INTEGER, @@ -6567,8 +6573,8 @@ CREATE TABLE array_expression_in_subset ( FOREIGN KEY(array_expression_id) REFERENCES array_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_array_expression_in_subset_array_expression_id ON array_expression_in_subset (array_expression_id); CREATE INDEX ix_array_expression_in_subset_in_subset_name ON array_expression_in_subset (in_subset_name); +CREATE INDEX ix_array_expression_in_subset_array_expression_id ON array_expression_in_subset (array_expression_id); CREATE TABLE array_expression_see_also ( array_expression_id INTEGER, @@ -6576,8 +6582,8 @@ CREATE TABLE array_expression_see_also ( PRIMARY KEY (array_expression_id, see_also), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_see_also_array_expression_id ON array_expression_see_also (array_expression_id); CREATE INDEX ix_array_expression_see_also_see_also ON array_expression_see_also (see_also); +CREATE INDEX ix_array_expression_see_also_array_expression_id ON array_expression_see_also (array_expression_id); CREATE TABLE array_expression_aliases ( array_expression_id INTEGER, @@ -6594,8 +6600,8 @@ CREATE TABLE array_expression_mappings ( PRIMARY KEY (array_expression_id, mappings), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_mappings_array_expression_id ON array_expression_mappings (array_expression_id); CREATE INDEX ix_array_expression_mappings_mappings ON array_expression_mappings (mappings); +CREATE INDEX ix_array_expression_mappings_array_expression_id ON array_expression_mappings (array_expression_id); CREATE TABLE array_expression_exact_mappings ( array_expression_id INTEGER, @@ -6612,8 +6618,8 @@ CREATE TABLE array_expression_close_mappings ( PRIMARY KEY (array_expression_id, close_mappings), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_close_mappings_array_expression_id ON array_expression_close_mappings (array_expression_id); CREATE INDEX ix_array_expression_close_mappings_close_mappings ON array_expression_close_mappings (close_mappings); +CREATE INDEX ix_array_expression_close_mappings_array_expression_id ON array_expression_close_mappings (array_expression_id); CREATE TABLE array_expression_related_mappings ( array_expression_id INTEGER, @@ -6630,8 +6636,8 @@ CREATE TABLE array_expression_narrow_mappings ( PRIMARY KEY (array_expression_id, narrow_mappings), FOREIGN KEY(array_expression_id) REFERENCES array_expression (id) ); -CREATE INDEX ix_array_expression_narrow_mappings_array_expression_id ON array_expression_narrow_mappings (array_expression_id); CREATE INDEX ix_array_expression_narrow_mappings_narrow_mappings ON array_expression_narrow_mappings (narrow_mappings); +CREATE INDEX ix_array_expression_narrow_mappings_array_expression_id ON array_expression_narrow_mappings (array_expression_id); CREATE TABLE array_expression_broad_mappings ( array_expression_id INTEGER, @@ -6676,8 +6682,8 @@ CREATE TABLE dimension_expression_in_subset ( FOREIGN KEY(dimension_expression_id) REFERENCES dimension_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_dimension_expression_in_subset_dimension_expression_id ON dimension_expression_in_subset (dimension_expression_id); CREATE INDEX ix_dimension_expression_in_subset_in_subset_name ON dimension_expression_in_subset (in_subset_name); +CREATE INDEX ix_dimension_expression_in_subset_dimension_expression_id ON dimension_expression_in_subset (dimension_expression_id); CREATE TABLE pattern_expression_in_subset ( pattern_expression_id INTEGER, @@ -6686,8 +6692,8 @@ CREATE TABLE pattern_expression_in_subset ( FOREIGN KEY(pattern_expression_id) REFERENCES pattern_expression (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_pattern_expression_in_subset_pattern_expression_id ON pattern_expression_in_subset (pattern_expression_id); CREATE INDEX ix_pattern_expression_in_subset_in_subset_name ON pattern_expression_in_subset (in_subset_name); +CREATE INDEX ix_pattern_expression_in_subset_pattern_expression_id ON pattern_expression_in_subset (pattern_expression_id); CREATE TABLE import_expression_in_subset ( import_expression_id INTEGER, @@ -6715,8 +6721,8 @@ CREATE TABLE unique_key_todos ( PRIMARY KEY (unique_key_unique_key_name, todos), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_todos_todos ON unique_key_todos (todos); CREATE INDEX ix_unique_key_todos_unique_key_unique_key_name ON unique_key_todos (unique_key_unique_key_name); +CREATE INDEX ix_unique_key_todos_todos ON unique_key_todos (todos); CREATE TABLE unique_key_notes ( unique_key_unique_key_name TEXT, @@ -6733,8 +6739,8 @@ CREATE TABLE unique_key_comments ( PRIMARY KEY (unique_key_unique_key_name, comments), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_comments_unique_key_unique_key_name ON unique_key_comments (unique_key_unique_key_name); CREATE INDEX ix_unique_key_comments_comments ON unique_key_comments (comments); +CREATE INDEX ix_unique_key_comments_unique_key_unique_key_name ON unique_key_comments (unique_key_unique_key_name); CREATE TABLE unique_key_in_subset ( unique_key_unique_key_name TEXT, @@ -6752,8 +6758,8 @@ CREATE TABLE unique_key_see_also ( PRIMARY KEY (unique_key_unique_key_name, see_also), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_see_also_unique_key_unique_key_name ON unique_key_see_also (unique_key_unique_key_name); CREATE INDEX ix_unique_key_see_also_see_also ON unique_key_see_also (see_also); +CREATE INDEX ix_unique_key_see_also_unique_key_unique_key_name ON unique_key_see_also (unique_key_unique_key_name); CREATE TABLE unique_key_aliases ( unique_key_unique_key_name TEXT, @@ -6770,8 +6776,8 @@ CREATE TABLE unique_key_mappings ( PRIMARY KEY (unique_key_unique_key_name, mappings), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_mappings_unique_key_unique_key_name ON unique_key_mappings (unique_key_unique_key_name); CREATE INDEX ix_unique_key_mappings_mappings ON unique_key_mappings (mappings); +CREATE INDEX ix_unique_key_mappings_unique_key_unique_key_name ON unique_key_mappings (unique_key_unique_key_name); CREATE TABLE unique_key_exact_mappings ( unique_key_unique_key_name TEXT, @@ -6788,8 +6794,8 @@ CREATE TABLE unique_key_close_mappings ( PRIMARY KEY (unique_key_unique_key_name, close_mappings), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_close_mappings_unique_key_unique_key_name ON unique_key_close_mappings (unique_key_unique_key_name); CREATE INDEX ix_unique_key_close_mappings_close_mappings ON unique_key_close_mappings (close_mappings); +CREATE INDEX ix_unique_key_close_mappings_unique_key_unique_key_name ON unique_key_close_mappings (unique_key_unique_key_name); CREATE TABLE unique_key_related_mappings ( unique_key_unique_key_name TEXT, @@ -6797,8 +6803,8 @@ CREATE TABLE unique_key_related_mappings ( PRIMARY KEY (unique_key_unique_key_name, related_mappings), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_related_mappings_unique_key_unique_key_name ON unique_key_related_mappings (unique_key_unique_key_name); CREATE INDEX ix_unique_key_related_mappings_related_mappings ON unique_key_related_mappings (related_mappings); +CREATE INDEX ix_unique_key_related_mappings_unique_key_unique_key_name ON unique_key_related_mappings (unique_key_unique_key_name); CREATE TABLE unique_key_narrow_mappings ( unique_key_unique_key_name TEXT, @@ -6806,8 +6812,8 @@ CREATE TABLE unique_key_narrow_mappings ( PRIMARY KEY (unique_key_unique_key_name, narrow_mappings), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_narrow_mappings_unique_key_unique_key_name ON unique_key_narrow_mappings (unique_key_unique_key_name); CREATE INDEX ix_unique_key_narrow_mappings_narrow_mappings ON unique_key_narrow_mappings (narrow_mappings); +CREATE INDEX ix_unique_key_narrow_mappings_unique_key_unique_key_name ON unique_key_narrow_mappings (unique_key_unique_key_name); CREATE TABLE unique_key_broad_mappings ( unique_key_unique_key_name TEXT, @@ -6815,8 +6821,8 @@ CREATE TABLE unique_key_broad_mappings ( PRIMARY KEY (unique_key_unique_key_name, broad_mappings), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_broad_mappings_broad_mappings ON unique_key_broad_mappings (broad_mappings); CREATE INDEX ix_unique_key_broad_mappings_unique_key_unique_key_name ON unique_key_broad_mappings (unique_key_unique_key_name); +CREATE INDEX ix_unique_key_broad_mappings_broad_mappings ON unique_key_broad_mappings (broad_mappings); CREATE TABLE unique_key_contributors ( unique_key_unique_key_name TEXT, @@ -6833,8 +6839,8 @@ CREATE TABLE unique_key_category ( PRIMARY KEY (unique_key_unique_key_name, category), FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name) ); -CREATE INDEX ix_unique_key_category_category ON unique_key_category (category); CREATE INDEX ix_unique_key_category_unique_key_unique_key_name ON unique_key_category (unique_key_unique_key_name); +CREATE INDEX ix_unique_key_category_category ON unique_key_category (category); CREATE TABLE unique_key_keyword ( unique_key_unique_key_name TEXT, @@ -6851,8 +6857,8 @@ CREATE TABLE type_mapping_todos ( PRIMARY KEY (type_mapping_framework, todos), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_todos_type_mapping_framework ON type_mapping_todos (type_mapping_framework); CREATE INDEX ix_type_mapping_todos_todos ON type_mapping_todos (todos); +CREATE INDEX ix_type_mapping_todos_type_mapping_framework ON type_mapping_todos (type_mapping_framework); CREATE TABLE type_mapping_notes ( type_mapping_framework TEXT, @@ -6860,8 +6866,8 @@ CREATE TABLE type_mapping_notes ( PRIMARY KEY (type_mapping_framework, notes), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_notes_notes ON type_mapping_notes (notes); CREATE INDEX ix_type_mapping_notes_type_mapping_framework ON type_mapping_notes (type_mapping_framework); +CREATE INDEX ix_type_mapping_notes_notes ON type_mapping_notes (notes); CREATE TABLE type_mapping_comments ( type_mapping_framework TEXT, @@ -6879,8 +6885,8 @@ CREATE TABLE type_mapping_in_subset ( FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_type_mapping_in_subset_in_subset_name ON type_mapping_in_subset (in_subset_name); CREATE INDEX ix_type_mapping_in_subset_type_mapping_framework ON type_mapping_in_subset (type_mapping_framework); +CREATE INDEX ix_type_mapping_in_subset_in_subset_name ON type_mapping_in_subset (in_subset_name); CREATE TABLE type_mapping_see_also ( type_mapping_framework TEXT, @@ -6888,8 +6894,8 @@ CREATE TABLE type_mapping_see_also ( PRIMARY KEY (type_mapping_framework, see_also), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_see_also_type_mapping_framework ON type_mapping_see_also (type_mapping_framework); CREATE INDEX ix_type_mapping_see_also_see_also ON type_mapping_see_also (see_also); +CREATE INDEX ix_type_mapping_see_also_type_mapping_framework ON type_mapping_see_also (type_mapping_framework); CREATE TABLE type_mapping_aliases ( type_mapping_framework TEXT, @@ -6897,8 +6903,8 @@ CREATE TABLE type_mapping_aliases ( PRIMARY KEY (type_mapping_framework, aliases), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_aliases_type_mapping_framework ON type_mapping_aliases (type_mapping_framework); CREATE INDEX ix_type_mapping_aliases_aliases ON type_mapping_aliases (aliases); +CREATE INDEX ix_type_mapping_aliases_type_mapping_framework ON type_mapping_aliases (type_mapping_framework); CREATE TABLE type_mapping_mappings ( type_mapping_framework TEXT, @@ -6915,8 +6921,8 @@ CREATE TABLE type_mapping_exact_mappings ( PRIMARY KEY (type_mapping_framework, exact_mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_exact_mappings_exact_mappings ON type_mapping_exact_mappings (exact_mappings); CREATE INDEX ix_type_mapping_exact_mappings_type_mapping_framework ON type_mapping_exact_mappings (type_mapping_framework); +CREATE INDEX ix_type_mapping_exact_mappings_exact_mappings ON type_mapping_exact_mappings (exact_mappings); CREATE TABLE type_mapping_close_mappings ( type_mapping_framework TEXT, @@ -6951,8 +6957,8 @@ CREATE TABLE type_mapping_broad_mappings ( PRIMARY KEY (type_mapping_framework, broad_mappings), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_broad_mappings_type_mapping_framework ON type_mapping_broad_mappings (type_mapping_framework); CREATE INDEX ix_type_mapping_broad_mappings_broad_mappings ON type_mapping_broad_mappings (broad_mappings); +CREATE INDEX ix_type_mapping_broad_mappings_type_mapping_framework ON type_mapping_broad_mappings (type_mapping_framework); CREATE TABLE type_mapping_contributors ( type_mapping_framework TEXT, @@ -6960,8 +6966,8 @@ CREATE TABLE type_mapping_contributors ( PRIMARY KEY (type_mapping_framework, contributors), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_contributors_type_mapping_framework ON type_mapping_contributors (type_mapping_framework); CREATE INDEX ix_type_mapping_contributors_contributors ON type_mapping_contributors (contributors); +CREATE INDEX ix_type_mapping_contributors_type_mapping_framework ON type_mapping_contributors (type_mapping_framework); CREATE TABLE type_mapping_category ( type_mapping_framework TEXT, @@ -6978,8 +6984,8 @@ CREATE TABLE type_mapping_keyword ( PRIMARY KEY (type_mapping_framework, keyword), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX ix_type_mapping_keyword_type_mapping_framework ON type_mapping_keyword (type_mapping_framework); CREATE INDEX ix_type_mapping_keyword_keyword ON type_mapping_keyword (keyword); +CREATE INDEX ix_type_mapping_keyword_type_mapping_framework ON type_mapping_keyword (type_mapping_framework); CREATE TABLE enum_binding ( id INTEGER NOT NULL, @@ -7021,8 +7027,8 @@ CREATE TABLE slot_expression_equals_string_in ( PRIMARY KEY (slot_expression_id, equals_string_in), FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id) ); -CREATE INDEX ix_slot_expression_equals_string_in_slot_expression_id ON slot_expression_equals_string_in (slot_expression_id); CREATE INDEX ix_slot_expression_equals_string_in_equals_string_in ON slot_expression_equals_string_in (equals_string_in); +CREATE INDEX ix_slot_expression_equals_string_in_slot_expression_id ON slot_expression_equals_string_in (slot_expression_id); CREATE TABLE slot_expression_none_of ( slot_expression_id INTEGER, @@ -7031,8 +7037,8 @@ CREATE TABLE slot_expression_none_of ( FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id), FOREIGN KEY(none_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_expression_none_of_none_of_id ON slot_expression_none_of (none_of_id); CREATE INDEX ix_slot_expression_none_of_slot_expression_id ON slot_expression_none_of (slot_expression_id); +CREATE INDEX ix_slot_expression_none_of_none_of_id ON slot_expression_none_of (none_of_id); CREATE TABLE slot_expression_exactly_one_of ( slot_expression_id INTEGER, @@ -7041,8 +7047,8 @@ CREATE TABLE slot_expression_exactly_one_of ( FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id), FOREIGN KEY(exactly_one_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_expression_exactly_one_of_exactly_one_of_id ON slot_expression_exactly_one_of (exactly_one_of_id); CREATE INDEX ix_slot_expression_exactly_one_of_slot_expression_id ON slot_expression_exactly_one_of (slot_expression_id); +CREATE INDEX ix_slot_expression_exactly_one_of_exactly_one_of_id ON slot_expression_exactly_one_of (exactly_one_of_id); CREATE TABLE slot_expression_any_of ( slot_expression_id INTEGER, @@ -7061,8 +7067,8 @@ CREATE TABLE slot_expression_all_of ( FOREIGN KEY(slot_expression_id) REFERENCES slot_expression (id), FOREIGN KEY(all_of_id) REFERENCES anonymous_slot_expression (id) ); -CREATE INDEX ix_slot_expression_all_of_slot_expression_id ON slot_expression_all_of (slot_expression_id); CREATE INDEX ix_slot_expression_all_of_all_of_id ON slot_expression_all_of (all_of_id); +CREATE INDEX ix_slot_expression_all_of_slot_expression_id ON slot_expression_all_of (slot_expression_id); CREATE TABLE permissible_value_instantiates ( permissible_value_text TEXT, @@ -7070,8 +7076,8 @@ CREATE TABLE permissible_value_instantiates ( PRIMARY KEY (permissible_value_text, instantiates), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_instantiates_permissible_value_text ON permissible_value_instantiates (permissible_value_text); CREATE INDEX ix_permissible_value_instantiates_instantiates ON permissible_value_instantiates (instantiates); +CREATE INDEX ix_permissible_value_instantiates_permissible_value_text ON permissible_value_instantiates (permissible_value_text); CREATE TABLE permissible_value_implements ( permissible_value_text TEXT, @@ -7098,8 +7104,8 @@ CREATE TABLE permissible_value_todos ( PRIMARY KEY (permissible_value_text, todos), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_todos_todos ON permissible_value_todos (todos); CREATE INDEX ix_permissible_value_todos_permissible_value_text ON permissible_value_todos (permissible_value_text); +CREATE INDEX ix_permissible_value_todos_todos ON permissible_value_todos (todos); CREATE TABLE permissible_value_notes ( permissible_value_text TEXT, @@ -7107,8 +7113,8 @@ CREATE TABLE permissible_value_notes ( PRIMARY KEY (permissible_value_text, notes), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_notes_permissible_value_text ON permissible_value_notes (permissible_value_text); CREATE INDEX ix_permissible_value_notes_notes ON permissible_value_notes (notes); +CREATE INDEX ix_permissible_value_notes_permissible_value_text ON permissible_value_notes (permissible_value_text); CREATE TABLE permissible_value_comments ( permissible_value_text TEXT, @@ -7116,8 +7122,8 @@ CREATE TABLE permissible_value_comments ( PRIMARY KEY (permissible_value_text, comments), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_comments_permissible_value_text ON permissible_value_comments (permissible_value_text); CREATE INDEX ix_permissible_value_comments_comments ON permissible_value_comments (comments); +CREATE INDEX ix_permissible_value_comments_permissible_value_text ON permissible_value_comments (permissible_value_text); CREATE TABLE permissible_value_in_subset ( permissible_value_text TEXT, @@ -7126,8 +7132,8 @@ CREATE TABLE permissible_value_in_subset ( FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_permissible_value_in_subset_permissible_value_text ON permissible_value_in_subset (permissible_value_text); CREATE INDEX ix_permissible_value_in_subset_in_subset_name ON permissible_value_in_subset (in_subset_name); +CREATE INDEX ix_permissible_value_in_subset_permissible_value_text ON permissible_value_in_subset (permissible_value_text); CREATE TABLE permissible_value_see_also ( permissible_value_text TEXT, @@ -7135,8 +7141,8 @@ CREATE TABLE permissible_value_see_also ( PRIMARY KEY (permissible_value_text, see_also), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_see_also_permissible_value_text ON permissible_value_see_also (permissible_value_text); CREATE INDEX ix_permissible_value_see_also_see_also ON permissible_value_see_also (see_also); +CREATE INDEX ix_permissible_value_see_also_permissible_value_text ON permissible_value_see_also (permissible_value_text); CREATE TABLE permissible_value_aliases ( permissible_value_text TEXT, @@ -7153,8 +7159,8 @@ CREATE TABLE permissible_value_mappings ( PRIMARY KEY (permissible_value_text, mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_mappings_mappings ON permissible_value_mappings (mappings); CREATE INDEX ix_permissible_value_mappings_permissible_value_text ON permissible_value_mappings (permissible_value_text); +CREATE INDEX ix_permissible_value_mappings_mappings ON permissible_value_mappings (mappings); CREATE TABLE permissible_value_exact_mappings ( permissible_value_text TEXT, @@ -7171,8 +7177,8 @@ CREATE TABLE permissible_value_close_mappings ( PRIMARY KEY (permissible_value_text, close_mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_close_mappings_permissible_value_text ON permissible_value_close_mappings (permissible_value_text); CREATE INDEX ix_permissible_value_close_mappings_close_mappings ON permissible_value_close_mappings (close_mappings); +CREATE INDEX ix_permissible_value_close_mappings_permissible_value_text ON permissible_value_close_mappings (permissible_value_text); CREATE TABLE permissible_value_related_mappings ( permissible_value_text TEXT, @@ -7180,8 +7186,8 @@ CREATE TABLE permissible_value_related_mappings ( PRIMARY KEY (permissible_value_text, related_mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_related_mappings_permissible_value_text ON permissible_value_related_mappings (permissible_value_text); CREATE INDEX ix_permissible_value_related_mappings_related_mappings ON permissible_value_related_mappings (related_mappings); +CREATE INDEX ix_permissible_value_related_mappings_permissible_value_text ON permissible_value_related_mappings (permissible_value_text); CREATE TABLE permissible_value_narrow_mappings ( permissible_value_text TEXT, @@ -7189,8 +7195,8 @@ CREATE TABLE permissible_value_narrow_mappings ( PRIMARY KEY (permissible_value_text, narrow_mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_narrow_mappings_permissible_value_text ON permissible_value_narrow_mappings (permissible_value_text); CREATE INDEX ix_permissible_value_narrow_mappings_narrow_mappings ON permissible_value_narrow_mappings (narrow_mappings); +CREATE INDEX ix_permissible_value_narrow_mappings_permissible_value_text ON permissible_value_narrow_mappings (permissible_value_text); CREATE TABLE permissible_value_broad_mappings ( permissible_value_text TEXT, @@ -7198,8 +7204,8 @@ CREATE TABLE permissible_value_broad_mappings ( PRIMARY KEY (permissible_value_text, broad_mappings), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_broad_mappings_broad_mappings ON permissible_value_broad_mappings (broad_mappings); CREATE INDEX ix_permissible_value_broad_mappings_permissible_value_text ON permissible_value_broad_mappings (permissible_value_text); +CREATE INDEX ix_permissible_value_broad_mappings_broad_mappings ON permissible_value_broad_mappings (broad_mappings); CREATE TABLE permissible_value_contributors ( permissible_value_text TEXT, @@ -7216,8 +7222,8 @@ CREATE TABLE permissible_value_category ( PRIMARY KEY (permissible_value_text, category), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_category_permissible_value_text ON permissible_value_category (permissible_value_text); CREATE INDEX ix_permissible_value_category_category ON permissible_value_category (category); +CREATE INDEX ix_permissible_value_category_permissible_value_text ON permissible_value_category (permissible_value_text); CREATE TABLE permissible_value_keyword ( permissible_value_text TEXT, @@ -7225,8 +7231,8 @@ CREATE TABLE permissible_value_keyword ( PRIMARY KEY (permissible_value_text, keyword), FOREIGN KEY(permissible_value_text) REFERENCES permissible_value (text) ); -CREATE INDEX ix_permissible_value_keyword_permissible_value_text ON permissible_value_keyword (permissible_value_text); CREATE INDEX ix_permissible_value_keyword_keyword ON permissible_value_keyword (keyword); +CREATE INDEX ix_permissible_value_keyword_permissible_value_text ON permissible_value_keyword (permissible_value_text); CREATE TABLE structured_alias ( id INTEGER NOT NULL, @@ -7312,8 +7318,8 @@ CREATE TABLE enum_binding_notes ( PRIMARY KEY (enum_binding_id, notes), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_notes_notes ON enum_binding_notes (notes); CREATE INDEX ix_enum_binding_notes_enum_binding_id ON enum_binding_notes (enum_binding_id); +CREATE INDEX ix_enum_binding_notes_notes ON enum_binding_notes (notes); CREATE TABLE enum_binding_comments ( enum_binding_id INTEGER, @@ -7321,8 +7327,8 @@ CREATE TABLE enum_binding_comments ( PRIMARY KEY (enum_binding_id, comments), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_comments_enum_binding_id ON enum_binding_comments (enum_binding_id); CREATE INDEX ix_enum_binding_comments_comments ON enum_binding_comments (comments); +CREATE INDEX ix_enum_binding_comments_enum_binding_id ON enum_binding_comments (enum_binding_id); CREATE TABLE enum_binding_in_subset ( enum_binding_id INTEGER, @@ -7331,8 +7337,8 @@ CREATE TABLE enum_binding_in_subset ( FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id), FOREIGN KEY(in_subset_name) REFERENCES subset_definition (name) ); -CREATE INDEX ix_enum_binding_in_subset_in_subset_name ON enum_binding_in_subset (in_subset_name); CREATE INDEX ix_enum_binding_in_subset_enum_binding_id ON enum_binding_in_subset (enum_binding_id); +CREATE INDEX ix_enum_binding_in_subset_in_subset_name ON enum_binding_in_subset (in_subset_name); CREATE TABLE enum_binding_see_also ( enum_binding_id INTEGER, @@ -7349,8 +7355,8 @@ CREATE TABLE enum_binding_aliases ( PRIMARY KEY (enum_binding_id, aliases), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_aliases_enum_binding_id ON enum_binding_aliases (enum_binding_id); CREATE INDEX ix_enum_binding_aliases_aliases ON enum_binding_aliases (aliases); +CREATE INDEX ix_enum_binding_aliases_enum_binding_id ON enum_binding_aliases (enum_binding_id); CREATE TABLE enum_binding_mappings ( enum_binding_id INTEGER, @@ -7358,8 +7364,8 @@ CREATE TABLE enum_binding_mappings ( PRIMARY KEY (enum_binding_id, mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_mappings_enum_binding_id ON enum_binding_mappings (enum_binding_id); CREATE INDEX ix_enum_binding_mappings_mappings ON enum_binding_mappings (mappings); +CREATE INDEX ix_enum_binding_mappings_enum_binding_id ON enum_binding_mappings (enum_binding_id); CREATE TABLE enum_binding_exact_mappings ( enum_binding_id INTEGER, @@ -7367,8 +7373,8 @@ CREATE TABLE enum_binding_exact_mappings ( PRIMARY KEY (enum_binding_id, exact_mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_exact_mappings_enum_binding_id ON enum_binding_exact_mappings (enum_binding_id); CREATE INDEX ix_enum_binding_exact_mappings_exact_mappings ON enum_binding_exact_mappings (exact_mappings); +CREATE INDEX ix_enum_binding_exact_mappings_enum_binding_id ON enum_binding_exact_mappings (enum_binding_id); CREATE TABLE enum_binding_close_mappings ( enum_binding_id INTEGER, @@ -7385,8 +7391,8 @@ CREATE TABLE enum_binding_related_mappings ( PRIMARY KEY (enum_binding_id, related_mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_related_mappings_related_mappings ON enum_binding_related_mappings (related_mappings); CREATE INDEX ix_enum_binding_related_mappings_enum_binding_id ON enum_binding_related_mappings (enum_binding_id); +CREATE INDEX ix_enum_binding_related_mappings_related_mappings ON enum_binding_related_mappings (related_mappings); CREATE TABLE enum_binding_narrow_mappings ( enum_binding_id INTEGER, @@ -7403,8 +7409,8 @@ CREATE TABLE enum_binding_broad_mappings ( PRIMARY KEY (enum_binding_id, broad_mappings), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_broad_mappings_enum_binding_id ON enum_binding_broad_mappings (enum_binding_id); CREATE INDEX ix_enum_binding_broad_mappings_broad_mappings ON enum_binding_broad_mappings (broad_mappings); +CREATE INDEX ix_enum_binding_broad_mappings_enum_binding_id ON enum_binding_broad_mappings (enum_binding_id); CREATE TABLE enum_binding_contributors ( enum_binding_id INTEGER, @@ -7412,8 +7418,8 @@ CREATE TABLE enum_binding_contributors ( PRIMARY KEY (enum_binding_id, contributors), FOREIGN KEY(enum_binding_id) REFERENCES enum_binding (id) ); -CREATE INDEX ix_enum_binding_contributors_enum_binding_id ON enum_binding_contributors (enum_binding_id); CREATE INDEX ix_enum_binding_contributors_contributors ON enum_binding_contributors (contributors); +CREATE INDEX ix_enum_binding_contributors_enum_binding_id ON enum_binding_contributors (enum_binding_id); CREATE TABLE enum_binding_category ( enum_binding_id INTEGER, @@ -7563,54 +7569,54 @@ CREATE TABLE alt_description ( FOREIGN KEY(unique_key_unique_key_name) REFERENCES unique_key (unique_key_name), FOREIGN KEY(type_mapping_framework) REFERENCES type_mapping (framework) ); -CREATE INDEX alt_description_structured_alias_id_source_idx ON alt_description (structured_alias_id, source); +CREATE INDEX ix_alt_description_source ON alt_description (source); +CREATE INDEX ix_alt_description_unique_key_unique_key_name ON alt_description (unique_key_unique_key_name); CREATE INDEX ix_alt_description_subset_definition_name ON alt_description (subset_definition_name); -CREATE INDEX ix_alt_description_anonymous_slot_expression_id ON alt_description (anonymous_slot_expression_id); -CREATE INDEX ix_alt_description_description ON alt_description (description); +CREATE INDEX alt_description_element_name_source_idx ON alt_description (element_name, source); +CREATE INDEX alt_description_class_definition_name_source_idx ON alt_description (class_definition_name, source); CREATE INDEX ix_alt_description_dimension_expression_id ON alt_description (dimension_expression_id); +CREATE INDEX alt_description_schema_definition_name_source_idx ON alt_description (schema_definition_name, source); CREATE INDEX alt_description_class_rule_id_source_idx ON alt_description (class_rule_id, source); -CREATE INDEX ix_alt_description_path_expression_id ON alt_description (path_expression_id); -CREATE INDEX ix_alt_description_type_definition_name ON alt_description (type_definition_name); -CREATE INDEX alt_description_definition_name_source_idx ON alt_description (definition_name, source); -CREATE INDEX alt_description_slot_definition_name_source_idx ON alt_description (slot_definition_name, source); -CREATE INDEX alt_description_type_mapping_framework_source_idx ON alt_description (type_mapping_framework, source); -CREATE INDEX ix_alt_description_array_expression_id ON alt_description (array_expression_id); -CREATE INDEX alt_description_pattern_expression_id_source_idx ON alt_description (pattern_expression_id, source); -CREATE INDEX ix_alt_description_enum_definition_name ON alt_description (enum_definition_name); +CREATE INDEX ix_alt_description_anonymous_class_expression_id ON alt_description (anonymous_class_expression_id); +CREATE INDEX ix_alt_description_description ON alt_description (description); +CREATE INDEX alt_description_type_definition_name_source_idx ON alt_description (type_definition_name, source); CREATE INDEX ix_alt_description_anonymous_expression_id ON alt_description (anonymous_expression_id); -CREATE INDEX alt_description_anonymous_expression_id_source_idx ON alt_description (anonymous_expression_id, source); -CREATE INDEX alt_description_import_expression_id_source_idx ON alt_description (import_expression_id, source); -CREATE INDEX ix_alt_description_schema_definition_name ON alt_description (schema_definition_name); +CREATE INDEX alt_description_array_expression_id_source_idx ON alt_description (array_expression_id, source); CREATE INDEX ix_alt_description_type_mapping_framework ON alt_description (type_mapping_framework); +CREATE INDEX ix_alt_description_definition_name ON alt_description (definition_name); +CREATE INDEX alt_description_subset_definition_name_source_idx ON alt_description (subset_definition_name, source); +CREATE INDEX alt_description_dimension_expression_id_source_idx ON alt_description (dimension_expression_id, source); +CREATE INDEX ix_alt_description_pattern_expression_id ON alt_description (pattern_expression_id); +CREATE INDEX alt_description_definition_name_source_idx ON alt_description (definition_name, source); +CREATE INDEX alt_description_pattern_expression_id_source_idx ON alt_description (pattern_expression_id, source); +CREATE INDEX ix_alt_description_common_metadata_id ON alt_description (common_metadata_id); +CREATE INDEX ix_alt_description_class_definition_name ON alt_description (class_definition_name); CREATE INDEX ix_alt_description_element_name ON alt_description (element_name); -CREATE INDEX ix_alt_description_class_rule_id ON alt_description (class_rule_id); -CREATE INDEX alt_description_array_expression_id_source_idx ON alt_description (array_expression_id, source); -CREATE INDEX ix_alt_description_structured_alias_id ON alt_description (structured_alias_id); -CREATE INDEX ix_alt_description_source ON alt_description (source); -CREATE INDEX ix_alt_description_unique_key_unique_key_name ON alt_description (unique_key_unique_key_name); -CREATE INDEX alt_description_common_metadata_id_source_idx ON alt_description (common_metadata_id, source); CREATE INDEX alt_description_enum_definition_name_source_idx ON alt_description (enum_definition_name, source); +CREATE INDEX ix_alt_description_path_expression_id ON alt_description (path_expression_id); +CREATE INDEX alt_description_import_expression_id_source_idx ON alt_description (import_expression_id, source); +CREATE INDEX ix_alt_description_enum_definition_name ON alt_description (enum_definition_name); +CREATE INDEX alt_description_enum_binding_id_source_idx ON alt_description (enum_binding_id, source); +CREATE INDEX alt_description_permissible_value_text_source_idx ON alt_description (permissible_value_text, source); +CREATE INDEX ix_alt_description_import_expression_id ON alt_description (import_expression_id); +CREATE INDEX alt_description_structured_alias_id_source_idx ON alt_description (structured_alias_id, source); +CREATE INDEX alt_description_unique_key_unique_key_name_source_idx ON alt_description (unique_key_unique_key_name, source); +CREATE INDEX ix_alt_description_class_rule_id ON alt_description (class_rule_id); +CREATE INDEX ix_alt_description_schema_definition_name ON alt_description (schema_definition_name); +CREATE INDEX alt_description_anonymous_expression_id_source_idx ON alt_description (anonymous_expression_id, source); CREATE INDEX alt_description_anonymous_class_expression_id_source_idx ON alt_description (anonymous_class_expression_id, source); -CREATE INDEX ix_alt_description_common_metadata_id ON alt_description (common_metadata_id); +CREATE INDEX ix_alt_description_anonymous_slot_expression_id ON alt_description (anonymous_slot_expression_id); +CREATE INDEX alt_description_type_mapping_framework_source_idx ON alt_description (type_mapping_framework, source); CREATE INDEX ix_alt_description_enum_binding_id ON alt_description (enum_binding_id); -CREATE INDEX ix_alt_description_class_definition_name ON alt_description (class_definition_name); -CREATE INDEX alt_description_permissible_value_text_source_idx ON alt_description (permissible_value_text, source); CREATE INDEX alt_description_path_expression_id_source_idx ON alt_description (path_expression_id, source); CREATE INDEX ix_alt_description_permissible_value_text ON alt_description (permissible_value_text); -CREATE INDEX alt_description_dimension_expression_id_source_idx ON alt_description (dimension_expression_id, source); -CREATE INDEX ix_alt_description_anonymous_class_expression_id ON alt_description (anonymous_class_expression_id); -CREATE INDEX alt_description_enum_binding_id_source_idx ON alt_description (enum_binding_id, source); -CREATE INDEX ix_alt_description_import_expression_id ON alt_description (import_expression_id); -CREATE INDEX alt_description_element_name_source_idx ON alt_description (element_name, source); -CREATE INDEX alt_description_class_definition_name_source_idx ON alt_description (class_definition_name, source); -CREATE INDEX alt_description_schema_definition_name_source_idx ON alt_description (schema_definition_name, source); -CREATE INDEX ix_alt_description_definition_name ON alt_description (definition_name); -CREATE INDEX ix_alt_description_slot_definition_name ON alt_description (slot_definition_name); CREATE INDEX alt_description_anonymous_slot_expression_id_source_idx ON alt_description (anonymous_slot_expression_id, source); -CREATE INDEX alt_description_unique_key_unique_key_name_source_idx ON alt_description (unique_key_unique_key_name, source); -CREATE INDEX alt_description_type_definition_name_source_idx ON alt_description (type_definition_name, source); -CREATE INDEX ix_alt_description_pattern_expression_id ON alt_description (pattern_expression_id); -CREATE INDEX alt_description_subset_definition_name_source_idx ON alt_description (subset_definition_name, source); +CREATE INDEX ix_alt_description_type_definition_name ON alt_description (type_definition_name); +CREATE INDEX ix_alt_description_array_expression_id ON alt_description (array_expression_id); +CREATE INDEX alt_description_slot_definition_name_source_idx ON alt_description (slot_definition_name, source); +CREATE INDEX ix_alt_description_slot_definition_name ON alt_description (slot_definition_name); +CREATE INDEX alt_description_common_metadata_id_source_idx ON alt_description (common_metadata_id, source); +CREATE INDEX ix_alt_description_structured_alias_id ON alt_description (structured_alias_id); CREATE TABLE annotation ( tag TEXT NOT NULL, @@ -7690,56 +7696,56 @@ CREATE TABLE annotation ( FOREIGN KEY(annotation_tag) REFERENCES annotation (tag), FOREIGN KEY(value_id) REFERENCES "AnyValue" (id) ); +CREATE INDEX ix_annotation_import_expression_id ON annotation (import_expression_id); +CREATE INDEX annotation_dimension_expression_id_tag_idx ON annotation (dimension_expression_id, tag); CREATE INDEX ix_annotation_element_name ON annotation (element_name); -CREATE INDEX ix_annotation_type_mapping_framework ON annotation (type_mapping_framework); +CREATE INDEX annotation_definition_name_tag_idx ON annotation (definition_name, tag); +CREATE INDEX ix_annotation_class_rule_id ON annotation (class_rule_id); +CREATE INDEX annotation_pattern_expression_id_tag_idx ON annotation (pattern_expression_id, tag); CREATE INDEX annotation_enum_definition_name_tag_idx ON annotation (enum_definition_name, tag); -CREATE INDEX annotation_anonymous_class_expression_id_tag_idx ON annotation (anonymous_class_expression_id, tag); +CREATE INDEX annotation_array_expression_id_tag_idx ON annotation (array_expression_id, tag); +CREATE INDEX ix_annotation_anonymous_slot_expression_id ON annotation (anonymous_slot_expression_id); +CREATE INDEX annotation_import_expression_id_tag_idx ON annotation (import_expression_id, tag); +CREATE INDEX ix_annotation_annotation_tag ON annotation (annotation_tag); CREATE INDEX ix_annotation_enum_binding_id ON annotation (enum_binding_id); -CREATE INDEX annotation_permissible_value_text_tag_idx ON annotation (permissible_value_text, tag); -CREATE INDEX ix_annotation_class_definition_name ON annotation (class_definition_name); -CREATE INDEX annotation_definition_name_tag_idx ON annotation (definition_name, tag); -CREATE INDEX ix_annotation_unique_key_unique_key_name ON annotation (unique_key_unique_key_name); -CREATE INDEX annotation_annotation_tag_tag_idx ON annotation (annotation_tag, tag); -CREATE INDEX ix_annotation_enum_definition_name ON annotation (enum_definition_name); -CREATE INDEX annotation_path_expression_id_tag_idx ON annotation (path_expression_id, tag); -CREATE INDEX annotation_dimension_expression_id_tag_idx ON annotation (dimension_expression_id, tag); -CREATE INDEX ix_annotation_anonymous_class_expression_id ON annotation (anonymous_class_expression_id); +CREATE INDEX annotation_enum_binding_id_tag_idx ON annotation (enum_binding_id, tag); CREATE INDEX ix_annotation_permissible_value_text ON annotation (permissible_value_text); +CREATE INDEX annotation_permissible_value_text_tag_idx ON annotation (permissible_value_text, tag); +CREATE INDEX annotation_structured_alias_id_tag_idx ON annotation (structured_alias_id, tag); +CREATE INDEX ix_annotation_array_expression_id ON annotation (array_expression_id); CREATE INDEX annotation_unique_key_unique_key_name_tag_idx ON annotation (unique_key_unique_key_name, tag); -CREATE INDEX ix_annotation_definition_name ON annotation (definition_name); -CREATE INDEX annotation_enum_binding_id_tag_idx ON annotation (enum_binding_id, tag); -CREATE INDEX annotation_class_definition_name_tag_idx ON annotation (class_definition_name, tag); -CREATE INDEX ix_annotation_tag ON annotation (tag); +CREATE INDEX ix_annotation_type_definition_name ON annotation (type_definition_name); +CREATE INDEX annotation_anonymous_expression_id_tag_idx ON annotation (anonymous_expression_id, tag); CREATE INDEX ix_annotation_slot_definition_name ON annotation (slot_definition_name); -CREATE INDEX ix_annotation_import_expression_id ON annotation (import_expression_id); -CREATE INDEX annotation_element_name_tag_idx ON annotation (element_name, tag); +CREATE INDEX annotation_subset_definition_name_tag_idx ON annotation (subset_definition_name, tag); +CREATE INDEX annotation_type_mapping_framework_tag_idx ON annotation (type_mapping_framework, tag); +CREATE INDEX ix_annotation_value_id ON annotation (value_id); CREATE INDEX ix_annotation_structured_alias_id ON annotation (structured_alias_id); +CREATE INDEX annotation_path_expression_id_tag_idx ON annotation (path_expression_id, tag); +CREATE INDEX ix_annotation_unique_key_unique_key_name ON annotation (unique_key_unique_key_name); +CREATE INDEX annotation_annotatable_id_tag_idx ON annotation (annotatable_id, tag); CREATE INDEX annotation_anonymous_slot_expression_id_tag_idx ON annotation (anonymous_slot_expression_id, tag); -CREATE INDEX annotation_pattern_expression_id_tag_idx ON annotation (pattern_expression_id, tag); +CREATE INDEX ix_annotation_dimension_expression_id ON annotation (dimension_expression_id); +CREATE INDEX annotation_annotation_tag_tag_idx ON annotation (annotation_tag, tag); CREATE INDEX ix_annotation_subset_definition_name ON annotation (subset_definition_name); -CREATE INDEX ix_annotation_anonymous_slot_expression_id ON annotation (anonymous_slot_expression_id); +CREATE INDEX annotation_slot_definition_name_tag_idx ON annotation (slot_definition_name, tag); +CREATE INDEX ix_annotation_anonymous_class_expression_id ON annotation (anonymous_class_expression_id); +CREATE INDEX ix_annotation_anonymous_expression_id ON annotation (anonymous_expression_id); +CREATE INDEX annotation_anonymous_class_expression_id_tag_idx ON annotation (anonymous_class_expression_id, tag); +CREATE INDEX ix_annotation_definition_name ON annotation (definition_name); +CREATE INDEX ix_annotation_type_mapping_framework ON annotation (type_mapping_framework); +CREATE INDEX annotation_element_name_tag_idx ON annotation (element_name, tag); +CREATE INDEX annotation_class_definition_name_tag_idx ON annotation (class_definition_name, tag); CREATE INDEX ix_annotation_pattern_expression_id ON annotation (pattern_expression_id); -CREATE INDEX ix_annotation_type_definition_name ON annotation (type_definition_name); -CREATE INDEX annotation_type_mapping_framework_tag_idx ON annotation (type_mapping_framework, tag); -CREATE INDEX annotation_structured_alias_id_tag_idx ON annotation (structured_alias_id, tag); -CREATE INDEX annotation_class_rule_id_tag_idx ON annotation (class_rule_id, tag); -CREATE INDEX ix_annotation_path_expression_id ON annotation (path_expression_id); -CREATE INDEX ix_annotation_dimension_expression_id ON annotation (dimension_expression_id); CREATE INDEX ix_annotation_schema_definition_name ON annotation (schema_definition_name); -CREATE INDEX annotation_anonymous_expression_id_tag_idx ON annotation (anonymous_expression_id, tag); -CREATE INDEX ix_annotation_value_id ON annotation (value_id); CREATE INDEX annotation_schema_definition_name_tag_idx ON annotation (schema_definition_name, tag); -CREATE INDEX annotation_slot_definition_name_tag_idx ON annotation (slot_definition_name, tag); -CREATE INDEX annotation_import_expression_id_tag_idx ON annotation (import_expression_id, tag); -CREATE INDEX ix_annotation_anonymous_expression_id ON annotation (anonymous_expression_id); -CREATE INDEX annotation_array_expression_id_tag_idx ON annotation (array_expression_id, tag); +CREATE INDEX annotation_class_rule_id_tag_idx ON annotation (class_rule_id, tag); +CREATE INDEX ix_annotation_class_definition_name ON annotation (class_definition_name); +CREATE INDEX ix_annotation_tag ON annotation (tag); CREATE INDEX annotation_type_definition_name_tag_idx ON annotation (type_definition_name, tag); -CREATE INDEX ix_annotation_array_expression_id ON annotation (array_expression_id); -CREATE INDEX ix_annotation_annotation_tag ON annotation (annotation_tag); -CREATE INDEX annotation_subset_definition_name_tag_idx ON annotation (subset_definition_name, tag); -CREATE INDEX annotation_annotatable_id_tag_idx ON annotation (annotatable_id, tag); +CREATE INDEX ix_annotation_path_expression_id ON annotation (path_expression_id); CREATE INDEX ix_annotation_annotatable_id ON annotation (annotatable_id); -CREATE INDEX ix_annotation_class_rule_id ON annotation (class_rule_id); +CREATE INDEX ix_annotation_enum_definition_name ON annotation (enum_definition_name); CREATE TABLE structured_alias_category ( structured_alias_id INTEGER, @@ -7765,8 +7771,8 @@ CREATE TABLE structured_alias_todos ( PRIMARY KEY (structured_alias_id, todos), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_todos_todos ON structured_alias_todos (todos); CREATE INDEX ix_structured_alias_todos_structured_alias_id ON structured_alias_todos (structured_alias_id); +CREATE INDEX ix_structured_alias_todos_todos ON structured_alias_todos (todos); CREATE TABLE structured_alias_notes ( structured_alias_id INTEGER, @@ -7774,8 +7780,8 @@ CREATE TABLE structured_alias_notes ( PRIMARY KEY (structured_alias_id, notes), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_notes_structured_alias_id ON structured_alias_notes (structured_alias_id); CREATE INDEX ix_structured_alias_notes_notes ON structured_alias_notes (notes); +CREATE INDEX ix_structured_alias_notes_structured_alias_id ON structured_alias_notes (structured_alias_id); CREATE TABLE structured_alias_comments ( structured_alias_id INTEGER, @@ -7802,8 +7808,8 @@ CREATE TABLE structured_alias_see_also ( PRIMARY KEY (structured_alias_id, see_also), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_see_also_structured_alias_id ON structured_alias_see_also (structured_alias_id); CREATE INDEX ix_structured_alias_see_also_see_also ON structured_alias_see_also (see_also); +CREATE INDEX ix_structured_alias_see_also_structured_alias_id ON structured_alias_see_also (structured_alias_id); CREATE TABLE structured_alias_aliases ( structured_alias_id INTEGER, @@ -7811,8 +7817,8 @@ CREATE TABLE structured_alias_aliases ( PRIMARY KEY (structured_alias_id, aliases), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_aliases_aliases ON structured_alias_aliases (aliases); CREATE INDEX ix_structured_alias_aliases_structured_alias_id ON structured_alias_aliases (structured_alias_id); +CREATE INDEX ix_structured_alias_aliases_aliases ON structured_alias_aliases (aliases); CREATE TABLE structured_alias_mappings ( structured_alias_id INTEGER, @@ -7820,8 +7826,8 @@ CREATE TABLE structured_alias_mappings ( PRIMARY KEY (structured_alias_id, mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_mappings_structured_alias_id ON structured_alias_mappings (structured_alias_id); CREATE INDEX ix_structured_alias_mappings_mappings ON structured_alias_mappings (mappings); +CREATE INDEX ix_structured_alias_mappings_structured_alias_id ON structured_alias_mappings (structured_alias_id); CREATE TABLE structured_alias_exact_mappings ( structured_alias_id INTEGER, @@ -7829,8 +7835,8 @@ CREATE TABLE structured_alias_exact_mappings ( PRIMARY KEY (structured_alias_id, exact_mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_exact_mappings_structured_alias_id ON structured_alias_exact_mappings (structured_alias_id); CREATE INDEX ix_structured_alias_exact_mappings_exact_mappings ON structured_alias_exact_mappings (exact_mappings); +CREATE INDEX ix_structured_alias_exact_mappings_structured_alias_id ON structured_alias_exact_mappings (structured_alias_id); CREATE TABLE structured_alias_close_mappings ( structured_alias_id INTEGER, @@ -7838,8 +7844,8 @@ CREATE TABLE structured_alias_close_mappings ( PRIMARY KEY (structured_alias_id, close_mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_close_mappings_structured_alias_id ON structured_alias_close_mappings (structured_alias_id); CREATE INDEX ix_structured_alias_close_mappings_close_mappings ON structured_alias_close_mappings (close_mappings); +CREATE INDEX ix_structured_alias_close_mappings_structured_alias_id ON structured_alias_close_mappings (structured_alias_id); CREATE TABLE structured_alias_related_mappings ( structured_alias_id INTEGER, @@ -7847,8 +7853,8 @@ CREATE TABLE structured_alias_related_mappings ( PRIMARY KEY (structured_alias_id, related_mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_related_mappings_structured_alias_id ON structured_alias_related_mappings (structured_alias_id); CREATE INDEX ix_structured_alias_related_mappings_related_mappings ON structured_alias_related_mappings (related_mappings); +CREATE INDEX ix_structured_alias_related_mappings_structured_alias_id ON structured_alias_related_mappings (structured_alias_id); CREATE TABLE structured_alias_narrow_mappings ( structured_alias_id INTEGER, @@ -7865,8 +7871,8 @@ CREATE TABLE structured_alias_broad_mappings ( PRIMARY KEY (structured_alias_id, broad_mappings), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_broad_mappings_broad_mappings ON structured_alias_broad_mappings (broad_mappings); CREATE INDEX ix_structured_alias_broad_mappings_structured_alias_id ON structured_alias_broad_mappings (structured_alias_id); +CREATE INDEX ix_structured_alias_broad_mappings_broad_mappings ON structured_alias_broad_mappings (broad_mappings); CREATE TABLE structured_alias_contributors ( structured_alias_id INTEGER, @@ -7883,8 +7889,8 @@ CREATE TABLE structured_alias_keyword ( PRIMARY KEY (structured_alias_id, keyword), FOREIGN KEY(structured_alias_id) REFERENCES structured_alias (id) ); -CREATE INDEX ix_structured_alias_keyword_structured_alias_id ON structured_alias_keyword (structured_alias_id); CREATE INDEX ix_structured_alias_keyword_keyword ON structured_alias_keyword (keyword); +CREATE INDEX ix_structured_alias_keyword_structured_alias_id ON structured_alias_keyword (structured_alias_id); CREATE TABLE extension ( tag TEXT NOT NULL, @@ -7967,55 +7973,55 @@ CREATE TABLE extension ( FOREIGN KEY(annotation_tag) REFERENCES annotation (tag), FOREIGN KEY(value_id) REFERENCES "AnyValue" (id) ); -CREATE INDEX extension_element_name_tag_idx ON extension (element_name, tag); -CREATE INDEX extension_anonymous_expression_id_tag_idx ON extension (anonymous_expression_id, tag); -CREATE INDEX ix_extension_path_expression_id ON extension (path_expression_id); -CREATE INDEX ix_extension_dimension_expression_id ON extension (dimension_expression_id); +CREATE INDEX ix_extension_anonymous_class_expression_id ON extension (anonymous_class_expression_id); CREATE INDEX ix_extension_value_id ON extension (value_id); -CREATE INDEX ix_extension_schema_definition_name ON extension (schema_definition_name); -CREATE INDEX ix_extension_annotation_tag ON extension (annotation_tag); -CREATE INDEX extension_anonymous_class_expression_id_tag_idx ON extension (anonymous_class_expression_id, tag); -CREATE INDEX extension_permissible_value_text_tag_idx ON extension (permissible_value_text, tag); -CREATE INDEX ix_extension_extensible_id ON extension (extensible_id); -CREATE INDEX extension_enum_definition_name_tag_idx ON extension (enum_definition_name, tag); -CREATE INDEX extension_extension_tag_tag_idx ON extension (extension_tag, tag); +CREATE INDEX extension_element_name_tag_idx ON extension (element_name, tag); CREATE INDEX ix_extension_anonymous_expression_id ON extension (anonymous_expression_id); -CREATE INDEX ix_extension_array_expression_id ON extension (array_expression_id); -CREATE INDEX ix_extension_extension_tag ON extension (extension_tag); +CREATE INDEX extension_class_definition_name_tag_idx ON extension (class_definition_name, tag); +CREATE INDEX ix_extension_definition_name ON extension (definition_name); +CREATE INDEX ix_extension_type_mapping_framework ON extension (type_mapping_framework); +CREATE INDEX extension_schema_definition_name_tag_idx ON extension (schema_definition_name, tag); +CREATE INDEX extension_class_rule_id_tag_idx ON extension (class_rule_id, tag); +CREATE INDEX ix_extension_pattern_expression_id ON extension (pattern_expression_id); +CREATE INDEX ix_extension_schema_definition_name ON extension (schema_definition_name); +CREATE INDEX extension_type_definition_name_tag_idx ON extension (type_definition_name, tag); +CREATE INDEX extension_array_expression_id_tag_idx ON extension (array_expression_id, tag); +CREATE INDEX ix_extension_class_definition_name ON extension (class_definition_name); +CREATE INDEX ix_extension_tag ON extension (tag); +CREATE INDEX extension_subset_definition_name_tag_idx ON extension (subset_definition_name, tag); +CREATE INDEX ix_extension_path_expression_id ON extension (path_expression_id); CREATE INDEX extension_dimension_expression_id_tag_idx ON extension (dimension_expression_id, tag); -CREATE INDEX extension_extensible_id_tag_idx ON extension (extensible_id, tag); -CREATE INDEX extension_path_expression_id_tag_idx ON extension (path_expression_id, tag); +CREATE INDEX ix_extension_extension_tag ON extension (extension_tag); +CREATE INDEX ix_extension_enum_definition_name ON extension (enum_definition_name); +CREATE INDEX extension_definition_name_tag_idx ON extension (definition_name, tag); +CREATE INDEX extension_pattern_expression_id_tag_idx ON extension (pattern_expression_id, tag); +CREATE INDEX ix_extension_import_expression_id ON extension (import_expression_id); CREATE INDEX ix_extension_element_name ON extension (element_name); +CREATE INDEX extension_enum_definition_name_tag_idx ON extension (enum_definition_name, tag); +CREATE INDEX extension_import_expression_id_tag_idx ON extension (import_expression_id, tag); CREATE INDEX ix_extension_class_rule_id ON extension (class_rule_id); -CREATE INDEX ix_extension_type_mapping_framework ON extension (type_mapping_framework); -CREATE INDEX extension_schema_definition_name_tag_idx ON extension (schema_definition_name, tag); -CREATE INDEX extension_class_definition_name_tag_idx ON extension (class_definition_name, tag); -CREATE INDEX extension_unique_key_unique_key_name_tag_idx ON extension (unique_key_unique_key_name, tag); CREATE INDEX extension_enum_binding_id_tag_idx ON extension (enum_binding_id, tag); -CREATE INDEX ix_extension_class_definition_name ON extension (class_definition_name); -CREATE INDEX ix_extension_unique_key_unique_key_name ON extension (unique_key_unique_key_name); +CREATE INDEX ix_extension_anonymous_slot_expression_id ON extension (anonymous_slot_expression_id); +CREATE INDEX extension_permissible_value_text_tag_idx ON extension (permissible_value_text, tag); +CREATE INDEX ix_extension_extensible_id ON extension (extensible_id); CREATE INDEX ix_extension_enum_binding_id ON extension (enum_binding_id); -CREATE INDEX extension_pattern_expression_id_tag_idx ON extension (pattern_expression_id, tag); -CREATE INDEX extension_annotation_tag_tag_idx ON extension (annotation_tag, tag); -CREATE INDEX extension_anonymous_slot_expression_id_tag_idx ON extension (anonymous_slot_expression_id, tag); +CREATE INDEX extension_structured_alias_id_tag_idx ON extension (structured_alias_id, tag); +CREATE INDEX extension_unique_key_unique_key_name_tag_idx ON extension (unique_key_unique_key_name, tag); CREATE INDEX ix_extension_permissible_value_text ON extension (permissible_value_text); -CREATE INDEX ix_extension_enum_definition_name ON extension (enum_definition_name); -CREATE INDEX ix_extension_anonymous_class_expression_id ON extension (anonymous_class_expression_id); -CREATE INDEX extension_type_definition_name_tag_idx ON extension (type_definition_name, tag); -CREATE INDEX extension_class_rule_id_tag_idx ON extension (class_rule_id, tag); +CREATE INDEX extension_anonymous_expression_id_tag_idx ON extension (anonymous_expression_id, tag); CREATE INDEX extension_type_mapping_framework_tag_idx ON extension (type_mapping_framework, tag); -CREATE INDEX ix_extension_import_expression_id ON extension (import_expression_id); -CREATE INDEX extension_subset_definition_name_tag_idx ON extension (subset_definition_name, tag); -CREATE INDEX extension_structured_alias_id_tag_idx ON extension (structured_alias_id, tag); -CREATE INDEX ix_extension_tag ON extension (tag); +CREATE INDEX ix_extension_array_expression_id ON extension (array_expression_id); +CREATE INDEX ix_extension_type_definition_name ON extension (type_definition_name); +CREATE INDEX extension_path_expression_id_tag_idx ON extension (path_expression_id, tag); CREATE INDEX ix_extension_slot_definition_name ON extension (slot_definition_name); -CREATE INDEX ix_extension_definition_name ON extension (definition_name); -CREATE INDEX extension_import_expression_id_tag_idx ON extension (import_expression_id, tag); -CREATE INDEX extension_slot_definition_name_tag_idx ON extension (slot_definition_name, tag); -CREATE INDEX extension_array_expression_id_tag_idx ON extension (array_expression_id, tag); +CREATE INDEX extension_extension_tag_tag_idx ON extension (extension_tag, tag); +CREATE INDEX ix_extension_annotation_tag ON extension (annotation_tag); CREATE INDEX ix_extension_structured_alias_id ON extension (structured_alias_id); -CREATE INDEX ix_extension_pattern_expression_id ON extension (pattern_expression_id); +CREATE INDEX extension_anonymous_slot_expression_id_tag_idx ON extension (anonymous_slot_expression_id, tag); +CREATE INDEX extension_extensible_id_tag_idx ON extension (extensible_id, tag); +CREATE INDEX ix_extension_unique_key_unique_key_name ON extension (unique_key_unique_key_name); +CREATE INDEX extension_slot_definition_name_tag_idx ON extension (slot_definition_name, tag); +CREATE INDEX extension_annotation_tag_tag_idx ON extension (annotation_tag, tag); +CREATE INDEX ix_extension_dimension_expression_id ON extension (dimension_expression_id); CREATE INDEX ix_extension_subset_definition_name ON extension (subset_definition_name); -CREATE INDEX ix_extension_anonymous_slot_expression_id ON extension (anonymous_slot_expression_id); -CREATE INDEX extension_definition_name_tag_idx ON extension (definition_name, tag); -CREATE INDEX ix_extension_type_definition_name ON extension (type_definition_name); +CREATE INDEX extension_anonymous_class_expression_id_tag_idx ON extension (anonymous_class_expression_id, tag); diff --git a/linkml_model/types.py b/linkml_model/types.py index fe008af97..4e6136764 100644 --- a/linkml_model/types.py +++ b/linkml_model/types.py @@ -1,5 +1,5 @@ # Auto generated from types.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:15 +# Generation date: 2026-07-27T16:30:21 # Schema: types # # id: https://w3id.org/linkml/types @@ -53,7 +53,7 @@ from linkml_runtime.utils.metamodelcore import Bool, Curie, Decimal, ElementIdentifier, NCName, NodeIdentifier, URI, URIorCURIE, XSDDate, XSDDateTime, XSDTime -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = None # Namespaces @@ -228,3 +228,4 @@ class Sparqlpath(str): # Slots class slots: pass + diff --git a/linkml_model/units.py b/linkml_model/units.py index 7572a16a9..1209bfab2 100644 --- a/linkml_model/units.py +++ b/linkml_model/units.py @@ -1,5 +1,5 @@ # Auto generated from units.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:15 +# Generation date: 2026-07-27T16:30:22 # Schema: units # # id: https://w3id.org/linkml/units @@ -54,7 +54,7 @@ from .types import String, Uriorcurie from linkml_runtime.utils.metamodelcore import URIorCURIE -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = None # Namespaces @@ -156,3 +156,4 @@ class slots: slots.descriptive_name = Slot(uri=RDFS.label, name="descriptive_name", curie=RDFS.curie('label'), model_uri=LINKML.descriptive_name, domain=None, range=Optional[str]) + diff --git a/linkml_model/validation.py b/linkml_model/validation.py index d871e683c..510c88cdf 100644 --- a/linkml_model/validation.py +++ b/linkml_model/validation.py @@ -1,5 +1,5 @@ # Auto generated from validation.yaml by pythongen.py version: 0.0.1 -# Generation date: 2026-05-05T18:49:16 +# Generation date: 2026-07-27T16:30:24 # Schema: reporting # # id: https://w3id.org/linkml/reporting @@ -54,7 +54,7 @@ from .types import Nodeidentifier, String from linkml_runtime.utils.metamodelcore import NodeIdentifier -metamodel_version = "1.7.0" +metamodel_version = "1.11.0" version = None # Namespaces @@ -228,3 +228,4 @@ class slots: slots.validationReport__results = Slot(uri=REPORTING.results, name="validationReport__results", curie=REPORTING.curie('results'), model_uri=REPORTING.validationReport__results, domain=None, range=Optional[Union[Union[dict, ValidationResult], list[Union[dict, ValidationResult]]]]) + diff --git a/tests/input/examples/schema_definition-open-enums.yaml b/tests/input/examples/schema_definition-open-enums.yaml new file mode 100644 index 000000000..ba8dc1059 --- /dev/null +++ b/tests/input/examples/schema_definition-open-enums.yaml @@ -0,0 +1,163 @@ +id: https://w3id.org/linkml/examples/open-enums +title: Open Enums Example +name: openenums-example +description: |- + This demonstrates the use of open enumerations via the `is_open` slot on + enum expressions. + + An open enumeration (`is_open: true`) permits data values outside of the set + of permissible values; the permissible values are advisory, documenting the + recommended or expected values. A closed enumeration (`is_open: false`, the + runtime default) requires that data values are drawn from the set of + permissible values. + + `is_open` is a slot on `enum_expression`, so it can be used on named enums + (`enum_definition`) as well as on anonymous enum expressions, such as those + appearing under `enum_range`, `any_of`, or in `slot_usage`. +license: https://creativecommons.org/publicdomain/zero/1.0/ + +prefixes: + linkml: https://w3id.org/linkml/ + ex: https://w3id.org/linkml/examples/open-enums/ + bioregistry: https://bioregistry.io/registry/ + MONDO: http://purl.obolibrary.org/obo/MONDO_ + +default_prefix: ex +default_range: string + +imports: + - linkml:types + +#================================== +# Classes # +#================================== + +classes: + Person: + slots: + - name + - job_title + - marital_status + - eye_color + - primary_language + - diagnosis + + Researcher: + is_a: Person + slot_usage: + job_title: + description: >- + Researchers may hold titles that are not in the advisory list; the + anonymous enum expression is open. + range: JobTitleEnum + marital_status: + description: >- + Narrowing an open enum to a closed anonymous enum expression. + enum_range: + is_open: false + permissible_values: + SINGLE: + MARRIED: + +#================================== +# Slots # +#================================== + +slots: + name: + range: string + + job_title: + description: An open enum - any string is permitted + range: JobTitleEnum + + marital_status: + description: A closed enum - values must be drawn from the permissible values + range: MaritalStatusEnum + + eye_color: + description: An anonymous, inlined open enum expression + enum_range: + is_open: true + permissible_values: + BLUE: + BROWN: + GREEN: + + primary_language: + description: An anonymous enum expression that does not declare is_open (defaults to closed) + enum_range: + permissible_values: + EN: + FR: + DE: + + diagnosis: + description: An open dynamic enum + range: HumanDiseaseEnum + +#================================== +# Enums # +#================================== + +enums: + JobTitleEnum: + description: >- + An open enumeration. The permissible values document the expected job + titles, but other values are permitted. + is_open: true + comments: + - Analogous to allow-other="yes" in the OSCAL Metamodel + permissible_values: + RESEARCH_SCIENTIST: + SOFTWARE_ENGINEER: + DATA_STEWARD: + + MaritalStatusEnum: + description: >- + A closed enumeration, stated explicitly. Values MUST be drawn from the + permissible values. + is_open: false + permissible_values: + SINGLE: + MARRIED: + DIVORCED: + WIDOWED: + + DefaultedEnum: + description: >- + An enumeration that does not declare is_open; the runtime default is + closed. + permissible_values: + YES: + NO: + + HumanDiseaseEnum: + description: >- + An open dynamic enum - the reachable_from expression seeds the advisory + value set, but values outside of it are permitted. + is_open: true + reachable_from: + source_ontology: bioregistry:mondo + source_nodes: + - MONDO:0000001 ## disease or disorder + is_direct: false + relationship_types: + - rdfs:subClassOf + + InheritedOpenEnum: + description: >- + Composition of enum expressions where the outer expression is open and a + composed expression is closed. + is_open: true + inherits: + - JobTitleEnum + include: + - is_open: false + permissible_values: + PRINCIPAL_INVESTIGATOR: + POSTDOC: + minus: + - permissible_values: + DATA_STEWARD: + description: Example of excluding a single advisory value diff --git a/tests/test_open_enums.py b/tests/test_open_enums.py new file mode 100644 index 000000000..256dff504 --- /dev/null +++ b/tests/test_open_enums.py @@ -0,0 +1,80 @@ +"""Tests for the `is_open` slot on enum expressions. + +`is_open` is declared on `enum_expression`, so it is inherited by +`enum_definition`, `anonymous_enum_expression`, and any anonymous enum +expression appearing under `enum_range`, `include`, or `minus`. + +These tests round-trip tests/input/examples/schema_definition-open-enums.yaml +through the generated metamodel to confirm the slot is present on every one of +those classes and carries the declared value. `make test-examples` separately +validates the same file against meta.yaml itself. +""" + +import pytest +from linkml_runtime.loaders import yaml_loader + +from linkml_model import SchemaDefinition +from tests import abspath + +EXAMPLE = abspath("tests/input/examples/schema_definition-open-enums.yaml") + + +@pytest.fixture(scope="module") +def schema() -> SchemaDefinition: + return yaml_loader.load(EXAMPLE, SchemaDefinition) + + +@pytest.mark.parametrize( + "enum_name,expected", + [ + ("JobTitleEnum", True), + ("MaritalStatusEnum", False), + ("HumanDiseaseEnum", True), + ("InheritedOpenEnum", True), + # is_open is not declared; there is no ifabsent, so it loads as None and + # the closed-by-default behaviour is applied by the runtime, not the model. + ("DefaultedEnum", None), + ], +) +def test_is_open_on_enum_definition(schema, enum_name, expected): + """is_open is readable on a named enum, and absent means None (not False).""" + assert schema.enums[enum_name].is_open == expected + + +@pytest.mark.parametrize( + "slot_name,expected", + [ + ("eye_color", True), + ("primary_language", None), + ], +) +def test_is_open_on_anonymous_enum_range(schema, slot_name, expected): + """is_open is readable on an anonymous enum expression under enum_range.""" + assert schema.slots[slot_name].enum_range.is_open == expected + + +def test_is_open_in_slot_usage(schema): + """A slot_usage may narrow an open enum to a closed anonymous expression.""" + slot_usage = schema.classes["Researcher"].slot_usage["marital_status"] + assert slot_usage.enum_range.is_open is False + + +def test_is_open_on_composed_expressions(schema): + """is_open applies independently to each composed enum expression.""" + enum = schema.enums["InheritedOpenEnum"] + assert enum.is_open is True + assert enum.include[0].is_open is False + + +def test_is_open_is_coerced_to_bool(schema): + """Values load as booleans rather than the raw YAML strings.""" + assert isinstance(schema.enums["JobTitleEnum"].is_open, bool) + assert isinstance(schema.enums["MaritalStatusEnum"].is_open, bool) + + +def test_is_open_declared_on_enum_expression(): + """The slot is declared on enum_expression, hence available to its descendants.""" + from linkml_model.meta import AnonymousEnumExpression, EnumDefinition, EnumExpression + + for cls in (EnumExpression, EnumDefinition, AnonymousEnumExpression): + assert "is_open" in cls.__annotations__, f"is_open missing from {cls.__name__}"