From 85d8dd1e6d41bc1e57c3a977d748ddf074a882b2 Mon Sep 17 00:00:00 2001 From: cmungall Date: Fri, 3 Feb 2023 12:34:38 -0800 Subject: [PATCH] Additions for 1.5 - added `inlined_as_simple_dict` - added metaslot `implements` - non-semantic - adding aliases, see_also, mappings - removed testing status from some elements - units - added mapping to schema.org - added `abbreviation` - added `descriptive_name` --- Makefile | 13 +- linkml_model/graphql/meta.graphql | 13 + linkml_model/json/meta.json | 4 +- linkml_model/jsonld/meta.context.jsonld | 20 +- linkml_model/jsonld/meta.model.context.jsonld | 2 +- .../jsonld/types.model.context.jsonld | 2 +- linkml_model/jsonschema/meta.schema.json | 6921 ++++++++++++++++- linkml_model/meta.py | 41 +- linkml_model/model/schema/meta.yaml | 59 +- linkml_model/model/schema/types.yaml | 21 + linkml_model/model/schema/units.yaml | 11 + linkml_model/owl/meta.owl.ttl | 2301 +++--- linkml_model/rdf/meta.model.ttl | 56 +- linkml_model/rdf/meta.ttl | 52 +- linkml_model/rdf/types.model.ttl | 128 +- linkml_model/shex/annotations.shex | 2 + linkml_model/shex/annotations.shexj | 5 + linkml_model/shex/datasets.shex | 2 + linkml_model/shex/datasets.shexj | 5 + linkml_model/shex/extensions.shex | 2 + linkml_model/shex/extensions.shexj | 5 + linkml_model/shex/mappings.shexj | 5 + linkml_model/shex/meta.shex | 14 +- linkml_model/shex/meta.shexj | 589 +- linkml_model/shex/types.shex | 2 + linkml_model/shex/types.shexj | 5 + linkml_model/shex/validation.shex | 4 +- linkml_model/shex/validation.shexj | 7 +- linkml_model/sqlddl/meta.sql | 362 +- poetry.lock | 1105 ++- pyproject.toml | 5 +- .../SchemaDefinition-dynamic-enums.yaml | 171 - 32 files changed, 10288 insertions(+), 1646 deletions(-) delete mode 100644 tests/input/examples/SchemaDefinition-dynamic-enums.yaml diff --git a/Makefile b/Makefile index ad1b6736..31dfa56d 100644 --- a/Makefile +++ b/Makefile @@ -51,9 +51,20 @@ gen-project: $(PYMODEL) cp -r $(DEST)/* $(PYMODEL) rm -r $(PYMODEL)/docs -test: +test: test-schema test-python test-validate-schema +test-schema: + $(RUN) gen-project -d tmp $(SOURCE_SCHEMA_PATH) + +test-python: $(RUN) python -m unittest discover +test-examples: +# $(RUN) linkml-run-examples -s $(SOURCE_SCHEMA_PATH) -e tests/input/examples -d /tmp/ + find tests/input/examples | ./utils/run-examples.pl + +test-validate-schema: + $(RUN) linkml-normalize -s $(SOURCE_SCHEMA_PATH) $(SOURCE_SCHEMA_PATH) -o /tmp/schema + check-config: @(grep my-datamodel about.yaml > /dev/null && printf "\n**Project not configured**:\n\n - Remember to edit 'about.yaml'\n\n" || exit 0) diff --git a/linkml_model/graphql/meta.graphql b/linkml_model/graphql/meta.graphql index 46434b78..d7d1b66b 100644 --- a/linkml_model/graphql/meta.graphql +++ b/linkml_model/graphql/meta.graphql @@ -174,6 +174,10 @@ type AnonymousTypeExpression implements TypeExpression allOf: [AnonymousTypeExpression] } +type Anything + { + } + type ClassDefinition implements ClassExpression { name: String! @@ -181,6 +185,7 @@ type ClassDefinition implements ClassExpression definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -328,6 +333,7 @@ interface Definition definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -376,6 +382,7 @@ type Element implements Extensible, Annotatable, CommonMetadata definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -412,6 +419,7 @@ type EnumDefinition implements EnumExpression definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -484,6 +492,7 @@ type Example { value: String description: String + object: Anything } interface Expression @@ -679,6 +688,7 @@ type SchemaDefinition definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -745,6 +755,7 @@ type SlotDefinition implements SlotExpression definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -920,6 +931,7 @@ type SubsetDefinition definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String @@ -956,6 +968,7 @@ type TypeDefinition implements TypeExpression definitionUri: Uriorcurie localNames: [LocalName] conformsTo: String + implements: [Uriorcurie] extensions: [Extension] annotations: [Annotation] description: String diff --git a/linkml_model/json/meta.json b/linkml_model/json/meta.json index 506ececa..a82df6ce 100644 --- a/linkml_model/json/meta.json +++ b/linkml_model/json/meta.json @@ -6861,9 +6861,9 @@ ], "metamodel_version": "1.7.0", "source_file": "meta.yaml", - "source_file_date": "2022-07-14T00:55:10", + "source_file_date": "2022-07-13T17:52:28", "source_file_size": 71464, - "generation_date": "2022-07-14T00:56:03", + "generation_date": "2022-07-13T17:56:42", "@type": "SchemaDefinition", "@context": [ "https://w3id.org/linkml/types.context.jsonld", diff --git a/linkml_model/jsonld/meta.context.jsonld b/linkml_model/jsonld/meta.context.jsonld index 3fc54834..1f2b1bca 100644 --- a/linkml_model/jsonld/meta.context.jsonld +++ b/linkml_model/jsonld/meta.context.jsonld @@ -1,5 +1,9 @@ { - "_comments": "Auto generated from meta.yaml by jsonldcontextgen.py version: 0.1.1\n Generation date: 2022-12-16T14:11:17\n Schema: meta\n metamodel version: 1.7.0\n model version: 2.0.0\n \n id: https://w3id.org/linkml/meta\n description: The metamodel for schemas defined using the Linked Data Modeling Language framework.\n\nFor more information on LinkML:\n\n* [linkml.io](https://linkml.io) main website\n* [specification](https://linkml.io/linkml-model/docs/specification/)\n\nLinkML is self-describing. Every LinkML schema consists of elements\nthat instantiate classes in this metamodel.\n\nCore metaclasses:\n\n* [SchemaDefinition](https://w3id.org/linkml/SchemaDefinition)\n* [ClassDefinition](https://w3id.org/linkml/ClassDefinition)\n* [SlotDefinition](https://w3id.org/linkml/SlotDefinition)\n* [TypeDefinition](https://w3id.org/linkml/TypeDefinition)\n\nThere are many subsets of *profiles* of the metamodel, for different purposes:\n\n* [MinimalSubset](https://w3id.org/linkml/MinimalSubset)\n* [BasicSubset](https://w3id.org/linkml/BasicSubset)\n* [BasicSubset](https://w3id.org/linkml/BasicSubset)\n\nFor canonical reference documentation on any metamodel construct,\nrefer to the official URI for each construct, e.g.\n[https://w3id.org/linkml/is_a](https://w3id.org/linkml/is_a)\n license: https://creativecommons.org/publicdomain/zero/1.0/\n ", + "comments": { + "description": "Auto generated by LinkML jsonld context generator", + "generation_date": "2023-02-03T10:05:13", + "source": "meta.yaml" + }, "@context": { "IAO": { "@id": "http://purl.obolibrary.org/obo/IAO_", @@ -19,7 +23,7 @@ "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "schema": "http://schema.org/", - "sh": "https://w3id.org/shacl/", + "sh": "http://www.w3.org/ns/shacl#", "skos": "http://www.w3.org/2004/02/skos/core#", "skosxl": "http://www.w3.org/2008/05/skos-xl#", "swrl": "http://www.w3.org/2003/11/swrl#", @@ -212,6 +216,9 @@ "iec61360code": { "@id": "qudt:iec61360Code" }, + "implements": { + "@type": "@id" + }, "import_from": { "@type": "@id" }, @@ -249,6 +256,9 @@ "inlined_as_list": { "@type": "xsd:boolean" }, + "inlined_as_simple_dict": { + "@type": "xsd:boolean" + }, "interpolated": { "@type": "xsd:boolean" }, @@ -518,8 +528,7 @@ "@type": "@id" }, "subclass_of": { - "@type": "@id", - "@id": "rdfs:subClassOf" + "@type": "@id" }, "subproperty_of": { "@type": "@id", @@ -581,6 +590,9 @@ "value": { "@id": "skos:example" }, + "object": { + "@type": "@id" + }, "value_presence": { "@context": { "@vocab": "@null", diff --git a/linkml_model/jsonld/meta.model.context.jsonld b/linkml_model/jsonld/meta.model.context.jsonld index c4678ccd..c0efdf8f 100644 --- a/linkml_model/jsonld/meta.model.context.jsonld +++ b/linkml_model/jsonld/meta.model.context.jsonld @@ -1,5 +1,5 @@ { - "_comments": "Auto generated from meta.yaml by jsonldcontextgen.py version: 0.1.1\n Generation date: 2022-07-14T00:56:26\n Schema: meta\n metamodel version: 1.7.0\n model version: 2.0.0\n \n id: https://w3id.org/linkml/meta\n description: The metamodel for schemas defined using the Linked Data Modeling Language framework.\n\nFor more information on LinkML, see [linkml.io](https://linkml.io)\n\nCore metaclasses:\n\n* [SchemaDefinition](https://w3id.org/linkml/SchemaDefinition)\n* [ClassDefinition](https://w3id.org/linkml/ClassDefinition)\n* [SlotDefinition](https://w3id.org/linkml/SlotDefinition)\n* [TypeDefinition](https://w3id.org/linkml/TypeDefinition)\n\nEvery LinkML model instantiates SchemaDefinition, all classes in\nthe model instantiate ClassDefinition, and so on\n\nNote that the LinkML metamodel instantiates itself.\n\nFor a non-normative introduction to LinkML schemas, see the tutorial\nand schema guide on [linkml.io/linkml].\n\nFor canonical reference documentation on any metamodel construct,\nrefer to the official URI for each construct, e.g.\n[https://w3id.org/linkml/is_a](https://w3id.org/linkml/is_a)\n license: https://creativecommons.org/publicdomain/zero/1.0/\n ", + "_comments": "Auto generated from meta.yaml by jsonldcontextgen.py version: 0.1.1\n Generation date: 2022-07-13T17:56:58\n Schema: meta\n metamodel version: 1.7.0\n model version: 2.0.0\n \n id: https://w3id.org/linkml/meta\n description: The metamodel for schemas defined using the Linked Data Modeling Language framework.\n\nFor more information on LinkML, see [linkml.io](https://linkml.io)\n\nCore metaclasses:\n\n* [SchemaDefinition](https://w3id.org/linkml/SchemaDefinition)\n* [ClassDefinition](https://w3id.org/linkml/ClassDefinition)\n* [SlotDefinition](https://w3id.org/linkml/SlotDefinition)\n* [TypeDefinition](https://w3id.org/linkml/TypeDefinition)\n\nEvery LinkML model instantiates SchemaDefinition, all classes in\nthe model instantiate ClassDefinition, and so on\n\nNote that the LinkML metamodel instantiates itself.\n\nFor a non-normative introduction to LinkML schemas, see the tutorial\nand schema guide on [linkml.io/linkml].\n\nFor canonical reference documentation on any metamodel construct,\nrefer to the official URI for each construct, e.g.\n[https://w3id.org/linkml/is_a](https://w3id.org/linkml/is_a)\n license: https://creativecommons.org/publicdomain/zero/1.0/\n ", "@context": { "IAO": { "@id": "http://purl.obolibrary.org/obo/IAO_", diff --git a/linkml_model/jsonld/types.model.context.jsonld b/linkml_model/jsonld/types.model.context.jsonld index 7ffa5cbb..aa541dd3 100644 --- a/linkml_model/jsonld/types.model.context.jsonld +++ b/linkml_model/jsonld/types.model.context.jsonld @@ -1,5 +1,5 @@ { - "_comments": "Auto generated from types.yaml by jsonldcontextgen.py version: 0.1.1\n Generation date: 2022-07-14T00:56:20\n Schema: types\n metamodel version: 1.7.0\n model version: 2.0.0\n \n id: https://w3id.org/linkml/types\n description: Shared type definitions for the core LinkML mode and metamodel\n license: https://creativecommons.org/publicdomain/zero/1.0/\n ", + "_comments": "Auto generated from types.yaml by jsonldcontextgen.py version: 0.1.1\n Generation date: 2022-07-13T17:56:55\n Schema: types\n metamodel version: 1.7.0\n model version: 2.0.0\n \n id: https://w3id.org/linkml/types\n description: Shared type definitions for the core LinkML mode and metamodel\n license: https://creativecommons.org/publicdomain/zero/1.0/\n ", "@context": { "linkml": "https://w3id.org/linkml/", "shex": "http://www.w3.org/ns/shex#", diff --git a/linkml_model/jsonschema/meta.schema.json b/linkml_model/jsonschema/meta.schema.json index b00e9278..74dd7795 100644 --- a/linkml_model/jsonschema/meta.schema.json +++ b/linkml_model/jsonschema/meta.schema.json @@ -1 +1,6920 @@ -{"$defs": {"AliasPredicateEnum": {"description": "", "enum": ["EXACT_SYNONYM", "RELATED_SYNONYM", "BROAD_SYNONYM", "NARROW_SYNONYM"], "title": "AliasPredicateEnum", "type": "string"}, "AltDescription": {"additionalProperties": false, "description": "an attributed description", "properties": {"description": {"description": "text of an attributed description", "type": "string"}, "source": {"description": "the source of an attributed description", "type": "string"}}, "required": ["source", "description"], "title": "AltDescription", "type": "object"}, "AltDescription__identifier_optional": {"additionalProperties": false, "description": "an attributed description", "properties": {"description": {"description": "text of an attributed description", "type": "string"}, "source": {"description": "the source of an attributed description", "type": "string"}}, "required": ["description"], "title": "AltDescription", "type": "object"}, "Annotation": {"additionalProperties": false, "description": "a tag/value pair with the semantics of OWL Annotation", "properties": {"annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "tag": {"description": "a tag associated with an extension", "type": "string"}, "value": {"description": "the actual annotation", "type": "string"}}, "required": ["tag", "value"], "title": "Annotation", "type": "object"}, "Annotation__identifier_optional": {"additionalProperties": false, "description": "a tag/value pair with the semantics of OWL Annotation", "properties": {"annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "tag": {"description": "a tag associated with an extension", "type": "string"}, "value": {"description": "the actual annotation", "type": "string"}}, "required": ["value"], "title": "Annotation", "type": "object"}, "AnonymousClassExpression": {"additionalProperties": false, "description": "", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "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", "type": "string"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "slot_conditions": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "expresses constraints on a group of slots for a class expression", "type": "object"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "title": "AnonymousClassExpression", "type": "object"}, "AnonymousEnumExpression": {"additionalProperties": false, "description": "An enum_expression that is not named", "properties": {"code_set": {"description": "the identifier of an enumeration code set.", "type": "string"}, "code_set_tag": {"description": "the version tag of the enumeration code set", "type": "string"}, "code_set_version": {"description": "the version identifier of the enumeration code set", "type": "string"}, "concepts": {"description": "A list of identifiers that are used to construct a set of permissible values", "items": {"type": "string"}, "type": "array"}, "include": {"description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "inherits": {"description": "An enum definition that is used as the basis to create a new enum", "items": {"type": "string"}, "type": "array"}, "matches": {"$ref": "#/$defs/MatchQuery", "description": "Specifies a match query that is used to calculate the list of permissible values"}, "minus": {"description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "permissible_values": {"additionalProperties": {"$ref": "#/$defs/PermissibleValue__identifier_optional"}, "description": "A list of possible values for a slot range", "type": "object"}, "pv_formula": {"$ref": "#/$defs/PvFormulaOptions", "description": "Defines the specific formula to be used to generate the permissible values."}, "reachable_from": {"$ref": "#/$defs/ReachabilityQuery", "description": "Specifies a query for obtaining a list of permissible values based on graph reachability"}}, "title": "AnonymousEnumExpression", "type": "object"}, "AnonymousSlotExpression": {"additionalProperties": false, "description": "", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_members": {"$ref": "#/$defs/AnonymousSlotExpression", "description": "the value of the slot is multivalued with all members satisfying the condition"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "enum_range": {"$ref": "#/$defs/EnumExpression", "description": "An inlined enumeration"}, "equals_expression": {"description": "the value of the slot must equal the value of the evaluated expression", "type": "string"}, "equals_number": {"description": "the slot must have range of a number and the value of the slot must equal the specified value", "type": "integer"}, "equals_string": {"description": "the slot must have range string and the value of the slot must equal the specified value", "type": "string"}, "equals_string_in": {"description": "the slot must have range string and the value of the slot must equal one of the specified values", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "has_member": {"$ref": "#/$defs/AnonymousSlotExpression", "description": "the value of the slot is multivalued with at least one member satisfying the condition"}, "implicit_prefix": {"description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "inlined": {"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.", "type": "boolean"}, "inlined_as_list": {"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.", "type": "boolean"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "maximum_cardinality": {"description": "the maximum number of entries for a multivalued slot", "type": "integer"}, "maximum_value": {"description": "for slots with ranges of type number, the value must be equal to or lowe than this", "type": "integer"}, "minimum_cardinality": {"description": "the minimum number of entries for a multivalued slot", "type": "integer"}, "minimum_value": {"description": "for slots with ranges of type number, the value must be equal to or higher than this", "type": "integer"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "pattern": {"description": "the string value of the slot must conform to this regular expression expressed in the string", "type": "string"}, "range": {"description": "defines the type of the object of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts Y is an instance of C2\n", "type": "string"}, "range_expression": {"$ref": "#/$defs/AnonymousClassExpression", "description": "A range that is described as a boolean expression combining existing ranges"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "recommended": {"description": "true means that the slot should be present in the loaded definition, but this is not required", "type": "boolean"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "required": {"description": "true means that the slot must be present in the loaded definition", "type": "boolean"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "structured_pattern": {"$ref": "#/$defs/PatternExpression", "description": "the string value of the slot must conform to the regular expression in the pattern expression"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}, "value_presence": {"$ref": "#/$defs/PresenceEnum", "description": "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)"}}, "title": "AnonymousSlotExpression", "type": "object"}, "AnonymousTypeExpression": {"additionalProperties": false, "description": "", "properties": {"all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "equals_number": {"description": "the slot must have range of a number and the value of the slot must equal the specified value", "type": "integer"}, "equals_string": {"description": "the slot must have range string and the value of the slot must equal the specified value", "type": "string"}, "equals_string_in": {"description": "the slot must have range string and the value of the slot must equal one of the specified values", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "implicit_prefix": {"description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", "type": "string"}, "maximum_value": {"description": "for slots with ranges of type number, the value must be equal to or lowe than this", "type": "integer"}, "minimum_value": {"description": "for slots with ranges of type number, the value must be equal to or higher than this", "type": "integer"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "pattern": {"description": "the string value of the slot must conform to this regular expression expressed in the string", "type": "string"}, "structured_pattern": {"$ref": "#/$defs/PatternExpression", "description": "the string value of the slot must conform to the regular expression in the pattern expression"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}}, "title": "AnonymousTypeExpression", "type": "object"}, "ClassDefinition": {"additionalProperties": false, "description": "an element whose instances are complex objects that may have slot-value assignments", "properties": {"abstract": {"description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", "type": "boolean"}, "aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "apply_to": {"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.", "items": {"type": "string"}, "type": "array"}, "attributes": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "Inline definition of slots", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "children_are_mutually_disjoint": {"description": "If true then all direct is_a children are mutually disjoint and share no instances in common", "type": "boolean"}, "class_uri": {"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", "type": "string"}, "classification_rules": {"description": "the collection of classification rules that apply to all members of this class", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "created_by": {"description": "agent that created the element", "type": "string"}, "created_on": {"description": "time at which the element was created", "format": "date-time", "type": "string"}, "defining_slots": {"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", "items": {"type": "string"}, "type": "array"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "disjoint_with": {"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", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "is_a": {"description": "A primary parent class from which inheritable metaslots are propagated", "type": "string"}, "last_updated_on": {"description": "time at which the element was last updated", "format": "date-time", "type": "string"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "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.", "type": "boolean"}, "mixins": {"description": "A collection of secondary parent mixin classes from which inheritable metaslots are propagated", "items": {"type": "string"}, "type": "array"}, "modified_by": {"description": "agent that modified the element", "type": "string"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "represents_relationship": {"description": "true if this class represents a relationship rather than an entity", "type": "boolean"}, "rules": {"description": "the collection of rules that apply to all members of this class", "items": {"$ref": "#/$defs/ClassRule"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "slot_conditions": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "expresses constraints on a group of slots for a class expression", "type": "object"}, "slot_names_unique": {"description": "if true then induced/mangled slot names are not created for class_usage and attributes", "type": "boolean"}, "slot_usage": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "the refinement of a slot in the context of the containing class definition.", "type": "object"}, "slots": {"description": "collection of slot names that are applicable to a class", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "status": {"description": "status of the element", "type": "string"}, "string_serialization": {"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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "subclass_of": {"description": "rdfs:subClassOf to be emitted in OWL generation", "type": "string"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "tree_root": {"description": "indicator that this is the root class in tree structures", "type": "boolean"}, "union_of": {"description": "indicates that the domain element consists exactly of the members of the element in the range.", "items": {"type": "string"}, "type": "array"}, "unique_keys": {"additionalProperties": {"$ref": "#/$defs/UniqueKey__identifier_optional"}, "description": "A collection of unique keys for this class. Unique keys may be singular or compound.", "type": "object"}, "values_from": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "items": {"type": "string"}, "type": "array"}}, "required": ["name"], "title": "ClassDefinition", "type": "object"}, "ClassDefinition__identifier_optional": {"additionalProperties": false, "description": "an element whose instances are complex objects that may have slot-value assignments", "properties": {"abstract": {"description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", "type": "boolean"}, "aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "apply_to": {"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.", "items": {"type": "string"}, "type": "array"}, "attributes": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "Inline definition of slots", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "children_are_mutually_disjoint": {"description": "If true then all direct is_a children are mutually disjoint and share no instances in common", "type": "boolean"}, "class_uri": {"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", "type": "string"}, "classification_rules": {"description": "the collection of classification rules that apply to all members of this class", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "created_by": {"description": "agent that created the element", "type": "string"}, "created_on": {"description": "time at which the element was created", "format": "date-time", "type": "string"}, "defining_slots": {"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", "items": {"type": "string"}, "type": "array"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "disjoint_with": {"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", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "is_a": {"description": "A primary parent class from which inheritable metaslots are propagated", "type": "string"}, "last_updated_on": {"description": "time at which the element was last updated", "format": "date-time", "type": "string"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "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.", "type": "boolean"}, "mixins": {"description": "A collection of secondary parent mixin classes from which inheritable metaslots are propagated", "items": {"type": "string"}, "type": "array"}, "modified_by": {"description": "agent that modified the element", "type": "string"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousClassExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "represents_relationship": {"description": "true if this class represents a relationship rather than an entity", "type": "boolean"}, "rules": {"description": "the collection of rules that apply to all members of this class", "items": {"$ref": "#/$defs/ClassRule"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "slot_conditions": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "expresses constraints on a group of slots for a class expression", "type": "object"}, "slot_names_unique": {"description": "if true then induced/mangled slot names are not created for class_usage and attributes", "type": "boolean"}, "slot_usage": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "the refinement of a slot in the context of the containing class definition.", "type": "object"}, "slots": {"description": "collection of slot names that are applicable to a class", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "status": {"description": "status of the element", "type": "string"}, "string_serialization": {"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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "subclass_of": {"description": "rdfs:subClassOf to be emitted in OWL generation", "type": "string"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "tree_root": {"description": "indicator that this is the root class in tree structures", "type": "boolean"}, "union_of": {"description": "indicates that the domain element consists exactly of the members of the element in the range.", "items": {"type": "string"}, "type": "array"}, "unique_keys": {"additionalProperties": {"$ref": "#/$defs/UniqueKey__identifier_optional"}, "description": "A collection of unique keys for this class. Unique keys may be singular or compound.", "type": "object"}, "values_from": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "items": {"type": "string"}, "type": "array"}}, "required": [], "title": "ClassDefinition", "type": "object"}, "ClassRule": {"additionalProperties": false, "description": "A rule that applies to instances of a class", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "bidirectional": {"description": "in addition to preconditions entailing postconditions, the postconditions entail the preconditions", "type": "boolean"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deactivated": {"description": "a deactivated rule is not executed by the rules engine", "type": "boolean"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "elseconditions": {"$ref": "#/$defs/AnonymousClassExpression", "description": "an expression that must hold for an instance of the class, if the preconditions no not hold"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "open_world": {"description": "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these", "type": "boolean"}, "postconditions": {"$ref": "#/$defs/AnonymousClassExpression", "description": "an expression that must hold for an instance of the class, if the preconditions hold"}, "preconditions": {"$ref": "#/$defs/AnonymousClassExpression", "description": "an expression that must hold in order for the rule to be applicable to an instance"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "title": "ClassRule", "type": "object"}, "EnumDefinition": {"additionalProperties": false, "description": "an element whose instances must be drawn from a specified set of permissible values", "properties": {"abstract": {"description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", "type": "boolean"}, "aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "apply_to": {"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.", "items": {"type": "string"}, "type": "array"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "code_set": {"description": "the identifier of an enumeration code set.", "type": "string"}, "code_set_tag": {"description": "the version tag of the enumeration code set", "type": "string"}, "code_set_version": {"description": "the version identifier of the enumeration code set", "type": "string"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "concepts": {"description": "A list of identifiers that are used to construct a set of permissible values", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "created_by": {"description": "agent that created the element", "type": "string"}, "created_on": {"description": "time at which the element was created", "format": "date-time", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "enum_uri": {"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", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "include": {"description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "inherits": {"description": "An enum definition that is used as the basis to create a new enum", "items": {"type": "string"}, "type": "array"}, "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", "type": "string"}, "last_updated_on": {"description": "time at which the element was last updated", "format": "date-time", "type": "string"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "matches": {"$ref": "#/$defs/MatchQuery", "description": "Specifies a match query that is used to calculate the list of permissible values"}, "minus": {"description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "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.", "type": "boolean"}, "mixins": {"description": "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from.", "items": {"type": "string"}, "type": "array"}, "modified_by": {"description": "agent that modified the element", "type": "string"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "permissible_values": {"additionalProperties": {"$ref": "#/$defs/PermissibleValue__identifier_optional"}, "description": "A list of possible values for a slot range", "type": "object"}, "pv_formula": {"$ref": "#/$defs/PvFormulaOptions", "description": "Defines the specific formula to be used to generate the permissible values."}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "reachable_from": {"$ref": "#/$defs/ReachabilityQuery", "description": "Specifies a query for obtaining a list of permissible values based on graph reachability"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "status": {"description": "status of the element", "type": "string"}, "string_serialization": {"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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "values_from": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "items": {"type": "string"}, "type": "array"}}, "required": ["name"], "title": "EnumDefinition", "type": "object"}, "EnumDefinition__identifier_optional": {"additionalProperties": false, "description": "an element whose instances must be drawn from a specified set of permissible values", "properties": {"abstract": {"description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", "type": "boolean"}, "aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "apply_to": {"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.", "items": {"type": "string"}, "type": "array"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "code_set": {"description": "the identifier of an enumeration code set.", "type": "string"}, "code_set_tag": {"description": "the version tag of the enumeration code set", "type": "string"}, "code_set_version": {"description": "the version identifier of the enumeration code set", "type": "string"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "concepts": {"description": "A list of identifiers that are used to construct a set of permissible values", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "created_by": {"description": "agent that created the element", "type": "string"}, "created_on": {"description": "time at which the element was created", "format": "date-time", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "enum_uri": {"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", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "include": {"description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "inherits": {"description": "An enum definition that is used as the basis to create a new enum", "items": {"type": "string"}, "type": "array"}, "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", "type": "string"}, "last_updated_on": {"description": "time at which the element was last updated", "format": "date-time", "type": "string"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "matches": {"$ref": "#/$defs/MatchQuery", "description": "Specifies a match query that is used to calculate the list of permissible values"}, "minus": {"description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "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.", "type": "boolean"}, "mixins": {"description": "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from.", "items": {"type": "string"}, "type": "array"}, "modified_by": {"description": "agent that modified the element", "type": "string"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "permissible_values": {"additionalProperties": {"$ref": "#/$defs/PermissibleValue__identifier_optional"}, "description": "A list of possible values for a slot range", "type": "object"}, "pv_formula": {"$ref": "#/$defs/PvFormulaOptions", "description": "Defines the specific formula to be used to generate the permissible values."}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "reachable_from": {"$ref": "#/$defs/ReachabilityQuery", "description": "Specifies a query for obtaining a list of permissible values based on graph reachability"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "status": {"description": "status of the element", "type": "string"}, "string_serialization": {"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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "values_from": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "items": {"type": "string"}, "type": "array"}}, "required": [], "title": "EnumDefinition", "type": "object"}, "EnumExpression": {"additionalProperties": false, "description": "An expression that constrains the range of a slot", "properties": {"code_set": {"description": "the identifier of an enumeration code set.", "type": "string"}, "code_set_tag": {"description": "the version tag of the enumeration code set", "type": "string"}, "code_set_version": {"description": "the version identifier of the enumeration code set", "type": "string"}, "concepts": {"description": "A list of identifiers that are used to construct a set of permissible values", "items": {"type": "string"}, "type": "array"}, "include": {"description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "inherits": {"description": "An enum definition that is used as the basis to create a new enum", "items": {"type": "string"}, "type": "array"}, "matches": {"$ref": "#/$defs/MatchQuery", "description": "Specifies a match query that is used to calculate the list of permissible values"}, "minus": {"description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", "items": {"$ref": "#/$defs/AnonymousEnumExpression"}, "type": "array"}, "permissible_values": {"additionalProperties": {"$ref": "#/$defs/PermissibleValue__identifier_optional"}, "description": "A list of possible values for a slot range", "type": "object"}, "pv_formula": {"$ref": "#/$defs/PvFormulaOptions", "description": "Defines the specific formula to be used to generate the permissible values."}, "reachable_from": {"$ref": "#/$defs/ReachabilityQuery", "description": "Specifies a query for obtaining a list of permissible values based on graph reachability"}}, "title": "EnumExpression", "type": "object"}, "Example": {"additionalProperties": false, "description": "usage example and description", "properties": {"description": {"description": "description of what the value is doing", "type": "string"}, "value": {"description": "example value", "type": "string"}}, "title": "Example", "type": "object"}, "Extension": {"additionalProperties": false, "description": "a tag/value pair used to add non-model information to an entry", "properties": {"extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "tag": {"description": "a tag associated with an extension", "type": "string"}, "value": {"description": "the actual annotation", "type": "string"}}, "required": ["tag", "value"], "title": "Extension", "type": "object"}, "Extension__identifier_optional": {"additionalProperties": false, "description": "a tag/value pair used to add non-model information to an entry", "properties": {"extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "tag": {"description": "a tag associated with an extension", "type": "string"}, "value": {"description": "the actual annotation", "type": "string"}}, "required": ["value"], "title": "Extension", "type": "object"}, "ImportExpression": {"additionalProperties": false, "description": "an expression describing an import", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "import_as": {"type": "string"}, "import_from": {"type": "string"}, "import_map": {"additionalProperties": {"$ref": "#/$defs/Setting__identifier_optional"}, "type": "object"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "required": ["import_from"], "title": "ImportExpression", "type": "object"}, "LocalName": {"additionalProperties": false, "description": "an attributed label", "properties": {"local_name_source": {"description": "the ncname of the source of the name", "type": "string"}, "local_name_value": {"description": "a name assigned to an element in a given ontology", "type": "string"}}, "required": ["local_name_source", "local_name_value"], "title": "LocalName", "type": "object"}, "LocalName__identifier_optional": {"additionalProperties": false, "description": "an attributed label", "properties": {"local_name_source": {"description": "the ncname of the source of the name", "type": "string"}, "local_name_value": {"description": "a name assigned to an element in a given ontology", "type": "string"}}, "required": ["local_name_value"], "title": "LocalName", "type": "object"}, "MatchQuery": {"additionalProperties": false, "description": "A query that is used on an enum expression to dynamically obtain a set of permissivle values via a query that matches on properties of the external concepts", "properties": {"identifier_pattern": {"description": "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values", "type": "string"}, "source_ontology": {"description": "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values", "type": "string"}}, "title": "MatchQuery", "type": "object"}, "PathExpression": {"additionalProperties": false, "description": "An expression that describes an abstract path from an object to another through a sequence of slot lookups", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/PathExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/PathExpression"}, "type": "array"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/PathExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "followed_by": {"$ref": "#/$defs/PathExpression", "description": "in a sequential list, this indicates the next member"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/PathExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "range_expression": {"$ref": "#/$defs/AnonymousClassExpression", "description": "A range that is described as a boolean expression combining existing ranges"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "reversed": {"description": "true if the slot is to be inversed", "type": "boolean"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "traverse": {"description": "the slot to traverse", "type": "string"}}, "title": "PathExpression", "type": "object"}, "PatternExpression": {"additionalProperties": false, "description": "a regular expression pattern used to evaluate conformance of a string", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "interpolated": {"description": "if true then the pattern is first string interpolated", "type": "boolean"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "partial_match": {"description": "if true then the pattern must match the whole string, as if enclosed in ^...$", "type": "boolean"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "syntax": {"description": "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated.", "type": "string"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "title": "PatternExpression", "type": "object"}, "PermissibleValue": {"additionalProperties": false, "description": "a permissible value, accompanied by intended text and an optional mapping to a concept URI", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "meaning": {"description": "the value meaning of a permissible value", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "text": {"type": "string"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}}, "required": ["text"], "title": "PermissibleValue", "type": "object"}, "PermissibleValue__identifier_optional": {"additionalProperties": false, "description": "a permissible value, accompanied by intended text and an optional mapping to a concept URI", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "meaning": {"description": "the value meaning of a permissible value", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "text": {"type": "string"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}}, "required": [], "title": "PermissibleValue", "type": "object"}, "Prefix": {"additionalProperties": false, "description": "prefix URI tuple", "properties": {"prefix_prefix": {"description": "the nsname (sans ':' for a given prefix)", "type": "string"}, "prefix_reference": {"description": "A URI associated with a given prefix", "type": "string"}}, "required": ["prefix_prefix", "prefix_reference"], "title": "Prefix", "type": "object"}, "Prefix__identifier_optional": {"additionalProperties": false, "description": "prefix URI tuple", "properties": {"prefix_prefix": {"description": "the nsname (sans ':' for a given prefix)", "type": "string"}, "prefix_reference": {"description": "A URI associated with a given prefix", "type": "string"}}, "required": ["prefix_reference"], "title": "Prefix", "type": "object"}, "PresenceEnum": {"description": "enumeration of conditions by which a slot value should be set", "enum": ["UNCOMMITTED", "PRESENT", "ABSENT"], "title": "PresenceEnum", "type": "string"}, "PvFormulaOptions": {"description": "The formula used to generate the set of permissible values from the code_set values", "enum": ["CODE", "CURIE", "URI", "FHIR_CODING"], "title": "PvFormulaOptions", "type": "string"}, "ReachabilityQuery": {"additionalProperties": false, "description": "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", "properties": {"include_self": {"description": "True if the query is reflexive", "type": "boolean"}, "is_direct": {"description": "True if the reachability query should only include directly related nodes, if False then include also transitively connected", "type": "boolean"}, "relationship_types": {"description": "A list of relationship types (properties) that are used in a reachability query", "items": {"type": "string"}, "type": "array"}, "source_nodes": {"description": "A list of nodes that are used in the reachability query", "items": {"type": "string"}, "type": "array"}, "source_ontology": {"description": "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values", "type": "string"}, "traverse_up": {"description": "True if the direction of the reachability query is reversed and ancestors are retrieved", "type": "boolean"}}, "title": "ReachabilityQuery", "type": "object"}, "RelationalRoleEnum": {"description": "enumeration of roles a slot on a relationship class can play", "enum": ["SUBJECT", "OBJECT", "PREDICATE", "NODE", "OTHER_ROLE"], "title": "RelationalRoleEnum", "type": "string"}, "SchemaDefinition": {"additionalProperties": false, "description": "a collection of subset, type, slot and class definitions", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "categories": {"description": "controlled terms used to categorize an element", "items": {"type": "string"}, "type": "array"}, "classes": {"additionalProperties": {"$ref": "#/$defs/ClassDefinition__identifier_optional"}, "description": "An index to the collection of all class definitions in the schema", "type": "object"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "default_curi_maps": {"description": "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables", "items": {"type": "string"}, "type": "array"}, "default_prefix": {"description": "default and base prefix -- used for ':' identifiers, @base and @vocab", "type": "string"}, "default_range": {"description": "default slot range to be used if range element is omitted from a slot definition", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "emit_prefixes": {"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.", "items": {"type": "string"}, "type": "array"}, "enums": {"additionalProperties": {"$ref": "#/$defs/EnumDefinition__identifier_optional"}, "description": "An index to the collection of all enum definitions in the schema", "type": "object"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "generation_date": {"description": "date and time that the schema was loaded/generated", "format": "date-time", "type": "string"}, "id": {"description": "The official schema URI", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "imports": {"description": "other schemas that are included in this schema", "items": {"type": "string"}, "type": "array"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "keywords": {"description": "Keywords or tags used to describe the element", "items": {"type": "string"}, "type": "array"}, "license": {"description": "license for the schema", "type": "string"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "metamodel_version": {"description": "Version of the metamodel used to load the schema", "type": "string"}, "name": {"description": "a unique name for the schema that is both human-readable and consists of only characters from the NCName set", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "prefixes": {"additionalProperties": {"$ref": "#/$defs/Prefix__identifier_optional"}, "description": "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes", "type": "object"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "settings": {"additionalProperties": {"$ref": "#/$defs/Setting__identifier_optional"}, "description": "A collection of global variable settings", "type": "object"}, "slot_names_unique": {"description": "if true then induced/mangled slot names are not created for class_usage and attributes", "type": "boolean"}, "slots": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "An index to the collection of all slot definitions in the schema", "type": "object"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "source_file": {"description": "name, uri or description of the source of the schema", "type": "string"}, "source_file_date": {"description": "modification date of the source of the schema", "format": "date-time", "type": "string"}, "source_file_size": {"description": "size in bytes of the source of the schema", "type": "integer"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "subsets": {"additionalProperties": {"$ref": "#/$defs/SubsetDefinition__identifier_optional"}, "description": "An index to the collection of all subset definitions in the schema", "type": "object"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "types": {"additionalProperties": {"$ref": "#/$defs/TypeDefinition__identifier_optional"}, "description": "An index to the collection of all type definitions in the schema", "type": "object"}, "version": {"description": "particular version of schema", "type": "string"}}, "required": ["id", "name"], "title": "SchemaDefinition", "type": "object"}, "Setting": {"additionalProperties": false, "description": "assignment of a key to a value", "properties": {"setting_key": {"description": "the variable name for a setting", "type": "string"}, "setting_value": {"description": "The value assigned for a setting", "type": "string"}}, "required": ["setting_key", "setting_value"], "title": "Setting", "type": "object"}, "Setting__identifier_optional": {"additionalProperties": false, "description": "assignment of a key to a value", "properties": {"setting_key": {"description": "the variable name for a setting", "type": "string"}, "setting_value": {"description": "The value assigned for a setting", "type": "string"}}, "required": ["setting_value"], "title": "Setting", "type": "object"}, "SlotDefinition": {"additionalProperties": false, "description": "an element that describes how instances are related to other instances", "properties": {"abstract": {"description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", "type": "boolean"}, "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.", "type": "string"}, "aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_members": {"$ref": "#/$defs/AnonymousSlotExpression", "description": "the value of the slot is multivalued with all members satisfying the condition"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "apply_to": {"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.", "items": {"type": "string"}, "type": "array"}, "asymmetric": {"description": "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i", "type": "boolean"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "children_are_mutually_disjoint": {"description": "If true then all direct is_a children are mutually disjoint and share no instances in common", "type": "boolean"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "created_by": {"description": "agent that created the element", "type": "string"}, "created_on": {"description": "time at which the element was created", "format": "date-time", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "designates_type": {"description": "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition", "type": "boolean"}, "disjoint_with": {"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", "items": {"type": "string"}, "type": "array"}, "domain": {"description": "defines the type of the subject of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts that X is an instance of C1\n", "type": "string"}, "domain_of": {"description": "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context", "items": {"type": "string"}, "type": "array"}, "enum_range": {"$ref": "#/$defs/EnumExpression", "description": "An inlined enumeration"}, "equals_expression": {"description": "the value of the slot must equal the value of the evaluated expression", "type": "string"}, "equals_number": {"description": "the slot must have range of a number and the value of the slot must equal the specified value", "type": "integer"}, "equals_string": {"description": "the slot must have range string and the value of the slot must equal the specified value", "type": "string"}, "equals_string_in": {"description": "the slot must have range string and the value of the slot must equal one of the specified values", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "has_member": {"$ref": "#/$defs/AnonymousSlotExpression", "description": "the value of the slot is multivalued with at least one member satisfying the condition"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "identifier": {"description": "True means that the key slot(s) uniquely identify the container. There can be at most one identifier or key per container", "type": "boolean"}, "ifabsent": {"description": "function that provides a default value for the slot. Possible values for this slot are defined in\nlinkml_runtime.utils.ifabsent_functions.default_library:\n * [Tt]rue -- boolean True\n * [Ff]alse -- boolean False\n * int(value) -- integer value\n * str(value) -- string value\n * default_range -- schema default range\n * bnode -- blank node identifier\n * slot_uri -- URI for the slot\n * class_curie -- CURIE for the containing class\n * class_uri -- URI for the containing class", "type": "string"}, "implicit_prefix": {"description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "inherited": {"description": "true means that the *value* of a slot is inherited by subclasses", "type": "boolean"}, "inlined": {"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.", "type": "boolean"}, "inlined_as_list": {"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.", "type": "boolean"}, "inverse": {"description": "indicates that any instance of d s r implies that there is also an instance of r s' d", "type": "string"}, "irreflexive": {"description": "If s is irreflexive, then there exists no i such i.s=i", "type": "boolean"}, "is_a": {"description": "A primary parent slot from which inheritable metaslots are propagated", "type": "string"}, "is_class_field": {"description": "indicates that for any instance, i, the domain of this slot will include an assertion of i s range", "type": "boolean"}, "is_grouping_slot": {"description": "true if this slot is a grouping slot", "type": "boolean"}, "is_usage_slot": {"description": "True means that this slot was defined in a slot_usage situation", "type": "boolean"}, "key": {"description": "True means that the key slot(s) uniquely identify the container.", "type": "boolean"}, "last_updated_on": {"description": "time at which the element was last updated", "format": "date-time", "type": "string"}, "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", "type": "boolean"}, "list_elements_unique": {"description": "If True, then there must be no duplicates in the elements of a multivalued slot", "type": "boolean"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "locally_reflexive": {"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", "type": "boolean"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "maximum_cardinality": {"description": "the maximum number of entries for a multivalued slot", "type": "integer"}, "maximum_value": {"description": "for slots with ranges of type number, the value must be equal to or lowe than this", "type": "integer"}, "minimum_cardinality": {"description": "the minimum number of entries for a multivalued slot", "type": "integer"}, "minimum_value": {"description": "for slots with ranges of type number, the value must be equal to or higher than this", "type": "integer"}, "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.", "type": "boolean"}, "mixins": {"description": "A collection of secondary parent mixin slots from which inheritable metaslots are propagated", "items": {"type": "string"}, "type": "array"}, "modified_by": {"description": "agent that modified the element", "type": "string"}, "multivalued": {"description": "true means that slot can have more than one value", "type": "boolean"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "owner": {"description": "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot", "type": "string"}, "path_rule": {"$ref": "#/$defs/PathExpression", "description": "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignemnts"}, "pattern": {"description": "the string value of the slot must conform to this regular expression expressed in the string", "type": "string"}, "range": {"description": "defines the type of the object of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts Y is an instance of C2\n", "type": "string"}, "range_expression": {"$ref": "#/$defs/AnonymousClassExpression", "description": "A range that is described as a boolean expression combining existing ranges"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "readonly": {"description": "If present, slot is read only. Text explains why", "type": "string"}, "recommended": {"description": "true means that the slot should be present in the loaded definition, but this is not required", "type": "boolean"}, "reflexive": {"description": "If s is reflexive, then i.s=i for all instances i", "type": "boolean"}, "reflexive_transitive_form_of": {"description": "transitive_form_of including the reflexive case", "type": "string"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "relational_role": {"$ref": "#/$defs/RelationalRoleEnum", "description": "the role a slot on a relationship class plays, for example, the subject, object or predicate roles"}, "required": {"description": "true means that the slot must be present in the loaded definition", "type": "boolean"}, "role": {"description": "a textual descriptor that indicates the role played by the slot range", "type": "string"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "shared": {"description": "If True, then the relationship between the slot domain and range is many to one or many to many", "type": "boolean"}, "singular_name": {"description": "a name that is used in the singular form", "type": "string"}, "slot_group": {"description": "allows for grouping of related slots into a grouping slot that serves the role of a group", "type": "string"}, "slot_uri": {"description": "predicate of this slot for semantic web application", "type": "string"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "status": {"description": "status of the element", "type": "string"}, "string_serialization": {"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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "structured_pattern": {"$ref": "#/$defs/PatternExpression", "description": "the string value of the slot must conform to the regular expression in the pattern expression"}, "subproperty_of": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "type": "string"}, "symmetric": {"description": "If s is symmetric, and i.s=v, then v.s=i", "type": "boolean"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "transitive": {"description": "If s is transitive, and i.s=z, and s.s=j, then i.s=j", "type": "boolean"}, "transitive_form_of": {"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", "type": "string"}, "union_of": {"description": "indicates that the domain element consists exactly of the members of the element in the range.", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}, "usage_slot_name": {"description": "The name of the slot referenced in the slot_usage", "type": "string"}, "value_presence": {"$ref": "#/$defs/PresenceEnum", "description": "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)"}, "values_from": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "items": {"type": "string"}, "type": "array"}}, "required": ["name"], "title": "SlotDefinition", "type": "object"}, "SlotDefinition__identifier_optional": {"additionalProperties": false, "description": "an element that describes how instances are related to other instances", "properties": {"abstract": {"description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", "type": "boolean"}, "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.", "type": "string"}, "aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_members": {"$ref": "#/$defs/AnonymousSlotExpression", "description": "the value of the slot is multivalued with all members satisfying the condition"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "apply_to": {"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.", "items": {"type": "string"}, "type": "array"}, "asymmetric": {"description": "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i", "type": "boolean"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "children_are_mutually_disjoint": {"description": "If true then all direct is_a children are mutually disjoint and share no instances in common", "type": "boolean"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "created_by": {"description": "agent that created the element", "type": "string"}, "created_on": {"description": "time at which the element was created", "format": "date-time", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "designates_type": {"description": "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition", "type": "boolean"}, "disjoint_with": {"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", "items": {"type": "string"}, "type": "array"}, "domain": {"description": "defines the type of the subject of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts that X is an instance of C1\n", "type": "string"}, "domain_of": {"description": "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context", "items": {"type": "string"}, "type": "array"}, "enum_range": {"$ref": "#/$defs/EnumExpression", "description": "An inlined enumeration"}, "equals_expression": {"description": "the value of the slot must equal the value of the evaluated expression", "type": "string"}, "equals_number": {"description": "the slot must have range of a number and the value of the slot must equal the specified value", "type": "integer"}, "equals_string": {"description": "the slot must have range string and the value of the slot must equal the specified value", "type": "string"}, "equals_string_in": {"description": "the slot must have range string and the value of the slot must equal one of the specified values", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "has_member": {"$ref": "#/$defs/AnonymousSlotExpression", "description": "the value of the slot is multivalued with at least one member satisfying the condition"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "identifier": {"description": "True means that the key slot(s) uniquely identify the container. There can be at most one identifier or key per container", "type": "boolean"}, "ifabsent": {"description": "function that provides a default value for the slot. Possible values for this slot are defined in\nlinkml_runtime.utils.ifabsent_functions.default_library:\n * [Tt]rue -- boolean True\n * [Ff]alse -- boolean False\n * int(value) -- integer value\n * str(value) -- string value\n * default_range -- schema default range\n * bnode -- blank node identifier\n * slot_uri -- URI for the slot\n * class_curie -- CURIE for the containing class\n * class_uri -- URI for the containing class", "type": "string"}, "implicit_prefix": {"description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "inherited": {"description": "true means that the *value* of a slot is inherited by subclasses", "type": "boolean"}, "inlined": {"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.", "type": "boolean"}, "inlined_as_list": {"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.", "type": "boolean"}, "inverse": {"description": "indicates that any instance of d s r implies that there is also an instance of r s' d", "type": "string"}, "irreflexive": {"description": "If s is irreflexive, then there exists no i such i.s=i", "type": "boolean"}, "is_a": {"description": "A primary parent slot from which inheritable metaslots are propagated", "type": "string"}, "is_class_field": {"description": "indicates that for any instance, i, the domain of this slot will include an assertion of i s range", "type": "boolean"}, "is_grouping_slot": {"description": "true if this slot is a grouping slot", "type": "boolean"}, "is_usage_slot": {"description": "True means that this slot was defined in a slot_usage situation", "type": "boolean"}, "key": {"description": "True means that the key slot(s) uniquely identify the container.", "type": "boolean"}, "last_updated_on": {"description": "time at which the element was last updated", "format": "date-time", "type": "string"}, "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", "type": "boolean"}, "list_elements_unique": {"description": "If True, then there must be no duplicates in the elements of a multivalued slot", "type": "boolean"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "locally_reflexive": {"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", "type": "boolean"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "maximum_cardinality": {"description": "the maximum number of entries for a multivalued slot", "type": "integer"}, "maximum_value": {"description": "for slots with ranges of type number, the value must be equal to or lowe than this", "type": "integer"}, "minimum_cardinality": {"description": "the minimum number of entries for a multivalued slot", "type": "integer"}, "minimum_value": {"description": "for slots with ranges of type number, the value must be equal to or higher than this", "type": "integer"}, "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.", "type": "boolean"}, "mixins": {"description": "A collection of secondary parent mixin slots from which inheritable metaslots are propagated", "items": {"type": "string"}, "type": "array"}, "modified_by": {"description": "agent that modified the element", "type": "string"}, "multivalued": {"description": "true means that slot can have more than one value", "type": "boolean"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousSlotExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "owner": {"description": "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot", "type": "string"}, "path_rule": {"$ref": "#/$defs/PathExpression", "description": "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignemnts"}, "pattern": {"description": "the string value of the slot must conform to this regular expression expressed in the string", "type": "string"}, "range": {"description": "defines the type of the object of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts Y is an instance of C2\n", "type": "string"}, "range_expression": {"$ref": "#/$defs/AnonymousClassExpression", "description": "A range that is described as a boolean expression combining existing ranges"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "readonly": {"description": "If present, slot is read only. Text explains why", "type": "string"}, "recommended": {"description": "true means that the slot should be present in the loaded definition, but this is not required", "type": "boolean"}, "reflexive": {"description": "If s is reflexive, then i.s=i for all instances i", "type": "boolean"}, "reflexive_transitive_form_of": {"description": "transitive_form_of including the reflexive case", "type": "string"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "relational_role": {"$ref": "#/$defs/RelationalRoleEnum", "description": "the role a slot on a relationship class plays, for example, the subject, object or predicate roles"}, "required": {"description": "true means that the slot must be present in the loaded definition", "type": "boolean"}, "role": {"description": "a textual descriptor that indicates the role played by the slot range", "type": "string"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "shared": {"description": "If True, then the relationship between the slot domain and range is many to one or many to many", "type": "boolean"}, "singular_name": {"description": "a name that is used in the singular form", "type": "string"}, "slot_group": {"description": "allows for grouping of related slots into a grouping slot that serves the role of a group", "type": "string"}, "slot_uri": {"description": "predicate of this slot for semantic web application", "type": "string"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "status": {"description": "status of the element", "type": "string"}, "string_serialization": {"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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "structured_pattern": {"$ref": "#/$defs/PatternExpression", "description": "the string value of the slot must conform to the regular expression in the pattern expression"}, "subproperty_of": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "type": "string"}, "symmetric": {"description": "If s is symmetric, and i.s=v, then v.s=i", "type": "boolean"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "transitive": {"description": "If s is transitive, and i.s=z, and s.s=j, then i.s=j", "type": "boolean"}, "transitive_form_of": {"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", "type": "string"}, "union_of": {"description": "indicates that the domain element consists exactly of the members of the element in the range.", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}, "usage_slot_name": {"description": "The name of the slot referenced in the slot_usage", "type": "string"}, "value_presence": {"$ref": "#/$defs/PresenceEnum", "description": "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)"}, "values_from": {"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 hiearchy into an enumerated list of possible values in every serialization of the model.", "items": {"type": "string"}, "type": "array"}}, "required": [], "title": "SlotDefinition", "type": "object"}, "StructuredAlias": {"additionalProperties": false, "description": "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "categories": {"description": "The category or categories of an alias. This can be drawn from any relevant vocabulary", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "literal_form": {"description": "The literal lexical form of a structured alias", "type": "string"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "predicate": {"$ref": "#/$defs/AliasPredicateEnum", "description": "The relationship between an element and its alias "}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "required": ["literal_form"], "title": "StructuredAlias", "type": "object"}, "SubsetDefinition": {"additionalProperties": false, "description": "an element that can be used to group other metamodel elements", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "required": ["name"], "title": "SubsetDefinition", "type": "object"}, "SubsetDefinition__identifier_optional": {"additionalProperties": false, "description": "an element that can be used to group other metamodel elements", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}}, "required": [], "title": "SubsetDefinition", "type": "object"}, "TypeDefinition": {"additionalProperties": false, "description": "an element that whose instances are atomic scalar values that can be mapped to primitive types", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "base": {"description": "python base type that implements this type definition", "type": "string"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "equals_number": {"description": "the slot must have range of a number and the value of the slot must equal the specified value", "type": "integer"}, "equals_string": {"description": "the slot must have range string and the value of the slot must equal the specified value", "type": "string"}, "equals_string_in": {"description": "the slot must have range string and the value of the slot must equal one of the specified values", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "implicit_prefix": {"description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "maximum_value": {"description": "for slots with ranges of type number, the value must be equal to or lowe than this", "type": "integer"}, "minimum_value": {"description": "for slots with ranges of type number, the value must be equal to or higher than this", "type": "integer"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "pattern": {"description": "the string value of the slot must conform to this regular expression expressed in the string", "type": "string"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "repr": {"description": "the name of the python object that implements this type definition", "type": "string"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "structured_pattern": {"$ref": "#/$defs/PatternExpression", "description": "the string value of the slot must conform to the regular expression in the pattern expression"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "typeof": {"description": "Names a parent type", "type": "string"}, "union_of": {"description": "indicates that the domain element consists exactly of the members of the element in the range.", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}, "uri": {"description": "The uri that defines the possible values for the type definition", "type": "string"}}, "required": ["name"], "title": "TypeDefinition", "type": "object"}, "TypeDefinition__identifier_optional": {"additionalProperties": false, "description": "an element that whose instances are atomic scalar values that can be mapped to primitive types", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "all_of": {"description": "holds if all of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "any_of": {"description": "holds if at least one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "base": {"description": "python base type that implements this type definition", "type": "string"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "equals_number": {"description": "the slot must have range of a number and the value of the slot must equal the specified value", "type": "integer"}, "equals_string": {"description": "the slot must have range string and the value of the slot must equal the specified value", "type": "string"}, "equals_string_in": {"description": "the slot must have range string and the value of the slot must equal one of the specified values", "items": {"type": "string"}, "type": "array"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "exactly_one_of": {"description": "holds if only one of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "implicit_prefix": {"description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "maximum_value": {"description": "for slots with ranges of type number, the value must be equal to or lowe than this", "type": "integer"}, "minimum_value": {"description": "for slots with ranges of type number, the value must be equal to or higher than this", "type": "integer"}, "name": {"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.", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "none_of": {"description": "holds if none of the expressions hold", "items": {"$ref": "#/$defs/AnonymousTypeExpression"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "pattern": {"description": "the string value of the slot must conform to this regular expression expressed in the string", "type": "string"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "repr": {"description": "the name of the python object that implements this type definition", "type": "string"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "structured_pattern": {"$ref": "#/$defs/PatternExpression", "description": "the string value of the slot must conform to the regular expression in the pattern expression"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "typeof": {"description": "Names a parent type", "type": "string"}, "union_of": {"description": "indicates that the domain element consists exactly of the members of the element in the range.", "items": {"type": "string"}, "type": "array"}, "unit": {"$ref": "#/$defs/UnitOfMeasure", "description": "an encoding of a unit"}, "uri": {"description": "The uri that defines the possible values for the type definition", "type": "string"}}, "required": [], "title": "TypeDefinition", "type": "object"}, "UniqueKey": {"additionalProperties": false, "description": "a collection of slots whose values uniquely identify an instance of a class", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "unique_key_name": {"description": "name of the unique key", "type": "string"}, "unique_key_slots": {"description": "list of slot names that form a key", "items": {"type": "string"}, "type": "array"}}, "required": ["unique_key_name", "unique_key_slots"], "title": "UniqueKey", "type": "object"}, "UniqueKey__identifier_optional": {"additionalProperties": false, "description": "a collection of slots whose values uniquely identify an instance of a class", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "unique_key_name": {"description": "name of the unique key", "type": "string"}, "unique_key_slots": {"description": "list of slot names that form a key", "items": {"type": "string"}, "type": "array"}}, "required": ["unique_key_slots"], "title": "UniqueKey", "type": "object"}, "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).", "properties": {"derivation": {"description": "Expression for deriving this unit from other units", "type": "string"}, "exact_mappings": {"description": "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT", "items": {"type": "string"}, "type": "array"}, "has_quantity_kind": {"description": "Concept in a vocabulary or ontology that denotes the kind of quanity being measured, e.g. length", "type": "string"}, "iec61360code": {"type": "string"}, "symbol": {"description": "name of the unit encoded as a symbol", "type": "string"}, "ucum_code": {"description": "associates a QUDT unit with its UCUM code (case-sensitive).", "type": "string"}}, "title": "UnitOfMeasure", "type": "object"}}, "$id": "https://w3id.org/linkml/meta", "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": true, "metamodel_version": "1.7.0", "properties": {"aliases": {"description": "Alaternate names for the element", "items": {"type": "string"}, "type": "array"}, "alt_descriptions": {"additionalProperties": {"$ref": "#/$defs/AltDescription__identifier_optional"}, "description": "A sourced alternative description for an element", "type": "object"}, "annotations": {"additionalProperties": {"$ref": "#/$defs/Annotation__identifier_optional"}, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object"}, "broad_mappings": {"description": "A list of terms from different schemas or terminology systems that have broader meaning.", "items": {"type": "string"}, "type": "array"}, "categories": {"description": "controlled terms used to categorize an element", "items": {"type": "string"}, "type": "array"}, "classes": {"additionalProperties": {"$ref": "#/$defs/ClassDefinition__identifier_optional"}, "description": "An index to the collection of all class definitions in the schema", "type": "object"}, "close_mappings": {"description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": {"type": "string"}, "type": "array"}, "comments": {"description": "notes and comments about an element intended for external consumption", "items": {"type": "string"}, "type": "array"}, "conforms_to": {"description": "An established standard to which the element conforms.", "type": "string"}, "default_curi_maps": {"description": "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables", "items": {"type": "string"}, "type": "array"}, "default_prefix": {"description": "default and base prefix -- used for ':' identifiers, @base and @vocab", "type": "string"}, "default_range": {"description": "default slot range to be used if range element is omitted from a slot definition", "type": "string"}, "definition_uri": {"description": "the \"native\" URI of the element", "type": "string"}, "deprecated": {"description": "Description of why and when this element will no longer be used", "type": "string"}, "deprecated_element_has_exact_replacement": {"description": "When an element is deprecated, it can be automatically replaced by this uri or curie", "type": "string"}, "deprecated_element_has_possible_replacement": {"description": "When an element is deprecated, it can be potentially replaced by this uri or curie", "type": "string"}, "description": {"description": "a description of the element's purpose and use", "type": "string"}, "emit_prefixes": {"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.", "items": {"type": "string"}, "type": "array"}, "enums": {"additionalProperties": {"$ref": "#/$defs/EnumDefinition__identifier_optional"}, "description": "An index to the collection of all enum definitions in the schema", "type": "object"}, "exact_mappings": {"description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": {"type": "string"}, "type": "array"}, "examples": {"description": "example usages of an element", "items": {"$ref": "#/$defs/Example"}, "type": "array"}, "extensions": {"additionalProperties": {"$ref": "#/$defs/Extension__identifier_optional"}, "description": "a tag/text tuple attached to an arbitrary element", "type": "object"}, "from_schema": {"description": "id of the schema that defined the element", "type": "string"}, "generation_date": {"description": "date and time that the schema was loaded/generated", "format": "date-time", "type": "string"}, "id": {"description": "The official schema URI", "type": "string"}, "id_prefixes": {"description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", "items": {"type": "string"}, "type": "array"}, "imported_from": {"description": "the imports entry that this element was derived from. Empty means primary source", "type": "string"}, "imports": {"description": "other schemas that are included in this schema", "items": {"type": "string"}, "type": "array"}, "in_language": {"type": "string"}, "in_subset": {"description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", "items": {"type": "string"}, "type": "array"}, "keywords": {"description": "Keywords or tags used to describe the element", "items": {"type": "string"}, "type": "array"}, "license": {"description": "license for the schema", "type": "string"}, "local_names": {"additionalProperties": {"$ref": "#/$defs/LocalName__identifier_optional"}, "type": "object"}, "mappings": {"description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", "items": {"type": "string"}, "type": "array"}, "metamodel_version": {"description": "Version of the metamodel used to load the schema", "type": "string"}, "name": {"description": "a unique name for the schema that is both human-readable and consists of only characters from the NCName set", "type": "string"}, "narrow_mappings": {"description": "A list of terms from different schemas or terminology systems that have narrower meaning.", "items": {"type": "string"}, "type": "array"}, "notes": {"description": "editorial notes about an element intended for internal consumption", "items": {"type": "string"}, "type": "array"}, "prefixes": {"additionalProperties": {"$ref": "#/$defs/Prefix__identifier_optional"}, "description": "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes", "type": "object"}, "rank": {"description": "the relative order in which the element occurs, lower values are given precedence", "type": "integer"}, "related_mappings": {"description": "A list of terms from different schemas or terminology systems that have related meaning.", "items": {"type": "string"}, "type": "array"}, "see_also": {"description": "a reference", "items": {"type": "string"}, "type": "array"}, "settings": {"additionalProperties": {"$ref": "#/$defs/Setting__identifier_optional"}, "description": "A collection of global variable settings", "type": "object"}, "slot_names_unique": {"description": "if true then induced/mangled slot names are not created for class_usage and attributes", "type": "boolean"}, "slots": {"additionalProperties": {"$ref": "#/$defs/SlotDefinition__identifier_optional"}, "description": "An index to the collection of all slot definitions in the schema", "type": "object"}, "source": {"description": "A related resource from which the element is derived.", "type": "string"}, "source_file": {"description": "name, uri or description of the source of the schema", "type": "string"}, "source_file_date": {"description": "modification date of the source of the schema", "format": "date-time", "type": "string"}, "source_file_size": {"description": "size in bytes of the source of the schema", "type": "integer"}, "structured_aliases": {"description": "A list of structured_alias objects.", "items": {"$ref": "#/$defs/StructuredAlias"}, "type": "array"}, "subsets": {"additionalProperties": {"$ref": "#/$defs/SubsetDefinition__identifier_optional"}, "description": "An index to the collection of all subset definitions in the schema", "type": "object"}, "title": {"description": "the official title of the element", "type": "string"}, "todos": {"description": "Outstanding issue that needs resolution", "items": {"type": "string"}, "type": "array"}, "types": {"additionalProperties": {"$ref": "#/$defs/TypeDefinition__identifier_optional"}, "description": "An index to the collection of all type definitions in the schema", "type": "object"}, "version": {"description": "particular version of schema", "type": "string"}}, "required": ["id", "name"], "title": "meta", "type": "object", "version": "2.0.0"} \ No newline at end of file +{ + "$defs": { + "AliasPredicateEnum": { + "description": "", + "enum": [ + "EXACT_SYNONYM", + "RELATED_SYNONYM", + "BROAD_SYNONYM", + "NARROW_SYNONYM" + ], + "title": "AliasPredicateEnum", + "type": "string" + }, + "AltDescription": { + "additionalProperties": false, + "description": "an attributed description", + "properties": { + "description": { + "description": "text of an attributed description", + "type": "string" + }, + "source": { + "description": "the source of an attributed description", + "type": "string" + } + }, + "required": [ + "source", + "description" + ], + "title": "AltDescription", + "type": "object" + }, + "AltDescription__identifier_optional": { + "additionalProperties": false, + "description": "an attributed description", + "properties": { + "description": { + "description": "text of an attributed description", + "type": "string" + }, + "source": { + "description": "the source of an attributed description", + "type": "string" + } + }, + "required": [ + "description" + ], + "title": "AltDescription", + "type": "object" + }, + "Annotation": { + "additionalProperties": false, + "description": "a tag/value pair with the semantics of OWL Annotation", + "properties": { + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "tag": { + "description": "a tag associated with an extension", + "type": "string" + }, + "value": { + "description": "the actual annotation", + "type": "string" + } + }, + "required": [ + "tag", + "value" + ], + "title": "Annotation", + "type": "object" + }, + "Annotation__identifier_optional": { + "additionalProperties": false, + "description": "a tag/value pair with the semantics of OWL Annotation", + "properties": { + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "tag": { + "description": "a tag associated with an extension", + "type": "string" + }, + "value": { + "description": "the actual annotation", + "type": "string" + } + }, + "required": [ + "value" + ], + "title": "Annotation", + "type": "object" + }, + "AnonymousClassExpression": { + "additionalProperties": false, + "description": "", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "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", + "type": "string" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "slot_conditions": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "expresses constraints on a group of slots for a class expression", + "type": "object" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "title": "AnonymousClassExpression", + "type": "object" + }, + "AnonymousEnumExpression": { + "additionalProperties": false, + "description": "An enum_expression that is not named", + "properties": { + "code_set": { + "description": "the identifier of an enumeration code set.", + "type": "string" + }, + "code_set_tag": { + "description": "the version tag of the enumeration code set", + "type": "string" + }, + "code_set_version": { + "description": "the version identifier of the enumeration code set", + "type": "string" + }, + "concepts": { + "description": "A list of identifiers that are used to construct a set of permissible values", + "items": { + "type": "string" + }, + "type": "array" + }, + "include": { + "description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "inherits": { + "description": "An enum definition that is used as the basis to create a new enum", + "items": { + "type": "string" + }, + "type": "array" + }, + "matches": { + "$ref": "#/$defs/MatchQuery", + "description": "Specifies a match query that is used to calculate the list of permissible values" + }, + "minus": { + "description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "permissible_values": { + "additionalProperties": { + "$ref": "#/$defs/PermissibleValue__identifier_optional" + }, + "description": "A list of possible values for a slot range", + "type": "object" + }, + "pv_formula": { + "$ref": "#/$defs/PvFormulaOptions", + "description": "Defines the specific formula to be used to generate the permissible values." + }, + "reachable_from": { + "$ref": "#/$defs/ReachabilityQuery", + "description": "Specifies a query for obtaining a list of permissible values based on graph reachability" + } + }, + "title": "AnonymousEnumExpression", + "type": "object" + }, + "AnonymousSlotExpression": { + "additionalProperties": false, + "description": "", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_members": { + "$ref": "#/$defs/AnonymousSlotExpression", + "description": "the value of the slot is multivalued with all members satisfying the condition" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "enum_range": { + "$ref": "#/$defs/EnumExpression", + "description": "An inlined enumeration" + }, + "equals_expression": { + "description": "the value of the slot must equal the value of the evaluated expression", + "type": "string" + }, + "equals_number": { + "description": "the slot must have range of a number and the value of the slot must equal the specified value", + "type": "integer" + }, + "equals_string": { + "description": "the slot must have range string and the value of the slot must equal the specified value", + "type": "string" + }, + "equals_string_in": { + "description": "the slot must have range string and the value of the slot must equal one of the specified values", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "has_member": { + "$ref": "#/$defs/AnonymousSlotExpression", + "description": "the value of the slot is multivalued with at least one member satisfying the condition" + }, + "implicit_prefix": { + "description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "inlined": { + "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.", + "type": "boolean" + }, + "inlined_as_list": { + "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.", + "type": "boolean" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximum_cardinality": { + "description": "the maximum number of entries for a multivalued slot", + "type": "integer" + }, + "maximum_value": { + "description": "for slots with ranges of type number, the value must be equal to or lowe than this", + "type": "integer" + }, + "minimum_cardinality": { + "description": "the minimum number of entries for a multivalued slot", + "type": "integer" + }, + "minimum_value": { + "description": "for slots with ranges of type number, the value must be equal to or higher than this", + "type": "integer" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "pattern": { + "description": "the string value of the slot must conform to this regular expression expressed in the string", + "type": "string" + }, + "range": { + "description": "defines the type of the object of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts Y is an instance of C2\n", + "type": "string" + }, + "range_expression": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "A range that is described as a boolean expression combining existing ranges" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "recommended": { + "description": "true means that the slot should be present in the loaded definition, but this is not required", + "type": "boolean" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "required": { + "description": "true means that the slot must be present in the loaded definition", + "type": "boolean" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "structured_pattern": { + "$ref": "#/$defs/PatternExpression", + "description": "the string value of the slot must conform to the regular expression in the pattern expression" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + }, + "value_presence": { + "$ref": "#/$defs/PresenceEnum", + "description": "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)" + } + }, + "title": "AnonymousSlotExpression", + "type": "object" + }, + "AnonymousTypeExpression": { + "additionalProperties": false, + "description": "", + "properties": { + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "equals_number": { + "description": "the slot must have range of a number and the value of the slot must equal the specified value", + "type": "integer" + }, + "equals_string": { + "description": "the slot must have range string and the value of the slot must equal the specified value", + "type": "string" + }, + "equals_string_in": { + "description": "the slot must have range string and the value of the slot must equal one of the specified values", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "implicit_prefix": { + "description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", + "type": "string" + }, + "maximum_value": { + "description": "for slots with ranges of type number, the value must be equal to or lowe than this", + "type": "integer" + }, + "minimum_value": { + "description": "for slots with ranges of type number, the value must be equal to or higher than this", + "type": "integer" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "pattern": { + "description": "the string value of the slot must conform to this regular expression expressed in the string", + "type": "string" + }, + "structured_pattern": { + "$ref": "#/$defs/PatternExpression", + "description": "the string value of the slot must conform to the regular expression in the pattern expression" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + } + }, + "title": "AnonymousTypeExpression", + "type": "object" + }, + "Anything": { + "additionalProperties": true, + "description": "", + "title": "Anything", + "type": "object" + }, + "ClassDefinition": { + "additionalProperties": false, + "description": "an element whose instances are complex objects that may have slot-value assignments", + "properties": { + "abstract": { + "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", + "type": "boolean" + }, + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "apply_to": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "attributes": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "Inline definition of slots", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "children_are_mutually_disjoint": { + "description": "If true then all direct is_a children are mutually disjoint and share no instances in common", + "type": "boolean" + }, + "class_uri": { + "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", + "type": "string" + }, + "classification_rules": { + "description": "the collection of classification rules that apply to all members of this class", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "created_by": { + "description": "agent that created the element", + "type": "string" + }, + "created_on": { + "description": "time at which the element was created", + "format": "date-time", + "type": "string" + }, + "defining_slots": { + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "disjoint_with": { + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "is_a": { + "description": "A primary parent class from which inheritable metaslots are propagated", + "type": "string" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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.", + "type": "boolean" + }, + "mixins": { + "description": "A collection of secondary parent mixin classes from which inheritable metaslots are propagated", + "items": { + "type": "string" + }, + "type": "array" + }, + "modified_by": { + "description": "agent that modified the element", + "type": "string" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "represents_relationship": { + "description": "true if this class represents a relationship rather than an entity", + "type": "boolean" + }, + "rules": { + "description": "the collection of rules that apply to all members of this class", + "items": { + "$ref": "#/$defs/ClassRule" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "slot_conditions": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "expresses constraints on a group of slots for a class expression", + "type": "object" + }, + "slot_names_unique": { + "description": "if true then induced/mangled slot names are not created for class_usage and attributes", + "type": "boolean" + }, + "slot_usage": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "the refinement of a slot in the context of the containing class definition.", + "type": "object" + }, + "slots": { + "description": "collection of slot names that are applicable to a class", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "status": { + "description": "status of the element", + "type": "string" + }, + "string_serialization": { + "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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "subclass_of": { + "description": "rdfs:subClassOf to be emitted in OWL generation", + "type": "string" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "tree_root": { + "description": "indicator that this is the root class in tree structures", + "type": "boolean" + }, + "union_of": { + "description": "indicates that the domain element consists exactly of the members of the element in the range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "unique_keys": { + "additionalProperties": { + "$ref": "#/$defs/UniqueKey__identifier_optional" + }, + "description": "A collection of unique keys for this class. Unique keys may be singular or compound.", + "type": "object" + }, + "values_from": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name" + ], + "title": "ClassDefinition", + "type": "object" + }, + "ClassDefinition__identifier_optional": { + "additionalProperties": false, + "description": "an element whose instances are complex objects that may have slot-value assignments", + "properties": { + "abstract": { + "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", + "type": "boolean" + }, + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "apply_to": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "attributes": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "Inline definition of slots", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "children_are_mutually_disjoint": { + "description": "If true then all direct is_a children are mutually disjoint and share no instances in common", + "type": "boolean" + }, + "class_uri": { + "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", + "type": "string" + }, + "classification_rules": { + "description": "the collection of classification rules that apply to all members of this class", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "created_by": { + "description": "agent that created the element", + "type": "string" + }, + "created_on": { + "description": "time at which the element was created", + "format": "date-time", + "type": "string" + }, + "defining_slots": { + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "disjoint_with": { + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "is_a": { + "description": "A primary parent class from which inheritable metaslots are propagated", + "type": "string" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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.", + "type": "boolean" + }, + "mixins": { + "description": "A collection of secondary parent mixin classes from which inheritable metaslots are propagated", + "items": { + "type": "string" + }, + "type": "array" + }, + "modified_by": { + "description": "agent that modified the element", + "type": "string" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "represents_relationship": { + "description": "true if this class represents a relationship rather than an entity", + "type": "boolean" + }, + "rules": { + "description": "the collection of rules that apply to all members of this class", + "items": { + "$ref": "#/$defs/ClassRule" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "slot_conditions": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "expresses constraints on a group of slots for a class expression", + "type": "object" + }, + "slot_names_unique": { + "description": "if true then induced/mangled slot names are not created for class_usage and attributes", + "type": "boolean" + }, + "slot_usage": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "the refinement of a slot in the context of the containing class definition.", + "type": "object" + }, + "slots": { + "description": "collection of slot names that are applicable to a class", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "status": { + "description": "status of the element", + "type": "string" + }, + "string_serialization": { + "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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "subclass_of": { + "description": "rdfs:subClassOf to be emitted in OWL generation", + "type": "string" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "tree_root": { + "description": "indicator that this is the root class in tree structures", + "type": "boolean" + }, + "union_of": { + "description": "indicates that the domain element consists exactly of the members of the element in the range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "unique_keys": { + "additionalProperties": { + "$ref": "#/$defs/UniqueKey__identifier_optional" + }, + "description": "A collection of unique keys for this class. Unique keys may be singular or compound.", + "type": "object" + }, + "values_from": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [], + "title": "ClassDefinition", + "type": "object" + }, + "ClassRule": { + "additionalProperties": false, + "description": "A rule that applies to instances of a class", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "bidirectional": { + "description": "in addition to preconditions entailing postconditions, the postconditions entail the preconditions", + "type": "boolean" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deactivated": { + "description": "a deactivated rule is not executed by the rules engine", + "type": "boolean" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "elseconditions": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "an expression that must hold for an instance of the class, if the preconditions no not hold" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "open_world": { + "description": "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these", + "type": "boolean" + }, + "postconditions": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "an expression that must hold for an instance of the class, if the preconditions hold" + }, + "preconditions": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "an expression that must hold in order for the rule to be applicable to an instance" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "title": "ClassRule", + "type": "object" + }, + "EnumDefinition": { + "additionalProperties": false, + "description": "an element whose instances must be drawn from a specified set of permissible values", + "properties": { + "abstract": { + "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", + "type": "boolean" + }, + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "apply_to": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "code_set": { + "description": "the identifier of an enumeration code set.", + "type": "string" + }, + "code_set_tag": { + "description": "the version tag of the enumeration code set", + "type": "string" + }, + "code_set_version": { + "description": "the version identifier of the enumeration code set", + "type": "string" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "concepts": { + "description": "A list of identifiers that are used to construct a set of permissible values", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "created_by": { + "description": "agent that created the element", + "type": "string" + }, + "created_on": { + "description": "time at which the element was created", + "format": "date-time", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "enum_uri": { + "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", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "include": { + "description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "inherits": { + "description": "An enum definition that is used as the basis to create a new enum", + "items": { + "type": "string" + }, + "type": "array" + }, + "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", + "type": "string" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "matches": { + "$ref": "#/$defs/MatchQuery", + "description": "Specifies a match query that is used to calculate the list of permissible values" + }, + "minus": { + "description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "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.", + "type": "boolean" + }, + "mixins": { + "description": "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from.", + "items": { + "type": "string" + }, + "type": "array" + }, + "modified_by": { + "description": "agent that modified the element", + "type": "string" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissible_values": { + "additionalProperties": { + "$ref": "#/$defs/PermissibleValue__identifier_optional" + }, + "description": "A list of possible values for a slot range", + "type": "object" + }, + "pv_formula": { + "$ref": "#/$defs/PvFormulaOptions", + "description": "Defines the specific formula to be used to generate the permissible values." + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "reachable_from": { + "$ref": "#/$defs/ReachabilityQuery", + "description": "Specifies a query for obtaining a list of permissible values based on graph reachability" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "status": { + "description": "status of the element", + "type": "string" + }, + "string_serialization": { + "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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "values_from": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name" + ], + "title": "EnumDefinition", + "type": "object" + }, + "EnumDefinition__identifier_optional": { + "additionalProperties": false, + "description": "an element whose instances must be drawn from a specified set of permissible values", + "properties": { + "abstract": { + "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", + "type": "boolean" + }, + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "apply_to": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "code_set": { + "description": "the identifier of an enumeration code set.", + "type": "string" + }, + "code_set_tag": { + "description": "the version tag of the enumeration code set", + "type": "string" + }, + "code_set_version": { + "description": "the version identifier of the enumeration code set", + "type": "string" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "concepts": { + "description": "A list of identifiers that are used to construct a set of permissible values", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "created_by": { + "description": "agent that created the element", + "type": "string" + }, + "created_on": { + "description": "time at which the element was created", + "format": "date-time", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "enum_uri": { + "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", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "include": { + "description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "inherits": { + "description": "An enum definition that is used as the basis to create a new enum", + "items": { + "type": "string" + }, + "type": "array" + }, + "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", + "type": "string" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "matches": { + "$ref": "#/$defs/MatchQuery", + "description": "Specifies a match query that is used to calculate the list of permissible values" + }, + "minus": { + "description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "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.", + "type": "boolean" + }, + "mixins": { + "description": "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from.", + "items": { + "type": "string" + }, + "type": "array" + }, + "modified_by": { + "description": "agent that modified the element", + "type": "string" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissible_values": { + "additionalProperties": { + "$ref": "#/$defs/PermissibleValue__identifier_optional" + }, + "description": "A list of possible values for a slot range", + "type": "object" + }, + "pv_formula": { + "$ref": "#/$defs/PvFormulaOptions", + "description": "Defines the specific formula to be used to generate the permissible values." + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "reachable_from": { + "$ref": "#/$defs/ReachabilityQuery", + "description": "Specifies a query for obtaining a list of permissible values based on graph reachability" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "status": { + "description": "status of the element", + "type": "string" + }, + "string_serialization": { + "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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "values_from": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [], + "title": "EnumDefinition", + "type": "object" + }, + "EnumExpression": { + "additionalProperties": false, + "description": "An expression that constrains the range of a slot", + "properties": { + "code_set": { + "description": "the identifier of an enumeration code set.", + "type": "string" + }, + "code_set_tag": { + "description": "the version tag of the enumeration code set", + "type": "string" + }, + "code_set_version": { + "description": "the version identifier of the enumeration code set", + "type": "string" + }, + "concepts": { + "description": "A list of identifiers that are used to construct a set of permissible values", + "items": { + "type": "string" + }, + "type": "array" + }, + "include": { + "description": "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "inherits": { + "description": "An enum definition that is used as the basis to create a new enum", + "items": { + "type": "string" + }, + "type": "array" + }, + "matches": { + "$ref": "#/$defs/MatchQuery", + "description": "Specifies a match query that is used to calculate the list of permissible values" + }, + "minus": { + "description": "An enum expression that yields a list of permissible values that are to be subtracted from the enum", + "items": { + "$ref": "#/$defs/AnonymousEnumExpression" + }, + "type": "array" + }, + "permissible_values": { + "additionalProperties": { + "$ref": "#/$defs/PermissibleValue__identifier_optional" + }, + "description": "A list of possible values for a slot range", + "type": "object" + }, + "pv_formula": { + "$ref": "#/$defs/PvFormulaOptions", + "description": "Defines the specific formula to be used to generate the permissible values." + }, + "reachable_from": { + "$ref": "#/$defs/ReachabilityQuery", + "description": "Specifies a query for obtaining a list of permissible values based on graph reachability" + } + }, + "title": "EnumExpression", + "type": "object" + }, + "Example": { + "additionalProperties": false, + "description": "usage example and description", + "properties": { + "description": { + "description": "description of what the value is doing", + "type": "string" + }, + "object": { + "$ref": "#/$defs/Anything", + "description": "direct object representation of the example" + }, + "value": { + "description": "example value", + "type": "string" + } + }, + "title": "Example", + "type": "object" + }, + "Extension": { + "additionalProperties": false, + "description": "a tag/value pair used to add non-model information to an entry", + "properties": { + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "tag": { + "description": "a tag associated with an extension", + "type": "string" + }, + "value": { + "description": "the actual annotation", + "type": "string" + } + }, + "required": [ + "tag", + "value" + ], + "title": "Extension", + "type": "object" + }, + "Extension__identifier_optional": { + "additionalProperties": false, + "description": "a tag/value pair used to add non-model information to an entry", + "properties": { + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "tag": { + "description": "a tag associated with an extension", + "type": "string" + }, + "value": { + "description": "the actual annotation", + "type": "string" + } + }, + "required": [ + "value" + ], + "title": "Extension", + "type": "object" + }, + "ImportExpression": { + "additionalProperties": false, + "description": "an expression describing an import", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "import_as": { + "type": "string" + }, + "import_from": { + "type": "string" + }, + "import_map": { + "additionalProperties": { + "$ref": "#/$defs/Setting__identifier_optional" + }, + "type": "object" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "import_from" + ], + "title": "ImportExpression", + "type": "object" + }, + "LocalName": { + "additionalProperties": false, + "description": "an attributed label", + "properties": { + "local_name_source": { + "description": "the ncname of the source of the name", + "type": "string" + }, + "local_name_value": { + "description": "a name assigned to an element in a given ontology", + "type": "string" + } + }, + "required": [ + "local_name_source", + "local_name_value" + ], + "title": "LocalName", + "type": "object" + }, + "LocalName__identifier_optional": { + "additionalProperties": false, + "description": "an attributed label", + "properties": { + "local_name_source": { + "description": "the ncname of the source of the name", + "type": "string" + }, + "local_name_value": { + "description": "a name assigned to an element in a given ontology", + "type": "string" + } + }, + "required": [ + "local_name_value" + ], + "title": "LocalName", + "type": "object" + }, + "MatchQuery": { + "additionalProperties": false, + "description": "A query that is used on an enum expression to dynamically obtain a set of permissivle values via a query that matches on properties of the external concepts", + "properties": { + "identifier_pattern": { + "description": "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values", + "type": "string" + }, + "source_ontology": { + "description": "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values", + "type": "string" + } + }, + "title": "MatchQuery", + "type": "object" + }, + "PathExpression": { + "additionalProperties": false, + "description": "An expression that describes an abstract path from an object to another through a sequence of slot lookups", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/PathExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/PathExpression" + }, + "type": "array" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/PathExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "followed_by": { + "$ref": "#/$defs/PathExpression", + "description": "in a sequential list, this indicates the next member" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/PathExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "range_expression": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "A range that is described as a boolean expression combining existing ranges" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reversed": { + "description": "true if the slot is to be inversed", + "type": "boolean" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "traverse": { + "description": "the slot to traverse", + "type": "string" + } + }, + "title": "PathExpression", + "type": "object" + }, + "PatternExpression": { + "additionalProperties": false, + "description": "a regular expression pattern used to evaluate conformance of a string", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "interpolated": { + "description": "if true then the pattern is first string interpolated", + "type": "boolean" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "partial_match": { + "description": "if true then the pattern must match the whole string, as if enclosed in ^...$", + "type": "boolean" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "syntax": { + "description": "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated.", + "type": "string" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "title": "PatternExpression", + "type": "object" + }, + "PermissibleValue": { + "additionalProperties": false, + "description": "a permissible value, accompanied by intended text and an optional mapping to a concept URI", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "meaning": { + "description": "the value meaning of a permissible value", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "text": { + "type": "string" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + } + }, + "required": [ + "text" + ], + "title": "PermissibleValue", + "type": "object" + }, + "PermissibleValue__identifier_optional": { + "additionalProperties": false, + "description": "a permissible value, accompanied by intended text and an optional mapping to a concept URI", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "meaning": { + "description": "the value meaning of a permissible value", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "text": { + "type": "string" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + } + }, + "required": [], + "title": "PermissibleValue", + "type": "object" + }, + "Prefix": { + "additionalProperties": false, + "description": "prefix URI tuple", + "properties": { + "prefix_prefix": { + "description": "the nsname (sans ':' for a given prefix)", + "type": "string" + }, + "prefix_reference": { + "description": "A URI associated with a given prefix", + "type": "string" + } + }, + "required": [ + "prefix_prefix", + "prefix_reference" + ], + "title": "Prefix", + "type": "object" + }, + "Prefix__identifier_optional": { + "additionalProperties": false, + "description": "prefix URI tuple", + "properties": { + "prefix_prefix": { + "description": "the nsname (sans ':' for a given prefix)", + "type": "string" + }, + "prefix_reference": { + "description": "A URI associated with a given prefix", + "type": "string" + } + }, + "required": [ + "prefix_reference" + ], + "title": "Prefix", + "type": "object" + }, + "PresenceEnum": { + "description": "enumeration of conditions by which a slot value should be set", + "enum": [ + "UNCOMMITTED", + "PRESENT", + "ABSENT" + ], + "title": "PresenceEnum", + "type": "string" + }, + "PvFormulaOptions": { + "description": "The formula used to generate the set of permissible values from the code_set values", + "enum": [ + "CODE", + "CURIE", + "URI", + "FHIR_CODING" + ], + "title": "PvFormulaOptions", + "type": "string" + }, + "ReachabilityQuery": { + "additionalProperties": false, + "description": "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", + "properties": { + "include_self": { + "description": "True if the query is reflexive", + "type": "boolean" + }, + "is_direct": { + "description": "True if the reachability query should only include directly related nodes, if False then include also transitively connected", + "type": "boolean" + }, + "relationship_types": { + "description": "A list of relationship types (properties) that are used in a reachability query", + "items": { + "type": "string" + }, + "type": "array" + }, + "source_nodes": { + "description": "A list of nodes that are used in the reachability query", + "items": { + "type": "string" + }, + "type": "array" + }, + "source_ontology": { + "description": "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values", + "type": "string" + }, + "traverse_up": { + "description": "True if the direction of the reachability query is reversed and ancestors are retrieved", + "type": "boolean" + } + }, + "title": "ReachabilityQuery", + "type": "object" + }, + "RelationalRoleEnum": { + "description": "enumeration of roles a slot on a relationship class can play", + "enum": [ + "SUBJECT", + "OBJECT", + "PREDICATE", + "NODE", + "OTHER_ROLE" + ], + "title": "RelationalRoleEnum", + "type": "string" + }, + "SchemaDefinition": { + "additionalProperties": false, + "description": "a collection of subset, type, slot, enum and class definitions", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "categories": { + "description": "controlled terms used to categorize an element", + "items": { + "type": "string" + }, + "type": "array" + }, + "classes": { + "additionalProperties": { + "$ref": "#/$defs/ClassDefinition__identifier_optional" + }, + "description": "An index to the collection of all class definitions in the schema", + "type": "object" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "default_curi_maps": { + "description": "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables", + "items": { + "type": "string" + }, + "type": "array" + }, + "default_prefix": { + "description": "default and base prefix -- used for ':' identifiers, @base and @vocab", + "type": "string" + }, + "default_range": { + "description": "default slot range to be used if range element is omitted from a slot definition", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "emit_prefixes": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enums": { + "additionalProperties": { + "$ref": "#/$defs/EnumDefinition__identifier_optional" + }, + "description": "An index to the collection of all enum definitions in the schema", + "type": "object" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "generation_date": { + "description": "date and time that the schema was loaded/generated", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The official schema URI", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "imports": { + "description": "other schemas that are included in this schema", + "items": { + "type": "string" + }, + "type": "array" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "keywords": { + "description": "Keywords or tags used to describe the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "license": { + "description": "license for the schema", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metamodel_version": { + "description": "Version of the metamodel used to load the schema", + "type": "string" + }, + "name": { + "description": "a unique name for the schema that is both human-readable and consists of only characters from the NCName set", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "prefixes": { + "additionalProperties": { + "$ref": "#/$defs/Prefix__identifier_optional" + }, + "description": "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes", + "type": "object" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "settings": { + "additionalProperties": { + "$ref": "#/$defs/Setting__identifier_optional" + }, + "description": "A collection of global variable settings", + "type": "object" + }, + "slot_names_unique": { + "description": "if true then induced/mangled slot names are not created for class_usage and attributes", + "type": "boolean" + }, + "slots": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "An index to the collection of all slot definitions in the schema", + "type": "object" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "source_file": { + "description": "name, uri or description of the source of the schema", + "type": "string" + }, + "source_file_date": { + "description": "modification date of the source of the schema", + "format": "date-time", + "type": "string" + }, + "source_file_size": { + "description": "size in bytes of the source of the schema", + "type": "integer" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "subsets": { + "additionalProperties": { + "$ref": "#/$defs/SubsetDefinition__identifier_optional" + }, + "description": "An index to the collection of all subset definitions in the schema", + "type": "object" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "types": { + "additionalProperties": { + "$ref": "#/$defs/TypeDefinition__identifier_optional" + }, + "description": "An index to the collection of all type definitions in the schema", + "type": "object" + }, + "version": { + "description": "particular version of schema", + "type": "string" + } + }, + "required": [ + "id", + "name" + ], + "title": "SchemaDefinition", + "type": "object" + }, + "Setting": { + "additionalProperties": false, + "description": "assignment of a key to a value", + "properties": { + "setting_key": { + "description": "the variable name for a setting", + "type": "string" + }, + "setting_value": { + "description": "The value assigned for a setting", + "type": "string" + } + }, + "required": [ + "setting_key", + "setting_value" + ], + "title": "Setting", + "type": "object" + }, + "Setting__identifier_optional": { + "additionalProperties": false, + "description": "assignment of a key to a value", + "properties": { + "setting_key": { + "description": "the variable name for a setting", + "type": "string" + }, + "setting_value": { + "description": "The value assigned for a setting", + "type": "string" + } + }, + "required": [ + "setting_value" + ], + "title": "Setting", + "type": "object" + }, + "SlotDefinition": { + "additionalProperties": false, + "description": "an element that describes how instances are related to other instances", + "properties": { + "abstract": { + "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", + "type": "boolean" + }, + "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.", + "type": "string" + }, + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_members": { + "$ref": "#/$defs/AnonymousSlotExpression", + "description": "the value of the slot is multivalued with all members satisfying the condition" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "apply_to": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "asymmetric": { + "description": "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i", + "type": "boolean" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "children_are_mutually_disjoint": { + "description": "If true then all direct is_a children are mutually disjoint and share no instances in common", + "type": "boolean" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "created_by": { + "description": "agent that created the element", + "type": "string" + }, + "created_on": { + "description": "time at which the element was created", + "format": "date-time", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "designates_type": { + "description": "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition", + "type": "boolean" + }, + "disjoint_with": { + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "domain": { + "description": "defines the type of the subject of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts that X is an instance of C1\n", + "type": "string" + }, + "domain_of": { + "description": "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context", + "items": { + "type": "string" + }, + "type": "array" + }, + "enum_range": { + "$ref": "#/$defs/EnumExpression", + "description": "An inlined enumeration" + }, + "equals_expression": { + "description": "the value of the slot must equal the value of the evaluated expression", + "type": "string" + }, + "equals_number": { + "description": "the slot must have range of a number and the value of the slot must equal the specified value", + "type": "integer" + }, + "equals_string": { + "description": "the slot must have range string and the value of the slot must equal the specified value", + "type": "string" + }, + "equals_string_in": { + "description": "the slot must have range string and the value of the slot must equal one of the specified values", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "has_member": { + "$ref": "#/$defs/AnonymousSlotExpression", + "description": "the value of the slot is multivalued with at least one member satisfying the condition" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "identifier": { + "description": "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container", + "type": "boolean" + }, + "ifabsent": { + "description": "function that provides a default value for the slot. Possible values for this slot are defined in\nlinkml.utils.ifabsent_functions.default_library:\n * [Tt]rue -- boolean True\n * [Ff]alse -- boolean False\n * bnode -- blank node identifier\n * class_curie -- CURIE for the containing class\n * class_uri -- URI for the containing class\n * default_ns -- schema default namespace\n * default_range -- schema default range\n * int(value) -- integer value\n * slot_uri -- URI for the slot\n * slot_curie -- CURIE for the slot\n * string(value) -- string value", + "type": "string" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "implicit_prefix": { + "description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "inherited": { + "description": "true means that the *value* of a slot is inherited by subclasses", + "type": "boolean" + }, + "inlined": { + "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.", + "type": "boolean" + }, + "inlined_as_list": { + "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.", + "type": "boolean" + }, + "inverse": { + "description": "indicates that any instance of d s r implies that there is also an instance of r s' d", + "type": "string" + }, + "irreflexive": { + "description": "If s is irreflexive, then there exists no i such i.s=i", + "type": "boolean" + }, + "is_a": { + "description": "A primary parent slot from which inheritable metaslots are propagated", + "type": "string" + }, + "is_class_field": { + "description": "indicates that for any instance, i, the domain of this slot will include an assertion of i s range", + "type": "boolean" + }, + "is_grouping_slot": { + "description": "true if this slot is a grouping slot", + "type": "boolean" + }, + "is_usage_slot": { + "description": "True means that this slot was defined in a slot_usage situation", + "type": "boolean" + }, + "key": { + "description": "True means that the key slot(s) uniquely identify the elements within a single container", + "type": "boolean" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "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", + "type": "boolean" + }, + "list_elements_unique": { + "description": "If True, then there must be no duplicates in the elements of a multivalued slot", + "type": "boolean" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "locally_reflexive": { + "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", + "type": "boolean" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximum_cardinality": { + "description": "the maximum number of entries for a multivalued slot", + "type": "integer" + }, + "maximum_value": { + "description": "for slots with ranges of type number, the value must be equal to or lowe than this", + "type": "integer" + }, + "minimum_cardinality": { + "description": "the minimum number of entries for a multivalued slot", + "type": "integer" + }, + "minimum_value": { + "description": "for slots with ranges of type number, the value must be equal to or higher than this", + "type": "integer" + }, + "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.", + "type": "boolean" + }, + "mixins": { + "description": "A collection of secondary parent mixin slots from which inheritable metaslots are propagated", + "items": { + "type": "string" + }, + "type": "array" + }, + "modified_by": { + "description": "agent that modified the element", + "type": "string" + }, + "multivalued": { + "description": "true means that slot can have more than one value", + "type": "boolean" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "owner": { + "description": "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot", + "type": "string" + }, + "path_rule": { + "$ref": "#/$defs/PathExpression", + "description": "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignemnts" + }, + "pattern": { + "description": "the string value of the slot must conform to this regular expression expressed in the string", + "type": "string" + }, + "range": { + "description": "defines the type of the object of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts Y is an instance of C2\n", + "type": "string" + }, + "range_expression": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "A range that is described as a boolean expression combining existing ranges" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "readonly": { + "description": "If present, slot is read only. Text explains why", + "type": "string" + }, + "recommended": { + "description": "true means that the slot should be present in the loaded definition, but this is not required", + "type": "boolean" + }, + "reflexive": { + "description": "If s is reflexive, then i.s=i for all instances i", + "type": "boolean" + }, + "reflexive_transitive_form_of": { + "description": "transitive_form_of including the reflexive case", + "type": "string" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "relational_role": { + "$ref": "#/$defs/RelationalRoleEnum", + "description": "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" + }, + "required": { + "description": "true means that the slot must be present in the loaded definition", + "type": "boolean" + }, + "role": { + "description": "a textual descriptor that indicates the role played by the slot range", + "type": "string" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "shared": { + "description": "If True, then the relationship between the slot domain and range is many to one or many to many", + "type": "boolean" + }, + "singular_name": { + "description": "a name that is used in the singular form", + "type": "string" + }, + "slot_group": { + "description": "allows for grouping of related slots into a grouping slot that serves the role of a group", + "type": "string" + }, + "slot_uri": { + "description": "predicate of this slot for semantic web application", + "type": "string" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "status": { + "description": "status of the element", + "type": "string" + }, + "string_serialization": { + "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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "structured_pattern": { + "$ref": "#/$defs/PatternExpression", + "description": "the string value of the slot must conform to the regular expression in the pattern expression" + }, + "subproperty_of": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "type": "string" + }, + "symmetric": { + "description": "If s is symmetric, and i.s=v, then v.s=i", + "type": "boolean" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "transitive": { + "description": "If s is transitive, and i.s=z, and s.s=j, then i.s=j", + "type": "boolean" + }, + "transitive_form_of": { + "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", + "type": "string" + }, + "union_of": { + "description": "indicates that the domain element consists exactly of the members of the element in the range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + }, + "usage_slot_name": { + "description": "The name of the slot referenced in the slot_usage", + "type": "string" + }, + "value_presence": { + "$ref": "#/$defs/PresenceEnum", + "description": "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)" + }, + "values_from": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name" + ], + "title": "SlotDefinition", + "type": "object" + }, + "SlotDefinition__identifier_optional": { + "additionalProperties": false, + "description": "an element that describes how instances are related to other instances", + "properties": { + "abstract": { + "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping and specifying core inherited metaslots", + "type": "boolean" + }, + "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.", + "type": "string" + }, + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_members": { + "$ref": "#/$defs/AnonymousSlotExpression", + "description": "the value of the slot is multivalued with all members satisfying the condition" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "apply_to": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "asymmetric": { + "description": "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i", + "type": "boolean" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "children_are_mutually_disjoint": { + "description": "If true then all direct is_a children are mutually disjoint and share no instances in common", + "type": "boolean" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "created_by": { + "description": "agent that created the element", + "type": "string" + }, + "created_on": { + "description": "time at which the element was created", + "format": "date-time", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "designates_type": { + "description": "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition", + "type": "boolean" + }, + "disjoint_with": { + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "domain": { + "description": "defines the type of the subject of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts that X is an instance of C1\n", + "type": "string" + }, + "domain_of": { + "description": "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context", + "items": { + "type": "string" + }, + "type": "array" + }, + "enum_range": { + "$ref": "#/$defs/EnumExpression", + "description": "An inlined enumeration" + }, + "equals_expression": { + "description": "the value of the slot must equal the value of the evaluated expression", + "type": "string" + }, + "equals_number": { + "description": "the slot must have range of a number and the value of the slot must equal the specified value", + "type": "integer" + }, + "equals_string": { + "description": "the slot must have range string and the value of the slot must equal the specified value", + "type": "string" + }, + "equals_string_in": { + "description": "the slot must have range string and the value of the slot must equal one of the specified values", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "has_member": { + "$ref": "#/$defs/AnonymousSlotExpression", + "description": "the value of the slot is multivalued with at least one member satisfying the condition" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "identifier": { + "description": "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container", + "type": "boolean" + }, + "ifabsent": { + "description": "function that provides a default value for the slot. Possible values for this slot are defined in\nlinkml.utils.ifabsent_functions.default_library:\n * [Tt]rue -- boolean True\n * [Ff]alse -- boolean False\n * bnode -- blank node identifier\n * class_curie -- CURIE for the containing class\n * class_uri -- URI for the containing class\n * default_ns -- schema default namespace\n * default_range -- schema default range\n * int(value) -- integer value\n * slot_uri -- URI for the slot\n * slot_curie -- CURIE for the slot\n * string(value) -- string value", + "type": "string" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "implicit_prefix": { + "description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "inherited": { + "description": "true means that the *value* of a slot is inherited by subclasses", + "type": "boolean" + }, + "inlined": { + "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.", + "type": "boolean" + }, + "inlined_as_list": { + "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.", + "type": "boolean" + }, + "inverse": { + "description": "indicates that any instance of d s r implies that there is also an instance of r s' d", + "type": "string" + }, + "irreflexive": { + "description": "If s is irreflexive, then there exists no i such i.s=i", + "type": "boolean" + }, + "is_a": { + "description": "A primary parent slot from which inheritable metaslots are propagated", + "type": "string" + }, + "is_class_field": { + "description": "indicates that for any instance, i, the domain of this slot will include an assertion of i s range", + "type": "boolean" + }, + "is_grouping_slot": { + "description": "true if this slot is a grouping slot", + "type": "boolean" + }, + "is_usage_slot": { + "description": "True means that this slot was defined in a slot_usage situation", + "type": "boolean" + }, + "key": { + "description": "True means that the key slot(s) uniquely identify the elements within a single container", + "type": "boolean" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "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", + "type": "boolean" + }, + "list_elements_unique": { + "description": "If True, then there must be no duplicates in the elements of a multivalued slot", + "type": "boolean" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "locally_reflexive": { + "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", + "type": "boolean" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximum_cardinality": { + "description": "the maximum number of entries for a multivalued slot", + "type": "integer" + }, + "maximum_value": { + "description": "for slots with ranges of type number, the value must be equal to or lowe than this", + "type": "integer" + }, + "minimum_cardinality": { + "description": "the minimum number of entries for a multivalued slot", + "type": "integer" + }, + "minimum_value": { + "description": "for slots with ranges of type number, the value must be equal to or higher than this", + "type": "integer" + }, + "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.", + "type": "boolean" + }, + "mixins": { + "description": "A collection of secondary parent mixin slots from which inheritable metaslots are propagated", + "items": { + "type": "string" + }, + "type": "array" + }, + "modified_by": { + "description": "agent that modified the element", + "type": "string" + }, + "multivalued": { + "description": "true means that slot can have more than one value", + "type": "boolean" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousSlotExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "owner": { + "description": "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot", + "type": "string" + }, + "path_rule": { + "$ref": "#/$defs/PathExpression", + "description": "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignemnts" + }, + "pattern": { + "description": "the string value of the slot must conform to this regular expression expressed in the string", + "type": "string" + }, + "range": { + "description": "defines the type of the object of the slot. Given the following slot definition\n S1:\n domain: C1\n range: C2\nthe declaration\n X:\n S1: Y\n\nimplicitly asserts Y is an instance of C2\n", + "type": "string" + }, + "range_expression": { + "$ref": "#/$defs/AnonymousClassExpression", + "description": "A range that is described as a boolean expression combining existing ranges" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "readonly": { + "description": "If present, slot is read only. Text explains why", + "type": "string" + }, + "recommended": { + "description": "true means that the slot should be present in the loaded definition, but this is not required", + "type": "boolean" + }, + "reflexive": { + "description": "If s is reflexive, then i.s=i for all instances i", + "type": "boolean" + }, + "reflexive_transitive_form_of": { + "description": "transitive_form_of including the reflexive case", + "type": "string" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "relational_role": { + "$ref": "#/$defs/RelationalRoleEnum", + "description": "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" + }, + "required": { + "description": "true means that the slot must be present in the loaded definition", + "type": "boolean" + }, + "role": { + "description": "a textual descriptor that indicates the role played by the slot range", + "type": "string" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "shared": { + "description": "If True, then the relationship between the slot domain and range is many to one or many to many", + "type": "boolean" + }, + "singular_name": { + "description": "a name that is used in the singular form", + "type": "string" + }, + "slot_group": { + "description": "allows for grouping of related slots into a grouping slot that serves the role of a group", + "type": "string" + }, + "slot_uri": { + "description": "predicate of this slot for semantic web application", + "type": "string" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "status": { + "description": "status of the element", + "type": "string" + }, + "string_serialization": { + "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.\nWe 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.\nImplementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects\nFor 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", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "structured_pattern": { + "$ref": "#/$defs/PatternExpression", + "description": "the string value of the slot must conform to the regular expression in the pattern expression" + }, + "subproperty_of": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "type": "string" + }, + "symmetric": { + "description": "If s is symmetric, and i.s=v, then v.s=i", + "type": "boolean" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "transitive": { + "description": "If s is transitive, and i.s=z, and s.s=j, then i.s=j", + "type": "boolean" + }, + "transitive_form_of": { + "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", + "type": "string" + }, + "union_of": { + "description": "indicates that the domain element consists exactly of the members of the element in the range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + }, + "usage_slot_name": { + "description": "The name of the slot referenced in the slot_usage", + "type": "string" + }, + "value_presence": { + "$ref": "#/$defs/PresenceEnum", + "description": "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)" + }, + "values_from": { + "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 hiearchy into an enumerated list of possible values in every serialization of the model.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [], + "title": "SlotDefinition", + "type": "object" + }, + "StructuredAlias": { + "additionalProperties": false, + "description": "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "categories": { + "description": "The category or categories of an alias. This can be drawn from any relevant vocabulary", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "literal_form": { + "description": "The literal lexical form of a structured alias", + "type": "string" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "predicate": { + "$ref": "#/$defs/AliasPredicateEnum", + "description": "The relationship between an element and its alias " + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "literal_form" + ], + "title": "StructuredAlias", + "type": "object" + }, + "SubsetDefinition": { + "additionalProperties": false, + "description": "an element that can be used to group other metamodel elements", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name" + ], + "title": "SubsetDefinition", + "type": "object" + }, + "SubsetDefinition__identifier_optional": { + "additionalProperties": false, + "description": "an element that can be used to group other metamodel elements", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [], + "title": "SubsetDefinition", + "type": "object" + }, + "TypeDefinition": { + "additionalProperties": false, + "description": "an element that whose instances are atomic scalar values that can be mapped to primitive types", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "base": { + "description": "python base type that implements this type definition", + "type": "string" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "equals_number": { + "description": "the slot must have range of a number and the value of the slot must equal the specified value", + "type": "integer" + }, + "equals_string": { + "description": "the slot must have range string and the value of the slot must equal the specified value", + "type": "string" + }, + "equals_string_in": { + "description": "the slot must have range string and the value of the slot must equal one of the specified values", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "implicit_prefix": { + "description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximum_value": { + "description": "for slots with ranges of type number, the value must be equal to or lowe than this", + "type": "integer" + }, + "minimum_value": { + "description": "for slots with ranges of type number, the value must be equal to or higher than this", + "type": "integer" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "pattern": { + "description": "the string value of the slot must conform to this regular expression expressed in the string", + "type": "string" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "repr": { + "description": "the name of the python object that implements this type definition", + "type": "string" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "structured_pattern": { + "$ref": "#/$defs/PatternExpression", + "description": "the string value of the slot must conform to the regular expression in the pattern expression" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "typeof": { + "description": "Names a parent type", + "type": "string" + }, + "union_of": { + "description": "indicates that the domain element consists exactly of the members of the element in the range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + }, + "uri": { + "description": "The uri that defines the possible values for the type definition", + "type": "string" + } + }, + "required": [ + "name" + ], + "title": "TypeDefinition", + "type": "object" + }, + "TypeDefinition__identifier_optional": { + "additionalProperties": false, + "description": "an element that whose instances are atomic scalar values that can be mapped to primitive types", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "any_of": { + "description": "holds if at least one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "base": { + "description": "python base type that implements this type definition", + "type": "string" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "equals_number": { + "description": "the slot must have range of a number and the value of the slot must equal the specified value", + "type": "integer" + }, + "equals_string": { + "description": "the slot must have range string and the value of the slot must equal the specified value", + "type": "string" + }, + "equals_string_in": { + "description": "the slot must have range string and the value of the slot must equal one of the specified values", + "items": { + "type": "string" + }, + "type": "array" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exactly_one_of": { + "description": "holds if only one of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "implicit_prefix": { + "description": "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "maximum_value": { + "description": "for slots with ranges of type number, the value must be equal to or lowe than this", + "type": "integer" + }, + "minimum_value": { + "description": "for slots with ranges of type number, the value must be equal to or higher than this", + "type": "integer" + }, + "name": { + "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.", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "none_of": { + "description": "holds if none of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousTypeExpression" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "pattern": { + "description": "the string value of the slot must conform to this regular expression expressed in the string", + "type": "string" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "repr": { + "description": "the name of the python object that implements this type definition", + "type": "string" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "structured_pattern": { + "$ref": "#/$defs/PatternExpression", + "description": "the string value of the slot must conform to the regular expression in the pattern expression" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "typeof": { + "description": "Names a parent type", + "type": "string" + }, + "union_of": { + "description": "indicates that the domain element consists exactly of the members of the element in the range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "unit": { + "$ref": "#/$defs/UnitOfMeasure", + "description": "an encoding of a unit" + }, + "uri": { + "description": "The uri that defines the possible values for the type definition", + "type": "string" + } + }, + "required": [], + "title": "TypeDefinition", + "type": "object" + }, + "UniqueKey": { + "additionalProperties": false, + "description": "a collection of slots whose values uniquely identify an instance of a class", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "unique_key_name": { + "description": "name of the unique key", + "type": "string" + }, + "unique_key_slots": { + "description": "list of slot names that form a key", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "unique_key_name", + "unique_key_slots" + ], + "title": "UniqueKey", + "type": "object" + }, + "UniqueKey__identifier_optional": { + "additionalProperties": false, + "description": "a collection of slots whose values uniquely identify an instance of a class", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "unique_key_name": { + "description": "name of the unique key", + "type": "string" + }, + "unique_key_slots": { + "description": "list of slot names that form a key", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "unique_key_slots" + ], + "title": "UniqueKey", + "type": "object" + }, + "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).", + "properties": { + "derivation": { + "description": "Expression for deriving this unit from other units", + "type": "string" + }, + "exact_mappings": { + "description": "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT", + "items": { + "type": "string" + }, + "type": "array" + }, + "has_quantity_kind": { + "description": "Concept in a vocabulary or ontology that denotes the kind of quanity being measured, e.g. length", + "type": "string" + }, + "iec61360code": { + "type": "string" + }, + "symbol": { + "description": "name of the unit encoded as a symbol", + "type": "string" + }, + "ucum_code": { + "description": "associates a QUDT unit with its UCUM code (case-sensitive).", + "type": "string" + } + }, + "title": "UnitOfMeasure", + "type": "object" + } + }, + "$id": "https://w3id.org/linkml/meta", + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": true, + "metamodel_version": "1.7.0", + "properties": { + "aliases": { + "description": "Alaternate names for the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", + "type": "object" + }, + "broad_mappings": { + "description": "A list of terms from different schemas or terminology systems that have broader meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "categories": { + "description": "controlled terms used to categorize an element", + "items": { + "type": "string" + }, + "type": "array" + }, + "classes": { + "additionalProperties": { + "$ref": "#/$defs/ClassDefinition__identifier_optional" + }, + "description": "An index to the collection of all class definitions in the schema", + "type": "object" + }, + "close_mappings": { + "description": "A list of terms from different schemas or terminology systems that have close meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "comments": { + "description": "notes and comments about an element intended for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "default_curi_maps": { + "description": "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables", + "items": { + "type": "string" + }, + "type": "array" + }, + "default_prefix": { + "description": "default and base prefix -- used for ':' identifiers, @base and @vocab", + "type": "string" + }, + "default_range": { + "description": "default slot range to be used if range element is omitted from a slot definition", + "type": "string" + }, + "definition_uri": { + "description": "the \"native\" URI of the element", + "type": "string" + }, + "deprecated": { + "description": "Description of why and when this element will no longer be used", + "type": "string" + }, + "deprecated_element_has_exact_replacement": { + "description": "When an element is deprecated, it can be automatically replaced by this uri or curie", + "type": "string" + }, + "deprecated_element_has_possible_replacement": { + "description": "When an element is deprecated, it can be potentially replaced by this uri or curie", + "type": "string" + }, + "description": { + "description": "a description of the element's purpose and use", + "type": "string" + }, + "emit_prefixes": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "enums": { + "additionalProperties": { + "$ref": "#/$defs/EnumDefinition__identifier_optional" + }, + "description": "An index to the collection of all enum definitions in the schema", + "type": "object" + }, + "exact_mappings": { + "description": "A list of terms from different schemas or terminology systems that have identical meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "examples": { + "description": "example usages of an element", + "items": { + "$ref": "#/$defs/Example" + }, + "type": "array" + }, + "extensions": { + "additionalProperties": { + "$ref": "#/$defs/Extension__identifier_optional" + }, + "description": "a tag/text tuple attached to an arbitrary element", + "type": "object" + }, + "from_schema": { + "description": "id of the schema that defined the element", + "type": "string" + }, + "generation_date": { + "description": "date and time that the schema was loaded/generated", + "format": "date-time", + "type": "string" + }, + "id": { + "description": "The official schema URI", + "type": "string" + }, + "id_prefixes": { + "description": "the identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "implements": { + "description": "An element in another schema which this element conforms to", + "items": { + "type": "string" + }, + "type": "array" + }, + "imported_from": { + "description": "the imports entry that this element was derived from. Empty means primary source", + "type": "string" + }, + "imports": { + "description": "other schemas that are included in this schema", + "items": { + "type": "string" + }, + "type": "array" + }, + "in_language": { + "type": "string" + }, + "in_subset": { + "description": "used to indicate membership of a term in a defined subset of terms used for a particular domain or application (e.g. the translator_minimal subset holding the minimal set of predicates used in a translator knowledge graph)", + "items": { + "type": "string" + }, + "type": "array" + }, + "keywords": { + "description": "Keywords or tags used to describe the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "license": { + "description": "license for the schema", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + "type": "object" + }, + "mappings": { + "description": "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.", + "items": { + "type": "string" + }, + "type": "array" + }, + "metamodel_version": { + "description": "Version of the metamodel used to load the schema", + "type": "string" + }, + "name": { + "description": "a unique name for the schema that is both human-readable and consists of only characters from the NCName set", + "type": "string" + }, + "narrow_mappings": { + "description": "A list of terms from different schemas or terminology systems that have narrower meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "notes": { + "description": "editorial notes about an element intended for internal consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "prefixes": { + "additionalProperties": { + "$ref": "#/$defs/Prefix__identifier_optional" + }, + "description": "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes", + "type": "object" + }, + "rank": { + "description": "the relative order in which the element occurs, lower values are given precedence", + "type": "integer" + }, + "related_mappings": { + "description": "A list of terms from different schemas or terminology systems that have related meaning.", + "items": { + "type": "string" + }, + "type": "array" + }, + "see_also": { + "description": "a reference", + "items": { + "type": "string" + }, + "type": "array" + }, + "settings": { + "additionalProperties": { + "$ref": "#/$defs/Setting__identifier_optional" + }, + "description": "A collection of global variable settings", + "type": "object" + }, + "slot_names_unique": { + "description": "if true then induced/mangled slot names are not created for class_usage and attributes", + "type": "boolean" + }, + "slots": { + "additionalProperties": { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + "description": "An index to the collection of all slot definitions in the schema", + "type": "object" + }, + "source": { + "description": "A related resource from which the element is derived.", + "type": "string" + }, + "source_file": { + "description": "name, uri or description of the source of the schema", + "type": "string" + }, + "source_file_date": { + "description": "modification date of the source of the schema", + "format": "date-time", + "type": "string" + }, + "source_file_size": { + "description": "size in bytes of the source of the schema", + "type": "integer" + }, + "structured_aliases": { + "description": "A list of structured_alias objects.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "subsets": { + "additionalProperties": { + "$ref": "#/$defs/SubsetDefinition__identifier_optional" + }, + "description": "An index to the collection of all subset definitions in the schema", + "type": "object" + }, + "title": { + "description": "the official title of the element", + "type": "string" + }, + "todos": { + "description": "Outstanding issue that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "types": { + "additionalProperties": { + "$ref": "#/$defs/TypeDefinition__identifier_optional" + }, + "description": "An index to the collection of all type definitions in the schema", + "type": "object" + }, + "version": { + "description": "particular version of schema", + "type": "string" + } + }, + "required": [ + "id", + "name" + ], + "title": "meta", + "type": "object", + "version": "2.0.0" +} \ No newline at end of file diff --git a/linkml_model/meta.py b/linkml_model/meta.py index e33cdc7e..97711ca6 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.9.0 -# Generation date: 2022-12-16T14:12:00 +# Generation date: 2023-02-03T10:05:44 # Schema: meta # # id: https://w3id.org/linkml/meta @@ -60,7 +60,7 @@ RDF = CurieNamespace('rdf', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#') RDFS = CurieNamespace('rdfs', 'http://www.w3.org/2000/01/rdf-schema#') SCHEMA = CurieNamespace('schema', 'http://schema.org/') -SH = CurieNamespace('sh', 'https://w3id.org/shacl/') +SH = CurieNamespace('sh', 'http://www.w3.org/ns/shacl#') SKOS = CurieNamespace('skos', 'http://www.w3.org/2004/02/skos/core#') SKOSXL = CurieNamespace('skosxl', 'http://www.w3.org/2008/05/skos-xl#') SWRL = CurieNamespace('swrl', 'http://www.w3.org/2003/11/swrl#') @@ -128,6 +128,8 @@ class UniqueKeyUniqueKeyName(extended_str): pass +Anything = Any + @dataclass class CommonMetadata(YAMLRoot): """ @@ -273,6 +275,7 @@ class Element(YAMLRoot): definition_uri: Optional[Union[str, URIorCURIE]] = None local_names: Optional[Union[Dict[Union[str, LocalNameLocalNameSource], Union[dict, "LocalName"]], List[Union[dict, "LocalName"]]]] = empty_dict() conforms_to: Optional[str] = None + implements: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() extensions: Optional[Union[Dict[Union[str, ExtensionTag], Union[dict, Extension]], List[Union[dict, Extension]]]] = empty_dict() annotations: Optional[Union[Dict[Union[str, AnnotationTag], Union[dict, Annotation]], List[Union[dict, Annotation]]]] = empty_dict() description: Optional[str] = None @@ -319,6 +322,10 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.conforms_to is not None and not isinstance(self.conforms_to, str): self.conforms_to = str(self.conforms_to) + if not isinstance(self.implements, list): + self.implements = [self.implements] if self.implements is not None else [] + self.implements = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.implements] + self._normalize_inlined_as_dict(slot_name="extensions", slot_type=Extension, key_name="tag", keyed=True) self._normalize_inlined_as_dict(slot_name="annotations", slot_type=Annotation, key_name="tag", keyed=True) @@ -415,7 +422,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass class SchemaDefinition(Element): """ - a collection of subset, type, slot and class definitions + a collection of subset, type, slot, enum and class definitions """ _inherited_slots: ClassVar[List[str]] = [] @@ -432,7 +439,7 @@ class SchemaDefinition(Element): prefixes: Optional[Union[Dict[Union[str, PrefixPrefixPrefix], Union[dict, "Prefix"]], List[Union[dict, "Prefix"]]]] = empty_dict() emit_prefixes: Optional[Union[Union[str, NCName], List[Union[str, NCName]]]] = empty_list() default_curi_maps: Optional[Union[str, List[str]]] = empty_list() - default_prefix: Optional[str] = None + default_prefix: Optional[str] = "linkml" default_range: Optional[Union[str, TypeDefinitionName]] = None subsets: Optional[Union[Dict[Union[str, SubsetDefinitionName], Union[dict, "SubsetDefinition"]], List[Union[dict, "SubsetDefinition"]]]] = empty_dict() types: Optional[Union[Dict[Union[str, TypeDefinitionName], Union[dict, "TypeDefinition"]], List[Union[dict, "TypeDefinition"]]]] = empty_dict() @@ -450,8 +457,6 @@ class SchemaDefinition(Element): keywords: Optional[Union[str, List[str]]] = empty_list() def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self.default_prefix is None: - self.default_prefix = sfx(str(self.id)) if self._is_empty(self.name): self.MissingRequiredField("name") if not isinstance(self.name, SchemaDefinitionName): @@ -870,7 +875,7 @@ class EnumDefinition(Definition): class_model_uri: ClassVar[URIRef] = LINKML.EnumDefinition name: Union[str, EnumDefinitionName] = None - enum_uri: Optional[Union[str, URIorCURIE]] = None + enum_uri: Optional[Union[str, URIorCURIE]] = class_class_curie code_set: Optional[Union[str, URIorCURIE]] = None code_set_tag: Optional[str] = None code_set_version: Optional[str] = None @@ -1611,7 +1616,7 @@ class SlotExpression(Expression): class_name: ClassVar[str] = "slot_expression" class_model_uri: ClassVar[URIRef] = LINKML.SlotExpression - range: Optional[Union[str, ElementName]] = None + range: Optional[Union[str, ElementName]] = "string" range_expression: Optional[Union[dict, "AnonymousClassExpression"]] = None enum_range: Optional[Union[dict, EnumExpression]] = None required: Optional[Union[bool, Bool]] = None @@ -1734,7 +1739,7 @@ class AnonymousSlotExpression(AnonymousExpression): class_name: ClassVar[str] = "anonymous_slot_expression" class_model_uri: ClassVar[URIRef] = LINKML.AnonymousSlotExpression - range: Optional[Union[str, ElementName]] = None + range: Optional[Union[str, ElementName]] = "string" range_expression: Optional[Union[dict, "AnonymousClassExpression"]] = None enum_range: Optional[Union[dict, EnumExpression]] = None required: Optional[Union[bool, Bool]] = None @@ -1901,7 +1906,7 @@ class SlotDefinition(Definition): is_a: Optional[Union[str, SlotDefinitionName]] = None mixins: Optional[Union[Union[str, SlotDefinitionName], List[Union[str, SlotDefinitionName]]]] = empty_list() apply_to: Optional[Union[Union[str, SlotDefinitionName], List[Union[str, SlotDefinitionName]]]] = empty_list() - range: Optional[Union[str, ElementName]] = None + range: Optional[Union[str, ElementName]] = "string" range_expression: Optional[Union[dict, "AnonymousClassExpression"]] = None enum_range: Optional[Union[dict, EnumExpression]] = None required: Optional[Union[bool, Bool]] = None @@ -1929,6 +1934,8 @@ class SlotDefinition(Definition): all_of: Optional[Union[Union[dict, AnonymousSlotExpression], List[Union[dict, AnonymousSlotExpression]]]] = empty_list() def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.slot_uri is None: + self.slot_uri = slots.slot_uri.curie if self._is_empty(self.name): self.MissingRequiredField("name") if not isinstance(self.name, SlotDefinitionName): @@ -2242,7 +2249,7 @@ class ClassDefinition(Definition): slots: Optional[Union[Union[str, SlotDefinitionName], List[Union[str, SlotDefinitionName]]]] = empty_list() slot_usage: Optional[Union[Dict[Union[str, SlotDefinitionName], Union[dict, SlotDefinition]], List[Union[dict, SlotDefinition]]]] = empty_dict() attributes: Optional[Union[Dict[Union[str, SlotDefinitionName], Union[dict, SlotDefinition]], List[Union[dict, SlotDefinition]]]] = empty_dict() - class_uri: Optional[Union[str, URIorCURIE]] = None + class_uri: Optional[Union[str, URIorCURIE]] = class_class_curie subclass_of: Optional[Union[str, URIorCURIE]] = None union_of: Optional[Union[Union[str, ClassDefinitionName], List[Union[str, ClassDefinitionName]]]] = empty_list() defining_slots: Optional[Union[Union[str, SlotDefinitionName], List[Union[str, SlotDefinitionName]]]] = empty_list() @@ -2913,6 +2920,7 @@ class Example(YAMLRoot): value: Optional[str] = None description: Optional[str] = None + object: Optional[Union[dict, Anything]] = None def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.value is not None and not isinstance(self.value, str): @@ -3340,6 +3348,9 @@ class slots: slots.conforms_to = Slot(uri=DCTERMS.conformsTo, name="conforms_to", curie=DCTERMS.curie('conformsTo'), model_uri=LINKML.conforms_to, domain=Element, range=Optional[str]) +slots.implements = Slot(uri=LINKML.implements, name="implements", curie=LINKML.curie('implements'), + model_uri=LINKML.implements, domain=Element, range=Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]]) + slots.categories = Slot(uri=DCTERMS.subject, name="categories", curie=DCTERMS.curie('subject'), model_uri=LINKML.categories, domain=None, range=Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]]) @@ -3619,7 +3630,7 @@ class slots: slots.class_uri = Slot(uri=LINKML.class_uri, name="class_uri", curie=LINKML.curie('class_uri'), model_uri=LINKML.class_uri, domain=ClassDefinition, range=Optional[Union[str, URIorCURIE]]) -slots.subclass_of = Slot(uri=RDFS.subClassOf, name="subclass_of", curie=RDFS.curie('subClassOf'), +slots.subclass_of = Slot(uri=LINKML.subclass_of, name="subclass_of", curie=LINKML.curie('subclass_of'), model_uri=LINKML.subclass_of, domain=ClassDefinition, range=Optional[Union[str, URIorCURIE]]) slots.defining_slots = Slot(uri=LINKML.defining_slots, name="defining_slots", curie=LINKML.curie('defining_slots'), @@ -3721,6 +3732,9 @@ class slots: slots.inlined_as_list = Slot(uri=LINKML.inlined_as_list, name="inlined_as_list", curie=LINKML.curie('inlined_as_list'), model_uri=LINKML.inlined_as_list, domain=SlotDefinition, range=Optional[Union[bool, Bool]]) +slots.inlined_as_simple_dict = Slot(uri=LINKML.inlined_as_simple_dict, name="inlined_as_simple_dict", curie=LINKML.curie('inlined_as_simple_dict'), + model_uri=LINKML.inlined_as_simple_dict, domain=SlotDefinition, range=Optional[Union[bool, Bool]]) + slots.list_elements_ordered = Slot(uri=LINKML.list_elements_ordered, name="list_elements_ordered", curie=LINKML.curie('list_elements_ordered'), model_uri=LINKML.list_elements_ordered, domain=SlotDefinition, range=Optional[Union[bool, Bool]]) @@ -3850,6 +3864,9 @@ class slots: slots.value_description = Slot(uri=LINKML.description, name="value_description", curie=LINKML.curie('description'), model_uri=LINKML.value_description, domain=Example, range=Optional[str]) +slots.value_object = Slot(uri=LINKML.object, name="value_object", curie=LINKML.curie('object'), + model_uri=LINKML.value_object, domain=Example, range=Optional[Union[dict, Anything]]) + slots.examples = Slot(uri=LINKML.examples, name="examples", curie=LINKML.curie('examples'), model_uri=LINKML.examples, domain=Element, range=Optional[Union[Union[dict, "Example"], List[Union[dict, "Example"]]]]) diff --git a/linkml_model/model/schema/meta.yaml b/linkml_model/model/schema/meta.yaml index 2a2fcadb..40626ba3 100644 --- a/linkml_model/model/schema/meta.yaml +++ b/linkml_model/model/schema/meta.yaml @@ -172,6 +172,12 @@ slots: in_subset: - BasicSubset + implements: + domain: element + range: uriorcurie + description: An element in another schema which this element conforms to + multivalued: true + categories: range: uriorcurie singular_name: category @@ -570,6 +576,8 @@ slots: - BasicSubset permissible_values: + aliases: + - coded values domain: enum_expression range: permissible_value multivalued: true @@ -991,6 +999,8 @@ slots: - sh:or in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" exactly_one_of: rank: 103 @@ -1001,6 +1011,8 @@ slots: - sh:xone in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" none_of: rank: 105 @@ -1011,6 +1023,8 @@ slots: - sh:not in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" all_of: rank: 107 @@ -1021,6 +1035,8 @@ slots: - sh:and in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" preconditions: rank: 111 @@ -1036,6 +1052,8 @@ slots: - swrl:body in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" postconditions: rank: 113 @@ -1050,6 +1068,8 @@ slots: - swrl:body in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" elseconditions: rank: 115 @@ -1060,6 +1080,8 @@ slots: inlined: true in_subset: - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/05validation/#rules" bidirectional: aliases: @@ -1162,7 +1184,8 @@ slots: domain: class_definition range: uriorcurie description: rdfs:subClassOf to be emitted in OWL generation - slot_uri: rdfs:subClassOf + close_mappings: + - rdfs:subClassOf deprecated: Use is_a instead defining_slots: @@ -1515,6 +1538,8 @@ slots: in_subset: - SpecificationSubset - BasicSubset + see_also: + - "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" inlined_as_list: rank: 27 @@ -1535,6 +1560,20 @@ slots: in_subset: - SpecificationSubset - BasicSubset + see_also: + - "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" + + inlined_as_simple_dict: + rank: 28 + domain: slot_definition + range: boolean + inherited: true + description: >- + True means that an inlined slot is represented as a simple dict whose values are all atoms + in_subset: + - SpecificationSubset + see_also: + - "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" list_elements_ordered: domain: slot_definition @@ -1576,7 +1615,7 @@ slots: range: boolean inherited: true description: >- - True means that the key slot(s) uniquely identify the container. + True means that the key slot(s) uniquely identify the elements within a single container comments: - see also 'unique_key' - key is inherited @@ -1594,7 +1633,7 @@ slots: range: boolean inherited: true description: >- - True means that the key slot(s) uniquely identify the container. There can be at most one identifier or key per + True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container aliases: - primary key @@ -1633,6 +1672,8 @@ slots: 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. + comments: + - not to be confused with aliases, which indicates a set of terms to be used for search purposes. in_subset: - SpecificationSubset @@ -1650,6 +1691,8 @@ slots: description: the class(es) that reference the slot in a "slots" or "slot_usage" context readonly: filled in by the loader multivalued: true + exact_mappings: + - schema:domainIncludes is_usage_slot: domain: slot_definition @@ -2229,6 +2272,7 @@ classes: - definition_uri - local_names - conforms_to + - implements see_also: - https://en.wikipedia.org/wiki/Data_element in_subset: @@ -2459,7 +2503,6 @@ classes: mixin: true abstract: true description: general mixin for any class that can represent some form of expression - status: testing anonymous_expression: abstract: true @@ -2468,7 +2511,6 @@ classes: - extensible - annotatable - common_metadata - status: testing path_expression: description: An expression that describes an abstract path from an object to another through a sequence of slot lookups @@ -2477,7 +2519,6 @@ classes: - extensible - annotatable - common_metadata - status: testing slots: - followed_by - none_of @@ -2539,13 +2580,11 @@ classes: range: anonymous_slot_expression none_of: range: anonymous_slot_expression - status: testing anonymous_slot_expression: is_a: anonymous_expression mixins: - slot_expression - status: testing slot_definition: rank: 3 @@ -2638,7 +2677,6 @@ classes: range: anonymous_class_expression none_of: range: anonymous_class_expression - status: testing anonymous_class_expression: is_a: anonymous_expression @@ -2646,7 +2684,6 @@ classes: - class_expression slots: - is_a - status: testing class_definition: rank: 2 @@ -2704,7 +2741,6 @@ classes: class_level_rule: abstract: true description: A rule that is applied to classes - status: testing class_rule: is_a: class_level_rule @@ -2726,7 +2762,6 @@ classes: close_mappings: - sh:TripleRule - swrl:Imp - status: testing in_subset: - SpecificationSubset diff --git a/linkml_model/model/schema/types.yaml b/linkml_model/model/schema/types.yaml index f1921023..950b2cef 100644 --- a/linkml_model/model/schema/types.yaml +++ b/linkml_model/model/schema/types.yaml @@ -10,6 +10,7 @@ prefixes: linkml: https://w3id.org/linkml/ xsd: http://www.w3.org/2001/XMLSchema# shex: http://www.w3.org/ns/shex# + schema: http://schema.org/ default_prefix: linkml default_range: string @@ -30,32 +31,44 @@ types: uri: xsd:string base: str description: A character string + exact_mappings: + - schema:Text integer: uri: xsd:integer base: int description: An integer + exact_mappings: + - schema:Integer boolean: uri: xsd:boolean base: Bool repr: bool description: A binary (true or false) value + exact_mappings: + - schema:Boolean float: uri: xsd:float base: float description: A real number that conforms to the xsd:float specification + exact_mappings: + - schema:Float double: uri: xsd:double base: float description: A real number that conforms to the xsd:double specification + close_mappings: + - schema:Float decimal: uri: xsd:decimal base: Decimal description: A real number with arbitrary precision that conforms to the xsd:decimal specification + broad_mappings: + - schema:Number time: uri: xsd:dateTime @@ -64,6 +77,8 @@ types: description: A time object represents a (local) time of day, independent of any particular day notes: - URI is dateTime because OWL reasoners do not work with straight date or time + exact_mappings: + - schema:Time date: uri: xsd:date @@ -72,12 +87,16 @@ types: description: a date (year, month and day) in an idealized calendar notes: - URI is dateTime because OWL reasoners don't work with straight date or time + exact_mappings: + - schema:Date datetime: uri: xsd:dateTime repr: str base: XSDDateTime description: The combination of a date and time + exact_mappings: + - schema:DateTime date_or_datetime: uri: linkml:DateOrDatetime @@ -99,6 +118,8 @@ types: base: URI repr: str description: a complete URI + close_mappings: + - schema:URL ncname: uri: xsd:string diff --git a/linkml_model/model/schema/units.yaml b/linkml_model/model/schema/units.yaml index 66c6d3f3..cdf7c660 100644 --- a/linkml_model/model/schema/units.yaml +++ b/linkml_model/model/schema/units.yaml @@ -50,6 +50,15 @@ slots: symbol: slot_uri: qudt:symbol description: name of the unit encoded as a symbol + + abbreviation: + slot_uri: qudt: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) + + descriptive_name: + slot_uri: rdfs:label + description: the spelled out name of the unit, for example, meter classes: UnitOfMeasure: @@ -57,6 +66,8 @@ classes: 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). slots: - symbol + - abbreviation + - descriptive_name - exact mappings - ucum_code - derivation diff --git a/linkml_model/owl/meta.owl.ttl b/linkml_model/owl/meta.owl.ttl index 813293fa..02979fbc 100644 --- a/linkml_model/owl/meta.owl.ttl +++ b/linkml_model/owl/meta.owl.ttl @@ -13,7 +13,7 @@ @prefix rdf: . @prefix rdfs: . @prefix schema: . -@prefix sh: . +@prefix sh: . @prefix skos: . @prefix skosxl: . @prefix swrl: . @@ -35,10 +35,19 @@ linkml:inapplicable a owl:ObjectProperty, skos:definition "true means that the slot must not be present" ; skos:note "By default all slots are applicable. The main use case for this slot is as an override in a subclass" . +linkml:inlined_as_simple_dict a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "inlined_as_simple_dict" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" ; + skos:definition "True means that an inlined slot is represented as a simple dict whose values are all atoms" . + linkml:meta a owl:Ontology ; rdfs:label "meta" ; IAO:0000700 linkml:AltDescription, linkml:Annotatable, + linkml:Anything, linkml:ClassExpression, linkml:ClassLevelRule, linkml:CommonMetadata, @@ -55,11 +64,11 @@ linkml:meta a owl:Ontology ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "LinkML Schema Metamodel" ; pav:version "2.0.0" ; - linkml:generation_date "2022-12-16T14:11:51" ; + linkml:generation_date "2023-02-03T10:05:37" ; linkml:metamodel_version "1.7.0" ; linkml:source_file "meta.yaml" ; - linkml:source_file_date "2022-12-16T13:25:24" ; - linkml:source_file_size 81549 . + linkml:source_file_date "2023-02-02T16:51:04" ; + linkml:source_file_size 83200 . linkml:owned_by a owl:ObjectProperty, linkml:SlotDefinition ; @@ -231,12 +240,14 @@ linkml:domain_of a owl:ObjectProperty, rdfs:label "domain_of" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:ClassDefinition ; - skos:definition "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" . + skos:definition "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; + skos:exactMatch schema:domainIncludes . linkml:elseconditions a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "elseconditions" ; rdfs:range linkml:AnonymousClassExpression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; skos:altLabel "else" ; skos:definition "an expression that must hold for an instance of the class, if the preconditions no not hold" . @@ -304,7 +315,7 @@ linkml:identifier a owl:ObjectProperty, "UID", "code", "primary key" ; - skos:definition "True means that the key slot(s) uniquely identify the container. There can be at most one identifier or key per container" ; + skos:definition "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; skos:note "a given domain can have at most one identifier", "a key slot is automatically required. Identifiers cannot be optional", "identifier is inherited", @@ -324,16 +335,25 @@ linkml:ifabsent a owl:ObjectProperty, rdfs:range linkml:String ; skos:closeMatch sh:defaultValue ; skos:definition """function that provides a default value for the slot. Possible values for this slot are defined in -linkml_runtime.utils.ifabsent_functions.default_library: +linkml.utils.ifabsent_functions.default_library: * [Tt]rue -- boolean True * [Ff]alse -- boolean False - * int(value) -- integer value - * str(value) -- string value - * default_range -- schema default range * bnode -- blank node identifier - * slot_uri -- URI for the slot * class_curie -- CURIE for the containing class - * class_uri -- URI for the containing class""" . + * 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""" . + +linkml:implements a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "implements" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + skos:definition "An element in another schema which this element conforms to" . linkml:import_as a owl:ObjectProperty, linkml:SlotDefinition ; @@ -427,7 +447,7 @@ linkml:key a owl:ObjectProperty, rdfs:label "key" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - skos:definition "True means that the key slot(s) uniquely identify the container." ; + skos:definition "True means that the key slot(s) uniquely identify the elements within a single container" ; skos:note "a given domain can have at most one key slot (restriction to be removed in the future)", "a key slot is automatically required. Keys cannot be optional", "identifiers and keys are mutually exclusive. A given domain cannot have both", @@ -495,6 +515,13 @@ linkml:multivalued a owl:ObjectProperty, rdfs:range linkml:Boolean ; skos:definition "true means that slot can have more than one value" . +linkml:object a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "object" ; + rdfs:domain linkml:Example ; + rdfs:range linkml:Anything ; + skos:definition "direct object representation of the example" . + linkml:open_world a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "open_world" ; @@ -526,6 +553,7 @@ linkml:postconditions a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "postconditions" ; rdfs:range linkml:AnonymousClassExpression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; skos:altLabel "consequents", "head", "then" ; @@ -696,6 +724,14 @@ We call the slot with the serialization the s-slot, the slots used in the {}s ar Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects For example, a Measurement class may have 3 fields: unit, value, and string_value. The string_value slot may have a string_serialization of {value}{unit} such that if unit=cm and value=2, the value of string_value shouldd be 2cm""" . +linkml:subclass_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "subclass_of" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:Uriorcurie ; + skos:closeMatch rdfs:subClassOf ; + skos:definition "rdfs:subClassOf to be emitted in OWL generation" . + linkml:subsets a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "subsets" ; @@ -935,14 +971,6 @@ rdf:subject a owl:Class, linkml:RelationalRoleEnum ; rdfs:label "SUBJECT" . -rdfs:subClassOf a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "subclass_of" ; - rdfs:domain linkml:ClassDefinition ; - rdfs:range linkml:Uriorcurie ; - skos:definition "rdfs:subClassOf to be emitted in OWL generation" ; - skos:exactMatch rdfs:subClassOf . - rdfs:subPropertyOf a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "subproperty_of" ; @@ -982,7 +1010,8 @@ skos:prefLabel a owl:ObjectProperty, rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:String ; skos:definition "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; - skos:exactMatch skos:prefLabel . + skos:exactMatch skos:prefLabel ; + skos:note "not to be confused with aliases, which indicates a set of terms to be used for search purposes." . skosxl:literalForm a owl:ObjectProperty, linkml:SlotDefinition ; @@ -994,100 +1023,159 @@ skosxl:literalForm a owl:ObjectProperty, skos:definition "The literal lexical form of a structured alias" ; skos:exactMatch skosxl:literalForm . +sh:condition a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "preconditions" ; + rdfs:range linkml:AnonymousClassExpression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; + skos:altLabel "antecedents", + "body", + "if" ; + skos:closeMatch swrl:body ; + skos:definition "an expression that must hold in order for the rule to be applicable to an instance" ; + skos:exactMatch sh:condition . + +sh:deactivated a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "deactivated" ; + rdfs:range linkml:Boolean ; + skos:definition "a deactivated rule is not executed by the rules engine" ; + skos:exactMatch sh:deactivated . + +sh:declare a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "prefixes" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:Prefix ; + skos:definition "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes" ; + skos:exactMatch sh:declare . + +sh:group a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "slot_group" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:SlotDefinition ; + skos:definition "allows for grouping of related slots into a grouping slot that serves the role of a group" ; + skos:exactMatch sh:group . + +sh:namespace a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "prefix_reference" ; + rdfs:domain linkml:Prefix ; + rdfs:range linkml:Uri ; + skos:definition "A URI associated with a given prefix" ; + skos:exactMatch sh:namespace . + +sh:prefix a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "prefix_prefix" ; + rdfs:domain linkml:Prefix ; + rdfs:range linkml:Ncname ; + skos:definition "the nsname (sans ':' for a given prefix)" ; + skos:exactMatch sh:prefix . + +sh:rule a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "rules" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:ClassRule ; + skos:definition "the collection of rules that apply to all members of this class" ; + skos:exactMatch sh:rule . + linkml:AnonymousExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "anonymous_expression" ; rdfs:subClassOf [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty schema:inLanguage ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], + [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty sh:order ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema:inLanguage ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:onProperty skos:altLabel ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty skos:definition ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; owl:allValuesFrom linkml:StructuredAlias ; owl:onProperty skosxl:altLabel ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty dcterms:source ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:allValuesFrom linkml:AltDescription ; owl:onProperty linkml:alt_descriptions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:onProperty skos:closeMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:broadMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:onClass linkml:String ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:onProperty skos:exactMatch ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty dcterms:title ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_possible_replacement ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:note ], linkml:Annotatable, linkml:CommonMetadata, linkml:Expression, @@ -1102,120 +1190,120 @@ linkml:ClassRule a owl:Class, linkml:ClassDefinition ; rdfs:label "class_rule" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:deprecated ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty sh:order ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty skos:definition ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:AnonymousClassExpression ; owl:onProperty sh:condition ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:onClass linkml:String ; + owl:onProperty schema:inLanguage ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty sh:deactivated ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:narrowMatch ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:AnonymousClassExpression ; + owl:onProperty linkml:postconditions ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:bidirectional ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty skos:editorialNote ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], [ a owl:Restriction ; owl:allValuesFrom linkml:Extension ; owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:onProperty skos:note ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:postconditions ], + owl:onProperty linkml:elseconditions ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:onProperty skos:mappingRelation ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:broadMatch ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty dcterms:source ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:open_world ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:bidirectional ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:onProperty dcterms:title ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:closeMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema:inLanguage ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty sh:deactivated ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:elseconditions ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:onProperty linkml:open_world ], linkml:Annotatable, linkml:ClassLevelRule, linkml:CommonMetadata, @@ -1267,13 +1355,21 @@ linkml:TypeExpression a owl:Class, rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:all_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:UnitOfMeasure ; + owl:onProperty qudt:unit ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; @@ -1283,9 +1379,8 @@ linkml:TypeExpression a owl:Class, owl:onClass linkml:String ; owl:onProperty linkml:pattern ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:PatternExpression ; @@ -1295,22 +1390,15 @@ linkml:TypeExpression a owl:Class, owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:all_of ], linkml:Expression, linkml:mixin . @@ -1351,7 +1439,7 @@ linkml:transitive_form_of a owl:ObjectProperty, rdfs:label "transitive_form_of" ; rdfs:range linkml:SlotDefinition ; skos:definition "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" ; - skos:note "{'Example': 'ancestor_of is the transitive_form_of parent_of'}" . + skos:note "Example: ancestor_of is the transitive_form_of parent_of" . linkml:unique_key_slots a owl:ObjectProperty, linkml:SlotDefinition ; @@ -1360,64 +1448,6 @@ linkml:unique_key_slots a owl:ObjectProperty, rdfs:range linkml:SlotDefinition ; skos:definition "list of slot names that form a key" . -sh:condition a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "preconditions" ; - rdfs:range linkml:AnonymousClassExpression ; - skos:altLabel "antecedents", - "body", - "if" ; - skos:closeMatch swrl:body ; - skos:definition "an expression that must hold in order for the rule to be applicable to an instance" ; - skos:exactMatch sh:condition . - -sh:deactivated a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "deactivated" ; - rdfs:range linkml:Boolean ; - skos:definition "a deactivated rule is not executed by the rules engine" ; - skos:exactMatch sh:deactivated . - -sh:declare a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "prefixes" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Prefix ; - skos:definition "prefix / URI definitions to be added to the context beyond those fetched from prefixcommons in id prefixes" ; - skos:exactMatch sh:declare . - -sh:group a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "slot_group" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:SlotDefinition ; - skos:definition "allows for grouping of related slots into a grouping slot that serves the role of a group" ; - skos:exactMatch sh:group . - -sh:namespace a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "prefix_reference" ; - rdfs:domain linkml:Prefix ; - rdfs:range linkml:Uri ; - skos:definition "A URI associated with a given prefix" ; - skos:exactMatch sh:namespace . - -sh:prefix a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "prefix_prefix" ; - rdfs:domain linkml:Prefix ; - rdfs:range linkml:Ncname ; - skos:definition "the nsname (sans ':' for a given prefix)" ; - skos:exactMatch sh:prefix . - -sh:rule a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "rules" ; - rdfs:domain linkml:ClassDefinition ; - rdfs:range linkml:ClassRule ; - skos:definition "the collection of rules that apply to all members of this class" ; - skos:exactMatch sh:rule . - dcterms:subject a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "categories" ; @@ -1437,6 +1467,11 @@ rdfs:label a owl:ObjectProperty, skos:exactMatch schema:name, rdfs:label . +linkml:Anything a owl:Class, + linkml:ClassDefinition ; + rdfs:label "Anything" ; + skos:exactMatch linkml:Any . + linkml:all_members a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "all_members" ; @@ -1523,6 +1558,7 @@ linkml:inlined a owl:ObjectProperty, rdfs:label "inlined" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" ; skos:definition "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; skos:note "classes without keys or identifiers are necessarily inlined as lists" . @@ -1531,6 +1567,7 @@ linkml:inlined_as_list a owl:ObjectProperty, rdfs:label "inlined_as_list" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" ; skos:definition "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; skos:note """A keyed or identified class with one additional slot can be input in a third form, a dictionary whose key is the key or identifier and whose value is the one additional element. This form is still stored according @@ -1571,6 +1608,7 @@ linkml:permissible_values a owl:ObjectProperty, rdfs:label "permissible_values" ; rdfs:domain linkml:EnumExpression ; rdfs:range linkml:PermissibleValue ; + skos:altLabel "coded values" ; skos:definition "A list of possible values for a slot range" . linkml:pv_formula a owl:ObjectProperty, @@ -1663,20 +1701,20 @@ linkml:ClassExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "class_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], - [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:slot_conditions ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:all_of ], linkml:mixin ; skos:definition "A boolean expression that can be used to dynamically determine membership of a class" . @@ -1684,48 +1722,33 @@ linkml:ImportExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "import_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], - [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:onProperty skos:definition ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:onProperty dcterms:title ], [ a owl:Restriction ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:import_from ; - owl:qualifiedCardinality 1 ], + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:onClass linkml:Ncname ; + owl:onProperty linkml:import_as ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty schema:inLanguage ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:SubsetDefinition ; owl:onProperty OIO:inSubset ], @@ -1735,56 +1758,71 @@ linkml:ImportExpression a owl:Class, owl:onProperty skos:inScheme ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Ncname ; - owl:onProperty linkml:import_as ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty dcterms:source ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Setting ; owl:onProperty linkml:import_map ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:closeMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:onProperty skos:note ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], + [ a owl:Restriction ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:import_from ; + owl:qualifiedCardinality 1 ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:onProperty skos:broadMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty sh:order ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:imported_from ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -1808,103 +1846,103 @@ linkml:SlotExpression a owl:Class, rdfs:label "slot_expression" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:EnumExpression ; - owl:onProperty linkml:enum_range ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_cardinality ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onClass linkml:Element ; + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], + owl:onClass linkml:AnonymousSlotExpression ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:required ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:PatternExpression ; owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], + owl:onClass linkml:UnitOfMeasure ; + owl:onProperty qudt:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:onClass linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_members ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:inlined ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_expression ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:required ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:onClass linkml:PresenceEnum ; + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:has_member ], + owl:onClass linkml:String ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:recommended ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:recommended ], + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Element ; - owl:onProperty linkml:range ], + owl:onClass linkml:EnumExpression ; + owl:onProperty linkml:enum_range ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:minimum_value ], linkml:Expression, linkml:mixin ; skos:definition "an expression that constrains the range of values a slot can take" . @@ -1913,106 +1951,106 @@ linkml:UniqueKey a owl:Class, linkml:ClassDefinition ; rdfs:label "unique_key" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], - [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:onClass linkml:Integer ; + owl:onProperty sh:order ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty skos:broadMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:onProperty skos:definition ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:onClass linkml:String ; + owl:onProperty linkml:unique_key_name ; + owl:qualifiedCardinality 1 ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onProperty skos:altLabel ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty rdfs:seeAlso ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:relatedMatch ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:onProperty linkml:imported_from ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], [ a owl:Class ; owl:intersectionOf ( [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:unique_key_slots ] [ a owl:Restriction ; owl:onProperty linkml:unique_key_slots ; owl:someValuesFrom linkml:SlotDefinition ] ) ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; owl:allValuesFrom linkml:Extension ; owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty linkml:unique_key_name ; - owl:qualifiedCardinality 1 ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:onClass linkml:String ; + owl:onProperty dcterms:title ], [ a owl:Restriction ; owl:allValuesFrom linkml:Example ; owl:onProperty linkml:examples ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:closeMatch ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:onProperty dcterms:source ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:note ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty schema:inLanguage ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -2046,12 +2084,12 @@ linkml:Prefix a owl:Class, linkml:ClassDefinition ; rdfs:label "prefix" ; rdfs:subClassOf [ a owl:Restriction ; - owl:onClass linkml:Uri ; - owl:onProperty sh:namespace ; - owl:qualifiedCardinality 1 ], - [ a owl:Restriction ; owl:onClass linkml:Ncname ; owl:onProperty sh:prefix ; + owl:qualifiedCardinality 1 ], + [ a owl:Restriction ; + owl:onClass linkml:Uri ; + owl:onProperty sh:namespace ; owl:qualifiedCardinality 1 ] ; skos:definition "prefix URI tuple" . @@ -2076,12 +2114,12 @@ linkml:MatchQuery a owl:Class, rdfs:label "match_query" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:identifier_pattern ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:source_ontology ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:source_ontology ] ; + owl:onClass linkml:String ; + owl:onProperty linkml:identifier_pattern ] ; skos:definition "A query that is used on an enum expression to dynamically obtain a set of permissivle values via a query that matches on properties of the external concepts" . linkml:equals_number a owl:ObjectProperty, @@ -2153,120 +2191,120 @@ linkml:PathExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "path_expression" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], + [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:SlotDefinition ; owl:onProperty linkml:traverse ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:any_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:closeMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:broadMatch ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:imported_from ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:PathExpression ; + owl:onProperty linkml:followed_by ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty schema:inLanguage ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty sh:order ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty skos:definition ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:exactMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onProperty skos:note ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PathExpression ; - owl:onProperty linkml:followed_by ], + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uri ; owl:onProperty skos:inScheme ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:all_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_possible_replacement ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:onProperty dcterms:title ], [ a owl:Restriction ; owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:exactly_one_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; owl:onProperty linkml:reversed ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; @@ -2319,44 +2357,44 @@ linkml:AnonymousEnumExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "anonymous_enum_expression" ; rdfs:subClassOf [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:code_set ], + [ a owl:Restriction ; owl:allValuesFrom linkml:EnumDefinition ; owl:onProperty linkml:inherits ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:minus ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:permissible_values ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:MatchQuery ; + owl:onProperty linkml:matches ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:concepts ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_version ], + owl:onClass linkml:PvFormulaOptions ; + owl:onProperty linkml:pv_formula ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:include ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:minus ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:MatchQuery ; - owl:onProperty linkml:matches ], + owl:onClass linkml:String ; + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:ReachabilityQuery ; owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:code_set ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:code_set_tag ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PvFormulaOptions ; - owl:onProperty linkml:pv_formula ], linkml:EnumExpression ; skos:definition "An enum_expression that is not named" . @@ -2366,113 +2404,113 @@ linkml:PermissibleValue a owl:Class, rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty dcterms:title ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty sh:order ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:mixins ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:text ; - owl:qualifiedCardinality 1 ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:onProperty skos:broadMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:meaning ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PermissibleValue ; - owl:onProperty linkml:is_a ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:todos ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:mixins ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty skos:editorialNote ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:onProperty skos:note ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:onClass linkml:PermissibleValue ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], + [ a owl:Restriction ; + owl:onClass linkml:String ; + owl:onProperty linkml:text ; + owl:qualifiedCardinality 1 ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:closeMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:onProperty skos:definition ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:UnitOfMeasure ; + owl:onProperty qudt:unit ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:onProperty dcterms:title ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty schema:inLanguage ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty dcterms:source ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -2502,74 +2540,79 @@ linkml:CommonMetadata a owl:Class, linkml:ClassDefinition ; rdfs:label "common_metadata" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], + [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty schema:inLanguage ], + owl:onProperty dcterms:title ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:closeMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:broadMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:mappingRelation ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:onClass linkml:Integer ; + owl:onProperty sh:order ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:note ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_possible_replacement ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:Example ; owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:onClass linkml:String ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:onProperty schema:inLanguage ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; @@ -2578,14 +2621,9 @@ linkml:CommonMetadata a owl:Class, owl:allValuesFrom linkml:String ; owl:onProperty skos:editorialNote ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty dcterms:source ], linkml:mixin ; skos:definition "Generic metadata shared across definitions" . @@ -2593,66 +2631,38 @@ linkml:PatternExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "pattern_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:partial_match ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty skos:definition ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:onProperty dcterms:title ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:onClass linkml:String ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; owl:allValuesFrom linkml:Extension ; owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:syntax ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:narrowMatch ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema:inLanguage ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:onProperty skos:closeMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:Annotation ; owl:onProperty linkml:annotations ], @@ -2661,40 +2671,68 @@ linkml:PatternExpression a owl:Class, owl:onProperty skos:broadMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:partial_match ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:interpolated ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:syntax ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty dcterms:source ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:interpolated ], + owl:onClass linkml:String ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:onProperty skos:relatedMatch ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty skos:definition ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty sh:order ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty schema:inLanguage ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:note ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -2704,6 +2742,13 @@ linkml:ReachabilityQuery a owl:Class, linkml:ClassDefinition ; rdfs:label "reachability_query" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:relationship_types ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:source_nodes ], [ a owl:Restriction ; @@ -2713,18 +2758,11 @@ linkml:ReachabilityQuery a owl:Class, [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:traverse_up ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:is_direct ], + owl:onProperty linkml:include_self ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:include_self ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:relationship_types ] ; + owl:onProperty linkml:traverse_up ] ; 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" . linkml:UnitOfMeasure a owl:Class, @@ -2733,26 +2771,26 @@ linkml:UnitOfMeasure a owl:Class, rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty qudt:iec61360Code ], + owl:onProperty linkml:derivation ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty qudt:symbol ], + owl:onProperty qudt:ucumCode ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:derivation ], + owl:onProperty qudt:symbol ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty qudt:hasQuantityKind ], + owl:onClass linkml:String ; + owl:onProperty qudt:iec61360Code ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty qudt:ucumCode ] ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty qudt:hasQuantityKind ] ; 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 . @@ -2760,6 +2798,7 @@ linkml:all_of a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "all_of" ; rdfs:range linkml:Expression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; rdfs:subPropertyOf linkml:boolean_slot ; skos:definition "holds if all of the expressions hold" ; skos:exactMatch sh:and . @@ -2776,6 +2815,7 @@ linkml:any_of a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "any_of" ; rdfs:range linkml:Expression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; rdfs:subPropertyOf linkml:boolean_slot ; skos:definition "holds if at least one of the expressions hold" ; skos:exactMatch sh:or . @@ -2806,6 +2846,7 @@ linkml:exactly_one_of a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "exactly_one_of" ; rdfs:range linkml:Expression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; rdfs:subPropertyOf linkml:boolean_slot ; skos:definition "holds if only one of the expressions hold" ; skos:exactMatch sh:xone . @@ -2835,6 +2876,7 @@ linkml:none_of a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "none_of" ; rdfs:range linkml:Expression ; + rdfs:seeAlso "https://w3id.org/linkml/docs/specification/05validation/#rules" ; rdfs:subPropertyOf linkml:boolean_slot ; skos:definition "holds if none of the expressions hold" ; skos:exactMatch sh:not . @@ -2959,55 +3001,70 @@ skosxl:altLabel a owl:ObjectProperty, skos:definition "A list of structured_alias objects." ; skos:exactMatch skosxl:altLabel . +sh:order a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "rank" ; + rdfs:range linkml:Integer ; + skos:altLabel "display order", + "order", + "precedence" ; + skos:definition "the relative order in which the element occurs, lower values are given precedence" ; + skos:exactMatch qb:order, + qudt:order, + sh:order ; + skos:note "the rank of an element does not affect the semantics" . + linkml:EnumDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "enum_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:include ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_version ], + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ReachabilityQuery ; - owl:onProperty linkml:reachable_from ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:enum_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:code_set ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:permissible_values ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:MatchQuery ; + owl:onProperty linkml:matches ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:enum_uri ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:minus ], + owl:onClass linkml:ReachabilityQuery ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:PvFormulaOptions ; owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:code_set ], + owl:onClass linkml:String ; + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:MatchQuery ; - owl:onProperty linkml:matches ], + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:inherits ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:concepts ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:minus ], linkml:Definition, linkml:EnumExpression ; skos:altLabel "Terminology Value Set", + "answer list", + "concept set", "enum", "term set", "value set" ; @@ -3029,71 +3086,71 @@ linkml:TypeDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "type_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:TypeDefinition ; + owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:base ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:TypeDefinition ; - owl:onProperty linkml:typeof ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:implicit_prefix ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:pattern ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:uri ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:union_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:repr ], + owl:onClass linkml:UnitOfMeasure ; + owl:onProperty qudt:unit ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], + owl:onClass linkml:String ; + owl:onProperty linkml:repr ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:union_of ], linkml:Element, linkml:TypeExpression ; skos:definition "an element that whose instances are atomic scalar values that can be mapped to primitive types" . @@ -3106,19 +3163,6 @@ linkml:annotations a owl:ObjectProperty, rdfs:subPropertyOf linkml:extensions ; skos:definition "a collection of tag/text tuples with the semantics of OWL Annotation" . -sh:order a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "rank" ; - rdfs:range linkml:Integer ; - skos:altLabel "display order", - "order", - "precedence" ; - skos:definition "the relative order in which the element occurs, lower values are given precedence" ; - skos:exactMatch qb:order, - qudt:order, - sh:order ; - skos:note "the rank of an element does not affect the semantics" . - skos:altLabel a owl:ObjectProperty, linkml:SlotDefinition . @@ -3127,11 +3171,11 @@ linkml:AltDescription a owl:Class, rdfs:label "alt_description" ; rdfs:subClassOf [ a owl:Restriction ; owl:onClass linkml:String ; - owl:onProperty linkml:source ; + owl:onProperty linkml:description ; owl:qualifiedCardinality 1 ], [ a owl:Restriction ; owl:onClass linkml:String ; - owl:onProperty linkml:description ; + owl:onProperty linkml:source ; owl:qualifiedCardinality 1 ] ; skos:definition "an attributed description" . @@ -3159,41 +3203,32 @@ linkml:AnonymousTypeExpression a owl:Class, rdfs:label "anonymous_type_expression" ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:exactly_one_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:UnitOfMeasure ; owl:onProperty qudt:unit ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:onClass linkml:String ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; @@ -3202,8 +3237,17 @@ linkml:AnonymousTypeExpression a owl:Class, owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty linkml:minimum_value ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty linkml:equals_number ], linkml:TypeExpression . linkml:extensions a owl:ObjectProperty, @@ -3224,19 +3268,6 @@ skos:relatedMatch a owl:Class, skos:definition "A list of terms from different schemas or terminology systems that have related meaning." ; skos:exactMatch skos:relatedMatch . -linkml:Example a owl:Class, - linkml:ClassDefinition ; - rdfs:label "example" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:example ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:description ] ; - skos:definition "usage example and description" . - linkml:Expression a owl:Class, linkml:ClassDefinition ; rdfs:label "expression" ; @@ -3247,107 +3278,107 @@ linkml:StructuredAlias a owl:Class, linkml:ClassDefinition ; rdfs:label "structured_alias" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:broadMatch ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onClass linkml:String ; + owl:onProperty skosxl:literalForm ; + owl:qualifiedCardinality 1 ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty dcterms:title ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty skos:definition ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:onProperty skos:relatedMatch ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Integer ; + owl:onProperty sh:order ], [ a owl:Restriction ; owl:allValuesFrom linkml:Example ; owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], - [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty skosxl:literalForm ; - owl:qualifiedCardinality 1 ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:onProperty rdfs:seeAlso ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:altLabel ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onClass linkml:AliasPredicateEnum ; + owl:onProperty rdf:predicate ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty schema:inLanguage ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty skos:note ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty dcterms:subject ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:closeMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AliasPredicateEnum ; - owl:onProperty rdf:predicate ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty dcterms:source ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uri ; owl:onProperty skos:inScheme ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:exactMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema:inLanguage ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], linkml:Annotatable, linkml:CommonMetadata, linkml:Expression, @@ -3372,6 +3403,23 @@ skos:exactMatch a owl:Class, skos:definition "A list of terms from different schemas or terminology systems that have identical meaning." ; skos:exactMatch skos:exactMatch . +linkml:Example a owl:Class, + linkml:ClassDefinition ; + rdfs:label "example" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Anything ; + owl:onProperty linkml:object ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:description ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty skos:example ] ; + skos:definition "usage example and description" . + linkml:Extension a owl:Class, linkml:ClassDefinition ; rdfs:label "extension" ; @@ -3403,44 +3451,44 @@ linkml:EnumExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "enum_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_version ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], - [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:ReachabilityQuery ; owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PvFormulaOptions ; - owl:onProperty linkml:pv_formula ], + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:code_set_tag ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:code_set ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousEnumExpression ; owl:onProperty linkml:minus ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:permissible_values ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:MatchQuery ; + owl:onProperty linkml:matches ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:PvFormulaOptions ; + owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousEnumExpression ; owl:onProperty linkml:include ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:MatchQuery ; - owl:onProperty linkml:matches ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:code_set ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:inherits ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:concepts ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:code_set_version ], linkml:Expression ; skos:definition "An expression that constrains the range of a slot" . @@ -3448,104 +3496,104 @@ linkml:AnonymousSlotExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "anonymous_slot_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:EnumExpression ; + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:equals_number ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:AnonymousSlotExpression ; owl:onProperty linkml:has_member ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], + owl:onClass linkml:Element ; + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_cardinality ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:required ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty linkml:minimum_value ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined ], + owl:onProperty linkml:recommended ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], + owl:onClass linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], + owl:onClass linkml:UnitOfMeasure ; + owl:onProperty qudt:unit ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_expression ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_of ], + owl:onClass linkml:PresenceEnum ; + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Element ; - owl:onProperty linkml:range ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:recommended ], + owl:onClass linkml:String ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:required ], + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:AnonymousSlotExpression ; owl:onProperty linkml:all_members ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:EnumExpression ; - owl:onProperty linkml:enum_range ], + owl:onClass linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:inlined ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:equals_expression ], linkml:AnonymousExpression, linkml:SlotExpression . @@ -3555,92 +3603,92 @@ linkml:SchemaDefinition a owl:Class, rdfs:seeAlso "https://en.wikipedia.org/wiki/Data_dictionary" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:TypeDefinition ; - owl:onProperty linkml:default_range ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:default_prefix ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:imports ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Datetime ; owl:onProperty linkml:generation_date ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:enums ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; owl:allValuesFrom linkml:Setting ; owl:onProperty linkml:settings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slots ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:classes ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema:keywords ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:types ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:source_file ], + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:default_curi_maps ], + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:enums ], [ a owl:Restriction ; owl:allValuesFrom linkml:SubsetDefinition ; owl:onProperty linkml:subsets ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:metamodel_version ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:emit_prefixes ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:source_file_size ], - [ a owl:Restriction ; - owl:onClass linkml:Ncname ; - owl:onProperty rdfs:label ; - owl:qualifiedCardinality 1 ], + owl:onProperty pav:version ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty dcterms:license ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:types ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty pav:version ], + owl:onClass linkml:TypeDefinition ; + owl:onProperty linkml:default_range ], [ a owl:Restriction ; owl:onClass linkml:Uri ; owl:onProperty linkml:id ; owl:qualifiedCardinality 1 ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slots ], + [ a owl:Restriction ; + owl:onClass linkml:Ncname ; + owl:onProperty rdfs:label ; + owl:qualifiedCardinality 1 ], [ a owl:Restriction ; owl:allValuesFrom linkml:Prefix ; owl:onProperty sh:declare ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:classes ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Datetime ; owl:onProperty linkml:source_file_date ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty schema:keywords ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:imports ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:source_file ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty dcterms:subject ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:default_prefix ], linkml:Element ; skos:altLabel "data dictionary" ; skos:closeMatch qb:ComponentSet ; - skos:definition "a collection of subset, type, slot and class definitions" . + skos:definition "a collection of subset, type, slot, enum and class definitions" . linkml:AnonymousClassExpression a owl:Class, linkml:ClassDefinition ; @@ -3652,9 +3700,6 @@ linkml:AnonymousClassExpression a owl:Class, [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:any_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:exactly_one_of ], @@ -3664,6 +3709,9 @@ linkml:AnonymousClassExpression a owl:Class, [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:none_of ], linkml:AnonymousExpression, linkml:ClassExpression . @@ -3672,50 +3720,50 @@ linkml:Definition a owl:Class, rdfs:label "definition" ; rdfs:seeAlso "https://en.wikipedia.org/wiki/Data_element_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:mixins ], - [ a owl:Restriction ; owl:allValuesFrom linkml:Definition ; owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:onProperty pav:createdBy ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:onProperty bibo:status ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:string_serialization ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:onProperty oslc:modifiedBy ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:mixin ], + owl:onClass linkml:Definition ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:abstract ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:onProperty pav:lastUpdatedOn ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:abstract ], + owl:onClass linkml:String ; + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:values_from ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Definition ; - owl:onProperty linkml:is_a ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:mixin ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Datetime ; + owl:onProperty pav:createdOn ], linkml:Element ; skos:definition "abstract base class for core metaclasses" . @@ -3724,114 +3772,117 @@ linkml:Element a owl:Class, rdfs:label "element" ; rdfs:seeAlso "https://en.wikipedia.org/wiki/Data_element" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema:inLanguage ], + owl:allValuesFrom linkml:LocalName ; + owl:onProperty linkml:local_names ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:exactMatch ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty dcterms:title ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:onProperty dcterms:conformsTo ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty rdfs:seeAlso ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty dcterms:title ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty linkml:definition_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty OIO:inSubset ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:implements ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Integer ; owl:onProperty sh:order ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty rdfs:label ; - owl:qualifiedCardinality 1 ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:mappingRelation ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty skos:closeMatch ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:onProperty skos:relatedMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:id_prefixes ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:note ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; owl:onProperty linkml:imported_from ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty dcterms:conformsTo ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:onProperty schema:inLanguage ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:allValuesFrom linkml:String ; + owl:onProperty skos:editorialNote ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty skosxl:altLabel ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:onProperty rdfs:label ; + owl:qualifiedCardinality 1 ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:definition_uri ], + owl:onClass linkml:Uri ; + owl:onProperty skos:inScheme ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:onProperty skos:broadMatch ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty skos:altLabel ], [ a owl:Restriction ; - owl:allValuesFrom linkml:LocalName ; - owl:onProperty linkml:local_names ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty skos:narrowMatch ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty skos:definition ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Uriorcurie ; + owl:onProperty dcterms:source ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -3843,81 +3894,81 @@ linkml:ClassDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "class_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:UniqueKey ; - owl:onProperty linkml:unique_keys ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:union_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slots ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:apply_to ], - [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; owl:onProperty linkml:represents_relationship ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:slot_names_unique ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:defining_slots ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:tree_root ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Uriorcurie ; - owl:onProperty rdfs:subClassOf ], + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:mixins ], + owl:allValuesFrom linkml:ClassRule ; + owl:onProperty sh:rule ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:union_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:attributes ], + owl:onProperty linkml:slots ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassRule ; - owl:onProperty sh:rule ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_conditions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:Boolean ; + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:slot_names_unique ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_usage ], + owl:allValuesFrom linkml:UniqueKey ; + owl:onProperty linkml:unique_keys ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:classification_rules ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_conditions ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ClassDefinition ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:attributes ], [ a owl:Restriction ; owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:disjoint_with ], + owl:onProperty linkml:apply_to ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:class_uri ], + owl:onClass linkml:ClassDefinition ; + owl:onProperty linkml:is_a ], linkml:ClassExpression, linkml:Definition ; skos:altLabel "message", @@ -3933,89 +3984,81 @@ linkml:SlotDefinition a owl:Class, rdfs:label "slot_definition" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Definition ; - owl:onProperty linkml:owner ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:has_member ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:list_elements_ordered ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:onProperty linkml:transitive ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:slot_uri ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], + owl:onProperty linkml:has_member ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:role ], + owl:onProperty linkml:readonly ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:ifabsent ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:apply_to ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:String ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:key ], + owl:onProperty linkml:required ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:usage_slot_name ], + owl:onProperty skos:altLabel ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:locally_reflexive ], + owl:onClass linkml:SlotDefinition ; + owl:onProperty rdfs:subPropertyOf ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_cardinality ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onProperty linkml:is_class_field ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:readonly ], + owl:onClass linkml:SlotDefinition ; + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:symmetric ], + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_expression ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; @@ -4023,168 +4066,176 @@ linkml:SlotDefinition a owl:Class, [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:is_grouping_slot ], + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ClassDefinition ; - owl:onProperty linkml:domain ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty linkml:is_a ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:reflexive ], + owl:onClass linkml:Definition ; + owl:onProperty linkml:owner ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:RelationalRoleEnum ; - owl:onProperty linkml:relational_role ], + owl:onClass linkml:Element ; + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:is_usage_slot ], + owl:onClass linkml:String ; + owl:onProperty skos:prefLabel ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:domain_of ], + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:UnitOfMeasure ; + owl:onProperty qudt:unit ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:is_class_field ], + owl:onClass linkml:PresenceEnum ; + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:AnonymousClassExpression ; owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:altLabel ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:SlotDefinition ; owl:onProperty linkml:transitive_form_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], + owl:onProperty linkml:role ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:multivalued ], + owl:onClass linkml:EnumExpression ; + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:transitive ], + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:designates_type ], + owl:onClass linkml:Integer ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PathExpression ; - owl:onProperty linkml:path_rule ], + owl:onClass linkml:String ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:irreflexive ], + owl:onProperty linkml:inlined ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:required ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:union_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:identifier ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty owl:inverseOf ], + owl:onClass linkml:String ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:onClass linkml:SlotDefinition ; + owl:onProperty sh:group ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:disjoint_with ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:EnumExpression ; - owl:onProperty linkml:enum_range ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:identifier ], + owl:onProperty linkml:key ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:ClassDefinition ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:SlotDefinition ; - owl:onProperty rdfs:subPropertyOf ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Element ; - owl:onProperty linkml:range ], + owl:onClass linkml:Uriorcurie ; + owl:onProperty linkml:slot_uri ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:prefLabel ], + owl:onClass linkml:Boolean ; + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:Boolean ; - owl:onProperty linkml:inherited ], + owl:onProperty linkml:recommended ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:list_elements_unique ], + owl:onClass linkml:String ; + owl:onProperty linkml:ifabsent ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:RelationalRoleEnum ; + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; owl:onClass linkml:SlotDefinition ; - owl:onProperty sh:group ], + owl:onProperty owl:inverseOf ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:asymmetric ], + owl:onClass linkml:String ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined ], + owl:onClass linkml:String ; + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:recommended ], + owl:onClass linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:onClass linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_members ], + [ a owl:Restriction ; + owl:maxQualifiedCardinality 1 ; + owl:onClass linkml:PathExpression ; + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousSlotExpression ; owl:onProperty linkml:any_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], linkml:Definition, linkml:SlotExpression ; skos:altLabel "attribute", diff --git a/linkml_model/rdf/meta.model.ttl b/linkml_model/rdf/meta.model.ttl index 448199b3..27072bc4 100644 --- a/linkml_model/rdf/meta.model.ttl +++ b/linkml_model/rdf/meta.model.ttl @@ -3784,13 +3784,13 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; skos:inScheme linkml:units ; skos:mappingRelation qudt:Unit ; linkml:any_of [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:symbol ], - [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:ucum_code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:exact_mappings ], + linkml:slot_conditions linkml:iec61360code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:iec61360code ] ; + linkml:slot_conditions linkml:symbol ], + [ a linkml:AnonymousClassExpression ; + linkml:slot_conditions linkml:exact_mappings ] ; linkml:class_uri qudt:Unit ; linkml:definition_uri linkml:UnitOfMeasure ; linkml:imported_from "linkml:units" ; @@ -4847,7 +4847,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 "2022-07-14T00:57:07"^^xsd:dateTime ; + linkml:generation_date "2022-07-13T17:57:50"^^xsd:dateTime ; linkml:id linkml:meta ; linkml:imports linkml:annotations, linkml:extensions, @@ -4855,38 +4855,38 @@ refer to the official URI for each construct, e.g. linkml:types, linkml:units ; linkml:metamodel_version "1.7.0" ; - linkml:prefixes [ linkml:prefix_prefix "pav" ; - linkml:prefix_reference pav: ], - [ linkml:prefix_prefix "sh" ; - linkml:prefix_reference sh1: ], - [ linkml:prefix_prefix "bibo" ; - linkml:prefix_reference bibo: ], - [ linkml:prefix_prefix "qb" ; + linkml:prefixes [ linkml:prefix_prefix "qb" ; linkml:prefix_reference qb: ], + [ linkml:prefix_prefix "schema" ; + linkml:prefix_reference schema1: ], + [ linkml:prefix_prefix "swrl" ; + linkml:prefix_reference swrl: ], [ linkml:prefix_prefix "skosxl" ; linkml:prefix_reference skosxl: ], + [ linkml:prefix_prefix "oslc" ; + linkml:prefix_reference oslc: ], + [ linkml:prefix_prefix "skos" ; + linkml:prefix_reference skos: ], + [ linkml:prefix_prefix "owl" ; + linkml:prefix_reference owl: ], [ linkml:prefix_prefix "linkml" ; linkml:prefix_reference linkml: ], + [ linkml:prefix_prefix "pav" ; + linkml:prefix_reference pav: ], + [ linkml:prefix_prefix "bibo" ; + linkml:prefix_reference bibo: ], + [ linkml:prefix_prefix "sh" ; + linkml:prefix_reference sh1: ], + [ linkml:prefix_prefix "NCIT" ; + linkml:prefix_reference NCIT: ], [ linkml:prefix_prefix "vann" ; linkml:prefix_reference vann1: ], - [ linkml:prefix_prefix "skos" ; - linkml:prefix_reference skos: ], - [ linkml:prefix_prefix "OIO" ; - linkml:prefix_reference OIO: ], - [ linkml:prefix_prefix "oslc" ; - linkml:prefix_reference oslc: ], - [ linkml:prefix_prefix "swrl" ; - linkml:prefix_reference swrl: ], [ linkml:prefix_prefix "qudt" ; linkml:prefix_reference qudt: ], - [ linkml:prefix_prefix "schema" ; - linkml:prefix_reference schema1: ], + [ linkml:prefix_prefix "OIO" ; + linkml:prefix_reference OIO: ], [ linkml:prefix_prefix "prov" ; - linkml:prefix_reference prov: ], - [ linkml:prefix_prefix "owl" ; - linkml:prefix_reference owl: ], - [ linkml:prefix_prefix "NCIT" ; - linkml:prefix_reference NCIT: ] ; + linkml:prefix_reference prov: ] ; linkml:slots linkml:UnitOfMeasure_exact_mappings, linkml:abstract, linkml:alias, @@ -5133,7 +5133,7 @@ refer to the official URI for each construct, e.g. linkml:values_from, linkml:version ; linkml:source_file "meta.yaml" ; - linkml:source_file_date "2022-07-14T00:55:10"^^xsd:dateTime ; + linkml:source_file_date "2022-07-13T17:52:28"^^xsd:dateTime ; linkml:source_file_size 71464 ; linkml:subsets linkml:basic, linkml:minimal, diff --git a/linkml_model/rdf/meta.ttl b/linkml_model/rdf/meta.ttl index 4954187e..245be952 100644 --- a/linkml_model/rdf/meta.ttl +++ b/linkml_model/rdf/meta.ttl @@ -3788,9 +3788,9 @@ linkml:UnitOfMeasure a linkml:ClassDefinition ; [ a linkml:AnonymousClassExpression ; linkml:slot_conditions linkml:symbol ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:exact_mappings ], + linkml:slot_conditions linkml:ucum_code ], [ a linkml:AnonymousClassExpression ; - linkml:slot_conditions linkml:ucum_code ] ; + linkml:slot_conditions linkml:exact_mappings ] ; linkml:class_uri qudt:Unit ; linkml:definition_uri linkml:UnitOfMeasure ; linkml:imported_from "linkml:units" ; @@ -4847,7 +4847,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 "2022-07-14T00:56:53"^^xsd:dateTime ; + linkml:generation_date "2022-07-13T17:57:34"^^xsd:dateTime ; linkml:id linkml:meta ; linkml:imports linkml:annotations, linkml:extensions, @@ -4855,38 +4855,38 @@ refer to the official URI for each construct, e.g. linkml:types, linkml:units ; linkml:metamodel_version "1.7.0" ; - linkml:prefixes [ linkml:prefix_prefix "owl" ; - linkml:prefix_reference owl: ], - [ linkml:prefix_prefix "vann" ; - linkml:prefix_reference vann1: ], - [ linkml:prefix_prefix "sh" ; - linkml:prefix_reference sh1: ], + linkml:prefixes [ linkml:prefix_prefix "qudt" ; + linkml:prefix_reference qudt: ], [ linkml:prefix_prefix "qb" ; linkml:prefix_reference qb: ], + [ linkml:prefix_prefix "schema" ; + linkml:prefix_reference schema1: ], [ linkml:prefix_prefix "linkml" ; linkml:prefix_reference linkml: ], - [ linkml:prefix_prefix "skos" ; - linkml:prefix_reference skos: ], - [ linkml:prefix_prefix "skosxl" ; - linkml:prefix_reference skosxl: ], - [ linkml:prefix_prefix "OIO" ; - linkml:prefix_reference OIO: ], [ linkml:prefix_prefix "bibo" ; linkml:prefix_reference bibo: ], - [ linkml:prefix_prefix "oslc" ; - linkml:prefix_reference oslc: ], - [ linkml:prefix_prefix "qudt" ; - linkml:prefix_reference qudt: ], + [ linkml:prefix_prefix "sh" ; + linkml:prefix_reference sh1: ], + [ linkml:prefix_prefix "swrl" ; + linkml:prefix_reference swrl: ], [ linkml:prefix_prefix "NCIT" ; linkml:prefix_reference NCIT: ], - [ linkml:prefix_prefix "pav" ; - linkml:prefix_reference pav: ], [ linkml:prefix_prefix "prov" ; linkml:prefix_reference prov: ], - [ linkml:prefix_prefix "schema" ; - linkml:prefix_reference schema1: ], - [ linkml:prefix_prefix "swrl" ; - linkml:prefix_reference swrl: ] ; + [ linkml:prefix_prefix "owl" ; + linkml:prefix_reference owl: ], + [ linkml:prefix_prefix "oslc" ; + linkml:prefix_reference oslc: ], + [ linkml:prefix_prefix "OIO" ; + linkml:prefix_reference OIO: ], + [ linkml:prefix_prefix "skos" ; + linkml:prefix_reference skos: ], + [ linkml:prefix_prefix "skosxl" ; + linkml:prefix_reference skosxl: ], + [ linkml:prefix_prefix "vann" ; + linkml:prefix_reference vann1: ], + [ linkml:prefix_prefix "pav" ; + linkml:prefix_reference pav: ] ; linkml:slots linkml:UnitOfMeasure_exact_mappings, linkml:abstract, linkml:alias, @@ -5133,7 +5133,7 @@ refer to the official URI for each construct, e.g. linkml:values_from, linkml:version ; linkml:source_file "meta.yaml" ; - linkml:source_file_date "2022-07-14T00:55:10"^^xsd:dateTime ; + linkml:source_file_date "2022-07-13T17:52:28"^^xsd:dateTime ; linkml:source_file_size 71464 ; linkml:subsets linkml:basic, linkml:minimal, diff --git a/linkml_model/rdf/types.model.ttl b/linkml_model/rdf/types.model.ttl index 91bd2ab3..38738073 100644 --- a/linkml_model/rdf/types.model.ttl +++ b/linkml_model/rdf/types.model.ttl @@ -6,45 +6,29 @@ linkml:default_prefix "linkml" ; linkml:default_range "string" ; linkml:description "Shared type definitions for the core LinkML mode and metamodel" ; - linkml:generation_date "2022-07-14T00:57:00" ; + linkml:generation_date "2022-07-13T17:57:45" ; linkml:id "https://w3id.org/linkml/types" ; linkml:license "https://creativecommons.org/publicdomain/zero/1.0/" ; linkml:metamodel_version "1.7.0" ; linkml:name "types" ; linkml:prefixes [ linkml:prefix_prefix "linkml" ; linkml:prefix_reference "https://w3id.org/linkml/" ], - [ linkml:prefix_prefix "shex" ; - linkml:prefix_reference "http://www.w3.org/ns/shex#" ], [ linkml:prefix_prefix "xsd" ; - linkml:prefix_reference "http://www.w3.org/2001/XMLSchema#" ] ; + linkml:prefix_reference "http://www.w3.org/2001/XMLSchema#" ], + [ linkml:prefix_prefix "shex" ; + linkml:prefix_reference "http://www.w3.org/ns/shex#" ] ; linkml:source_file "types.yaml" ; - linkml:source_file_date "2022-07-14T00:55:10" ; + linkml:source_file_date "2022-06-27T20:36:40" ; linkml:source_file_size 2848 ; linkml:title "Core LinkML metamodel types" ; linkml:types [ a linkml:TypeDefinition ; - linkml:base "float" ; - linkml:definition_uri "https://w3id.org/linkml/Float" ; - linkml:description "A real number that conforms to the xsd:float specification" ; - linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "float" ; - linkml:uri "http://www.w3.org/2001/XMLSchema#float" ], - [ a linkml:TypeDefinition ; - linkml:base "Bool" ; - linkml:definition_uri "https://w3id.org/linkml/Boolean" ; - linkml:description "A binary (true or false) value" ; - linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "boolean" ; - linkml:repr "bool" ; - linkml:uri "http://www.w3.org/2001/XMLSchema#boolean" ], - [ a linkml:TypeDefinition ; - linkml:base "ElementIdentifier" ; - linkml:comments "Used for inheritence and type checking" ; - linkml:definition_uri "https://w3id.org/linkml/Objectidentifier" ; - linkml:description "A URI or CURIE that represents an object in the model." ; + linkml:base "NodeIdentifier" ; + linkml:definition_uri "https://w3id.org/linkml/Nodeidentifier" ; + linkml:description "A URI, CURIE or BNODE that represents a node in a model." ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "objectidentifier" ; + linkml:name "nodeidentifier" ; linkml:repr "str" ; - linkml:uri "http://www.w3.org/ns/shex#iri" ], + linkml:uri "http://www.w3.org/ns/shex#nonLiteral" ], [ a linkml:TypeDefinition ; linkml:base "XSDTime" ; linkml:definition_uri "https://w3id.org/linkml/Time" ; @@ -55,26 +39,26 @@ linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#dateTime" ], [ a linkml:TypeDefinition ; - linkml:base "Decimal" ; - linkml:definition_uri "https://w3id.org/linkml/Decimal" ; - linkml:description "A real number with arbitrary precision that conforms to the xsd:decimal specification" ; + linkml:base "Bool" ; + linkml:definition_uri "https://w3id.org/linkml/Boolean" ; + linkml:description "A binary (true or false) value" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "decimal" ; - linkml:uri "http://www.w3.org/2001/XMLSchema#decimal" ], + linkml:name "boolean" ; + linkml:repr "bool" ; + linkml:uri "http://www.w3.org/2001/XMLSchema#boolean" ], [ a linkml:TypeDefinition ; linkml:base "str" ; - linkml:definition_uri "https://w3id.org/linkml/DateOrDatetime" ; - linkml:description "Either a date or a datetime" ; + linkml:definition_uri "https://w3id.org/linkml/String" ; + linkml:description "A character string" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "date_or_datetime" ; - linkml:repr "str" ; - linkml:uri "https://w3id.org/linkml/DateOrDatetime" ], + linkml:name "string" ; + linkml:uri "http://www.w3.org/2001/XMLSchema#string" ], [ a linkml:TypeDefinition ; - linkml:base "URIorCURIE" ; - linkml:definition_uri "https://w3id.org/linkml/Uriorcurie" ; - linkml:description "a URI or a CURIE" ; + linkml:base "URI" ; + linkml:definition_uri "https://w3id.org/linkml/Uri" ; + linkml:description "a complete URI" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "uriorcurie" ; + linkml:name "uri" ; linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#anyURI" ], [ a linkml:TypeDefinition ; @@ -87,13 +71,20 @@ linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#date" ], [ a linkml:TypeDefinition ; - linkml:base "NodeIdentifier" ; - linkml:definition_uri "https://w3id.org/linkml/Nodeidentifier" ; - linkml:description "A URI, CURIE or BNODE that represents a node in a model." ; + linkml:base "NCName" ; + linkml:definition_uri "https://w3id.org/linkml/Ncname" ; + linkml:description "Prefix part of CURIE" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "nodeidentifier" ; + linkml:name "ncname" ; linkml:repr "str" ; - linkml:uri "http://www.w3.org/ns/shex#nonLiteral" ], + linkml:uri "http://www.w3.org/2001/XMLSchema#string" ], + [ a linkml:TypeDefinition ; + linkml:base "float" ; + linkml:definition_uri "https://w3id.org/linkml/Float" ; + linkml:description "A real number that conforms to the xsd:float specification" ; + linkml:from_schema "https://w3id.org/linkml/types" ; + linkml:name "float" ; + linkml:uri "http://www.w3.org/2001/XMLSchema#float" ], [ a linkml:TypeDefinition ; linkml:base "XSDDateTime" ; linkml:definition_uri "https://w3id.org/linkml/Datetime" ; @@ -103,27 +94,29 @@ linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#dateTime" ], [ a linkml:TypeDefinition ; - linkml:base "NCName" ; - linkml:definition_uri "https://w3id.org/linkml/Ncname" ; - linkml:description "Prefix part of CURIE" ; + linkml:base "Decimal" ; + linkml:definition_uri "https://w3id.org/linkml/Decimal" ; + linkml:description "A real number with arbitrary precision that conforms to the xsd:decimal specification" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "ncname" ; - linkml:repr "str" ; - linkml:uri "http://www.w3.org/2001/XMLSchema#string" ], + linkml:name "decimal" ; + linkml:uri "http://www.w3.org/2001/XMLSchema#decimal" ], [ a linkml:TypeDefinition ; - linkml:base "float" ; - linkml:definition_uri "https://w3id.org/linkml/Double" ; - linkml:description "A real number that conforms to the xsd:double specification" ; + linkml:base "ElementIdentifier" ; + linkml:comments "Used for inheritence and type checking" ; + linkml:definition_uri "https://w3id.org/linkml/Objectidentifier" ; + linkml:description "A URI or CURIE that represents an object in the model." ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "double" ; - linkml:uri "http://www.w3.org/2001/XMLSchema#double" ], + linkml:name "objectidentifier" ; + linkml:repr "str" ; + linkml:uri "http://www.w3.org/ns/shex#iri" ], [ a linkml:TypeDefinition ; linkml:base "str" ; - linkml:definition_uri "https://w3id.org/linkml/String" ; - linkml:description "A character string" ; + linkml:definition_uri "https://w3id.org/linkml/DateOrDatetime" ; + linkml:description "Either a date or a datetime" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "string" ; - linkml:uri "http://www.w3.org/2001/XMLSchema#string" ], + linkml:name "date_or_datetime" ; + linkml:repr "str" ; + linkml:uri "https://w3id.org/linkml/DateOrDatetime" ], [ a linkml:TypeDefinition ; linkml:base "int" ; linkml:definition_uri "https://w3id.org/linkml/Integer" ; @@ -132,11 +125,18 @@ linkml:name "integer" ; linkml:uri "http://www.w3.org/2001/XMLSchema#integer" ], [ a linkml:TypeDefinition ; - linkml:base "URI" ; - linkml:definition_uri "https://w3id.org/linkml/Uri" ; - linkml:description "a complete URI" ; + linkml:base "float" ; + linkml:definition_uri "https://w3id.org/linkml/Double" ; + linkml:description "A real number that conforms to the xsd:double specification" ; linkml:from_schema "https://w3id.org/linkml/types" ; - linkml:name "uri" ; + linkml:name "double" ; + linkml:uri "http://www.w3.org/2001/XMLSchema#double" ], + [ a linkml:TypeDefinition ; + linkml:base "URIorCURIE" ; + linkml:definition_uri "https://w3id.org/linkml/Uriorcurie" ; + linkml:description "a URI or a CURIE" ; + linkml:from_schema "https://w3id.org/linkml/types" ; + linkml:name "uriorcurie" ; linkml:repr "str" ; linkml:uri "http://www.w3.org/2001/XMLSchema#anyURI" ] ; linkml:version "2.0.0" . diff --git a/linkml_model/shex/annotations.shex b/linkml_model/shex/annotations.shex index fcc6c8a3..c0c80772 100644 --- a/linkml_model/shex/annotations.shex +++ b/linkml_model/shex/annotations.shex @@ -23,6 +23,8 @@ PREFIX xsd: xsd:dateTime + + IRI IRI diff --git a/linkml_model/shex/annotations.shexj b/linkml_model/shex/annotations.shexj index 15fa872e..c38dffdc 100644 --- a/linkml_model/shex/annotations.shexj +++ b/linkml_model/shex/annotations.shexj @@ -54,6 +54,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", diff --git a/linkml_model/shex/datasets.shex b/linkml_model/shex/datasets.shex index 86c624d3..c1b42f76 100644 --- a/linkml_model/shex/datasets.shex +++ b/linkml_model/shex/datasets.shex @@ -30,6 +30,8 @@ linkml:Date xsd:date linkml:Datetime xsd:dateTime +linkml:DateOrDatetime linkml:DateOrDatetime + linkml:Uriorcurie IRI linkml:Uri IRI diff --git a/linkml_model/shex/datasets.shexj b/linkml_model/shex/datasets.shexj index 1b8be37e..400721aa 100644 --- a/linkml_model/shex/datasets.shexj +++ b/linkml_model/shex/datasets.shexj @@ -53,6 +53,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", diff --git a/linkml_model/shex/extensions.shex b/linkml_model/shex/extensions.shex index 90306175..302d124f 100644 --- a/linkml_model/shex/extensions.shex +++ b/linkml_model/shex/extensions.shex @@ -23,6 +23,8 @@ PREFIX xsd: xsd:dateTime + + IRI IRI diff --git a/linkml_model/shex/extensions.shexj b/linkml_model/shex/extensions.shexj index c96e3e15..978472a3 100644 --- a/linkml_model/shex/extensions.shexj +++ b/linkml_model/shex/extensions.shexj @@ -54,6 +54,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", diff --git a/linkml_model/shex/mappings.shexj b/linkml_model/shex/mappings.shexj index 1452033a..1d13e3b9 100644 --- a/linkml_model/shex/mappings.shexj +++ b/linkml_model/shex/mappings.shexj @@ -54,6 +54,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", diff --git a/linkml_model/shex/meta.shex b/linkml_model/shex/meta.shex index 0827f8f4..18c398c3 100644 --- a/linkml_model/shex/meta.shex +++ b/linkml_model/shex/meta.shex @@ -9,7 +9,7 @@ PREFIX pav: PREFIX oslc: PREFIX schema: PREFIX bibo: -PREFIX sh: +PREFIX sh: PREFIX qudt: PREFIX dcterms: PREFIX oboInOwl: @@ -206,6 +206,12 @@ PREFIX oboInOwl: ) } + CLOSED { + ( $ rdf:type . * ; + rdf:type [ ] ? + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? ; @@ -215,7 +221,7 @@ PREFIX oboInOwl: @ * ; @ * ; @ ? ; - rdfs:subClassOf @ ? ; + @ ? ; @ * ; @ * ; @ ? ; @@ -373,6 +379,7 @@ PREFIX oboInOwl: @ ? ; @ * ; dcterms:conformsTo @ ? ; + @ * ; @ * ; @ * ; skos:definition @ ? ; @@ -448,7 +455,8 @@ PREFIX oboInOwl: CLOSED { ( $ ( skos:example @ ? ; - @ ? + @ ? ; + @ ? ) ; rdf:type [ ] ? ) diff --git a/linkml_model/shex/meta.shexj b/linkml_model/shex/meta.shexj index 8d67bb43..32c61ee6 100644 --- a/linkml_model/shex/meta.shexj +++ b/linkml_model/shex/meta.shexj @@ -54,6 +54,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", @@ -293,6 +298,122 @@ ] } }, + { + "type": "Shape", + "id": "https://w3id.org/linkml/AnonymousEnumExpression", + "closed": true, + "expression": { + "type": "EachOf", + "expressions": [ + { + "type": "EachOf", + "id": "https://w3id.org/linkml/AnonymousEnumExpression_tes", + "expressions": [ + "https://w3id.org/linkml/EnumExpression_tes", + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/EnumExpression" + ] + }, + "min": 0 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/code_set", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/code_set_tag", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/code_set_version", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/pv_formula", + "valueExpr": "https://w3id.org/linkml/PvFormulaOptions", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/permissible_values", + "valueExpr": "https://w3id.org/linkml/PermissibleValue", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/include", + "valueExpr": "https://w3id.org/linkml/AnonymousEnumExpression", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/minus", + "valueExpr": "https://w3id.org/linkml/AnonymousEnumExpression", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/inherits", + "valueExpr": "https://w3id.org/linkml/EnumDefinition", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/reachable_from", + "valueExpr": "https://w3id.org/linkml/ReachabilityQuery", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/matches", + "valueExpr": "https://w3id.org/linkml/MatchQuery", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/concepts", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": -1 + } + ] + }, + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/AnonymousEnumExpression" + ] + }, + "min": 0 + } + ] + } + }, { "type": "ShapeOr", "id": "https://w3id.org/linkml/AnonymousExpression", @@ -614,6 +735,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/enum_range", + "valueExpr": "https://w3id.org/linkml/EnumExpression", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/required", @@ -670,6 +798,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/implicit_prefix", @@ -814,6 +949,20 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/implicit_prefix", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/equals_string", @@ -1707,6 +1856,7 @@ "id": "https://w3id.org/linkml/Definition", "shapeExprs": [ "https://w3id.org/linkml/ClassDefinition", + "https://w3id.org/linkml/EnumDefinition", "https://w3id.org/linkml/SlotDefinition" ] }, @@ -1831,7 +1981,6 @@ "id": "https://w3id.org/linkml/Element", "shapeExprs": [ "https://w3id.org/linkml/Definition", - "https://w3id.org/linkml/EnumDefinition", "https://w3id.org/linkml/SchemaDefinition", "https://w3id.org/linkml/SubsetDefinition", "https://w3id.org/linkml/TypeDefinition" @@ -2128,18 +2277,37 @@ "type": "EachOf", "id": "https://w3id.org/linkml/EnumDefinition_tes", "expressions": [ - "https://w3id.org/linkml/Element_tes", + "https://w3id.org/linkml/Definition_tes", { "type": "TripleConstraint", "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "valueExpr": { "type": "NodeConstraint", "values": [ - "https://w3id.org/linkml/Element" + "https://w3id.org/linkml/Definition" + ] + }, + "min": 0 + }, + "https://w3id.org/linkml/EnumExpression_tes", + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/EnumExpression" ] }, "min": 0 }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/enum_uri", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/code_set", @@ -2174,6 +2342,48 @@ "valueExpr": "https://w3id.org/linkml/PermissibleValue", "min": 0, "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/include", + "valueExpr": "https://w3id.org/linkml/AnonymousEnumExpression", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/minus", + "valueExpr": "https://w3id.org/linkml/AnonymousEnumExpression", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/inherits", + "valueExpr": "https://w3id.org/linkml/EnumDefinition", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/reachable_from", + "valueExpr": "https://w3id.org/linkml/ReachabilityQuery", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/matches", + "valueExpr": "https://w3id.org/linkml/MatchQuery", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/concepts", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": -1 } ] }, @@ -2191,6 +2401,122 @@ ] } }, + { + "type": "Shape", + "id": "https://w3id.org/linkml/EnumExpression", + "closed": true, + "expression": { + "type": "EachOf", + "expressions": [ + { + "type": "EachOf", + "id": "https://w3id.org/linkml/EnumExpression_tes", + "expressions": [ + "https://w3id.org/linkml/Expression_tes", + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/Expression" + ] + }, + "min": 0 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/code_set", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/code_set_tag", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/code_set_version", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/pv_formula", + "valueExpr": "https://w3id.org/linkml/PvFormulaOptions", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/permissible_values", + "valueExpr": "https://w3id.org/linkml/PermissibleValue", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/include", + "valueExpr": "https://w3id.org/linkml/AnonymousEnumExpression", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/minus", + "valueExpr": "https://w3id.org/linkml/AnonymousEnumExpression", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/inherits", + "valueExpr": "https://w3id.org/linkml/EnumDefinition", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/reachable_from", + "valueExpr": "https://w3id.org/linkml/ReachabilityQuery", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/matches", + "valueExpr": "https://w3id.org/linkml/MatchQuery", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/concepts", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": -1 + } + ] + }, + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/EnumExpression" + ] + }, + "min": 0 + } + ] + } + }, { "type": "Shape", "id": "https://w3id.org/linkml/Example", @@ -2236,6 +2562,7 @@ "type": "ShapeOr", "id": "https://w3id.org/linkml/Expression", "shapeExprs": [ + "https://w3id.org/linkml/EnumExpression", "https://w3id.org/linkml/SlotExpression", "https://w3id.org/linkml/TypeExpression" ] @@ -2665,6 +2992,47 @@ ] } }, + { + "type": "Shape", + "id": "https://w3id.org/linkml/MatchQuery", + "closed": true, + "expression": { + "type": "EachOf", + "expressions": [ + { + "type": "EachOf", + "id": "https://w3id.org/linkml/MatchQuery_tes", + "expressions": [ + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/identifier_pattern", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/source_ontology", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": 1 + } + ] + }, + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/MatchQuery" + ] + }, + "min": 0 + } + ] + } + }, { "type": "Shape", "id": "https://w3id.org/linkml/PathExpression", @@ -3319,6 +3687,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/mixins", @@ -3565,6 +3940,75 @@ ] } }, + { + "type": "Shape", + "id": "https://w3id.org/linkml/ReachabilityQuery", + "closed": true, + "expression": { + "type": "EachOf", + "expressions": [ + { + "type": "EachOf", + "id": "https://w3id.org/linkml/ReachabilityQuery_tes", + "expressions": [ + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/source_ontology", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/source_nodes", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/relationship_types", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/is_direct", + "valueExpr": "https://w3id.org/linkml/Boolean", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/include_self", + "valueExpr": "https://w3id.org/linkml/Boolean", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/traverse_up", + "valueExpr": "https://w3id.org/linkml/Boolean", + "min": 0, + "max": 1 + } + ] + }, + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "https://w3id.org/linkml/ReachabilityQuery" + ] + }, + "min": 0 + } + ] + } + }, { "type": "Shape", "id": "https://w3id.org/linkml/SchemaDefinition", @@ -4093,6 +4537,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/union_of", + "valueExpr": "https://w3id.org/linkml/TypeDefinition", + "min": 0, + "max": -1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/mixins", @@ -4121,6 +4572,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/enum_range", + "valueExpr": "https://w3id.org/linkml/EnumExpression", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/required", @@ -4177,6 +4635,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/implicit_prefix", @@ -4321,6 +4786,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/enum_range", + "valueExpr": "https://w3id.org/linkml/EnumExpression", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/required", @@ -4377,6 +4849,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/implicit_prefix", @@ -4871,6 +5350,13 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/union_of", + "valueExpr": "https://w3id.org/linkml/TypeDefinition", + "min": 0, + "max": -1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/pattern", @@ -4885,6 +5371,20 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/implicit_prefix", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/equals_string", @@ -5001,6 +5501,20 @@ "min": 0, "max": 1 }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/unit", + "valueExpr": "https://w3id.org/linkml/UnitOfMeasure", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/implicit_prefix", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, { "type": "TripleConstraint", "predicate": "https://w3id.org/linkml/equals_string", @@ -5345,6 +5859,75 @@ } ] } + }, + { + "type": "Shape", + "id": "https://w3id.org/linkml/UnitOfMeasure", + "closed": true, + "expression": { + "type": "EachOf", + "expressions": [ + { + "type": "EachOf", + "id": "https://w3id.org/linkml/UnitOfMeasure_tes", + "expressions": [ + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/symbol", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/2004/02/skos/core#exactMatch", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": -1 + }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/ucumCode", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "https://w3id.org/linkml/derivation", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/hasQuantityKind", + "valueExpr": "https://w3id.org/linkml/Uriorcurie", + "min": 0, + "max": 1 + }, + { + "type": "TripleConstraint", + "predicate": "http://qudt.org/schema/qudt/iec61360Code", + "valueExpr": "https://w3id.org/linkml/String", + "min": 0, + "max": 1 + } + ] + }, + { + "type": "TripleConstraint", + "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "valueExpr": { + "type": "NodeConstraint", + "values": [ + "http://qudt.org/schema/qudt/Unit" + ] + }, + "min": 0 + } + ] + } } ] } diff --git a/linkml_model/shex/types.shex b/linkml_model/shex/types.shex index e0a49039..42bb4d99 100644 --- a/linkml_model/shex/types.shex +++ b/linkml_model/shex/types.shex @@ -22,6 +22,8 @@ PREFIX xsd: xsd:dateTime + + IRI IRI diff --git a/linkml_model/shex/types.shexj b/linkml_model/shex/types.shexj index 1452033a..1d13e3b9 100644 --- a/linkml_model/shex/types.shexj +++ b/linkml_model/shex/types.shexj @@ -54,6 +54,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", diff --git a/linkml_model/shex/validation.shex b/linkml_model/shex/validation.shex index cc5f131e..d7a5d0e5 100644 --- a/linkml_model/shex/validation.shex +++ b/linkml_model/shex/validation.shex @@ -25,6 +25,8 @@ linkml:Date xsd:date linkml:Datetime xsd:dateTime +linkml:DateOrDatetime linkml:DateOrDatetime + linkml:Uriorcurie IRI linkml:Uri IRI @@ -49,7 +51,7 @@ reporting:ValidationResult CLOSED { reporting:predicate @linkml:Nodeidentifier ? ; sh1:value @linkml:Nodeidentifier ? ; reporting:object_str @linkml:String ? ; - reporting:source @linkml:Nodeidentifier ? ; + reporting:node_source @linkml:Nodeidentifier ? ; reporting:info @linkml:String ? ) ; rdf:type [ sh1:ValidationResult ] ? diff --git a/linkml_model/shex/validation.shexj b/linkml_model/shex/validation.shexj index dfb70844..7fbbf7c8 100644 --- a/linkml_model/shex/validation.shexj +++ b/linkml_model/shex/validation.shexj @@ -53,6 +53,11 @@ "id": "https://w3id.org/linkml/Datetime", "datatype": "http://www.w3.org/2001/XMLSchema#dateTime" }, + { + "type": "NodeConstraint", + "id": "https://w3id.org/linkml/DateOrDatetime", + "datatype": "https://w3id.org/linkml/DateOrDatetime" + }, { "type": "NodeConstraint", "id": "https://w3id.org/linkml/Uriorcurie", @@ -169,7 +174,7 @@ }, { "type": "TripleConstraint", - "predicate": "https://w3id.org/linkml/reportsource", + "predicate": "https://w3id.org/linkml/reportnode_source", "valueExpr": "https://w3id.org/linkml/Nodeidentifier", "min": 0, "max": 1 diff --git a/linkml_model/sqlddl/meta.sql b/linkml_model/sqlddl/meta.sql index a96c43c5..a349e9df 100644 --- a/linkml_model/sqlddl/meta.sql +++ b/linkml_model/sqlddl/meta.sql @@ -52,25 +52,30 @@ -- # Class: "type_expression" Description: "" -- * Slot: id Description: -- * Slot: pattern Description: the string value of the slot must conform to this regular expression expressed in the string +-- * Slot: implicit_prefix Description: Causes the slot value to be interpreted as a uriorcurie after prefixing with this string -- * Slot: equals_string Description: the slot must have range string and the value of the slot must equal the specified value -- * Slot: equals_number Description: the slot must have range of a number and the value of the slot must equal the specified value -- * Slot: minimum_value Description: for slots with ranges of type number, the value must be equal to or higher than this -- * Slot: maximum_value Description: for slots with ranges of type number, the value must be equal to or lowe than this -- * Slot: structured_pattern_id Description: the string value of the slot must conform to the regular expression in the pattern expression +-- * Slot: unit_id Description: an encoding of a unit -- # Class: "anonymous_type_expression" Description: "" -- * Slot: id Description: -- * Slot: pattern Description: the string value of the slot must conform to this regular expression expressed in the string +-- * Slot: implicit_prefix Description: Causes the slot value to be interpreted as a uriorcurie after prefixing with this string -- * Slot: equals_string Description: the slot must have range string and the value of the slot must equal the specified value -- * Slot: equals_number Description: the slot must have range of a number and the value of the slot must equal the specified value -- * Slot: minimum_value Description: for slots with ranges of type number, the value must be equal to or higher than this -- * Slot: maximum_value Description: for slots with ranges of type number, the value must be equal to or lowe than this -- * Slot: structured_pattern_id Description: the string value of the slot must conform to the regular expression in the pattern expression +-- * Slot: unit_id Description: an encoding of a unit -- # Class: "type_definition" Description: "A data type definition." -- * Slot: typeof Description: Names a parent type -- * Slot: base Description: python base type that implements this type definition -- * Slot: uri Description: The uri that defines the possible values for the type definition -- * Slot: repr Description: the name of the python object that implements this type definition -- * Slot: pattern Description: the string value of the slot must conform to this regular expression expressed in the string +-- * Slot: implicit_prefix Description: Causes the slot value to be interpreted as a uriorcurie after prefixing with this string -- * Slot: equals_string Description: the slot must have range string and the value of the slot must equal the specified value -- * Slot: equals_number Description: the slot must have range of a number and the value of the slot must equal the specified value -- * Slot: minimum_value Description: for slots with ranges of type number, the value must be equal to or higher than this @@ -90,6 +95,7 @@ -- * Slot: rank Description: the relative order in which the element occurs, lower values are given precedence -- * Slot: schema_definition_name Description: Autocreated FK slot -- * Slot: structured_pattern_id Description: the string value of the slot must conform to the regular expression in the pattern expression +-- * Slot: unit_id Description: an encoding of a unit -- # Class: "subset_definition" Description: "the name and description of a subset" -- * Slot: name 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. -- * Slot: definition_uri Description: the "native" URI of the element @@ -128,11 +134,37 @@ -- * Slot: deprecated_element_has_exact_replacement Description: When an element is deprecated, it can be automatically replaced by this uri or curie -- * Slot: deprecated_element_has_possible_replacement Description: When an element is deprecated, it can be potentially replaced by this uri or curie -- * Slot: rank Description: the relative order in which the element occurs, lower values are given precedence +-- # Class: "enum_expression" Description: "An expression that constrains the range of a slot" +-- * Slot: id Description: +-- * Slot: code_set Description: the identifier of an enumeration code set. +-- * 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: 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" +-- * Slot: id Description: +-- * Slot: code_set Description: the identifier of an enumeration code set. +-- * 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: 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: "List of values that constrain the range of a slot" +-- * Slot: enum_uri Description: URI of the enum in an RDF environment -- * Slot: code_set Description: the identifier of an enumeration code set. -- * 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_a Description: specifies single-inheritance between classes or slots. 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: an abstract class is a high level class or slot that is typically used to group common slots together and cannot be directly instantiated. +-- * Slot: mixin Description: this slot or class can only be used as a mixin. +-- * Slot: created_by Description: agent that created the element +-- * Slot: created_on Description: time at which the element was created +-- * Slot: last_updated_on Description: time at which the element was last updated +-- * Slot: modified_by Description: agent that modified the element +-- * Slot: status Description: status of the element +-- * Slot: string_serialization 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) GENERARE: implement automated to_string labeling of complex objectsFor 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 -- * Slot: name 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. -- * Slot: definition_uri Description: the "native" URI of the element -- * Slot: conforms_to Description: An established standard to which the element conforms. @@ -147,6 +179,18 @@ -- * Slot: deprecated_element_has_possible_replacement Description: When an element is deprecated, it can be potentially replaced by this uri or curie -- * Slot: rank Description: the relative order in which the element occurs, lower values are given precedence -- * Slot: schema_definition_name Description: Autocreated FK slot +-- * 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: "match_query" Description: "A query that is used on an enum expression to dynamically obtain a set of permissivle values via a query that matches on properties of the external concepts" +-- * Slot: id Description: +-- * Slot: identifier_pattern Description: A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values +-- * Slot: source_ontology Description: An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values +-- # Class: "reachability_query" Description: "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" +-- * Slot: id Description: +-- * Slot: source_ontology Description: An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values +-- * Slot: is_direct Description: True if the reachability query should only include directly related nodes, if False then include also transitively connected +-- * Slot: include_self Description: True if the query is reflexive +-- * Slot: traverse_up Description: True if the direction of the reachability query is reversed and ancestors are retrieved -- # Class: "structured_alias" Description: "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" -- * Slot: id Description: -- * Slot: literal_form Description: The literal lexical form of a structured alias @@ -227,7 +271,9 @@ -- * Slot: minimum_cardinality Description: the minimum number of entries for a multivalued slot -- * Slot: maximum_cardinality Description: the maximum number of entries for a multivalued slot -- * Slot: range_expression_id Description: A range that is described as a boolean expression combining existing ranges +-- * Slot: enum_range_id Description: An inlined enumeration -- * Slot: structured_pattern_id Description: the string value of the slot must conform to the regular expression in the pattern expression +-- * Slot: unit_id Description: an encoding of a unit -- * Slot: has_member_id Description: the values of the slot is multivalued with at least one member satisfying the condition -- # Class: "anonymous_slot_expression" Description: "" -- * Slot: id Description: @@ -256,7 +302,9 @@ -- * Slot: deprecated_element_has_possible_replacement Description: When an element is deprecated, it can be potentially replaced by this uri or curie -- * Slot: rank Description: the relative order in which the element occurs, lower values are given precedence -- * Slot: range_expression_id Description: A range that is described as a boolean expression combining existing ranges +-- * Slot: enum_range_id Description: An inlined enumeration -- * Slot: structured_pattern_id Description: the string value of the slot must conform to the regular expression in the pattern expression +-- * Slot: unit_id Description: an encoding of a unit -- * Slot: has_member_id Description: the values of the slot is multivalued with at least one member satisfying the condition -- # Class: "slot_definition" Description: "the definition of a property or a slot" -- * Slot: singular_name Description: a name that is used in the singular form @@ -274,7 +322,7 @@ -- * 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 --- * Slot: subproperty_of Description: Ontology property which this slot is a subproperty of +-- * Slot: subproperty_of 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 hiearchy into an enumerated list of possible values in every serialization of the model. -- * Slot: symmetric Description: If s is symmetric, and i.s=v, then v.s=i -- * Slot: reflexive Description: If s is reflexive, then i.s=i for all instances i -- * Slot: locally_reflexive Description: If s is locally_reflexive, then i.s=i for all instances i where s if a class slot for the type of i @@ -337,7 +385,9 @@ -- * Slot: class_definition_name Description: Autocreated FK slot -- * Slot: path_rule_id Description: a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignemnts -- * Slot: range_expression_id Description: A range that is described as a boolean expression combining existing ranges +-- * Slot: enum_range_id Description: An inlined enumeration -- * Slot: structured_pattern_id Description: the string value of the slot must conform to the regular expression in the pattern expression +-- * Slot: unit_id Description: an encoding of a unit -- * Slot: has_member_id Description: the values of the slot is multivalued with at least one member satisfying the condition -- # Class: "class_expression" Description: "A boolean expression that can be used to dynamically determine membership of a class" -- * Slot: id Description: @@ -513,7 +563,10 @@ -- * Slot: deprecated_element_has_exact_replacement Description: When an element is deprecated, it can be automatically replaced by this uri or curie -- * Slot: deprecated_element_has_possible_replacement Description: When an element is deprecated, it can be potentially replaced by this uri or curie -- * Slot: rank Description: the relative order in which the element occurs, lower values are given precedence +-- * Slot: enum_expression_id Description: Autocreated FK slot +-- * Slot: anonymous_enum_expression_id Description: Autocreated FK slot -- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: unit_id Description: an encoding of a unit -- # Class: "unique_key" Description: "a collection of slots whose values uniquely identify an instance of a class" -- * Slot: unique_key_name Description: name of the unique key -- * Slot: description Description: a description of the element's purpose and use @@ -527,6 +580,13 @@ -- * Slot: deprecated_element_has_possible_replacement Description: When an element is deprecated, it can be potentially replaced by this uri or curie -- * Slot: rank Description: the relative order in which the element occurs, lower values are given precedence -- * Slot: class_definition_name Description: Autocreated FK slot +-- # 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 Description: +-- * Slot: symbol Description: name of the unit encoded as a symbol +-- * 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 +-- * Slot: has_quantity_kind Description: Concept in a vocabulary or ontology that denotes the kind of quanity being measured, e.g. length +-- * Slot: iec61360code Description: -- # Class: "annotatable" Description: "mixin for classes that support annotations" -- * Slot: id Description: -- # Class: "annotation" Description: "a tag/value pair with the semantics of OWL Annotation" @@ -737,6 +797,9 @@ -- # Class: "anonymous_type_expression_all_of" Description: "" -- * Slot: anonymous_type_expression_id Description: Autocreated FK slot -- * Slot: all_of_id Description: holds if all of the expressions hold +-- # Class: "type_definition_union_of" Description: "" +-- * Slot: type_definition_name Description: Autocreated FK slot +-- * Slot: union_of Description: indicates that the domain element consists exactly of the members of the element in the range. -- # Class: "type_definition_equals_string_in" Description: "" -- * Slot: type_definition_name Description: Autocreated FK slot -- * Slot: equals_string_in Description: the slot must have range string and the value of the slot must equal one of the specified values @@ -838,7 +901,7 @@ -- * Slot: apply_to 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. -- # Class: "definition_values_from" Description: "" -- * Slot: definition_name Description: Autocreated FK slot --- * Slot: values_from Description: the identifier of a "value set" -- a set of identifiers that form the possible values for the range of a slot +-- * Slot: values_from 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 hiearchy into an enumerated list of possible values in every serialization of the model. -- # Class: "definition_id_prefixes" Description: "" -- * Slot: definition_name Description: Autocreated FK slot -- * Slot: id_prefixes Description: the identifier of this class or slot must begin with the URIs referenced by this prefix @@ -878,6 +941,51 @@ -- # Class: "definition_broad_mappings" Description: "" -- * Slot: definition_name Description: Autocreated FK slot -- * Slot: broad_mappings Description: A list of terms from different schemas or terminology systems that have broader meaning. +-- # Class: "enum_expression_include" Description: "" +-- * Slot: enum_expression_id Description: Autocreated FK slot +-- * Slot: include_id Description: An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set +-- # Class: "enum_expression_minus" Description: "" +-- * Slot: enum_expression_id Description: Autocreated FK slot +-- * Slot: minus_id Description: An enum expression that yields a list of permissible values that are to be subtracted from the enum +-- # Class: "enum_expression_inherits" Description: "" +-- * Slot: enum_expression_id Description: Autocreated FK slot +-- * Slot: inherits Description: An enum definition that is used as the basis to create a new enum +-- # Class: "enum_expression_concepts" Description: "" +-- * Slot: enum_expression_id Description: Autocreated FK slot +-- * Slot: concepts Description: A list of identifiers that are used to construct a set of permissible values +-- # Class: "anonymous_enum_expression_include" Description: "" +-- * Slot: anonymous_enum_expression_id Description: Autocreated FK slot +-- * Slot: include_id Description: An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set +-- # Class: "anonymous_enum_expression_minus" Description: "" +-- * Slot: anonymous_enum_expression_id Description: Autocreated FK slot +-- * Slot: minus_id Description: An enum expression that yields a list of permissible values that are to be subtracted from the enum +-- # Class: "anonymous_enum_expression_inherits" Description: "" +-- * Slot: anonymous_enum_expression_id Description: Autocreated FK slot +-- * Slot: inherits Description: An enum definition that is used as the basis to create a new enum +-- # Class: "anonymous_enum_expression_concepts" Description: "" +-- * Slot: anonymous_enum_expression_id Description: Autocreated FK slot +-- * Slot: concepts Description: A list of identifiers that are used to construct a set of permissible values +-- # Class: "enum_definition_include" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: include_id Description: An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set +-- # Class: "enum_definition_minus" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: minus_id Description: An enum expression that yields a list of permissible values that are to be subtracted from the enum +-- # Class: "enum_definition_inherits" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: inherits Description: An enum definition that is used as the basis to create a new enum +-- # Class: "enum_definition_concepts" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: concepts Description: A list of identifiers that are used to construct a set of permissible values +-- # Class: "enum_definition_mixins" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: mixins Description: List of definitions to be mixed in. Targets may be any definition of the same type +-- # Class: "enum_definition_apply_to" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: apply_to 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. +-- # Class: "enum_definition_values_from" Description: "" +-- * Slot: enum_definition_name Description: Autocreated FK slot +-- * Slot: values_from 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 hiearchy into an enumerated list of possible values in every serialization of the model. -- # Class: "enum_definition_id_prefixes" Description: "" -- * Slot: enum_definition_name Description: Autocreated FK slot -- * Slot: id_prefixes Description: the identifier of this class or slot must begin with the URIs referenced by this prefix @@ -917,6 +1025,12 @@ -- # Class: "enum_definition_broad_mappings" Description: "" -- * Slot: enum_definition_name Description: Autocreated FK slot -- * Slot: broad_mappings Description: A list of terms from different schemas or terminology systems that have broader meaning. +-- # Class: "reachability_query_source_nodes" Description: "" +-- * Slot: reachability_query_id Description: Autocreated FK slot +-- * Slot: source_nodes Description: A list of nodes that are used in the reachability query +-- # Class: "reachability_query_relationship_types" Description: "" +-- * Slot: reachability_query_id Description: Autocreated FK slot +-- * Slot: relationship_types Description: A list of relationship types (properties) that are used in a reachability query -- # Class: "structured_alias_category" Description: "" -- * Slot: structured_alias_id Description: Autocreated FK slot -- * Slot: category Description: The category or categories of an alias. This can be drawn from any relevant vocabulary @@ -1112,6 +1226,9 @@ -- # Class: "slot_definition_disjoint_with" Description: "" -- * Slot: slot_definition_name Description: Autocreated FK slot -- * Slot: disjoint_with 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 +-- # Class: "slot_definition_union_of" Description: "" +-- * Slot: slot_definition_name Description: Autocreated FK slot +-- * Slot: union_of Description: indicates that the domain element consists exactly of the members of the element in the range. -- # Class: "slot_definition_equals_string_in" Description: "" -- * Slot: slot_definition_name Description: Autocreated FK slot -- * Slot: equals_string_in Description: the slot must have range string and the value of the slot must equal one of the specified values @@ -1135,7 +1252,7 @@ -- * Slot: apply_to 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. -- # Class: "slot_definition_values_from" Description: "" -- * Slot: slot_definition_name Description: Autocreated FK slot --- * Slot: values_from Description: the identifier of a "value set" -- a set of identifiers that form the possible values for the range of a slot +-- * Slot: values_from 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 hiearchy into an enumerated list of possible values in every serialization of the model. -- # Class: "slot_definition_id_prefixes" Description: "" -- * Slot: slot_definition_name Description: Autocreated FK slot -- * Slot: id_prefixes Description: the identifier of this class or slot must begin with the URIs referenced by this prefix @@ -1240,7 +1357,7 @@ -- * Slot: slots Description: list of slot names that are applicable to a class -- # Class: "class_definition_union_of" Description: "" -- * Slot: class_definition_name Description: Autocreated FK slot --- * Slot: union_of Description: indicates that the domain class consists exactly of the members of the classes in the range +-- * Slot: union_of Description: indicates that the domain element consists exactly of the members of the element in the range. -- # Class: "class_definition_defining_slots" Description: "" -- * Slot: class_definition_name Description: Autocreated FK slot -- * Slot: defining_slots 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 @@ -1267,7 +1384,7 @@ -- * Slot: apply_to 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. -- # Class: "class_definition_values_from" Description: "" -- * Slot: class_definition_name Description: Autocreated FK slot --- * Slot: values_from Description: the identifier of a "value set" -- a set of identifiers that form the possible values for the range of a slot +-- * Slot: values_from 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 hiearchy into an enumerated list of possible values in every serialization of the model. -- # Class: "class_definition_id_prefixes" Description: "" -- * Slot: class_definition_name Description: Autocreated FK slot -- * Slot: id_prefixes Description: the identifier of this class or slot must begin with the URIs referenced by this prefix @@ -1490,6 +1607,9 @@ -- # Class: "unique_key_broad_mappings" Description: "" -- * Slot: unique_key_unique_key_name Description: Autocreated FK slot -- * Slot: broad_mappings Description: A list of terms from different schemas or terminology systems that have broader meaning. +-- # Class: "UnitOfMeasure_exact_mappings" Description: "" +-- * Slot: UnitOfMeasure_id Description: Autocreated FK slot +-- * Slot: exact_mappings Description: Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT CREATE TABLE common_metadata ( id INTEGER, @@ -1555,6 +1675,7 @@ CREATE TABLE type_definition ( uri TEXT, repr TEXT, pattern TEXT, + implicit_prefix TEXT, equals_string TEXT, equals_number INTEGER, minimum_value INTEGER, @@ -1574,10 +1695,12 @@ CREATE TABLE type_definition ( rank INTEGER, schema_definition_name TEXT, structured_pattern_id TEXT, + unit_id TEXT, PRIMARY KEY (name), FOREIGN KEY(typeof) REFERENCES type_definition (name), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (id), - FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id) + FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id) ); CREATE TABLE definition ( is_a TEXT, @@ -1605,6 +1728,20 @@ CREATE TABLE definition ( PRIMARY KEY (name), FOREIGN KEY(is_a) REFERENCES definition (name) ); +CREATE TABLE match_query ( + id INTEGER, + identifier_pattern TEXT, + source_ontology TEXT, + PRIMARY KEY (id) +); +CREATE TABLE reachability_query ( + id INTEGER, + source_ontology TEXT, + is_direct BOOLEAN, + include_self BOOLEAN, + traverse_up BOOLEAN, + PRIMARY KEY (id) +); CREATE TABLE expression ( id INTEGER, PRIMARY KEY (id) @@ -1723,7 +1860,9 @@ CREATE TABLE slot_definition ( class_definition_name TEXT, path_rule_id TEXT, range_expression_id TEXT, + enum_range_id TEXT, structured_pattern_id TEXT, + unit_id TEXT, has_member_id TEXT, PRIMARY KEY (name), FOREIGN KEY(domain) REFERENCES class_definition (name), @@ -1744,7 +1883,9 @@ CREATE TABLE slot_definition ( FOREIGN KEY(class_definition_name) REFERENCES class_definition (name), FOREIGN KEY(path_rule_id) REFERENCES path_expression (id), FOREIGN KEY(range_expression_id) REFERENCES anonymous_class_expression (id), + FOREIGN KEY(enum_range_id) REFERENCES enum_expression (id), FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id), FOREIGN KEY(has_member_id) REFERENCES anonymous_slot_expression (id) ); CREATE TABLE class_expression ( @@ -1788,6 +1929,15 @@ CREATE TABLE import_expression ( rank INTEGER, PRIMARY KEY (id) ); +CREATE TABLE "UnitOfMeasure" ( + id INTEGER, + symbol TEXT, + ucum_code TEXT, + derivation TEXT, + has_quantity_kind TEXT, + iec61360code TEXT, + PRIMARY KEY (id) +); CREATE TABLE annotatable ( id INTEGER, PRIMARY KEY (id) @@ -1799,24 +1949,30 @@ CREATE TABLE extensible ( CREATE TABLE type_expression ( id INTEGER, pattern TEXT, + implicit_prefix TEXT, equals_string TEXT, equals_number INTEGER, minimum_value INTEGER, maximum_value INTEGER, structured_pattern_id TEXT, + unit_id TEXT, PRIMARY KEY (id), - FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id) + FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id) ); CREATE TABLE anonymous_type_expression ( id INTEGER, pattern TEXT, + implicit_prefix TEXT, equals_string TEXT, equals_number INTEGER, minimum_value INTEGER, maximum_value INTEGER, structured_pattern_id TEXT, + unit_id TEXT, PRIMARY KEY (id), - FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id) + FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id) ); CREATE TABLE subset_definition ( name TEXT, @@ -1836,11 +1992,45 @@ CREATE TABLE subset_definition ( PRIMARY KEY (name), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (id) ); +CREATE TABLE enum_expression ( + id INTEGER, + code_set TEXT, + code_set_tag TEXT, + code_set_version TEXT, + pv_formula VARCHAR(11), + reachable_from_id TEXT, + matches_id TEXT, + PRIMARY KEY (id), + FOREIGN KEY(reachable_from_id) REFERENCES reachability_query (id), + FOREIGN KEY(matches_id) REFERENCES match_query (id) +); +CREATE TABLE anonymous_enum_expression ( + id INTEGER, + code_set TEXT, + code_set_tag TEXT, + code_set_version TEXT, + pv_formula VARCHAR(11), + reachable_from_id TEXT, + matches_id TEXT, + PRIMARY KEY (id), + FOREIGN KEY(reachable_from_id) REFERENCES reachability_query (id), + FOREIGN KEY(matches_id) REFERENCES match_query (id) +); CREATE TABLE enum_definition ( + enum_uri TEXT, code_set TEXT, code_set_tag TEXT, code_set_version TEXT, pv_formula VARCHAR(11), + is_a TEXT, + abstract BOOLEAN, + mixin BOOLEAN, + created_by TEXT, + created_on DATETIME, + last_updated_on DATETIME, + modified_by TEXT, + status TEXT, + string_serialization TEXT, name TEXT, definition_uri TEXT, conforms_to TEXT, @@ -1855,8 +2045,13 @@ CREATE TABLE enum_definition ( deprecated_element_has_possible_replacement TEXT, rank INTEGER, schema_definition_name TEXT, + reachable_from_id TEXT, + matches_id TEXT, PRIMARY KEY (name), - FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (id) + FOREIGN KEY(is_a) REFERENCES definition (name), + FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (id), + FOREIGN KEY(reachable_from_id) REFERENCES reachability_query (id), + FOREIGN KEY(matches_id) REFERENCES match_query (id) ); CREATE TABLE class_definition ( class_uri TEXT, @@ -2148,6 +2343,13 @@ CREATE TABLE schema_definition_broad_mappings ( PRIMARY KEY (schema_definition_name, broad_mappings), FOREIGN KEY(schema_definition_name) REFERENCES schema_definition (id) ); +CREATE TABLE type_definition_union_of ( + type_definition_name TEXT, + union_of TEXT, + PRIMARY KEY (type_definition_name, union_of), + FOREIGN KEY(type_definition_name) REFERENCES type_definition (name), + FOREIGN KEY(union_of) REFERENCES type_definition (name) +); CREATE TABLE type_definition_equals_string_in ( type_definition_name TEXT, equals_string_in TEXT, @@ -2318,6 +2520,18 @@ CREATE TABLE definition_broad_mappings ( PRIMARY KEY (definition_name, broad_mappings), FOREIGN KEY(definition_name) REFERENCES definition (name) ); +CREATE TABLE reachability_query_source_nodes ( + reachability_query_id TEXT, + source_nodes TEXT, + PRIMARY KEY (reachability_query_id, source_nodes), + FOREIGN KEY(reachability_query_id) REFERENCES reachability_query (id) +); +CREATE TABLE reachability_query_relationship_types ( + reachability_query_id TEXT, + relationship_types TEXT, + PRIMARY KEY (reachability_query_id, relationship_types), + FOREIGN KEY(reachability_query_id) REFERENCES reachability_query (id) +); CREATE TABLE anonymous_expression_todos ( anonymous_expression_id TEXT, todos TEXT, @@ -2485,6 +2699,13 @@ CREATE TABLE slot_definition_disjoint_with ( FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), FOREIGN KEY(disjoint_with) REFERENCES slot_definition (name) ); +CREATE TABLE slot_definition_union_of ( + slot_definition_name TEXT, + union_of TEXT, + PRIMARY KEY (slot_definition_name, union_of), + FOREIGN KEY(slot_definition_name) REFERENCES slot_definition (name), + FOREIGN KEY(union_of) REFERENCES type_definition (name) +); CREATE TABLE slot_definition_equals_string_in ( slot_definition_name TEXT, equals_string_in TEXT, @@ -2715,6 +2936,12 @@ CREATE TABLE import_expression_broad_mappings ( PRIMARY KEY (import_expression_id, broad_mappings), FOREIGN KEY(import_expression_id) REFERENCES import_expression (id) ); +CREATE TABLE "UnitOfMeasure_exact_mappings" ( + "UnitOfMeasure_id" TEXT, + exact_mappings TEXT, + PRIMARY KEY ("UnitOfMeasure_id", exact_mappings), + FOREIGN KEY("UnitOfMeasure_id") REFERENCES "UnitOfMeasure" (id) +); CREATE TABLE anonymous_class_expression ( id INTEGER, is_a TEXT, @@ -2767,9 +2994,15 @@ CREATE TABLE permissible_value ( deprecated_element_has_exact_replacement TEXT, deprecated_element_has_possible_replacement TEXT, rank INTEGER, + enum_expression_id TEXT, + anonymous_enum_expression_id TEXT, enum_definition_name TEXT, + unit_id TEXT, PRIMARY KEY (text), - FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) + FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id), + FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id) ); CREATE TABLE unique_key ( unique_key_name TEXT NOT NULL, @@ -2997,6 +3230,107 @@ CREATE TABLE definition_in_subset ( FOREIGN KEY(definition_name) REFERENCES definition (name), FOREIGN KEY(in_subset) REFERENCES subset_definition (name) ); +CREATE TABLE enum_expression_include ( + enum_expression_id TEXT, + include_id TEXT, + PRIMARY KEY (enum_expression_id, include_id), + FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id), + FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE enum_expression_minus ( + enum_expression_id TEXT, + minus_id TEXT, + PRIMARY KEY (enum_expression_id, minus_id), + FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id), + FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE enum_expression_inherits ( + enum_expression_id TEXT, + inherits TEXT, + PRIMARY KEY (enum_expression_id, inherits), + FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id), + FOREIGN KEY(inherits) REFERENCES enum_definition (name) +); +CREATE TABLE enum_expression_concepts ( + enum_expression_id TEXT, + concepts TEXT, + PRIMARY KEY (enum_expression_id, concepts), + FOREIGN KEY(enum_expression_id) REFERENCES enum_expression (id) +); +CREATE TABLE anonymous_enum_expression_include ( + anonymous_enum_expression_id TEXT, + include_id TEXT, + PRIMARY KEY (anonymous_enum_expression_id, include_id), + FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), + FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE anonymous_enum_expression_minus ( + anonymous_enum_expression_id TEXT, + minus_id TEXT, + PRIMARY KEY (anonymous_enum_expression_id, minus_id), + FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), + FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE anonymous_enum_expression_inherits ( + anonymous_enum_expression_id TEXT, + inherits TEXT, + PRIMARY KEY (anonymous_enum_expression_id, inherits), + FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id), + FOREIGN KEY(inherits) REFERENCES enum_definition (name) +); +CREATE TABLE anonymous_enum_expression_concepts ( + anonymous_enum_expression_id TEXT, + concepts TEXT, + PRIMARY KEY (anonymous_enum_expression_id, concepts), + FOREIGN KEY(anonymous_enum_expression_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE enum_definition_include ( + enum_definition_name TEXT, + include_id TEXT, + PRIMARY KEY (enum_definition_name, include_id), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), + FOREIGN KEY(include_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE enum_definition_minus ( + enum_definition_name TEXT, + minus_id TEXT, + PRIMARY KEY (enum_definition_name, minus_id), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), + FOREIGN KEY(minus_id) REFERENCES anonymous_enum_expression (id) +); +CREATE TABLE enum_definition_inherits ( + enum_definition_name TEXT, + inherits TEXT, + PRIMARY KEY (enum_definition_name, inherits), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), + FOREIGN KEY(inherits) REFERENCES enum_definition (name) +); +CREATE TABLE enum_definition_concepts ( + enum_definition_name TEXT, + concepts TEXT, + PRIMARY KEY (enum_definition_name, concepts), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) +); +CREATE TABLE enum_definition_mixins ( + enum_definition_name TEXT, + mixins TEXT, + PRIMARY KEY (enum_definition_name, mixins), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), + FOREIGN KEY(mixins) REFERENCES definition (name) +); +CREATE TABLE enum_definition_apply_to ( + enum_definition_name TEXT, + apply_to TEXT, + PRIMARY KEY (enum_definition_name, apply_to), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name), + FOREIGN KEY(apply_to) REFERENCES definition (name) +); +CREATE TABLE enum_definition_values_from ( + enum_definition_name TEXT, + values_from TEXT, + PRIMARY KEY (enum_definition_name, values_from), + FOREIGN KEY(enum_definition_name) REFERENCES enum_definition (name) +); CREATE TABLE enum_definition_id_prefixes ( enum_definition_name TEXT, id_prefixes TEXT, @@ -3272,12 +3606,16 @@ CREATE TABLE anonymous_slot_expression ( deprecated_element_has_possible_replacement TEXT, rank INTEGER, range_expression_id TEXT, + enum_range_id TEXT, structured_pattern_id TEXT, + unit_id TEXT, has_member_id TEXT, PRIMARY KEY (id), FOREIGN KEY(range) REFERENCES element (name), FOREIGN KEY(range_expression_id) REFERENCES anonymous_class_expression (id), + FOREIGN KEY(enum_range_id) REFERENCES enum_expression (id), FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id), FOREIGN KEY(has_member_id) REFERENCES anonymous_slot_expression (id) ); CREATE TABLE class_rule ( @@ -3686,12 +4024,16 @@ CREATE TABLE slot_expression ( minimum_cardinality INTEGER, maximum_cardinality INTEGER, range_expression_id TEXT, + enum_range_id TEXT, structured_pattern_id TEXT, + unit_id TEXT, has_member_id TEXT, PRIMARY KEY (id), FOREIGN KEY(range) REFERENCES element (name), FOREIGN KEY(range_expression_id) REFERENCES anonymous_class_expression (id), + FOREIGN KEY(enum_range_id) REFERENCES enum_expression (id), FOREIGN KEY(structured_pattern_id) REFERENCES pattern_expression (id), + FOREIGN KEY(unit_id) REFERENCES "UnitOfMeasure" (id), FOREIGN KEY(has_member_id) REFERENCES anonymous_slot_expression (id) ); CREATE TABLE anonymous_slot_expression_equals_string_in ( diff --git a/poetry.lock b/poetry.lock index 858b6cd0..60c69abe 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,3 +1,5 @@ +# This file is automatically @generated by Poetry and should not be changed by hand. + [[package]] name = "alabaster" version = "0.7.12" @@ -5,6 +7,10 @@ description = "A configurable sidebar-enabled Sphinx theme" category = "dev" optional = false python-versions = "*" +files = [ + {file = "alabaster-0.7.12-py2.py3-none-any.whl", hash = "sha256:446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359"}, + {file = "alabaster-0.7.12.tar.gz", hash = "sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02"}, +] [[package]] name = "antlr4-python3-runtime" @@ -13,6 +19,9 @@ description = "ANTLR 4.9.3 runtime for Python 3.7" category = "dev" optional = false python-versions = "*" +files = [ + {file = "antlr4-python3-runtime-4.9.3.tar.gz", hash = "sha256:f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b"}, +] [[package]] name = "arrow" @@ -21,6 +30,10 @@ description = "Better dates & times for Python" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "arrow-1.2.3-py3-none-any.whl", hash = "sha256:5a49ab92e3b7b71d96cd6bfcc4df14efefc9dfa96ea19045815914a6ab6b1fe2"}, + {file = "arrow-1.2.3.tar.gz", hash = "sha256:3934b30ca1b9f292376d9db15b19446088d12ec58629bc3f0da28fd55fb633a1"}, +] [package.dependencies] python-dateutil = ">=2.7.0" @@ -32,12 +45,16 @@ description = "Classes Without Boilerplate" category = "main" optional = false python-versions = ">=3.5" +files = [ + {file = "attrs-22.1.0-py2.py3-none-any.whl", hash = "sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c"}, + {file = "attrs-22.1.0.tar.gz", hash = "sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6"}, +] [package.extras] -dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit", "cloudpickle"] -docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"] -tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "zope.interface", "cloudpickle"] -tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "mypy (>=0.900,!=0.940)", "pytest-mypy-plugins", "cloudpickle"] +dev = ["cloudpickle", "coverage[toml] (>=5.0.2)", "furo", "hypothesis", "mypy (>=0.900,!=0.940)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "sphinx", "sphinx-notfound-page", "zope.interface"] +docs = ["furo", "sphinx", "sphinx-notfound-page", "zope.interface"] +tests = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "zope.interface"] +tests-no-zope = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins"] [[package]] name = "babel" @@ -46,6 +63,10 @@ description = "Internationalization utilities" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "Babel-2.11.0-py3-none-any.whl", hash = "sha256:1ad3eca1c885218f6dce2ab67291178944f810a10a9b5f3cb8382a5a232b64fe"}, + {file = "Babel-2.11.0.tar.gz", hash = "sha256:5ef4b3226b0180dedded4229651c8b0e1a3a6a2837d45a073272f313e4cf97f6"}, +] [package.dependencies] pytz = ">=2015.7" @@ -57,6 +78,10 @@ description = "Screen-scraping library" category = "dev" optional = false python-versions = ">=3.6.0" +files = [ + {file = "beautifulsoup4-4.11.1-py3-none-any.whl", hash = "sha256:58d5c3d29f5a36ffeb94f02f0d786cd53014cf9b3b3951d42e0080d8a9498d30"}, + {file = "beautifulsoup4-4.11.1.tar.gz", hash = "sha256:ad9aa55b65ef2808eb405f46cf74df7fcb7044d5cbc26487f96eb2ef2e436693"}, +] [package.dependencies] soupsieve = ">1.2" @@ -72,6 +97,10 @@ description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, + {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, +] [[package]] name = "cfgraph" @@ -80,6 +109,9 @@ description = "rdflib collections flattening graph" category = "dev" optional = false python-versions = "*" +files = [ + {file = "CFGraph-0.2.1.tar.gz", hash = "sha256:b57fe7044a10b8ff65aa3a8a8ddc7d4cd77bf511b42e57289cd52cbc29f8fe74"}, +] [package.dependencies] rdflib = ">=0.4.2" @@ -91,6 +123,10 @@ description = "Universal encoding detector for Python 3" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "chardet-5.1.0-py3-none-any.whl", hash = "sha256:362777fb014af596ad31334fde1e8c327dfdb076e1960d1694662d46a6917ab9"}, + {file = "chardet-5.1.0.tar.gz", hash = "sha256:0d62712b956bc154f85fb0a266e2a3c5913c2967e00348701b32411d6def31e5"}, +] [[package]] name = "charset-normalizer" @@ -99,9 +135,13 @@ description = "The Real First Universal Charset Detector. Open, modern and activ category = "main" optional = false python-versions = ">=3.6.0" +files = [ + {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"}, + {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"}, +] [package.extras] -unicode_backport = ["unicodedata2"] +unicode-backport = ["unicodedata2"] [[package]] name = "click" @@ -110,6 +150,10 @@ description = "Composable command line interface toolkit" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, + {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, +] [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} @@ -121,6 +165,34 @@ description = "Cross-platform colored terminal text." category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "curies" +version = "0.4.2" +description = "Idiomatic conversion between URIs and compact URIs (CURIEs)." +category = "main" +optional = false +python-versions = ">=3.7" +files = [ + {file = "curies-0.4.2-py3-none-any.whl", hash = "sha256:91d6993a59270c3c280d3689e26001eb7c098d319f9a9f102c060943fa2bc44b"}, + {file = "curies-0.4.2.tar.gz", hash = "sha256:bdf862d9320b3f0c1d4a81532b07457da5370aa72bc6189099480ac0db80a6f7"}, +] + +[package.dependencies] +pytrie = "*" +requests = "*" + +[package.extras] +bioregistry = ["bioregistry (>=0.5.136)"] +docs = ["sphinx", "sphinx-autodoc-typehints", "sphinx-automodapi", "sphinx-rtd-theme"] +fastapi = ["fastapi", "httpx"] +flask = ["flask"] +pandas = ["pandas"] +tests = ["coverage", "pytest"] [[package]] name = "decorator" @@ -129,6 +201,10 @@ description = "Decorators for Humans" category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, + {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, +] [[package]] name = "deprecated" @@ -137,12 +213,16 @@ description = "Python @deprecated decorator to deprecate old python classes, fun category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "Deprecated-1.2.13-py2.py3-none-any.whl", hash = "sha256:64756e3e14c8c5eea9795d93c524551432a0be75629f8f29e67ab8caf076c76d"}, + {file = "Deprecated-1.2.13.tar.gz", hash = "sha256:43ac5335da90c31c24ba028af536a91d41d53f9e6901ddb021bcc572ce44e38d"}, +] [package.dependencies] wrapt = ">=1.10,<2" [package.extras] -dev = ["tox", "bump2version (<1)", "sphinx (<2)", "importlib-metadata (<3)", "importlib-resources (<4)", "configparser (<5)", "sphinxcontrib-websupport (<2)", "zipp (<2)", "PyTest (<5)", "PyTest-Cov (<2.6)", "pytest", "pytest-cov"] +dev = ["PyTest", "PyTest (<5)", "PyTest-Cov", "PyTest-Cov (<2.6)", "bump2version (<1)", "configparser (<5)", "importlib-metadata (<3)", "importlib-resources (<4)", "sphinx (<2)", "sphinxcontrib-websupport (<2)", "tox", "zipp (<2)"] [[package]] name = "distlib" @@ -151,6 +231,10 @@ description = "Distribution utilities" category = "dev" optional = false python-versions = "*" +files = [ + {file = "distlib-0.3.6-py2.py3-none-any.whl", hash = "sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e"}, + {file = "distlib-0.3.6.tar.gz", hash = "sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46"}, +] [[package]] name = "docutils" @@ -159,6 +243,10 @@ description = "Docutils -- Python Documentation Utilities" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "docutils-0.19-py3-none-any.whl", hash = "sha256:5e1de4d849fee02c63b040a4a3fd567f4ab104defd8a5511fbbc24a8a017efbc"}, + {file = "docutils-0.19.tar.gz", hash = "sha256:33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6"}, +] [[package]] name = "editorconfig" @@ -167,6 +255,10 @@ description = "EditorConfig File Locator and Interpreter for Python" category = "dev" optional = false python-versions = "*" +files = [ + {file = "EditorConfig-0.12.3-py3-none-any.whl", hash = "sha256:6b0851425aa875b08b16789ee0eeadbd4ab59666e9ebe728e526314c4a2e52c1"}, + {file = "EditorConfig-0.12.3.tar.gz", hash = "sha256:57f8ce78afcba15c8b18d46b5170848c88d56fd38f05c2ec60dbbfcb8996e89e"}, +] [[package]] name = "et-xmlfile" @@ -175,6 +267,10 @@ description = "An implementation of lxml.xmlfile for the standard library" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "et_xmlfile-1.1.0-py3-none-any.whl", hash = "sha256:a2ba85d1d6a74ef63837eed693bcb89c3f752169b0e3e7ae5b16ca5e1b3deada"}, + {file = "et_xmlfile-1.1.0.tar.gz", hash = "sha256:8eb9e2bc2f8c97e37a2dc85a09ecdcdec9d8a396530a6d5a33b30b9a92da0c5c"}, +] [[package]] name = "exceptiongroup" @@ -183,6 +279,10 @@ description = "Backport of PEP 654 (exception groups)" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.0.4-py3-none-any.whl", hash = "sha256:542adf9dea4055530d6e1279602fa5cb11dab2395fa650b8674eaec35fc4a828"}, + {file = "exceptiongroup-1.0.4.tar.gz", hash = "sha256:bd14967b79cd9bdb54d97323216f8fdf533e278df937aa2a90089e7d6e06e5ec"}, +] [package.extras] test = ["pytest (>=6)"] @@ -194,6 +294,10 @@ description = "A platform independent file lock." category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "filelock-3.8.2-py3-none-any.whl", hash = "sha256:8df285554452285f79c035efb0c861eb33a4bcfa5b7a137016e32e6a90f9792c"}, + {file = "filelock-3.8.2.tar.gz", hash = "sha256:7565f628ea56bfcd8e54e42bdc55da899c85c1abfe1b5bcfd147e9188cebb3b2"}, +] [package.extras] docs = ["furo (>=2022.9.29)", "sphinx (>=5.3)", "sphinx-autodoc-typehints (>=1.19.5)"] @@ -206,6 +310,10 @@ description = "Validates fully-qualified domain names against RFC 1123, so that category = "dev" optional = false python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" +files = [ + {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, + {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, +] [[package]] name = "ghp-import" @@ -214,12 +322,16 @@ description = "Copy your docs directly to the gh-pages branch." category = "dev" optional = false python-versions = "*" +files = [ + {file = "ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343"}, + {file = "ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619"}, +] [package.dependencies] python-dateutil = ">=2.8.1" [package.extras] -dev = ["twine", "markdown", "flake8", "wheel"] +dev = ["flake8", "markdown", "twine", "wheel"] [[package]] name = "graphviz" @@ -228,11 +340,15 @@ description = "Simple Python interface for Graphviz" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "graphviz-0.20.1-py3-none-any.whl", hash = "sha256:587c58a223b51611c0cf461132da386edd896a029524ca61a1462b880bf97977"}, + {file = "graphviz-0.20.1.zip", hash = "sha256:8c58f14adaa3b947daf26c19bc1e98c4e0702cdc31cf99153e6f06904d492bf8"}, +] [package.extras] -dev = ["tox (>=3)", "flake8", "pep8-naming", "wheel", "twine"] +dev = ["flake8", "pep8-naming", "tox (>=3)", "twine", "wheel"] docs = ["sphinx (>=5)", "sphinx-autodoc-typehints", "sphinx-rtd-theme"] -test = ["pytest (>=7)", "pytest-mock (>=3)", "mock (>=4)", "pytest-cov", "coverage"] +test = ["coverage", "mock (>=4)", "pytest (>=7)", "pytest-cov", "pytest-mock (>=3)"] [[package]] name = "greenlet" @@ -241,10 +357,72 @@ description = "Lightweight in-process concurrent programming" category = "dev" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" +files = [ + {file = "greenlet-2.0.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:9ed358312e63bf683b9ef22c8e442ef6c5c02973f0c2a939ec1d7b50c974015c"}, + {file = "greenlet-2.0.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4f09b0010e55bec3239278f642a8a506b91034f03a4fb28289a7d448a67f1515"}, + {file = "greenlet-2.0.1-cp27-cp27m-win32.whl", hash = "sha256:1407fe45246632d0ffb7a3f4a520ba4e6051fc2cbd61ba1f806900c27f47706a"}, + {file = "greenlet-2.0.1-cp27-cp27m-win_amd64.whl", hash = "sha256:3001d00eba6bbf084ae60ec7f4bb8ed375748f53aeaefaf2a37d9f0370558524"}, + {file = "greenlet-2.0.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d566b82e92ff2e09dd6342df7e0eb4ff6275a3f08db284888dcd98134dbd4243"}, + {file = "greenlet-2.0.1-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:0722c9be0797f544a3ed212569ca3fe3d9d1a1b13942d10dd6f0e8601e484d26"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d37990425b4687ade27810e3b1a1c37825d242ebc275066cfee8cb6b8829ccd"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be35822f35f99dcc48152c9839d0171a06186f2d71ef76dc57fa556cc9bf6b45"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c140e7eb5ce47249668056edf3b7e9900c6a2e22fb0eaf0513f18a1b2c14e1da"}, + {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d21681f09e297a5adaa73060737e3aa1279a13ecdcfcc6ef66c292cb25125b2d"}, + {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fb412b7db83fe56847df9c47b6fe3f13911b06339c2aa02dcc09dce8bbf582cd"}, + {file = "greenlet-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:c6a08799e9e88052221adca55741bf106ec7ea0710bca635c208b751f0d5b617"}, + {file = "greenlet-2.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9e112e03d37987d7b90c1e98ba5e1b59e1645226d78d73282f45b326f7bddcb9"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56961cfca7da2fdd178f95ca407fa330c64f33289e1804b592a77d5593d9bd94"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:13ba6e8e326e2116c954074c994da14954982ba2795aebb881c07ac5d093a58a"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bf633a50cc93ed17e494015897361010fc08700d92676c87931d3ea464123ce"}, + {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9f2c221eecb7ead00b8e3ddb913c67f75cba078fd1d326053225a3f59d850d72"}, + {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:13ebf93c343dd8bd010cd98e617cb4c1c1f352a0cf2524c82d3814154116aa82"}, + {file = "greenlet-2.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:6f61d71bbc9b4a3de768371b210d906726535d6ca43506737682caa754b956cd"}, + {file = "greenlet-2.0.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:2d0bac0385d2b43a7bd1d651621a4e0f1380abc63d6fb1012213a401cbd5bf8f"}, + {file = "greenlet-2.0.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:f6327b6907b4cb72f650a5b7b1be23a2aab395017aa6f1adb13069d66360eb3f"}, + {file = "greenlet-2.0.1-cp35-cp35m-win32.whl", hash = "sha256:81b0ea3715bf6a848d6f7149d25bf018fd24554a4be01fcbbe3fdc78e890b955"}, + {file = "greenlet-2.0.1-cp35-cp35m-win_amd64.whl", hash = "sha256:38255a3f1e8942573b067510f9611fc9e38196077b0c8eb7a8c795e105f9ce77"}, + {file = "greenlet-2.0.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:04957dc96669be041e0c260964cfef4c77287f07c40452e61abe19d647505581"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:4aeaebcd91d9fee9aa768c1b39cb12214b30bf36d2b7370505a9f2165fedd8d9"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:974a39bdb8c90a85982cdb78a103a32e0b1be986d411303064b28a80611f6e51"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dca09dedf1bd8684767bc736cc20c97c29bc0c04c413e3276e0962cd7aeb148"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4c0757db9bd08470ff8277791795e70d0bf035a011a528ee9a5ce9454b6cba2"}, + {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:5067920de254f1a2dee8d3d9d7e4e03718e8fd2d2d9db962c8c9fa781ae82a39"}, + {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5a8e05057fab2a365c81abc696cb753da7549d20266e8511eb6c9d9f72fe3e92"}, + {file = "greenlet-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:3d75b8d013086b08e801fbbb896f7d5c9e6ccd44f13a9241d2bf7c0df9eda928"}, + {file = "greenlet-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:097e3dae69321e9100202fc62977f687454cd0ea147d0fd5a766e57450c569fd"}, + {file = "greenlet-2.0.1-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:cb242fc2cda5a307a7698c93173d3627a2a90d00507bccf5bc228851e8304963"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:72b00a8e7c25dcea5946692a2485b1a0c0661ed93ecfedfa9b6687bd89a24ef5"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5b0ff9878333823226d270417f24f4d06f235cb3e54d1103b71ea537a6a86ce"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be9e0fb2ada7e5124f5282d6381903183ecc73ea019568d6d63d33f25b2a9000"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b493db84d124805865adc587532ebad30efa68f79ad68f11b336e0a51ec86c2"}, + {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0459d94f73265744fee4c2d5ec44c6f34aa8a31017e6e9de770f7bcf29710be9"}, + {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a20d33124935d27b80e6fdacbd34205732660e0a1d35d8b10b3328179a2b51a1"}, + {file = "greenlet-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:ea688d11707d30e212e0110a1aac7f7f3f542a259235d396f88be68b649e47d1"}, + {file = "greenlet-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:afe07421c969e259e9403c3bb658968702bc3b78ec0b6fde3ae1e73440529c23"}, + {file = "greenlet-2.0.1-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:cd4ccc364cf75d1422e66e247e52a93da6a9b73cefa8cad696f3cbbb75af179d"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:4c8b1c43e75c42a6cafcc71defa9e01ead39ae80bd733a2608b297412beede68"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:659f167f419a4609bc0516fb18ea69ed39dbb25594934bd2dd4d0401660e8a1e"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:356e4519d4dfa766d50ecc498544b44c0249b6de66426041d7f8b751de4d6b48"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:811e1d37d60b47cb8126e0a929b58c046251f28117cb16fcd371eed61f66b764"}, + {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d38ffd0e81ba8ef347d2be0772e899c289b59ff150ebbbbe05dc61b1246eb4e0"}, + {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0109af1138afbfb8ae647e31a2b1ab030f58b21dd8528c27beaeb0093b7938a9"}, + {file = "greenlet-2.0.1-cp38-cp38-win32.whl", hash = "sha256:88c8d517e78acdf7df8a2134a3c4b964415b575d2840a2746ddb1cc6175f8608"}, + {file = "greenlet-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:d6ee1aa7ab36475035eb48c01efae87d37936a8173fc4d7b10bb02c2d75dd8f6"}, + {file = "greenlet-2.0.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:b1992ba9d4780d9af9726bbcef6a1db12d9ab1ccc35e5773685a24b7fb2758eb"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:b5e83e4de81dcc9425598d9469a624826a0b1211380ac444c7c791d4a2137c19"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:505138d4fa69462447a562a7c2ef723c6025ba12ac04478bc1ce2fcc279a2db5"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cce1e90dd302f45716a7715517c6aa0468af0bf38e814ad4eab58e88fc09f7f7"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e9744c657d896c7b580455e739899e492a4a452e2dd4d2b3e459f6b244a638d"}, + {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:662e8f7cad915ba75d8017b3e601afc01ef20deeeabf281bd00369de196d7726"}, + {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:41b825d65f31e394b523c84db84f9383a2f7eefc13d987f308f4663794d2687e"}, + {file = "greenlet-2.0.1-cp39-cp39-win32.whl", hash = "sha256:db38f80540083ea33bdab614a9d28bcec4b54daa5aff1668d7827a9fc769ae0a"}, + {file = "greenlet-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b23d2a46d53210b498e5b701a1913697671988f4bf8e10f935433f6e7c332fb6"}, + {file = "greenlet-2.0.1.tar.gz", hash = "sha256:42e602564460da0e8ee67cb6d7236363ee5e131aa15943b6670e44e5c2ed0f67"}, +] [package.extras] -docs = ["sphinx", "docutils (<0.18)"] -test = ["objgraph", "psutil", "faulthandler"] +docs = ["Sphinx", "docutils (<0.18)"] +test = ["faulthandler", "objgraph", "psutil"] [[package]] name = "hbreader" @@ -253,6 +431,10 @@ description = "Honey Badger reader - a generic file/url/string open and read too category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "hbreader-0.9.1-py3-none-any.whl", hash = "sha256:9a6e76c9d1afc1b977374a5dc430a1ebb0ea0488205546d4678d6e31cc5f6801"}, + {file = "hbreader-0.9.1.tar.gz", hash = "sha256:d2c132f8ba6276d794c66224c3297cec25c8079d0a4cf019c061611e0a3b94fa"}, +] [[package]] name = "idna" @@ -261,6 +443,10 @@ description = "Internationalized Domain Names in Applications (IDNA)" category = "main" optional = false python-versions = ">=3.5" +files = [ + {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, + {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, +] [[package]] name = "imagesize" @@ -269,22 +455,30 @@ description = "Getting image size from png/jpeg/jpeg2000/gif file" category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, + {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, +] [[package]] name = "importlib-metadata" version = "4.13.0" description = "Read metadata from Python packages" -category = "dev" +category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "importlib_metadata-4.13.0-py3-none-any.whl", hash = "sha256:8a8a81bcf996e74fee46f0d16bd3eaa382a7eb20fd82445c3ad11f4090334116"}, + {file = "importlib_metadata-4.13.0.tar.gz", hash = "sha256:dd0173e8f150d6815e098fd354f6414b0f079af4644ddfe90c71e2fc6174346d"}, +] [package.dependencies] zipp = ">=0.5" [package.extras] -docs = ["sphinx (>=3.5)", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "furo", "jaraco.tidelift (>=1.4)"] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)"] perf = ["ipython"] -testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "flake8 (<5)", "pytest-cov", "pytest-enabler (>=1.3)", "packaging", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "importlib-resources (>=1.3)"] +testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] [[package]] name = "iniconfig" @@ -293,6 +487,10 @@ description = "iniconfig: brain-dead simple config-ini parsing" category = "main" optional = false python-versions = "*" +files = [ + {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, + {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, +] [[package]] name = "isodate" @@ -301,6 +499,10 @@ description = "An ISO 8601 date/time/duration parser and formatter" category = "main" optional = false python-versions = "*" +files = [ + {file = "isodate-0.6.1-py2.py3-none-any.whl", hash = "sha256:0751eece944162659049d35f4f549ed815792b38793f07cf73381c1c87cbed96"}, + {file = "isodate-0.6.1.tar.gz", hash = "sha256:48c5881de7e8b0a0d648cb024c8062dc84e7b840ed81e864c7614fd3c127bde9"}, +] [package.dependencies] six = "*" @@ -312,6 +514,10 @@ description = "Operations with ISO 8601 durations" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, + {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, +] [package.dependencies] arrow = ">=0.15.0" @@ -323,6 +529,10 @@ description = "A very fast and expressive template engine." category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, +] [package.dependencies] MarkupSafe = ">=2.0" @@ -337,6 +547,9 @@ description = "JavaScript unobfuscator and beautifier." category = "dev" optional = false python-versions = "*" +files = [ + {file = "jsbeautifier-1.14.7.tar.gz", hash = "sha256:77993254db1ff6f84eb6e1d75e3b6b72cba2ef20813a585b2d81e8e5e3c713c6"}, +] [package.dependencies] editorconfig = ">=0.12.2" @@ -349,6 +562,10 @@ description = "Python library for denormalizing nested dicts or json objects to category = "main" optional = false python-versions = ">=3.7.0" +files = [ + {file = "json_flattener-0.1.9-py3-none-any.whl", hash = "sha256:6b027746f08bf37a75270f30c6690c7149d5f704d8af1740c346a3a1236bc941"}, + {file = "json_flattener-0.1.9.tar.gz", hash = "sha256:84cf8523045ffb124301a602602201665fcb003a171ece87e6f46ed02f7f0c15"}, +] [package.dependencies] click = "*" @@ -361,6 +578,10 @@ description = "JSON as python objects" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "jsonasobj-2.0.1-py3-none-any.whl", hash = "sha256:221af946bbe4171505e81ea1f0c31d652e69c68e02fff742e37543abe08ff7d9"}, + {file = "jsonasobj-2.0.1.tar.gz", hash = "sha256:e87c47ec5ec3db65a212e15236fdefc38dd01bdcf563b0d53021095066cd5963"}, +] [package.dependencies] hbreader = "*" @@ -372,6 +593,10 @@ description = "JSON as python objects - version 2" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "jsonasobj2-1.0.4-py3-none-any.whl", hash = "sha256:12e86f86324d54fcf60632db94ea74488d5314e3da554c994fe1e2c6f29acb79"}, + {file = "jsonasobj2-1.0.4.tar.gz", hash = "sha256:f50b1668ef478004aa487b2d2d094c304e5cb6b79337809f4a1f2975cc7fbb4e"}, +] [package.dependencies] hbreader = "*" @@ -383,6 +608,10 @@ description = "Apply JSON-Patches (RFC 6902)" category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "jsonpatch-1.32-py2.py3-none-any.whl", hash = "sha256:26ac385719ac9f54df8a2f0827bb8253aa3ea8ab7b3368457bcdb8c14595a397"}, + {file = "jsonpatch-1.32.tar.gz", hash = "sha256:b6ddfe6c3db30d81a96aaeceb6baf916094ffa23d7dd5fa2c13e13f8b6e600c2"}, +] [package.dependencies] jsonpointer = ">=1.9" @@ -394,6 +623,11 @@ description = "A final implementation of JSONPath for Python that aims to be sta category = "dev" optional = false python-versions = "*" +files = [ + {file = "jsonpath-ng-1.5.3.tar.gz", hash = "sha256:a273b182a82c1256daab86a313b937059261b5c5f8c4fa3fc38b882b344dd567"}, + {file = "jsonpath_ng-1.5.3-py2-none-any.whl", hash = "sha256:f75b95dbecb8a0f3b86fd2ead21c2b022c3f5770957492b9b6196ecccfeb10aa"}, + {file = "jsonpath_ng-1.5.3-py3-none-any.whl", hash = "sha256:292a93569d74029ba75ac2dc3d3630fc0e17b2df26119a165fa1d498ca47bf65"}, +] [package.dependencies] decorator = "*" @@ -407,6 +641,10 @@ description = "Identify specific nodes in a JSON document (RFC 6901)" category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "jsonpointer-2.3-py2.py3-none-any.whl", hash = "sha256:51801e558539b4e9cd268638c078c6c5746c9ac96bc38152d443400e4f3793e9"}, + {file = "jsonpointer-2.3.tar.gz", hash = "sha256:97cba51526c829282218feb99dab1b1e6bdf8efd1c43dc9d57be093c0d69c99a"}, +] [[package]] name = "jsonschema" @@ -415,6 +653,10 @@ description = "An implementation of JSON Schema validation for Python" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "jsonschema-4.17.3-py3-none-any.whl", hash = "sha256:a870ad254da1a8ca84b6a2905cac29d265f805acc57af304784962a2aa6508f6"}, + {file = "jsonschema-4.17.3.tar.gz", hash = "sha256:0f864437ab8b6076ba6707453ef8f98a6a0d512a80e93f8abdb676f737ecb60d"}, +] [package.dependencies] attrs = ">=17.4.0" @@ -434,11 +676,15 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- [[package]] name = "linkml" -version = "1.4.2" +version = "1.4.3" description = "Linked Open Data Modeling Language" category = "dev" optional = false python-versions = ">=3.7.6,<4.0.0" +files = [ + {file = "linkml-1.4.3-py3-none-any.whl", hash = "sha256:778603d56f8d4f2e285c63eac0324ece68fe76f018f3a0638dcb3b03fa5c3262"}, + {file = "linkml-1.4.3.tar.gz", hash = "sha256:0e071d9d6a62924f650172b9fac09fd5626f744363c4d3e67494cdd142251489"}, +] [package.dependencies] antlr4-python3-runtime = ">=4.9.0,<4.10" @@ -480,6 +726,10 @@ description = "LinkML Data Operations API" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "linkml_dataops-0.1.0-py3-none-any.whl", hash = "sha256:193cf7f659e5f07946d2c2761896910d5f7151d91282543b1363801f68307f4c"}, + {file = "linkml_dataops-0.1.0.tar.gz", hash = "sha256:4550eab65e78b70dc3b9c651724a94ac2b1d1edb2fbe576465f1d6951a54ed04"}, +] [package.dependencies] jinja2 = "*" @@ -490,20 +740,26 @@ linkml-runtime = ">=1.1.6" [[package]] name = "linkml-runtime" -version = "1.3.7" +version = "1.4.3" description = "Runtime environment for LinkML, the Linked open data modeling language" category = "main" optional = false -python-versions = ">=3.7.1,<4.0.0" +python-versions = ">=3.7.6,<4.0.0" +files = [ + {file = "linkml-runtime-1.4.3.tar.gz", hash = "sha256:748ab9d3c7b417471d3077140ae2a11302d0735c12525f94f19c465473e1b3c2"}, + {file = "linkml_runtime-1.4.3-py3-none-any.whl", hash = "sha256:bf1ef87d4884955e786841ed2c71a4bbc8fa0fc4acc2fcaff6f590cf9e3b5ecb"}, +] [package.dependencies] click = "*" +curies = ">=0.4.0,<0.5.0" deprecated = "*" hbreader = "*" json-flattener = ">=0.1.9" jsonasobj2 = ">=1.0.4,<2.0.0" jsonschema = ">=3.2.0" prefixcommons = ">=0.1.12" +prefixmaps = ">=0.1.4" pyyaml = "*" rdflib = ">=6.0.0" requests = "*" @@ -515,6 +771,10 @@ description = "Python implementation of Markdown." category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "Markdown-3.3.7-py3-none-any.whl", hash = "sha256:f5da449a6e1c989a4cea2631aa8ee67caa5a2ef855d551c88f9e309f4634c621"}, + {file = "Markdown-3.3.7.tar.gz", hash = "sha256:cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874"}, +] [package.dependencies] importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} @@ -529,18 +789,22 @@ description = "Python port of markdown-it. Markdown parsing, done right!" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "markdown-it-py-2.1.0.tar.gz", hash = "sha256:cf7e59fed14b5ae17c0006eff14a2d9a00ed5f3a846148153899a0224e2c07da"}, + {file = "markdown_it_py-2.1.0-py3-none-any.whl", hash = "sha256:93de681e5c021a432c63147656fe21790bc01231e0cd2da73626f1aa3ac0fe27"}, +] [package.dependencies] mdurl = ">=0.1,<1.0" [package.extras] benchmarking = ["psutil", "pytest", "pytest-benchmark (>=3.2,<4.0)"] -code_style = ["pre-commit (==2.6)"] +code-style = ["pre-commit (==2.6)"] compare = ["commonmark (>=0.9.1,<0.10.0)", "markdown (>=3.3.6,<3.4.0)", "mistletoe (>=0.8.1,<0.9.0)", "mistune (>=2.0.2,<2.1.0)", "panflute (>=2.1.3,<2.2.0)"] linkify = ["linkify-it-py (>=1.0,<2.0)"] plugins = ["mdit-py-plugins"] profiling = ["gprof2dot"] -rtd = ["attrs", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx-book-theme"] +rtd = ["attrs", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] [[package]] @@ -550,6 +814,48 @@ description = "Safely add untrusted strings to HTML/XML markup." category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, + {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, +] [[package]] name = "mdit-py-plugins" @@ -558,12 +864,16 @@ description = "Collection of plugins for markdown-it-py" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "mdit-py-plugins-0.3.3.tar.gz", hash = "sha256:5cfd7e7ac582a594e23ba6546a2f406e94e42eb33ae596d0734781261c251260"}, + {file = "mdit_py_plugins-0.3.3-py3-none-any.whl", hash = "sha256:36d08a29def19ec43acdcd8ba471d3ebab132e7879d442760d963f19913e04b9"}, +] [package.dependencies] markdown-it-py = ">=1.0.0,<3.0.0" [package.extras] -code_style = ["pre-commit"] +code-style = ["pre-commit"] rtd = ["attrs", "myst-parser (>=0.16.1,<0.17.0)", "sphinx-book-theme (>=0.1.0,<0.2.0)"] testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] @@ -574,6 +884,10 @@ description = "Markdown URL utilities" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, + {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, +] [[package]] name = "mergedeep" @@ -582,6 +896,10 @@ description = "A deep merge function for 🐍." category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307"}, + {file = "mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8"}, +] [[package]] name = "mkdocs" @@ -590,6 +908,10 @@ description = "Project documentation with Markdown." category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "mkdocs-1.4.2-py3-none-any.whl", hash = "sha256:c8856a832c1e56702577023cd64cc5f84948280c1c0fcc6af4cd39006ea6aa8c"}, + {file = "mkdocs-1.4.2.tar.gz", hash = "sha256:8947af423a6d0facf41ea1195b8e1e8c85ad94ac95ae307fe11232e0424b11c5"}, +] [package.dependencies] click = ">=7.0" @@ -606,7 +928,7 @@ watchdog = ">=2.0" [package.extras] i18n = ["babel (>=2.9.0)"] -min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-import (==1.0)", "importlib-metadata (==4.3)", "jinja2 (==2.11.1)", "markdown (==3.2.1)", "markupsafe (==2.0.1)", "mergedeep (==1.3.4)", "packaging (==20.5)", "pyyaml-env-tag (==0.1)", "pyyaml (==5.1)", "typing-extensions (==3.10)", "watchdog (==2.0)"] +min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-import (==1.0)", "importlib-metadata (==4.3)", "jinja2 (==2.11.1)", "markdown (==3.2.1)", "markupsafe (==2.0.1)", "mergedeep (==1.3.4)", "packaging (==20.5)", "pyyaml (==5.1)", "pyyaml-env-tag (==0.1)", "typing-extensions (==3.10)", "watchdog (==2.0)"] [[package]] name = "mkdocs-material" @@ -615,6 +937,10 @@ description = "Documentation that simply works" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "mkdocs_material-8.5.11-py3-none-any.whl", hash = "sha256:c907b4b052240a5778074a30a78f31a1f8ff82d7012356dc26898b97559f082e"}, + {file = "mkdocs_material-8.5.11.tar.gz", hash = "sha256:b0ea0513fd8cab323e8a825d6692ea07fa83e917bb5db042e523afecc7064ab7"}, +] [package.dependencies] jinja2 = ">=3.0.2" @@ -632,6 +958,10 @@ description = "Extension pack for Python Markdown and MkDocs Material." category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "mkdocs_material_extensions-1.1.1-py3-none-any.whl", hash = "sha256:e41d9f38e4798b6617ad98ca8f7f1157b1e4385ac1459ca1e4ea219b556df945"}, + {file = "mkdocs_material_extensions-1.1.1.tar.gz", hash = "sha256:9c003da71e2cc2493d910237448c672e00cefc800d3d6ae93d2fc69979e3bd93"}, +] [[package]] name = "mkdocs-mermaid2-plugin" @@ -640,6 +970,10 @@ description = "A MkDocs plugin for including mermaid graphs in markdown sources" category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "mkdocs-mermaid2-plugin-0.6.0.tar.gz", hash = "sha256:99cca6db7c6b4a954a701dcb6b507191bc32a7b0b47eacf2885c1bacf77d1af1"}, + {file = "mkdocs_mermaid2_plugin-0.6.0-py3-none-any.whl", hash = "sha256:ffbe8a7daa7ed718cb800c44c5ce4c0ff413caebf7b8b63d9c4a998dfd78a64d"}, +] [package.dependencies] beautifulsoup4 = ">=4.6.3" @@ -649,6 +983,7 @@ mkdocs-material = "*" pymdown-extensions = ">=8.0" pyyaml = "*" requests = "*" +setuptools = ">=18.5" [[package]] name = "myst-parser" @@ -657,6 +992,10 @@ description = "An extended commonmark compliant parser, with bridges to docutils category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "myst-parser-0.18.1.tar.gz", hash = "sha256:79317f4bb2c13053dd6e64f9da1ba1da6cd9c40c8a430c447a7b146a594c246d"}, + {file = "myst_parser-0.18.1-py3-none-any.whl", hash = "sha256:61b275b85d9f58aa327f370913ae1bec26ebad372cc99f3ab85c8ec3ee8d9fb8"}, +] [package.dependencies] docutils = ">=0.15,<0.20" @@ -668,10 +1007,10 @@ sphinx = ">=4,<6" typing-extensions = "*" [package.extras] -code_style = ["pre-commit (>=2.12,<3.0)"] +code-style = ["pre-commit (>=2.12,<3.0)"] linkify = ["linkify-it-py (>=1.0,<2.0)"] -rtd = ["ipython", "sphinx-book-theme", "sphinx-design", "sphinxext-rediraffe (>=0.2.7,<0.3.0)", "sphinxcontrib.mermaid (>=0.7.1,<0.8.0)", "sphinxext-opengraph (>=0.6.3,<0.7.0)"] -testing = ["beautifulsoup4", "coverage", "pytest (>=6,<7)", "pytest-cov", "pytest-regressions", "pytest-param-files (>=0.3.4,<0.4.0)", "sphinx-pytest", "sphinx (<5.2)"] +rtd = ["ipython", "sphinx-book-theme", "sphinx-design", "sphinxcontrib.mermaid (>=0.7.1,<0.8.0)", "sphinxext-opengraph (>=0.6.3,<0.7.0)", "sphinxext-rediraffe (>=0.2.7,<0.3.0)"] +testing = ["beautifulsoup4", "coverage[toml]", "pytest (>=6,<7)", "pytest-cov", "pytest-param-files (>=0.3.4,<0.4.0)", "pytest-regressions", "sphinx (<5.2)", "sphinx-pytest"] [[package]] name = "openpyxl" @@ -680,6 +1019,10 @@ description = "A Python library to read/write Excel 2010 xlsx/xlsm files" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "openpyxl-3.0.10-py2.py3-none-any.whl", hash = "sha256:0ab6d25d01799f97a9464630abacbb34aafecdcaa0ef3cba6d6b3499867d0355"}, + {file = "openpyxl-3.0.10.tar.gz", hash = "sha256:e47805627aebcf860edb4edf7987b1309c1b3632f3750538ed962bbcc3bd7449"}, +] [package.dependencies] et-xmlfile = "*" @@ -691,6 +1034,10 @@ description = "Core utilities for Python packages" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "packaging-22.0-py3-none-any.whl", hash = "sha256:957e2148ba0e1a3b282772e791ef1d8083648bc131c8ab0c1feba110ce1146c3"}, + {file = "packaging-22.0.tar.gz", hash = "sha256:2198ec20bd4c017b8f9717e00f0c8714076fc2fd93816750ab48e2c41de2cfd3"}, +] [[package]] name = "parse" @@ -699,6 +1046,9 @@ description = "parse() is the opposite of format()" category = "dev" optional = false python-versions = "*" +files = [ + {file = "parse-1.19.0.tar.gz", hash = "sha256:9ff82852bcb65d139813e2a5197627a94966245c897796760a3a2a8eb66f020b"}, +] [[package]] name = "platformdirs" @@ -707,10 +1057,14 @@ description = "A small Python package for determining appropriate platform-speci category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "platformdirs-2.6.0-py3-none-any.whl", hash = "sha256:1a89a12377800c81983db6be069ec068eee989748799b946cce2a6e80dcc54ca"}, + {file = "platformdirs-2.6.0.tar.gz", hash = "sha256:b46ffafa316e6b83b47489d240ce17173f123a9b9c83282141c3daf26ad9ac2e"}, +] [package.extras] -docs = ["furo (>=2022.9.29)", "proselint (>=0.13)", "sphinx-autodoc-typehints (>=1.19.4)", "sphinx (>=5.3)"] -test = ["appdirs (==1.4.4)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest (>=7.2)"] +docs = ["furo (>=2022.9.29)", "proselint (>=0.13)", "sphinx (>=5.3)", "sphinx-autodoc-typehints (>=1.19.4)"] +test = ["appdirs (==1.4.4)", "pytest (>=7.2)", "pytest-cov (>=4)", "pytest-mock (>=3.10)"] [[package]] name = "pluggy" @@ -719,6 +1073,10 @@ description = "plugin and hook calling mechanisms for python" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, + {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, +] [package.extras] dev = ["pre-commit", "tox"] @@ -731,6 +1089,10 @@ description = "Python Lex & Yacc" category = "dev" optional = false python-versions = "*" +files = [ + {file = "ply-3.11-py2.py3-none-any.whl", hash = "sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce"}, + {file = "ply-3.11.tar.gz", hash = "sha256:00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3"}, +] [[package]] name = "prefixcommons" @@ -739,6 +1101,10 @@ description = "A python API for working with ID prefixes" category = "main" optional = false python-versions = ">=3.7,<4.0" +files = [ + {file = "prefixcommons-0.1.12-py3-none-any.whl", hash = "sha256:16dbc0a1f775e003c724f19a694fcfa3174608f5c8b0e893d494cf8098ac7f8b"}, + {file = "prefixcommons-0.1.12.tar.gz", hash = "sha256:22c4e2d37b63487b3ab48f0495b70f14564cb346a15220f23919eb0c1851f69f"}, +] [package.dependencies] click = ">=8.1.3,<9.0.0" @@ -750,9 +1116,13 @@ requests = ">=2.28.1,<3.0.0" name = "prefixmaps" version = "0.1.4" description = "A python library for retrieving semantic prefix maps" -category = "dev" +category = "main" optional = false python-versions = ">=3.7.6,<4.0.0" +files = [ + {file = "prefixmaps-0.1.4-py3-none-any.whl", hash = "sha256:845457a5149e56b676827d002200840ae487052f08879a8d6ca9093aa6b9213e"}, + {file = "prefixmaps-0.1.4.tar.gz", hash = "sha256:7ce9c8c1f1987f0341a71a2f869344e621b49c478c78a931817ce3dda5965980"}, +] [package.dependencies] importlib-metadata = ">=4.12.0,<5.0.0" @@ -765,6 +1135,10 @@ description = "library with cross-python path, ini-parsing, io, code, log facili category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, + {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, +] [[package]] name = "pydantic" @@ -773,6 +1147,44 @@ description = "Data validation and settings management using python type hints" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "pydantic-1.10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bb6ad4489af1bac6955d38ebcb95079a836af31e4c4f74aba1ca05bb9f6027bd"}, + {file = "pydantic-1.10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a1f5a63a6dfe19d719b1b6e6106561869d2efaca6167f84f5ab9347887d78b98"}, + {file = "pydantic-1.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:352aedb1d71b8b0736c6d56ad2bd34c6982720644b0624462059ab29bd6e5912"}, + {file = "pydantic-1.10.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:19b3b9ccf97af2b7519c42032441a891a5e05c68368f40865a90eb88833c2559"}, + {file = "pydantic-1.10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e9069e1b01525a96e6ff49e25876d90d5a563bc31c658289a8772ae186552236"}, + {file = "pydantic-1.10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:355639d9afc76bcb9b0c3000ddcd08472ae75318a6eb67a15866b87e2efa168c"}, + {file = "pydantic-1.10.2-cp310-cp310-win_amd64.whl", hash = "sha256:ae544c47bec47a86bc7d350f965d8b15540e27e5aa4f55170ac6a75e5f73b644"}, + {file = "pydantic-1.10.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a4c805731c33a8db4b6ace45ce440c4ef5336e712508b4d9e1aafa617dc9907f"}, + {file = "pydantic-1.10.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d49f3db871575e0426b12e2f32fdb25e579dea16486a26e5a0474af87cb1ab0a"}, + {file = "pydantic-1.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37c90345ec7dd2f1bcef82ce49b6235b40f282b94d3eec47e801baf864d15525"}, + {file = "pydantic-1.10.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b5ba54d026c2bd2cb769d3468885f23f43710f651688e91f5fb1edcf0ee9283"}, + {file = "pydantic-1.10.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:05e00dbebbe810b33c7a7362f231893183bcc4251f3f2ff991c31d5c08240c42"}, + {file = "pydantic-1.10.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2d0567e60eb01bccda3a4df01df677adf6b437958d35c12a3ac3e0f078b0ee52"}, + {file = "pydantic-1.10.2-cp311-cp311-win_amd64.whl", hash = "sha256:c6f981882aea41e021f72779ce2a4e87267458cc4d39ea990729e21ef18f0f8c"}, + {file = "pydantic-1.10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c4aac8e7103bf598373208f6299fa9a5cfd1fc571f2d40bf1dd1955a63d6eeb5"}, + {file = "pydantic-1.10.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81a7b66c3f499108b448f3f004801fcd7d7165fb4200acb03f1c2402da73ce4c"}, + {file = "pydantic-1.10.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bedf309630209e78582ffacda64a21f96f3ed2e51fbf3962d4d488e503420254"}, + {file = "pydantic-1.10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:9300fcbebf85f6339a02c6994b2eb3ff1b9c8c14f502058b5bf349d42447dcf5"}, + {file = "pydantic-1.10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:216f3bcbf19c726b1cc22b099dd409aa371f55c08800bcea4c44c8f74b73478d"}, + {file = "pydantic-1.10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:dd3f9a40c16daf323cf913593083698caee97df2804aa36c4b3175d5ac1b92a2"}, + {file = "pydantic-1.10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b97890e56a694486f772d36efd2ba31612739bc6f3caeee50e9e7e3ebd2fdd13"}, + {file = "pydantic-1.10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9cabf4a7f05a776e7793e72793cd92cc865ea0e83a819f9ae4ecccb1b8aa6116"}, + {file = "pydantic-1.10.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06094d18dd5e6f2bbf93efa54991c3240964bb663b87729ac340eb5014310624"}, + {file = "pydantic-1.10.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cc78cc83110d2f275ec1970e7a831f4e371ee92405332ebfe9860a715f8336e1"}, + {file = "pydantic-1.10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ee433e274268a4b0c8fde7ad9d58ecba12b069a033ecc4645bb6303c062d2e9"}, + {file = "pydantic-1.10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7c2abc4393dea97a4ccbb4ec7d8658d4e22c4765b7b9b9445588f16c71ad9965"}, + {file = "pydantic-1.10.2-cp38-cp38-win_amd64.whl", hash = "sha256:0b959f4d8211fc964772b595ebb25f7652da3f22322c007b6fed26846a40685e"}, + {file = "pydantic-1.10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c33602f93bfb67779f9c507e4d69451664524389546bacfe1bee13cae6dc7488"}, + {file = "pydantic-1.10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5760e164b807a48a8f25f8aa1a6d857e6ce62e7ec83ea5d5c5a802eac81bad41"}, + {file = "pydantic-1.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6eb843dcc411b6a2237a694f5e1d649fc66c6064d02b204a7e9d194dff81eb4b"}, + {file = "pydantic-1.10.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b8795290deaae348c4eba0cebb196e1c6b98bdbe7f50b2d0d9a4a99716342fe"}, + {file = "pydantic-1.10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:e0bedafe4bc165ad0a56ac0bd7695df25c50f76961da29c050712596cf092d6d"}, + {file = "pydantic-1.10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2e05aed07fa02231dbf03d0adb1be1d79cabb09025dd45aa094aa8b4e7b9dcda"}, + {file = "pydantic-1.10.2-cp39-cp39-win_amd64.whl", hash = "sha256:c1ba1afb396148bbc70e9eaa8c06c1716fdddabaf86e7027c5988bae2a829ab6"}, + {file = "pydantic-1.10.2-py3-none-any.whl", hash = "sha256:1b6ee725bd6e83ec78b1aa32c5b1fa67a3a65badddde3976bca5fe4568f27709"}, + {file = "pydantic-1.10.2.tar.gz", hash = "sha256:91b8e218852ef6007c2b98cd861601c6a09f1aa32bbbb74fab5b1c33d4a1e410"}, +] [package.dependencies] typing-extensions = ">=4.1.0" @@ -788,6 +1200,10 @@ description = "Pygments is a syntax highlighting package written in Python." category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "Pygments-2.13.0-py3-none-any.whl", hash = "sha256:f643f331ab57ba3c9d89212ee4a2dabc6e94f117cf4eefde99a0574720d14c42"}, + {file = "Pygments-2.13.0.tar.gz", hash = "sha256:56a8508ae95f98e2b9bdf93a6be5ae3f7d8af858b43e02c5a2ff083726be40c1"}, +] [package.extras] plugins = ["importlib-metadata"] @@ -799,6 +1215,10 @@ description = "Python JSON Schema Grammar interpreter" category = "dev" optional = false python-versions = "*" +files = [ + {file = "PyJSG-0.11.10-py3-none-any.whl", hash = "sha256:10af60ff42219be7e85bf7f11c19b648715b0b29eb2ddbd269e87069a7c3f26d"}, + {file = "PyJSG-0.11.10.tar.gz", hash = "sha256:4bd6e3ff2833fa2b395bbe803a2d72a5f0bab5b7285bccd0da1a1bc0aee88bfa"}, +] [package.dependencies] antlr4-python3-runtime = ">=4.9.3,<4.10.0" @@ -811,6 +1231,10 @@ description = "Extension pack for Python Markdown." category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "pymdown_extensions-9.9-py3-none-any.whl", hash = "sha256:ac698c15265680db5eb13cd4342abfcde2079ac01e5486028f47a1b41547b859"}, + {file = "pymdown_extensions-9.9.tar.gz", hash = "sha256:0f8fb7b74a37a61cc34e90b2c91865458b713ec774894ffad64353a5fce85cfc"}, +] [package.dependencies] markdown = ">=3.2" @@ -822,9 +1246,13 @@ description = "pyparsing module - Classes and methods to define and execute pars category = "main" optional = false python-versions = ">=3.6.8" +files = [ + {file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"}, + {file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"}, +] [package.extras] -diagrams = ["railroad-diagrams", "jinja2"] +diagrams = ["jinja2", "railroad-diagrams"] [[package]] name = "pyrsistent" @@ -833,6 +1261,30 @@ description = "Persistent/Functional/Immutable data structures" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "pyrsistent-0.19.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d6982b5a0237e1b7d876b60265564648a69b14017f3b5f908c5be2de3f9abb7a"}, + {file = "pyrsistent-0.19.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:187d5730b0507d9285a96fca9716310d572e5464cadd19f22b63a6976254d77a"}, + {file = "pyrsistent-0.19.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:055ab45d5911d7cae397dc418808d8802fb95262751872c841c170b0dbf51eed"}, + {file = "pyrsistent-0.19.2-cp310-cp310-win32.whl", hash = "sha256:456cb30ca8bff00596519f2c53e42c245c09e1a4543945703acd4312949bfd41"}, + {file = "pyrsistent-0.19.2-cp310-cp310-win_amd64.whl", hash = "sha256:b39725209e06759217d1ac5fcdb510e98670af9e37223985f330b611f62e7425"}, + {file = "pyrsistent-0.19.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2aede922a488861de0ad00c7630a6e2d57e8023e4be72d9d7147a9fcd2d30712"}, + {file = "pyrsistent-0.19.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:879b4c2f4d41585c42df4d7654ddffff1239dc4065bc88b745f0341828b83e78"}, + {file = "pyrsistent-0.19.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c43bec251bbd10e3cb58ced80609c5c1eb238da9ca78b964aea410fb820d00d6"}, + {file = "pyrsistent-0.19.2-cp37-cp37m-win32.whl", hash = "sha256:d690b18ac4b3e3cab73b0b7aa7dbe65978a172ff94970ff98d82f2031f8971c2"}, + {file = "pyrsistent-0.19.2-cp37-cp37m-win_amd64.whl", hash = "sha256:3ba4134a3ff0fc7ad225b6b457d1309f4698108fb6b35532d015dca8f5abed73"}, + {file = "pyrsistent-0.19.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a178209e2df710e3f142cbd05313ba0c5ebed0a55d78d9945ac7a4e09d923308"}, + {file = "pyrsistent-0.19.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e371b844cec09d8dc424d940e54bba8f67a03ebea20ff7b7b0d56f526c71d584"}, + {file = "pyrsistent-0.19.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:111156137b2e71f3a9936baf27cb322e8024dac3dc54ec7fb9f0bcf3249e68bb"}, + {file = "pyrsistent-0.19.2-cp38-cp38-win32.whl", hash = "sha256:e5d8f84d81e3729c3b506657dddfe46e8ba9c330bf1858ee33108f8bb2adb38a"}, + {file = "pyrsistent-0.19.2-cp38-cp38-win_amd64.whl", hash = "sha256:9cd3e9978d12b5d99cbdc727a3022da0430ad007dacf33d0bf554b96427f33ab"}, + {file = "pyrsistent-0.19.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f1258f4e6c42ad0b20f9cfcc3ada5bd6b83374516cd01c0960e3cb75fdca6770"}, + {file = "pyrsistent-0.19.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21455e2b16000440e896ab99e8304617151981ed40c29e9507ef1c2e4314ee95"}, + {file = "pyrsistent-0.19.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bfd880614c6237243ff53a0539f1cb26987a6dc8ac6e66e0c5a40617296a045e"}, + {file = "pyrsistent-0.19.2-cp39-cp39-win32.whl", hash = "sha256:71d332b0320642b3261e9fee47ab9e65872c2bd90260e5d225dabeed93cbd42b"}, + {file = "pyrsistent-0.19.2-cp39-cp39-win_amd64.whl", hash = "sha256:dec3eac7549869365fe263831f576c8457f6c833937c68542d08fde73457d291"}, + {file = "pyrsistent-0.19.2-py3-none-any.whl", hash = "sha256:ea6b79a02a28550c98b6ca9c35b9f492beaa54d7c5c9e9949555893c8a9234d0"}, + {file = "pyrsistent-0.19.2.tar.gz", hash = "sha256:bfa0351be89c9fcbcb8c9879b826f4353be10f58f8a677efab0c017bf7137ec2"}, +] [[package]] name = "pyshex" @@ -841,6 +1293,10 @@ description = "Python ShEx Implementation" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "PyShEx-0.8.1-py3-none-any.whl", hash = "sha256:6da1b10123e191abf8dcb6bf3e54aa3e1fcf771df5d1a0ed453217c8900c8e6a"}, + {file = "PyShEx-0.8.1.tar.gz", hash = "sha256:3c5c4d45fe27faaadae803cb008c41acf8ee784da7868b04fd84967e75be70d0"}, +] [package.dependencies] cfgraph = ">=0.2.1" @@ -860,6 +1316,10 @@ description = "PyShExC - Python ShEx compiler" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "PyShExC-0.9.1-py2.py3-none-any.whl", hash = "sha256:efc55ed5cb2453e9df569b03e282505e96bb06597934288f3b23dd980ef10028"}, + {file = "PyShExC-0.9.1.tar.gz", hash = "sha256:35a9975d4b9afeb20ef710fb6680871756381d0c39fbb5470b3b506581a304d3"}, +] [package.dependencies] antlr4-python3-runtime = ">=4.9.3,<4.10.0" @@ -876,6 +1336,10 @@ description = "pytest: simple powerful testing with Python" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "pytest-7.2.0-py3-none-any.whl", hash = "sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71"}, + {file = "pytest-7.2.0.tar.gz", hash = "sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59"}, +] [package.dependencies] attrs = ">=19.2.0" @@ -896,6 +1360,9 @@ description = "Configures logging and allows tweaking the log level with a py.te category = "main" optional = false python-versions = "*" +files = [ + {file = "pytest-logging-2015.11.4.tar.gz", hash = "sha256:cec5c85ecf18aab7b2ead5498a31b9f758680ef5a902b9054ab3f2bdbb77c896"}, +] [package.dependencies] pytest = ">=2.8.1" @@ -907,10 +1374,28 @@ description = "Extensions to the standard Python datetime module" category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] [package.dependencies] six = ">=1.5" +[[package]] +name = "pytrie" +version = "0.4.0" +description = "A pure Python implementation of the trie data structure." +category = "main" +optional = false +python-versions = "*" +files = [ + {file = "PyTrie-0.4.0.tar.gz", hash = "sha256:8f4488f402d3465993fb6b6efa09866849ed8cda7903b50647b7d0342b805379"}, +] + +[package.dependencies] +sortedcontainers = "*" + [[package]] name = "pytz" version = "2022.6" @@ -918,6 +1403,10 @@ description = "World timezone definitions, modern and historical" category = "dev" optional = false python-versions = "*" +files = [ + {file = "pytz-2022.6-py2.py3-none-any.whl", hash = "sha256:222439474e9c98fced559f1709d89e6c9cbf8d79c794ff3eb9f8800064291427"}, + {file = "pytz-2022.6.tar.gz", hash = "sha256:e89512406b793ca39f5971bc999cc538ce125c0e51c27941bef4568b460095e2"}, +] [[package]] name = "pyyaml" @@ -926,6 +1415,48 @@ description = "YAML parser and emitter for Python" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, + {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, + {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, + {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, + {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"}, + {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"}, + {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"}, + {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"}, + {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, + {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, + {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, + {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, + {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, + {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, + {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, + {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, + {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, + {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, + {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, + {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, +] [[package]] name = "pyyaml-env-tag" @@ -934,6 +1465,10 @@ description = "A custom YAML tag for referencing environment variables in YAML f category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "pyyaml_env_tag-0.1-py3-none-any.whl", hash = "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069"}, + {file = "pyyaml_env_tag-0.1.tar.gz", hash = "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb"}, +] [package.dependencies] pyyaml = "*" @@ -945,15 +1480,20 @@ description = "RDFLib is a Python library for working with RDF, a simple yet pow category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "rdflib-6.2.0-py3-none-any.whl", hash = "sha256:85c34a86dfc517a41e5f2425a41a0aceacc23983462b32e68610b9fad1383bca"}, + {file = "rdflib-6.2.0.tar.gz", hash = "sha256:62dc3c86d1712db0f55785baf8047f63731fa59b2682be03219cb89262065942"}, +] [package.dependencies] isodate = "*" pyparsing = "*" +setuptools = "*" [package.extras] berkeleydb = ["berkeleydb"] -dev = ["black (==22.6.0)", "flake8", "isort", "mypy", "pep8-naming", "types-setuptools", "flakeheaven"] -docs = ["myst-parser", "sphinx (<6)", "sphinxcontrib-apidoc", "sphinxcontrib-kroki", "sphinx-autodoc-typehints"] +dev = ["black (==22.6.0)", "flake8", "flakeheaven", "isort", "mypy", "pep8-naming", "types-setuptools"] +docs = ["myst-parser", "sphinx (<6)", "sphinx-autodoc-typehints", "sphinxcontrib-apidoc", "sphinxcontrib-kroki"] html = ["html5lib"] networkx = ["networkx"] tests = ["html5lib", "pytest", "pytest-cov"] @@ -965,6 +1505,10 @@ description = "rdflib extension adding JSON-LD parser and serializer" category = "dev" optional = false python-versions = "*" +files = [ + {file = "rdflib-jsonld-0.6.1.tar.gz", hash = "sha256:eda5a42a2e09f80d4da78e32b5c684bccdf275368f1541e6b7bcddfb1382a0e0"}, + {file = "rdflib_jsonld-0.6.1-py2.py3-none-any.whl", hash = "sha256:bcf84317e947a661bae0a3f2aee1eced697075fc4ac4db6065a3340ea0f10fc2"}, +] [package.dependencies] rdflib = ">=5.0.0" @@ -976,6 +1520,10 @@ description = "Shim for rdflib 5 and 6 incompatibilities" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "rdflib_shim-1.0.3-py3-none-any.whl", hash = "sha256:7a853e7750ef1e9bf4e35dea27d54e02d4ed087de5a9e0c329c4a6d82d647081"}, + {file = "rdflib_shim-1.0.3.tar.gz", hash = "sha256:d955d11e2986aab42b6830ca56ac6bc9c893abd1d049a161c6de2f1b99d4fc0d"}, +] [package.dependencies] rdflib = ">=5.0.0" @@ -988,6 +1536,10 @@ description = "Python HTTP for Humans." category = "main" optional = false python-versions = ">=3.7, <4" +files = [ + {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, + {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, +] [package.dependencies] certifi = ">=2017.4.17" @@ -997,7 +1549,7 @@ urllib3 = ">=1.21.1,<1.27" [package.extras] socks = ["PySocks (>=1.5.6,!=1.5.7)"] -use_chardet_on_py3 = ["chardet (>=3.0.2,<6)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] [[package]] name = "rfc3339-validator" @@ -1006,6 +1558,10 @@ description = "A pure python RFC3339 validator" category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, + {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, +] [package.dependencies] six = "*" @@ -1017,6 +1573,10 @@ description = "Parsing and validation of URIs (RFC 3986) and IRIs (RFC 3987)" category = "dev" optional = false python-versions = "*" +files = [ + {file = "rfc3987-1.3.8-py2.py3-none-any.whl", hash = "sha256:10702b1e51e5658843460b189b185c0366d2cf4cff716f13111b0ea9fd2dce53"}, + {file = "rfc3987-1.3.8.tar.gz", hash = "sha256:d3c4d257a560d544e9826b38bc81db676890c79ab9d7ac92b39c7a253d5ca733"}, +] [[package]] name = "ruamel.yaml" @@ -1025,6 +1585,10 @@ description = "ruamel.yaml is a YAML parser/emitter that supports roundtrip pres category = "dev" optional = false python-versions = ">=3" +files = [ + {file = "ruamel.yaml-0.17.21-py3-none-any.whl", hash = "sha256:742b35d3d665023981bd6d16b3d24248ce5df75fdb4e2924e93a05c1f8b61ca7"}, + {file = "ruamel.yaml-0.17.21.tar.gz", hash = "sha256:8b7ce697a2f212752a35c1ac414471dc16c424c9573be4926b56ff3f5d23b7af"}, +] [package.dependencies] "ruamel.yaml.clib" = {version = ">=0.2.6", markers = "platform_python_implementation == \"CPython\" and python_version < \"3.11\""} @@ -1040,6 +1604,59 @@ description = "C version of reader, parser and emitter for ruamel.yaml derived f category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d5859983f26d8cd7bb5c287ef452e8aacc86501487634573d260968f753e1d71"}, + {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:debc87a9516b237d0466a711b18b6ebeb17ba9f391eb7f91c649c5c4ec5006c7"}, + {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:df5828871e6648db72d1c19b4bd24819b80a755c4541d3409f0f7acd0f335c80"}, + {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:efa08d63ef03d079dcae1dfe334f6c8847ba8b645d08df286358b1f5293d24ab"}, + {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win32.whl", hash = "sha256:763d65baa3b952479c4e972669f679fe490eee058d5aa85da483ebae2009d231"}, + {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win_amd64.whl", hash = "sha256:d000f258cf42fec2b1bbf2863c61d7b8918d31ffee905da62dede869254d3b8a"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:045e0626baf1c52e5527bd5db361bc83180faaba2ff586e763d3d5982a876a9e"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_12_6_arm64.whl", hash = "sha256:721bc4ba4525f53f6a611ec0967bdcee61b31df5a56801281027a3a6d1c2daf5"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:41d0f1fa4c6830176eef5b276af04c89320ea616655d01327d5ce65e50575c94"}, + {file = "ruamel.yaml.clib-0.2.7-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:4b3a93bb9bc662fc1f99c5c3ea8e623d8b23ad22f861eb6fce9377ac07ad6072"}, + {file = "ruamel.yaml.clib-0.2.7-cp36-cp36m-macosx_12_0_arm64.whl", hash = "sha256:a234a20ae07e8469da311e182e70ef6b199d0fbeb6c6cc2901204dd87fb867e8"}, + {file = "ruamel.yaml.clib-0.2.7-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:15910ef4f3e537eea7fe45f8a5d19997479940d9196f357152a09031c5be59f3"}, + {file = "ruamel.yaml.clib-0.2.7-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:370445fd795706fd291ab00c9df38a0caed0f17a6fb46b0f607668ecb16ce763"}, + {file = "ruamel.yaml.clib-0.2.7-cp36-cp36m-win32.whl", hash = "sha256:ecdf1a604009bd35c674b9225a8fa609e0282d9b896c03dd441a91e5f53b534e"}, + {file = "ruamel.yaml.clib-0.2.7-cp36-cp36m-win_amd64.whl", hash = "sha256:f34019dced51047d6f70cb9383b2ae2853b7fc4dce65129a5acd49f4f9256646"}, + {file = "ruamel.yaml.clib-0.2.7-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2aa261c29a5545adfef9296b7e33941f46aa5bbd21164228e833412af4c9c75f"}, + {file = "ruamel.yaml.clib-0.2.7-cp37-cp37m-macosx_12_0_arm64.whl", hash = "sha256:f01da5790e95815eb5a8a138508c01c758e5f5bc0ce4286c4f7028b8dd7ac3d0"}, + {file = "ruamel.yaml.clib-0.2.7-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:40d030e2329ce5286d6b231b8726959ebbe0404c92f0a578c0e2482182e38282"}, + {file = "ruamel.yaml.clib-0.2.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:c3ca1fbba4ae962521e5eb66d72998b51f0f4d0f608d3c0347a48e1af262efa7"}, + {file = "ruamel.yaml.clib-0.2.7-cp37-cp37m-win32.whl", hash = "sha256:7bdb4c06b063f6fd55e472e201317a3bb6cdeeee5d5a38512ea5c01e1acbdd93"}, + {file = "ruamel.yaml.clib-0.2.7-cp37-cp37m-win_amd64.whl", hash = "sha256:be2a7ad8fd8f7442b24323d24ba0b56c51219513cfa45b9ada3b87b76c374d4b"}, + {file = "ruamel.yaml.clib-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:91a789b4aa0097b78c93e3dc4b40040ba55bef518f84a40d4442f713b4094acb"}, + {file = "ruamel.yaml.clib-0.2.7-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:99e77daab5d13a48a4054803d052ff40780278240a902b880dd37a51ba01a307"}, + {file = "ruamel.yaml.clib-0.2.7-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:3243f48ecd450eddadc2d11b5feb08aca941b5cd98c9b1db14b2fd128be8c697"}, + {file = "ruamel.yaml.clib-0.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:8831a2cedcd0f0927f788c5bdf6567d9dc9cc235646a434986a852af1cb54b4b"}, + {file = "ruamel.yaml.clib-0.2.7-cp38-cp38-win32.whl", hash = "sha256:3110a99e0f94a4a3470ff67fc20d3f96c25b13d24c6980ff841e82bafe827cac"}, + {file = "ruamel.yaml.clib-0.2.7-cp38-cp38-win_amd64.whl", hash = "sha256:92460ce908546ab69770b2e576e4f99fbb4ce6ab4b245345a3869a0a0410488f"}, + {file = "ruamel.yaml.clib-0.2.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5bc0667c1eb8f83a3752b71b9c4ba55ef7c7058ae57022dd9b29065186a113d9"}, + {file = "ruamel.yaml.clib-0.2.7-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:4a4d8d417868d68b979076a9be6a38c676eca060785abaa6709c7b31593c35d1"}, + {file = "ruamel.yaml.clib-0.2.7-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:bf9a6bc4a0221538b1a7de3ed7bca4c93c02346853f44e1cd764be0023cd3640"}, + {file = "ruamel.yaml.clib-0.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:a7b301ff08055d73223058b5c46c55638917f04d21577c95e00e0c4d79201a6b"}, + {file = "ruamel.yaml.clib-0.2.7-cp39-cp39-win32.whl", hash = "sha256:d5e51e2901ec2366b79f16c2299a03e74ba4531ddcfacc1416639c557aef0ad8"}, + {file = "ruamel.yaml.clib-0.2.7-cp39-cp39-win_amd64.whl", hash = "sha256:184faeaec61dbaa3cace407cffc5819f7b977e75360e8d5ca19461cd851a5fc5"}, + {file = "ruamel.yaml.clib-0.2.7.tar.gz", hash = "sha256:1f08fd5a2bea9c4180db71678e850b995d2a5f4537be0e94557668cf0f5f9497"}, +] + +[[package]] +name = "setuptools" +version = "67.0.0" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +category = "main" +optional = false +python-versions = ">=3.7" +files = [ + {file = "setuptools-67.0.0-py3-none-any.whl", hash = "sha256:9d790961ba6219e9ff7d9557622d2fe136816a264dd01d5997cfc057d804853d"}, + {file = "setuptools-67.0.0.tar.gz", hash = "sha256:883131c5b6efa70b9101c7ef30b2b7b780a4283d5fc1616383cdf22c83cbefe6"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] name = "shexjsg" @@ -1048,6 +1665,10 @@ description = "ShExJSG - Astract Syntax Tree for the ShEx 2.0 language" category = "dev" optional = false python-versions = "*" +files = [ + {file = "ShExJSG-0.8.2-py2.py3-none-any.whl", hash = "sha256:3b0d8432dd313bee9e1343382c5e02e9908dd941a7dd7342bf8c0200fe523766"}, + {file = "ShExJSG-0.8.2.tar.gz", hash = "sha256:f17a629fc577fa344382bdee143cd9ff86588537f9f811f66cea6f63cdbcd0b6"}, +] [package.dependencies] pyjsg = ">=0.11.10" @@ -1059,6 +1680,10 @@ description = "Python 2 and 3 compatibility utilities" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] [[package]] name = "snowballstemmer" @@ -1067,6 +1692,22 @@ description = "This package provides 29 stemmers for 28 languages generated from category = "dev" optional = false python-versions = "*" +files = [ + {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, + {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, +] + +[[package]] +name = "sortedcontainers" +version = "2.4.0" +description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" +category = "main" +optional = false +python-versions = "*" +files = [ + {file = "sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0"}, + {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, +] [[package]] name = "soupsieve" @@ -1075,6 +1716,10 @@ description = "A modern CSS selector implementation for Beautiful Soup." category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "soupsieve-2.3.2.post1-py3-none-any.whl", hash = "sha256:3b2503d3c7084a42b1ebd08116e5f81aadfaea95863628c80a3b774a11b7c759"}, + {file = "soupsieve-2.3.2.post1.tar.gz", hash = "sha256:fc53893b3da2c33de295667a0e19f078c14bf86544af307354de5fcf12a3f30d"}, +] [[package]] name = "sparqlslurper" @@ -1083,6 +1728,10 @@ description = "SPARQL Slurper for rdflib" category = "dev" optional = false python-versions = ">=3.7.4" +files = [ + {file = "sparqlslurper-0.5.1-py3-none-any.whl", hash = "sha256:ae49b2d8ce3dd38df7a40465b228ad5d33fb7e11b3f248d195f9cadfc9cfff87"}, + {file = "sparqlslurper-0.5.1.tar.gz", hash = "sha256:9282ebb064fc6152a58269d194cb1e7b275b0f095425a578d75b96dcc851f546"}, +] [package.dependencies] rdflib = ">=5.0.0" @@ -1096,12 +1745,16 @@ description = "SPARQL Endpoint interface to Python" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "SPARQLWrapper-2.0.0-py3-none-any.whl", hash = "sha256:c99a7204fff676ee28e6acef327dc1ff8451c6f7217dcd8d49e8872f324a8a20"}, + {file = "SPARQLWrapper-2.0.0.tar.gz", hash = "sha256:3fed3ebcc77617a4a74d2644b86fd88e0f32e7f7003ac7b2b334c026201731f1"}, +] [package.dependencies] rdflib = ">=6.1.1" [package.extras] -dev = ["setuptools (>=3.7.1)", "mypy (>=0.931)", "pandas (>=1.3.5)", "pandas-stubs (>=1.2.0.48)"] +dev = ["mypy (>=0.931)", "pandas (>=1.3.5)", "pandas-stubs (>=1.2.0.48)", "setuptools (>=3.7.1)"] docs = ["sphinx (<5)", "sphinx-rtd-theme"] keepalive = ["keepalive (>=0.5)"] pandas = ["pandas (>=1.3.5)"] @@ -1113,6 +1766,10 @@ description = "Python documentation generator" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "Sphinx-5.3.0.tar.gz", hash = "sha256:51026de0a9ff9fc13c05d74913ad66047e104f56a129ff73e174eb5c3ee794b5"}, + {file = "sphinx-5.3.0-py3-none-any.whl", hash = "sha256:060ca5c9f7ba57a08a1219e547b269fadf125ae25b06b9fa7f66768efb652d6d"}, +] [package.dependencies] alabaster = ">=0.7,<0.8" @@ -1135,8 +1792,8 @@ sphinxcontrib-serializinghtml = ">=1.1.5" [package.extras] docs = ["sphinxcontrib-websupport"] -lint = ["flake8 (>=3.5.0)", "flake8-comprehensions", "flake8-bugbear", "flake8-simplify", "isort", "mypy (>=0.981)", "sphinx-lint", "docutils-stubs", "types-typed-ast", "types-requests"] -test = ["pytest (>=4.6)", "html5lib", "typed-ast", "cython"] +lint = ["docutils-stubs", "flake8 (>=3.5.0)", "flake8-bugbear", "flake8-comprehensions", "flake8-simplify", "isort", "mypy (>=0.981)", "sphinx-lint", "types-requests", "types-typed-ast"] +test = ["cython", "html5lib", "pytest (>=4.6)", "typed_ast"] [[package]] name = "sphinx-click" @@ -1145,6 +1802,10 @@ description = "Sphinx extension that automatically documents click applications" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "sphinx-click-4.4.0.tar.gz", hash = "sha256:cc67692bd28f482c7f01531c61b64e9d2f069bfcf3d24cbbb51d4a84a749fa48"}, + {file = "sphinx_click-4.4.0-py3-none-any.whl", hash = "sha256:2821c10a68fc9ee6ce7c92fad26540d8d8c8f45e6d7258f0e4fb7529ae8fab49"}, +] [package.dependencies] click = ">=7.0" @@ -1158,12 +1819,16 @@ description = "Read the Docs theme for Sphinx" category = "dev" optional = false python-versions = "*" +files = [ + {file = "sphinx_rtd_theme-0.5.1-py2.py3-none-any.whl", hash = "sha256:fa6bebd5ab9a73da8e102509a86f3fcc36dec04a0b52ea80e5a033b2aba00113"}, + {file = "sphinx_rtd_theme-0.5.1.tar.gz", hash = "sha256:eda689eda0c7301a80cf122dad28b1861e5605cbf455558f3775e1e8200e83a5"}, +] [package.dependencies] sphinx = "*" [package.extras] -dev = ["transifex-client", "sphinxcontrib-httpdomain", "bump2version"] +dev = ["bump2version", "sphinxcontrib-httpdomain", "transifex-client"] [[package]] name = "sphinxcontrib-applehelp" @@ -1172,9 +1837,13 @@ description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"}, + {file = "sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:806111e5e962be97c29ec4c1e7fe277bfd19e9652fb1a4392105b43e01af885a"}, +] [package.extras] -lint = ["flake8", "mypy", "docutils-stubs"] +lint = ["docutils-stubs", "flake8", "mypy"] test = ["pytest"] [[package]] @@ -1184,9 +1853,13 @@ description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, + {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, +] [package.extras] -lint = ["flake8", "mypy", "docutils-stubs"] +lint = ["docutils-stubs", "flake8", "mypy"] test = ["pytest"] [[package]] @@ -1196,10 +1869,14 @@ description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML h category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "sphinxcontrib-htmlhelp-2.0.0.tar.gz", hash = "sha256:f5f8bb2d0d629f398bf47d0d69c07bc13b65f75a81ad9e2f71a63d4b7a2f6db2"}, + {file = "sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl", hash = "sha256:d412243dfb797ae3ec2b59eca0e52dac12e75a241bf0e4eb861e450d06c6ed07"}, +] [package.extras] -lint = ["flake8", "mypy", "docutils-stubs"] -test = ["pytest", "html5lib"] +lint = ["docutils-stubs", "flake8", "mypy"] +test = ["html5lib", "pytest"] [[package]] name = "sphinxcontrib-jsmath" @@ -1208,9 +1885,13 @@ description = "A sphinx extension which renders display math in HTML via JavaScr category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, + {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, +] [package.extras] -test = ["pytest", "flake8", "mypy"] +test = ["flake8", "mypy", "pytest"] [[package]] name = "sphinxcontrib-qthelp" @@ -1219,9 +1900,13 @@ description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp d category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, + {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, +] [package.extras] -lint = ["flake8", "mypy", "docutils-stubs"] +lint = ["docutils-stubs", "flake8", "mypy"] test = ["pytest"] [[package]] @@ -1231,9 +1916,13 @@ description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"}, + {file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"}, +] [package.extras] -lint = ["flake8", "mypy", "docutils-stubs"] +lint = ["docutils-stubs", "flake8", "mypy"] test = ["pytest"] [[package]] @@ -1243,29 +1932,72 @@ description = "Database Abstraction Library" category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +files = [ + {file = "SQLAlchemy-1.4.45-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:f1d3fb02a4d0b07d1351a4a52f159e5e7b3045c903468b7e9349ebf0020ffdb9"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9b7025d46aba946272f6b6b357a22f3787473ef27451f342df1a2a6de23743e3"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-win32.whl", hash = "sha256:26b8424b32eeefa4faad21decd7bdd4aade58640b39407bf43e7d0a7c1bc0453"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-win_amd64.whl", hash = "sha256:13578d1cda69bc5e76c59fec9180d6db7ceb71c1360a4d7861c37d87ea6ca0b1"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6cd53b4c756a6f9c6518a3dc9c05a38840f9ae442c91fe1abde50d73651b6922"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:ca152ffc7f0aa069c95fba46165030267ec5e4bb0107aba45e5e9e86fe4d9363"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06055476d38ed7915eeed22b78580556d446d175c3574a01b9eb04d91f3a8b2e"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:081e2a2d75466353c738ca2ee71c0cfb08229b4f9909b5fa085f75c48d021471"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96821d806c0c90c68ce3f2ce6dd529c10e5d7587961f31dd5c30e3bfddc4545d"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-win32.whl", hash = "sha256:c8051bff4ce48cbc98f11e95ac46bfd1e36272401070c010248a3230d099663f"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-win_amd64.whl", hash = "sha256:16ad798fc121cad5ea019eb2297127b08c54e1aa95fe17b3fea9fdbc5c34fe62"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:099efef0de9fbda4c2d7cb129e4e7f812007901942259d4e6c6e19bd69de1088"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:29a29d02c9e6f6b105580c5ed7afb722b97bc2e2fdb85e1d45d7ddd8440cfbca"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc10423b59d6d032d6dff0bb42aa06dc6a8824eb6029d70c7d1b6981a2e7f4d8"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-win32.whl", hash = "sha256:1a92685db3b0682776a5abcb5f9e9addb3d7d9a6d841a452a17ec2d8d457bea7"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-win_amd64.whl", hash = "sha256:db3ccbce4a861bf4338b254f95916fc68dd8b7aa50eea838ecdaf3a52810e9c0"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a62ae2ea3b940ce9c9cbd675489c2047921ce0a79f971d3082978be91bd58117"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a87f8595390764db333a1705591d0934973d132af607f4fa8b792b366eacbb3c"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9a21c1fb71c69c8ec65430160cd3eee44bbcea15b5a4e556f29d03f246f425ec"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7944b04e6fcf8d733964dd9ee36b6a587251a1a4049af3a9b846f6e64eb349a"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-win32.whl", hash = "sha256:a3bcd5e2049ceb97e8c273e6a84ff4abcfa1dc47b6d8bbd36e07cce7176610d3"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-win_amd64.whl", hash = "sha256:5953e225be47d80410ae519f865b5c341f541d8e383fb6d11f67fb71a45bf890"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:6a91b7883cb7855a27bc0637166eed622fdf1bb94a4d1630165e5dd88c7e64d3"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d458fd0566bc9e10b8be857f089e96b5ca1b1ef033226f24512f9ffdf485a8c0"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:88f4ad3b081c0dbb738886f8d425a5d983328670ee83b38192687d78fc82bd1e"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cd95a3e6ab46da2c5b0703e797a772f3fab44d085b3919a4f27339aa3b1f51d3"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-win32.whl", hash = "sha256:715f5859daa3bee6ecbad64501637fa4640ca6734e8cda6135e3898d5f8ccadd"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-win_amd64.whl", hash = "sha256:2d1539fbc82d2206380a86d6d7d0453764fdca5d042d78161bbfb8dd047c80ec"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:01aa76f324c9bbc0dcb2bc3d9e2a9d7ede4808afa1c38d40d5e2007e3163b206"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:416fe7d228937bd37990b5a429fd00ad0e49eabcea3455af7beed7955f192edd"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7e32ce2584564d9e068bb7e0ccd1810cbb0a824c0687f8016fe67e97c345a637"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:561605cfc26273825ed2fb8484428faf36e853c13e4c90c61c58988aeccb34ed"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-win32.whl", hash = "sha256:55ddb5585129c5d964a537c9e32a8a68a8c6293b747f3fa164e1c034e1657a98"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-win_amd64.whl", hash = "sha256:445914dcadc0b623bd9851260ee54915ecf4e3041a62d57709b18a0eed19f33b"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:2db887dbf05bcc3151de1c4b506b14764c6240a42e844b4269132a7584de1e5f"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52b90c9487e4449ad954624d01dea34c90cd8c104bce46b322c83654f37a23c5"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f61e54b8c2b389de1a8ad52394729c478c67712dbdcdadb52c2575e41dae94a5"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e91a5e45a2ea083fe344b3503405978dff14d60ef3aa836432c9ca8cd47806b6"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-win32.whl", hash = "sha256:0e068b8414d60dd35d43c693555fc3d2e1d822cef07960bb8ca3f1ee6c4ff762"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-win_amd64.whl", hash = "sha256:2d6f178ff2923730da271c8aa317f70cf0df11a4d1812f1d7a704b1cf29c5fe3"}, + {file = "SQLAlchemy-1.4.45.tar.gz", hash = "sha256:fd69850860093a3f69fefe0ab56d041edfdfe18510b53d9a2eaecba2f15fa795"}, +] [package.dependencies] greenlet = {version = "!=0.4.17", markers = "python_version >= \"3\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"} [package.extras] -aiomysql = ["greenlet (!=0.4.17)", "aiomysql"] -aiosqlite = ["typing_extensions (!=3.10.0.1)", "greenlet (!=0.4.17)", "aiosqlite"] +aiomysql = ["aiomysql", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing-extensions (!=3.10.0.1)"] asyncio = ["greenlet (!=0.4.17)"] -asyncmy = ["greenlet (!=0.4.17)", "asyncmy (>=0.2.3,!=0.2.4)"] -mariadb_connector = ["mariadb (>=1.0.1,!=1.1.2)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2)"] mssql = ["pyodbc"] -mssql_pymssql = ["pymssql"] -mssql_pyodbc = ["pyodbc"] -mypy = ["sqlalchemy2-stubs", "mypy (>=0.910)"] -mysql = ["mysqlclient (>=1.4.0,<2)", "mysqlclient (>=1.4.0)"] -mysql_connector = ["mysql-connector-python"] -oracle = ["cx_oracle (>=7,<8)", "cx_oracle (>=7)"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)", "sqlalchemy2-stubs"] +mysql = ["mysqlclient (>=1.4.0)", "mysqlclient (>=1.4.0,<2)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx-oracle (>=7)", "cx-oracle (>=7,<8)"] postgresql = ["psycopg2 (>=2.7)"] -postgresql_asyncpg = ["greenlet (!=0.4.17)", "asyncpg"] -postgresql_pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"] -postgresql_psycopg2binary = ["psycopg2-binary"] -postgresql_psycopg2cffi = ["psycopg2cffi"] -pymysql = ["pymysql (<1)", "pymysql"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +pymysql = ["pymysql", "pymysql (<1)"] sqlcipher = ["sqlcipher3-binary"] [[package]] @@ -1275,6 +2007,10 @@ description = "A lil' TOML parser" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, +] [[package]] name = "tox" @@ -1283,6 +2019,10 @@ description = "tox is a generic virtualenv management and test command line tool category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ + {file = "tox-3.27.1-py2.py3-none-any.whl", hash = "sha256:f52ca66eae115fcfef0e77ef81fd107133d295c97c52df337adedb8dfac6ab84"}, + {file = "tox-3.27.1.tar.gz", hash = "sha256:b2a920e35a668cc06942ffd1cf3a4fb221a4d909ca72191fb6d84b0b18a7be04"}, +] [package.dependencies] colorama = {version = ">=0.4.1", markers = "platform_system == \"Windows\""} @@ -1296,7 +2036,7 @@ virtualenv = ">=16.0.0,<20.0.0 || >20.0.0,<20.0.1 || >20.0.1,<20.0.2 || >20.0.2, [package.extras] docs = ["pygments-github-lexers (>=0.0.5)", "sphinx (>=2.0.0)", "sphinxcontrib-autoprogram (>=0.1.5)", "towncrier (>=18.5.0)"] -testing = ["flaky (>=3.4.0)", "freezegun (>=0.3.11)", "pytest (>=4.0.0)", "pytest-cov (>=2.5.1)", "pytest-mock (>=1.10.0)", "pytest-randomly (>=1.0.0)", "psutil (>=5.6.1)", "pathlib2 (>=2.3.3)"] +testing = ["flaky (>=3.4.0)", "freezegun (>=0.3.11)", "pathlib2 (>=2.3.3)", "psutil (>=5.6.1)", "pytest (>=4.0.0)", "pytest-cov (>=2.5.1)", "pytest-mock (>=1.10.0)", "pytest-randomly (>=1.0.0)"] [[package]] name = "typing-extensions" @@ -1305,6 +2045,10 @@ description = "Backported and Experimental Type Hints for Python 3.7+" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "typing_extensions-4.4.0-py3-none-any.whl", hash = "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e"}, + {file = "typing_extensions-4.4.0.tar.gz", hash = "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa"}, +] [[package]] name = "uri-template" @@ -1313,9 +2057,13 @@ description = "RFC 6570 URI Template Processor" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "uri_template-1.2.0-py3-none-any.whl", hash = "sha256:f1699c77b73b925cf4937eae31ab282a86dc885c333f2e942513f08f691fc7db"}, + {file = "uri_template-1.2.0.tar.gz", hash = "sha256:934e4d09d108b70eb8a24410af8615294d09d279ce0e7cbcdaef1bd21f932b06"}, +] [package.extras] -dev = ["mypy", "flake8 (<4.0.0)", "flake8-annotations", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-noqa", "flake8-requirements", "flake8-type-annotations", "flake8-use-fstring", "pep8-naming"] +dev = ["flake8 (<4.0.0)", "flake8-annotations", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-noqa", "flake8-requirements", "flake8-type-annotations", "flake8-use-fstring", "mypy", "pep8-naming"] [[package]] name = "urllib3" @@ -1324,10 +2072,14 @@ description = "HTTP library with thread-safe connection pooling, file post, and category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "urllib3-1.26.13-py2.py3-none-any.whl", hash = "sha256:47cc05d99aaa09c9e72ed5809b60e7ba354e64b59c9c173ac3018642d8bb41fc"}, + {file = "urllib3-1.26.13.tar.gz", hash = "sha256:c083dd0dce68dbfbe1129d5271cb90f9447dea7d52097c6e0126120c521ddea8"}, +] [package.extras] -brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"] -secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "urllib3-secure-extra", "ipaddress"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] +secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] [[package]] @@ -1337,6 +2089,10 @@ description = "Virtual Python Environment builder" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "virtualenv-20.17.1-py3-none-any.whl", hash = "sha256:ce3b1684d6e1a20a3e5ed36795a97dfc6af29bc3970ca8dab93e11ac6094b3c4"}, + {file = "virtualenv-20.17.1.tar.gz", hash = "sha256:f8b927684efc6f1cc206c9db297a570ab9ad0e51c16fa9e45487d36d1905c058"}, +] [package.dependencies] distlib = ">=0.3.6,<1" @@ -1354,6 +2110,36 @@ description = "Filesystem events monitoring" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "watchdog-2.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ed91c3ccfc23398e7aa9715abf679d5c163394b8cad994f34f156d57a7c163dc"}, + {file = "watchdog-2.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:76a2743402b794629a955d96ea2e240bd0e903aa26e02e93cd2d57b33900962b"}, + {file = "watchdog-2.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:920a4bda7daa47545c3201a3292e99300ba81ca26b7569575bd086c865889090"}, + {file = "watchdog-2.2.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ceaa9268d81205876bedb1069f9feab3eccddd4b90d9a45d06a0df592a04cae9"}, + {file = "watchdog-2.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1893d425ef4fb4f129ee8ef72226836619c2950dd0559bba022b0818c63a7b60"}, + {file = "watchdog-2.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9e99c1713e4436d2563f5828c8910e5ff25abd6ce999e75f15c15d81d41980b6"}, + {file = "watchdog-2.2.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a5bd9e8656d07cae89ac464ee4bcb6f1b9cecbedc3bf1334683bed3d5afd39ba"}, + {file = "watchdog-2.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3a048865c828389cb06c0bebf8a883cec3ae58ad3e366bcc38c61d8455a3138f"}, + {file = "watchdog-2.2.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e722755d995035dd32177a9c633d158f2ec604f2a358b545bba5bed53ab25bca"}, + {file = "watchdog-2.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:af4b5c7ba60206759a1d99811b5938ca666ea9562a1052b410637bb96ff97512"}, + {file = "watchdog-2.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:619d63fa5be69f89ff3a93e165e602c08ed8da402ca42b99cd59a8ec115673e1"}, + {file = "watchdog-2.2.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1f2b0665c57358ce9786f06f5475bc083fea9d81ecc0efa4733fd0c320940a37"}, + {file = "watchdog-2.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:441024df19253bb108d3a8a5de7a186003d68564084576fecf7333a441271ef7"}, + {file = "watchdog-2.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1a410dd4d0adcc86b4c71d1317ba2ea2c92babaf5b83321e4bde2514525544d5"}, + {file = "watchdog-2.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:28704c71afdb79c3f215c90231e41c52b056ea880b6be6cee035c6149d658ed1"}, + {file = "watchdog-2.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2ac0bd7c206bb6df78ef9e8ad27cc1346f2b41b1fef610395607319cdab89bc1"}, + {file = "watchdog-2.2.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:27e49268735b3c27310883012ab3bd86ea0a96dcab90fe3feb682472e30c90f3"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:2af1a29fd14fc0a87fb6ed762d3e1ae5694dcde22372eebba50e9e5be47af03c"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:c7bd98813d34bfa9b464cf8122e7d4bec0a5a427399094d2c17dd5f70d59bc61"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_i686.whl", hash = "sha256:56fb3f40fc3deecf6e518303c7533f5e2a722e377b12507f6de891583f1b48aa"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:74535e955359d79d126885e642d3683616e6d9ab3aae0e7dcccd043bd5a3ff4f"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:cf05e6ff677b9655c6e9511d02e9cc55e730c4e430b7a54af9c28912294605a4"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:d6ae890798a3560688b441ef086bb66e87af6b400a92749a18b856a134fc0318"}, + {file = "watchdog-2.2.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:e5aed2a700a18c194c39c266900d41f3db0c1ebe6b8a0834b9995c835d2ca66e"}, + {file = "watchdog-2.2.0-py3-none-win32.whl", hash = "sha256:d0fb5f2b513556c2abb578c1066f5f467d729f2eb689bc2db0739daf81c6bb7e"}, + {file = "watchdog-2.2.0-py3-none-win_amd64.whl", hash = "sha256:1f8eca9d294a4f194ce9df0d97d19b5598f310950d3ac3dd6e8d25ae456d4c8a"}, + {file = "watchdog-2.2.0-py3-none-win_ia64.whl", hash = "sha256:ad0150536469fa4b693531e497ffe220d5b6cd76ad2eda474a5e641ee204bbb6"}, + {file = "watchdog-2.2.0.tar.gz", hash = "sha256:83cf8bc60d9c613b66a4c018051873d6273d9e45d040eed06d6a96241bd8ec01"}, +] [package.extras] watchmedo = ["PyYAML (>=3.10)"] @@ -1365,6 +2151,10 @@ description = "A library for working with color names and color values formats d category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "webcolors-1.12-py3-none-any.whl", hash = "sha256:d98743d81d498a2d3eaf165196e65481f0d2ea85281463d856b1e51b09f62dce"}, + {file = "webcolors-1.12.tar.gz", hash = "sha256:16d043d3a08fd6a1b1b7e3e9e62640d09790dce80d2bdd4792a175b35fe794a9"}, +] [[package]] name = "wrapt" @@ -1373,133 +2163,90 @@ description = "Module for decorators, wrappers and monkey patching." category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ + {file = "wrapt-1.14.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1b376b3f4896e7930f1f772ac4b064ac12598d1c38d04907e696cc4d794b43d3"}, + {file = "wrapt-1.14.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:903500616422a40a98a5a3c4ff4ed9d0066f3b4c951fa286018ecdf0750194ef"}, + {file = "wrapt-1.14.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:5a9a0d155deafd9448baff28c08e150d9b24ff010e899311ddd63c45c2445e28"}, + {file = "wrapt-1.14.1-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:ddaea91abf8b0d13443f6dac52e89051a5063c7d014710dcb4d4abb2ff811a59"}, + {file = "wrapt-1.14.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:36f582d0c6bc99d5f39cd3ac2a9062e57f3cf606ade29a0a0d6b323462f4dd87"}, + {file = "wrapt-1.14.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:7ef58fb89674095bfc57c4069e95d7a31cfdc0939e2a579882ac7d55aadfd2a1"}, + {file = "wrapt-1.14.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:e2f83e18fe2f4c9e7db597e988f72712c0c3676d337d8b101f6758107c42425b"}, + {file = "wrapt-1.14.1-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:ee2b1b1769f6707a8a445162ea16dddf74285c3964f605877a20e38545c3c462"}, + {file = "wrapt-1.14.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:833b58d5d0b7e5b9832869f039203389ac7cbf01765639c7309fd50ef619e0b1"}, + {file = "wrapt-1.14.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:80bb5c256f1415f747011dc3604b59bc1f91c6e7150bd7db03b19170ee06b320"}, + {file = "wrapt-1.14.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:07f7a7d0f388028b2df1d916e94bbb40624c59b48ecc6cbc232546706fac74c2"}, + {file = "wrapt-1.14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:02b41b633c6261feff8ddd8d11c711df6842aba629fdd3da10249a53211a72c4"}, + {file = "wrapt-1.14.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2fe803deacd09a233e4762a1adcea5db5d31e6be577a43352936179d14d90069"}, + {file = "wrapt-1.14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:257fd78c513e0fb5cdbe058c27a0624c9884e735bbd131935fd49e9fe719d310"}, + {file = "wrapt-1.14.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4fcc4649dc762cddacd193e6b55bc02edca674067f5f98166d7713b193932b7f"}, + {file = "wrapt-1.14.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:11871514607b15cfeb87c547a49bca19fde402f32e2b1c24a632506c0a756656"}, + {file = "wrapt-1.14.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8ad85f7f4e20964db4daadcab70b47ab05c7c1cf2a7c1e51087bfaa83831854c"}, + {file = "wrapt-1.14.1-cp310-cp310-win32.whl", hash = "sha256:a9a52172be0b5aae932bef82a79ec0a0ce87288c7d132946d645eba03f0ad8a8"}, + {file = "wrapt-1.14.1-cp310-cp310-win_amd64.whl", hash = "sha256:6d323e1554b3d22cfc03cd3243b5bb815a51f5249fdcbb86fda4bf62bab9e164"}, + {file = "wrapt-1.14.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:43ca3bbbe97af00f49efb06e352eae40434ca9d915906f77def219b88e85d907"}, + {file = "wrapt-1.14.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:6b1a564e6cb69922c7fe3a678b9f9a3c54e72b469875aa8018f18b4d1dd1adf3"}, + {file = "wrapt-1.14.1-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:00b6d4ea20a906c0ca56d84f93065b398ab74b927a7a3dbd470f6fc503f95dc3"}, + {file = "wrapt-1.14.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:a85d2b46be66a71bedde836d9e41859879cc54a2a04fad1191eb50c2066f6e9d"}, + {file = "wrapt-1.14.1-cp35-cp35m-win32.whl", hash = "sha256:dbcda74c67263139358f4d188ae5faae95c30929281bc6866d00573783c422b7"}, + {file = "wrapt-1.14.1-cp35-cp35m-win_amd64.whl", hash = "sha256:b21bb4c09ffabfa0e85e3a6b623e19b80e7acd709b9f91452b8297ace2a8ab00"}, + {file = "wrapt-1.14.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:9e0fd32e0148dd5dea6af5fee42beb949098564cc23211a88d799e434255a1f4"}, + {file = "wrapt-1.14.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9736af4641846491aedb3c3f56b9bc5568d92b0692303b5a305301a95dfd38b1"}, + {file = "wrapt-1.14.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5b02d65b9ccf0ef6c34cba6cf5bf2aab1bb2f49c6090bafeecc9cd81ad4ea1c1"}, + {file = "wrapt-1.14.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21ac0156c4b089b330b7666db40feee30a5d52634cc4560e1905d6529a3897ff"}, + {file = "wrapt-1.14.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:9f3e6f9e05148ff90002b884fbc2a86bd303ae847e472f44ecc06c2cd2fcdb2d"}, + {file = "wrapt-1.14.1-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:6e743de5e9c3d1b7185870f480587b75b1cb604832e380d64f9504a0535912d1"}, + {file = "wrapt-1.14.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:d79d7d5dc8a32b7093e81e97dad755127ff77bcc899e845f41bf71747af0c569"}, + {file = "wrapt-1.14.1-cp36-cp36m-win32.whl", hash = "sha256:81b19725065dcb43df02b37e03278c011a09e49757287dca60c5aecdd5a0b8ed"}, + {file = "wrapt-1.14.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b014c23646a467558be7da3d6b9fa409b2c567d2110599b7cf9a0c5992b3b471"}, + {file = "wrapt-1.14.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:88bd7b6bd70a5b6803c1abf6bca012f7ed963e58c68d76ee20b9d751c74a3248"}, + {file = "wrapt-1.14.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5901a312f4d14c59918c221323068fad0540e34324925c8475263841dbdfe68"}, + {file = "wrapt-1.14.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d77c85fedff92cf788face9bfa3ebaa364448ebb1d765302e9af11bf449ca36d"}, + {file = "wrapt-1.14.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d649d616e5c6a678b26d15ece345354f7c2286acd6db868e65fcc5ff7c24a77"}, + {file = "wrapt-1.14.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7d2872609603cb35ca513d7404a94d6d608fc13211563571117046c9d2bcc3d7"}, + {file = "wrapt-1.14.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:ee6acae74a2b91865910eef5e7de37dc6895ad96fa23603d1d27ea69df545015"}, + {file = "wrapt-1.14.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:2b39d38039a1fdad98c87279b48bc5dce2c0ca0d73483b12cb72aa9609278e8a"}, + {file = "wrapt-1.14.1-cp37-cp37m-win32.whl", hash = "sha256:60db23fa423575eeb65ea430cee741acb7c26a1365d103f7b0f6ec412b893853"}, + {file = "wrapt-1.14.1-cp37-cp37m-win_amd64.whl", hash = "sha256:709fe01086a55cf79d20f741f39325018f4df051ef39fe921b1ebe780a66184c"}, + {file = "wrapt-1.14.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8c0ce1e99116d5ab21355d8ebe53d9460366704ea38ae4d9f6933188f327b456"}, + {file = "wrapt-1.14.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e3fb1677c720409d5f671e39bac6c9e0e422584e5f518bfd50aa4cbbea02433f"}, + {file = "wrapt-1.14.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:642c2e7a804fcf18c222e1060df25fc210b9c58db7c91416fb055897fc27e8cc"}, + {file = "wrapt-1.14.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b7c050ae976e286906dd3f26009e117eb000fb2cf3533398c5ad9ccc86867b1"}, + {file = "wrapt-1.14.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef3f72c9666bba2bab70d2a8b79f2c6d2c1a42a7f7e2b0ec83bb2f9e383950af"}, + {file = "wrapt-1.14.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:01c205616a89d09827986bc4e859bcabd64f5a0662a7fe95e0d359424e0e071b"}, + {file = "wrapt-1.14.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5a0f54ce2c092aaf439813735584b9537cad479575a09892b8352fea5e988dc0"}, + {file = "wrapt-1.14.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2cf71233a0ed05ccdabe209c606fe0bac7379fdcf687f39b944420d2a09fdb57"}, + {file = "wrapt-1.14.1-cp38-cp38-win32.whl", hash = "sha256:aa31fdcc33fef9eb2552cbcbfee7773d5a6792c137b359e82879c101e98584c5"}, + {file = "wrapt-1.14.1-cp38-cp38-win_amd64.whl", hash = "sha256:d1967f46ea8f2db647c786e78d8cc7e4313dbd1b0aca360592d8027b8508e24d"}, + {file = "wrapt-1.14.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3232822c7d98d23895ccc443bbdf57c7412c5a65996c30442ebe6ed3df335383"}, + {file = "wrapt-1.14.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:988635d122aaf2bdcef9e795435662bcd65b02f4f4c1ae37fbee7401c440b3a7"}, + {file = "wrapt-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cca3c2cdadb362116235fdbd411735de4328c61425b0aa9f872fd76d02c4e86"}, + {file = "wrapt-1.14.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d52a25136894c63de15a35bc0bdc5adb4b0e173b9c0d07a2be9d3ca64a332735"}, + {file = "wrapt-1.14.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40e7bc81c9e2b2734ea4bc1aceb8a8f0ceaac7c5299bc5d69e37c44d9081d43b"}, + {file = "wrapt-1.14.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b9b7a708dd92306328117d8c4b62e2194d00c365f18eff11a9b53c6f923b01e3"}, + {file = "wrapt-1.14.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6a9a25751acb379b466ff6be78a315e2b439d4c94c1e99cb7266d40a537995d3"}, + {file = "wrapt-1.14.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:34aa51c45f28ba7f12accd624225e2b1e5a3a45206aa191f6f9aac931d9d56fe"}, + {file = "wrapt-1.14.1-cp39-cp39-win32.whl", hash = "sha256:dee0ce50c6a2dd9056c20db781e9c1cfd33e77d2d569f5d1d9321c641bb903d5"}, + {file = "wrapt-1.14.1-cp39-cp39-win_amd64.whl", hash = "sha256:dee60e1de1898bde3b238f18340eec6148986da0455d8ba7848d50470a7a32fb"}, + {file = "wrapt-1.14.1.tar.gz", hash = "sha256:380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d"}, +] [[package]] name = "zipp" version = "3.11.0" description = "Backport of pathlib-compatible object wrapper for zip files" -category = "dev" +category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "zipp-3.11.0-py3-none-any.whl", hash = "sha256:83a28fcb75844b5c0cdaf5aa4003c2d728c77e05f5aeabe8e95e56727005fbaa"}, + {file = "zipp-3.11.0.tar.gz", hash = "sha256:a7a22e05929290a67401440b39690ae6563279bced5f314609d9d03798f56766"}, +] [package.extras] -docs = ["sphinx (>=3.5)", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "furo", "jaraco.tidelift (>=1.4)"] -testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "flake8 (<5)", "pytest-cov", "pytest-enabler (>=1.3)", "jaraco.itertools", "func-timeout", "jaraco.functools", "more-itertools", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "pytest-flake8"] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)"] +testing = ["flake8 (<5)", "func-timeout", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "^3.9" -content-hash = "0fb3f2b153c15d33929305b0d812980e83a0695d21e0318521aa7c9084027707" - -[metadata.files] -alabaster = [] -antlr4-python3-runtime = [] -arrow = [] -attrs = [] -babel = [] -beautifulsoup4 = [] -certifi = [] -cfgraph = [] -chardet = [] -charset-normalizer = [] -click = [] -colorama = [] -decorator = [] -deprecated = [] -distlib = [] -docutils = [] -editorconfig = [] -et-xmlfile = [] -exceptiongroup = [] -filelock = [] -fqdn = [] -ghp-import = [] -graphviz = [] -greenlet = [] -hbreader = [] -idna = [] -imagesize = [] -importlib-metadata = [] -iniconfig = [] -isodate = [] -isoduration = [] -jinja2 = [] -jsbeautifier = [] -json-flattener = [] -jsonasobj = [] -jsonasobj2 = [] -jsonpatch = [] -jsonpath-ng = [] -jsonpointer = [] -jsonschema = [] -linkml = [] -linkml-dataops = [] -linkml-runtime = [] -markdown = [] -markdown-it-py = [] -markupsafe = [] -mdit-py-plugins = [] -mdurl = [] -mergedeep = [] -mkdocs = [] -mkdocs-material = [] -mkdocs-material-extensions = [] -mkdocs-mermaid2-plugin = [] -myst-parser = [] -openpyxl = [] -packaging = [] -parse = [] -platformdirs = [] -pluggy = [] -ply = [] -prefixcommons = [] -prefixmaps = [] -py = [] -pydantic = [] -pygments = [] -pyjsg = [] -pymdown-extensions = [] -pyparsing = [] -pyrsistent = [] -pyshex = [] -pyshexc = [] -pytest = [] -pytest-logging = [] -python-dateutil = [] -pytz = [] -pyyaml = [] -pyyaml-env-tag = [] -rdflib = [] -rdflib-jsonld = [] -rdflib-shim = [] -requests = [] -rfc3339-validator = [] -rfc3987 = [] -"ruamel.yaml" = [] -"ruamel.yaml.clib" = [] -shexjsg = [] -six = [] -snowballstemmer = [] -soupsieve = [] -sparqlslurper = [] -sparqlwrapper = [] -sphinx = [] -sphinx-click = [] -sphinx-rtd-theme = [] -sphinxcontrib-applehelp = [] -sphinxcontrib-devhelp = [] -sphinxcontrib-htmlhelp = [] -sphinxcontrib-jsmath = [] -sphinxcontrib-qthelp = [] -sphinxcontrib-serializinghtml = [] -sqlalchemy = [] -tomli = [] -tox = [] -typing-extensions = [] -uri-template = [] -urllib3 = [] -virtualenv = [] -watchdog = [] -webcolors = [] -wrapt = [] -zipp = [] +content-hash = "4e894cc16afd731b9b0a9b522d8ae73e21e2855b649006996a35a82cff67e401" diff --git a/pyproject.toml b/pyproject.toml index ecca5197..67ae6890 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,13 +34,16 @@ packages = [ [tool.poetry.dependencies] python = "^3.9" -linkml-runtime = "^1.3.0" +linkml-runtime = "^1.4.3" [tool.poetry.dev-dependencies] linkml = "^1.4.2" mkdocs-material = "^8.2.8" mkdocs-mermaid2-plugin = "^0.6.0" +[tool.poetry.group.dev.dependencies] +linkml = "^1.4.3" + [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" diff --git a/tests/input/examples/SchemaDefinition-dynamic-enums.yaml b/tests/input/examples/SchemaDefinition-dynamic-enums.yaml deleted file mode 100644 index a62f3dc1..00000000 --- a/tests/input/examples/SchemaDefinition-dynamic-enums.yaml +++ /dev/null @@ -1,171 +0,0 @@ -id: https://w3id.org/linkml/examples/enums -title: Dynamic Enums Example -name: dynamicenums-example -description: This demonstrates the use of dynamic enums -license: https://creativecommons.org/publicdomain/zero/1.0/ - -prefixes: - linkml: https://w3id.org/linkml/ - ex: https://w3id.org/linkml/examples/enums/ - sh: https://w3id.org/shacl/ - bioregistry: https://bioregistry.io/registry/ - MONDO: http://purl.obolibrary.org/obo/MONDO_ - NCIT: http://purl.obolibrary.org/obo/NCIT_ - loinc: http://loinc.org/ - -default_prefix: ex -default_range: string - -default_curi_maps: - - semweb_context - -emit_prefixes: - - linkml - - rdf - - rdfs - - xsd - - owl - -imports: - - linkml:types - - -#================================== -# Classes # -#================================== - -classes: - HumanSample: - slots: - - name - - disease - - -#================================== -# Slots # -#================================== - -slots: - name: - range: string - disease: - range: HumanDisease - vital_status: - enum_range: - permissible_values: - LIVING: - DEAD: - UNDEAD: - -#================================== -# Enums -#================================== - -enums: - Disease: - reachable_from: - source_ontology: bioregistry:mondo - source_nodes: - - MONDO:0000001 ## disease or disorder - is_direct: false - relationship_types: - - rdfs:subClassOf - minus: - permissible_values: - root_node: - meaning: MONDO:0000001 ## disease or disorder - - HumanDisease: - description: Extends the Disease value set, including NCIT neoplasms, excluding non-human diseases - inherits: - - Disease - include: - - reachable_from: - source_ontology: bioregistry:ncit - source_nodes: - - NCIT:C3262 - minus: - - reachable_from: - source_ontology: bioregistry:mondo - source_nodes: - - MONDO:0005583 ## non-human animal disease - relationship_types: - - rdfs:subClassOf - - permissible_values: - NOT_THIS_ONE: - meaning: MONDO:9999 - description: Example of excluding a single node - - LoincExample: - enum_uri: http://hl7.org/fhir/ValueSet/example-intensional - see_also: - - https://build.fhir.org/valueset-example-intensional.json.html - include: - - reachable_from: - source_ontology: "loinc:" - source_nodes: - - loinc:LP43571-6 - is_direct: true - minus: - concepts: - - LOINC:5932-9 - - HCAExample: - see_also: - - https://github.com/linkml/linkml/issues/274 - include: - - reachable_from: - source_ontology: bioregistry:go - source_nodes: - - GO:0007049 - - GO:0022403 - include_self: false - relationship_types: - - rdfs:subClassOf - minus: - concepts: - - LOINC:5932-9 - - BodyPartEnum: - reachable_from: - source_ontology: obo:cl - source_nodes: - - CL:0000540 ## neuron - include_self: false - relationship_types: - - rdfs:subClassOf - - Brand: - enum_uri: wikidata:Q431289 - include: - - reachable_from: - source_ontology: bioregistry:wikidata - source_nodes: - - wikidata:Q431289 - include_self: false - relationship_types: - - wdp:P31 - - wdp:P279 - - SerumCholesterolExample: - description: > - This is an example value set that includes all the LOINC codes for serum/plasma cholesterol from v2.36. - code_set: http://hl7.org/fhir/ValueSet/serum-cholesterol - code_set_version: "1.0.0" - pv_formula: CODE - include: - - concepts: - - LP43571-6 - minus: - - concepts: - - 5932-9 - reachable_from: - source_ontology: http://loinc.org - source_nodes: - - LP43571-6 - relationship_types: null - is_direct: true - include_self: true - traverse_up: false - concepts: - - http://loinc.org/LP43571-6