From 1f70299cd4307ef368f215bd4b8045940c053b50 Mon Sep 17 00:00:00 2001 From: cmungall Date: Mon, 29 Jan 2024 17:00:52 -0800 Subject: [PATCH 1/3] Bundling linkml-model 1.7.0rc1 --- linkml_runtime/linkml_model/annotations.py | 8 +- linkml_runtime/linkml_model/array.py | 419 - linkml_runtime/linkml_model/datasets.py | 50 +- linkml_runtime/linkml_model/excel/meta.xlsx | Bin 26863 -> 27391 bytes linkml_runtime/linkml_model/extensions.py | 8 +- .../linkml_model/graphql/meta.graphql | 32 +- .../linkml_model/jsonld/meta.context.jsonld | 13 +- .../linkml_model/jsonld/meta.jsonld | 70 +- .../linkml_model/jsonschema/meta.schema.json | 143 +- linkml_runtime/linkml_model/linkml_files.py | 2 +- linkml_runtime/linkml_model/mappings.py | 6 +- linkml_runtime/linkml_model/meta.py | 161 +- .../docs/specification/01introduction.md | 2 +- .../model/docs/specification/03schemas.md | 272 +- .../linkml_model/model/schema/array.yaml | 162 +- .../linkml_model/model/schema/datasets.yaml | 2 + .../linkml_model/model/schema/meta.yaml | 33 +- linkml_runtime/linkml_model/owl/meta.owl.ttl | 6987 +++++++++-------- .../linkml_model/prefixmap/meta.yaml | 1 + .../linkml_model/protobuf/meta.proto | 22 +- .../linkml_model/shacl/meta.shacl.ttl | 6806 ++++++++-------- linkml_runtime/linkml_model/shex/meta.shex | 51 +- .../linkml_model/sqlschema/meta.sql | 22 +- linkml_runtime/linkml_model/types.py | 42 +- linkml_runtime/linkml_model/units.py | 6 +- linkml_runtime/linkml_model/validation.py | 16 +- 26 files changed, 7801 insertions(+), 7535 deletions(-) diff --git a/linkml_runtime/linkml_model/annotations.py b/linkml_runtime/linkml_model/annotations.py index a6dbfcba..a503757f 100644 --- a/linkml_runtime/linkml_model/annotations.py +++ b/linkml_runtime/linkml_model/annotations.py @@ -1,5 +1,5 @@ -# Auto generated from annotations.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:10 +# Auto generated from annotations.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:05:46 # Schema: annotations # # id: https://w3id.org/linkml/annotations @@ -49,7 +49,7 @@ class Annotatable(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Annotatable + class_class_uri: ClassVar[URIRef] = LINKML["Annotatable"] class_class_curie: ClassVar[str] = "linkml:Annotatable" class_name: ClassVar[str] = "annotatable" class_model_uri: ClassVar[URIRef] = LINKML.Annotatable @@ -69,7 +69,7 @@ class Annotation(Extension): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Annotation + class_class_uri: ClassVar[URIRef] = LINKML["Annotation"] class_class_curie: ClassVar[str] = "linkml:Annotation" class_name: ClassVar[str] = "annotation" class_model_uri: ClassVar[URIRef] = LINKML.Annotation diff --git a/linkml_runtime/linkml_model/array.py b/linkml_runtime/linkml_model/array.py index f1cda556..e69de29b 100644 --- a/linkml_runtime/linkml_model/array.py +++ b/linkml_runtime/linkml_model/array.py @@ -1,419 +0,0 @@ -# Auto generated from array.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:12 -# Schema: arrays -# -# id: https://w3id.org/linkml/lib/arrays -# description: LinkML templates for storing one-dimensional series, two-dimensional arrays, and arrays of higher dimensionality. -# Status: Experimental -# Note that this model is not intended to be imported directly. Instead, use `implements` to denote conformance. -# license: https://creativecommons.org/publicdomain/zero/1.0/ - -import dataclasses -import re -from jsonasobj2 import JsonObj, as_dict -from typing import Optional, List, Union, Dict, ClassVar, Any -from dataclasses import dataclass - -from linkml_runtime.utils.slot import Slot -from linkml_runtime.utils.metamodelcore import empty_list, empty_dict, bnode -from linkml_runtime.utils.yamlutils import YAMLRoot, extended_str, extended_float, extended_int -from linkml_runtime.utils.dataclass_extensions_376 import dataclasses_init_fn_with_kwargs -from linkml_runtime.utils.formatutils import camelcase, underscore, sfx -from linkml_runtime.utils.enumerations import EnumDefinitionImpl -from rdflib import Namespace, URIRef -from linkml_runtime.utils.curienamespace import CurieNamespace -from .types import Integer, String - -metamodel_version = "1.7.0" -version = None - -# Overwrite dataclasses _init_fn to add **kwargs in __init__ -dataclasses._init_fn = dataclasses_init_fn_with_kwargs - -# Namespaces -GITHUB = CurieNamespace('github', 'https://github.com/') -GOM = CurieNamespace('gom', 'https://w3id.org/gom#') -LINKML = CurieNamespace('linkml', 'https://w3id.org/linkml/') -DEFAULT_ = LINKML - - -# Types - -# Class references -class OneDimensionalSeriesSeriesLabel(extended_str): - pass - - -Any = Any - -class DataStructure(YAMLRoot): - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.DataStructure - class_class_curie: ClassVar[str] = "linkml:DataStructure" - class_name: ClassVar[str] = "DataStructure" - class_model_uri: ClassVar[URIRef] = LINKML.DataStructure - - -@dataclass -class Array(DataStructure): - """ - a data structure consisting of a collection of *elements*, each identified by at least one array index tuple. - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.Array - class_class_curie: ClassVar[str] = "linkml:Array" - class_name: ClassVar[str] = "Array" - class_model_uri: ClassVar[URIRef] = LINKML.Array - - elements: Union[Union[dict, Any], List[Union[dict, Any]]] = None - dimensionality: Optional[int] = None - array_linearization_order: Optional[Union[str, "ArrayLinearizationOrderOptions"]] = "ROW_MAJOR_ARRAY_ORDER" - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self.dimensionality is not None and not isinstance(self.dimensionality, int): - self.dimensionality = int(self.dimensionality) - - if self.array_linearization_order is not None and not isinstance(self.array_linearization_order, ArrayLinearizationOrderOptions): - self.array_linearization_order = ArrayLinearizationOrderOptions(self.array_linearization_order) - - super().__post_init__(**kwargs) - - -@dataclass -class OneDimensionalSeries(Array): - """ - An array that has one dimension - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.OneDimensionalSeries - class_class_curie: ClassVar[str] = "linkml:OneDimensionalSeries" - class_name: ClassVar[str] = "OneDimensionalSeries" - class_model_uri: ClassVar[URIRef] = LINKML.OneDimensionalSeries - - series_label: Union[str, OneDimensionalSeriesSeriesLabel] = None - elements: Union[Union[dict, Any], List[Union[dict, Any]]] = None - length: Optional[int] = None - dimensionality: Optional[int] = None - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self._is_empty(self.series_label): - self.MissingRequiredField("series_label") - if not isinstance(self.series_label, OneDimensionalSeriesSeriesLabel): - self.series_label = OneDimensionalSeriesSeriesLabel(self.series_label) - - if self.length is not None and not isinstance(self.length, int): - self.length = int(self.length) - - if self.dimensionality is not None and not isinstance(self.dimensionality, int): - self.dimensionality = int(self.dimensionality) - - super().__post_init__(**kwargs) - - -@dataclass -class TwoDimensionalArray(Array): - """ - An array that has two dimensions - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.TwoDimensionalArray - class_class_curie: ClassVar[str] = "linkml:TwoDimensionalArray" - class_name: ClassVar[str] = "TwoDimensionalArray" - class_model_uri: ClassVar[URIRef] = LINKML.TwoDimensionalArray - - axis0: Union[dict, OneDimensionalSeries] = None - axis1: Union[dict, OneDimensionalSeries] = None - elements: Union[Union[dict, Any], List[Union[dict, Any]]] = None - dimensionality: Optional[int] = None - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self._is_empty(self.axis0): - self.MissingRequiredField("axis0") - if not isinstance(self.axis0, OneDimensionalSeries): - self.axis0 = OneDimensionalSeries(**as_dict(self.axis0)) - - if self._is_empty(self.axis1): - self.MissingRequiredField("axis1") - if not isinstance(self.axis1, OneDimensionalSeries): - self.axis1 = OneDimensionalSeries(**as_dict(self.axis1)) - - if self.dimensionality is not None and not isinstance(self.dimensionality, int): - self.dimensionality = int(self.dimensionality) - - super().__post_init__(**kwargs) - - -@dataclass -class ThreeDimensionalArray(Array): - """ - An array that has two dimensions - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.ThreeDimensionalArray - class_class_curie: ClassVar[str] = "linkml:ThreeDimensionalArray" - class_name: ClassVar[str] = "ThreeDimensionalArray" - class_model_uri: ClassVar[URIRef] = LINKML.ThreeDimensionalArray - - elements: Union[Union[dict, Any], List[Union[dict, Any]]] = None - axis0: Union[dict, OneDimensionalSeries] = None - axis1: Union[dict, OneDimensionalSeries] = None - axis2: Union[dict, OneDimensionalSeries] = None - dimensionality: Optional[int] = None - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self._is_empty(self.axis0): - self.MissingRequiredField("axis0") - if not isinstance(self.axis0, OneDimensionalSeries): - self.axis0 = OneDimensionalSeries(**as_dict(self.axis0)) - - if self._is_empty(self.axis1): - self.MissingRequiredField("axis1") - if not isinstance(self.axis1, OneDimensionalSeries): - self.axis1 = OneDimensionalSeries(**as_dict(self.axis1)) - - if self._is_empty(self.axis2): - self.MissingRequiredField("axis2") - if not isinstance(self.axis2, OneDimensionalSeries): - self.axis2 = OneDimensionalSeries(**as_dict(self.axis2)) - - if self.dimensionality is not None and not isinstance(self.dimensionality, int): - self.dimensionality = int(self.dimensionality) - - super().__post_init__(**kwargs) - - -class OrderedArray(YAMLRoot): - """ - A mixin that describes an array whose elements are mapped from a linear sequence to an array index via a specified - mapping - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.OrderedArray - class_class_curie: ClassVar[str] = "linkml:OrderedArray" - class_name: ClassVar[str] = "OrderedArray" - class_model_uri: ClassVar[URIRef] = LINKML.OrderedArray - - -@dataclass -class ColumnOrderedArray(YAMLRoot): - """ - An array ordering that is column-order - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.ColumnOrderedArray - class_class_curie: ClassVar[str] = "linkml:ColumnOrderedArray" - class_name: ClassVar[str] = "ColumnOrderedArray" - class_model_uri: ClassVar[URIRef] = LINKML.ColumnOrderedArray - - array_linearization_order: Optional[Union[str, "ArrayLinearizationOrderOptions"]] = "ROW_MAJOR_ARRAY_ORDER" - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self.array_linearization_order is not None and not isinstance(self.array_linearization_order, ArrayLinearizationOrderOptions): - self.array_linearization_order = ArrayLinearizationOrderOptions(self.array_linearization_order) - - super().__post_init__(**kwargs) - - -@dataclass -class RowOrderedArray(YAMLRoot): - """ - An array ordering that is row-order or generalizations thereof - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.RowOrderedArray - class_class_curie: ClassVar[str] = "linkml:RowOrderedArray" - class_name: ClassVar[str] = "RowOrderedArray" - class_model_uri: ClassVar[URIRef] = LINKML.RowOrderedArray - - array_linearization_order: Optional[Union[str, "ArrayLinearizationOrderOptions"]] = "ROW_MAJOR_ARRAY_ORDER" - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if self.array_linearization_order is not None and not isinstance(self.array_linearization_order, ArrayLinearizationOrderOptions): - self.array_linearization_order = ArrayLinearizationOrderOptions(self.array_linearization_order) - - super().__post_init__(**kwargs) - - -@dataclass -class MultiDimensionalArray(Array): - """ - An array that has more than two dimensions - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.MultiDimensionalArray - class_class_curie: ClassVar[str] = "linkml:MultiDimensionalArray" - class_name: ClassVar[str] = "MultiDimensionalArray" - class_model_uri: ClassVar[URIRef] = LINKML.MultiDimensionalArray - - elements: Union[Union[dict, Any], List[Union[dict, Any]]] = None - -class ObjectAsTuple(YAMLRoot): - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.ObjectAsTuple - class_class_curie: ClassVar[str] = "linkml:ObjectAsTuple" - class_name: ClassVar[str] = "ObjectAsTuple" - class_model_uri: ClassVar[URIRef] = LINKML.ObjectAsTuple - - -class ArrayIndex(ObjectAsTuple): - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.ArrayIndex - class_class_curie: ClassVar[str] = "linkml:ArrayIndex" - class_name: ClassVar[str] = "ArrayIndex" - class_model_uri: ClassVar[URIRef] = LINKML.ArrayIndex - - -@dataclass -class Operation(YAMLRoot): - """ - Represents the transformation of one or more inputs to one or more outputs determined by zero to many operation - parameters - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.Operation - class_class_curie: ClassVar[str] = "linkml:Operation" - class_name: ClassVar[str] = "Operation" - class_model_uri: ClassVar[URIRef] = LINKML.Operation - - specified_input: Optional[Union[Union[dict, DataStructure], List[Union[dict, DataStructure]]]] = empty_list() - specified_output: Optional[Union[Union[dict, DataStructure], List[Union[dict, DataStructure]]]] = empty_list() - operation_parameters: Optional[Union[Union[dict, Any], List[Union[dict, Any]]]] = empty_list() - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - if not isinstance(self.specified_input, list): - self.specified_input = [self.specified_input] if self.specified_input is not None else [] - self.specified_input = [v if isinstance(v, DataStructure) else DataStructure(**as_dict(v)) for v in self.specified_input] - - if not isinstance(self.specified_output, list): - self.specified_output = [self.specified_output] if self.specified_output is not None else [] - self.specified_output = [v if isinstance(v, DataStructure) else DataStructure(**as_dict(v)) for v in self.specified_output] - - super().__post_init__(**kwargs) - - -@dataclass -class ArrayIndexOperation(YAMLRoot): - """ - An operation that takes as input an Array and is parameterized by an array index tuple and yields an array element - """ - _inherited_slots: ClassVar[List[str]] = [] - - class_class_uri: ClassVar[URIRef] = LINKML.ArrayIndexOperation - class_class_curie: ClassVar[str] = "linkml:ArrayIndexOperation" - class_name: ClassVar[str] = "ArrayIndexOperation" - class_model_uri: ClassVar[URIRef] = LINKML.ArrayIndexOperation - - specified_input: Optional[Union[Union[dict, Array], List[Union[dict, Array]]]] = empty_list() - specified_output: Optional[Union[Union[dict, Any], List[Union[dict, Any]]]] = empty_list() - operation_parameters: Optional[Union[Union[dict, ArrayIndex], List[Union[dict, ArrayIndex]]]] = empty_list() - - def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): - self._normalize_inlined_as_dict(slot_name="specified_input", slot_type=Array, key_name="elements", keyed=False) - - if not isinstance(self.operation_parameters, list): - self.operation_parameters = [self.operation_parameters] if self.operation_parameters is not None else [] - self.operation_parameters = [v if isinstance(v, ArrayIndex) else ArrayIndex(**as_dict(v)) for v in self.operation_parameters] - - super().__post_init__(**kwargs) - - -# Enumerations -class ArrayLinearizationOrderOptions(EnumDefinitionImpl): - """ - Determines how a linear contiguous representation of the elements of an array map to array indices - """ - COLUMN_MAJOR_ARRAY_ORDER = PermissibleValue( - text="COLUMN_MAJOR_ARRAY_ORDER", - description="""An array layout option in which the elements in each column is stored in consecutive positions, or any generalization thereof to dimensionality greater than 2""", - meaning=GOM.columnMajorArray) - ROW_MAJOR_ARRAY_ORDER = PermissibleValue( - text="ROW_MAJOR_ARRAY_ORDER", - description="""An array layout option in which the elements in each row is stored in consecutive positions, or any generalization thereof to dimensionality greater than 2""", - meaning=GOM.rowMajorArray) - - _defn = EnumDefinition( - name="ArrayLinearizationOrderOptions", - description="Determines how a linear contiguous representation of the elements of an array map to array indices", - ) - -# Slots -class slots: - pass - -slots.dimensionality = Slot(uri=LINKML.dimensionality, name="dimensionality", curie=LINKML.curie('dimensionality'), - model_uri=LINKML.dimensionality, domain=None, range=Optional[int]) - -slots.axis = Slot(uri=LINKML.axis, name="axis", curie=LINKML.curie('axis'), - model_uri=LINKML.axis, domain=None, range=Optional[Union[str, OneDimensionalSeriesSeriesLabel]]) - -slots.axis0 = Slot(uri=LINKML.axis0, name="axis0", curie=LINKML.curie('axis0'), - model_uri=LINKML.axis0, domain=None, range=Union[dict, OneDimensionalSeries]) - -slots.axis1 = Slot(uri=LINKML.axis1, name="axis1", curie=LINKML.curie('axis1'), - model_uri=LINKML.axis1, domain=None, range=Union[dict, OneDimensionalSeries]) - -slots.axis2 = Slot(uri=LINKML.axis2, name="axis2", curie=LINKML.curie('axis2'), - model_uri=LINKML.axis2, domain=None, range=Union[dict, OneDimensionalSeries]) - -slots.elements = Slot(uri=LINKML.elements, name="elements", curie=LINKML.curie('elements'), - model_uri=LINKML.elements, domain=None, range=Union[Union[dict, Any], List[Union[dict, Any]]]) - -slots.series_label = Slot(uri=LINKML.series_label, name="series_label", curie=LINKML.curie('series_label'), - model_uri=LINKML.series_label, domain=None, range=URIRef) - -slots.length = Slot(uri=LINKML.length, name="length", curie=LINKML.curie('length'), - model_uri=LINKML.length, domain=None, range=Optional[int]) - -slots.array_linearization_order = Slot(uri=LINKML.array_linearization_order, name="array_linearization_order", curie=LINKML.curie('array_linearization_order'), - model_uri=LINKML.array_linearization_order, domain=None, range=Optional[Union[str, "ArrayLinearizationOrderOptions"]]) - -slots.specified_input = Slot(uri=LINKML.specified_input, name="specified_input", curie=LINKML.curie('specified_input'), - model_uri=LINKML.specified_input, domain=None, range=Optional[Union[Union[dict, DataStructure], List[Union[dict, DataStructure]]]]) - -slots.specified_output = Slot(uri=LINKML.specified_output, name="specified_output", curie=LINKML.curie('specified_output'), - model_uri=LINKML.specified_output, domain=None, range=Optional[Union[Union[dict, DataStructure], List[Union[dict, DataStructure]]]]) - -slots.operation_parameters = Slot(uri=LINKML.operation_parameters, name="operation_parameters", curie=LINKML.curie('operation_parameters'), - model_uri=LINKML.operation_parameters, domain=None, range=Optional[Union[Union[dict, Any], List[Union[dict, Any]]]]) - -slots.Array_elements = Slot(uri=LINKML.elements, name="Array_elements", curie=LINKML.curie('elements'), - model_uri=LINKML.Array_elements, domain=Array, range=Union[Union[dict, Any], List[Union[dict, Any]]]) - -slots.OneDimensionalSeries_dimensionality = Slot(uri=LINKML.dimensionality, name="OneDimensionalSeries_dimensionality", curie=LINKML.curie('dimensionality'), - model_uri=LINKML.OneDimensionalSeries_dimensionality, domain=OneDimensionalSeries, range=Optional[int]) - -slots.TwoDimensionalArray_dimensionality = Slot(uri=LINKML.dimensionality, name="TwoDimensionalArray_dimensionality", curie=LINKML.curie('dimensionality'), - model_uri=LINKML.TwoDimensionalArray_dimensionality, domain=TwoDimensionalArray, range=Optional[int]) - -slots.TwoDimensionalArray_elements = Slot(uri=LINKML.elements, name="TwoDimensionalArray_elements", curie=LINKML.curie('elements'), - model_uri=LINKML.TwoDimensionalArray_elements, domain=TwoDimensionalArray, range=Union[Union[dict, Any], List[Union[dict, Any]]]) - -slots.ThreeDimensionalArray_dimensionality = Slot(uri=LINKML.dimensionality, name="ThreeDimensionalArray_dimensionality", curie=LINKML.curie('dimensionality'), - model_uri=LINKML.ThreeDimensionalArray_dimensionality, domain=ThreeDimensionalArray, range=Optional[int]) - -slots.ColumnOrderedArray_array_linearization_order = Slot(uri=LINKML.array_linearization_order, name="ColumnOrderedArray_array_linearization_order", curie=LINKML.curie('array_linearization_order'), - model_uri=LINKML.ColumnOrderedArray_array_linearization_order, domain=None, range=Optional[Union[str, "ArrayLinearizationOrderOptions"]]) - -slots.RowOrderedArray_array_linearization_order = Slot(uri=LINKML.array_linearization_order, name="RowOrderedArray_array_linearization_order", curie=LINKML.curie('array_linearization_order'), - model_uri=LINKML.RowOrderedArray_array_linearization_order, domain=None, range=Optional[Union[str, "ArrayLinearizationOrderOptions"]]) - -slots.ArrayIndexOperation_specified_input = Slot(uri=LINKML.specified_input, name="ArrayIndexOperation_specified_input", curie=LINKML.curie('specified_input'), - model_uri=LINKML.ArrayIndexOperation_specified_input, domain=ArrayIndexOperation, range=Optional[Union[Union[dict, Array], List[Union[dict, Array]]]]) - -slots.ArrayIndexOperation_specified_output = Slot(uri=LINKML.specified_output, name="ArrayIndexOperation_specified_output", curie=LINKML.curie('specified_output'), - model_uri=LINKML.ArrayIndexOperation_specified_output, domain=ArrayIndexOperation, range=Optional[Union[Union[dict, Any], List[Union[dict, Any]]]]) - -slots.ArrayIndexOperation_operation_parameters = Slot(uri=LINKML.operation_parameters, name="ArrayIndexOperation_operation_parameters", curie=LINKML.curie('operation_parameters'), - model_uri=LINKML.ArrayIndexOperation_operation_parameters, domain=ArrayIndexOperation, range=Optional[Union[Union[dict, ArrayIndex], List[Union[dict, ArrayIndex]]]]) diff --git a/linkml_runtime/linkml_model/datasets.py b/linkml_runtime/linkml_model/datasets.py index d5c603fa..2ec19940 100644 --- a/linkml_runtime/linkml_model/datasets.py +++ b/linkml_runtime/linkml_model/datasets.py @@ -1,5 +1,5 @@ -# Auto generated from datasets.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:13 +# Auto generated from datasets.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:05:52 # Schema: datasets # # id: https://w3id.org/linkml/datasets @@ -30,7 +30,7 @@ dataclasses._init_fn = dataclasses_init_fn_with_kwargs # Namespaces -BIBO = CurieNamespace('bibo', 'http://example.org/UNKNOWN/bibo/') +BIBO = CurieNamespace('bibo', 'http://purl.org/ontology/bibo/') CSVW = CurieNamespace('csvw', 'http://www.w3.org/ns/csvw#') DATASETS = CurieNamespace('datasets', 'https://w3id.org/linkml/report') DCAT = CurieNamespace('dcat', 'http://www.w3.org/ns/dcat#') @@ -39,7 +39,7 @@ FRICTIONLESS = CurieNamespace('frictionless', 'https://specs.frictionlessdata.io/') LINKML = CurieNamespace('linkml', 'https://w3id.org/linkml/') MEDIATYPES = CurieNamespace('mediatypes', 'https://www.iana.org/assignments/media-types/') -OSLC = CurieNamespace('oslc', 'http://example.org/UNKNOWN/oslc/') +OSLC = CurieNamespace('oslc', 'http://open-services.net/ns/core#') OWL = CurieNamespace('owl', 'http://www.w3.org/2002/07/owl#') PAV = CurieNamespace('pav', 'http://purl.org/pav/') PROV = CurieNamespace('prov', 'http://www.w3.org/ns/prov#') @@ -75,7 +75,7 @@ class Information(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = DATASETS.Information + class_class_uri: ClassVar[URIRef] = DATASETS["Information"] class_class_curie: ClassVar[str] = "datasets:Information" class_name: ClassVar[str] = "Information" class_model_uri: ClassVar[URIRef] = DATASETS.Information @@ -172,7 +172,7 @@ class DataPackage(Information): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = VOID.Dataset + class_class_uri: ClassVar[URIRef] = VOID["Dataset"] class_class_curie: ClassVar[str] = "void:Dataset" class_name: ClassVar[str] = "DataPackage" class_model_uri: ClassVar[URIRef] = DATASETS.DataPackage @@ -200,7 +200,7 @@ class DataResource(Information): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = DCAT.Distribution + class_class_uri: ClassVar[URIRef] = DCAT["Distribution"] class_class_curie: ClassVar[str] = "dcat:Distribution" class_name: ClassVar[str] = "DataResource" class_model_uri: ClassVar[URIRef] = DATASETS.DataResource @@ -267,7 +267,7 @@ class FormatDialect(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = DATASETS.FormatDialect + class_class_uri: ClassVar[URIRef] = DATASETS["FormatDialect"] class_class_curie: ClassVar[str] = "datasets:FormatDialect" class_name: ClassVar[str] = "FormatDialect" class_model_uri: ClassVar[URIRef] = DATASETS.FormatDialect @@ -328,22 +328,22 @@ class FormatEnum(EnumDefinitionImpl): N3 = PermissibleValue( text="N3", - meaning=FORMATS.N3) + meaning=FORMATS["N3"]) Microdata = PermissibleValue( text="Microdata", - meaning=FORMATS.microdata) + meaning=FORMATS["microdata"]) POWDER = PermissibleValue( text="POWDER", - meaning=FORMATS.POWDER) + meaning=FORMATS["POWDER"]) RDFa = PermissibleValue( text="RDFa", - meaning=FORMATS.RDFa) + meaning=FORMATS["RDFa"]) Turtle = PermissibleValue( text="Turtle", - meaning=FORMATS.Turtle) + meaning=FORMATS["Turtle"]) TriG = PermissibleValue( text="TriG", - meaning=FORMATS.TriG) + meaning=FORMATS["TriG"]) YAML = PermissibleValue(text="YAML") JSON = PermissibleValue(text="JSON") @@ -368,19 +368,19 @@ def _addvals(cls): setattr(cls, "LD Patch", PermissibleValue( text="LD Patch", - meaning=FORMATS.LD_Patch)) + meaning=FORMATS["LD_Patch"])) setattr(cls, "OWL XML Serialization", PermissibleValue( text="OWL XML Serialization", - meaning=FORMATS.OWL_XML)) + meaning=FORMATS["OWL_XML"])) setattr(cls, "OWL Functional Syntax", PermissibleValue( text="OWL Functional Syntax", - meaning=FORMATS.OWL_Functional)) + meaning=FORMATS["OWL_Functional"])) setattr(cls, "OWL Manchester Syntax", PermissibleValue( text="OWL Manchester Syntax", - meaning=FORMATS.OWL_Manchester)) + meaning=FORMATS["OWL_Manchester"])) setattr(cls, "POWDER-S", PermissibleValue( text="POWDER-S", @@ -396,31 +396,31 @@ def _addvals(cls): setattr(cls, "RDF/JSON", PermissibleValue( text="RDF/JSON", - meaning=FORMATS.RDF_JSON)) + meaning=FORMATS["RDF_JSON"])) setattr(cls, "RDF/XML", PermissibleValue( text="RDF/XML", - meaning=FORMATS.RDF_XML)) + meaning=FORMATS["RDF_XML"])) setattr(cls, "RIF XML Syntax", PermissibleValue( text="RIF XML Syntax", - meaning=FORMATS.RIF_XML)) + meaning=FORMATS["RIF_XML"])) setattr(cls, "SPARQL Results in XML", PermissibleValue( text="SPARQL Results in XML", - meaning=FORMATS.SPARQL_Results_XML)) + meaning=FORMATS["SPARQL_Results_XML"])) setattr(cls, "SPARQL Results in JSON", PermissibleValue( text="SPARQL Results in JSON", - meaning=FORMATS.SPARQL_Results_JSON)) + meaning=FORMATS["SPARQL_Results_JSON"])) setattr(cls, "SPARQL Results in CSV", PermissibleValue( text="SPARQL Results in CSV", - meaning=FORMATS.SPARQL_Results_CSV)) + meaning=FORMATS["SPARQL_Results_CSV"])) setattr(cls, "SPARQL Results in TSV", PermissibleValue( text="SPARQL Results in TSV", - meaning=FORMATS.SPARQL_Results_TSV)) + meaning=FORMATS["SPARQL_Results_TSV"])) # Slots class slots: diff --git a/linkml_runtime/linkml_model/excel/meta.xlsx b/linkml_runtime/linkml_model/excel/meta.xlsx index 21fd455cb8262d2f24a585479ce8900aeb1e5ae2..39dafb4ea005146242c23b993489734dfed4312f 100644 GIT binary patch delta 11022 zcmc(FWmFtX*Y4mJG+1yAuEB$Q@IivRySofda2W`mpkaUv3BjGm`QxHvkwvY9%%n6rA>+odEbDz~#g3cu_9?z>f)jTlw0m*xSB z68VC{0k~+7-5-II?{W90+HMw0kFRTQsk?d@(wY)~PU7Dxi#U>31C`ecbN8S@C7~#$ z)=7^Fa+0V$8a{v$nm0)^{LI`z(q>^-!LV;-!lWEy0I{m%-Po`hw;2A~ZlhV>h z{$jHe}VQA^Ac$>LAZ)a~jbh zs^9z66XwJut#t#}DO*2j{L;8$+9JFLSFt+sPE9`8EshJ$~)vajLdd zg??heeWG8`<CE7YK@0Um5bvcBq+Obk-O7uqVK}a~r58Q=yISgQ*!vjtC2xoEaR^ z#-yAkEP=nNcX-<}(VU%V-6Mn6eckV=;ZYHNP|x+lZR_$qGb#xov#ZtR1?t+oUV7B) z!xb*u8>6a(xqvyvI~x}O)UoJUmdx1~4==6pmhT!!O=P47T}vQaKKsq?2-@cF5Z+SU zcn!ve+4l+;^iQpG&^zTd(;#z6v@;V9qZE^D(5@_L$HE~)O1w4po;s^mOb%mBvssOi7gNoo(EEHaP3pwp?b}^X>ULk;+&pFC~3ne$<7>bbpChDl5-oN5=K|P@% zegD(&B!r5#9_Kt+@S;EtSC_OO6PkMu1Wu=(gPFdUduBfCnYKc*9jUk^OJ@L6uLsg3 z&2tL!b|_?O3a_coQaeA-CSQu@bQ+=R9hzlN`V5P$6trtX%ELNO9ZYZm_qb|GlFa}U z_+ddh)wdHQo~JUMv%1_4%zJsp;KSX5#IKaRaZwDD&G^`9nOd%&GEa15jD&U(SW#Dt z*U1k@zr#s9oX0Gp_YQS+q6|Yo)9oqZMxg+o{W}8(RbW}zi-@#}S$;1&1K@B~MaJL& zlz!{Uh?SFqn-^Lw{oXM$ap>2Ps3>7yM-)6-e>rlH{Q67v6L<%g3mj%S-*3f@+o@W> zIZuX7^NPGS;*u6Qy&VUB1$8euqqJ>@jx;UbypFj^Q@j8sM!_ajV5~$%&_vexTmz^Lgf0nm}iAA_3_ zeec(hCNNI^5_UhNc^`%}SQHZpWFJ4x^XPs&FJP(|B2^Mc(TKX}k57;7_|ynDW1D3v zg^q+U0TmB-WcX8mZ5kbuS@;>?YW@icY-e zyX-vq(78%GAvI2D=MFT12APf?K1;21kNxnBwZ^uJ*myMQ%rXvtv zFgE(A>>7ay!KbL1ummL@qEyM`C%U_^^sNX^DaR!0Tyj$n>N(ifU zr+6L>@ds6h$4*tIEKvtoA!@wy{*6uil)>}wej`BZV2a9u##6MIa(>|qvFa~Acn z&RLL76j5OD0>-gU@H>K)Hc8BFaa2G)`On`!TY|)FHo?y2l68I?}=NyyhB? z^+|Kyyf)A8?a3h5QL>-ImeJ6S!1h^qPZ^!uwYSjAh5OsO*(xjLZ;hpbJac(NuuXBz z-`G60;1K{W=AU|!P%!%O=TBpy`_l8|eVzN9sMC1+9Fhw!aAsE&P|B6;=r%Kqkn@Q> z0UAx$qN<6nj6Su2(9Xx5V=wy1!Dj|&idL?Wa~C0MPPKlmO4Q-lbhrun_n`ejV9mM# z3ji3P{hWQl+c+fPMp|T0Vb$h2=hdgzjxDa@FpA9|n{2i(Juy!&_A(v5L2pn4lk833 zzb$0SJEiFJs|%LC5VHGxD8gMYjg2|Wc?5;iI8ibEqzV3#`5rj+?#Noib756&yT=NR zfb~Fsgx(W`jL2KzCNit2x3Lm+8EGeMKZ;Wp;^XmvaO5^@p;X9iiw{J zH_TQy`te|}8JwUPRErT(Ve?u^T*WA-z)0d?(2)<;G?)QnWjti`_=_#YThQLux5vb- z2Y9{h*cs3DhiqOq%Y#vEMxWHT^)m?4oLn+=m`d3QyVt(Z>+uj~X_s;Of>wpz;HDV2 z#_gL|r-82UY!SJQ55z=1MlQGIo^oXU-3LuLnDhqjH4~Dz^*0H;awlf(`S(?$#=1uX z8^{+1ROqjJmnny|dgyRo=AlciyS5>pihZrLMt8ynew{3q)mH9JdWnmEsIX`xFVWNm ziN`5?FQrOj^mdtgzi`BUo@&B!C^Pr^36ZNeYk9$!j?JTJ5^B)6_Lpfwrm_!t#P8Yh z$HTnr*#lHkUAVbbfqGveO2s)k(`@S!T;}k|=wbcAIa9`9Ojwf74$^X@q9fuI*N1ksnrIEN`&{By;Dod)hqqq5kh&tm*F zHRvPGGzoEFnAn$^eb{pyoFH+JUT_p_GMTkiUkGM2PFu$v!)G^=WhCiJg0sBD zvyAnd{+#LmWje(9ZEXngiF4o0l%gc9HX4>&Q?!&G#xRUt zfAT`ClFgFx?GK3|*b|+RSA1sSG;3u=U)S?OE}AsSWL&g0%Oh^zzQduv!|SnXjZ*_n zE9uD%^0Fc{ZH()%4W+bsz=}AM>SO80zARQw_Fce^ zrOpzA6K~sw!=pRc|DPj)cz-Tk!qop;z6AR1O#dxk0{wQT|CTR-emm2D%a^2oJJbKp zm!@4r9#O*s0J`9KB63h{n!W3fJauB{;&L5*_&=}SPG9h0eqh(6`mnl^qEo;qWrGq={I`GQ|z zg24?ZS{0H;wTk(tnxdk;3OVac3?Jyu7^Y8|SU$_lB@Guyqwv}RzRUh{L)(Y_>#<81 zl#=+^rYiJ#>s1E8r~geCgF6C`mE~j1=l}u1=j8so38!Er^vwN5{>Y)P*}C1S)|1N0 z`D#Wvt$g8mcVxzox;k=uQb1?S)E6fMc%zYK^rB^ zs_Vzw4)HkyZ7+t2bFX{Xyzqv2EDr{?{@wl_lukZazP~RY^ALWmm_q5+Cc!g|vU{-2G(2 z0gOti!kD%*<_AW}BZrMwC0IxR!&5$ABlIaTmT=f`>Al8~LSPLVhURoGyV%i}u-6Zl zmql_al=e8L(YJ+_b{u1!5L7d+;-N*NzPBgK0P%xlFs0DrP?J5w2!96Ck$ZwHwKT>O zz{C(+zt6iLAYX7ZfF6@7DBaF^oJfIs>8;u8x%B;mUy?;VtHCL#C_68L)Tzd#@t`Th z>bMTZ-=^F(x^0)Df|Y6jqfz&vbe>YGteVl1^-Uah9v+z@Stc-|Y&QqM51oF_u|r4hbn)(f^p!5Y@7vQ-l1(;vB6Qt9%Lr_7pzvT)1FC%ElJZr!X%=o|;>EQ?zF{mvGIxWP;{ zb^B$_PQ=8-gJbMf?jgKbu*FMYXYsl%L!y-2RWC`#dIw^YnNc%d0gC>{y|e+ujq|O} zWivmKOeLlDx8T0g4Q9IO!i)>j@Dp)Dk1-) zAOX!e?($i*`uY>=T`c`k;WEet61hmu96_AJY`eT&-rL(Z?B|&Oo{}nh$ijau!n@23 z1w!xBkbH1pF(IM~4+=2Mugn`dl`Y(_k{>PR?@~NHC;US;ZU{YZodFR5h$Q)03&izv zN^44=cAcij?YhH@fAh?Jc+%kAl2=#KtbKjIxvO=}RhtpYv>g^C(8TiYQb=~7F#D+3 ze~M0bg4}6-e+f>pdSEU*R@J$(G#0&k@@d!VtQSddY>Bzo0+IPfYRXYn%<=m8(l;;K zQYH1wgTD6m@g*IbOhr2V$*{LdAU)#P>dm%zaozFZxwYQf9cPbZAzZ!9lcydCOB)4= zw(f4zb5=y*i3riSD)k9q;HqUj|Vh+D}n+-AD1UKE@BqcYRo|Vg7Z~@ zEfL6m(qBWjgGaH{1U3xm5*ZPNl<3SK4mu$DtRuvj9FLa`?mAx0G^9{ z&wGVd{l|D!ltF6DIx5|MFN7330$ab`&ZUrR)!xUP}i|lcANqMtyf*}i@o4z$pJB|~BJwM}sI@Q+d$flu zzSC14W|q&#QBeEIp2a9LVa34Tmb)dlpJK3yk(8t7Wg`Yv6PqzN)~au8f>=RQ=7{*a z@u|&>@WLa}`$n2xHyG0v2o!p&zsY|7>KMykx9jygu}3|W(+nV?N$1a6ABgkiNfFGa z52PP|)kZB3q_XPPeF`j`6Q0tod?4<7sVmU64u^?yi%Il6etO0^fV-NoH>TbBj5ESb^SQtZ zc1k(!qP~t1n(Hgj0qzsF&lZBnUr;F8HzXxa^Owg=F(&o5NZ*cNO=kyZlOx+ta&Zk0 zIaA4QJ5+&FkIGivCW6nHxW9=d;hfD4K%DSI-SQuE(^Qw8a;a^9G$Oby*vb;O)-$Ss zkSsP(@l*17!{3I!k#O@wdNpuW-V_ecmaRC(6L`_Fo7FQ1dh5^sgobxTC)tfraZP@A z3^v4<;EIXzC1N5A)V*Au=p|B+V$uBY7NVIh43I?;cd*hfKVbwYGxi-n;cH4>G7~MR zQ&p5xMw7qV7ES^2F=FHl@pB#_)E<*IuU@8?@Ye64In)6vB#dat%aT+>hMq10J?3(L zYu2sUy{O1*pn07^qHNgVbn$1)9lBpK4q&MS=xKYLoaE~RUj@j$8@e^Hm3)2&nbwgp z;Ff-^&!EY$%nPY>HVb(zee>Sn)yZyIq%yATspYPhCv{5NxQVp?Cz`E<_GwC)OzQ9kK7fidQFi>a3q^*3hQ>A`p`u^VW3OAwcw?@P zngx|khQJL=E4NWi0)jd9{PN}*`&G+v&hYO!$g&uK< zfFK^3Ur6Th*V{V)b1&mpjy>SXSuUws19ZpO4E297_gwehZ}*&U*Y`lJvG)%98v=9< zmUCLgWa=KZix|$MX7x!q)4$!5XL)PWzkIY6u{igYwDq9sX&YX>a&?ihZh$7f(6*wB zTS#|}(;Vc(TX8@8o^2kOc&Q%f{iN!b2r6ABfDSgf$p^jFEsOLRqU=l`nYZEW>#eRi_fUv&TImU_4#JdCWz7H-^eIf1bibTL)n6g zaOto$kIJF~6h&!Zd}?qO*Wmj}vkL12zJE-}n%EJ6dNj;V4=iiXSX~d6s&!;ydx5rB z6A;duh*rgZ_PWa_ z(j#VYvPAw$7yD%Aix14XDPBUxK@o^(jO$<@3-zlZ(NSk@N2w9H6YfWy8qR4>TZCZl zf!k*vV2c5x!`>$^0vWBQc^h|6Pia_BbTp2iIT&zfw<9;Hhca$==2h63jgFU8l6rKp zlqB+L%m^kP!BF?MYnM({FD)B=bxC5smyPszeUkohXQMIel()i1Wm3`_dj^t~)`e6t z?vj}hY!~$Nj81j|k7DqcH0%{$XYpxjD4uyo&-cH0V_5=5@x_%;%l_I#kD0c)h#}+d z1L3haS@Wh9FG+wpo)h?T#XT- zxros&4UhAC$H^Kcf3L)d8HmwHd%Dxegu}5r3tnNs?MQ7S=KZBEgPXXpW);Tm2R)6g z#wSiZ6mP~gDvk`21muE{91%1TL=Ky~eG`$3393$)^QK%Cyj^6LwsxcZz(cBf3@P76e(sXPqeCpq8Qr zbi4thRK=F8dJh)RR4ZxtvEM4es<*Fk`?MOZNafnRQDYytzPb~|Q_h+7XKX20xOm>~ z`xwIyKu@w=_dc3n&gB!?>qh@N%Bc!}}K{ z_)2r-K^5V&Te-4(RXo5uTGaAVbOXVBqC+|Mfz=EdTrIFHu~bxg>a3C3BcAl1W9@oF z0$%9tb4dutd7ap7A5EpLO-jGmVclW0ZQ5f!n$cjP-xW^7;ELn!V%!DmYO{hGdIF}j zg&m$?YFw*s#|p*68q8jWPGmJ9(~XIvw&~To%~w0dQw`x*l#ts z;%^?CT>736k?gY%kaqTr<113LhkyLqmLbQQMs*hTN9?hS0O`Rs!ezAi;;j8~AF=FSTa)a@o{#4Eu(>5EDEAh^?NvK-Ua zk1*!w=w)Jhjo6XcG_MnCd3;J0oC@bWRN4^F2J8G6gDF^XOa{|qwnOK$3i!jT;6xM! zXl08~P~22T(pgXjlC(;fI-Ui4@sLiMg|ES{2`bIB z<|rj;Y5@Zy{YO0N!deh{Rs>H|++v?ipKkx>O=Ad!K4Nvd1qU)|$=gykzRDRhpM!^+ zWc@+$Wl1x2)C<5>g5pa!8v$XtTdFFM=p@!!lLY--w7S=f!u#|~S(oHvDVrvh?DFo@ z#H1G4oo>~oGbYabWXodEA)zESk12pwKwc^p@lM6uk6fb1<&6Laaany6i%IejGj~QG zeP!wUb&NaapI7y8rJ-ANui5m%n;`Uw+KevWU~N?|9xau0(1&T4>^lm=d-i+IV=#@R zNoapnjjkK(I%*%y-8L_7@x^Z$qf*l%6{T8lgxUA<3Qs>6Xo1;e+bHal$N@oK% z<|e*%$?4B4CpC96_WO*kW=}zyhI|AHZgN*MVcF$1HdCjk&WV%klak#>1IOJJX+5`| ziQBHW?#P@xABBb z2RosK%mllkh0F$fp@sYi_CpJq3l2mJnGX&{3t0$$g%+|H9D^3J6cq2!s8z&*0k65|(8zE^pyITBU!KVP)5j(Ysdf?zd(Tl2it)mz z7~OfwaRz66cM=Dvmd0Zv(x9=`&Plus7rtF4lYxolPGrox-&qOM_qo5Or>=+(1Vw%} z>X5U1Jn>x_DlJSZBF>U3V6JR?O_EXp77UE@KK;mI*YvdR*q~JP>5L_luD|OB2qb_z zF*({HeKFA^K{YDp<(~#$34g%X562bI?BMhm2T|y0s zU@?%vVgmT!IYTUpf4|QJ01)2)kAHmvgEUaUxia`*TBBb;2sy1u)BPX*@jmPOZy*!; zJtH32#t8d?@t@Zz{sfX?J^()&VUz!C`k&3*KY^3rc_X?9vVS(e{=}T)J&*|+|7!LB z4OA!m3FLU#?)cMgf2Xmr{-pm%^g!QZjQz`Wv&KZQDC7?^43l3?{*$r-0G|A1xBGKo z5SZc~h!55<`CZw@ga}rN>Oq$Em#q9=) z75V%JS(3m#kQgj)_UM=Obj^rhUkg1{jy3z$|G%T6|EL@)`T+d?8<@;NQ6hiucxv}? z$Gl`VKBypI{n-I9r6mz;tLnpjHOpV*|Acpcnn*+a0hsX{_)oO=Coo&%-spJv z&)9#aQ2(RN5BF`-YJ&SLiGL}$X-V`vPa6O*bTPMcWn=w${IkyAq2j&5nE&_afQi-t zi&&99xZ2QwKKQdP2{_H_k^IkR#h=s7U)VsHV}pN9K2GMY`oB~_xX%j% Q08j6~V)tEu82!BZKTD(Up#T5? delta 10810 zcmeHtWmH^C)9&EG-9rc=xJwA`?t^4-4Q|0Dzz_)T4DRkuaCdjt5S#=H!Sxc7_na?z z*S%}q|KH4-J-w@+s_tF8x~san@28;-$Dz;^Wnf@&006)fK!!OPC=#t0^XLEV(~)W-qGM9NuoGNbt2OZW3duD9t?o*EhE;la~c?ipKFzX}#8e-(9iO`)FT zWEn?Naz0LuSj&w>g2kVQ!4lcsM5MJ{HD;^*G%yp;cNHMNY5wwt;6TJKsKX~beM}Rt)A)-L|wa^btCljxASEVnHXV>SHan(|G zWxUlBYVNXVt+TZ$^No$BtRkXhT$oA)Cn}jSC@;g}OYU5%2^fE@xChZ&9&@&v!qw{8 zGiL?gjgZ$AjZEsz>#|20%y<0to+rA#j0BCf_v{?6dx8aPj=p`~!2eSz30leIRiB}_ z;9-BNrt0Yv5h%2urOE{OR}dHgpd20Y9g7gm%IIQc85*}}y~v5-rzn+`E&`)bmonA?oHz$sg+xA|nFH-TYlipJ3Y7X4KPS zH_4mpo{m?ML{X8E9|iVwEULSfQmkHkJ&tIsIt7V9eX zac*RN@VMG->}#C=_zpr`wqWEMg%5|vzQu)e>+Yjm&Y>VCbLkde?OvYPpVk^anHGwc zerl!SJ*g*9Y(IC1-HE=@nNe+V7B7H##?@B{9W6BMy7tu=b(OS~P`U9Ii zCCe%b2ivLumJ6qsIQlrd{OMEoI|5!p<33P$B=C}9I~h#DjG6?yhuIX1(ezCnoYsVy zvWw6QWz#J-?}cjB?*cLOHT*19TtiFY}u$)w@T>TLu%}OU)G3 zN8Iva^Y{nPD2}mi-~&Uv-#FQU5q)l%bjDZhkz`Qe;fsv;oSNYVge>c3GMS0f6kXXJ zmguPm*p}9!kJMzNO*cIRDd4ObzB(XFNlcQHdR6C74;WX}nW$%F>SPIVy!%ENnJbgq zpP=PbEauxY2Jd8+$qvE4gu#wcN1)O{S5L7~Z2{50r2X`LIGT%7dTNUi3_mLy&J~6Y z=jKKwxVVAHd5r0}g#k=3vxu$SNuLwd7%W5?qfVNOz}vj|!ivk>?Np&$kj^$PIXbjL z%Xel62@+gh225kyp440Jay5kplVKnNAd?o4VIlgh(aVag8Gz&YuEZ=avP zv)~6?m7o6=b8qLE(1k%7+z4V37~EC^etyl8?^>1FVL_W}r)71(DXZcltw%6y+=ik4 zKC_E-zXGWh4>vW{VGhNEr!xpz0i9=(&^A1CNO`2|!*UAs_mhj3F96^d`w(jpc1y)# zv4qwSJcSI4y6HiTV-;%2NX=UPEvmLM=w2Pd680&)mym&WPE|i;1{e{6H!VqC1WOn7 zSwTbw&jjzCKTM2OMAA)OzwkJP`EyKHaiJdm8pY;BF&$11qxb~v=O~6Kpd)}6?IxKq z1i{_w=xx4)jGZqNqy}=dkaB$ST)y|6agVFugES(y4%N9(_n900^5%lVK1G2fCM>^o zIxYe9Y%M~Af7tnOHWe4nS+^Bl^r5frq^%$nMd)-k1c?BqLnB^IL$b0=VpJDmg6Gwo z@bK8u#!L}RG6MQFaGmIwJ$b-Pq;dY<_RTA+YKjcTJ{p~HtF<2hZY6i0Ce4r;%@2bB zw@q67p7q@GRE~%#^RiGM1LAHCE0O z`~64#w?2np3x0n^+fnfv)X+KHxG;~=Lei~7^1nZ7#U(`5A8-Q{q*CEMwQc}725!ZtzvZr=n zic7Y%lMd0Md5}k_c${tSydVeWt=$IqHJK7)rd>X6rO;ipGR%1r7+!)w?38w!mo}Oc z*hbRDu|wwblqyJ#u$Z*mGA}a{nDvF#l7_pU++Re-e%>}d-{>U8Lc~0M5w+wXOX`4z!+2S|!BKjRyvy4`|zanO-!B&+?l(0gFY4bvwfjOqO*O#Sk6p-t9BV zTynS+b|jwNcL*w2k?^_6g9^)AwfA+$(AW1Xz6Y#?g%dZ#2>0Rc+^IJorJHVWV` zciTJ;QmlW%5eh6mn*&*0^eHIYC^t$Ity@Ap^ymBbc!Zcc-4Uhi5VEk23-M2RhHYE9l{zQ=GMA?BOrKmi$)JNTnaFHQ>Q@Nqh?h z4lpwop8|c{Vj0oG@dlxG^Onr#u1xk{7Uv2seH;;cB|}9<&8(C3$hz%ts;Mo60#PFRn0}FX7XL$vVo_qHzU_~gd$L+OlSHdH>G4(QFO2wTWHf;6efEJq?};iI z#I+@(EAgZvy*#4B+v4PFKLqQgiQ4!bo0tx5ngmkFQO0V=*@Yx)QP>!QaWh&1tjjyp zv~;_(doP3-HZ9Gwvo9z~OOg6<3`;je2RuM7=}#OOgsM9!NjKQMJxHY-9hxRxSIJjH zVcqt$2zh1}BaH}+KqN)hu#MOxP#Xgmb8vUx?cgbxmp0y(xOeyiu`JvyROZ9QE$?m= zk{H~|kYSkOZz(?04^KP;4~F|v&!%dDl(sMC#NPp%iKlB8N;4z!mpfNNGcsM`;Q2x_ zGrf42Z^OddGea~tJCHehf(&#xRo1P=_?YVD5nmV1bu$CUE=ykI1&57^-3CUroa3vW z_)_nRyACwg5b29a*_2OIjumG0^xC&f~6qc>n_3J8cGD4`eQp0Ob&-9i!FWh5l@m@>bKT#wc^|EEjDUR zJ|l{)8uIbpBme1&I6+Z-&mWAO4DK8iXE9^k;&$1qQca&_20XVCo_Jey z@TOqFBjhQ8H?FSQ`zMR7pIKg-Ex?_^@%HkwndpUOEzG6R0hlj}vYpn;1?eS1>OTRx zmvd-@CgrV**CaERSwR}B>LN-}+NkiaWobXs8a4cAN5&%th6msjzgD<=xa982v}eV<=+8a!R`6@up~ zds!;m>?NWwdx(V{#v4{#0P`&=6r4515x?=p;nty@HH9-c&=#R^ zQ=fa_P&iDh8jkB`0qDwutM=9-2q(O+Q|&BN5PnFM@rG?wmKvbn3drRtdV=x#Oxwbg z7v;6YM?s8m&AYP=&tJv#I6(_olW0e1g+_f@U0gohN9D?5b~KPnh}U?J|Ef(X4wv8C z{_PAlXVuJ{eS{3_m8e~_#ZagX#TO;c>;eBs!k#ZDAlAnCmg3kdWH+rL{K4tO^3Bm} zW`jIK%Y?{!3Bmne0nJ}l^!k6T=zp!~|KEx(h15(?U;zLujK{f%^U;dpt?U;$P$>6}HG+FbNBc3^Wp=HLv+r#(G;p#b`p@;!jn9{?pG% zv~@zaNhUmx^Y!s{_^50-WVUO*8|k1;=%65>;1KjGo_xlZZHwo`@jX7bojU2Zc&RIp z=GSVC@3p2`2*5UJ`G)n{=fplSx?Cx=-FI=h4Q#7Ksw13CtJ2xx+}PDSk9IBQ9>BOO zVzo}YoJG}0slW-lsN%ZrC?FE_Vxe-aFN7lZ9mNJzgg&JW3s>Q*PPxw;scpR;`f~|g zGYYP=*=B!J-zL@wu?@^^p?;yf(dEH>iPDEw&i z=fL@#c`?qoB6lzR@*<=m_Gd*+W;I@ks7G&-Rr>0!u4p~VVxjnO2|C>&Ah)u5lm;H; zcas-#C`F~iWD>p1$bq|+vJ3I=5wk8W8gti*u;zmj$17SEAoA-q6UG6{1F5RheDKX$3>Yh?PX3 z+Py?ReAWo@>lWQto#D2uP23c{Wgx@RnH3HT5xrG~{{f=^rh=n4Wm<@Uy>qi;HSn{G(Kl3YIX;h`*%K^qcRarVbEL_kcFT2d07fE0y@h179H4yxi z3fV@LM**2}cT_TZb(KiB{F;uIS#FrR(R$~u+cpye!AmQl4fjNHYAx=qbUNMs+bm(> z_e#%~56!cJW(H7cgQ}TL_Z#RsHP?g8<+0@P`8a^0aCzA2H09qvxthEKj?r-!@4)Jl z0Y@6AdHjRibO`WQ>1oXy5GENfxzxZaPDSob=xK&x9=dLMBMl_MNV;PwbTiY(ZTcqG zv$1GrMm{4|cN=tP7UHx$3TI_Ok%xuFlhb9vO_fnkcrJF!bgHV|r zy+qnPW%HQ?!K|&mFs~dp!RaAbJ5xE1BzPrpZrO!&jh&n{T80(h>O60Dr%u7cE4sss z?*%;Wj&{i%y@_j++&~J;BR!=RuZFCaR~bGEe!Z|v1|D3^iW}uukwAj17p?KoU(JW2 zNv4MHk8CohxF?M;QlbZ6?s?zU*R>=t*;Nj=dP-f-|1i1T>s7lqd7@qBUUZXa%^mmw zcevvG0Q*&P%QwD8dkY_shq>#{Q>OP3SZ zlbyb2Rw=FM#5rqvAVOmKD!Gu;#xKk`#H#&A9n%97Omy3Hgu4@E{uyV|u?#8+Uk2CL zXFH|MlR_o-n=J&Mf$J%Wtfs3;Kjs!@e^!XGU7Xx|`M$|EYc^?ag&<6#TB}GC_s|@A z$L>N!zJSii$H{4R`YU@|Nb<@> zv7VI@S4{5Gjr!H~8;cidU@-li2M=JXB?pDpd8>+XeT)5l5*SswIw~~qwe|a4v=q0~ zl0Y`XO_z;jr&VQ}-mDiMQmPZA)pA)5#C*%MD#}k0tY$+ab=1@g#+j9rC(t|B0P>h> z4eSUgk)4Gh!I|F^^^F4x^0Tgl62)UsI3(h0h&LVIW}H8f7TPMFXB#>!&y3N6HzMy$ zChOV3fa`uDrU6FDthlo1486H5`#uskP(^YJpfVtLT|*aLqO(@v?*P&in7QS|nB*f9 z0BLusV}Nj&=dWJBjC&FzKG+5TJ$a`&$Z^mhu;i=BGM4r(J;`Wa%9Q`W^%y?tx=?BS zoA(E6TR>UJLZmH$DO6TJ?nHd^j?dw$=r#Wyc5-RUfd^Pz1D%R2d#@D|GPf? z09YUap?CTdjwSBP>uot4GnjQM4``zs_V~3~ByYR3k#~Hlg0Ge1k_3}7C8M?^O?PYv z7KAAkCv^xDIHb*B%~?J7npd-f{j`yhg(1>jdKA-i(Z4K{{n*kVMW? zTrV&I^Lj(RKYxiJ=sy|gHxcfw8Lqr@Abofd@3&x$=;WFH$w+%rQleLAY;NB?Piv$x zX#E}1O39QUf)vsccu~}s4p2y(lAlrG=vtm&;174z@Y3%lfy3p_h0k}vy6T?8*0AVf z3uCgJs~G??UbKI(I-t)Pej`{KXMf zn8H6cmNLkMUXv!;VJdQ1(msDv37Cu<1?GdIXYm4-^%U@q58a1Zjie_;fRwP=M|?KUtwKc-XG0TD=`#*+lZ4fcKpVvy0CG3ee$8H+v{{ zAt0SxR87?&9QJp9b69vwmVaV>a;2Dm(ovW01~ffAQ8rBoJO8AzJ3 zWi}duy2x{bqP6fI&C5^0!ePJ37{43E{7z@Tb|g+fPy{Lc`xkA=^JhLiGM<^LAg847 z>F+{wpmmJ}?oLjujqZ+@-+J2JEG~jWK<9jZB#J_jTfh5xW*clQ?WJX}P(KK8vj-n{=dxNPL*MmV~2DS z^PTHrZn|eDU*Fx3{^@x7RO9`69+uAYNI%^O#LEc2Durzf`q9PAGbyKid&uh|V?NeJ zbKru_eA+mk+azixIaMvbw9zCa@s1b) zKp!?!SI3CZ^<7N0+Zs@`hArTo1%6oT`Z^GwsXm3t_w+6<@NB5NsIQc6w5v)?)%G18 zpkiNWSEV+neB(Qb7a~wRn76s?W6@0d&P@?)^(Jef6LqyW63|d`Ft}R{hhOb1=C#~V zoYpeu86UYDqdZiu(*7+P7m@^^5hMVM|Nnu%-!d4I$pf z>AKwjWgdIaUcIuH^jt(Nsjdtx>{ttCwKmy0?&OgKfW%ck*0Dujj8;lh>n~l?r}7=b ztd_O+HFNuJc|0*Dw&dSindC9^=*Q;3a%5~r?^!g`r=PX!TSCXvcysPV(yXD|syW=O zRd;Ts+v>Fmbo-$%oIq)1L9=t{EA=ENHm=1-m3Cbo$lqvPJ;!|aQd7}t1xi6jCL24F zn1%Nt>s!{%vfuRWl>G(D6;RmG66ePq6-yn5LHdYZ{3w>;DUb*L;yvbS;`eX@@C@g~ zQMySym|`o5HSkS4qsyRPwWU#|(F_u7Nyr_433Mr7e8TnA){EM7`Sqs*r>j23Qw^1q z;ye#DDfo9ZLp2!s=Mnn#jPJ3^Ih#Rv)NUD#C zTf$HAeri*uJl`o#nEyL{Mds(l)oHux%r89Laa)elshqOxyjFTY%=!>&__FXs`jX*zja(V4zh>{zdu{144k`sD;C!&lbLKzALxDct!I) zRG}%f)yVeIB}$3_Ruf2H0Z~w2Pr^u>_tIB>L7(4Y^z}~fZkF&j%;pqE1Vz4&H_*4O zS!^q}a{MQs!S{1F2!GBGz8f$N!w>Vr5fT7E2&gLMKK?Z~oW@Z-sePdHJdB`q)HCW%2hR{ zs{6Z&4dnU@4k=gPeC*fMu^e~igJd>HrUto8ch`tFr{H+Hl~)Z-B6}+|L+FbREfvPV zl*zd0Rq>HNA5ST*BX$w~Fqcz!+ zh9)EUy3cb#o!^=eUG+-os~lfAw9eAv$EjpKWU3iqq*hI%+s2QUxgYVQn}nMOw&sVb zw>FC^)}~EIH$99(ql=0O;Gea-0W%J+akgM|8(VsRoR&rZpw%29FUOp@^b{Z6X6Z8t zfcU>T+Nz3pwugFt)SWnncspfiKy*nR?n!e79!=OndNVK4{KG0aEi<6G_7o#BJRj(J zrql)XUK4$cMQ_fl(vPxKNTUfe5c8##_K7^Au5Nkd1;tI6c@yq>C>cZhn<wVyI-hc1_2bV@I)sue#ZsDulLcJm(r2v1}CspLgcD2D6IEO|iea$u_>+zCH z`U+Z;NyTKZ!XtZwsrY_7fh!b>*-V7KgZf=ba5&0VT_PKJhaKd!(racIDTI= z$(jL!To*h*koA&$6O=b@fFR=j+mi$T9bo~s;Q9E=H`!L4O+{2~SCg+?i#_lQ8_@f6 ztQyK$R6}n4t26SolKcY?wO^+u-;8b9YN6%q|5!_o8!=BD*+1g#w45DfgLGCqgA;ZX z@*3Xp=(<;z2DhTreD>r7`w!HcMv3r8Gg^lpdBsm&nQ%hmSV6I{Vsz9Rm^e~FqPZw?OqOhQ3{PsA z`xqo^ndcY+YMFN!`f8ak7@pKIKVg)tVsAHyP?5ktuEZwOyWBqx3xG*uTqJ+_L zm;S#mHjcbq7V914J1spnhqaj`z3-RTFKahFuoFfOWHm2{Kixw8sqB!OGdQmYWp86a zP;{xlwK?ceNi~bHV&FD8%B~KkdB2X&&R9rFbORzPUo8zNQtQtb$Wz3`Z7k4PGzqQN zIc=1V(L=f`p~wxt@Tx5pXfv~Zv50438mv!-!uDy8h#8?QFG$k}b!T<+)?joPNCjPR z(VFzS0!V)B*(%Suh1%~nzsZrU8;z~G`Z943wxceuDhdoeuJDI*?K#tM&}`+lB-V|? z@Gg9wG!UVa-OgGwL7!Xgr}lJa4l*%aO`Bo2*`X(c=>bshhJQ||Z7KR*q8M9;)iU*F z4UjSu;32q|H|l4KMuF2V*oR+r7U z7X$r(SO^(Cm5-XdUxhb{Ask^35^D(VTLQX1<~I@g#m_s{gdQupTUpPR>o0Zhoy}%D zB#oS*)Xu>c$B2qDP|!Fqk4LBA9?woe>h!n~e|n3@!&8uJJr2^JcRx=LVLYTdlBoay z?1!Dr|9rfl1|f?2FCH;5JlRZ`53jTD;YaWvz{9`S2NX!8KGpM|a{fJS^fyKs5n_u- zME^fJ^w^(#QVN6S2Z7}e`P@H+K1F?Cz=g0GU_MIz_XNb>Ky>s+paMD^#M1!f5&X}V zEb`yrMyyA0>u;(5ZbYMe}Z7(OlfUE=)B3QqfF7ccKsuA(iWf8? zf(D2`($d7?{>zXl7L5s19|Q&dmmpt>N2dD!2pV}1gemot7G?UY6aU6ufA=;)8p2{q z^-D)urbN)*a*wjYely}N7!0O8G@AAB_WyiL55-5|wCV5Oe|=z9R(hm8HT%`7_Bq=0 zPhS}NUp?MYhS;hQLrl$nn@p=25%fD%$f6nXuby0)5%KJU003P(BTIWG#-G=}&FG(? z?;)r~|DQGqHKPVmFeiC5+<(0B!(j@dKR`K}kPvg~N6^1s object: raise requests.HTTPError(f"{resp.status_code} - {resp.reason}: {url}") def tag_to_commit(tag: str) -> str: - tags = do_request(f"{GITHUB_API_BASE}tags") + tags = do_request(f"{GITHUB_API_BASE}tags?per_page=100") for tagent in tags: if tagent['name'] == tag: return _build_loc(f"{GITHUB_BASE}blob/{tagent['commit']['sha']}/", source, fmt) diff --git a/linkml_runtime/linkml_model/mappings.py b/linkml_runtime/linkml_model/mappings.py index 0e7a8d97..890a0734 100644 --- a/linkml_runtime/linkml_model/mappings.py +++ b/linkml_runtime/linkml_model/mappings.py @@ -1,5 +1,5 @@ -# Auto generated from mappings.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:16 +# Auto generated from mappings.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:05:58 # Schema: mappings # # id: https://w3id.org/linkml/mappings @@ -76,4 +76,4 @@ class slots: model_uri=LINKML.deprecated_element_has_exact_replacement, domain=None, range=Optional[Union[str, URIorCURIE]], mappings = [IAO["0100001"]]) slots.deprecated_element_has_possible_replacement = Slot(uri=LINKML.deprecated_element_has_possible_replacement, name="deprecated element has possible replacement", curie=LINKML.curie('deprecated_element_has_possible_replacement'), - model_uri=LINKML.deprecated_element_has_possible_replacement, domain=None, range=Optional[Union[str, URIorCURIE]], mappings = [OIO.consider]) + model_uri=LINKML.deprecated_element_has_possible_replacement, domain=None, range=Optional[Union[str, URIorCURIE]], mappings = [OIO["consider"]]) diff --git a/linkml_runtime/linkml_model/meta.py b/linkml_runtime/linkml_model/meta.py index 5480f1dc..f6583822 100644 --- a/linkml_runtime/linkml_model/meta.py +++ b/linkml_runtime/linkml_model/meta.py @@ -1,5 +1,5 @@ -# Auto generated from meta.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:17 +# Auto generated from meta.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:06:00 # Schema: meta # # id: https://w3id.org/linkml/meta @@ -61,6 +61,7 @@ IAO = CurieNamespace('IAO', 'http://purl.obolibrary.org/obo/IAO_') NCIT = CurieNamespace('NCIT', 'http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#') OIO = CurieNamespace('OIO', 'http://www.geneontology.org/formats/oboInOwl#') +SIO = CurieNamespace('SIO', 'http://semanticscience.org/resource/SIO_') BIBO = CurieNamespace('bibo', 'http://purl.org/ontology/bibo/') CDISC = CurieNamespace('cdisc', 'http://rdf.cdisc.org/mms#') DCTERMS = CurieNamespace('dcterms', 'http://purl.org/dc/terms/') @@ -151,7 +152,7 @@ class CommonMetadata(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.CommonMetadata + class_class_uri: ClassVar[URIRef] = LINKML["CommonMetadata"] class_class_curie: ClassVar[str] = "linkml:CommonMetadata" class_name: ClassVar[str] = "common_metadata" class_model_uri: ClassVar[URIRef] = LINKML.CommonMetadata @@ -314,13 +315,14 @@ class Element(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Element + class_class_uri: ClassVar[URIRef] = LINKML["Element"] class_class_curie: ClassVar[str] = "linkml:Element" class_name: ClassVar[str] = "element" class_model_uri: ClassVar[URIRef] = LINKML.Element name: Union[str, ElementName] = None id_prefixes: Optional[Union[Union[str, NCName], List[Union[str, NCName]]]] = empty_list() + id_prefixes_are_closed: Optional[Union[bool, Bool]] = None 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 @@ -372,6 +374,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): self.id_prefixes = [self.id_prefixes] if self.id_prefixes is not None else [] self.id_prefixes = [v if isinstance(v, NCName) else NCName(v) for v in self.id_prefixes] + if self.id_prefixes_are_closed is not None and not isinstance(self.id_prefixes_are_closed, Bool): + self.id_prefixes_are_closed = Bool(self.id_prefixes_are_closed) + if self.definition_uri is not None and not isinstance(self.definition_uri, URIorCURIE): self.definition_uri = URIorCURIE(self.definition_uri) @@ -515,7 +520,7 @@ class SchemaDefinition(Element): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.SchemaDefinition + class_class_uri: ClassVar[URIRef] = LINKML["SchemaDefinition"] class_class_curie: ClassVar[str] = "linkml:SchemaDefinition" class_name: ClassVar[str] = "schema_definition" class_model_uri: ClassVar[URIRef] = LINKML.SchemaDefinition @@ -622,7 +627,7 @@ class AnonymousTypeExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = ["pattern", "structured_pattern", "equals_string", "equals_string_in", "equals_number", "minimum_value", "maximum_value"] - class_class_uri: ClassVar[URIRef] = LINKML.AnonymousTypeExpression + class_class_uri: ClassVar[URIRef] = LINKML["AnonymousTypeExpression"] class_class_curie: ClassVar[str] = "linkml:AnonymousTypeExpression" class_name: ClassVar[str] = "anonymous_type_expression" class_model_uri: ClassVar[URIRef] = LINKML.AnonymousTypeExpression @@ -634,8 +639,8 @@ class AnonymousTypeExpression(YAMLRoot): equals_string: Optional[str] = None equals_string_in: Optional[Union[str, List[str]]] = empty_list() equals_number: Optional[int] = None - minimum_value: Optional[int] = None - maximum_value: Optional[int] = None + minimum_value: Optional[Union[dict, Anything]] = None + maximum_value: Optional[Union[dict, Anything]] = None none_of: Optional[Union[Union[dict, "AnonymousTypeExpression"], List[Union[dict, "AnonymousTypeExpression"]]]] = empty_list() exactly_one_of: Optional[Union[Union[dict, "AnonymousTypeExpression"], List[Union[dict, "AnonymousTypeExpression"]]]] = empty_list() any_of: Optional[Union[Union[dict, "AnonymousTypeExpression"], List[Union[dict, "AnonymousTypeExpression"]]]] = empty_list() @@ -664,12 +669,6 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.equals_number is not None and not isinstance(self.equals_number, int): self.equals_number = int(self.equals_number) - if self.minimum_value is not None and not isinstance(self.minimum_value, int): - self.minimum_value = int(self.minimum_value) - - if self.maximum_value is not None and not isinstance(self.maximum_value, int): - self.maximum_value = int(self.maximum_value) - if not isinstance(self.none_of, list): self.none_of = [self.none_of] if self.none_of is not None else [] self.none_of = [v if isinstance(v, AnonymousTypeExpression) else AnonymousTypeExpression(**as_dict(v)) for v in self.none_of] @@ -696,7 +695,7 @@ class TypeDefinition(Element): """ _inherited_slots: ClassVar[List[str]] = ["base", "uri", "repr", "pattern", "structured_pattern", "equals_string", "equals_string_in", "equals_number", "minimum_value", "maximum_value"] - class_class_uri: ClassVar[URIRef] = LINKML.TypeDefinition + class_class_uri: ClassVar[URIRef] = LINKML["TypeDefinition"] class_class_curie: ClassVar[str] = "linkml:TypeDefinition" class_name: ClassVar[str] = "type_definition" class_model_uri: ClassVar[URIRef] = LINKML.TypeDefinition @@ -714,8 +713,8 @@ class TypeDefinition(Element): equals_string: Optional[str] = None equals_string_in: Optional[Union[str, List[str]]] = empty_list() equals_number: Optional[int] = None - minimum_value: Optional[int] = None - maximum_value: Optional[int] = None + minimum_value: Optional[Union[dict, Anything]] = None + maximum_value: Optional[Union[dict, Anything]] = None none_of: Optional[Union[Union[dict, AnonymousTypeExpression], List[Union[dict, AnonymousTypeExpression]]]] = empty_list() exactly_one_of: Optional[Union[Union[dict, AnonymousTypeExpression], List[Union[dict, AnonymousTypeExpression]]]] = empty_list() any_of: Optional[Union[Union[dict, AnonymousTypeExpression], List[Union[dict, AnonymousTypeExpression]]]] = empty_list() @@ -765,12 +764,6 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.equals_number is not None and not isinstance(self.equals_number, int): self.equals_number = int(self.equals_number) - if self.minimum_value is not None and not isinstance(self.minimum_value, int): - self.minimum_value = int(self.minimum_value) - - if self.maximum_value is not None and not isinstance(self.maximum_value, int): - self.maximum_value = int(self.maximum_value) - if not isinstance(self.none_of, list): self.none_of = [self.none_of] if self.none_of is not None else [] self.none_of = [v if isinstance(v, AnonymousTypeExpression) else AnonymousTypeExpression(**as_dict(v)) for v in self.none_of] @@ -797,7 +790,7 @@ class SubsetDefinition(Element): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.SubsetDefinition + class_class_uri: ClassVar[URIRef] = LINKML["SubsetDefinition"] class_class_curie: ClassVar[str] = "linkml:SubsetDefinition" class_name: ClassVar[str] = "subset_definition" class_model_uri: ClassVar[URIRef] = LINKML.SubsetDefinition @@ -820,7 +813,7 @@ class Definition(Element): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Definition + class_class_uri: ClassVar[URIRef] = LINKML["Definition"] class_class_curie: ClassVar[str] = "linkml:Definition" class_name: ClassVar[str] = "definition" class_model_uri: ClassVar[URIRef] = LINKML.Definition @@ -869,7 +862,7 @@ class AnonymousEnumExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.AnonymousEnumExpression + class_class_uri: ClassVar[URIRef] = LINKML["AnonymousEnumExpression"] class_class_curie: ClassVar[str] = "linkml:AnonymousEnumExpression" class_name: ClassVar[str] = "anonymous_enum_expression" class_model_uri: ClassVar[URIRef] = LINKML.AnonymousEnumExpression @@ -933,7 +926,7 @@ class EnumDefinition(Definition): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.EnumDefinition + class_class_uri: ClassVar[URIRef] = LINKML["EnumDefinition"] class_class_curie: ClassVar[str] = "linkml:EnumDefinition" class_name: ClassVar[str] = "enum_definition" class_model_uri: ClassVar[URIRef] = LINKML.EnumDefinition @@ -1008,7 +1001,7 @@ class MatchQuery(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.MatchQuery + class_class_uri: ClassVar[URIRef] = LINKML["MatchQuery"] class_class_curie: ClassVar[str] = "linkml:MatchQuery" class_name: ClassVar[str] = "match_query" class_model_uri: ClassVar[URIRef] = LINKML.MatchQuery @@ -1034,7 +1027,7 @@ class ReachabilityQuery(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.ReachabilityQuery + class_class_uri: ClassVar[URIRef] = LINKML["ReachabilityQuery"] class_class_curie: ClassVar[str] = "linkml:ReachabilityQuery" class_name: ClassVar[str] = "reachability_query" class_model_uri: ClassVar[URIRef] = LINKML.ReachabilityQuery @@ -1078,7 +1071,7 @@ class StructuredAlias(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = SKOSXL.Label + class_class_uri: ClassVar[URIRef] = SKOSXL["Label"] class_class_curie: ClassVar[str] = "skosxl:Label" class_name: ClassVar[str] = "structured_alias" class_model_uri: ClassVar[URIRef] = LINKML.StructuredAlias @@ -1256,7 +1249,7 @@ class Expression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Expression + class_class_uri: ClassVar[URIRef] = LINKML["Expression"] class_class_curie: ClassVar[str] = "linkml:Expression" class_name: ClassVar[str] = "expression" class_model_uri: ClassVar[URIRef] = LINKML.Expression @@ -1269,7 +1262,7 @@ class TypeExpression(Expression): """ _inherited_slots: ClassVar[List[str]] = ["pattern", "structured_pattern", "equals_string", "equals_string_in", "equals_number", "minimum_value", "maximum_value"] - class_class_uri: ClassVar[URIRef] = LINKML.TypeExpression + class_class_uri: ClassVar[URIRef] = LINKML["TypeExpression"] class_class_curie: ClassVar[str] = "linkml:TypeExpression" class_name: ClassVar[str] = "type_expression" class_model_uri: ClassVar[URIRef] = LINKML.TypeExpression @@ -1281,8 +1274,8 @@ class TypeExpression(Expression): equals_string: Optional[str] = None equals_string_in: Optional[Union[str, List[str]]] = empty_list() equals_number: Optional[int] = None - minimum_value: Optional[int] = None - maximum_value: Optional[int] = None + minimum_value: Optional[Union[dict, Anything]] = None + maximum_value: Optional[Union[dict, Anything]] = None none_of: Optional[Union[Union[dict, "AnonymousTypeExpression"], List[Union[dict, "AnonymousTypeExpression"]]]] = empty_list() exactly_one_of: Optional[Union[Union[dict, "AnonymousTypeExpression"], List[Union[dict, "AnonymousTypeExpression"]]]] = empty_list() any_of: Optional[Union[Union[dict, "AnonymousTypeExpression"], List[Union[dict, "AnonymousTypeExpression"]]]] = empty_list() @@ -1311,12 +1304,6 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.equals_number is not None and not isinstance(self.equals_number, int): self.equals_number = int(self.equals_number) - if self.minimum_value is not None and not isinstance(self.minimum_value, int): - self.minimum_value = int(self.minimum_value) - - if self.maximum_value is not None and not isinstance(self.maximum_value, int): - self.maximum_value = int(self.maximum_value) - if not isinstance(self.none_of, list): self.none_of = [self.none_of] if self.none_of is not None else [] self.none_of = [v if isinstance(v, AnonymousTypeExpression) else AnonymousTypeExpression(**as_dict(v)) for v in self.none_of] @@ -1343,7 +1330,7 @@ class EnumExpression(Expression): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.EnumExpression + class_class_uri: ClassVar[URIRef] = LINKML["EnumExpression"] class_class_curie: ClassVar[str] = "linkml:EnumExpression" class_name: ClassVar[str] = "enum_expression" class_model_uri: ClassVar[URIRef] = LINKML.EnumExpression @@ -1407,7 +1394,7 @@ class AnonymousExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.AnonymousExpression + class_class_uri: ClassVar[URIRef] = LINKML["AnonymousExpression"] class_class_curie: ClassVar[str] = "linkml:AnonymousExpression" class_name: ClassVar[str] = "anonymous_expression" class_model_uri: ClassVar[URIRef] = LINKML.AnonymousExpression @@ -1576,7 +1563,7 @@ class PathExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.PathExpression + class_class_uri: ClassVar[URIRef] = LINKML["PathExpression"] class_class_curie: ClassVar[str] = "linkml:PathExpression" class_name: ClassVar[str] = "path_expression" class_model_uri: ClassVar[URIRef] = LINKML.PathExpression @@ -1781,7 +1768,7 @@ class SlotExpression(Expression): """ _inherited_slots: ClassVar[List[str]] = ["range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "minimum_cardinality", "maximum_cardinality"] - class_class_uri: ClassVar[URIRef] = LINKML.SlotExpression + class_class_uri: ClassVar[URIRef] = LINKML["SlotExpression"] class_class_curie: ClassVar[str] = "linkml:SlotExpression" class_name: ClassVar[str] = "slot_expression" class_model_uri: ClassVar[URIRef] = LINKML.SlotExpression @@ -1793,8 +1780,8 @@ class SlotExpression(Expression): recommended: Optional[Union[bool, Bool]] = None inlined: Optional[Union[bool, Bool]] = None inlined_as_list: Optional[Union[bool, Bool]] = None - minimum_value: Optional[int] = None - maximum_value: Optional[int] = None + minimum_value: Optional[Union[dict, Anything]] = None + maximum_value: Optional[Union[dict, Anything]] = None pattern: Optional[str] = None structured_pattern: Optional[Union[dict, "PatternExpression"]] = None unit: Optional[Union[dict, UnitOfMeasure]] = None @@ -1835,12 +1822,6 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.inlined_as_list is not None and not isinstance(self.inlined_as_list, Bool): self.inlined_as_list = Bool(self.inlined_as_list) - if self.minimum_value is not None and not isinstance(self.minimum_value, int): - self.minimum_value = int(self.minimum_value) - - if self.maximum_value is not None and not isinstance(self.maximum_value, int): - self.maximum_value = int(self.maximum_value) - if self.pattern is not None and not isinstance(self.pattern, str): self.pattern = str(self.pattern) @@ -1904,7 +1885,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): class AnonymousSlotExpression(AnonymousExpression): _inherited_slots: ClassVar[List[str]] = ["range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "minimum_cardinality", "maximum_cardinality"] - class_class_uri: ClassVar[URIRef] = LINKML.AnonymousSlotExpression + class_class_uri: ClassVar[URIRef] = LINKML["AnonymousSlotExpression"] class_class_curie: ClassVar[str] = "linkml:AnonymousSlotExpression" class_name: ClassVar[str] = "anonymous_slot_expression" class_model_uri: ClassVar[URIRef] = LINKML.AnonymousSlotExpression @@ -1916,8 +1897,8 @@ class AnonymousSlotExpression(AnonymousExpression): recommended: Optional[Union[bool, Bool]] = None inlined: Optional[Union[bool, Bool]] = None inlined_as_list: Optional[Union[bool, Bool]] = None - minimum_value: Optional[int] = None - maximum_value: Optional[int] = None + minimum_value: Optional[Union[dict, Anything]] = None + maximum_value: Optional[Union[dict, Anything]] = None pattern: Optional[str] = None structured_pattern: Optional[Union[dict, "PatternExpression"]] = None unit: Optional[Union[dict, UnitOfMeasure]] = None @@ -1958,12 +1939,6 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.inlined_as_list is not None and not isinstance(self.inlined_as_list, Bool): self.inlined_as_list = Bool(self.inlined_as_list) - if self.minimum_value is not None and not isinstance(self.minimum_value, int): - self.minimum_value = int(self.minimum_value) - - if self.maximum_value is not None and not isinstance(self.maximum_value, int): - self.maximum_value = int(self.maximum_value) - if self.pattern is not None and not isinstance(self.pattern, str): self.pattern = str(self.pattern) @@ -2030,7 +2005,7 @@ class SlotDefinition(Definition): """ _inherited_slots: ClassVar[List[str]] = ["domain", "multivalued", "inherited", "readonly", "ifabsent", "list_elements_unique", "list_elements_ordered", "shared", "key", "identifier", "designates_type", "role", "relational_role", "range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "minimum_cardinality", "maximum_cardinality"] - class_class_uri: ClassVar[URIRef] = LINKML.SlotDefinition + class_class_uri: ClassVar[URIRef] = LINKML["SlotDefinition"] class_class_curie: ClassVar[str] = "linkml:SlotDefinition" class_name: ClassVar[str] = "slot_definition" class_model_uri: ClassVar[URIRef] = LINKML.SlotDefinition @@ -2083,8 +2058,8 @@ class SlotDefinition(Definition): recommended: Optional[Union[bool, Bool]] = None inlined: Optional[Union[bool, Bool]] = None inlined_as_list: Optional[Union[bool, Bool]] = None - minimum_value: Optional[int] = None - maximum_value: Optional[int] = None + minimum_value: Optional[Union[dict, Anything]] = None + maximum_value: Optional[Union[dict, Anything]] = None pattern: Optional[str] = None structured_pattern: Optional[Union[dict, "PatternExpression"]] = None unit: Optional[Union[dict, UnitOfMeasure]] = None @@ -2255,12 +2230,6 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.inlined_as_list is not None and not isinstance(self.inlined_as_list, Bool): self.inlined_as_list = Bool(self.inlined_as_list) - if self.minimum_value is not None and not isinstance(self.minimum_value, int): - self.minimum_value = int(self.minimum_value) - - if self.maximum_value is not None and not isinstance(self.maximum_value, int): - self.maximum_value = int(self.maximum_value) - if self.pattern is not None and not isinstance(self.pattern, str): self.pattern = str(self.pattern) @@ -2327,7 +2296,7 @@ class ClassExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.ClassExpression + class_class_uri: ClassVar[URIRef] = LINKML["ClassExpression"] class_class_curie: ClassVar[str] = "linkml:ClassExpression" class_name: ClassVar[str] = "class_expression" class_model_uri: ClassVar[URIRef] = LINKML.ClassExpression @@ -2364,7 +2333,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): class AnonymousClassExpression(AnonymousExpression): _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.AnonymousClassExpression + class_class_uri: ClassVar[URIRef] = LINKML["AnonymousClassExpression"] class_class_curie: ClassVar[str] = "linkml:AnonymousClassExpression" class_name: ClassVar[str] = "anonymous_class_expression" class_model_uri: ClassVar[URIRef] = LINKML.AnonymousClassExpression @@ -2408,7 +2377,7 @@ class ClassDefinition(Definition): """ _inherited_slots: ClassVar[List[str]] = ["defining_slots", "represents_relationship"] - class_class_uri: ClassVar[URIRef] = LINKML.ClassDefinition + class_class_uri: ClassVar[URIRef] = LINKML["ClassDefinition"] class_class_curie: ClassVar[str] = "linkml:ClassDefinition" class_name: ClassVar[str] = "class_definition" class_model_uri: ClassVar[URIRef] = LINKML.ClassDefinition @@ -2530,7 +2499,7 @@ class ClassLevelRule(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.ClassLevelRule + class_class_uri: ClassVar[URIRef] = LINKML["ClassLevelRule"] class_class_curie: ClassVar[str] = "linkml:ClassLevelRule" class_name: ClassVar[str] = "class_level_rule" class_model_uri: ClassVar[URIRef] = LINKML.ClassLevelRule @@ -2543,7 +2512,7 @@ class ClassRule(ClassLevelRule): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.ClassRule + class_class_uri: ClassVar[URIRef] = LINKML["ClassRule"] class_class_curie: ClassVar[str] = "linkml:ClassRule" class_name: ClassVar[str] = "class_rule" class_model_uri: ClassVar[URIRef] = LINKML.ClassRule @@ -2736,7 +2705,7 @@ class PatternExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = ["syntax"] - class_class_uri: ClassVar[URIRef] = LINKML.PatternExpression + class_class_uri: ClassVar[URIRef] = LINKML["PatternExpression"] class_class_curie: ClassVar[str] = "linkml:PatternExpression" class_name: ClassVar[str] = "pattern_expression" class_model_uri: ClassVar[URIRef] = LINKML.PatternExpression @@ -2917,7 +2886,7 @@ class ImportExpression(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.ImportExpression + class_class_uri: ClassVar[URIRef] = LINKML["ImportExpression"] class_class_curie: ClassVar[str] = "linkml:ImportExpression" class_name: ClassVar[str] = "import_expression" class_model_uri: ClassVar[URIRef] = LINKML.ImportExpression @@ -3099,7 +3068,7 @@ class Setting(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Setting + class_class_uri: ClassVar[URIRef] = LINKML["Setting"] class_class_curie: ClassVar[str] = "linkml:Setting" class_name: ClassVar[str] = "setting" class_model_uri: ClassVar[URIRef] = LINKML.Setting @@ -3128,7 +3097,7 @@ class Prefix(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Prefix + class_class_uri: ClassVar[URIRef] = LINKML["Prefix"] class_class_curie: ClassVar[str] = "linkml:Prefix" class_name: ClassVar[str] = "prefix" class_model_uri: ClassVar[URIRef] = LINKML.Prefix @@ -3157,7 +3126,7 @@ class LocalName(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.LocalName + class_class_uri: ClassVar[URIRef] = LINKML["LocalName"] class_class_curie: ClassVar[str] = "linkml:LocalName" class_name: ClassVar[str] = "local_name" class_model_uri: ClassVar[URIRef] = LINKML.LocalName @@ -3186,7 +3155,7 @@ class Example(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.Example + class_class_uri: ClassVar[URIRef] = LINKML["Example"] class_class_curie: ClassVar[str] = "linkml:Example" class_name: ClassVar[str] = "example" class_model_uri: ClassVar[URIRef] = LINKML.Example @@ -3212,7 +3181,7 @@ class AltDescription(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.AltDescription + class_class_uri: ClassVar[URIRef] = LINKML["AltDescription"] class_class_curie: ClassVar[str] = "linkml:AltDescription" class_name: ClassVar[str] = "alt_description" class_model_uri: ClassVar[URIRef] = LINKML.AltDescription @@ -3241,7 +3210,7 @@ class PermissibleValue(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.PermissibleValue + class_class_uri: ClassVar[URIRef] = LINKML["PermissibleValue"] class_class_curie: ClassVar[str] = "linkml:PermissibleValue" class_name: ClassVar[str] = "permissible_value" class_model_uri: ClassVar[URIRef] = LINKML.PermissibleValue @@ -3433,7 +3402,7 @@ class UniqueKey(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = LINKML.UniqueKey + class_class_uri: ClassVar[URIRef] = LINKML["UniqueKey"] class_class_curie: ClassVar[str] = "linkml:UniqueKey" class_name: ClassVar[str] = "unique_key" class_model_uri: ClassVar[URIRef] = LINKML.UniqueKey @@ -3629,6 +3598,9 @@ class PvFormulaOptions(EnumDefinitionImpl): FHIR_CODING = PermissibleValue( text="FHIR_CODING", description="The permissible values are the set of FHIR coding elements derived from the code set") + LABEL = PermissibleValue( + text="LABEL", + description="The permissible values are the set of human readable labels in the code set") _defn = EnumDefinition( name="PvFormulaOptions", @@ -3655,15 +3627,15 @@ class RelationalRoleEnum(EnumDefinitionImpl): SUBJECT = PermissibleValue( text="SUBJECT", description="a slot with this role connects a relationship to its subject/source node", - meaning=RDF.subject) + meaning=RDF["subject"]) OBJECT = PermissibleValue( text="OBJECT", description="a slot with this role connects a relationship to its object/target node", - meaning=RDF.object) + meaning=RDF["object"]) PREDICATE = PermissibleValue( text="PREDICATE", description="a slot with this role connects a relationship to its predicate/property", - meaning=RDF.predicate) + meaning=RDF["predicate"]) NODE = PermissibleValue( text="NODE", description="""a slot with this role connects a symmetric relationship to a node that represents either subject or object node""") @@ -3682,16 +3654,16 @@ class AliasPredicateEnum(EnumDefinitionImpl): """ EXACT_SYNONYM = PermissibleValue( text="EXACT_SYNONYM", - meaning=SKOS.exactMatch) + meaning=SKOS["exactMatch"]) RELATED_SYNONYM = PermissibleValue( text="RELATED_SYNONYM", - meaning=SKOS.relatedMatch) + meaning=SKOS["relatedMatch"]) BROAD_SYNONYM = PermissibleValue( text="BROAD_SYNONYM", - meaning=SKOS.broaderMatch) + meaning=SKOS["broaderMatch"]) NARROW_SYNONYM = PermissibleValue( text="NARROW_SYNONYM", - meaning=SKOS.narrowerMatch) + meaning=SKOS["narrowerMatch"]) _defn = EnumDefinition( name="AliasPredicateEnum", @@ -3729,6 +3701,9 @@ class slots: slots.id_prefixes = Slot(uri=LINKML.id_prefixes, name="id_prefixes", curie=LINKML.curie('id_prefixes'), model_uri=LINKML.id_prefixes, domain=Element, range=Optional[Union[Union[str, NCName], List[Union[str, NCName]]]]) +slots.id_prefixes_are_closed = Slot(uri=LINKML.id_prefixes_are_closed, name="id_prefixes_are_closed", curie=LINKML.curie('id_prefixes_are_closed'), + model_uri=LINKML.id_prefixes_are_closed, domain=Element, range=Optional[Union[bool, Bool]]) + slots.description = Slot(uri=SKOS.definition, name="description", curie=SKOS.curie('definition'), model_uri=LINKML.description, domain=Element, range=Optional[str]) @@ -4186,10 +4161,10 @@ class slots: model_uri=LINKML.role, domain=SlotDefinition, range=Optional[str]) slots.minimum_value = Slot(uri=LINKML.minimum_value, name="minimum_value", curie=LINKML.curie('minimum_value'), - model_uri=LINKML.minimum_value, domain=SlotDefinition, range=Optional[int]) + model_uri=LINKML.minimum_value, domain=SlotDefinition, range=Optional[Union[dict, Anything]]) slots.maximum_value = Slot(uri=LINKML.maximum_value, name="maximum_value", curie=LINKML.curie('maximum_value'), - model_uri=LINKML.maximum_value, domain=SlotDefinition, range=Optional[int]) + model_uri=LINKML.maximum_value, domain=SlotDefinition, range=Optional[Union[dict, Anything]]) slots.interpolated = Slot(uri=LINKML.interpolated, name="interpolated", curie=LINKML.curie('interpolated'), model_uri=LINKML.interpolated, domain=PatternExpression, range=Optional[Union[bool, Bool]]) diff --git a/linkml_runtime/linkml_model/model/docs/specification/01introduction.md b/linkml_runtime/linkml_model/model/docs/specification/01introduction.md index d3190b26..6c0687d8 100644 --- a/linkml_runtime/linkml_model/model/docs/specification/01introduction.md +++ b/linkml_runtime/linkml_model/model/docs/specification/01introduction.md @@ -14,7 +14,7 @@ LinkML is self-describing, and any LinkML schema is itself a collection instance ## Audience -This document is intended for LinkML tool and framework implementors, and is intended to formally specify the structure and semantics of LinkML. +This document is intended for LinkML tool and framework implementers, and is intended to formally specify the structure and semantics of LinkML. For a more lightweight introduction, consult the material on the main [LinkML site](https://linkml.io), including the LinkML tutorial. diff --git a/linkml_runtime/linkml_model/model/docs/specification/03schemas.md b/linkml_runtime/linkml_model/model/docs/specification/03schemas.md index ff427fc1..d9631588 100644 --- a/linkml_runtime/linkml_model/model/docs/specification/03schemas.md +++ b/linkml_runtime/linkml_model/model/docs/specification/03schemas.md @@ -74,20 +74,20 @@ A schema *m* is an instance of a SchemaDefinition, with normative elements: | Name | Cardinality and Range | Description | | --- | --- |-------------------------------------------------------------------------------------------------| -| [id](id.md) | 1..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | The official schema URI | -| [name](name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | a unique name for the schema that is both human-readable and consists of only... **identifier** | -| [classes](classes.md) | 0..*
[ClassDefinition](ClassDefinition.md) | An index to the collection of all class definitions in the schema | -| [slot_definitions](slot_definitions.md) | 0..*
[SlotDefinition](SlotDefinition.md) | An index to the collection of all slot definitions in the schema | -| [enums](enums.md) | 0..*
[EnumDefinition](EnumDefinition.md) | An index to the collection of all enum definitions in the schema | -| [subsets](subsets.md) | 0..*
[SubsetDefinition](SubsetDefinition.md) | An index to the collection of all subset definitions in the schema | -| [prefixes](prefixes.md) | 0..*
[Prefix](Prefix.md) | prefix / URI definitions to be added to the context beyond those fetched from... | -| [default_prefix](default_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | default and base prefix -- used for ':' identifiers, @base and @vocab | -| [default_range](default_range.md) | 0..1
[TypeDefinition](TypeDefinition.md) | default slot range to be used if range element is omitted from a slot definitition... | -| [settings](settings.md) | 0..*
[Setting](Setting.md) | A collection of global variable settings | -| [imports](imports.md) | 0..*
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | other schemas that are included in this schema | -| [rank](rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given ... | -| [id_prefixes](id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by ... | -| [from_schema](from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | +| [id](../id.md) | 1..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | The official schema URI | +| [name](../name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | a unique name for the schema that is both human-readable and consists of only... **identifier** | +| [classes](../classes.md) | 0..*
[ClassDefinition](../ClassDefinition.md) | An index to the collection of all class definitions in the schema | +| [slot_definitions](../slot_definitions.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | An index to the collection of all slot definitions in the schema | +| [enums](../enums.md) | 0..*
[EnumDefinition](../EnumDefinition.md) | An index to the collection of all enum definitions in the schema | +| [subsets](../subsets.md) | 0..*
[SubsetDefinition](../SubsetDefinition.md) | An index to the collection of all subset definitions in the schema | +| [prefixes](../prefixes.md) | 0..*
[Prefix](../Prefix.md) | prefix / URI definitions to be added to the context beyond those fetched from... | +| [default_prefix](../default_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | default and base prefix -- used for ':' identifiers, @base and @vocab | +| [default_range](../default_range.md) | 0..1
[TypeDefinition](../TypeDefinition.md) | default slot range to be used if range element is omitted from a slot definitition... | +| [settings](../settings.md) | 0..*
[Setting](../Setting.md) | A collection of global variable settings | +| [imports](../imports.md) | 0..*
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | other schemas that are included in this schema | +| [rank](../rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given ... | +| [id_prefixes](../id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by ... | +| [from_schema](../from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | ### SchemaDefinition: Normative subset UML @@ -165,30 +165,30 @@ Any instance *c* of a ClassDefinition may have assignments in any of the followi | Name | Cardinality and Range | Description | | --- | --- | --- | -| [name](name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | -| [class_uri](class_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | URI of the class that provides a semantic interpretation of the element in a ... | -| [is_a](is_a.md) | 0..1
[ClassDefinition](ClassDefinition.md) | A primary parent class from which inheritable metaslots are propagated | -| [mixins](mixins.md) | 0..*
[ClassDefinition](ClassDefinition.md) | A collection of secondary parent mixin classes from which inheritable metaslo... | -| [slots](slots.md) | 0..*
[SlotDefinition](SlotDefinition.md) | collection of slot names that are applicable to a class | -| [slot_usage](slot_usage.md) | 0..*
[SlotDefinition](SlotDefinition.md) | the refinement of a slot in the context of the containing class definition | -| [attributes](attributes.md) | 0..*
[SlotDefinition](SlotDefinition.md) | Inline definition of slots | -| [tree_root](tree_root.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | indicator that this is the root class in tree structures | -| [rank](rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given... | -| [any_of](any_of.md) | 0..*
[AnonymousClassExpression](AnonymousClassExpression.md) | holds if at least one of the expressions hold | -| [exactly_one_of](exactly_one_of.md) | 0..*
[AnonymousClassExpression](AnonymousClassExpression.md) | holds if only one of the expressions hold | -| [none_of](none_of.md) | 0..*
[AnonymousClassExpression](AnonymousClassExpression.md) | holds if none of the expressions hold | -| [all_of](all_of.md) | 0..*
[AnonymousClassExpression](AnonymousClassExpression.md) | holds if all of the expressions hold | -| [union_of](union_of.md) | 0..*
[ClassDefinition](ClassDefinition.md) | indicates that the domain element consists exactly of the members of the elem... | -| [unique_keys](unique_keys.md) | 0..*
[UniqueKey](UniqueKey.md) | A collection of unique keys for this class | -| [rules](rules.md) | 0..*
[ClassRule](ClassRule.md) | the collection of rules that apply to all members of this class | -| [classification_rules](classification_rules.md) | 0..*
[AnonymousClassExpression](AnonymousClassExpression.md) | the collection of classification rules that apply to all members of this clas... | -| [disjoint_with](disjoint_with.md) | 0..*
[ClassDefinition](ClassDefinition.md) | Two classes are disjoint if they have no instances in common, two slots are d... | -| [slot_conditions](slot_conditions.md) | 0..*
[SlotDefinition](SlotDefinition.md) | expresses constraints on a group of slots for a class expression | -| [abstract](abstract.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot cannot be directly instantiated and is intended f... | -| [mixin](mixin.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot is not intended to inherited from without being a... | -| [string_serialization](string_serialization.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Used on a slot that stores the string serialization of the containing object | -| [id_prefixes](id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by t... | -| [from_schema](from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | +| [name](../name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | +| [class_uri](../class_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | URI of the class that provides a semantic interpretation of the element in a ... | +| [is_a](../is_a.md) | 0..1
[ClassDefinition](../ClassDefinition.md) | A primary parent class from which inheritable metaslots are propagated | +| [mixins](../mixins.md) | 0..*
[ClassDefinition](../ClassDefinition.md) | A collection of secondary parent mixin classes from which inheritable metaslo... | +| [slots](../slots.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | collection of slot names that are applicable to a class | +| [slot_usage](../slot_usage.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | the refinement of a slot in the context of the containing class definition | +| [attributes](../attributes.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | Inline definition of slots | +| [tree_root](../tree_root.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | indicator that this is the root class in tree structures | +| [rank](../rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given... | +| [any_of](../any_of.md) | 0..*
[AnonymousClassExpression](../AnonymousClassExpression.md) | holds if at least one of the expressions hold | +| [exactly_one_of](../exactly_one_of.md) | 0..*
[AnonymousClassExpression](../AnonymousClassExpression.md) | holds if only one of the expressions hold | +| [none_of](../none_of.md) | 0..*
[AnonymousClassExpression](../AnonymousClassExpression.md) | holds if none of the expressions hold | +| [all_of](../all_of.md) | 0..*
[AnonymousClassExpression](../AnonymousClassExpression.md) | holds if all of the expressions hold | +| [union_of](../union_of.md) | 0..*
[ClassDefinition](../ClassDefinition.md) | indicates that the domain element consists exactly of the members of the elem... | +| [unique_keys](../unique_keys.md) | 0..*
[UniqueKey](../UniqueKey.md) | A collection of unique keys for this class | +| [rules](../rules.md) | 0..*
[ClassRule](../ClassRule.md) | the collection of rules that apply to all members of this class | +| [classification_rules](../classification_rules.md) | 0..*
[AnonymousClassExpression](../AnonymousClassExpression.md) | the collection of classification rules that apply to all members of this clas... | +| [disjoint_with](../disjoint_with.md) | 0..*
[ClassDefinition](../ClassDefinition.md) | Two classes are disjoint if they have no instances in common, two slots are d... | +| [slot_conditions](../slot_conditions.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | expresses constraints on a group of slots for a class expression | +| [abstract](../abstract.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot cannot be directly instantiated and is intended f... | +| [mixin](../mixin.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot is not intended to inherited from without being a... | +| [string_serialization](../string_serialization.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Used on a slot that stores the string serialization of the containing object | +| [id_prefixes](../id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by t... | +| [from_schema](../from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | @@ -311,63 +311,63 @@ Any instance *s* of a SlotDefinition may have assignments in any of the followin | Name | Cardinality and Range | Description | | --- | --- | --- | -| [name](name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | -| [slot_uri](slot_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | predicate of this slot for semantic web application | -| [identifier](identifier.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that the key slot(s) uniquely identify the container | -| [alias](alias.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the name used for a slot in the context of its owning class | -| [multivalued](multivalued.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that slot can have more than one value | -| [required](required.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that the slot must be present in the loaded definition | -| [recommended](recommended.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that the slot should be present in the loaded definition, but this... | -| [is_a](is_a.md) | 0..1
[SlotDefinition](SlotDefinition.md) | A primary parent slot from which inheritable metaslots are propagated | -| [mixins](mixins.md) | 0..*
[SlotDefinition](SlotDefinition.md) | A collection of secondary parent mixin slots from which inheritable metaslots... | -| [inlined](inlined.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that keyed or identified slot appears in an outer structure by val... | -| [inlined_as_list](inlined_as_list.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that an inlined slot is represented as a list of range instances | -| [pattern](pattern.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the string value of the slot must conform to this regular expression expresse... | -| [rank](rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given ... | -| [any_of](any_of.md) | 0..*
[AnonymousSlotExpression](AnonymousSlotExpression.md) | holds if at least one of the expressions hold | -| [exactly_one_of](exactly_one_of.md) | 0..*
[AnonymousSlotExpression](AnonymousSlotExpression.md) | holds if only one of the expressions hold | -| [none_of](none_of.md) | 0..*
[AnonymousSlotExpression](AnonymousSlotExpression.md) | holds if none of the expressions hold | -| [all_of](all_of.md) | 0..*
[AnonymousSlotExpression](AnonymousSlotExpression.md) | holds if all of the expressions hold | -| [domain](domain.md) | 0..1
[ClassDefinition](ClassDefinition.md) | defines the type of the subject of the slot | -| [inherited](inherited.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that the *value* of a slot is inherited by subclasses | -| [ifabsent](ifabsent.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | function that provides a default value for the slot | -| [list_elements_unique](list_elements_unique.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If True, then there must be no duplicates in the elements of a multivalued sl... | -| [list_elements_ordered](list_elements_ordered.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If True, then the order of elements of a multivalued slot is guaranteed to be... | -| [shared](shared.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If True, then the relationship between the slot domain and range is many to o... | -| [key](key.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that the key slot(s) uniquely identify the container | -| [designates_type](designates_type.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that the key slot(s) is used to determine the instantiation (types... | -| [symmetric](symmetric.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is symmetric, and i | -| [reflexive](reflexive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is reflexive, then i | -| [locally_reflexive](locally_reflexive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is locally_reflexive, then i | -| [irreflexive](irreflexive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is irreflexive, then there exists no i such i | -| [asymmetric](asymmetric.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is antisymmetric, and i | -| [transitive](transitive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is transitive, and i | -| [inverse](inverse.md) | 0..1
[SlotDefinition](SlotDefinition.md) | indicates that any instance of d s r implies that there is also an instance o... | -| [transitive_form_of](transitive_form_of.md) | 0..1
[SlotDefinition](SlotDefinition.md) | If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transit... | -| [reflexive_transitive_form_of](reflexive_transitive_form_of.md) | 0..1
[SlotDefinition](SlotDefinition.md) | transitive_form_of including the reflexive case | -| [slot_group](slot_group.md) | 0..1
[SlotDefinition](SlotDefinition.md) | allows for grouping of related slots into a grouping slot that serves the rol... | -| [is_grouping_slot](is_grouping_slot.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true if this slot is a grouping slot | -| [disjoint_with](disjoint_with.md) | 0..*
[SlotDefinition](SlotDefinition.md) | Two classes are disjoint if they have no instances in common, two slots are d... | -| [union_of](union_of.md) | 0..*
[SlotDefinition](SlotDefinition.md) | indicates that the domain element consists exactly of the members of the elem... | -| [range](range.md) | 0..1
[Element](Element.md) | defines the type of the object of the slot | -| [range_expression](range_expression.md) | 0..1
[AnonymousClassExpression](AnonymousClassExpression.md) | A range that is described as a boolean expression combining existing ranges | -| [enum_range](enum_range.md) | 0..1
[EnumExpression](EnumExpression.md) | An inlined enumeration | -| [minimum_value](minimum_value.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | for slots with ranges of type number, the value must be equal to or higher th... | -| [maximum_value](maximum_value.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | for slots with ranges of type number, the value must be equal to or lowe than... | -| [structured_pattern](structured_pattern.md) | 0..1
[PatternExpression](PatternExpression.md) | the string value of the slot must conform to the regular expression in the pa... | -| [implicit_prefix](implicit_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Causes the slot value to be interpreted as a uriorcurie after prefixing with ... | -| [equals_string](equals_string.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal the spec... | -| [equals_string_in](equals_string_in.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal one of t... | -| [equals_expression](equals_expression.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the value of the slot must equal the value of the evaluated expression | -| [minimum_cardinality](minimum_cardinality.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the minimum number of entries for a multivalued slot | -| [maximum_cardinality](maximum_cardinality.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the maximum number of entries for a multivalued slot | -| [has_member](has_member.md) | 0..1
[AnonymousSlotExpression](AnonymousSlotExpression.md) | the values of the slot is multivalued with at least one member satisfying the... | -| [all_members](all_members.md) | 0..*
[SlotDefinition](SlotDefinition.md) | the value of the multivalued slot is a list where all elements conform to the... | -| [abstract](abstract.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot cannot be directly instantiated and is intended f... | -| [mixin](mixin.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot is not intended to inherited from without being a... | -| [string_serialization](string_serialization.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Used on a slot that stores the string serialization of the containing object | -| [id_prefixes](id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by t... | -| [from_schema](from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | +| [name](../name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | +| [slot_uri](../slot_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | predicate of this slot for semantic web application | +| [identifier](../identifier.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that the key slot(s) uniquely identify the container | +| [alias](../alias.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the name used for a slot in the context of its owning class | +| [multivalued](../multivalued.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that slot can have more than one value | +| [required](../required.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that the slot must be present in the loaded definition | +| [recommended](../recommended.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that the slot should be present in the loaded definition, but this... | +| [is_a](../is_a.md) | 0..1
[SlotDefinition](../SlotDefinition.md) | A primary parent slot from which inheritable metaslots are propagated | +| [mixins](../mixins.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | A collection of secondary parent mixin slots from which inheritable metaslots... | +| [inlined](../inlined.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that keyed or identified slot appears in an outer structure by val... | +| [inlined_as_list](../inlined_as_list.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that an inlined slot is represented as a list of range instances | +| [pattern](../pattern.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the string value of the slot must conform to this regular expression expresse... | +| [rank](../rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given ... | +| [any_of](../any_of.md) | 0..*
[AnonymousSlotExpression](../AnonymousSlotExpression.md) | holds if at least one of the expressions hold | +| [exactly_one_of](../exactly_one_of.md) | 0..*
[AnonymousSlotExpression](../AnonymousSlotExpression.md) | holds if only one of the expressions hold | +| [none_of](../none_of.md) | 0..*
[AnonymousSlotExpression](../AnonymousSlotExpression.md) | holds if none of the expressions hold | +| [all_of](../all_of.md) | 0..*
[AnonymousSlotExpression](../AnonymousSlotExpression.md) | holds if all of the expressions hold | +| [domain](../domain.md) | 0..1
[ClassDefinition](../ClassDefinition.md) | defines the type of the subject of the slot | +| [inherited](../inherited.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true means that the *value* of a slot is inherited by subclasses | +| [ifabsent](../ifabsent.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | function that provides a default value for the slot | +| [list_elements_unique](../list_elements_unique.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If True, then there must be no duplicates in the elements of a multivalued sl... | +| [list_elements_ordered](../list_elements_ordered.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If True, then the order of elements of a multivalued slot is guaranteed to be... | +| [shared](../shared.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If True, then the relationship between the slot domain and range is many to o... | +| [key](../key.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that the key slot(s) uniquely identify the container | +| [designates_type](../designates_type.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | True means that the key slot(s) is used to determine the instantiation (types... | +| [symmetric](../symmetric.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is symmetric, and i | +| [reflexive](../reflexive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is reflexive, then i | +| [locally_reflexive](../locally_reflexive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is locally_reflexive, then i | +| [irreflexive](../irreflexive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is irreflexive, then there exists no i such i | +| [asymmetric](../asymmetric.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is antisymmetric, and i | +| [transitive](../transitive.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | If s is transitive, and i | +| [inverse](../inverse.md) | 0..1
[SlotDefinition](../SlotDefinition.md) | indicates that any instance of d s r implies that there is also an instance o... | +| [transitive_form_of](../transitive_form_of.md) | 0..1
[SlotDefinition](../SlotDefinition.md) | If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transit... | +| [reflexive_transitive_form_of](../reflexive_transitive_form_of.md) | 0..1
[SlotDefinition](../SlotDefinition.md) | transitive_form_of including the reflexive case | +| [slot_group](../slot_group.md) | 0..1
[SlotDefinition](../SlotDefinition.md) | allows for grouping of related slots into a grouping slot that serves the rol... | +| [is_grouping_slot](../is_grouping_slot.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | true if this slot is a grouping slot | +| [disjoint_with](../disjoint_with.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | Two classes are disjoint if they have no instances in common, two slots are d... | +| [union_of](../union_of.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | indicates that the domain element consists exactly of the members of the elem... | +| [range](../range.md) | 0..1
[Element](../Element.md) | defines the type of the object of the slot | +| [range_expression](../range_expression.md) | 0..1
[AnonymousClassExpression](../AnonymousClassExpression.md) | A range that is described as a boolean expression combining existing ranges | +| [enum_range](../enum_range.md) | 0..1
[EnumExpression](../EnumExpression.md) | An inlined enumeration | +| [minimum_value](../minimum_value.md) | 0..1
[linkml:Any](https://linkml.io/linkml-model/latest/docs/Anything/) | for slots with ordinal ranges, the value must be equal to or higher th... | +| [maximum_value](../maximum_value.md) | 0..1
[linkml:Any](https://linkml.io/linkml-model/latest/docs/Anything/) | for slots with ordinal ranges, the value must be equal to or lowe than... | +| [structured_pattern](../structured_pattern.md) | 0..1
[PatternExpression](../PatternExpression.md) | the string value of the slot must conform to the regular expression in the pa... | +| [implicit_prefix](../implicit_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Causes the slot value to be interpreted as a uriorcurie after prefixing with ... | +| [equals_string](../equals_string.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal the spec... | +| [equals_string_in](../equals_string_in.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal one of t... | +| [equals_expression](../equals_expression.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the value of the slot must equal the value of the evaluated expression | +| [minimum_cardinality](../minimum_cardinality.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the minimum number of entries for a multivalued slot | +| [maximum_cardinality](../maximum_cardinality.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the maximum number of entries for a multivalued slot | +| [has_member](../has_member.md) | 0..1
[AnonymousSlotExpression](../AnonymousSlotExpression.md) | the values of the slot is multivalued with at least one member satisfying the... | +| [all_members](../all_members.md) | 0..*
[SlotDefinition](../SlotDefinition.md) | the value of the multivalued slot is a list where all elements conform to the... | +| [abstract](../abstract.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot cannot be directly instantiated and is intended f... | +| [mixin](../mixin.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot is not intended to inherited from without being a... | +| [string_serialization](../string_serialization.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Used on a slot that stores the string serialization of the containing object | +| [id_prefixes](../id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by t... | +| [from_schema](../from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | ### SlotDefinition: Normative subset UML @@ -447,25 +447,25 @@ Any instance *e* of a EnumDefinition may have assignments in any of the followin | Name | Cardinality and Range | Description | | --- | --- | --- | -| [name](name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | -| [is_a](is_a.md) | 0..1
[Definition](Definition.md) | A primary parent class or slot from which inheritable metaslots are propagate... | -| [mixins](mixins.md) | 0..*
[Definition](Definition.md) | A collection of secondary parent classes or slots from which inheritable meta... | -| [rank](rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given... | -| [enum_uri](enum_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | URI of the enum that provides a semantic interpretation of the element in a l... | -| [code_set](code_set.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | the identifier of an enumeration code set | -| [pv_formula](pv_formula.md) | 0..1
[PvFormulaOptions](PvFormulaOptions.md) | Defines the specific formula to be used to generate the permissible values | -| [permissible_values](permissible_values.md) | 0..*
[PermissibleValue](PermissibleValue.md) | A list of possible values for a slot range | -| [include](include.md) | 0..*
[AnonymousEnumExpression](AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be in... | -| [minus](minus.md) | 0..*
[AnonymousEnumExpression](AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be su... | -| [inherits](inherits.md) | 0..*
[EnumDefinition](EnumDefinition.md) | An enum definition that is used as the basis to create a new enum | -| [reachable_from](reachable_from.md) | 0..1
[ReachabilityQuery](ReachabilityQuery.md) | Specifies a query for obtaining a list of permissible values based on graph r... | -| [matches](matches.md) | 0..1
[MatchQuery](MatchQuery.md) | Specifies a match query that is used to calculate the list of permissible val... | -| [concepts](concepts.md) | 0..*
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | A list of identifiers that are used to construct a set of permissible values | -| [abstract](abstract.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot cannot be directly instantiated and is intended f... | -| [mixin](mixin.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot is not intended to inherited from without being a... | -| [string_serialization](string_serialization.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Used on a slot that stores the string serialization of the containing object | -| [id_prefixes](id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by t... | -| [from_schema](from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | +| [name](../name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | +| [is_a](../is_a.md) | 0..1
[Definition](../Definition.md) | A primary parent class or slot from which inheritable metaslots are propagate... | +| [mixins](../mixins.md) | 0..*
[Definition](../Definition.md) | A collection of secondary parent classes or slots from which inheritable meta... | +| [rank](../rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given... | +| [enum_uri](../enum_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | URI of the enum that provides a semantic interpretation of the element in a l... | +| [code_set](../code_set.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | the identifier of an enumeration code set | +| [pv_formula](../pv_formula.md) | 0..1
[PvFormulaOptions](../PvFormulaOptions.md) | Defines the specific formula to be used to generate the permissible values | +| [permissible_values](../permissible_values.md) | 0..*
[PermissibleValue](../PermissibleValue.md) | A list of possible values for a slot range | +| [include](../include.md) | 0..*
[AnonymousEnumExpression](../AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be in... | +| [minus](../minus.md) | 0..*
[AnonymousEnumExpression](../AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be su... | +| [inherits](../inherits.md) | 0..*
[EnumDefinition](../EnumDefinition.md) | An enum definition that is used as the basis to create a new enum | +| [reachable_from](../reachable_from.md) | 0..1
[ReachabilityQuery](../ReachabilityQuery.md) | Specifies a query for obtaining a list of permissible values based on graph r... | +| [matches](../matches.md) | 0..1
[MatchQuery](../MatchQuery.md) | Specifies a match query that is used to calculate the list of permissible val... | +| [concepts](../concepts.md) | 0..*
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | A list of identifiers that are used to construct a set of permissible values | +| [abstract](../abstract.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot cannot be directly instantiated and is intended f... | +| [mixin](../mixin.md) | 0..1
[xsd:boolean](http://www.w3.org/2001/XMLSchema#boolean) | Indicates the class or slot is not intended to inherited from without being a... | +| [string_serialization](../string_serialization.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Used on a slot that stores the string serialization of the containing object | +| [id_prefixes](../id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by t... | +| [from_schema](../from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | @@ -505,26 +505,26 @@ Any instance *t* of a TypeDefinition may have assignments in any of the followin | Name | Cardinality and Range | Description | | --- | --- |-----------------------------------------------------------------------------------| -| [name](name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | -| [type_uri](type_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | The uri that defines the possible values for the type definition | -| [typeof](typeof.md) | 0..1
[TypeDefinition](TypeDefinition.md) | Names a parent type | -| [base](base.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | python base type that implements this type definition | -| [repr](repr.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the name of the python object that implements this type definition | -| [pattern](pattern.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the string value of the slot must conform to this regular expression expresses... | -| [rank](rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given ... | -| [any_of](any_of.md) | 0..*
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if at least one of the expressions hold | -| [exactly_one_of](exactly_one_of.md) | 0..*
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if only one of the expressions hold | -| [none_of](none_of.md) | 0..*
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if none of the expressions hold | -| [all_of](all_of.md) | 0..*
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if all of the expressions hold | -| [union_of](union_of.md) | 0..*
[TypeDefinition](TypeDefinition.md) | indicates that the domain element consists exactly of the members of ... | -| [structured_pattern](structured_pattern.md) | 0..1
[PatternExpression](PatternExpression.md) | the string value of the slot must conform to the regular expression in the ... | -| [implicit_prefix](implicit_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Causes the slot value to be interpreted as a uriorcurie after prefixing with ... | -| [equals_string](equals_string.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal the ... | -| [equals_string_in](equals_string_in.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal one of ... | -| [minimum_value](minimum_value.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | for slots with ranges of type number, the value must be equal to or higher ... | -| [maximum_value](maximum_value.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | for slots with ranges of type number, the value must be equal to or lowe than... | -| [id_prefixes](id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by ... | -| [from_schema](from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | +| [name](../name.md) | 1..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the unique name of the element within the context of the schema **identifier** | +| [type_uri](../type_uri.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | The uri that defines the possible values for the type definition | +| [typeof](../typeof.md) | 0..1
[TypeDefinition](../TypeDefinition.md) | Names a parent type | +| [base](../base.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | python base type that implements this type definition | +| [repr](../repr.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the name of the python object that implements this type definition | +| [pattern](../pattern.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the string value of the slot must conform to this regular expression expresses... | +| [rank](../rank.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | the relative order in which the element occurs, lower values are given ... | +| [any_of](../any_of.md) | 0..*
[AnonymousTypeExpression](../AnonymousTypeExpression.md) | holds if at least one of the expressions hold | +| [exactly_one_of](../exactly_one_of.md) | 0..*
[AnonymousTypeExpression](../AnonymousTypeExpression.md) | holds if only one of the expressions hold | +| [none_of](../none_of.md) | 0..*
[AnonymousTypeExpression](../AnonymousTypeExpression.md) | holds if none of the expressions hold | +| [all_of](../all_of.md) | 0..*
[AnonymousTypeExpression](../AnonymousTypeExpression.md) | holds if all of the expressions hold | +| [union_of](../union_of.md) | 0..*
[TypeDefinition](../TypeDefinition.md) | indicates that the domain element consists exactly of the members of ... | +| [structured_pattern](../structured_pattern.md) | 0..1
[PatternExpression](../PatternExpression.md) | the string value of the slot must conform to the regular expression in the ... | +| [implicit_prefix](../implicit_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | Causes the slot value to be interpreted as a uriorcurie after prefixing with ... | +| [equals_string](../equals_string.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal the ... | +| [equals_string_in](../equals_string_in.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the slot must have range string and the value of the slot must equal one of ... | +| [minimum_value](../minimum_value.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | for slots with ranges of type number, the value must be equal to or higher ... | +| [maximum_value](../maximum_value.md) | 0..1
[xsd:integer](http://www.w3.org/2001/XMLSchema#integer) | for slots with ranges of type number, the value must be equal to or lowe than... | +| [id_prefixes](../id_prefixes.md) | 0..*
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the identifier of this class or slot must begin with the URIs referenced by ... | +| [from_schema](../from_schema.md) | 0..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | id of the schema that defined the element | ### TypeDefinition: Normative subset UML @@ -596,8 +596,8 @@ A schema can contain any number of prefixes. Each prefix maps a short name such | Name | Cardinality and Range | Description | | --- | --- | --- | -| [prefix_prefix](prefix_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the nsname (sans ':' for a given prefix) | -| [prefix_reference](prefix_reference.md) | 1..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | A URI associated with a given prefix | +| [prefix_prefix](../prefix_prefix.md) | 0..1
[xsd:string](http://www.w3.org/2001/XMLSchema#string) | the nsname (sans ':' for a given prefix) | +| [prefix_reference](../prefix_reference.md) | 1..1
[xsd:anyURI](http://www.w3.org/2001/XMLSchema#anyURI) | A URI associated with a given prefix | ### Prefix: Normative subset UML diff --git a/linkml_runtime/linkml_model/model/schema/array.yaml b/linkml_runtime/linkml_model/model/schema/array.yaml index f049abc3..f0ba1d96 100644 --- a/linkml_runtime/linkml_model/model/schema/array.yaml +++ b/linkml_runtime/linkml_model/model/schema/array.yaml @@ -1,7 +1,7 @@ id: https://w3id.org/linkml/lib/arrays name: arrays title: LinkML Arrays -description: >- +description: >- LinkML templates for storing one-dimensional series, two-dimensional arrays, and arrays of higher dimensionality. @@ -9,7 +9,7 @@ description: >- Note that this model is not intended to be imported directly. Instead, use `implements` to denote conformance. - + status: testing # contributors: # - github:rly @@ -39,13 +39,13 @@ classes: DataStructure: abstract: true - Array: + NDArray: description: >- a data structure consisting of a collection of *elements*, each identified by at least one array index tuple. abstract: true is_a: DataStructure slots: - - dimensionality + - dimensions - elements - array_linearization_order slot_usage: @@ -55,65 +55,24 @@ classes: an ordered sequence of values. The elements also have an *array interpretation*, where each element has a unique index which is determined by array_linearization_order - - OneDimensionalSeries: - is_a: Array - description: >- - An array that has one dimension - aliases: - - axis - - 1D array - - vector - - series - - row - slots: - - series_label - - length - # TODO: consider offset and rate - slot_usage: - dimensionality: - equals_expression: "1" - - TwoDimensionalArray: - is_a: Array - description: >- - An array that has two dimensions - aliases: - - table - - matrix - - grid - slots: - - axis0 - - axis1 - slot_usage: - dimensionality: - equals_expression: "2" - elements: - description: >- - this will be serialized as one big long list that should be interpreted as a 2D array - - ThreeDimensionalArray: - is_a: Array + DataArray: description: >- - An array that has two dimensions - aliases: - - 3D array + a data structure containing an NDArray and a set of one-dimensional series that are used to label + the elements of the array + is_a: DataStructure slots: - - axis0 - - axis1 - - axis2 - slot_usage: - dimensionality: - equals_expression: "3" + - axis + - array - OrderedArray: + GroupingByArrayOrder: mixin: true description: >- A mixin that describes an array whose elements are mapped from a linear sequence to an array index via a specified mapping - + ColumnOrderedArray: mixin: true + is_a: GroupingByArrayOrder description: >- An array ordering that is column-order slots: @@ -121,9 +80,10 @@ classes: slot_usage: array_linearization_order: equals_string: COLUMN_MAJOR_ARRAY_ORDER - + RowOrderedArray: mixin: true + is_a: GroupingByArrayOrder description: >- An array ordering that is row-order or generalizations thereof slots: @@ -131,96 +91,36 @@ classes: slot_usage: array_linearization_order: equals_string: ROW_MAJOR_ARRAY_ORDER - - MultiDimensionalArray: - is_a: Array - abstract: true - description: >- - An array that has more than two dimensions - - ObjectAsTuple: - comments: - - not modeled as an array since this is used as a metaclass - implements: - - OneDimensionalSeries - - ArrayIndex: - is_a: ObjectAsTuple - Operation: - abstract: true - description: >- - Represents the transformation of one or more inputs to one or more outputs determined by - zero to many operation parameters - slots: - - specified_input - - specified_output - - operation_parameters - - ArrayIndexOperation: - description: >- - An operation that takes as input an Array and is parameterized by an array index tuple and - yields an array element - slot_usage: - specified_input: - range: Array - maximum_cardinality: 1 - specified_output: - range: Any - maximum_cardinality: 1 - operation_parameters: - range: ArrayIndex - maximum_cardinality: 1 - slots: - dimensionality: + dimensions: description: >- The number of elements in the tuple used to access elements of an array aliases: - rank - - dimension + - dimensionality - number of axes - number of elements range: integer axis: - abstract: true - range: OneDimensionalSeries + range: NDArray + slot_usage: + dimensions: + equals_number: 1 aliases: - dimension description: >- - A one dimensional series that contains elements that form one part of a tuple used to access an array - axis0: - is_a: axis - aliases: - - x - - dimension0 - description: >- - An axis that is the zeroth index of the tuple used to access an array - range: OneDimensionalSeries - rank: 0 + A one-dimensional series that contains elements that form one part of a tuple used to access an array required: true - inlined: true - inlined_as_list: true - axis1: - is_a: axis - aliases: - - y + axis_index: + range: integer description: >- - An axis that is the index after the zeroth of the tuple used to access an array - range: OneDimensionalSeries - rank: 1 - required: true - inlined: true - inlined_as_list: true - axis2: - is_a: axis - aliases: - - z - range: OneDimensionalSeries - rank: 2 + The position of an axis in a tuple used to access an array + array: + range: NDArray + description: >- + An array that is labeled by a set of one-dimensional series required: true - inlined: true - inlined_as_list: true elements: # this will be serialized as one big long list that should be interpreted as a 2D array range: Any @@ -254,7 +154,7 @@ slots: operation_parameters: range: Any multivalued: true - + enums: ArrayLinearizationOrderOptions: description: >- @@ -275,5 +175,3 @@ enums: or any generalization thereof to dimensionality greater than 2 aliases: - C order - - diff --git a/linkml_runtime/linkml_model/model/schema/datasets.yaml b/linkml_runtime/linkml_model/model/schema/datasets.yaml index 1f95748d..431d7aee 100644 --- a/linkml_runtime/linkml_model/model/schema/datasets.yaml +++ b/linkml_runtime/linkml_model/model/schema/datasets.yaml @@ -21,6 +21,8 @@ prefixes: csvw: http://www.w3.org/ns/csvw# dcat: http://www.w3.org/ns/dcat# mediatypes: https://www.iana.org/assignments/media-types/ + oslc: http://open-services.net/ns/core# + bibo: http://purl.org/ontology/bibo/ default_prefix: datasets default_range: string diff --git a/linkml_runtime/linkml_model/model/schema/meta.yaml b/linkml_runtime/linkml_model/model/schema/meta.yaml index 7bad9e38..d4b3439a 100644 --- a/linkml_runtime/linkml_model/model/schema/meta.yaml +++ b/linkml_runtime/linkml_model/model/schema/meta.yaml @@ -50,6 +50,7 @@ prefixes: vann: https://vocab.org/vann/ qudt: http://qudt.org/schema/qudt/ cdisc: http://rdf.cdisc.org/mms# + SIO: http://semanticscience.org/resource/SIO_ default_prefix: linkml default_range: string @@ -241,12 +242,19 @@ slots: - If identifiers are treated as CURIEs, then the CURIE must start with one of the indicated prefixes followed by `:` (_should_ start if the list is open) - If identifiers are treated as URIs, then the URI string must start with the expanded for of the prefix (_should_ start if the list is open) see_also: - - https://github.com/linkml/linkml/issues/194 - https://github.com/linkml/linkml-model/issues/28 in_subset: - SpecificationSubset - BasicSubset + id_prefixes_are_closed: + domain: element + range: boolean + description: >- + If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation. + see_also: + - https://github.com/linkml/linkml/issues/194 + description: rank: 5 aliases: @@ -1636,6 +1644,7 @@ slots: - BasicSubset see_also: - "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" + - https://linkml.io/linkml/schemas/inlining.html inlined_as_list: rank: 27 @@ -1658,6 +1667,7 @@ slots: - BasicSubset see_also: - "https://w3id.org/linkml/docs/specification/06mapping/#collection-forms" + - https://linkml.io/linkml/schemas/inlining.html inlined_as_simple_dict: rank: 28 @@ -1796,6 +1806,7 @@ slots: multivalued: true exact_mappings: - schema:domainIncludes + - SIO:000011 is_usage_slot: domain: slot_definition @@ -1935,8 +1946,10 @@ slots: aliases: - low value domain: slot_definition - range: integer - description: for slots with ranges of type number, the value must be equal to or higher than this + range: Anything + description: For ordinal ranges, the value must be equal to or higher than this + notes: + - Range to be refined to an "Ordinal" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142 inherited: true in_subset: - SpecificationSubset @@ -1946,8 +1959,10 @@ slots: aliases: - high value domain: slot_definition - range: integer - description: for slots with ranges of type number, the value must be equal to or lowe than this + range: Anything + description: For ordinal ranges, the value must be equal to or lower than this + notes: + - Range to be refined to an "Ordinal" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142 inherited: true in_subset: - SpecificationSubset @@ -2074,7 +2089,7 @@ slots: - BasicSubset # ----------------------------------- - # Slots for alt descripion + # Slots for alt description # ----------------------------------- alt_description_text: domain: alt_description @@ -2395,6 +2410,7 @@ classes: slots: - name - id_prefixes + - id_prefixes_are_closed - definition_uri - local_names - conforms_to @@ -2565,9 +2581,12 @@ classes: rank: 5 aliases: - enum + - enumeration + - semantic enumeration - value set - term set - concept set + - code set - Terminology Value Set - answer list - value domain @@ -3030,6 +3049,8 @@ enums: description: The permissible values are the set of code URIs in the code set FHIR_CODING: description: The permissible values are the set of FHIR coding elements derived from the code set + LABEL: + description: The permissible values are the set of human readable labels in the code set in_subset: - SpecificationSubset - BasicSubset diff --git a/linkml_runtime/linkml_model/owl/meta.owl.ttl b/linkml_runtime/linkml_model/owl/meta.owl.ttl index 237252e9..3c94c1d0 100644 --- a/linkml_runtime/linkml_model/owl/meta.owl.ttl +++ b/linkml_runtime/linkml_model/owl/meta.owl.ttl @@ -1,11 +1,11 @@ @prefix IAO: . @prefix NCIT: . @prefix OIO: . +@prefix SIO: . @prefix bibo: . @prefix cdisc: . @prefix dcterms: . @prefix linkml: . -@prefix oslc: . @prefix owl: . @prefix pav: . @prefix prov: . @@ -24,49 +24,31 @@ linkml:equals_number_in a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "equals_number_in" ; + bibo:status ; rdfs:range linkml:Integer ; rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the slot must have range number and the value of the slot must equal one of the specified values" . + skos:definition "the slot must have range number and the value of the slot must equal one of the specified values" ; + skos:inScheme linkml:meta . linkml:inapplicable a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "inapplicable" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - skos:definition "true means that values for this slot must not be present" . + skos:definition "true means that values for this slot must not be present" ; + skos:inScheme linkml:meta ; + 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" ; + bibo:status ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - 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:AnyValue, - linkml:Anything, - linkml:ClassExpression, - linkml:ClassLevelRule, - linkml:CommonMetadata, - linkml:Example, - linkml:Expression, - linkml:Extensible, - linkml:Extension, - linkml:LocalName, - linkml:MatchQuery, - linkml:Prefix, - linkml:ReachabilityQuery, - linkml:Setting, - linkml:UnitOfMeasure ; - linkml:id "https://w3id.org/linkml/meta" ; - linkml:imports "linkml:annotations", - "linkml:extensions", - "linkml:mappings", - "linkml:types", - "linkml:units" . + rdfs:seeAlso ; + skos:definition "True means that an inlined slot is represented as a simple dict whose values are all atoms" ; + skos:inScheme linkml:meta ; + sh:order 28 . linkml:owned_by a owl:ObjectProperty, linkml:SlotDefinition ; @@ -76,163 +58,428 @@ linkml:owned_by a owl:ObjectProperty, skos:altLabel "owner", "steward" ; skos:closeMatch rdfs:isDefinedBy ; - skos:definition "agent that owns or is the steward of the element" . + skos:definition "agent that owns or is the steward of the element" ; + skos:inScheme linkml:meta . + +linkml:publisher a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "publisher" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + skos:definition "An entity responsible for making the resource available" ; + skos:inScheme linkml:meta . linkml:structured_imports a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "structured_imports" ; + bibo:status ; rdfs:domain linkml:SchemaDefinition ; rdfs:range linkml:ImportExpression ; - skos:definition "A list of specifications for how to import elements from external schemas" . - -linkml:topValue a owl:DatatypeProperty ; - rdfs:label "value" . + skos:definition "A list of specifications for how to import elements from external schemas" ; + skos:inScheme linkml:meta . linkml:value_specification_constant a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "value_specification_constant" ; - rdfs:range linkml:String ; - skos:definition "Grouping for metamodel slots that constrain the a slot value to equal a specified constant" . + bibo:status ; + skos:definition "Grouping for metamodel slots that constrain the a slot value to equal a specified constant" ; + skos:inScheme linkml:meta . -dcterms:publisher a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "publisher" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:definition "An entity responsible for making the resource available" ; - skos:exactMatch dcterms:publisher . +linkml:ClassLevelRule a owl:Class, + linkml:ClassDefinition ; + rdfs:label "class_level_rule" ; + skos:definition "A rule that is applied to classes" ; + skos:inScheme linkml:meta . -linkml:abstract a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "abstract" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:Boolean ; - skos:definition "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." . +rdf:object a owl:Class, + linkml:RelationalRoleEnum ; + rdfs:label "OBJECT" ; + rdfs:subClassOf linkml:RelationalRoleEnum . -linkml:asymmetric a owl:ObjectProperty, +rdf:predicate a owl:Class, + linkml:RelationalRoleEnum ; + rdfs:label "PREDICATE" ; + rdfs:subClassOf linkml:RelationalRoleEnum . + +rdf:subject a owl:Class, + linkml:RelationalRoleEnum ; + rdfs:label "SUBJECT" ; + rdfs:subClassOf linkml:RelationalRoleEnum . + +skos:broaderMatch a owl:Class, + linkml:AliasPredicateEnum ; + rdfs:label "BROAD_SYNONYM" ; + rdfs:subClassOf linkml:AliasPredicateEnum . + +skos:exactMatch a owl:Class, + linkml:AliasPredicateEnum ; + rdfs:label "EXACT_SYNONYM" ; + rdfs:subClassOf linkml:AliasPredicateEnum . + +skos:narrowerMatch a owl:Class, + linkml:AliasPredicateEnum ; + rdfs:label "NARROW_SYNONYM" ; + rdfs:subClassOf linkml:AliasPredicateEnum . + +skos:relatedMatch a owl:Class, + linkml:AliasPredicateEnum ; + rdfs:label "RELATED_SYNONYM" ; + rdfs:subClassOf linkml:AliasPredicateEnum . + +linkml:AnonymousExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "anonymous_expression" ; + rdfs:subClassOf linkml:Annotatable, + linkml:CommonMetadata, + linkml:Expression, + linkml:Extensible ; + skos:definition "An abstract parent class for any nested expression" ; + skos:inScheme linkml:meta ; + skos:note "anonymous expressions are useful for when it is necessary to build a complex expression without introducing a named element for each sub-expression" . + +linkml:AnyValue a owl:Class, + linkml:ClassDefinition ; + rdfs:label "AnyValue" ; + skos:exactMatch linkml:Any ; + skos:inScheme linkml:extensions . + +linkml:ClassRule a owl:Class, + linkml:ClassDefinition ; + rdfs:label "class_rule" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:deactivated ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:rank ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:elseconditions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:bidirectional ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:open_world ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:open_world ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:rank ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:rank ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:bidirectional ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:elseconditions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:preconditions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:postconditions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:postconditions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:deactivated ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:preconditions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:postconditions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:deactivated ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:elseconditions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:preconditions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:open_world ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:bidirectional ], + linkml:Annotatable, + linkml:ClassLevelRule, + linkml:CommonMetadata, + linkml:Extensible ; + skos:altLabel "if rule" ; + skos:closeMatch swrl:Imp, + sh:TripleRule ; + skos:definition "A rule that applies to instances of a class" ; + skos:inScheme linkml:meta . + + a owl:Class, + linkml:PresenceEnum ; + rdfs:label "ABSENT" ; + rdfs:subClassOf linkml:PresenceEnum . + + a owl:Class, + linkml:PresenceEnum ; + rdfs:label "PRESENT" ; + rdfs:subClassOf linkml:PresenceEnum . + + a owl:Class, + linkml:PresenceEnum ; + rdfs:label "UNCOMMITTED" ; + rdfs:subClassOf linkml:PresenceEnum . + + a owl:Class, + linkml:PvFormulaOptions ; + rdfs:label "CODE" ; + rdfs:subClassOf linkml:PvFormulaOptions . + + a owl:Class, + linkml:PvFormulaOptions ; + rdfs:label "CURIE" ; + rdfs:subClassOf linkml:PvFormulaOptions . + + a owl:Class, + linkml:PvFormulaOptions ; + rdfs:label "FHIR_CODING" ; + rdfs:subClassOf linkml:PvFormulaOptions . + + a owl:Class, + linkml:PvFormulaOptions ; + rdfs:label "LABEL" ; + rdfs:subClassOf linkml:PvFormulaOptions . + + a owl:Class, + linkml:PvFormulaOptions ; + rdfs:label "URI" ; + rdfs:subClassOf linkml:PvFormulaOptions . + + a owl:Class, + linkml:RelationalRoleEnum ; + rdfs:label "NODE" ; + rdfs:subClassOf linkml:RelationalRoleEnum . + + a owl:Class, + linkml:RelationalRoleEnum ; + rdfs:label "OTHER_ROLE" ; + rdfs:subClassOf linkml:RelationalRoleEnum . + +linkml:TypeExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "type_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:implicit_prefix ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:pattern ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:minimum_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:pattern ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:implicit_prefix ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:unit ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:minimum_value ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:unit ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string_in ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_number ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:equals_number ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:equals_number ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:minimum_value ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:implicit_prefix ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:structured_pattern ], + linkml:Expression ; + skos:definition "An abstract class grouping named types and anonymous type expressions" ; + skos:inScheme linkml:meta . + +linkml:alt_descriptions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "asymmetric" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:subPropertyOf linkml:relational_logical_characteristic ; - skos:closeMatch owl:AsymmetricProperty ; - skos:definition "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" . + rdfs:label "alt_descriptions" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:AltDescription ; + skos:altLabel "alternate definitions" ; + skos:definition "A sourced alternative description for an element" ; + skos:inScheme linkml:meta . linkml:attributes a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "attributes" ; rdfs:domain linkml:ClassDefinition ; rdfs:range linkml:SlotDefinition ; - skos:definition "Inline definition of slots" . - -linkml:base a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "base" ; - rdfs:domain linkml:TypeDefinition ; - rdfs:range linkml:String ; - skos:definition "python base type in the LinkML runtime that implements this type definition" . - -linkml:bidirectional a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "bidirectional" ; - rdfs:range linkml:Boolean ; - skos:altLabel "if and only if", - "iff" ; - skos:definition "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" . + skos:definition "Inline definition of slots" ; + skos:inScheme linkml:meta ; + skos:note "attributes are an alternative way of defining new slots. An attribute adds a slot to the global space in the form __ (lower case, double underscores). Attributes can be specialized via slot_usage." ; + sh:order 29 . -linkml:class_uri a owl:ObjectProperty, +linkml:broad_mappings a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "class_uri" ; - rdfs:domain linkml:ClassDefinition ; + rdfs:label "broad mappings" ; rdfs:range linkml:Uriorcurie ; - skos:altLabel "public ID" ; - skos:definition "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" . + rdfs:subPropertyOf linkml:mappings ; + skos:definition "A list of terms from different schemas or terminology systems that have broader meaning." ; + skos:inScheme linkml:mappings . linkml:classes a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "classes" ; rdfs:domain linkml:SchemaDefinition ; rdfs:range linkml:ClassDefinition ; - skos:definition "An index to the collection of all class definitions in the schema" . + skos:definition "An index to the collection of all class definitions in the schema" ; + skos:inScheme linkml:meta ; + sh:order 3 . linkml:classification_rules a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "classification_rules" ; rdfs:domain linkml:ClassDefinition ; rdfs:range linkml:AnonymousClassExpression ; - skos:definition "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." . + skos:definition "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." ; + skos:inScheme linkml:meta . -linkml:consider_nulls_inequal a owl:ObjectProperty, +linkml:close_mappings a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "consider_nulls_inequal" ; - rdfs:domain linkml:UniqueKey ; - rdfs:range linkml:Boolean ; - skos:definition "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." . + rdfs:label "close mappings" ; + rdfs:range linkml:Uriorcurie ; + rdfs:subPropertyOf linkml:mappings ; + skos:definition "A list of terms from different schemas or terminology systems that have close meaning." ; + skos:inScheme linkml:mappings . -linkml:default_curi_maps a owl:ObjectProperty, +linkml:comments a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "default_curi_maps" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:String ; - skos:definition "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" . + rdfs:label "comments" ; + rdfs:domain linkml:Element ; + skos:definition "notes and comments about an element intended primarily for external consumption" ; + skos:exactMatch rdfs:comment ; + skos:inScheme linkml:meta . -linkml:default_prefix a owl:ObjectProperty, +linkml:concepts a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "default_prefix" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:String ; - skos:definition "The prefix that is used for all elements within a schema" . + rdfs:label "concepts" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:Uriorcurie ; + skos:definition "A list of identifiers that are used to construct a set of permissible values" ; + skos:inScheme linkml:meta . -linkml:default_range a owl:ObjectProperty, +linkml:contributors a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "default_range" ; + rdfs:label "contributors" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + skos:definition "agent that contributed to the element" ; + skos:inScheme linkml:meta . + +linkml:default_curi_maps a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "default_curi_maps" ; rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:TypeDefinition ; - skos:definition "default slot range to be used if range element is omitted from a slot definition" . + skos:definition "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" ; + skos:inScheme linkml:meta . linkml:defining_slots a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "defining_slots" ; rdfs:domain linkml:ClassDefinition ; rdfs:range linkml:SlotDefinition ; - skos:definition "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" . - -linkml:definition_uri a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "definition_uri" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:definition "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" . - -linkml:derivation a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "derivation" ; - rdfs:range linkml:String ; - skos:definition "Expression for deriving this unit from other units" . - -linkml:designates_type a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "designates_type" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:altLabel "type designator" ; - skos:definition "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" . - -linkml:domain a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "domain" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:ClassDefinition ; - skos:definition """defines the type of the subject of the slot. Given the following slot definition - S1: - domain: C1 - range: C2 -the declaration - X: - S1: Y - -implicitly asserts that X is an instance of C1 -""" . + skos:definition "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" ; + skos:inScheme linkml:meta . linkml:domain_of a owl:ObjectProperty, linkml:SlotDefinition ; @@ -240,1165 +487,1172 @@ linkml:domain_of a owl:ObjectProperty, 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:exactMatch schema1:domainIncludes . - -linkml:elseconditions a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "elseconditions" ; - rdfs:range linkml:AnonymousClassExpression ; - skos:altLabel "else" ; - skos:definition "an expression that must hold for an instance of the class, if the preconditions no not hold" . + skos:exactMatch schema1:domainIncludes, + SIO:000011 ; + skos:inScheme linkml:meta . linkml:emit_prefixes a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "emit_prefixes" ; rdfs:domain linkml:SchemaDefinition ; rdfs:range linkml:Ncname ; - skos:definition "a list of Curie prefixes that are used in the representation of instances of the model. All prefixes in this list are added to the prefix sections of the target models." . - -linkml:enum_uri a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "enum_uri" ; - rdfs:domain linkml:EnumDefinition ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "public ID" ; - skos:definition "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" . + skos:definition "a list of Curie prefixes that are used in the representation of instances of the model. All prefixes in this list are added to the prefix sections of the target models." ; + skos:inScheme linkml:meta . linkml:enums a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "enums" ; rdfs:domain linkml:SchemaDefinition ; rdfs:range linkml:EnumDefinition ; - skos:definition "An index to the collection of all enum definitions in the schema" . - -linkml:followed_by a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "followed_by" ; - rdfs:range linkml:Expression ; - skos:definition "in a sequential list, this indicates the next member" . - -linkml:generation_date a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "generation_date" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Datetime ; - skos:definition "date and time that the schema was loaded/generated" . + skos:definition "An index to the collection of all enum definitions in the schema" ; + skos:inScheme linkml:meta ; + sh:order 5 . -linkml:id a owl:ObjectProperty, +linkml:examples a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "id" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Uri ; - skos:definition "The official schema URI" . + rdfs:label "examples" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Example ; + skos:closeMatch vann1:example ; + skos:definition "example usages of an element" ; + skos:inScheme linkml:meta . linkml:id_prefixes a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "id_prefixes" ; rdfs:domain linkml:Element ; rdfs:range linkml:Ncname ; - skos:definition "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" . - -linkml:identifier a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "identifier" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:altLabel "ID", - "UID", - "code", - "primary key" ; - skos:definition "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" . - -linkml:identifier_pattern a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "identifier_pattern" ; - rdfs:domain linkml:MatchQuery ; - rdfs:range linkml:String ; - skos:definition "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" . - -linkml:ifabsent a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "ifabsent" ; - rdfs:domain linkml:SlotDefinition ; - 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.utils.ifabsent_functions.default_library: - * [Tt]rue -- boolean True - * [Ff]alse -- boolean False - * bnode -- blank node identifier - * class_curie -- CURIE for the containing class - * class_uri -- URI for the containing class - * default_ns -- schema default namespace - * default_range -- schema default range - * int(value) -- integer value - * slot_uri -- URI for the slot - * slot_curie -- CURIE for the slot - * string(value) -- string value""" . - -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. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." . - -linkml:import_as a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "import_as" ; - rdfs:domain linkml:ImportExpression ; - rdfs:range linkml:Ncname . - -linkml:import_from a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "import_from" ; - rdfs:domain linkml:ImportExpression ; - rdfs:range linkml:Uriorcurie . + rdfs:seeAlso ; + skos:definition "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + skos:inScheme linkml:meta ; + skos:note "If identifiers are treated as CURIEs, then the CURIE must start with one of the indicated prefixes followed by `:` (_should_ start if the list is open)", + "If identifiers are treated as URIs, then the URI string must start with the expanded for of the prefix (_should_ start if the list is open)", + "Order of elements may be used to indicate priority order" . linkml:import_map a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "import_map" ; + bibo:status ; rdfs:domain linkml:ImportExpression ; - rdfs:range linkml:Setting . + rdfs:range linkml:Setting ; + skos:inScheme linkml:meta . linkml:imports a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "imports" ; rdfs:domain linkml:SchemaDefinition ; rdfs:range linkml:Uriorcurie ; - skos:definition "A list of schemas that are to be included in this schema" . + skos:definition "A list of schemas that are to be included in this schema" ; + skos:inScheme linkml:meta ; + sh:order 21 . -linkml:include_self a owl:ObjectProperty, +linkml:in_subset a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "include_self" ; - rdfs:domain linkml:ReachabilityQuery ; - rdfs:range linkml:Boolean ; - skos:altLabel "reflexive" ; - skos:definition "True if the query is reflexive" . + rdfs:label "in_subset" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:SubsetDefinition ; + skos:definition "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + skos:inScheme linkml:meta ; + skos:note "an example of use in the translator_minimal subset in the biolink model, holding the minimal set of predicates used in a translator knowledge graph" . -linkml:inherited a owl:ObjectProperty, +linkml:include a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "inherited" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "true means that the *value* of a slot is inherited by subclasses" . + rdfs:label "include" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:AnonymousEnumExpression ; + skos:definition "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + skos:inScheme linkml:meta . + +linkml:inherits a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "inherits" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:EnumDefinition ; + skos:definition "An enum definition that is used as the basis to create a new enum" ; + skos:inScheme linkml:meta ; + skos:note "All permissible values for all inherited enums are copied to form the initial seed set" . linkml:instantiates a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "instantiates" ; rdfs:domain linkml:Element ; rdfs:range linkml:Uriorcurie ; - skos:definition "An element in another schema which this element instantiates." . + skos:definition "An element in another schema which this element instantiates." ; + skos:inScheme linkml:meta . -linkml:interpolated a owl:ObjectProperty, +linkml:keywords a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "interpolated" ; - rdfs:domain linkml:PatternExpression ; - rdfs:range linkml:Boolean ; - skos:definition "if true then the pattern is first string interpolated" . + rdfs:label "keywords" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:String ; + skos:definition "Keywords or tags used to describe the element" ; + skos:inScheme linkml:meta . -linkml:irreflexive a owl:ObjectProperty, +linkml:local_names a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "irreflexive" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:subPropertyOf linkml:relational_logical_characteristic ; - skos:closeMatch owl:IrreflexiveProperty ; - skos:definition "If s is irreflexive, then there exists no i such i.s=i" . + rdfs:label "local_names" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:LocalName ; + skos:inScheme linkml:meta . -linkml:is_class_field a owl:ObjectProperty, +linkml:minus a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "is_class_field" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" . + rdfs:label "minus" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:AnonymousEnumExpression ; + skos:definition "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; + skos:inScheme linkml:meta . -linkml:is_direct a owl:ObjectProperty, +linkml:narrow_mappings a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "is_direct" ; - rdfs:domain linkml:ReachabilityQuery ; - rdfs:range linkml:Boolean ; - skos:altLabel "non-transitive" ; - skos:definition "True if the reachability query should only include directly related nodes, if False then include also transitively connected" . + rdfs:label "narrow mappings" ; + rdfs:range linkml:Uriorcurie ; + rdfs:subPropertyOf linkml:mappings ; + skos:definition "A list of terms from different schemas or terminology systems that have narrower meaning." ; + skos:inScheme linkml:mappings . -linkml:is_grouping_slot a owl:ObjectProperty, +linkml:notes a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "is_grouping_slot" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:closeMatch sh:PropertyGroup ; - skos:definition "true if this slot is a grouping slot" . + rdfs:label "notes" ; + rdfs:domain linkml:Element ; + skos:definition "editorial notes about an element intended primarily for internal consumption" ; + skos:inScheme linkml:meta . -linkml:is_usage_slot a owl:ObjectProperty, +linkml:permissible_values a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "is_usage_slot" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "True means that this slot was defined in a slot_usage situation" . + 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" ; + skos:exactMatch cdisc:PermissibleValue ; + skos:inScheme linkml:meta . -linkml:key a owl:ObjectProperty, +linkml:prefixes a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "key" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "True means that the key slot(s) uniquely identify the elements within a single container" . + rdfs:label "prefixes" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:Prefix ; + skos:definition "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; + skos:inScheme linkml:meta ; + sh:order 10 . -linkml:list_elements_ordered a owl:ObjectProperty, +linkml:related_mappings a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "list_elements_ordered" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "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" . + rdfs:label "related mappings" ; + rdfs:range linkml:Uriorcurie ; + rdfs:subPropertyOf linkml:mappings ; + skos:definition "A list of terms from different schemas or terminology systems that have related meaning." ; + skos:inScheme linkml:mappings . -linkml:list_elements_unique a owl:ObjectProperty, +linkml:relationship_types a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "list_elements_unique" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "If True, then there must be no duplicates in the elements of a multivalued slot" . + rdfs:label "relationship_types" ; + rdfs:domain linkml:ReachabilityQuery ; + rdfs:range linkml:Uriorcurie ; + skos:altLabel "predicates", + "properties" ; + skos:definition "A list of relationship types (properties) that are used in a reachability query" ; + skos:inScheme linkml:meta . -linkml:local_name_source a owl:ObjectProperty, +linkml:rules a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "local_name_source" ; - rdfs:domain linkml:LocalName ; - rdfs:range linkml:Ncname ; - skos:definition "the ncname of the source of the name" . + 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:inScheme linkml:meta . -linkml:local_names a owl:ObjectProperty, +linkml:see_also a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "local_names" ; + rdfs:label "see_also" ; rdfs:domain linkml:Element ; - rdfs:range linkml:LocalName . - -linkml:locally_reflexive a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "locally_reflexive" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:subPropertyOf linkml:relational_logical_characteristic ; - skos:definition "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" . - -linkml:meaning a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "meaning" ; - rdfs:domain linkml:PermissibleValue ; rdfs:range linkml:Uriorcurie ; - skos:altLabel "PV meaning" ; - skos:definition "the value meaning of a permissible value" . + skos:definition "A list of related entities or URLs that may be of relevance" ; + skos:inScheme linkml:meta . -linkml:metamodel_version a owl:ObjectProperty, +linkml:settings a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "metamodel_version" ; + rdfs:label "settings" ; rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:String ; - skos:definition "Version of the metamodel used to load the schema" . + rdfs:range linkml:Setting ; + skos:altLabel "constants" ; + skos:definition "A collection of global variable settings" ; + skos:inScheme linkml:meta ; + skos:note "global variables are used in string interpolation in structured patterns" ; + sh:order 20 . -linkml:multivalued a owl:ObjectProperty, +linkml:slot_conditions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "multivalued" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "true means that slot can have more than one value and should be represented using a list or collection structure." . + rdfs:label "slot_conditions" ; + rdfs:domain linkml:ClassExpression ; + rdfs:range linkml:SlotDefinition ; + skos:definition "expresses constraints on a group of slots for a class expression" ; + skos:inScheme linkml:meta . -linkml:object a owl:ObjectProperty, +linkml:slot_definitions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "object" ; - rdfs:domain linkml:Example ; - rdfs:range linkml:Anything ; - skos:definition "direct object representation of the example" . + rdfs:label "slot_definitions" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:SlotDefinition ; + skos:definition "An index to the collection of all slot definitions in the schema" ; + skos:inScheme linkml:meta ; + skos:note "note the formal name of this element is slot_definitions, but it has alias slots, which is the canonical form used in yaml/json serializes of schemas." ; + skos:prefLabel "slots" ; + sh:order 4 . -linkml:open_world a owl:ObjectProperty, +linkml:slot_usage a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "open_world" ; - rdfs:range linkml:Boolean ; - skos:definition "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" . + rdfs:label "slot_usage" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:SlotDefinition ; + skos:definition "the refinement of a slot in the context of the containing class definition." ; + skos:inScheme linkml:meta ; + skos:note "Many slots may be re-used across different classes, but the meaning of the slot may be refined by context. For example, a generic association model may use slots subject/predicate/object with generic semantics and minimal constraints. When this is subclasses, e.g. to disease-phenotype associations then slot usage may specify both local naming (e.g. subject=disease) and local constraints" ; + sh:order 23 . -linkml:owner a owl:ObjectProperty, +linkml:slots a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "owner" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Definition ; - skos:definition "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" . + rdfs:label "slots" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:SlotDefinition ; + skos:definition "collection of slot names that are applicable to a class" ; + skos:inScheme linkml:meta ; + skos:note "This defines the set of slots that are allowed to be used for a given class. The final list of slots for a class is the combination of the parent (is a) slots, mixins slots, apply to slots minus the slot usage entries.", + "the list of applicable slots is inherited from parent classes" ; + sh:order 19 . -linkml:partial_match a owl:ObjectProperty, +linkml:source_nodes a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "partial_match" ; - rdfs:domain linkml:PatternExpression ; - rdfs:range linkml:Boolean ; - skos:definition "if not true then the pattern must match the whole string, as if enclosed in ^...$" . + rdfs:label "source_nodes" ; + rdfs:domain linkml:ReachabilityQuery ; + rdfs:range linkml:Uriorcurie ; + skos:definition "A list of nodes that are used in the reachability query" ; + skos:inScheme linkml:meta . -linkml:path_rule a owl:ObjectProperty, +linkml:structured_aliases a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "path_rule" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:PathExpression ; - skos:definition "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" . + rdfs:label "structured_aliases" ; + rdfs:range linkml:StructuredAlias ; + rdfs:seeAlso linkml:aliases ; + skos:definition "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + skos:inScheme linkml:meta . -linkml:postconditions a owl:ObjectProperty, +linkml:subsets a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "postconditions" ; - rdfs:range linkml:AnonymousClassExpression ; - skos:altLabel "consequents", - "head", - "then" ; - skos:closeMatch swrl:body ; - skos:definition "an expression that must hold for an instance of the class, if the preconditions hold" . + rdfs:label "subsets" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:SubsetDefinition ; + skos:definition "An index to the collection of all subset definitions in the schema" ; + skos:exactMatch OIO:hasSubset ; + skos:inScheme linkml:meta ; + sh:order 8 . -linkml:readonly a owl:ObjectProperty, +linkml:todos a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "readonly" ; - rdfs:domain linkml:SlotDefinition ; + rdfs:label "todos" ; + rdfs:domain linkml:Element ; rdfs:range linkml:String ; - skos:definition "If present, slot is read only. Text explains why" . + skos:definition "Outstanding issues that needs resolution" ; + skos:inScheme linkml:meta . -linkml:reflexive a owl:ObjectProperty, +linkml:types a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "reflexive" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:subPropertyOf linkml:relational_logical_characteristic ; - skos:closeMatch owl:ReflexiveProperty ; - skos:definition "If s is reflexive, then i.s=i for all instances i" . + rdfs:label "types" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:TypeDefinition ; + skos:definition "An index to the collection of all type definitions in the schema" ; + skos:inScheme linkml:meta ; + sh:order 6 . -linkml:reflexive_transitive_form_of a owl:ObjectProperty, +linkml:unique_key_slots a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "reflexive_transitive_form_of" ; + rdfs:label "unique_key_slots" ; + rdfs:domain linkml:UniqueKey ; rdfs:range linkml:SlotDefinition ; - rdfs:subPropertyOf linkml:transitive_form_of ; - skos:definition "transitive_form_of including the reflexive case" . - -linkml:relational_role a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "relational_role" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:RelationalRoleEnum ; - skos:altLabel "reification_role" ; - skos:definition "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" . + skos:definition "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; + skos:inScheme linkml:meta . -linkml:relationship_types a owl:ObjectProperty, +linkml:values_from a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "relationship_types" ; - rdfs:domain linkml:ReachabilityQuery ; + rdfs:label "values_from" ; + bibo:status ; + rdfs:domain linkml:Definition ; rdfs:range linkml:Uriorcurie ; - skos:altLabel "predicates", - "properties" ; - skos:definition "A list of relationship types (properties) that are used in a reachability query" . + skos:definition "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + skos:inScheme linkml:meta . -linkml:repr a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "repr" ; - rdfs:domain linkml:TypeDefinition ; - rdfs:range linkml:String ; - skos:definition "the name of the python object that implements this type definition" . +linkml:Annotation a owl:Class, + linkml:ClassDefinition ; + rdfs:label "annotation" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:annotations ], + linkml:Annotatable, + linkml:Extension ; + skos:definition "a tag/value pair with the semantics of OWL Annotation" ; + skos:inScheme linkml:annotations . -linkml:represents_relationship a owl:ObjectProperty, +linkml:ClassExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "class_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:slot_conditions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_conditions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:exactly_one_of ] ; + skos:definition "A boolean expression that can be used to dynamically determine membership of a class" ; + skos:inScheme linkml:meta . + +linkml:MatchQuery a owl:Class, + linkml:ClassDefinition ; + rdfs:label "match_query" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:identifier_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:identifier_pattern ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:identifier_pattern ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:source_ontology ] ; + 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." ; + skos:inScheme linkml:meta . + +linkml:abbreviation a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "represents_relationship" ; - rdfs:domain linkml:ClassDefinition ; - rdfs:range linkml:Boolean ; - skos:altLabel "is_reified" ; - skos:definition "true if this class represents a relationship rather than an entity" . + rdfs:label "abbreviation" ; + skos:definition "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + skos:inScheme linkml:units . -linkml:reversed a owl:ObjectProperty, +linkml:abstract a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "reversed" ; + rdfs:label "abstract" ; + rdfs:domain linkml:Definition ; rdfs:range linkml:Boolean ; - skos:definition "true if the slot is to be inversed" . + skos:definition "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + skos:inScheme linkml:meta . -linkml:role a owl:ObjectProperty, +linkml:alias a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "role" ; + rdfs:label "alias" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:String ; - skos:definition "a textual descriptor that indicates the role played by the slot range" . + 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:inScheme linkml:meta ; + skos:note "an example of alias is used within this metamodel, slot_definitions is aliases as slots", + "not to be confused with aliases, which indicates a set of terms to be used for search purposes." ; + sh:order 6 . -linkml:setting_key a owl:ObjectProperty, +linkml:alias_predicate a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "setting_key" ; - rdfs:domain linkml:Setting ; - rdfs:range linkml:Ncname ; - skos:definition "the variable name for a setting" . + rdfs:label "alias_predicate" ; + rdfs:domain linkml:StructuredAlias ; + rdfs:range linkml:AliasPredicateEnum ; + skos:definition "The relationship between an element and its alias." ; + skos:inScheme linkml:meta ; + skos:prefLabel "predicate" . -linkml:setting_value a owl:ObjectProperty, +linkml:aliases a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "setting_value" ; - rdfs:domain linkml:Setting ; + rdfs:label "aliases" ; + rdfs:domain linkml:Element ; rdfs:range linkml:String ; - skos:definition "The value assigned for a setting" . + skos:altLabel "alternate names", + "alternative labels", + "designations", + "synonyms" ; + skos:definition "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + skos:exactMatch schema1:alternateName ; + skos:inScheme linkml:meta ; + skos:note "not be confused with the metaslot alias." . -linkml:settings a owl:ObjectProperty, +linkml:all_members a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "settings" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Setting ; - skos:altLabel "constants" ; - skos:definition "A collection of global variable settings" . + rdfs:label "all_members" ; + bibo:status ; + rdfs:range linkml:AnonymousSlotExpression ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the value of the slot is multivalued with all members satisfying the condition" ; + skos:inScheme linkml:meta . -linkml:shared a owl:ObjectProperty, +linkml:alt_description_source a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "shared" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:altLabel "inverse functional", - "many to one or many" ; - skos:definition "If True, then the relationship between the slot domain and range is many to one or many to many" . + rdfs:label "alt_description_source" ; + rdfs:domain linkml:AltDescription ; + rdfs:range linkml:String ; + skos:definition "the source of an attributed description" ; + skos:inScheme linkml:meta ; + skos:prefLabel "source" . -linkml:singular_name a owl:ObjectProperty, +linkml:alt_description_text a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "singular_name" ; - rdfs:domain linkml:SlotDefinition ; + rdfs:label "alt_description_text" ; + rdfs:domain linkml:AltDescription ; rdfs:range linkml:String ; - skos:closeMatch skos:altLabel ; - skos:definition "a name that is used in the singular form" . + skos:definition "text of an attributed description" ; + skos:inScheme linkml:meta ; + skos:prefLabel "description" . -linkml:slot_uri a owl:ObjectProperty, +linkml:asymmetric a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "slot_uri" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "public ID" ; - skos:definition "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." . + rdfs:label "asymmetric" ; + rdfs:subPropertyOf linkml:relational_logical_characteristic ; + skos:closeMatch owl:AsymmetricProperty ; + skos:definition "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" ; + skos:inScheme linkml:meta ; + skos:note "asymmetry is the combination of antisymmetry and irreflexivity" . -linkml:slot_usage a owl:ObjectProperty, +linkml:base a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "slot_usage" ; - rdfs:domain linkml:ClassDefinition ; - rdfs:range linkml:SlotDefinition ; - skos:definition "the refinement of a slot in the context of the containing class definition." . + rdfs:label "base" ; + rdfs:domain linkml:TypeDefinition ; + skos:definition "python base type in the LinkML runtime that implements this type definition" ; + skos:inScheme linkml:meta ; + skos:note "every root type must have a base", + "the base is inherited by child types but may be overridden. Base compatibility is not checked." ; + sh:order 8 . -linkml:source_file a owl:ObjectProperty, +linkml:bidirectional a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "source_file" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:String ; - skos:definition "name, uri or description of the source of the schema" . + rdfs:label "bidirectional" ; + rdfs:range linkml:Boolean ; + skos:altLabel "if and only if", + "iff" ; + skos:definition "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; + skos:inScheme linkml:meta . -linkml:source_file_date a owl:ObjectProperty, +linkml:code_set a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "source_file_date" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Datetime ; - skos:definition "modification date of the source of the schema" . + rdfs:label "code_set" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:Uriorcurie ; + skos:definition "the identifier of an enumeration code set." ; + skos:inScheme linkml:meta . -linkml:source_file_size a owl:ObjectProperty, +linkml:code_set_tag a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "source_file_size" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Integer ; - skos:definition "size in bytes of the source of the schema" . + rdfs:label "code_set_tag" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:String ; + skos:definition "the version tag of the enumeration code set" ; + skos:inScheme linkml:meta ; + skos:note "enum_expression cannot have both a code_set_tag and a code_set_version" . -linkml:source_nodes a owl:ObjectProperty, +linkml:code_set_version a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "source_nodes" ; - rdfs:domain linkml:ReachabilityQuery ; - rdfs:range linkml:Uriorcurie ; - skos:definition "A list of nodes that are used in the reachability query" . + rdfs:label "code_set_version" ; + rdfs:domain linkml:EnumExpression ; + rdfs:range linkml:String ; + skos:definition "the version identifier of the enumeration code set" ; + skos:inScheme linkml:meta ; + skos:note "we assume that version identifiers lexically sort in temporal order. Recommend semver when possible" . -linkml:string_serialization a owl:ObjectProperty, +linkml:conforms_to a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "string_serialization" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:String ; - skos:definition """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects -For example, a Measurement class may have 3 fields: unit, value, and string_value. The string_value slot may have a string_serialization of {value}{unit} such that if unit=cm and value=2, the value of string_value shouldd be 2cm""" . + rdfs:label "conforms_to" ; + rdfs:domain linkml:Element ; + rdfs:seeAlso linkml:implements ; + skos:definition "An established standard to which the element conforms." ; + skos:inScheme linkml:meta . -linkml:subclass_of a owl:ObjectProperty, +linkml:consider_nulls_inequal a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "subclass_of" ; - rdfs:domain linkml:ClassDefinition ; + rdfs:label "consider_nulls_inequal" ; + rdfs:domain linkml:UniqueKey ; + rdfs:range linkml:Boolean ; + skos:definition "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; + skos:inScheme linkml:meta . + +linkml:created_by a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "created_by" ; + rdfs:domain linkml:Element ; rdfs:range linkml:Uriorcurie ; - skos:closeMatch rdfs:subClassOf ; - skos:definition "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" . + skos:definition "agent that created the element" ; + skos:inScheme linkml:meta . -linkml:subsets a owl:ObjectProperty, +linkml:created_on a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "subsets" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:SubsetDefinition ; - skos:definition "An index to the collection of all subset definitions in the schema" ; - skos:exactMatch OIO:hasSubset . + rdfs:label "created_on" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Datetime ; + skos:definition "time at which the element was created" ; + skos:inScheme linkml:meta . -linkml:symmetric a owl:ObjectProperty, +linkml:deactivated a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "symmetric" ; - rdfs:domain linkml:SlotDefinition ; + rdfs:label "deactivated" ; rdfs:range linkml:Boolean ; - rdfs:subPropertyOf linkml:relational_logical_characteristic ; - skos:closeMatch owl:SymmetricProperty ; - skos:definition "If s is symmetric, and i.s=v, then v.s=i" . + skos:definition "a deactivated rule is not executed by the rules engine" ; + skos:inScheme linkml:meta . -linkml:syntax a owl:ObjectProperty, +linkml:default_prefix a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "syntax" ; - rdfs:domain linkml:PatternExpression ; + rdfs:label "default_prefix" ; + rdfs:domain linkml:SchemaDefinition ; rdfs:range linkml:String ; - skos:definition "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." . + skos:definition "The prefix that is used for all elements within a schema" ; + skos:inScheme linkml:meta ; + sh:order 11 . -linkml:tag a owl:ObjectProperty, +linkml:default_range a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "tag" ; - rdfs:domain linkml:Extension ; - rdfs:range linkml:Uriorcurie ; - skos:definition "a tag associated with an extension" . + rdfs:label "default_range" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:TypeDefinition ; + skos:definition "default slot range to be used if range element is omitted from a slot definition" ; + skos:inScheme linkml:meta ; + sh:order 13 . -linkml:text a owl:ObjectProperty, +linkml:deprecated a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "text" ; - rdfs:domain linkml:PermissibleValue ; + rdfs:label "deprecated" ; + rdfs:domain linkml:Element ; rdfs:range linkml:String ; - skos:altLabel "value" ; - skos:closeMatch skos:notation ; - skos:definition "The actual permissible value itself" . + skos:closeMatch owl:deprecated ; + skos:definition "Description of why and when this element will no longer be used" ; + skos:inScheme linkml:meta ; + skos:note "note that linkml does not use a boolean to indicate deprecation status - the presence of a string value in this field is sufficient to indicate deprecation." . -linkml:transitive a owl:ObjectProperty, +linkml:deprecated_element_has_exact_replacement a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "transitive" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - rdfs:subPropertyOf linkml:relational_logical_characteristic ; - skos:closeMatch owl:TransitiveProperty ; - skos:definition "If s is transitive, and i.s=z, and s.s=j, then i.s=j" . + rdfs:label "deprecated element has exact replacement" ; + rdfs:range linkml:Uriorcurie ; + skos:definition "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + skos:inScheme linkml:mappings ; + skos:mappingRelation IAO:0100001 . -linkml:traverse a owl:ObjectProperty, +linkml:deprecated_element_has_possible_replacement a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "traverse" ; - rdfs:range linkml:SlotDefinition ; - skos:definition "the slot to traverse" . + rdfs:label "deprecated element has possible replacement" ; + rdfs:range linkml:Uriorcurie ; + skos:definition "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + skos:inScheme linkml:mappings ; + skos:mappingRelation OIO:consider . -linkml:traverse_up a owl:ObjectProperty, +linkml:derivation a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "traverse_up" ; - rdfs:domain linkml:ReachabilityQuery ; - rdfs:range linkml:Boolean ; - skos:altLabel "ancestors" ; - skos:definition "True if the direction of the reachability query is reversed and ancestors are retrieved" . + rdfs:label "derivation" ; + rdfs:range linkml:String ; + skos:definition "Expression for deriving this unit from other units" ; + skos:inScheme linkml:units . -linkml:tree_root a owl:ObjectProperty, +linkml:descriptive_name a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "tree_root" ; - rdfs:domain linkml:ClassDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" . + rdfs:label "descriptive_name" ; + skos:definition "the spelled out name of the unit, for example, meter" ; + skos:inScheme linkml:units . -linkml:typeof a owl:ObjectProperty, +linkml:designates_type a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "typeof" ; - rdfs:domain linkml:TypeDefinition ; - rdfs:range linkml:TypeDefinition ; - skos:definition "A parent type from which type properties are inherited" . + rdfs:label "designates_type" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso ; + skos:altLabel "type designator" ; + skos:definition "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; + skos:inScheme linkml:meta . -linkml:types a owl:ObjectProperty, +linkml:domain a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "types" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:TypeDefinition ; - skos:definition "An index to the collection of all type definitions in the schema" . + rdfs:label "domain" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:ClassDefinition ; + skos:definition """defines the type of the subject of the slot. Given the following slot definition + S1: + domain: C1 + range: C2 +the declaration + X: + S1: Y -linkml:unique_key_name a owl:ObjectProperty, +implicitly asserts that X is an instance of C1 +""" ; + skos:inScheme linkml:meta . + +linkml:elseconditions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "unique_key_name" ; - rdfs:domain linkml:UniqueKey ; - rdfs:range linkml:String ; - skos:definition "name of the unique key" . + rdfs:label "elseconditions" ; + rdfs:range linkml:AnonymousClassExpression ; + rdfs:seeAlso ; + skos:altLabel "else" ; + skos:definition "an expression that must hold for an instance of the class, if the preconditions no not hold" ; + skos:inScheme linkml:meta ; + sh:order 115 . -linkml:unique_keys a owl:ObjectProperty, +linkml:enum_range a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "unique_keys" ; - rdfs:domain linkml:ClassDefinition ; - rdfs:range linkml:UniqueKey ; - skos:definition "A collection of named unique keys for this class. Unique keys may be singular or compound." ; - skos:exactMatch owl:hasKey . + rdfs:label "enum_range" ; + bibo:status ; + rdfs:range linkml:EnumExpression ; + skos:definition "An inlined enumeration" ; + skos:inScheme linkml:meta . -linkml:uri a owl:ObjectProperty, +linkml:enum_uri a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "uri" ; - rdfs:domain linkml:TypeDefinition ; + rdfs:label "enum_uri" ; + rdfs:domain linkml:EnumDefinition ; rdfs:range linkml:Uriorcurie ; - skos:definition "The uri that defines the possible values for the type definition" . + skos:altLabel "public ID" ; + skos:definition "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" ; + skos:inScheme linkml:meta . -linkml:usage_slot_name a owl:ObjectProperty, +linkml:extension_tag a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "usage_slot_name" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:String ; - skos:definition "The name of the slot referenced in the slot_usage" . + rdfs:label "extension_tag" ; + rdfs:domain linkml:Extension ; + rdfs:range linkml:Uriorcurie ; + skos:definition "a tag associated with an extension" ; + skos:inScheme linkml:extensions ; + skos:prefLabel "tag" . -linkml:values_from a owl:ObjectProperty, +linkml:extension_value a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "values_from" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:Uriorcurie ; - skos:definition "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." . + rdfs:label "extension_value" ; + rdfs:domain linkml:Extension ; + rdfs:range linkml:AnyValue ; + skos:definition "the actual annotation" ; + skos:inScheme linkml:extensions ; + skos:prefLabel "value" . -dcterms:conformsTo a owl:ObjectProperty, +linkml:followed_by a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "conforms_to" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:definition "An established standard to which the element conforms." ; - skos:exactMatch dcterms:conformsTo . + rdfs:label "followed_by" ; + rdfs:range linkml:Expression ; + skos:definition "in a sequential list, this indicates the next member" ; + skos:inScheme linkml:meta . -dcterms:license a owl:ObjectProperty, +linkml:from_schema a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "license" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:String ; - skos:definition "license for the schema" ; - skos:exactMatch dcterms:license . + rdfs:label "from_schema" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uri ; + skos:definition "id of the schema that defined the element" ; + skos:editorialNote "A stronger model would be range schema_definition, but this doesn't address the import model" ; + skos:inScheme linkml:meta . -pav:version a owl:ObjectProperty, +linkml:generation_date a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "version" ; + rdfs:label "generation_date" ; rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:String ; - skos:definition "particular version of schema" ; - skos:exactMatch pav:version, - schema1:schemaVersion . + rdfs:range linkml:Datetime ; + skos:definition "date and time that the schema was loaded/generated" ; + skos:inScheme linkml:meta . -qudt:abbreviation a owl:ObjectProperty, +linkml:has_member a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "abbreviation" ; - rdfs:range linkml:String ; - skos:definition "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; - skos:exactMatch qudt:abbreviation . + rdfs:label "has_member" ; + bibo:status ; + rdfs:range linkml:AnonymousSlotExpression ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the value of the slot is multivalued with at least one member satisfying the condition" ; + skos:inScheme linkml:meta . -qudt:hasQuantityKind a owl:ObjectProperty, +linkml:has_quantity_kind a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "has_quantity_kind" ; rdfs:range linkml:Uriorcurie ; skos:definition "Concept in a vocabulary or ontology that denotes the kind of quantity being measured, e.g. length" ; - skos:exactMatch qudt:hasQuantityKind . - -qudt:iec61360Code a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "iec61360code" ; - rdfs:range linkml:String ; - skos:exactMatch qudt:iec61360Code . - -qudt:symbol a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "symbol" ; - rdfs:range linkml:String ; - skos:definition "name of the unit encoded as a symbol" ; - skos:exactMatch qudt:symbol . + skos:inScheme linkml:units ; + skos:note "Potential ontologies include but are not limited to PATO, NCIT, OBOE, qudt.quantityKind" . -qudt:ucumCode a owl:ObjectProperty, +linkml:id a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "ucum_code" ; - rdfs:domain linkml:UnitOfMeasure ; - rdfs:range linkml:String ; - skos:definition "associates a QUDT unit with its UCUM code (case-sensitive)." ; - skos:exactMatch qudt:ucumCode . - -rdf:object a owl:Class, - linkml:RelationalRoleEnum ; - rdfs:label "OBJECT" . - -rdf:subject a owl:Class, - linkml:RelationalRoleEnum ; - rdfs:label "SUBJECT" . + rdfs:label "id" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:Uri ; + skos:definition "The official schema URI" ; + skos:inScheme linkml:meta . -rdfs:subPropertyOf a owl:ObjectProperty, +linkml:id_prefixes_are_closed a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "subproperty_of" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:SlotDefinition ; - skos:definition "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - skos:exactMatch rdfs:subPropertyOf . + rdfs:label "id_prefixes_are_closed" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso ; + skos:definition "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + skos:inScheme linkml:meta . -owl:inverseOf a owl:ObjectProperty, +linkml:identifier a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "inverse" ; + rdfs:label "identifier" ; rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:SlotDefinition ; - skos:definition "indicates that any instance of d s r implies that there is also an instance of r s' d" ; - skos:exactMatch owl:inverseOf . - -skos:broaderMatch a owl:Class, - linkml:AliasPredicateEnum ; - rdfs:label "BROAD_SYNONYM" . + rdfs:range linkml:Boolean ; + rdfs:seeAlso , + linkml:unique_keys ; + skos:altLabel "ID", + "UID", + "code", + "primary key" ; + skos:definition "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; + skos:inScheme linkml:meta ; + skos:note "a given domain can have at most one identifier", + "a key slot is automatically required. Identifiers cannot be optional", + "identifier is inherited", + "identifiers and keys are mutually exclusive. A given domain cannot have both" ; + sh:order 5 . -skos:example a owl:ObjectProperty, +linkml:identifier_pattern a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "value" ; - rdfs:domain linkml:Example ; + rdfs:label "identifier_pattern" ; + rdfs:domain linkml:MatchQuery ; rdfs:range linkml:String ; - skos:definition "example value" ; - skos:exactMatch skos:example . - -skos:narrowerMatch a owl:Class, - linkml:AliasPredicateEnum ; - rdfs:label "NARROW_SYNONYM" . + skos:definition "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" ; + skos:inScheme linkml:meta . -skos:prefLabel a owl:ObjectProperty, +linkml:ifabsent a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "alias" ; + rdfs:label "ifabsent" ; 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 . - -skosxl:literalForm a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "literal_form" ; - rdfs:domain linkml:StructuredAlias ; - rdfs:range linkml:String ; - skos:altLabel "alias_name", - "string_value" ; - skos:definition "The literal lexical form of a structured alias; i.e the actual alias value." ; - skos:exactMatch skosxl:literalForm . + rdfs:seeAlso linkml:equals_expression ; + skos:closeMatch sh:defaultValue ; + skos:definition """function that provides a default value for the slot. Possible values for this slot are defined in linkml.utils.ifabsent_functions.default_library: + * [Tt]rue -- boolean True + * [Ff]alse -- boolean False + * bnode -- blank node identifier + * class_curie -- CURIE for the containing class + * class_uri -- URI for the containing class + * default_ns -- schema default namespace + * default_range -- schema default range + * int(value) -- integer value + * slot_uri -- URI for the slot + * slot_curie -- CURIE for the slot + * string(value) -- string value""" ; + skos:inScheme linkml:meta . -sh:condition a owl:ObjectProperty, +linkml:implements 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 . + rdfs:label "implements" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + skos:definition "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + skos:inScheme linkml:meta . -sh:deactivated a owl:ObjectProperty, +linkml:import_as 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 . + rdfs:label "import_as" ; + bibo:status ; + rdfs:domain linkml:ImportExpression ; + rdfs:range linkml:Ncname ; + skos:inScheme linkml:meta . -sh:declare a owl:ObjectProperty, +linkml:import_from a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "prefixes" ; - rdfs:domain linkml:SchemaDefinition ; - rdfs:range linkml:Prefix ; - skos:definition "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; - skos:exactMatch sh:declare . + rdfs:label "import_from" ; + bibo:status ; + rdfs:domain linkml:ImportExpression ; + rdfs:range linkml:Uriorcurie ; + skos:inScheme linkml:meta . -sh:group a owl:ObjectProperty, +linkml:imported_from 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 . + rdfs:label "imported_from" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:String ; + skos:definition "the imports entry that this element was derived from. Empty means primary source" ; + skos:inScheme linkml:meta . -sh:namespace a owl:ObjectProperty, +linkml:in_language a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "prefix_reference" ; - rdfs:domain linkml:Prefix ; - rdfs:range linkml:Uri ; - skos:definition "The namespace to which a prefix expands to." ; - skos:exactMatch sh:namespace . + rdfs:label "in_language" ; + dcterms:conformsTo "https://www.rfc-editor.org/rfc/bcp/bcp47.txt" ; + rdfs:range linkml:String ; + skos:definition "the primary language used in the sources" ; + skos:inScheme linkml:meta ; + skos:note "Recommended to use a string from IETF BCP 47" . -sh:prefix a owl:ObjectProperty, +linkml:include_self a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "prefix_prefix" ; - rdfs:domain linkml:Prefix ; - rdfs:range linkml:Ncname ; - skos:definition "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; - skos:exactMatch sh:prefix . + rdfs:label "include_self" ; + rdfs:domain linkml:ReachabilityQuery ; + rdfs:range linkml:Boolean ; + skos:altLabel "reflexive" ; + skos:definition "True if the query is reflexive" ; + skos:inScheme linkml:meta . -sh:rule a owl:ObjectProperty, +linkml:inherited 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:AnyValue a owl:Class, - linkml:ClassDefinition ; - rdfs:label "AnyValue" ; - skos:exactMatch linkml:Any . - -linkml:ClassRule a owl:Class, - linkml:ClassDefinition ; - rdfs:label "class_rule" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:elseconditions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], - [ 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_possible_replacement ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], - [ 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 rdfs:seeAlso ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], - [ 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:exactMatch ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:open_world ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], - [ a owl:Restriction ; - 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 sh:condition ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:postconditions ], - linkml:Annotatable, - linkml:ClassLevelRule, - linkml:CommonMetadata, - linkml:Extensible ; - skos:altLabel "if rule" ; - skos:closeMatch swrl:Imp, - sh:TripleRule ; - skos:definition "A rule that applies to instances of a class" ; - linkml:is_a linkml:ClassLevelRule ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible . - - a owl:Class, - linkml:PresenceEnum ; - rdfs:label "ABSENT" . - - a owl:Class, - linkml:PresenceEnum ; - rdfs:label "PRESENT" . - - a owl:Class, - linkml:PresenceEnum ; - rdfs:label "UNCOMMITTED" . - - a owl:Class, - linkml:PvFormulaOptions ; - rdfs:label "CODE" . + rdfs:label "inherited" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + skos:definition "true means that the *value* of a slot is inherited by subclasses" ; + skos:inScheme linkml:meta ; + skos:note "Inherited applies to slot values. Parent *slots* are always inherited by subclasses", + "the slot is to be used for defining *metamodels* only" . - a owl:Class, - linkml:PvFormulaOptions ; - rdfs:label "CURIE" . +linkml:inlined a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "inlined" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso , + ; + 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:inScheme linkml:meta ; + skos:note "classes without keys or identifiers are necessarily inlined as lists", + "only applicable in tree-like serializations, e.g json, yaml" ; + sh:order 25 . - a owl:Class, - linkml:PvFormulaOptions ; - rdfs:label "FHIR_CODING" . +linkml:inlined_as_list a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "inlined_as_list" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso , + ; + 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:inScheme linkml:meta ; + skos:note """A keyed or identified class with one additional slot can be input in a third form, a dictionary whose key +is the key or identifier and whose value is the one additional element. This form is still stored according +to the inlined_as_list setting.""", + """The default loader will accept either list or dictionary form as input. This parameter controls internal +representation and output.""" ; + sh:order 27 . - a owl:Class, - linkml:PvFormulaOptions ; - rdfs:label "URI" . +linkml:interpolated a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "interpolated" ; + rdfs:domain linkml:PatternExpression ; + rdfs:range linkml:Boolean ; + skos:definition "if true then the pattern is first string interpolated" ; + skos:inScheme linkml:meta . - a owl:Class, - linkml:RelationalRoleEnum ; - rdfs:label "NODE" . +linkml:inverse a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "inverse" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:SlotDefinition ; + skos:definition "indicates that any instance of d s r implies that there is also an instance of r s' d" ; + skos:inScheme linkml:meta . - a owl:Class, - linkml:RelationalRoleEnum ; - rdfs:label "OTHER_ROLE" . +linkml:irreflexive a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "irreflexive" ; + rdfs:subPropertyOf linkml:relational_logical_characteristic ; + skos:closeMatch owl:IrreflexiveProperty ; + skos:definition "If s is irreflexive, then there exists no i such i.s=i" ; + skos:inScheme linkml:meta . -linkml:children_are_mutually_disjoint a owl:ObjectProperty, +linkml:is_class_field a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "children_are_mutually_disjoint" ; - rdfs:domain linkml:Definition ; + rdfs:label "is_class_field" ; + rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - skos:definition "If true then all direct is_a children are mutually disjoint and share no instances in common" . + skos:definition "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; + skos:inScheme linkml:meta . -linkml:disjoint_with a owl:ObjectProperty, +linkml:is_direct a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "disjoint_with" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:Definition ; - skos:definition "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" . + rdfs:label "is_direct" ; + rdfs:domain linkml:ReachabilityQuery ; + rdfs:range linkml:Boolean ; + skos:altLabel "non-transitive" ; + skos:definition "True if the reachability query should only include directly related nodes, if False then include also transitively connected" ; + skos:inScheme linkml:meta . -linkml:slot_names_unique a owl:ObjectProperty, +linkml:is_grouping_slot a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "slot_names_unique" ; - rdfs:domain linkml:Definition ; + rdfs:label "is_grouping_slot" ; + rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - skos:definition "if true then induced/mangled slot names are not created for class_usage and attributes" . + skos:closeMatch sh:PropertyGroup ; + skos:definition "true if this slot is a grouping slot" ; + skos:inScheme linkml:meta . -linkml:slots a owl:ObjectProperty, - linkml:SlotDefinition . +linkml:is_usage_slot a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "is_usage_slot" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + skos:definition "True means that this slot was defined in a slot_usage situation" ; + skos:inScheme linkml:meta . -linkml:source_ontology a owl:ObjectProperty, +linkml:key a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "source_ontology" ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "terminology", - "vocabulary" ; - skos:definition "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" . + rdfs:label "key" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso linkml:unique_keys ; + skos:definition "True means that the key slot(s) uniquely identify the elements within a single container" ; + skos:inScheme linkml:meta ; + skos:note "a given domain can have at most one key slot (restriction to be removed in the future)", + "a key slot is automatically required. Keys cannot be optional", + "identifiers and keys are mutually exclusive. A given domain cannot have both", + "key is inherited" . -linkml:transitive_form_of a owl:ObjectProperty, +linkml:last_updated_on a owl:ObjectProperty, linkml:SlotDefinition ; - 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" . + rdfs:label "last_updated_on" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Datetime ; + skos:definition "time at which the element was last updated" ; + skos:inScheme linkml:meta . -linkml:unique_key_slots a owl:ObjectProperty, +linkml:license a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "unique_key_slots" ; - rdfs:domain linkml:UniqueKey ; - rdfs:range linkml:SlotDefinition ; - skos:definition "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." . + rdfs:label "license" ; + rdfs:domain linkml:SchemaDefinition ; + skos:definition "license for the schema" ; + skos:inScheme linkml:meta ; + sh:order 31 . -rdfs:label a owl:ObjectProperty, - linkml:SlotDefinition . +linkml:list_elements_ordered a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "list_elements_ordered" ; + bibo:status ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + skos:definition "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" ; + skos:inScheme linkml:meta ; + skos:note "should only be used with multivalued slots" . -linkml:Anything a owl:Class, - linkml:ClassDefinition ; - rdfs:label "Anything" ; - skos:exactMatch linkml:Any . +linkml:list_elements_unique a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "list_elements_unique" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + skos:definition "If True, then there must be no duplicates in the elements of a multivalued slot" ; + skos:inScheme linkml:meta ; + skos:note "should only be used with multivalued slots" . -linkml:ClassLevelRule a owl:Class, - linkml:ClassDefinition ; - rdfs:label "class_level_rule" ; - skos:definition "A rule that is applied to classes" . +linkml:literal_form a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "literal_form" ; + rdfs:domain linkml:StructuredAlias ; + rdfs:range linkml:String ; + skos:altLabel "alias_name", + "string_value" ; + skos:definition "The literal lexical form of a structured alias; i.e the actual alias value." ; + skos:inScheme linkml:meta . -linkml:all_members a owl:ObjectProperty, +linkml:local_name_source a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "all_members" ; - rdfs:range linkml:AnonymousSlotExpression ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the value of the slot is multivalued with all members satisfying the condition" . + rdfs:label "local_name_source" ; + rdfs:domain linkml:LocalName ; + rdfs:range linkml:Ncname ; + skos:definition "the ncname of the source of the name" ; + skos:inScheme linkml:meta . -linkml:apply_to a owl:ObjectProperty, +linkml:local_name_value a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "apply_to" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:Definition ; - skos:definition "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." . + rdfs:label "local_name_value" ; + rdfs:domain linkml:LocalName ; + rdfs:range linkml:String ; + skos:definition "a name assigned to an element in a given ontology" ; + skos:inScheme linkml:meta . -linkml:code_set a owl:ObjectProperty, +linkml:locally_reflexive a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "code_set" ; - rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:Uriorcurie ; - skos:definition "the identifier of an enumeration code set." . + rdfs:label "locally_reflexive" ; + rdfs:subPropertyOf linkml:relational_logical_characteristic ; + skos:definition "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; + skos:inScheme linkml:meta . -linkml:code_set_tag a owl:ObjectProperty, +linkml:matches a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "code_set_tag" ; + rdfs:label "matches" ; rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:String ; - skos:definition "the version tag of the enumeration code set" . + rdfs:range linkml:MatchQuery ; + skos:definition "Specifies a match query that is used to calculate the list of permissible values" ; + skos:inScheme linkml:meta . -linkml:code_set_version a owl:ObjectProperty, +linkml:maximum_cardinality a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "code_set_version" ; - rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:String ; - skos:definition "the version identifier of the enumeration code set" . + rdfs:label "maximum_cardinality" ; + rdfs:range linkml:Integer ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the maximum number of entries for a multivalued slot" ; + skos:inScheme linkml:meta . -linkml:concepts a owl:ObjectProperty, +linkml:meaning a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "concepts" ; - rdfs:domain linkml:EnumExpression ; + rdfs:label "meaning" ; + rdfs:domain linkml:PermissibleValue ; rdfs:range linkml:Uriorcurie ; - skos:definition "A list of identifiers that are used to construct a set of permissible values" . + rdfs:seeAlso ; + skos:altLabel "PV meaning" ; + skos:definition "the value meaning of a permissible value" ; + skos:editorialNote "we may want to change the range of this (and other) elements in the model to an entitydescription type construct" ; + skos:inScheme linkml:meta ; + sh:order 23 . -linkml:enum_range a owl:ObjectProperty, +linkml:metamodel_version a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "enum_range" ; - rdfs:range linkml:EnumExpression ; - skos:definition "An inlined enumeration" . + rdfs:label "metamodel_version" ; + rdfs:domain linkml:SchemaDefinition ; + skos:definition "Version of the metamodel used to load the schema" ; + skos:inScheme linkml:meta . -linkml:equals_expression a owl:ObjectProperty, +linkml:minimum_cardinality a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "equals_expression" ; - rdfs:range linkml:String ; + rdfs:label "minimum_cardinality" ; + rdfs:range linkml:Integer ; rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the value of the slot must equal the value of the evaluated expression" . + skos:definition "the minimum number of entries for a multivalued slot" ; + skos:inScheme linkml:meta . -linkml:has_member a owl:ObjectProperty, +linkml:mixin a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "has_member" ; - rdfs:range linkml:AnonymousSlotExpression ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the value of the slot is multivalued with at least one member satisfying the condition" . + rdfs:label "mixin" ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso ; + skos:altLabel "trait" ; + skos:definition "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." ; + skos:inScheme linkml:meta . -linkml:include a owl:ObjectProperty, +linkml:modified_by a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "include" ; - rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:AnonymousEnumExpression ; - skos:definition "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" . + rdfs:label "modified_by" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + skos:definition "agent that modified the element" ; + skos:inScheme linkml:meta . -linkml:inherits a owl:ObjectProperty, +linkml:multivalued a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "inherits" ; - rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:EnumDefinition ; - skos:definition "An enum definition that is used as the basis to create a new enum" . + rdfs:label "multivalued" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + skos:definition "true means that slot can have more than one value and should be represented using a list or collection structure." ; + skos:inScheme linkml:meta ; + sh:order 7 . -linkml:inlined a owl:ObjectProperty, +linkml:open_world a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "inlined" ; - rdfs:domain linkml:SlotDefinition ; + rdfs:label "open_world" ; rdfs:range linkml:Boolean ; - skos:definition "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." . + skos:definition "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; + skos:inScheme linkml:meta . -linkml:inlined_as_list a owl:ObjectProperty, +linkml:owner a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "inlined_as_list" ; + rdfs:label "owner" ; rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Definition ; + skos:definition "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; + skos:inScheme linkml:meta . + +linkml:partial_match a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "partial_match" ; + rdfs:domain linkml:PatternExpression ; rdfs:range linkml:Boolean ; - skos:definition "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." . + skos:definition "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; + skos:inScheme linkml:meta . -linkml:matches a owl:ObjectProperty, +linkml:path_rule a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "matches" ; - rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:MatchQuery ; - skos:definition "Specifies a match query that is used to calculate the list of permissible values" . + rdfs:label "path_rule" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:PathExpression ; + skos:definition "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; + skos:inScheme linkml:meta . -linkml:maximum_cardinality a owl:ObjectProperty, +linkml:postconditions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "maximum_cardinality" ; - rdfs:range linkml:Integer ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the maximum number of entries for a multivalued slot" . + rdfs:label "postconditions" ; + rdfs:range linkml:AnonymousClassExpression ; + rdfs:seeAlso ; + skos:altLabel "consequents", + "head", + "then" ; + skos:closeMatch swrl:body ; + skos:definition "an expression that must hold for an instance of the class, if the preconditions hold" ; + skos:inScheme linkml:meta ; + sh:order 113 . -linkml:minimum_cardinality a owl:ObjectProperty, +linkml:preconditions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "minimum_cardinality" ; - rdfs:range linkml:Integer ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the minimum number of entries for a multivalued slot" . + rdfs:label "preconditions" ; + rdfs:range linkml:AnonymousClassExpression ; + rdfs:seeAlso ; + 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:inScheme linkml:meta ; + sh:order 111 . -linkml:minus a owl:ObjectProperty, +linkml:prefix_prefix a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "minus" ; - rdfs:domain linkml:EnumExpression ; - rdfs:range linkml:AnonymousEnumExpression ; - skos:definition "An enum expression that yields a list of permissible values that are to be subtracted from the enum" . + rdfs:label "prefix_prefix" ; + rdfs:domain linkml:Prefix ; + rdfs:range linkml:Ncname ; + skos:definition "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; + skos:inScheme linkml:meta ; + sh:order 1 . -linkml:permissible_values a owl:ObjectProperty, +linkml:prefix_reference a owl:ObjectProperty, linkml:SlotDefinition ; - 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" ; - skos:exactMatch cdisc:PermissibleValue . + rdfs:label "prefix_reference" ; + rdfs:domain linkml:Prefix ; + rdfs:range linkml:Uri ; + skos:definition "The namespace to which a prefix expands to." ; + skos:inScheme linkml:meta ; + sh:order 2 . linkml:pv_formula a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "pv_formula" ; rdfs:domain linkml:EnumExpression ; rdfs:range linkml:PvFormulaOptions ; - skos:definition "Defines the specific formula to be used to generate the permissible values." . + skos:definition "Defines the specific formula to be used to generate the permissible values." ; + skos:inScheme linkml:meta ; + skos:note "code_set must be supplied for this to be valid", + "you cannot have BOTH the permissible_values and permissible_value_formula tag" . linkml:range a owl:ObjectProperty, linkml:SlotDefinition ; @@ -1415,1756 +1669,1837 @@ the declaration S1: Y implicitly asserts Y is an instance of C2 -""" . +""" ; + skos:inScheme linkml:meta ; + skos:note "range is underspecified, as not all elements can appear as the range of a slot." . linkml:reachable_from a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "reachable_from" ; rdfs:domain linkml:EnumExpression ; rdfs:range linkml:ReachabilityQuery ; - skos:definition "Specifies a query for obtaining a list of permissible values based on graph reachability" . + skos:definition "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + skos:inScheme linkml:meta . + +linkml:readonly a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "readonly" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:String ; + skos:definition "If present, slot is read only. Text explains why" ; + skos:inScheme linkml:meta ; + skos:note "the slot is to be used for defining *metamodels* only" . linkml:recommended a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "recommended" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - skos:definition "true means that the slot should be present in instances of the class definition, but this is not required" . + rdfs:seeAlso ; + skos:definition "true means that the slot should be present in instances of the class definition, but this is not required" ; + skos:inScheme linkml:meta ; + skos:note "If a slot is recommended, and it is not populated, applications must not treat this as an error. Applications may use this to inform the user of missing data", + "This is to be used where not all data is expected to conform to having a required field" ; + sh:order 9 . + +linkml:reflexive a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "reflexive" ; + rdfs:subPropertyOf linkml:relational_logical_characteristic ; + skos:closeMatch owl:ReflexiveProperty ; + skos:definition "If s is reflexive, then i.s=i for all instances i" ; + skos:inScheme linkml:meta ; + skos:note "it is rare for a property to be reflexive, this characteristic is added for completeness, consider instead locally_reflexive" . + +linkml:reflexive_transitive_form_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "reflexive_transitive_form_of" ; + rdfs:subPropertyOf linkml:transitive_form_of ; + skos:definition "transitive_form_of including the reflexive case" ; + skos:inScheme linkml:meta . + +linkml:relational_role a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "relational_role" ; + bibo:status ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:RelationalRoleEnum ; + skos:altLabel "reification_role" ; + skos:definition "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; + skos:inScheme linkml:meta ; + skos:note "in the context of RDF, this should be used for slots that can be modeled using the RDF reification vocabulary", + "in the context of property graphs, this should be used on edge classes to indicate which slots represent the input and output nodes", + "this should only be used on slots that are applicable to class that represent relationships" . + +linkml:repr a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "repr" ; + rdfs:domain linkml:TypeDefinition ; + rdfs:range linkml:String ; + skos:definition "the name of the python object that implements this type definition" ; + skos:inScheme linkml:meta ; + sh:order 10 . + +linkml:represents_relationship a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "represents_relationship" ; + bibo:status ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso rdf:Statement, + ; + skos:altLabel "is_reified" ; + skos:definition "true if this class represents a relationship rather than an entity" ; + skos:inScheme linkml:meta ; + skos:note "in the context of Entity-Relationship (ER) modeling, this is used to state that a class models a relationship between entities, and should be drawn with a diamond", + "in the context of RDF, this should be used when instances of the class are `rdf:Statement`s", + "in the context of property graphs, this should be used when a class is used to represent an edge that connects nodes" . linkml:required a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "required" ; rdfs:domain linkml:SlotDefinition ; rdfs:range linkml:Boolean ; - skos:definition "true means that the slot must be present in instances of the class definition" . + skos:definition "true means that the slot must be present in instances of the class definition" ; + skos:inScheme linkml:meta ; + sh:order 8 . -linkml:slot_conditions a owl:ObjectProperty, +linkml:reversed a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "slot_conditions" ; - rdfs:domain linkml:ClassExpression ; - rdfs:range linkml:SlotDefinition ; - skos:definition "expresses constraints on a group of slots for a class expression" . + rdfs:label "reversed" ; + rdfs:range linkml:Boolean ; + skos:definition "true if the slot is to be inversed" ; + skos:inScheme linkml:meta . -linkml:union_of a owl:ObjectProperty, +linkml:role a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "union_of" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Element ; - skos:definition "indicates that the domain element consists exactly of the members of the element in the range." . + rdfs:label "role" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:String ; + skos:definition "a textual descriptor that indicates the role played by the slot range" ; + skos:inScheme linkml:meta ; + skos:note "the primary use case for this slot is to provide a textual descriptor of a generic slot name when used in the context of a more specific class" . -linkml:value_presence a owl:ObjectProperty, +linkml:setting_key a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "value_presence" ; + rdfs:label "setting_key" ; + rdfs:domain linkml:Setting ; + rdfs:range linkml:Ncname ; + skos:definition "the variable name for a setting" ; + skos:inScheme linkml:meta . + +linkml:setting_value a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "setting_value" ; + rdfs:domain linkml:Setting ; + rdfs:range linkml:String ; + skos:definition "The value assigned for a setting" ; + skos:inScheme linkml:meta . + +linkml:shared a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "shared" ; rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:PresenceEnum ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)" . + rdfs:range linkml:Boolean ; + skos:altLabel "inverse functional", + "many to one or many" ; + skos:definition "If True, then the relationship between the slot domain and range is many to one or many to many" ; + skos:inScheme linkml:meta . -rdf:predicate a owl:Class, - owl:ObjectProperty, - linkml:RelationalRoleEnum, +linkml:singular_name a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "PREDICATE", - "predicate" ; - rdfs:domain linkml:StructuredAlias ; - rdfs:range linkml:AliasPredicateEnum ; - skos:definition "The relationship between an element and its alias." ; - skos:exactMatch rdf:predicate . + rdfs:label "singular_name" ; + rdfs:domain linkml:SlotDefinition ; + skos:closeMatch skos:altLabel ; + skos:definition "a name that is used in the singular form" ; + skos:inScheme linkml:meta ; + skos:note "this may be used in some schema translations where use of a singular form is idiomatic, for example RDF" . -linkml:AnonymousExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "anonymous_expression" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], +linkml:slot_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:inScheme linkml:meta ; + skos:note "slot groups do not change the semantics of a model but are a useful way of visually grouping related slots" . + +linkml:source a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "source" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + skos:altLabel "derived from", + "origin" ; + skos:closeMatch schema1:isBasedOn, + prov:wasDerivedFrom ; + skos:definition "A related resource from which the element is derived." ; + skos:inScheme linkml:meta ; + skos:note "The described resource may be derived from the related resource in whole or in part" . + +linkml:source_file a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "source_file" ; + rdfs:domain linkml:SchemaDefinition ; + skos:definition "name, uri or description of the source of the schema" ; + skos:inScheme linkml:meta . + +linkml:source_file_date a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "source_file_date" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:Datetime ; + skos:definition "modification date of the source of the schema" ; + skos:inScheme linkml:meta . + +linkml:source_file_size a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "source_file_size" ; + rdfs:domain linkml:SchemaDefinition ; + rdfs:range linkml:Integer ; + skos:definition "size in bytes of the source of the schema" ; + skos:inScheme linkml:meta . + +linkml:status a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "status" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + rdfs:seeAlso , + ; + skos:altLabel "workflow status" ; + skos:definition "status of the element" ; + skos:inScheme linkml:meta . + +linkml:string_serialization a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "string_serialization" ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:String ; + rdfs:seeAlso ; + skos:definition """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects +For example, a Measurement class may have 3 fields: unit, value, and string_value. The string_value slot may have a string_serialization of {value}{unit} such that if unit=cm and value=2, the value of string_value shouldd be 2cm""" ; + skos:inScheme linkml:meta . + +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 "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; + skos:inScheme linkml:meta . + +linkml:subproperty_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "subproperty_of" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:SlotDefinition ; + skos:definition "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + skos:inScheme linkml:meta . + +linkml:symmetric a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "symmetric" ; + rdfs:subPropertyOf linkml:relational_logical_characteristic ; + skos:closeMatch owl:SymmetricProperty ; + skos:definition "If s is symmetric, and i.s=v, then v.s=i" ; + skos:inScheme linkml:meta . + +linkml:syntax a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "syntax" ; + rdfs:domain linkml:PatternExpression ; + rdfs:range linkml:String ; + skos:definition "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." ; + skos:inScheme linkml:meta . + +linkml:text a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "text" ; + rdfs:domain linkml:PermissibleValue ; + rdfs:range linkml:String ; + skos:altLabel "value" ; + skos:closeMatch skos:notation ; + skos:definition "The actual permissible value itself" ; + skos:inScheme linkml:meta ; + skos:note "there are no constraints on the text of the permissible value, but for many applications you may want to consider following idiomatic forms and using computer-friendly forms" ; + sh:order 21 . + +linkml:title a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "title" ; + rdfs:domain linkml:Element ; + skos:altLabel "long name" ; + skos:definition "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + skos:inScheme linkml:meta ; + sh:order 3 . + +linkml:transitive a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "transitive" ; + rdfs:subPropertyOf linkml:relational_logical_characteristic ; + skos:closeMatch owl:TransitiveProperty ; + skos:definition "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; + skos:inScheme linkml:meta . + +linkml:traverse a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "traverse" ; + rdfs:range linkml:SlotDefinition ; + skos:definition "the slot to traverse" ; + skos:inScheme linkml:meta . + +linkml:traverse_up a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "traverse_up" ; + rdfs:domain linkml:ReachabilityQuery ; + rdfs:range linkml:Boolean ; + skos:altLabel "ancestors" ; + skos:definition "True if the direction of the reachability query is reversed and ancestors are retrieved" ; + skos:inScheme linkml:meta . + +linkml:tree_root a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "tree_root" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:Boolean ; + rdfs:seeAlso ; + skos:definition "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" ; + skos:editorialNote "each schema should have at most one tree root" ; + skos:inScheme linkml:meta ; + sh:order 31 . + +linkml:type_uri a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "type_uri" ; + rdfs:domain linkml:TypeDefinition ; + rdfs:range linkml:Uriorcurie ; + skos:definition "The uri that defines the possible values for the type definition" ; + skos:inScheme linkml:meta ; + skos:note "every root type must have a type uri", + "uri is typically drawn from the set of URI's defined in OWL (https://www.w3.org/TR/2012/REC-owl2-syntax-20121211/#Datatype_Maps)" ; + skos:prefLabel "uri" ; + sh:order 2 . + +linkml:typeof a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "typeof" ; + rdfs:domain linkml:TypeDefinition ; + rdfs:range linkml:TypeDefinition ; + skos:definition "A parent type from which type properties are inherited" ; + skos:inScheme linkml:meta ; + skos:note "the target type definition of the typeof slot is referred to as the \"parent type\"", + "the type definition containing the typeof slot is referred to as the \"child type\"", + "type definitions without a typeof slot are referred to as a \"root type\"" ; + sh:order 7 . + +linkml:unique_key_name a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "unique_key_name" ; + rdfs:domain linkml:UniqueKey ; + skos:definition "name of the unique key" ; + skos:inScheme linkml:meta . + +linkml:usage_slot_name a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "usage_slot_name" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:String ; + skos:definition "The name of the slot referenced in the slot_usage" ; + skos:inScheme linkml:meta . + +linkml:value a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "value" ; + rdfs:domain linkml:Example ; + skos:definition "example value" ; + skos:inScheme linkml:meta . + +linkml:value_description a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "value_description" ; + rdfs:domain linkml:Example ; + skos:definition "description of what the value is doing" ; + skos:inScheme linkml:meta ; + skos:prefLabel "description" . + +linkml:value_object a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "value_object" ; + rdfs:domain linkml:Example ; + rdfs:range linkml:Anything ; + skos:definition "direct object representation of the example" ; + skos:inScheme linkml:meta ; + skos:prefLabel "object" . + +linkml:value_presence a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "value_presence" ; + bibo:status ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:PresenceEnum ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "if true then a value must be present (for lists there must be at least one value). If false then a value must be absent (for lists, must be empty)" ; + skos:inScheme linkml:meta ; + skos:note "if set to true this has the same effect as required=true. In contrast, required=false allows a value to be present" . + +linkml:version a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "version" ; + rdfs:domain linkml:SchemaDefinition ; + skos:definition "particular version of schema" ; + skos:exactMatch schema1:schemaVersion ; + skos:inScheme linkml:meta . + +linkml:AltDescription a owl:Class, + linkml:ClassDefinition ; + rdfs:label "alt_description" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:alt_description_source ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:minCardinality 1 ; + owl:onProperty linkml:alt_description_source ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:minCardinality 1 ; + owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alt_description_source ] ; + skos:altLabel "structured description" ; + skos:definition "an attributed description" ; + skos:inScheme linkml:meta . + +linkml:AnonymousEnumExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "anonymous_enum_expression" ; + rdfs:subClassOf linkml:EnumExpression ; + skos:definition "An enum_expression that is not named" ; + skos:inScheme linkml:meta . + +linkml:AnonymousTypeExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "anonymous_type_expression" ; + rdfs:subClassOf linkml:TypeExpression ; + skos:definition "A type expression that is not a top-level named type definition. Used for nesting." ; + skos:inScheme linkml:meta . + +linkml:ImportExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "import_expression" ; + bibo:status ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Setting ; + owl:onProperty linkml:import_map ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:import_as ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:import_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:import_as ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:import_map ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:onProperty linkml:import_from ], [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:import_from ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:import_as ], + linkml:Annotatable, + linkml:CommonMetadata, + linkml:Extensible ; + skos:definition "an expression describing an import" ; + skos:inScheme linkml:meta . + +linkml:LocalName a owl:Class, + linkml:ClassDefinition ; + rdfs:label "local_name" ; + rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:minCardinality 1 ; + owl:onProperty linkml:local_name_source ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:minCardinality 1 ; + owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:maxCardinality 1 ; + owl:onProperty linkml:local_name_source ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:local_name_source ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:maxCardinality 1 ; + owl:onProperty linkml:local_name_value ] ; + skos:definition "an attributed label" ; + skos:inScheme linkml:meta . + +linkml:Prefix a owl:Class, + linkml:ClassDefinition ; + rdfs:label "prefix" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:prefix_reference ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:minCardinality 1 ; + owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:prefix_reference ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:minCardinality 1 ; + owl:onProperty linkml:prefix_reference ] ; + skos:definition "prefix URI tuple" ; + skos:inScheme linkml:meta ; + sh:order 12 . + +linkml:SlotExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "slot_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:minCardinality 0 ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:maxCardinality 1 ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:minCardinality 0 ; + owl:onProperty linkml:recommended ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:minCardinality 0 ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:onProperty linkml:pattern ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:range ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:maximum_value ], [ 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:closeMatch ], - linkml:Annotatable, - linkml:CommonMetadata, - linkml:Expression, - linkml:Extensible ; - skos:definition "An abstract parent class for any nested expression" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Expression, - linkml:Extensible . - -linkml:ImportExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "import_expression" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:minCardinality 0 ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], - [ 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 ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], - [ 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:Uriorcurie ; - owl:onProperty bibo:status ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:minCardinality 0 ; + owl:onProperty linkml:range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:maxCardinality 1 ; + owl:onProperty linkml:all_members ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:minCardinality 0 ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:recommended ], [ a owl:Restriction ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:import_from ; - owl:qualifiedCardinality 1 ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Ncname ; - owl:onProperty linkml:import_as ], + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:minCardinality 0 ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:maxCardinality 1 ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:minCardinality 0 ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Setting ; - owl:onProperty linkml:import_map ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:recommended ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:minCardinality 0 ; + owl:onProperty linkml:all_members ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inlined ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], - linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible ; - skos:definition "an expression describing an import" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible . - -linkml:LocalName a owl:Class, - linkml:ClassDefinition ; - rdfs:label "local_name" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onClass linkml:Ncname ; - owl:onProperty linkml:local_name_source ; - owl:qualifiedCardinality 1 ], + owl:maxCardinality 1 ; + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty skos:altLabel ; - owl:qualifiedCardinality 1 ] ; - skos:definition "an attributed label" . - -linkml:TypeExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "type_expression" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; + owl:minCardinality 0 ; owl:onProperty linkml:all_of ], [ 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:equals_string ], - [ 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:pattern ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; + owl:allValuesFrom linkml:PatternExpression ; owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:maximum_cardinality ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_members ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], - linkml:Expression, - linkml:mixin ; - skos:definition "An abstract class grouping named types and anonymous type expressions" ; - linkml:is_a linkml:Expression . - -linkml:boolean_slot a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "boolean_slot" ; - rdfs:range linkml:Expression ; - skos:definition "A grouping of slots that expression a boolean operator over a list of operands" . - -linkml:mixins a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "mixins" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:Definition ; - skos:altLabel "traits" ; - skos:definition "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." . - -linkml:range_expression a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "range_expression" ; - rdfs:domain linkml:SlotExpression ; - rdfs:range linkml:AnonymousClassExpression ; - skos:definition "A range that is described as a boolean expression combining existing ranges" . - -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 ], + owl:minCardinality 0 ; + owl:onProperty linkml:required ], [ a owl:Restriction ; - owl:onClass linkml:Ncname ; - owl:onProperty sh:prefix ; - owl:qualifiedCardinality 1 ] ; - skos:definition "prefix URI tuple" . - -linkml:UniqueKey a owl:Class, - linkml:ClassDefinition ; - rdfs:label "unique_key" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:maxCardinality 1 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:maxCardinality 1 ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inlined ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:maxCardinality 1 ; + owl:onProperty linkml:required ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], - [ 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 ] ) ], + owl:maxCardinality 1 ; + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:maxCardinality 1 ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:minCardinality 0 ; + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:Element ; + owl:onProperty linkml:range ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:minCardinality 0 ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:EnumExpression ; + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:minCardinality 0 ; + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:maxCardinality 1 ; + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:minCardinality 0 ; + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:consider_nulls_inequal ], + owl:minCardinality 0 ; + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:minCardinality 0 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:minCardinality 0 ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:minCardinality 0 ; + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:required ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:allValuesFrom linkml:PresenceEnum ; + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:minCardinality 0 ; + owl:onProperty linkml:inlined ], + linkml:Expression ; + skos:definition "an expression that constrains the range of values a slot can take" ; + skos:inScheme linkml:meta . + +linkml:StructuredAlias a owl:Class, + linkml:ClassDefinition ; + rdfs:label "structured_alias" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:alias_predicate ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:allValuesFrom linkml:AliasPredicateEnum ; + owl:onProperty linkml:alias_predicate ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:minCardinality 0 ; + owl:onProperty linkml:alias_predicate ], [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty linkml:unique_key_name ; - owl:qualifiedCardinality 1 ], + owl:minCardinality 1 ; + owl:onProperty linkml:literal_form ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:maxCardinality 1 ; + owl:onProperty linkml:literal_form ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onProperty linkml:literal_form ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:onProperty linkml:categories ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:minCardinality 0 ; + owl:onProperty linkml:categories ], linkml:Annotatable, linkml:CommonMetadata, + linkml:Expression, linkml:Extensible ; - skos:definition "a collection of slots whose values uniquely identify an instance of a class" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible . + skos:definition "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; + skos:exactMatch skosxl:Label ; + skos:inScheme linkml:meta . -linkml:is_a a owl:ObjectProperty, +linkml:SubsetDefinition a owl:Class, + linkml:ClassDefinition ; + rdfs:label "subset_definition" ; + rdfs:subClassOf linkml:Element ; + skos:definition "an element that can be used to group other metamodel elements" ; + skos:inScheme linkml:meta ; + sh:order 6 . + +linkml:boolean_slot a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "is_a" ; + rdfs:label "boolean_slot" ; + rdfs:range linkml:Expression ; + skos:definition "A grouping of slots that expression a boolean operator over a list of operands" ; + skos:inScheme linkml:meta . + +linkml:categories a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "categories" ; + rdfs:range linkml:Uriorcurie ; + skos:definition "Controlled terms used to categorize an element." ; + skos:inScheme linkml:meta ; + skos:note "if you wish to use uncontrolled terms or terms that lack identifiers then use the keywords element" . + +linkml:class_uri a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "class_uri" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:Uriorcurie ; + rdfs:seeAlso , + linkml:definition_uri ; + skos:altLabel "public ID" ; + skos:definition "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" ; + skos:inScheme linkml:meta ; + skos:note "Assigning class_uris can provide additional hooks for interoperation, indicating a common conceptual model" ; + sh:order 2 . + +linkml:disjoint_with a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "disjoint_with" ; rdfs:domain linkml:Definition ; rdfs:range linkml:Definition ; - skos:definition "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" . - -linkml:AliasPredicateEnum a owl:Class, - linkml:EnumDefinition ; - rdfs:label "alias_predicate_enum" ; - owl:unionOf ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; - linkml:permissible_values skos:broaderMatch, - skos:exactMatch, - skos:narrowerMatch, - skos:relatedMatch . + skos:definition "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" ; + skos:inScheme linkml:meta . -linkml:ClassExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "class_expression" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:none_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_conditions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:exactly_one_of ], - linkml:mixin ; - skos:definition "A boolean expression that can be used to dynamically determine membership of a class" . - -linkml:MatchQuery a owl:Class, - linkml:ClassDefinition ; - rdfs:label "match_query" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:source_ontology ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - 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:SlotExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "slot_expression" ; - rdfs:subClassOf [ 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 ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:required ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:has_member ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:recommended ], - [ 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:pattern ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - 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:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_expression ], - [ 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:maximum_cardinality ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Element ; - owl:onProperty linkml:range ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_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:EnumExpression ; - owl:onProperty linkml:enum_range ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], - linkml:Expression, - linkml:mixin ; - skos:definition "an expression that constrains the range of values a slot can take" ; - linkml:is_a linkml:Expression . - -linkml:equals_number a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "equals_number" ; - rdfs:range linkml:Integer ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the slot must have range of a number and the value of the slot must equal the specified value" . - -linkml:equals_string a owl:ObjectProperty, +linkml:equals_expression a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "equals_string" ; + rdfs:label "equals_expression" ; rdfs:range linkml:String ; + rdfs:seeAlso , + ; rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the slot must have range string and the value of the slot must equal the specified value" . + skos:definition "the value of the slot must equal the value of the evaluated expression" ; + skos:inScheme linkml:meta ; + skos:note "for example, a 'length' slot may have an equals_expression with value '(end-start)+1'" . linkml:equals_string_in a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "equals_string_in" ; + bibo:status ; rdfs:range linkml:String ; rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the slot must have range string and the value of the slot must equal one of the specified values" . + skos:definition "the slot must have range string and the value of the slot must equal one of the specified values" ; + skos:inScheme linkml:meta . -linkml:implicit_prefix a owl:ObjectProperty, +linkml:iec61360code a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "implicit_prefix" ; - rdfs:domain linkml:SlotExpression ; - rdfs:range linkml:String ; - skos:definition "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" . + rdfs:label "iec61360code" ; + skos:inScheme linkml:units . -linkml:maximum_value a owl:ObjectProperty, +linkml:slot_uri a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "maximum_value" ; + rdfs:label "slot_uri" ; rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Integer ; - skos:altLabel "high value" ; - skos:definition "for slots with ranges of type number, the value must be equal to or lowe than this" . + rdfs:range linkml:Uriorcurie ; + rdfs:seeAlso , + linkml:definition_uri ; + skos:altLabel "public ID" ; + skos:definition "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." ; + skos:inScheme linkml:meta ; + skos:note "Assigning slot_uris can provide additional hooks for interoperation, indicating a common conceptual model" ; + sh:order 2 . -linkml:minimum_value a owl:ObjectProperty, +linkml:symbol a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "minimum_value" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Integer ; - skos:altLabel "low value" ; - skos:definition "for slots with ranges of type number, the value must be equal to or higher than this" . + rdfs:label "symbol" ; + skos:definition "name of the unit encoded as a symbol" ; + skos:inScheme linkml:units . -linkml:pattern a owl:ObjectProperty, +linkml:transitive_form_of a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "pattern" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:String ; - skos:definition "the string value of the slot must conform to this regular expression expressed in the string" . + 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:inScheme linkml:meta ; + skos:note "Example: ancestor_of is the transitive_form_of parent_of" . -linkml:relational_logical_characteristic a owl:ObjectProperty, +linkml:ucum_code a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "relational_logical_characteristic" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:Boolean ; - skos:definition "An abstract grouping for metaslots that describe logical properties of a slot" . + rdfs:label "ucum_code" ; + rdfs:domain linkml:UnitOfMeasure ; + rdfs:range linkml:String ; + skos:definition "associates a QUDT unit with its UCUM code (case-sensitive)." ; + skos:inScheme linkml:units . -linkml:structured_pattern a owl:ObjectProperty, +linkml:unique_keys a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "structured_pattern" ; - rdfs:domain linkml:Definition ; - rdfs:range linkml:PatternExpression ; - skos:definition "the string value of the slot must conform to the regular expression in the pattern expression" . + rdfs:label "unique_keys" ; + rdfs:domain linkml:ClassDefinition ; + rdfs:range linkml:UniqueKey ; + rdfs:seeAlso ; + skos:definition "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + skos:exactMatch owl:hasKey ; + skos:inScheme linkml:meta . -linkml:PathExpression a owl:Class, +linkml:Example a owl:Class, linkml:ClassDefinition ; - rdfs:label "path_expression" ; + rdfs:label "example" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:minCardinality 0 ; + owl:onProperty linkml:value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:none_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:value_object ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty linkml:traverse ], + owl:maxCardinality 1 ; + owl:onProperty linkml:value_description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:value_object ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:all_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:value_description ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:minCardinality 0 ; + owl:onProperty linkml:value_object ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:value_description ] ; + skos:definition "usage example and description" ; + skos:inScheme linkml:meta . + +linkml:UniqueKey a owl:Class, + linkml:ClassDefinition ; + rdfs:label "unique_key" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:maxCardinality 1 ; + owl:onProperty linkml:consider_nulls_inequal ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:unique_key_slots ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:consider_nulls_inequal ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:minCardinality 1 ; + owl:onProperty linkml:unique_key_slots ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:minCardinality 1 ; + owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:maxCardinality 1 ; + owl:onProperty linkml:unique_key_name ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:consider_nulls_inequal ], + linkml:Annotatable, + linkml:CommonMetadata, + linkml:Extensible ; + skos:definition "a collection of slots whose values uniquely identify an instance of a class" ; + skos:inScheme linkml:meta ; + sh:order 20 . + +linkml:UnitOfMeasure a owl:Class, + linkml:ClassDefinition ; + rdfs:label "UnitOfMeasure" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:derivation ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:reversed ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:iec61360code ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:minCardinality 0 ; + owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:symbol ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:minCardinality 0 ; + owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:maxCardinality 1 ; + owl:onProperty linkml:derivation ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:maxCardinality 1 ; + owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:minCardinality 0 ; + owl:onProperty linkml:abbreviation ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:iec61360code ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:symbol ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:onProperty linkml:exact_mappings ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:symbol ], + [ owl:unionOf ( [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:ucum_code ] [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:iec61360code ] [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:symbol ] [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:exact_mappings ] ) ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:onProperty linkml:derivation ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:minCardinality 0 ; + owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:maxCardinality 1 ; + owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PathExpression ; - owl:onProperty linkml:followed_by ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:any_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:iec61360code ] ; + skos:definition "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; + skos:exactMatch qudt:Unit ; + skos:inScheme linkml:units . + +linkml:definition_uri a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "definition_uri" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Uriorcurie ; + rdfs:seeAlso linkml:class_uri, + linkml:slot_uri ; + skos:definition "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + skos:inScheme linkml:meta ; + skos:note "Formed by combining the default_prefix with the normalized element name" . + +linkml:exact_mappings a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "exact mappings" ; + rdfs:range linkml:Uriorcurie ; + rdfs:subPropertyOf linkml:mappings ; + skos:definition "A list of terms from different schemas or terminology systems that have identical meaning." ; + skos:inScheme linkml:mappings . + +linkml:Extension a owl:Class, + linkml:ClassDefinition ; + rdfs:label "extension" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:minCardinality 1 ; + owl:onProperty linkml:extension_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:maxCardinality 1 ; + owl:onProperty linkml:extension_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:minCardinality 1 ; + owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:allValuesFrom linkml:AnyValue ; + owl:onProperty linkml:extension_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:maxCardinality 1 ; + owl:onProperty linkml:extension_tag ] ; + skos:definition "a tag/value pair used to add non-model information to an entry" ; + skos:inScheme linkml:extensions . + +linkml:PatternExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "pattern_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:interpolated ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:maxCardinality 1 ; + owl:onProperty linkml:interpolated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:partial_match ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:partial_match ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:partial_match ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onProperty linkml:syntax ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:syntax ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:syntax ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:interpolated ], linkml:Annotatable, linkml:CommonMetadata, - linkml:Expression, linkml:Extensible ; - skos:definition "An expression that describes an abstract path from an object to another through a sequence of slot lookups" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Expression, - linkml:Extensible . + skos:definition "a regular expression pattern used to evaluate conformance of a string" ; + skos:inScheme linkml:meta . -linkml:PresenceEnum a owl:Class, - linkml:EnumDefinition ; - rdfs:label "presence_enum" ; - owl:unionOf ( ) ; - linkml:permissible_values , - , - . - -linkml:RelationalRoleEnum a owl:Class, - linkml:EnumDefinition ; - rdfs:label "relational_role_enum" ; - owl:unionOf ( rdf:subject rdf:object rdf:predicate ) ; - linkml:permissible_values rdf:object, - rdf:predicate, - rdf:subject, - , - . - -linkml:Setting a owl:Class, - linkml:ClassDefinition ; - rdfs:label "setting" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onClass linkml:Ncname ; - owl:onProperty linkml:setting_key ; - owl:qualifiedCardinality 1 ], - [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty linkml:setting_value ; - owl:qualifiedCardinality 1 ] ; - skos:definition "assignment of a key to a value" . - -qudt:unit a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "unit" ; - rdfs:range linkml:UnitOfMeasure ; - skos:definition "an encoding of a unit" ; - skos:exactMatch qudt:unit . - -linkml:AnonymousEnumExpression a owl:Class, +linkml:PermissibleValue a owl:Class, linkml:ClassDefinition ; - rdfs:label "anonymous_enum_expression" ; + rdfs:label "permissible_value" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:permissible_values ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:MatchQuery ; - owl:onProperty linkml:matches ], + owl:minCardinality 0 ; + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:code_set ], + owl:minCardinality 0 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ReachabilityQuery ; - owl:onProperty linkml:reachable_from ], + owl:minCardinality 1 ; + owl:onProperty linkml:text ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PvFormulaOptions ; - owl:onProperty linkml:pv_formula ], + owl:maxCardinality 1 ; + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_version ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:text ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:minus ], + owl:maxCardinality 1 ; + owl:onProperty linkml:meaning ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], + owl:onProperty linkml:meaning ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_tag ], - linkml:EnumExpression ; - skos:definition "An enum_expression that is not named" ; - linkml:mixins linkml:EnumExpression . - -linkml:PermissibleValue a owl:Class, - linkml:ClassDefinition ; - rdfs:label "permissible_value" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:minCardinality 0 ; + owl:onProperty linkml:meaning ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:maxCardinality 1 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:mixins ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:maxCardinality 1 ; + owl:onProperty linkml:text ], + linkml:Annotatable, + linkml:CommonMetadata, + linkml:Extensible ; + skos:altLabel "PV" ; + skos:closeMatch skos:Concept ; + skos:definition "a permissible value, accompanied by intended text and an optional mapping to a concept URI" ; + skos:inScheme linkml:meta ; + sh:order 16 . + +linkml:Setting a owl:Class, + linkml:ClassDefinition ; + rdfs:label "setting" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:setting_key ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:minCardinality 1 ; + owl:onProperty linkml:setting_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:minCardinality 1 ; + owl:onProperty linkml:setting_key ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:onProperty linkml:setting_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:setting_value ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PermissibleValue ; - owl:onProperty linkml:is_a ], + owl:maxCardinality 1 ; + owl:onProperty linkml:setting_key ] ; + skos:definition "assignment of a key to a value" ; + skos:inScheme linkml:meta . + +linkml:apply_to a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "apply_to" ; + bibo:status ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:Definition ; + skos:definition "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." ; + skos:inScheme linkml:meta . + +linkml:children_are_mutually_disjoint a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "children_are_mutually_disjoint" ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:Boolean ; + skos:definition "If true then all direct is_a children are mutually disjoint and share no instances in common" ; + skos:inScheme linkml:meta . + +linkml:description a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "description" ; + rdfs:domain linkml:Element ; + skos:altLabel "definition" ; + skos:definition "a textual description of the element's purpose and use" ; + skos:exactMatch dcterms:description, + schema1:description ; + skos:inScheme linkml:meta ; + sh:order 5 . + +linkml:equals_number a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "equals_number" ; + bibo:status ; + rdfs:range linkml:Integer ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the slot must have range of a number and the value of the slot must equal the specified value" ; + skos:inScheme linkml:meta . + +linkml:equals_string a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "equals_string" ; + rdfs:range linkml:String ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the slot must have range string and the value of the slot must equal the specified value" ; + skos:inScheme linkml:meta . + +linkml:implicit_prefix a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "implicit_prefix" ; + bibo:status ; + rdfs:domain linkml:SlotExpression ; + rdfs:range linkml:String ; + skos:definition "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + skos:inScheme linkml:meta . + +linkml:maximum_value a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "maximum_value" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Anything ; + skos:altLabel "high value" ; + skos:definition "For ordinal ranges, the value must be equal to or lower than this" ; + skos:editorialNote "Range to be refined to an \"Ordinal\" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142" ; + skos:inScheme linkml:meta . + +linkml:minimum_value a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "minimum_value" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Anything ; + skos:altLabel "low value" ; + skos:definition "For ordinal ranges, the value must be equal to or higher than this" ; + skos:editorialNote "Range to be refined to an \"Ordinal\" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142" ; + skos:inScheme linkml:meta . + +linkml:name a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "name" ; + rdfs:domain linkml:Element ; + rdfs:seeAlso , + ; + skos:altLabel "short name", + "unique name" ; + skos:definition "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." ; + skos:exactMatch schema1:name ; + skos:inScheme linkml:meta ; + sh:order 1 . + +linkml:pattern a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "pattern" ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:String ; + skos:definition "the string value of the slot must conform to this regular expression expressed in the string" ; + skos:inScheme linkml:meta ; + sh:order 35 . + +linkml:range_expression a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "range_expression" ; + bibo:status ; + rdfs:domain linkml:SlotExpression ; + rdfs:range linkml:AnonymousClassExpression ; + skos:definition "A range that is described as a boolean expression combining existing ranges" ; + skos:inScheme linkml:meta ; + skos:note "one use for this is being able to describe a range using any_of expressions, for example to combine two enums" . + +linkml:rank 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 ; + skos:inScheme linkml:meta ; + skos:note "the rank of an element does not affect the semantics" ; + sh:order 51 . + +linkml:relational_logical_characteristic a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "relational_logical_characteristic" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:Boolean ; + skos:definition "An abstract grouping for metaslots that describe logical properties of a slot" ; + skos:inScheme linkml:meta . + +linkml:slot_names_unique a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "slot_names_unique" ; + bibo:status ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:Boolean ; + skos:definition "if true then induced/mangled slot names are not created for class_usage and attributes" ; + skos:inScheme linkml:meta . + +linkml:source_ontology a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "source_ontology" ; + rdfs:range linkml:Uriorcurie ; + skos:altLabel "terminology", + "vocabulary" ; + skos:definition "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + skos:inScheme linkml:meta ; + skos:note "examples include schema.org, wikidata, or an OBO ontology", + "for obo ontologies we recommend CURIEs of the form obo:cl, obo:envo, etc" . + +linkml:structured_pattern a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "structured_pattern" ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:PatternExpression ; + rdfs:seeAlso ; + skos:definition "the string value of the slot must conform to the regular expression in the pattern expression" ; + skos:inScheme linkml:meta . + +linkml:union_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "union_of" ; + rdfs:domain linkml:Element ; + rdfs:range linkml:Element ; + skos:definition "indicates that the domain element consists exactly of the members of the element in the range." ; + skos:editorialNote "this only applies in the OWL generation" ; + skos:inScheme linkml:meta . + +linkml:PathExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "path_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:minCardinality 0 ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:minCardinality 0 ; + owl:onProperty linkml:reversed ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:maxCardinality 1 ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:maxCardinality 1 ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:meaning ], + owl:minCardinality 0 ; + owl:onProperty linkml:traverse ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:traverse ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:followed_by ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:reversed ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:followed_by ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty linkml:text ; - owl:qualifiedCardinality 1 ], + owl:maxCardinality 1 ; + owl:onProperty linkml:reversed ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:maxCardinality 1 ; + owl:onProperty linkml:traverse ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:maxCardinality 1 ; + owl:onProperty linkml:followed_by ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:minCardinality 0 ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], linkml:Annotatable, linkml:CommonMetadata, + linkml:Expression, linkml:Extensible ; - skos:altLabel "PV" ; - skos:closeMatch skos:Concept ; - skos:definition "a permissible value, accompanied by intended text and an optional mapping to a concept URI" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible . + skos:definition "An expression that describes an abstract path from an object to another through a sequence of slot lookups" ; + skos:inScheme linkml:meta . -linkml:PvFormulaOptions a owl:Class, +linkml:ReachabilityQuery a owl:Class, + linkml:ClassDefinition ; + rdfs:label "reachability_query" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:traverse_up ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:include_self ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:relationship_types ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:traverse_up ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:source_nodes ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:include_self ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:include_self ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:traverse_up ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:relationship_types ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:source_nodes ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:source_ontology ] ; + skos:definition "A query that is used on an enum expression to dynamically obtain a set of permissible values via walking from a set of source nodes to a set of descendants or ancestors over a set of relationship types." ; + skos:inScheme linkml:meta . + +linkml:annotations a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "annotations" ; + rdfs:domain linkml:Annotatable ; + rdfs:range linkml:Annotation ; + rdfs:subPropertyOf linkml:extensions ; + skos:definition "a collection of tag/text tuples with the semantics of OWL Annotation" ; + skos:inScheme linkml:annotations . + +linkml:AnonymousSlotExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "anonymous_slot_expression" ; + rdfs:subClassOf linkml:AnonymousExpression, + linkml:SlotExpression ; + skos:inScheme linkml:meta . + +linkml:Anything a owl:Class, + linkml:ClassDefinition ; + rdfs:label "Anything" ; + skos:exactMatch linkml:Any ; + skos:inScheme linkml:meta . + +linkml:PresenceEnum a owl:Class, linkml:EnumDefinition ; - rdfs:label "pv_formula_options" ; - owl:unionOf ( ) ; - linkml:permissible_values , - , - , - . + owl:unionOf ( ) ; + linkml:permissible_values , + , + . -linkml:mixin a owl:ObjectProperty, +linkml:mixins a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "mixin" ; + rdfs:label "mixins" ; rdfs:domain linkml:Definition ; - rdfs:range linkml:Boolean ; - skos:altLabel "trait" ; - skos:definition "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." . + rdfs:range linkml:Definition ; + rdfs:seeAlso ; + skos:altLabel "traits" ; + skos:definition "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; + skos:inScheme linkml:meta ; + skos:note "mixins act in the same way as parents (is_a). They allow a model to have a primary strict hierarchy, while keeping the benefits of multiple inheritance" ; + sh:order 13 . -linkml:PatternExpression a owl:Class, +linkml:CommonMetadata a owl:Class, linkml:ClassDefinition ; - rdfs:label "pattern_expression" ; + rdfs:label "common_metadata" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:created_on ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:minCardinality 0 ; + owl:onProperty linkml:created_by ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:narrow_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:minCardinality 0 ; + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:minCardinality 0 ; + owl:onProperty linkml:broad_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:aliases ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:title ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:created_on ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:keywords ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:onProperty linkml:notes ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:status ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:keywords ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:in_subset ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty linkml:broad_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:partial_match ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:in_language ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:minCardinality 0 ; + owl:onProperty linkml:rank ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:rank ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:syntax ], + owl:minCardinality 0 ; + owl:onProperty linkml:categories ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:onProperty linkml:deprecated_element_has_exact_replacement ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; owl:allValuesFrom linkml:Example ; owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:minCardinality 0 ; + owl:onProperty linkml:source ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:close_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:categories ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:see_also ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:close_mappings ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:from_schema ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:description ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:onProperty linkml:modified_by ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:todos ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:from_schema ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty linkml:in_subset ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:status ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:maxCardinality 1 ; + owl:onProperty linkml:rank ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:title ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; owl:allValuesFrom linkml:AltDescription ; owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:minCardinality 0 ; + owl:onProperty linkml:modified_by ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:mappings ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:onProperty linkml:exact_mappings ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:aliases ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:onProperty linkml:see_also ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:minCardinality 0 ; + owl:onProperty linkml:comments ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:notes ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:minCardinality 0 ; + owl:onProperty linkml:contributors ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:onProperty linkml:source ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:minCardinality 0 ; + owl:onProperty linkml:structured_aliases ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:interpolated ], + owl:minCardinality 0 ; + owl:onProperty linkml:from_schema ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], - linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible ; - skos:definition "a regular expression pattern used to evaluate conformance of a string" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible . - -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 ], + owl:onProperty linkml:created_by ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:traverse_up ], + owl:minCardinality 0 ; + owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:is_direct ], + owl:maxCardinality 1 ; + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:source_ontology ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:comments ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:source_nodes ], + owl:maxCardinality 1 ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:include_self ] ; - skos:definition "A query that is used on an enum expression to dynamically obtain a set of permissible values via walking from a set of source nodes to a set of descendants or ancestors over a set of relationship types." . - -linkml:UnitOfMeasure a owl:Class, - linkml:ClassDefinition ; - rdfs:label "UnitOfMeasure" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty qudt:abbreviation ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty linkml:structured_aliases ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty qudt:symbol ], + owl:maxCardinality 1 ; + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty qudt:hasQuantityKind ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:related_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty rdfs:label ], + owl:minCardinality 0 ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:derivation ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:status ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty qudt:iec61360Code ], + owl:maxCardinality 1 ; + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty qudt:ucumCode ], + owl:minCardinality 0 ; + owl:onProperty linkml:narrow_mappings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ] ; - 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 . - -linkml:all_of a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "all_of" ; - rdfs:range linkml:Expression ; - rdfs:subPropertyOf linkml:boolean_slot ; - skos:definition "holds if all of the expressions hold" ; - skos:exactMatch sh:and . - -linkml:alt_descriptions a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "alt_descriptions" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:AltDescription ; - skos:altLabel "alternate definitions" ; - skos:definition "A sourced alternative description for an element" . - -linkml:any_of a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "any_of" ; - rdfs:range linkml:Expression ; - rdfs:subPropertyOf linkml:boolean_slot ; - skos:definition "holds if at least one of the expressions hold" ; - skos:exactMatch sh:or . - -linkml:deprecated a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "deprecated" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:closeMatch owl:deprecated ; - skos:definition "Description of why and when this element will no longer be used" . - -linkml:deprecated_element_has_exact_replacement a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "deprecated element has exact replacement" ; - rdfs:range linkml:Uriorcurie ; - skos:definition "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - skos:exactMatch IAO:0100001 . - -linkml:deprecated_element_has_possible_replacement a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "deprecated element has possible replacement" ; - rdfs:range linkml:Uriorcurie ; - skos:definition "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - skos:exactMatch OIO:consider . - -linkml:exactly_one_of a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "exactly_one_of" ; - rdfs:range linkml:Expression ; - rdfs:subPropertyOf linkml:boolean_slot ; - skos:definition "holds if only one of the expressions hold" ; - skos:exactMatch sh:xone . - -linkml:examples a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "examples" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Example ; - skos:closeMatch vann1:example ; - skos:definition "example usages of an element" . - -linkml:imported_from a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "imported_from" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:definition "the imports entry that this element was derived from. Empty means primary source" . - -linkml:list_value_specification_constant a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "list_value_specification_constant" ; - rdfs:range linkml:String ; - skos:definition "Grouping for metamodel slots that constrain members of a multivalued slot value to equal a specified constant" . - -linkml:none_of a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "none_of" ; - rdfs:range linkml:Expression ; - rdfs:subPropertyOf linkml:boolean_slot ; - skos:definition "holds if none of the expressions hold" ; - skos:exactMatch sh:not . - -linkml:todos a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "todos" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:definition "Outstanding issues that needs resolution" . - -oslc:modifiedBy a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "modified_by" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:definition "agent that modified the element" ; - skos:exactMatch oslc:modifiedBy . - -dcterms:contributor a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "contributors" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:definition "agent that contributed to the element" ; - skos:exactMatch dcterms:contributor . - -dcterms:source a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "source" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "derived from", - "origin" ; - skos:closeMatch schema1:isBasedOn, - prov:wasDerivedFrom ; - skos:definition "A related resource from which the element is derived." ; - skos:exactMatch dcterms:source . - -dcterms:subject a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "categories" ; - rdfs:range linkml:Uriorcurie ; - skos:definition "Controlled terms used to categorize an element." ; - skos:exactMatch dcterms:subject . - -dcterms:title a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "title" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:altLabel "long name" ; - skos:definition "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - skos:exactMatch dcterms:title . - -bibo:status a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "status" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "workflow status" ; - skos:definition "status of the element" ; - skos:exactMatch bibo:status . - -pav:createdBy a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "created_by" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:definition "agent that created the element" ; - skos:exactMatch pav:createdBy . - -pav:createdOn a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "created_on" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Datetime ; - skos:definition "time at which the element was created" ; - skos:exactMatch pav:createdOn . - -pav:lastUpdatedOn a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "last_updated_on" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Datetime ; - skos:definition "time at which the element was last updated" ; - skos:exactMatch pav:lastUpdatedOn . - -schema1:inLanguage a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "in_language" ; - rdfs:range linkml:String ; - skos:definition "the primary language used in the sources" ; - skos:exactMatch schema1:inLanguage . - -schema1:keywords a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "keywords" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:definition "Keywords or tags used to describe the element" ; - skos:exactMatch schema1:keywords . - -OIO:inSubset a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "in_subset" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:SubsetDefinition ; - skos:definition "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - skos:exactMatch OIO:inSubset . - -rdfs:seeAlso a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "see_also" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uriorcurie ; - skos:definition "A list of related entities or URLs that may be of relevance" ; - skos:exactMatch rdfs:seeAlso . - -skos:broadMatch a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "broad mappings" ; - rdfs:range linkml:Uriorcurie ; - rdfs:subPropertyOf skos:mappingRelation ; - skos:definition "A list of terms from different schemas or terminology systems that have broader meaning." ; - skos:exactMatch skos:broadMatch . - -skos:closeMatch a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "close mappings" ; - rdfs:range linkml:Uriorcurie ; - rdfs:subPropertyOf skos:mappingRelation ; - skos:definition "A list of terms from different schemas or terminology systems that have close meaning." ; - skos:exactMatch skos:closeMatch . - -skos:definition a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "description" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:altLabel "definition" ; - skos:definition "a textual description of the element's purpose and use" ; - skos:exactMatch dcterms:description, - schema1:description, - skos:definition . - -skos:editorialNote a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "notes" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:definition "editorial notes about an element intended primarily for internal consumption" ; - skos:exactMatch skos:editorialNote . - -skos:inScheme a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "from_schema" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:Uri ; - skos:definition "id of the schema that defined the element" ; - skos:exactMatch skos:inScheme . - -skos:narrowMatch a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "narrow mappings" ; - rdfs:range linkml:Uriorcurie ; - rdfs:subPropertyOf skos:mappingRelation ; - skos:definition "A list of terms from different schemas or terminology systems that have narrower meaning." ; - skos:exactMatch skos:narrowMatch . - -skos:note a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "comments" ; - rdfs:domain linkml:Element ; - rdfs:range linkml:String ; - skos:definition "notes and comments about an element intended primarily for external consumption" ; - skos:exactMatch rdfs:comment, - skos:note . - -skosxl:altLabel a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "structured_aliases" ; - rdfs:range linkml:StructuredAlias ; - skos:definition "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - 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 . - -linkml:EnumDefinition a owl:Class, - linkml:ClassDefinition ; - rdfs:label "enum_definition" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ReachabilityQuery ; - owl:onProperty linkml:reachable_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:created_on ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:modified_by ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:code_set ], + owl:minCardinality 0 ; + owl:onProperty linkml:related_mappings ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:MatchQuery ; - owl:onProperty linkml:matches ], + owl:minCardinality 0 ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:enum_uri ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:contributors ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:permissible_values ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], + owl:minCardinality 0 ; + owl:onProperty linkml:in_language ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], + owl:minCardinality 0 ; + owl:onProperty linkml:title ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_tag ], + owl:minCardinality 0 ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PvFormulaOptions ; - owl:onProperty linkml:pv_formula ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:mappings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:minus ], + owl:maxCardinality 1 ; + owl:onProperty linkml:created_by ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_version ], + owl:maxCardinality 1 ; + owl:onProperty linkml:in_language ] ; + skos:definition "Generic metadata shared across definitions" ; + skos:inScheme linkml:meta . + +linkml:EnumDefinition a owl:Class, + linkml:ClassDefinition ; + rdfs:label "enum_definition" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:enum_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], + owl:onProperty linkml:enum_uri ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:enum_uri ], linkml:Definition, linkml:EnumExpression ; skos:altLabel "Terminology Value Set", "answer list", + "code set", "concept set", "enum", + "enumeration", + "semantic enumeration", "term set", "value domain", "value set" ; @@ -3173,1351 +3508,1152 @@ linkml:EnumDefinition a owl:Class, skos:exactMatch NCIT:C113497, qb:HierarchicalCodeList, cdisc:ValueDomain ; - linkml:is_a linkml:Definition ; - linkml:mixins linkml:EnumExpression . + skos:inScheme linkml:meta ; + sh:order 5 . -linkml:TypeDefinition a owl:Class, +linkml:unit a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "unit" ; + rdfs:range linkml:UnitOfMeasure ; + skos:definition "an encoding of a unit" ; + skos:inScheme linkml:units . + +linkml:AliasPredicateEnum a owl:Class, + linkml:EnumDefinition ; + owl:unionOf ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; + linkml:permissible_values skos:broaderMatch, + skos:exactMatch, + skos:narrowerMatch, + skos:relatedMatch . + +linkml:Extensible a owl:Class, linkml:ClassDefinition ; - rdfs:label "type_definition" ; + rdfs:label "extensible" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:uri ], + owl:minCardinality 0 ; + owl:onProperty linkml:extensions ] ; + skos:definition "mixin for classes that support extension" ; + skos:inScheme linkml:extensions . + +linkml:list_value_specification_constant a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "list_value_specification_constant" ; + bibo:status ; + skos:definition "Grouping for metamodel slots that constrain members of a multivalued slot value to equal a specified constant" ; + skos:inScheme linkml:meta . + +linkml:Annotatable a owl:Class, + linkml:ClassDefinition ; + rdfs:label "annotatable" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:annotations ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ] ; + skos:definition "mixin for classes that support annotations" ; + skos:inScheme linkml:annotations . + +linkml:TypeDefinition a owl:Class, + linkml:ClassDefinition ; + rdfs:label "type_definition" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:type_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:all_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:repr ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], + owl:maxCardinality 1 ; + owl:onProperty linkml:type_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:base ], + owl:minCardinality 0 ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onProperty linkml:base ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], + owl:minCardinality 0 ; + owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:maxCardinality 1 ; + owl:onProperty linkml:base ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:minCardinality 0 ; + owl:onProperty linkml:repr ], [ a owl:Restriction ; owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:union_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:exactly_one_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:maxCardinality 1 ; + owl:onProperty linkml:repr ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:TypeDefinition ; - owl:onProperty linkml:typeof ], + owl:minCardinality 0 ; + owl:onProperty linkml:type_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:minCardinality 0 ; + owl:onProperty linkml:base ], linkml:Element, linkml:TypeExpression ; skos:definition "an element that whose instances are atomic scalar values that can be mapped to primitive types" ; - linkml:is_a linkml:Element ; - linkml:mixins linkml:TypeExpression . + skos:inScheme linkml:meta ; + sh:order 4 . -linkml:annotations a owl:ObjectProperty, +linkml:extensions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "annotations" ; - rdfs:domain linkml:Annotatable ; - rdfs:range linkml:Annotation ; - rdfs:subPropertyOf linkml:extensions ; - skos:definition "a collection of tag/text tuples with the semantics of OWL Annotation" . - -skos:altLabel a owl:ObjectProperty, - linkml:SlotDefinition . + rdfs:label "extensions" ; + rdfs:domain linkml:Extensible ; + rdfs:range linkml:Extension ; + skos:definition "a tag/text tuple attached to an arbitrary element" ; + skos:inScheme linkml:extensions . -linkml:AltDescription a owl:Class, +linkml:Expression a owl:Class, linkml:ClassDefinition ; - rdfs:label "alt_description" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty linkml:source ; - owl:qualifiedCardinality 1 ], - [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty linkml:description ; - owl:qualifiedCardinality 1 ] ; - skos:altLabel "structured description" ; - skos:definition "an attributed description" . + rdfs:label "expression" ; + skos:definition "general mixin for any class that can represent some form of expression" ; + skos:inScheme linkml:meta . -linkml:Annotation a owl:Class, +linkml:PvFormulaOptions a owl:Class, + linkml:EnumDefinition ; + owl:unionOf ( ) ; + linkml:permissible_values , + , + , + , + . + +linkml:RelationalRoleEnum a owl:Class, + linkml:EnumDefinition ; + owl:unionOf ( rdf:subject rdf:object rdf:predicate ) ; + linkml:permissible_values rdf:object, + rdf:predicate, + rdf:subject, + , + . + +linkml:all_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "all_of" ; + rdfs:range linkml:Expression ; + rdfs:seeAlso ; + rdfs:subPropertyOf linkml:boolean_slot ; + skos:definition "holds if all of the expressions hold" ; + skos:exactMatch sh:and ; + skos:inScheme linkml:meta ; + sh:order 107 . + +linkml:any_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "any_of" ; + rdfs:range linkml:Expression ; + rdfs:seeAlso ; + rdfs:subPropertyOf linkml:boolean_slot ; + skos:definition "holds if at least one of the expressions hold" ; + skos:exactMatch sh:or ; + skos:inScheme linkml:meta ; + sh:order 101 . + +linkml:exactly_one_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "exactly_one_of" ; + rdfs:range linkml:Expression ; + rdfs:seeAlso ; + rdfs:subPropertyOf linkml:boolean_slot ; + skos:definition "holds if only one of the expressions hold" ; + skos:exactMatch sh:xone ; + skos:inScheme linkml:meta ; + sh:order 103 . + +linkml:none_of a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "none_of" ; + rdfs:range linkml:Expression ; + rdfs:seeAlso ; + rdfs:subPropertyOf linkml:boolean_slot ; + skos:definition "holds if none of the expressions hold" ; + skos:exactMatch sh:not ; + skos:inScheme linkml:meta ; + sh:order 105 . + +linkml:AnonymousClassExpression a owl:Class, linkml:ClassDefinition ; - rdfs:label "annotation" ; + rdfs:label "anonymous_class_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - linkml:Annotatable, - linkml:Extension ; - skos:definition "a tag/value pair with the semantics of OWL Annotation" ; - linkml:is_a linkml:Extension ; - linkml:mixins linkml:Annotatable . + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], + linkml:AnonymousExpression, + linkml:ClassExpression ; + skos:inScheme linkml:meta . -linkml:AnonymousTypeExpression a owl:Class, +linkml:EnumExpression a owl:Class, linkml:ClassDefinition ; - rdfs:label "anonymous_type_expression" ; + rdfs:label "enum_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:all_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:code_set_version ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:permissible_values ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:pv_formula ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:include ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:inherits ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:minCardinality 0 ; + owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:minCardinality 0 ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:allValuesFrom linkml:ReachabilityQuery ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], + owl:maxCardinality 1 ; + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], + owl:minCardinality 0 ; + owl:onProperty linkml:concepts ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:code_set ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:minCardinality 0 ; + owl:onProperty linkml:matches ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], - linkml:TypeExpression ; - skos:definition "A type expression that is not a top-level named type definition. Used for nesting." ; - linkml:mixins linkml:TypeExpression . + owl:minCardinality 0 ; + owl:onProperty linkml:code_set ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:inherits ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:code_set_version ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:include ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:MatchQuery ; + owl:onProperty linkml:matches ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:concepts ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:pv_formula ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:matches ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PvFormulaOptions ; + owl:onProperty linkml:pv_formula ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:code_set ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:minus ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:minus ], + linkml:Expression ; + skos:definition "An expression that constrains the range of a slot" ; + skos:inScheme linkml:meta . -linkml:extensions a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "extensions" ; - rdfs:domain linkml:Extensible ; - rdfs:range linkml:Extension ; - skos:definition "a tag/text tuple attached to an arbitrary element" . +linkml:is_a a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "is_a" ; + rdfs:domain linkml:Definition ; + rdfs:range linkml:Definition ; + skos:definition "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + skos:inScheme linkml:meta ; + sh:order 11 . -skos:relatedMatch a owl:Class, - owl:ObjectProperty, - linkml:AliasPredicateEnum, +linkml:mappings a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "RELATED_SYNONYM", - "related mappings" ; + rdfs:label "mappings" ; rdfs:range linkml:Uriorcurie ; - rdfs:subPropertyOf skos:mappingRelation ; - skos:definition "A list of terms from different schemas or terminology systems that have related meaning." ; - skos:exactMatch skos:relatedMatch . + skos:altLabel "alternate identifiers", + "alternate ids", + "identifiers", + "xrefs" ; + skos:definition "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + skos:inScheme linkml:mappings . -linkml:StructuredAlias a owl:Class, +linkml:SchemaDefinition a owl:Class, linkml:ClassDefinition ; - rdfs:label "structured_alias" ; + rdfs:label "schema_definition" ; + rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:minCardinality 0 ; + owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:maxCardinality 1 ; + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:maxCardinality 1 ; + owl:onProperty linkml:default_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:minCardinality 0 ; + owl:onProperty linkml:prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:slot_names_unique ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:types ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:id ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Prefix ; + owl:onProperty linkml:prefixes ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:onProperty linkml:license ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:allValuesFrom linkml:Setting ; + owl:onProperty linkml:settings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:classes ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:version ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:onProperty linkml:imports ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:minCardinality 0 ; + owl:onProperty linkml:settings ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AliasPredicateEnum ; - owl:onProperty rdf:predicate ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:maxCardinality 1 ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:version ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:license ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:license ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:minCardinality 0 ; + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty skosxl:literalForm ; - owl:qualifiedCardinality 1 ], + owl:minCardinality 0 ; + owl:onProperty linkml:classes ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:minCardinality 0 ; + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:minCardinality 0 ; + owl:onProperty linkml:default_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_definitions ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty linkml:subsets ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], - linkml:Annotatable, - linkml:CommonMetadata, - linkml:Expression, - linkml:Extensible ; - skos:definition "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; - skos:exactMatch skosxl:Label ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Expression, - linkml:Extensible . - -linkml:SubsetDefinition a owl:Class, - linkml:ClassDefinition ; - rdfs:label "subset_definition" ; - rdfs:subClassOf linkml:Element ; - skos:definition "an element that can be used to group other metamodel elements" ; - linkml:is_a linkml:Element . - -skos:exactMatch a owl:Class, - owl:ObjectProperty, - linkml:AliasPredicateEnum, - linkml:SlotDefinition ; - rdfs:label "EXACT_SYNONYM", - "exact mappings" ; - rdfs:range linkml:Uriorcurie ; - rdfs:subPropertyOf skos:mappingRelation ; - skos:definition "A list of terms from different schemas or terminology systems that have identical meaning." ; - skos:exactMatch skos:exactMatch . - -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 ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:description ], + owl:minCardinality 0 ; + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Anything ; - owl:onProperty linkml:object ] ; - skos:definition "usage example and description" . - -skos:mappingRelation a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "mappings" ; - rdfs:range linkml:Uriorcurie ; - skos:altLabel "alternate identifiers", - "alternate ids", - "identifiers", - "xrefs" ; - skos:definition "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - skos:exactMatch skos:mappingRelation . - -linkml:Extension a owl:Class, - linkml:ClassDefinition ; - rdfs:label "extension" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:tag ; - owl:qualifiedCardinality 1 ], + owl:maxCardinality 1 ; + owl:onProperty linkml:id ], [ a owl:Restriction ; - owl:onClass linkml:AnyValue ; - owl:onProperty linkml:value ; - owl:qualifiedCardinality 1 ] ; - skos:definition "a tag/value pair used to add non-model information to an entry" . - -linkml:CommonMetadata a owl:Class, - linkml:ClassDefinition ; - rdfs:label "common_metadata" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:minCardinality 1 ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:minCardinality 0 ; + owl:onProperty linkml:subsets ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:minCardinality 0 ; + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:version ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_definitions ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:minCardinality 0 ; + owl:onProperty linkml:imports ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:minCardinality 0 ; + owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:default_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:enums ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:minCardinality 0 ; + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:minCardinality 0 ; + owl:onProperty linkml:enums ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:types ], + linkml:Element ; + skos:altLabel "data dictionary", + "data model", + "information model", + "logical model", + "model", + "schema" ; + skos:closeMatch qb:ComponentSet, + owl:Ontology ; + skos:definition "A collection of definitions that make up a schema or a data model." ; + skos:inScheme linkml:meta ; + sh:order 1 . + +linkml:Definition a owl:Class, + linkml:ClassDefinition ; + rdfs:label "definition" ; + rdfs:seeAlso ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:minCardinality 0 ; + owl:onProperty linkml:values_from ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:minCardinality 0 ; + owl:onProperty linkml:mixin ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], + owl:minCardinality 0 ; + owl:onProperty linkml:abstract ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:mixin ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:maxCardinality 1 ; + owl:onProperty linkml:mixin ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:onProperty linkml:values_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:abstract ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], + owl:minCardinality 0 ; + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:maxCardinality 1 ; + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], - linkml:mixin ; - skos:definition "Generic metadata shared across definitions" . + owl:maxCardinality 1 ; + owl:onProperty linkml:abstract ], + linkml:Element ; + skos:definition "abstract base class for core metaclasses" ; + skos:inScheme linkml:meta . -linkml:EnumExpression a owl:Class, +linkml:Element a owl:Class, linkml:ClassDefinition ; - rdfs:label "enum_expression" ; + rdfs:label "element" ; + rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - 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_version ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:code_set_tag ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ReachabilityQuery ; - owl:onProperty linkml:reachable_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:code_set ], + owl:maxCardinality 1 ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], + owl:minCardinality 0 ; + owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], + owl:minCardinality 1 ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], + owl:minCardinality 0 ; + owl:onProperty linkml:instantiates ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:minus ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:conforms_to ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:permissible_values ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PvFormulaOptions ; - owl:onProperty linkml:pv_formula ], - linkml:Expression ; - skos:definition "An expression that constrains the range of a slot" ; - linkml:is_a linkml:Expression . - -linkml:Expression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "expression" ; - rdfs:subClassOf linkml:mixin ; - skos:definition "general mixin for any class that can represent some form of expression" . - -linkml:AnonymousSlotExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "anonymous_slot_expression" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:has_member ], + owl:minCardinality 0 ; + owl:onProperty linkml:conforms_to ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:implements ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:EnumExpression ; - owl:onProperty linkml:enum_range ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:definition_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:maxCardinality 1 ; + owl:onProperty linkml:conforms_to ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:recommended ], + owl:minCardinality 0 ; + owl:onProperty linkml:definition_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_cardinality ], + owl:allValuesFrom linkml:LocalName ; + owl:onProperty linkml:local_names ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:definition_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined ], + owl:minCardinality 0 ; + owl:onProperty linkml:implements ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:instantiates ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], + owl:minCardinality 0 ; + owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:local_names ], + linkml:Annotatable, + linkml:CommonMetadata, + linkml:Extensible ; + skos:altLabel "data element", + "object" ; + skos:definition "A named element in the model" ; + skos:inScheme linkml:meta . + +linkml:ClassDefinition a owl:Class, + linkml:ClassDefinition ; + rdfs:label "class_definition" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], + owl:minCardinality 0 ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:required ], + owl:minCardinality 0 ; + owl:onProperty linkml:unique_keys ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_expression ], + owl:maxCardinality 1 ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:attributes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:maxCardinality 1 ; + owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], + owl:minCardinality 0 ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:attributes ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:minCardinality 0 ; + owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Element ; - owl:onProperty linkml:range ], + owl:minCardinality 0 ; + owl:onProperty linkml:slots ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slots ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], - linkml:AnonymousExpression, - linkml:SlotExpression ; - linkml:is_a linkml:AnonymousExpression ; - linkml:mixins linkml:SlotExpression . - -linkml:Extensible a owl:Class, - linkml:ClassDefinition ; - rdfs:label "extensible" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], - linkml:mixin ; - skos:definition "mixin for classes that support extension" . - -linkml:SchemaDefinition a owl:Class, - linkml:ClassDefinition ; - rdfs:label "schema_definition" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:imports ], + owl:maxCardinality 1 ; + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:TypeDefinition ; - owl:onProperty linkml:default_range ], + owl:minCardinality 0 ; + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; - owl:onClass linkml:Ncname ; - owl:onProperty rdfs:label ; - owl:qualifiedCardinality 1 ], + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:classification_rules ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Prefix ; - owl:onProperty sh:declare ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:source_file_size ], + owl:allValuesFrom linkml:UniqueKey ; + owl:onProperty linkml:unique_keys ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:default_curi_maps ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:enums ], + owl:maxCardinality 1 ; + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:license ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slots ], + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty pav:version ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:classes ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:default_prefix ], + owl:minCardinality 0 ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Setting ; - owl:onProperty linkml:settings ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:onClass linkml:Uri ; - owl:onProperty linkml:id ; - owl:qualifiedCardinality 1 ], + owl:minCardinality 0 ; + owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty linkml:source_file_date ], + owl:minCardinality 0 ; + owl:onProperty linkml:classification_rules ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty linkml:generation_date ], + owl:minCardinality 0 ; + owl:onProperty linkml:defining_slots ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:metamodel_version ], + owl:minCardinality 0 ; + owl:onProperty linkml:apply_to ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; + owl:maxCardinality 1 ; owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty linkml:subsets ], + owl:minCardinality 0 ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:source_file ], + owl:allValuesFrom linkml:ClassRule ; + owl:onProperty linkml:rules ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:types ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:emit_prefixes ], - linkml:Element ; - skos:altLabel "data dictionary", - "data model", - "information model", - "logical model", - "model", - "schema" ; - skos:closeMatch qb:ComponentSet, - owl:Ontology ; - skos:definition "A collection of definitions that make up a schema or a data model." ; - linkml:is_a linkml:Element . - -linkml:Annotatable a owl:Class, - linkml:ClassDefinition ; - rdfs:label "annotatable" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - linkml:mixin ; - skos:definition "mixin for classes that support annotations" . - -linkml:AnonymousClassExpression a owl:Class, - linkml:ClassDefinition ; - rdfs:label "anonymous_class_expression" ; - rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_conditions ], + owl:onProperty linkml:defining_slots ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:none_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:rules ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Definition ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:all_of ], - linkml:AnonymousExpression, - linkml:ClassExpression ; - linkml:is_a linkml:AnonymousExpression ; - linkml:mixins linkml:ClassExpression . + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:represents_relationship ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:union_of ], + linkml:ClassExpression, + linkml:Definition ; + skos:altLabel "message", + "observation", + "record", + "table", + "template" ; + skos:closeMatch owl:Class ; + skos:definition "an element whose instances are complex objects that may have slot-value assignments" ; + skos:inScheme linkml:meta ; + sh:order 2 . -linkml:Definition a owl:Class, +linkml:meta a owl:Ontology ; + rdfs:label "meta" ; + dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; + dcterms:title "LinkML Schema Metamodel" ; + pav:version "2.0.0" ; + skos:definition """The metamodel for schemas defined using the Linked Data Modeling Language framework. + +For more information on LinkML: + +* [linkml.io](https://linkml.io) main website +* [specification](https://w3id.org/linkml/docs/specification/) + +LinkML is self-describing. Every LinkML schema consists of elements +that instantiate classes in this metamodel. + +Core metaclasses: + +* [SchemaDefinition](https://w3id.org/linkml/SchemaDefinition) +* [ClassDefinition](https://w3id.org/linkml/ClassDefinition) +* [SlotDefinition](https://w3id.org/linkml/SlotDefinition) +* [TypeDefinition](https://w3id.org/linkml/TypeDefinition) + +There are many subsets of *profiles* of the metamodel, for different purposes: + +* [MinimalSubset](https://w3id.org/linkml/MinimalSubset) +* [BasicSubset](https://w3id.org/linkml/BasicSubset) +* [BasicSubset](https://w3id.org/linkml/BasicSubset) + +For canonical reference documentation on any metamodel construct, +refer to the official URI for each construct, e.g. +[https://w3id.org/linkml/is_a](https://w3id.org/linkml/is_a)""" . + +linkml:SlotDefinition a owl:Class, linkml:ClassDefinition ; - rdfs:label "definition" ; + rdfs:label "slot_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:mixin ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:abstract ], + owl:minCardinality 0 ; + owl:onProperty linkml:identifier ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:mixins ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:values_from ], + owl:maxCardinality 1 ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:apply_to ], + owl:minCardinality 0 ; + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Definition ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:string_serialization ], - linkml:Element ; - skos:definition "abstract base class for core metaclasses" ; - linkml:is_a linkml:Element . - -linkml:Element a owl:Class, - linkml:ClassDefinition ; - rdfs:label "element" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:implements ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:subproperty_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:LocalName ; - owl:onProperty linkml:local_names ], + owl:maxCardinality 1 ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:instantiates ], + owl:minCardinality 0 ; + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:minCardinality 0 ; + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:closeMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:shared ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:mappingRelation ], + owl:minCardinality 0 ; + owl:onProperty linkml:subproperty_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:narrowMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty rdfs:seeAlso ], + owl:minCardinality 0 ; + owl:onProperty linkml:transitive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:deprecated ], + owl:maxCardinality 1 ; + owl:onProperty linkml:owner ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty skos:altLabel ], + owl:maxCardinality 1 ; + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:createdOn ], + owl:maxCardinality 1 ; + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty skosxl:altLabel ], + owl:maxCardinality 1 ; + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:relatedMatch ], + owl:minCardinality 0 ; + owl:onProperty linkml:key ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:imported_from ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:transitive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty pav:createdBy ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:conformsTo ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:identifier ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty schema1:inLanguage ], + owl:minCardinality 0 ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:maxCardinality 1 ; + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty bibo:status ], + owl:maxCardinality 1 ; + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:exactMatch ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty schema1:keywords ], + owl:minCardinality 0 ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty OIO:inSubset ], + owl:minCardinality 0 ; + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:definition ], + owl:minCardinality 0 ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty dcterms:source ], + owl:maxCardinality 1 ; + owl:onProperty linkml:transitive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty oslc:modifiedBy ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:minCardinality 0 ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Datetime ; - owl:onProperty pav:lastUpdatedOn ], + owl:minCardinality 0 ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty dcterms:title ], + owl:minCardinality 0 ; + owl:onProperty linkml:readonly ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:contributor ], + owl:minCardinality 0 ; + owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:minCardinality 0 ; + owl:onProperty linkml:owner ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:definition_uri ], + owl:maxCardinality 1 ; + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:editorialNote ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ], - [ a owl:Restriction ; - owl:onClass linkml:String ; - owl:onProperty rdfs:label ; - owl:qualifiedCardinality 1 ], + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty dcterms:subject ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uri ; - owl:onProperty skos:inScheme ], + owl:minCardinality 0 ; + owl:onProperty linkml:domain_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty skos:broadMatch ], + owl:maxCardinality 1 ; + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty sh:order ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:id_prefixes ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty skos:note ], - linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible ; - skos:altLabel "data element", - "object" ; - skos:definition "A named element in the model" ; - linkml:mixins linkml:Annotatable, - linkml:CommonMetadata, - linkml:Extensible . - -linkml:ClassDefinition a owl:Class, - linkml:ClassDefinition ; - rdfs:label "class_definition" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:subclass_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:class_uri ], + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:slot_names_unique ], + owl:minCardinality 0 ; + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:ClassDefinition ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:union_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:tree_root ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:owner ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:defining_slots ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_usage ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_conditions ], + owl:minCardinality 0 ; + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:disjoint_with ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alias ], [ 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:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:all_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:UniqueKey ; - owl:onProperty linkml:unique_keys ], + owl:minCardinality 0 ; + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:classification_rules ], + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:attributes ], + owl:minCardinality 0 ; + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassRule ; - owl:onProperty sh:rule ], + owl:maxCardinality 1 ; + owl:onProperty linkml:ifabsent ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:represents_relationship ], - linkml:ClassExpression, - linkml:Definition ; - skos:altLabel "message", - "observation", - "record", - "table", - "template" ; - skos:closeMatch owl:Class ; - skos:definition "an element whose instances are complex objects that may have slot-value assignments" ; - linkml:is_a linkml:Definition ; - linkml:mixins linkml:ClassExpression . - -linkml:SlotDefinition a owl:Class, - linkml:ClassDefinition ; - rdfs:label "slot_definition" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_expression ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:UnitOfMeasure ; - owl:onProperty qudt:unit ], + owl:maxCardinality 1 ; + owl:onProperty linkml:role ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:has_member ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; + owl:maxCardinality 1 ; owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PresenceEnum ; - owl:onProperty linkml:value_presence ], + owl:minCardinality 0 ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:RelationalRoleEnum ; - owl:onProperty linkml:relational_role ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty sh:group ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:key ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:reflexive ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:singular_name ], + owl:minCardinality 0 ; + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:mixins ], + owl:allValuesFrom linkml:RelationalRoleEnum ; + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined ], + owl:maxCardinality 1 ; + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_value ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty linkml:is_a ], + owl:minCardinality 0 ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_cardinality ], + owl:minCardinality 0 ; + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:maxCardinality 1 ; + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Element ; - owl:onProperty linkml:range ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:shared ], + owl:maxCardinality 1 ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:key ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:transitive ], + owl:minCardinality 0 ; + owl:onProperty linkml:role ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:asymmetric ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:list_elements_ordered ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Uriorcurie ; - owl:onProperty linkml:slot_uri ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:maximum_value ], + owl:maxCardinality 1 ; + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Definition ; - owl:onProperty linkml:owner ], + owl:minCardinality 0 ; + owl:onProperty linkml:ifabsent ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:readonly ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:required ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:irreflexive ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:multivalued ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty owl:inverseOf ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty linkml:reflexive_transitive_form_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:ifabsent ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:equals_string ], + owl:maxCardinality 1 ; + owl:onProperty linkml:subproperty_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:shared ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:recommended ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inherited ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:role ], + owl:maxCardinality 1 ; + owl:onProperty linkml:readonly ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:identifier ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty skos:prefLabel ], + owl:minCardinality 0 ; + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:EnumExpression ; - owl:onProperty linkml:enum_range ], + owl:minCardinality 0 ; + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:domain_of ], + owl:onProperty linkml:role ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:apply_to ], + owl:maxCardinality 1 ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:locally_reflexive ], + owl:minCardinality 0 ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PathExpression ; - owl:onProperty linkml:path_rule ], + owl:maxCardinality 1 ; + owl:onProperty linkml:identifier ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], + owl:minCardinality 0 ; + owl:onProperty linkml:shared ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:symmetric ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; - owl:onProperty linkml:list_elements_unique ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:SlotDefinition ; - owl:onProperty rdfs:subPropertyOf ], + owl:maxCardinality 1 ; + owl:onProperty linkml:key ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:union_of ], - [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:pattern ], - [ 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 linkml:transitive_form_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:designates_type ], [ a owl:Restriction ; - owl:maxQualifiedCardinality 1 ; - owl:onClass linkml:String ; - owl:onProperty linkml:usage_slot_name ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:list_elements_ordered ], linkml:Definition, linkml:SlotExpression ; skos:altLabel "attribute", @@ -4529,7 +4665,6 @@ linkml:SlotDefinition a owl:Class, skos:closeMatch qb:ComponentProperty, rdf:Property ; skos:definition "an element that describes how instances are related to other instances" ; - linkml:is_a linkml:Definition ; - linkml:mixins linkml:SlotExpression . - + skos:inScheme linkml:meta ; + sh:order 3 . diff --git a/linkml_runtime/linkml_model/prefixmap/meta.yaml b/linkml_runtime/linkml_model/prefixmap/meta.yaml index 6d00d5ef..fab7ffee 100644 --- a/linkml_runtime/linkml_model/prefixmap/meta.yaml +++ b/linkml_runtime/linkml_model/prefixmap/meta.yaml @@ -2,6 +2,7 @@ "IAO": "http://purl.obolibrary.org/obo/IAO_", "NCIT": "http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#", "OIO": "http://www.geneontology.org/formats/oboInOwl#", + "SIO": "http://semanticscience.org/resource/SIO_", "bibo": "http://purl.org/ontology/bibo/", "cdisc": "http://rdf.cdisc.org/mms#", "dcterms": "http://purl.org/dc/terms/", diff --git a/linkml_runtime/linkml_model/protobuf/meta.proto b/linkml_runtime/linkml_model/protobuf/meta.proto index 6a3da75d..102c8c3b 100644 --- a/linkml_runtime/linkml_model/protobuf/meta.proto +++ b/linkml_runtime/linkml_model/protobuf/meta.proto @@ -115,8 +115,8 @@ message AnonymousSlotExpression boolean recommended = 9 boolean inlined = 25 boolean inlinedAsList = 27 - integer minimumValue = 0 - integer maximumValue = 0 + anything minimumValue = 0 + anything maximumValue = 0 string pattern = 35 patternExpression structuredPattern = 0 unitOfMeasure unit = 0 @@ -145,8 +145,8 @@ message AnonymousTypeExpression string equalsString = 0 repeated string equalsStringIn = 0 integer equalsNumber = 0 - integer minimumValue = 0 - integer maximumValue = 0 + anything minimumValue = 0 + anything maximumValue = 0 repeated anonymousTypeExpression noneOf = 105 repeated anonymousTypeExpression exactlyOneOf = 103 repeated anonymousTypeExpression anyOf = 101 @@ -157,6 +157,7 @@ message ClassDefinition { string name = 1 repeated ncname idPrefixes = 0 + boolean idPrefixesAreClosed = 0 uriorcurie definitionUri = 0 repeated localName localNames = 0 string conformsTo = 0 @@ -275,6 +276,7 @@ message EnumDefinition { string name = 1 repeated ncname idPrefixes = 0 + boolean idPrefixesAreClosed = 0 uriorcurie definitionUri = 0 repeated localName localNames = 0 string conformsTo = 0 @@ -571,6 +573,7 @@ message ReachabilityQuery message SchemaDefinition { repeated ncname idPrefixes = 0 + boolean idPrefixesAreClosed = 0 uriorcurie definitionUri = 0 repeated localName localNames = 0 string conformsTo = 0 @@ -645,6 +648,7 @@ message SlotDefinition { string name = 1 repeated ncname idPrefixes = 0 + boolean idPrefixesAreClosed = 0 uriorcurie definitionUri = 0 repeated localName localNames = 0 string conformsTo = 0 @@ -736,8 +740,8 @@ message SlotDefinition boolean recommended = 9 boolean inlined = 25 boolean inlinedAsList = 27 - integer minimumValue = 0 - integer maximumValue = 0 + anything minimumValue = 0 + anything maximumValue = 0 string pattern = 35 patternExpression structuredPattern = 0 unitOfMeasure unit = 0 @@ -802,6 +806,7 @@ message SubsetDefinition { string name = 1 repeated ncname idPrefixes = 0 + boolean idPrefixesAreClosed = 0 uriorcurie definitionUri = 0 repeated localName localNames = 0 string conformsTo = 0 @@ -848,6 +853,7 @@ message TypeDefinition { string name = 1 repeated ncname idPrefixes = 0 + boolean idPrefixesAreClosed = 0 uriorcurie definitionUri = 0 repeated localName localNames = 0 string conformsTo = 0 @@ -900,8 +906,8 @@ message TypeDefinition string equalsString = 0 repeated string equalsStringIn = 0 integer equalsNumber = 0 - integer minimumValue = 0 - integer maximumValue = 0 + anything minimumValue = 0 + anything maximumValue = 0 repeated anonymousTypeExpression noneOf = 105 repeated anonymousTypeExpression exactlyOneOf = 103 repeated anonymousTypeExpression anyOf = 101 diff --git a/linkml_runtime/linkml_model/shacl/meta.shacl.ttl b/linkml_runtime/linkml_model/shacl/meta.shacl.ttl index 2b61594d..9531186a 100644 --- a/linkml_runtime/linkml_model/shacl/meta.shacl.ttl +++ b/linkml_runtime/linkml_model/shacl/meta.shacl.ttl @@ -29,128 +29,141 @@ linkml:AnonymousExpression a sh:NodeShape ; sh:closed false ; sh:description "An abstract parent class for any nested expression" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "the primary language used in the sources" ; + sh:property [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 18 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:order 14 ; sh:path schema1:inLanguage ], - [ sh:description "time at which the element was last updated" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 34 ; - sh:path schema1:keywords ], + sh:order 2 ; + sh:path skos:definition ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:order 30 ; sh:path oslc:modifiedBy ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 17 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path OIO:inSubset ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 20 ; sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 24 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:imported_from ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml:alt_descriptions ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 26 ; - sh:path pav:createdBy ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:deprecated ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 23 ; - sh:path skos:relatedMatch ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path bibo:status ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 7 ; - sh:path skos:editorialNote ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 15 ; - sh:path rdfs:seeAlso ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:order 8 ; sh:path skos:note ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 25 ; + sh:path skos:broadMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 24 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 7 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path dcterms:title ], + sh:order 29 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 22 ; + sh:path skos:closeMatch ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 6 ; + sh:path linkml:todos ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; sh:order 1 ; sh:path linkml:annotations ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path sh:order ], - [ sh:description "time at which the element was created" ; + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 21 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:order 28 ; sh:path pav:createdOn ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 25 ; - sh:path skos:broadMatch ], - [ sh:description "id of the schema that defined the element" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 11 ; - sh:path skos:inScheme ], + sh:order 32 ; + sh:path sh:order ], [ sh:description "agent that contributed to the element" ; sh:order 27 ; sh:path dcterms:contributor ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 18 ; - sh:path skos:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 21 ; - sh:path skos:exactMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 22 ; - sh:path skos:closeMatch ], - [ sh:description "a textual description of the element's purpose and use" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path skos:definition ], + sh:order 26 ; + sh:path pav:createdBy ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 15 ; + sh:path rdfs:seeAlso ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 19 ; sh:path skosxl:altLabel ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 10 ; - sh:path OIO:inSubset ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path dcterms:title ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 34 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 23 ; + sh:path skos:relatedMatch ], [ sh:description "Controlled terms used to categorize an element." ; sh:order 33 ; sh:path dcterms:subject ], @@ -158,9 +171,10 @@ linkml:AnonymousExpression a sh:NodeShape ; sh:maxCount 1 ; sh:order 13 ; sh:path dcterms:source ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 6 ; - sh:path linkml:todos ] ; + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 16 ; + sh:path linkml:deprecated_element_has_exact_replacement ] ; sh:targetClass linkml:AnonymousExpression . linkml:ClassExpression a sh:NodeShape ; @@ -168,30 +182,30 @@ linkml:ClassExpression a sh:NodeShape ; sh:description "A boolean expression that can be used to dynamically determine membership of a class" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if none of the expressions hold" ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:none_of ], + sh:order 3 ; + sh:path linkml:all_of ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 0 ; sh:path linkml:any_of ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:exactly_one_of ], [ sh:class linkml:SlotDefinition ; sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml:slot_conditions ], [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if all of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:all_of ] ; + sh:order 2 ; + sh:path linkml:none_of ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:exactly_one_of ] ; sh:targetClass linkml:ClassExpression . linkml:ClassLevelRule a sh:NodeShape ; @@ -204,128 +218,142 @@ linkml:CommonMetadata a sh:NodeShape ; sh:closed false ; sh:description "Generic metadata shared across definitions" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 13 ; - sh:path rdfs:seeAlso ], - [ sh:description "id of the schema that defined the element" ; + sh:property [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 26 ; + sh:path pav:createdOn ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:order 9 ; sh:path skos:inScheme ], - [ sh:description "status of the element" ; + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 29 ; - sh:path bibo:status ], - [ sh:description "time at which the element was last updated" ; + sh:order 2 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 27 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 18 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 21 ; - sh:path skos:relatedMatch ], - [ sh:description "Keywords or tags used to describe the element" ; + sh:order 12 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 30 ; + sh:path sh:order ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 6 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 19 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; sh:order 32 ; sh:path schema1:keywords ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 13 ; + sh:path rdfs:seeAlso ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path bibo:status ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:order 28 ; sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 23 ; - sh:path skos:broadMatch ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path dcterms:source ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:order 20 ; sh:path skos:closeMatch ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 31 ; - sh:path dcterms:subject ], - [ sh:description "time at which the element was created" ; + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 26 ; - sh:path pav:createdOn ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 5 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 19 ; - sh:path skos:exactMatch ], + sh:order 10 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:deprecated ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 24 ; + sh:path pav:createdBy ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:order 22 ; sh:path skos:narrowMatch ], - [ sh:description "a textual description of the element's purpose and use" ; + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path dcterms:source ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 18 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:order 0 ; sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 16 ; + sh:path skos:altLabel ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:examples ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 8 ; sh:path OIO:inSubset ], - [ sh:description "agent that created the element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 23 ; + sh:path skos:broadMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 25 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 24 ; - sh:path pav:createdBy ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 30 ; - sh:path sh:order ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:examples ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 6 ; - sh:path skos:note ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 27 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 31 ; + sh:path dcterms:subject ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 21 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 5 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 4 ; + sh:path linkml:todos ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 17 ; sh:path skosxl:altLabel ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 16 ; - sh:path skos:altLabel ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:imported_from ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 4 ; - sh:path linkml:todos ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path schema1:inLanguage ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path dcterms:title ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:deprecated ], - [ sh:description "agent that contributed to the element" ; - sh:order 25 ; - sh:path dcterms:contributor ] ; + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:alt_descriptions ] ; sh:targetClass linkml:CommonMetadata . linkml:Expression a sh:NodeShape ; @@ -349,456 +377,475 @@ linkml:ImportExpression a sh:NodeShape ; sh:closed true ; sh:description "an expression describing an import" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:class linkml:Setting ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:import_map ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "id of the schema that defined the element" ; + sh:property [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:import_as ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path bibo:status ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:order 14 ; sh:path skos:inScheme ], - [ sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], + sh:order 16 ; + sh:path dcterms:source ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:order 25 ; sh:path skos:closeMatch ], - [ sh:description "time at which the element was created" ; + [ sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:import_from ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:annotations ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], + sh:order 17 ; + sh:path schema1:inLanguage ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 18 ; sh:path rdfs:seeAlso ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:imported_from ], + sh:order 8 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:import_from ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:order 26 ; sh:path skos:relatedMatch ], - [ sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:import_as ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:description "Description of why and when this element will no longer be used" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:description "time at which the element was last updated" ; + sh:order 35 ; + sh:path sh:order ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 32 ; sh:path pav:lastUpdatedOn ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:annotations ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 22 ; sh:path skosxl:altLabel ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:Setting ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:import_map ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "the primary language used in the sources" ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ] ; + sh:order 15 ; + sh:path linkml:imported_from ] ; sh:targetClass linkml:ImportExpression . linkml:SchemaDefinition a sh:NodeShape ; sh:closed true ; sh:description "A collection of definitions that make up a schema or a data model." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path linkml:deprecated ], - [ sh:class linkml:Setting ; - sh:description "A collection of global variable settings" ; - sh:nodeKind sh:BlankNode ; - sh:order 20 ; - sh:path linkml:settings ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 49 ; - sh:path skos:exactMatch ], - [ sh:description "A list of schemas that are to be included in this schema" ; - sh:order 2 ; - sh:path linkml:imports ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 28 ; - sh:path linkml:extensions ], - [ sh:description "a list of Curie prefixes that are used in the representation of instances of the model. All prefixes in this list are added to the prefix sections of the target models." ; - sh:order 5 ; - sh:path linkml:emit_prefixes ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 60 ; - sh:path sh:order ], - [ sh:description "license for the schema" ; + sh:property [ sh:datatype xsd:string ; + sh:description "license for the schema" ; sh:maxCount 1 ; sh:order 3 ; sh:path dcterms:license ], - [ sh:class linkml:TypeDefinition ; - sh:description "An index to the collection of all type definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 10 ; - sh:path linkml:types ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 49 ; + sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 54 ; + sh:path skos:broadMatch ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 47 ; + sh:order 48 ; sh:path skosxl:altLabel ], - [ sh:class linkml:Prefix ; - sh:description "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path sh:declare ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:order 41 ; - sh:path dcterms:source ], - [ sh:description "a unique name for the schema that is both human-readable and consists of only characters from the NCName set" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 21 ; - sh:path rdfs:label ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 42 ; - sh:path schema1:inLanguage ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 54 ; - sh:path pav:createdBy ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:path linkml:imported_from ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 31 ; - sh:path linkml:alt_descriptions ], - [ sh:description "status of the element" ; + sh:order 38 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 63 ; + sh:path schema1:keywords ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; sh:order 59 ; - sh:path bibo:status ], + sh:path oslc:modifiedBy ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 39 ; + sh:path OIO:inSubset ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 29 ; + sh:path linkml:extensions ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 28 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 36 ; + sh:path skos:editorialNote ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 62 ; + sh:path dcterms:subject ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 30 ; + sh:path linkml:annotations ], [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 26 ; + sh:order 27 ; sh:path linkml:implements ], - [ sh:class linkml:EnumDefinition ; - sh:description "An index to the collection of all enum definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml:enums ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 44 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" ; - sh:order 6 ; - sh:path linkml:default_curi_maps ], - [ sh:description "a textual description of the element's purpose and use" ; + [ sh:datatype xsd:boolean ; + sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 52 ; - sh:path skos:narrowMatch ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 34 ; - sh:path linkml:todos ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 36 ; - sh:path skos:note ], - [ sh:description "date and time that the schema was loaded/generated" ; + sh:order 19 ; + sh:path linkml:slot_names_unique ], + [ sh:datatype xsd:dateTime ; + sh:description "date and time that the schema was loaded/generated" ; sh:maxCount 1 ; sh:order 18 ; sh:path linkml:generation_date ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 37 ; - sh:path linkml:examples ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 22 ; - sh:path linkml:id_prefixes ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 61 ; - sh:path dcterms:subject ], - [ sh:description "modification date of the source of the schema" ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:source_file_date ], - [ sh:description "Version of the metamodel used to load the schema" ; + sh:order 32 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:string ; + sh:description "Version of the metamodel used to load the schema" ; sh:maxCount 1 ; sh:order 14 ; sh:path linkml:metamodel_version ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; + [ sh:description "agent that contributed to the element" ; sh:order 56 ; - sh:path pav:createdOn ], - [ sh:description "An established standard to which the element conforms." ; - sh:maxCount 1 ; - sh:order 25 ; - sh:path dcterms:conformsTo ], - [ sh:description "The prefix that is used for all elements within a schema" ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "The prefix that is used for all elements within a schema" ; sh:maxCount 1 ; sh:order 7 ; sh:path linkml:default_prefix ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:class linkml:EnumDefinition ; + sh:description "An index to the collection of all enum definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml:enums ], + [ sh:class linkml:TypeDefinition ; + sh:description "default slot range to be used if range element is omitted from a slot definition" ; sh:maxCount 1 ; - sh:order 40 ; - sh:path linkml:imported_from ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml:default_range ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:order 32 ; - sh:path dcterms:title ], + sh:order 24 ; + sh:path linkml:definition_uri ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 43 ; + sh:path schema1:inLanguage ], [ sh:class linkml:SlotDefinition ; sh:description "An index to the collection of all slot definitions in the schema" ; sh:nodeKind sh:IRI ; sh:order 12 ; sh:path linkml:slot_definitions ], - [ sh:class linkml:SubsetDefinition ; - sh:description "An index to the collection of all subset definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 9 ; - sh:path linkml:subsets ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 29 ; - sh:path linkml:annotations ], - [ sh:description "size in bytes of the source of the schema" ; + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:source_file_size ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 27 ; - sh:path linkml:instantiates ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 60 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "name, uri or description of the source of the schema" ; sh:maxCount 1 ; - sh:order 45 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 15 ; + sh:path linkml:source_file ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 53 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 37 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 51 ; + sh:path skos:closeMatch ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "a list of Curie prefixes that are used in the representation of instances of the model. All prefixes in this list are added to the prefix sections of the target models." ; + sh:order 5 ; + sh:path linkml:emit_prefixes ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 40 ; + sh:path skos:inScheme ], [ sh:class linkml:ClassDefinition ; sh:description "An index to the collection of all class definitions in the schema" ; sh:nodeKind sh:IRI ; sh:order 13 ; sh:path linkml:classes ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 24 ; - sh:path linkml:local_names ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 62 ; - sh:path schema1:keywords ], - [ sh:description "id of the schema that defined the element" ; + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 39 ; - sh:path skos:inScheme ], - [ sh:description "agent that contributed to the element" ; - sh:order 55 ; - sh:path dcterms:contributor ], - [ sh:description "particular version of schema" ; + sh:order 26 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:integer ; + sh:description "size in bytes of the source of the schema" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path pav:version ], - [ sh:description "time at which the element was last updated" ; + sh:order 17 ; + sh:path linkml:source_file_size ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 57 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 53 ; - sh:path skos:broadMatch ], - [ sh:description "agent that modified the element" ; + sh:order 23 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 58 ; - sh:path oslc:modifiedBy ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 38 ; - sh:path OIO:inSubset ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 43 ; - sh:path rdfs:seeAlso ], - [ sh:class linkml:TypeDefinition ; - sh:description "default slot range to be used if range element is omitted from a slot definition" ; + sh:order 33 ; + sh:path dcterms:title ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml:default_range ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 46 ; - sh:path skos:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 51 ; - sh:path skos:relatedMatch ], - [ sh:description "name, uri or description of the source of the schema" ; + sh:order 58 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:source_file ], - [ sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; + sh:order 55 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" ; + sh:order 6 ; + sh:path linkml:default_curi_maps ], + [ sh:class linkml:Setting ; + sh:description "A collection of global variable settings" ; + sh:nodeKind sh:BlankNode ; + sh:order 20 ; + sh:path linkml:settings ], + [ sh:datatype xsd:dateTime ; + sh:description "modification date of the source of the schema" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:slot_names_unique ], - [ sh:description "The official schema URI" ; + sh:order 16 ; + sh:path linkml:source_file_date ], + [ sh:datatype xsd:string ; + sh:description "particular version of schema" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:id ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 50 ; - sh:path skos:closeMatch ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 1 ; + sh:path pav:version ], + [ sh:class linkml:Prefix ; + sh:description "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path sh:declare ], + [ sh:class linkml:SubsetDefinition ; + sh:description "An index to the collection of all subset definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml:subsets ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 52 ; + sh:path skos:relatedMatch ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 23 ; - sh:path linkml:definition_uri ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 48 ; - sh:path skos:mappingRelation ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 46 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 61 ; + sh:path sh:order ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 44 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:TypeDefinition ; + sh:description "An index to the collection of all type definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml:types ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; sh:order 35 ; - sh:path skos:editorialNote ] ; + sh:path linkml:todos ], + [ sh:datatype xsd:anyURI ; + sh:description "The official schema URI" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:id ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 42 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 57 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 47 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 22 ; + sh:path linkml:id_prefixes ], + [ sh:description "A list of schemas that are to be included in this schema" ; + sh:order 2 ; + sh:path linkml:imports ], + [ sh:datatype xsd:string ; + sh:description "a unique name for the schema that is both human-readable and consists of only characters from the NCName set" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 21 ; + sh:path rdfs:label ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 45 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 50 ; + sh:path skos:exactMatch ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 25 ; + sh:path linkml:local_names ] ; sh:targetClass linkml:SchemaDefinition . linkml:SlotExpression a sh:NodeShape ; sh:closed false ; sh:description "an expression that constrains the range of values a slot can take" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "the slot must have range string and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:equals_string ], - [ sh:description "the minimum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:minimum_cardinality ], - [ sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:inlined ], - [ sh:description "for slots with ranges of type number, the value must be equal to or higher than this" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:minimum_value ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:pattern ], - [ sh:description "the maximum number of entries for a multivalued slot" ; + sh:property [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:order 19 ; sh:path linkml:maximum_cardinality ], - [ sh:description "for slots with ranges of type number, the value must be equal to or lowe than this" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:maximum_value ], - [ sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:implicit_prefix ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 23 ; - sh:path linkml:exactly_one_of ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path linkml:all_of ], - [ sh:description "true means that the slot must be present in instances of the class definition" ; + sh:order 22 ; + sh:path linkml:none_of ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:required ], + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:maximum_value ], [ sh:class linkml:Element ; sh:description """defines the type of the object of the slot. Given the following slot definition S1: @@ -815,251 +862,280 @@ implicitly asserts Y is an instance of C2 sh:order 0 ; sh:path linkml:range ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 24 ; - sh:path linkml:any_of ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:order 23 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:recommended ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path qudt:unit ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; + sh:order 1 ; + sh:path linkml:range_expression ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:implicit_prefix ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 20 ; - sh:path linkml:has_member ], - [ sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 15 ; - sh:path linkml:equals_string_in ], - [ sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:order 10 ; + sh:path linkml:structured_pattern ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:recommended ], + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:minimum_value ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "the value of the slot is multivalued with all members satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 21 ; sh:path linkml:all_members ], + [ sh:datatype xsd:string ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path linkml:equals_expression ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 11 ; + sh:path qudt:unit ], + [ sh: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)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path linkml:value_presence ], + [ sh:datatype xsd:boolean ; + sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:inlined ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:order 18 ; + sh:path linkml:minimum_cardinality ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 25 ; + sh:path linkml:all_of ], [ sh:class linkml:EnumExpression ; sh:description "An inlined enumeration" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml:enum_range ], - [ sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:order 16 ; sh:path linkml:equals_number ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot must be present in instances of the class definition" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:required ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; + sh:order 14 ; + sh:path linkml:equals_string ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:range_expression ], - [ sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; + sh:order 24 ; + sh:path linkml:any_of ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 20 ; + sh:path linkml:has_member ], + [ sh:datatype xsd:boolean ; + sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; sh:maxCount 1 ; sh:order 6 ; sh:path linkml:inlined_as_list ], - [ sh:description "the value of the slot must equal the value of the evaluated expression" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:equals_expression ], - [ sh: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)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; - sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:value_presence ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 15 ; + sh:path linkml:equals_string_in ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:structured_pattern ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path linkml:none_of ] ; + sh:order 9 ; + sh:path linkml:pattern ] ; sh:targetClass linkml:SlotExpression . linkml:TypeExpression a sh:NodeShape ; sh:closed false ; sh:description "An abstract class grouping named types and anonymous type expressions" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:PatternExpression ; + sh:property [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:none_of ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 10 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path linkml:equals_number ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:maximum_value ], + [ sh:class linkml:PatternExpression ; sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 1 ; sh:path linkml:structured_pattern ], - [ sh:description "for slots with ranges of type number, the value must be equal to or higher than this" ; + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:all_of ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 7 ; sh:path linkml:minimum_value ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml:pattern ], - [ sh:description "the slot must have range string and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:equals_string ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:none_of ], - [ sh:description "for slots with ranges of type number, the value must be equal to or lowe than this" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:maximum_value ], - [ sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:implicit_prefix ], - [ sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 5 ; - sh:path linkml:equals_string_in ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 11 ; sh:path linkml:any_of ], - [ sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 5 ; + sh:path linkml:equals_string_in ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:equals_number ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:exactly_one_of ], + sh:order 4 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:implicit_prefix ], [ sh:class qudt:Unit ; sh:description "an encoding of a unit" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 2 ; - sh:path qudt:unit ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:all_of ] ; + sh:path qudt:unit ] ; sh:targetClass linkml:TypeExpression . -linkml:Any a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ) ; - sh:targetClass linkml:Any . - linkml:ClassRule a sh:NodeShape ; sh:closed true ; sh:description "A rule that applies to instances of a class" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 30 ; - sh:path skos:relatedMatch ], + sh:property [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 38 ; + sh:path bibo:status ], + [ sh:datatype xsd:boolean ; + sh:description "a deactivated rule is not executed by the rules engine" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path sh:deactivated ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 21 ; + sh:path schema1:inLanguage ], [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold for an instance of the class, if the preconditions no not hold" ; + sh:description "an expression that must hold in order for the rule to be applicable to an instance" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:elseconditions ], + sh:order 0 ; + sh:path sh:condition ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 30 ; + sh:path skos:relatedMatch ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 23 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:order 29 ; sh:path skos:closeMatch ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path oslc:modifiedBy ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 27 ; sh:path skos:mappingRelation ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 35 ; - sh:path pav:createdOn ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path pav:createdBy ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 22 ; - sh:path rdfs:seeAlso ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path OIO:inSubset ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 16 ; - sh:path linkml:examples ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 40 ; - sh:path schema1:keywords ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 15 ; - sh:path skos:note ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 38 ; - sh:path bibo:status ], - [ sh:description "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:bidirectional ], - [ sh:description "time at which the element was last updated" ; + sh:order 5 ; + sh:path sh:order ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 25 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 36 ; sh:path pav:lastUpdatedOn ], - [ sh:description "a deactivated rule is not executed by the rules engine" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path sh:deactivated ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:annotations ], [ sh:description "Controlled terms used to categorize an element." ; sh:order 39 ; sh:path dcterms:subject ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path sh:order ], + sh:order 33 ; + sh:path pav:createdBy ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:order 32 ; sh:path skos:broadMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path dcterms:title ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:deprecated ], - [ sh:description "id of the schema that defined the element" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 18 ; - sh:path skos:inScheme ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 9 ; + sh:path skos:definition ], + [ sh:description "agent that contributed to the element" ; + sh:order 34 ; + sh:path dcterms:contributor ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:imported_from ], - [ sh:description "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; + sh:order 37 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold for an instance of the class, if the preconditions hold" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:open_world ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 28 ; - sh:path skos:exactMatch ], + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:postconditions ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 15 ; + sh:path skos:note ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; @@ -1069,71 +1145,111 @@ linkml:ClassRule a sh:NodeShape ; sh:maxCount 1 ; sh:order 20 ; sh:path dcterms:source ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 26 ; - sh:path skosxl:altLabel ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 14 ; - sh:path skos:editorialNote ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 25 ; - sh:path skos:altLabel ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 23 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 35 ; + sh:path pav:createdOn ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 13 ; + sh:path linkml:todos ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path skos:definition ], + sh:order 18 ; + sh:path skos:inScheme ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:order 31 ; sh:path skos:narrowMatch ], - [ sh:description "agent that contributed to the element" ; - sh:order 34 ; - sh:path dcterms:contributor ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 13 ; - sh:path linkml:todos ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold for an instance of the class, if the preconditions hold" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:postconditions ], + sh:order 24 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 14 ; + sh:path skos:editorialNote ], [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold in order for the rule to be applicable to an instance" ; + sh:description "an expression that must hold for an instance of the class, if the preconditions no not hold" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path sh:condition ], - [ sh:description "the primary language used in the sources" ; + sh:order 2 ; + sh:path linkml:elseconditions ], + [ sh:datatype xsd:boolean ; + sh:description "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; sh:maxCount 1 ; - sh:order 21 ; - sh:path schema1:inLanguage ], + sh:order 4 ; + sh:path linkml:open_world ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 7 ; sh:path linkml:extensions ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 17 ; + sh:path OIO:inSubset ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 26 ; + sh:path skosxl:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 28 ; + sh:path skos:exactMatch ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 16 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_possible_replacement ] ; + sh:order 12 ; + sh:path linkml:deprecated ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 22 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 40 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:boolean ; + sh:description "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:bidirectional ] ; sh:targetClass linkml:ClassRule . linkml:Prefix a sh:NodeShape ; sh:closed true ; sh:description "prefix URI tuple" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "The namespace to which a prefix expands to." ; + sh:property [ sh:datatype xsd:anyURI ; + sh:description "The namespace to which a prefix expands to." ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; sh:path sh:namespace ], - [ sh:description "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; + [ sh:datatype xsd:string ; + sh:description "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; @@ -1144,165 +1260,183 @@ linkml:UniqueKey a sh:NodeShape ; sh:closed true ; sh:description "a collection of slots whose values uniquely identify an instance of a class" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:SlotDefinition ; + sh:description "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; + sh:minCount 1 ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], - [ sh:description "time at which the element was created" ; + sh:order 1 ; + sh:path linkml:unique_key_slots ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:imported_from ], + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 19 ; sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; sh:order 6 ; sh:path linkml:alt_descriptions ], - [ sh:description "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:consider_nulls_inequal ], - [ sh:description "name of the unique key" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:unique_key_name ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:order 28 ; sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:deprecated ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 22 ; sh:path skosxl:altLabel ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:datatype xsd:string ; + sh:description "name of the unique key" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "time at which the element was last updated" ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:unique_key_name ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ], + sh:order 16 ; + sh:path dcterms:source ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; sh:order 4 ; sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], - [ sh:description "agent that created the element" ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path pav:createdOn ], [ sh:description "status of the element" ; sh:maxCount 1 ; sh:order 34 ; sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:order 35 ; sh:path sh:order ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:SlotDefinition ; - sh:description "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:unique_key_slots ], - [ sh:description "id of the schema that defined the element" ; + [ sh:datatype xsd:boolean ; + sh:description "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ] ; + sh:order 2 ; + sh:path linkml:consider_nulls_inequal ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path skos:definition ] ; sh:targetClass linkml:UniqueKey . linkml:Setting a sh:NodeShape ; sh:closed true ; sh:description "assignment of a key to a value" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "The value assigned for a setting" ; + sh:property [ sh:datatype xsd:string ; + sh:description "The value assigned for a setting" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; sh:path linkml:setting_value ], - [ sh:description "the variable name for a setting" ; + [ sh:datatype xsd:string ; + sh:description "the variable name for a setting" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; @@ -1313,1339 +1447,1482 @@ linkml:Element a sh:NodeShape ; sh:closed false ; sh:description "A named element in the model" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Controlled terms used to categorize an element." ; - sh:order 40 ; - sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:order 31 ; - sh:path skos:narrowMatch ], + sh:path skos:relatedMatch ], [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:local_names ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 32 ; - sh:path skos:broadMatch ], - [ sh:description "An established standard to which the element conforms." ; - sh:maxCount 1 ; sh:order 4 ; - sh:path dcterms:conformsTo ], - [ sh:description "time at which the element was last updated" ; + sh:path linkml:local_names ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:annotations ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 27 ; - sh:path skos:mappingRelation ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 21 ; + sh:path dcterms:source ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:imported_from ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:order 24 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 16 ; - sh:path linkml:examples ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 29 ; - sh:path skos:closeMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 8 ; + sh:path linkml:extensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 32 ; + sh:path skos:narrowMatch ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:order 11 ; - sh:path dcterms:title ], - [ sh:description "agent that created the element" ; + sh:order 3 ; + sh:path linkml:definition_uri ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 33 ; - sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 30 ; - sh:path skos:relatedMatch ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 6 ; - sh:path linkml:instantiates ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 39 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path dcterms:source ], - [ sh:description "Outstanding issues that needs resolution" ; sh:order 13 ; - sh:path linkml:todos ], + sh:path linkml:deprecated ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 28 ; + sh:order 29 ; sh:path skos:exactMatch ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 39 ; - sh:path sh:order ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 21 ; - sh:path schema1:inLanguage ], - [ sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path skos:definition ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 16 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:order 26 ; - sh:path skosxl:altLabel ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 38 ; - sh:path bibo:status ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:path skos:altLabel ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 7 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 23 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "agent that modified the element" ; + sh:order 2 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 37 ; - sh:path oslc:modifiedBy ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 41 ; - sh:path schema1:keywords ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:extensions ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 34 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 5 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; sh:order 1 ; sh:path linkml:id_prefixes ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 15 ; - sh:path skos:note ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 35 ; - sh:path pav:createdOn ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 25 ; - sh:path skos:altLabel ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path OIO:inSubset ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 10 ; + sh:order 11 ; sh:path linkml:alt_descriptions ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 5 ; - sh:path linkml:implements ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path rdfs:label ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 28 ; + sh:path skos:mappingRelation ], [ sh:description "agent that contributed to the element" ; - sh:order 34 ; + sh:order 35 ; sh:path dcterms:contributor ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 37 ; + sh:path pav:lastUpdatedOn ], [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 22 ; + sh:order 23 ; sh:path rdfs:seeAlso ], - [ sh:description "Description of why and when this element will no longer be used" ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 18 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 33 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:order 12 ; - sh:path linkml:deprecated ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:definition_uri ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 14 ; - sh:path skos:editorialNote ], - [ sh:description "id of the schema that defined the element" ; + sh:minCount 1 ; + sh:order 0 ; + sh:path rdfs:label ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 18 ; - sh:path skos:inScheme ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:annotations ] ; + sh:order 17 ; + sh:path linkml:examples ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 27 ; + sh:path skosxl:altLabel ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 6 ; + sh:path linkml:implements ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 38 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 30 ; + sh:path skos:closeMatch ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 40 ; + sh:path sh:order ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 36 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 22 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:imported_from ] ; sh:targetClass linkml:Element . linkml:EnumExpression a sh:NodeShape ; sh:closed true ; sh:description "An expression that constrains the range of a slot" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:minus ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" ) ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ], - [ sh:class linkml:PermissibleValue ; - sh:description "A list of possible values for a slot range" ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:permissible_values ], - [ sh:description "the identifier of an enumeration code set." ; + sh:property [ sh:description "the identifier of an enumeration code set." ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml:code_set ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml:include ], + [ sh:datatype xsd:string ; + sh:description "the version tag of the enumeration code set" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:code_set_tag ], [ sh:class linkml:ReachabilityQuery ; sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 8 ; sh:path linkml:reachable_from ], - [ sh:description "the version tag of the enumeration code set" ; + [ sh:class linkml:PermissibleValue ; + sh:description "A list of possible values for a slot range" ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml:permissible_values ], + [ sh:class linkml:EnumDefinition ; + sh:description "An enum definition that is used as the basis to create a new enum" ; + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml:inherits ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:minus ], + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:code_set_tag ], + sh:order 3 ; + sh:path linkml:pv_formula ], [ sh:class linkml:MatchQuery ; sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 9 ; sh:path linkml:matches ], - [ sh:class linkml:EnumDefinition ; - sh:description "An enum definition that is used as the basis to create a new enum" ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:inherits ], - [ sh:description "the version identifier of the enumeration code set" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:code_set_version ], [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; sh:order 10 ; sh:path linkml:concepts ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml:include ] ; + [ sh:datatype xsd:string ; + sh:description "the version identifier of the enumeration code set" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:code_set_version ] ; sh:targetClass linkml:EnumExpression . linkml:MatchQuery a sh:NodeShape ; sh:closed true ; sh: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." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:source_ontology ], - [ sh:description "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" ; + sh:property [ sh:datatype xsd:string ; + sh:description "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml:identifier_pattern ] ; + sh:path linkml:identifier_pattern ], + [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:source_ontology ] ; sh:targetClass linkml:MatchQuery . linkml:PermissibleValue a sh:NodeShape ; sh:closed true ; sh:description "a permissible value, accompanied by intended text and an optional mapping to a concept URI" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "A related resource from which the element is derived." ; + sh:property [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:order 16 ; sh:path dcterms:source ], - [ sh:description "the value meaning of a permissible value" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:meaning ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path skosxl:altLabel ], - [ sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "agent that created the element" ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 34 ; + sh:path bibo:status ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 35 ; + sh:path sh:order ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:order 15 ; sh:path linkml:imported_from ], - [ sh:description "The actual permissible value itself" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:text ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 1 ; + sh:path skos:definition ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], [ sh:class qudt:Unit ; sh:description "an encoding of a unit" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path qudt:unit ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:datatype xsd:string ; + sh:description "The actual permissible value itself" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:text ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], + sh:order 29 ; + sh:path pav:createdBy ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; sh:order 5 ; sh:path linkml:annotations ], + [ sh:description "the value meaning of a permissible value" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:meaning ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 13 ; sh:path OIO:inSubset ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:order 10 ; sh:path skos:editorialNote ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "the primary language used in the sources" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "id of the schema that defined the element" ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:order 14 ; sh:path skos:inScheme ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:description "status of the element" ; + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ] ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 22 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path oslc:modifiedBy ] ; sh:targetClass linkml:PermissibleValue . linkml:ReachabilityQuery a sh:NodeShape ; sh:closed true ; sh: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." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of relationship types (properties) that are used in a reachability query" ; + sh:property [ sh:datatype xsd:boolean ; + sh:description "True if the query is reflexive" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:include_self ], + [ sh:description "A list of relationship types (properties) that are used in a reachability query" ; sh:order 2 ; sh:path linkml:relationship_types ], - [ sh:description "True if the reachability query should only include directly related nodes, if False then include also transitively connected" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:is_direct ], + [ sh:description "A list of nodes that are used in the reachability query" ; + sh:order 1 ; + sh:path linkml:source_nodes ], [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml:source_ontology ], - [ sh:description "True if the query is reflexive" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:include_self ], - [ sh:description "True if the direction of the reachability query is reversed and ancestors are retrieved" ; + [ sh:datatype xsd:boolean ; + sh:description "True if the direction of the reachability query is reversed and ancestors are retrieved" ; sh:maxCount 1 ; sh:order 5 ; sh:path linkml:traverse_up ], - [ sh:description "A list of nodes that are used in the reachability query" ; - sh:order 1 ; - sh:path linkml:source_nodes ] ; + [ sh:datatype xsd:boolean ; + sh:description "True if the reachability query should only include directly related nodes, if False then include also transitively connected" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:is_direct ] ; sh:targetClass linkml:ReachabilityQuery . linkml:EnumDefinition a sh:NodeShape ; sh:closed true ; sh:description "an element whose instances must be drawn from a specified set of permissible values" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Keywords or tags used to describe the element" ; - sh:order 60 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 49 ; - sh:path skos:relatedMatch ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 17 ; - sh:path linkml:values_from ], - [ sh:description "time at which the element was last updated" ; + sh:property [ sh:datatype xsd:string ; + sh:description "the version tag of the enumeration code set" ; sh:maxCount 1 ; - sh:order 55 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 47 ; - sh:path skos:exactMatch ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 2 ; + sh:path linkml:code_set_tag ], + [ sh:class linkml:Definition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path linkml:apply_to ], + [ sh:class linkml:MatchQuery ; + sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; - sh:order 38 ; - sh:path linkml:imported_from ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 29 ; - sh:path linkml:alt_descriptions ], + sh:order 10 ; + sh:path linkml:matches ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 42 ; + sh:path rdfs:seeAlso ], [ sh:description "the identifier of an enumeration code set." ; sh:maxCount 1 ; sh:order 1 ; sh:path linkml:code_set ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 25 ; - sh:path linkml:instantiates ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:minus ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 58 ; - sh:path sh:order ], - [ sh:description "the primary language used in the sources" ; + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 40 ; - sh:path schema1:inLanguage ], - [ sh:description "URI of the enum that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + sh:order 24 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 34 ; + sh:path skos:editorialNote ], + [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:enum_uri ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml:is_a ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 49 ; + sh:path skos:closeMatch ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:order 11 ; + sh:path linkml:concepts ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 47 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 27 ; - sh:path linkml:annotations ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 43 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "the version tag of the enumeration code set" ; + sh:order 41 ; + sh:path schema1:inLanguage ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 17 ; + sh:path linkml:values_from ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 60 ; + sh:path dcterms:subject ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 46 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:code_set_tag ], + sh:order 14 ; + sh:path linkml:mixin ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 50 ; + sh:path skos:relatedMatch ], [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 24 ; + sh:order 25 ; sh:path linkml:implements ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 44 ; - sh:path skos:altLabel ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + [ sh:datatype xsd:string ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 19 ; - sh:path rdfs:label ], + sh:order 18 ; + sh:path linkml:string_serialization ], [ sh:class linkml:EnumDefinition ; sh:description "An enum definition that is used as the basis to create a new enum" ; sh:nodeKind sh:IRI ; sh:order 8 ; sh:path linkml:inherits ], - [ sh:description "Controlled terms used to categorize an element." ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; sh:order 59 ; - sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 51 ; - sh:path skos:broadMatch ], + sh:path sh:order ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 35 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 20 ; + sh:path linkml:id_prefixes ], [ sh:class linkml:ReachabilityQuery ; sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 9 ; sh:path linkml:reachable_from ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path linkml:abstract ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 35 ; + sh:order 36 ; sh:path linkml:examples ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 34 ; - sh:path skos:note ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 41 ; - sh:path rdfs:seeAlso ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 26 ; + sh:path linkml:instantiates ], + [ sh:class linkml:PermissibleValue ; + sh:description "A list of possible values for a slot range" ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml:permissible_values ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:order 39 ; - sh:path dcterms:source ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 33 ; - sh:path skos:editorialNote ], - [ sh:description "the version identifier of the enumeration code set" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:code_set_version ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path skos:inScheme ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:path linkml:imported_from ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; sh:nodeKind sh:BlankNode ; - sh:order 26 ; - sh:path linkml:extensions ], - [ sh:class linkml:LocalName ; + sh:order 7 ; + sh:path linkml:minus ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path linkml:local_names ], + sh:order 28 ; + sh:path linkml:annotations ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 48 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 33 ; + sh:path linkml:todos ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:include ], [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" ) ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; sh:order 4 ; sh:path linkml:pv_formula ], - [ sh:description "a textual description of the element's purpose and use" ; + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 40 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "the version identifier of the enumeration code set" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:code_set_version ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 61 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 28 ; - sh:path skos:definition ], - [ sh:description "Outstanding issues that needs resolution" ; sh:order 32 ; - sh:path linkml:todos ], - [ sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + sh:path linkml:deprecated ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:string_serialization ], - [ sh:class linkml:Definition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path linkml:apply_to ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 53 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; sh:order 21 ; - sh:path linkml:definition_uri ], - [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 30 ; + sh:path linkml:alt_descriptions ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 12 ; - sh:path linkml:is_a ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 20 ; - sh:path linkml:id_prefixes ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 22 ; + sh:path linkml:definition_uri ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 51 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 52 ; + sh:path skos:broadMatch ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 42 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 44 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:class linkml:Definition ; sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; sh:nodeKind sh:IRI ; sh:order 15 ; sh:path linkml:mixins ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 50 ; - sh:path skos:narrowMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "URI of the enum that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path dcterms:title ], - [ sh:class linkml:PermissibleValue ; - sh:description "A list of possible values for a slot range" ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:permissible_values ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 45 ; - sh:path skosxl:altLabel ], - [ sh:description "status of the element" ; + sh:order 0 ; + sh:path linkml:enum_uri ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 57 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 46 ; - sh:path skos:mappingRelation ], - [ sh:description "time at which the element was created" ; + sh:order 43 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; + sh:order 38 ; + sh:path skos:inScheme ], + [ sh:description "agent that contributed to the element" ; sh:order 54 ; - sh:path pav:createdOn ], - [ sh:class linkml:MatchQuery ; - sh:description "Specifies a match query that is used to calculate the list of permissible values" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:matches ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:path dcterms:contributor ], + [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:include ], - [ sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:mixin ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:order 11 ; - sh:path linkml:concepts ], - [ sh:description "An established standard to which the element conforms." ; - sh:maxCount 1 ; sh:order 23 ; - sh:path dcterms:conformsTo ], + sh:path linkml:local_names ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 36 ; + sh:order 37 ; sh:path OIO:inSubset ], - [ sh:description "agent that created the element" ; + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 52 ; - sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 48 ; - sh:path skos:closeMatch ], - [ sh:description "agent that contributed to the element" ; - sh:order 53 ; - sh:path dcterms:contributor ], - [ sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:order 57 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 45 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:abstract ], - [ sh:description "Description of why and when this element will no longer be used" ; + sh:order 29 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 31 ; - sh:path linkml:deprecated ], - [ sh:description "agent that modified the element" ; + sh:minCount 1 ; + sh:order 19 ; + sh:path rdfs:label ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 55 ; + sh:path pav:createdOn ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 58 ; + sh:path bibo:status ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 56 ; - sh:path oslc:modifiedBy ] ; + sh:path pav:lastUpdatedOn ] ; sh:targetClass linkml:EnumDefinition . linkml:TypeDefinition a sh:NodeShape ; sh:closed true ; sh:description "an element that whose instances are atomic scalar values that can be mapped to primitive types" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 36 ; - sh:path skos:inScheme ], - [ sh:description "A related resource from which the element is derived." ; + sh:property [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 38 ; + sh:order 39 ; sh:path dcterms:source ], - [ sh:description "the name of the python object that implements this type definition" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:repr ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path linkml:extensions ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 55 ; - sh:path oslc:modifiedBy ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 41 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path qudt:unit ], - [ sh:class linkml:TypeDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:union_of ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 8 ; + sh:path linkml:implicit_prefix ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 51 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:definition_uri ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 26 ; - sh:path linkml:annotations ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 32 ; - sh:path skos:editorialNote ], - [ sh:description "status of the element" ; + sh:order 23 ; + sh:path dcterms:conformsTo ], + [ sh:description "agent that contributed to the element" ; + sh:order 53 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 56 ; - sh:path bibo:status ], + sh:order 11 ; + sh:path linkml:equals_number ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 14 ; sh:path linkml:none_of ], - [ sh:description "Description of why and when this element will no longer be used" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path linkml:deprecated ], - [ sh:description "An established standard to which the element conforms." ; + sh:order 52 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 22 ; - sh:path dcterms:conformsTo ], - [ sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 10 ; - sh:path linkml:equals_string_in ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:order 38 ; + sh:path linkml:imported_from ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:pattern ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 33 ; - sh:path skos:note ], - [ sh:description "for slots with ranges of type number, the value must be equal to or lowe than this" ; + sh:order 42 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 15 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:maximum_value ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 35 ; - sh:path OIO:inSubset ], - [ sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:order 28 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 19 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml:equals_number ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:order 54 ; + sh:path pav:createdOn ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 44 ; - sh:path skosxl:altLabel ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; sh:order 29 ; - sh:path dcterms:title ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:path linkml:alt_descriptions ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; - sh:order 37 ; - sh:path linkml:imported_from ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 15 ; - sh:path linkml:exactly_one_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 49 ; - sh:path skos:narrowMatch ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 23 ; - sh:path linkml:implements ], - [ sh:description "time at which the element was last updated" ; + sh:order 13 ; + sh:path linkml:maximum_value ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 54 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 16 ; - sh:path linkml:any_of ], + sh:order 56 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 46 ; + sh:path skos:mappingRelation ], [ sh:class linkml:TypeDefinition ; sh:description "A parent type from which type properties are inherited" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:typeof ], - [ sh:description "The uri that defines the possible values for the type definition" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:type_uri ], - [ sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 34 ; + sh:path skos:note ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:equals_string ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 47 ; - sh:path skos:closeMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 28 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 46 ; - sh:path skos:exactMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 50 ; - sh:path skos:broadMatch ], - [ sh:description "the primary language used in the sources" ; + sh:order 55 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 39 ; + sh:order 40 ; sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 45 ; - sh:path skos:mappingRelation ], - [ sh:description "python base type in the LinkML runtime that implements this type definition" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:base ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:datatype xsd:string ; + sh:description "the name of the python object that implements this type definition" ; sh:maxCount 1 ; - sh:order 42 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 59 ; - sh:path schema1:keywords ], - [ sh:description "agent that created the element" ; + sh:order 3 ; + sh:path linkml:repr ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 27 ; + sh:path linkml:annotations ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:order 51 ; - sh:path pav:createdBy ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 21 ; + sh:path linkml:definition_uri ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 26 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 44 ; + sh:path skos:altLabel ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; - sh:order 57 ; - sh:path sh:order ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 24 ; - sh:path linkml:instantiates ], + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:minimum_value ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 34 ; + sh:order 35 ; sh:path linkml:examples ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 53 ; - sh:path pav:createdOn ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 49 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 18 ; - sh:path rdfs:label ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 31 ; - sh:path linkml:todos ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 40 ; - sh:path rdfs:seeAlso ], - [ sh:description "for slots with ranges of type number, the value must be equal to or higher than this" ; + sh:order 30 ; + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 48 ; + sh:path skos:closeMatch ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:minimum_value ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 43 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 24 ; + sh:path linkml:implements ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 41 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:order 31 ; + sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 50 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 16 ; + sh:path linkml:any_of ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 22 ; + sh:path linkml:local_names ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:implicit_prefix ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 48 ; - sh:path skos:relatedMatch ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 37 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 27 ; - sh:path skos:definition ], - [ sh:description "agent that contributed to the element" ; - sh:order 52 ; - sh:path dcterms:contributor ], + sh:order 20 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:class linkml:PatternExpression ; sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 6 ; sh:path linkml:structured_pattern ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 43 ; - sh:path skos:altLabel ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 19 ; - sh:path linkml:id_prefixes ], - [ sh:description "Controlled terms used to categorize an element." ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 10 ; + sh:path linkml:equals_string_in ], + [ sh:description "The uri that defines the possible values for the type definition" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:type_uri ], + [ sh:class linkml:TypeDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml:union_of ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; sh:order 58 ; - sh:path dcterms:subject ], + sh:path sh:order ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "python base type in the LinkML runtime that implements this type definition" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:base ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 17 ; sh:path linkml:all_of ], - [ sh:class linkml:LocalName ; + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 21 ; - sh:path linkml:local_names ] ; + sh:order 45 ; + sh:path skosxl:altLabel ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 59 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 18 ; + sh:path rdfs:label ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 32 ; + sh:path linkml:todos ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path qudt:unit ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 60 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 33 ; + sh:path skos:editorialNote ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 25 ; + sh:path linkml:instantiates ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 47 ; + sh:path skos:exactMatch ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 57 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:pattern ] ; sh:targetClass linkml:TypeDefinition . linkml:AnonymousEnumExpression a sh:NodeShape ; sh:closed true ; sh:description "An enum_expression that is not named" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "the identifier of an enumeration code set." ; + sh:property [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:code_set ], - [ sh:class linkml:EnumDefinition ; - sh:description "An enum definition that is used as the basis to create a new enum" ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:inherits ], - [ sh:description "the version identifier of the enumeration code set" ; + sh:order 3 ; + sh:path linkml:pv_formula ], + [ sh:class linkml:MatchQuery ; + sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:code_set_version ], - [ sh:class linkml:ReachabilityQuery ; - sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:reachable_from ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml:include ], + sh:order 9 ; + sh:path linkml:matches ], [ sh:class linkml:AnonymousEnumExpression ; sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; sh:nodeKind sh:BlankNode ; sh:order 6 ; sh:path linkml:minus ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:order 10 ; - sh:path linkml:concepts ], - [ sh:class linkml:MatchQuery ; - sh:description "Specifies a match query that is used to calculate the list of permissible values" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:matches ], [ sh:class linkml:PermissibleValue ; sh:description "A list of possible values for a slot range" ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml:permissible_values ], - [ sh:description "the version tag of the enumeration code set" ; + [ sh:datatype xsd:string ; + sh:description "the version identifier of the enumeration code set" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:code_set_version ], + [ sh:datatype xsd:string ; + sh:description "the version tag of the enumeration code set" ; sh:maxCount 1 ; sh:order 1 ; sh:path linkml:code_set_tag ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" ) ; + [ sh:class linkml:ReachabilityQuery ; + sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ] ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:reachable_from ], + [ sh:class linkml:EnumDefinition ; + sh:description "An enum definition that is used as the basis to create a new enum" ; + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml:inherits ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml:include ], + [ sh:description "the identifier of an enumeration code set." ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml:code_set ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:order 10 ; + sh:path linkml:concepts ] ; sh:targetClass linkml:AnonymousEnumExpression . linkml:PathExpression a sh:NodeShape ; sh:closed true ; sh:description "An expression that describes an abstract path from an object to another through a sequence of slot lookups" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path skos:inScheme ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 16 ; - sh:path skos:note ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:extensions ], - [ sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path skos:definition ], - [ sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:deprecated ], - [ sh:description "true if the slot is to be inversed" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:reversed ], - [ sh:description "agent that contributed to the element" ; - sh:order 35 ; - sh:path dcterms:contributor ], - [ sh:class linkml:SlotDefinition ; - sh:description "the slot to traverse" ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 33 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; + sh:order 12 ; + sh:path dcterms:title ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:traverse ], - [ sh:description "time at which the element was created" ; + sh:order 18 ; + sh:path OIO:inSubset ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:createdOn ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:examples ], + sh:order 38 ; + sh:path oslc:modifiedBy ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:order 29 ; sh:path skos:exactMatch ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 27 ; - sh:path skosxl:altLabel ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 32 ; - sh:path skos:narrowMatch ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 42 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 31 ; - sh:path skos:relatedMatch ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 15 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 28 ; - sh:path skos:mappingRelation ], [ sh:class linkml:PathExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml:all_of ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 40 ; - sh:path sh:order ], - [ sh:description "agent that modified the element" ; + [ sh:class linkml:PathExpression ; + sh:description "in a sequential list, this indicates the next member" ; sh:maxCount 1 ; - sh:order 38 ; - sh:path oslc:modifiedBy ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 41 ; - sh:path dcterms:subject ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path linkml:alt_descriptions ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:imported_from ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 39 ; - sh:path bibo:status ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 0 ; + sh:path linkml:followed_by ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; sh:order 26 ; sh:path skos:altLabel ], - [ sh:class linkml:PathExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:any_of ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 22 ; - sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 33 ; - sh:path skos:broadMatch ], [ sh:class linkml:AnonymousClassExpression ; sh:description "A range that is described as a boolean expression combining existing ranges" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 7 ; sh:path linkml:range_expression ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 37 ; + sh:path pav:lastUpdatedOn ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 24 ; sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:annotations ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:class linkml:PathExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:exactly_one_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 30 ; - sh:path skos:closeMatch ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 23 ; - sh:path rdfs:seeAlso ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 34 ; - sh:path pav:createdBy ], + sh:order 2 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 42 ; + sh:path schema1:keywords ], [ sh:class linkml:PathExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 1 ; sh:path linkml:none_of ], - [ sh:class linkml:PathExpression ; - sh:description "in a sequential list, this indicates the next member" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path skos:definition ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; + sh:order 19 ; + sh:path skos:inScheme ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml:followed_by ], + sh:order 11 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:boolean ; + sh:description "true if the slot is to be inversed" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:reversed ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 23 ; + sh:path rdfs:seeAlso ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:order 21 ; sh:path dcterms:source ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path OIO:inSubset ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path dcterms:title ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 14 ; - sh:path linkml:todos ] ; - sh:targetClass linkml:PathExpression . - -linkml:PatternExpression a sh:NodeShape ; - sh:closed true ; - sh:description "a regular expression pattern used to evaluate conformance of a string" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; + sh:order 39 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 30 ; sh:path skos:closeMatch ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 28 ; + sh:path skos:mappingRelation ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 17 ; + sh:path linkml:examples ], + [ sh:description "agent that contributed to the element" ; + sh:order 35 ; + sh:path dcterms:contributor ], + [ sh:class linkml:SlotDefinition ; + sh:description "the slot to traverse" ; sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:annotations ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:syntax ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 6 ; + sh:path linkml:traverse ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "the primary language used in the sources" ; + sh:order 40 ; + sh:path sh:order ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 32 ; + sh:path skos:narrowMatch ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 27 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:description "Controlled terms used to categorize an element." ; sh:order 36 ; - sh:path dcterms:subject ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], + sh:path pav:createdOn ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 29 ; + sh:order 34 ; sh:path pav:createdBy ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 16 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "id of the schema that defined the element" ; + sh:order 13 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:description "status of the element" ; + sh:order 22 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:annotations ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:extensions ], + [ sh:class linkml:PathExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:exactly_one_of ] ; + sh:targetClass linkml:PathExpression . + +linkml:PatternExpression a sh:NodeShape ; + sh:closed true ; + sh:description "a regular expression pattern used to evaluate conformance of a string" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:description "time at which the element was last updated" ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:order 7 ; sh:path dcterms:title ], - [ sh:description "if true then the pattern is first string interpolated" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:interpolated ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 22 ; sh:path skosxl:altLabel ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], - [ sh:description "a textual description of the element's purpose and use" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:order 5 ; sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:description "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:partial_match ], + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 3 ; sh:path linkml:extensions ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:description "Description of why and when this element will no longer be used" ; + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 0 ; + sh:path linkml:syntax ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:order 15 ; sh:path linkml:imported_from ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:boolean ; + sh:description "if true then the pattern is first string interpolated" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:interpolated ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path bibo:status ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 23 ; sh:path skos:mappingRelation ], - [ sh:description "Keywords or tags used to describe the element" ; + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; sh:order 37 ; - sh:path schema1:keywords ] ; + sh:path schema1:keywords ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:partial_match ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 35 ; + sh:path sh:order ] ; sh:targetClass linkml:PatternExpression . qudt:Unit a sh:NodeShape ; sh:closed true ; - sh: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)." ; + sh: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)." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Expression for deriving this unit from other units" ; + sh:property [ sh:datatype xsd:string ; + sh:description "associates a QUDT unit with its UCUM code (case-sensitive)." ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path qudt:ucumCode ], + [ sh:datatype xsd:string ; + sh:description "Expression for deriving this unit from other units" ; sh:maxCount 1 ; sh:order 5 ; sh:path linkml:derivation ], - [ sh:description "the spelled out name of the unit, for example, meter" ; + [ sh:datatype xsd:string ; + sh:description "the spelled out name of the unit, for example, meter" ; sh:maxCount 1 ; sh:order 2 ; sh:path rdfs:label ], - [ sh:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + [ sh:description "Concept in a vocabulary or ontology that denotes the kind of quantity being measured, e.g. length" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path qudt:hasQuantityKind ], + [ sh:description "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT" ; + sh:order 3 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:string ; + sh:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; sh:maxCount 1 ; sh:order 1 ; sh:path qudt:abbreviation ], - [ sh:description "name of the unit encoded as a symbol" ; + [ sh:datatype xsd:string ; + sh:description "name of the unit encoded as a symbol" ; sh:maxCount 1 ; sh:order 0 ; sh:path qudt:symbol ], - [ sh:description "Concept in a vocabulary or ontology that denotes the kind of quanity being measured, e.g. length" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path qudt:hasQuantityKind ], - [ sh:description "associates a QUDT unit with its UCUM code (case-sensitive)." ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; - sh:order 4 ; - sh:path qudt:ucumCode ], - [ sh:description "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT" ; - sh:order 3 ; - sh:path skos:exactMatch ], - [ sh:maxCount 1 ; sh:order 7 ; sh:path qudt:iec61360Code ] ; sh:targetClass qudt:Unit . @@ -2654,502 +2931,558 @@ linkml:ClassDefinition a sh:NodeShape ; sh:closed true ; sh:description "an element whose instances are complex objects that may have slot-value assignments" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "true if this class represents a relationship rather than an entity" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:represents_relationship ], - [ sh:class linkml:UniqueKey ; - sh:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:unique_keys ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 57 ; - sh:path skos:relatedMatch ], + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 60 ; + sh:path skos:broadMatch ], [ sh:class linkml:ClassDefinition ; sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; sh:nodeKind sh:IRI ; sh:order 5 ; sh:path linkml:union_of ], - [ sh:description "agent that contributed to the element" ; - sh:order 61 ; - sh:path dcterms:contributor ], - [ sh:class linkml:SlotDefinition ; - sh:description "expresses constraints on a group of slots for a class expression" ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path linkml:slot_conditions ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 49 ; - sh:path rdfs:seeAlso ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 40 ; - sh:path linkml:todos ], - [ sh:description "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:subclass_of ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 68 ; - sh:path schema1:keywords ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 48 ; - sh:path schema1:inLanguage ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 47 ; - sh:path dcterms:source ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 67 ; - sh:path dcterms:subject ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 34 ; - sh:path linkml:extensions ], - [ sh:class linkml:ClassDefinition ; - sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; + [ sh:class linkml:ClassDefinition ; + sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; sh:nodeKind sh:IRI ; sh:order 13 ; sh:path linkml:disjoint_with ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 27 ; - sh:path rdfs:label ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 18 ; - sh:path linkml:all_of ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 37 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 54 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 38 ; + sh:order 47 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 39 ; sh:path dcterms:title ], [ sh:class linkml:AnonymousClassExpression ; sh:description "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." ; sh:nodeKind sh:BlankNode ; sh:order 10 ; sh:path linkml:classification_rules ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 53 ; - sh:path skosxl:altLabel ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 30 ; - sh:path linkml:local_names ], - [ sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:children_are_mutually_disjoint ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 35 ; - sh:path linkml:annotations ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 17 ; sh:path linkml:none_of ], - [ sh:class linkml:SlotDefinition ; - sh:description "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:defining_slots ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 46 ; - sh:path linkml:imported_from ], - [ sh:description "Description of why and when this element will no longer be used" ; + sh:order 63 ; + sh:path pav:createdOn ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 34 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 39 ; - sh:path linkml:deprecated ], - [ sh:class linkml:SlotDefinition ; - sh:description "Inline definition of slots" ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml:attributes ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 52 ; - sh:path skos:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 54 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 58 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 44 ; - sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 56 ; - sh:path skos:closeMatch ], - [ sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; + sh:order 29 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 25 ; + sh:path linkml:values_from ], + [ sh:datatype xsd:boolean ; + sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; sh:maxCount 1 ; sh:order 11 ; sh:path linkml:slot_names_unique ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 31 ; + sh:path linkml:local_names ], + [ sh:class linkml:SlotDefinition ; + sh:description "the refinement of a slot in the context of the containing class definition." ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:slot_usage ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 43 ; + sh:path skos:note ], [ sh:class linkml:ClassRule ; sh:description "the collection of rules that apply to all members of this class" ; sh:nodeKind sh:BlankNode ; sh:order 9 ; sh:path sh:rule ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 59 ; - sh:path skos:broadMatch ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 16 ; - sh:path linkml:exactly_one_of ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 50 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + sh:order 37 ; + sh:path skos:definition ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 36 ; + sh:path linkml:annotations ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 68 ; + sh:path dcterms:subject ], + [ sh:description "agent that contributed to the element" ; + sh:order 62 ; + sh:path dcterms:contributor ], + [ sh:class linkml:ClassDefinition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path linkml:apply_to ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 59 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 55 ; + sh:path skos:mappingRelation ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 26 ; - sh:path linkml:string_serialization ], + sh:order 66 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 58 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 35 ; + sh:path linkml:extensions ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 60 ; + sh:order 61 ; sh:path pav:createdBy ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 32 ; - sh:path linkml:implements ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 43 ; - sh:path linkml:examples ], - [ sh:description "An established standard to which the element conforms." ; + [ sh:datatype xsd:boolean ; + sh:description "true if this class represents a relationship rather than an entity" ; sh:maxCount 1 ; - sh:order 31 ; + sh:order 12 ; + sh:path linkml:represents_relationship ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:order 32 ; sh:path dcterms:conformsTo ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 41 ; - sh:path skos:editorialNote ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:description "URI of the class that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; sh:maxCount 1 ; - sh:order 51 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 3 ; + sh:path linkml:class_uri ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; - sh:order 66 ; - sh:path sh:order ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 22 ; + sh:path linkml:mixin ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 45 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path linkml:definition_uri ], - [ sh:class linkml:ClassDefinition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:order 40 ; + sh:path linkml:deprecated ], + [ sh:class linkml:SlotDefinition ; + sh:description "Inline definition of slots" ; sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path linkml:apply_to ], - [ sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:order 2 ; + sh:path linkml:attributes ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 50 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 56 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" ; sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:mixin ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 7 ; + sh:path linkml:tree_root ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 36 ; - sh:path skos:definition ], + sh:order 48 ; + sh:path dcterms:source ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 46 ; + sh:path skos:inScheme ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 64 ; + sh:order 65 ; sh:path oslc:modifiedBy ], - [ sh:description "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" ; + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:tree_root ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 28 ; - sh:path linkml:id_prefixes ], - [ sh:class linkml:ClassDefinition ; - sh:description "A collection of secondary parent mixin classes from which inheritable metaslots are propagated" ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path linkml:mixins ], - [ sh:class linkml:ClassDefinition ; - sh:description "A primary parent class from which inheritable metaslots are propagated" ; + sh:order 51 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:is_a ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 55 ; - sh:path skos:exactMatch ], + sh:order 14 ; + sh:path linkml:children_are_mutually_disjoint ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 67 ; + sh:path sh:order ], [ sh:class linkml:SlotDefinition ; - sh:description "collection of slot names that are applicable to a class" ; + sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:slots ], - [ sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 63 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 62 ; - sh:path pav:createdOn ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 19 ; + sh:path linkml:slot_conditions ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:order 42 ; - sh:path skos:note ], - [ sh:description "status of the element" ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 69 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 65 ; - sh:path bibo:status ], - [ sh:description "An element in another schema which this element instantiates." ; + sh:minCount 1 ; + sh:order 27 ; + sh:path rdfs:label ], + [ sh:class linkml:UniqueKey ; + sh:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:unique_keys ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 53 ; + sh:path skos:altLabel ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:order 33 ; - sh:path linkml:instantiates ], - [ sh:description "id of the schema that defined the element" ; + sh:path linkml:implements ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; - sh:order 45 ; - sh:path skos:inScheme ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 25 ; - sh:path linkml:values_from ], + sh:order 21 ; + sh:path linkml:abstract ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 52 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 57 ; + sh:path skos:closeMatch ], [ sh:class linkml:SlotDefinition ; - sh:description "the refinement of a slot in the context of the containing class definition." ; + sh:description "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:slot_usage ], - [ sh:description "URI of the class that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + sh:order 6 ; + sh:path linkml:defining_slots ], + [ sh:class linkml:ClassDefinition ; + sh:description "A primary parent class from which inheritable metaslots are propagated" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:class_uri ], - [ sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:nodeKind sh:IRI ; + sh:order 20 ; + sh:path linkml:is_a ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:order 21 ; - sh:path linkml:abstract ], + sh:order 30 ; + sh:path linkml:definition_uri ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 15 ; - sh:path linkml:any_of ] ; + sh:path linkml:any_of ], + [ sh:class linkml:ClassDefinition ; + sh:description "A collection of secondary parent mixin classes from which inheritable metaslots are propagated" ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path linkml:mixins ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 28 ; + sh:path linkml:id_prefixes ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 38 ; + sh:path linkml:alt_descriptions ], + [ sh:description "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:subclass_of ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 18 ; + sh:path linkml:all_of ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 16 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 49 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 64 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 44 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + sh:maxCount 1 ; + sh:order 26 ; + sh:path linkml:string_serialization ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 41 ; + sh:path linkml:todos ], + [ sh:class linkml:SlotDefinition ; + sh:description "collection of slot names that are applicable to a class" ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:slots ] ; sh:targetClass linkml:ClassDefinition . linkml:Definition a sh:NodeShape ; sh:closed false ; sh:description "abstract base class for core metaclasses" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 35 ; - sh:path skos:exactMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 33 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 18 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 37 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:local_names ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:alt_descriptions ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 47 ; + sh:path sh:order ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 31 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 48 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; sh:order 9 ; - sh:path linkml:definition_uri ], - [ sh:description "A related resource from which the element is derived." ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 27 ; - sh:path dcterms:source ], + sh:minCount 1 ; + sh:order 7 ; + sh:path rdfs:label ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 26 ; + sh:path skos:inScheme ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 41 ; + sh:path pav:createdBy ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 14 ; + sh:order 15 ; sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 36 ; - sh:path skos:closeMatch ], - [ sh:description "time at which the element was last updated" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 43 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 47 ; - sh:path dcterms:subject ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 8 ; - sh:path linkml:id_prefixes ], - [ sh:description "the primary language used in the sources" ; + sh:order 32 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Definition ; + sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml:mixins ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 28 ; - sh:path schema1:inLanguage ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:order 17 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 22 ; + sh:path skos:editorialNote ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 30 ; + sh:path rdfs:seeAlso ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path rdfs:label ], - [ sh:description "status of the element" ; + sh:order 10 ; + sh:path linkml:definition_uri ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 45 ; - sh:path bibo:status ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 13 ; - sh:path linkml:instantiates ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:order 19 ; + sh:path dcterms:title ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 5 ; + sh:path linkml:values_from ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 49 ; + sh:path schema1:keywords ], + [ sh:class linkml:Definition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path OIO:inSubset ], - [ sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:order 4 ; + sh:path linkml:apply_to ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 36 ; + sh:path skos:exactMatch ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 11 ; + sh:path linkml:local_names ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 16 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:mixin ], + sh:order 6 ; + sh:path linkml:string_serialization ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 28 ; + sh:path dcterms:source ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:abstract ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 14 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 21 ; + sh:path linkml:todos ], [ sh:class linkml:Definition ; sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:is_a ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 37 ; + sh:path skos:closeMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 40 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; sh:order 29 ; - sh:path rdfs:seeAlso ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:path schema1:inLanguage ], + [ sh:description "status of the element" ; sh:maxCount 1 ; sh:order 46 ; - sh:path sh:order ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:order 23 ; - sh:path linkml:examples ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 39 ; - sh:path skos:broadMatch ], - [ sh:description "time at which the element was created" ; + sh:path skos:note ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; + sh:order 45 ; + sh:path oslc:modifiedBy ], + [ sh:description "agent that contributed to the element" ; sh:order 42 ; - sh:path pav:createdOn ], - [ sh:class linkml:Definition ; - sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; - sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:mixins ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 21 ; - sh:path skos:editorialNote ], - [ sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:abstract ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 22 ; - sh:path skos:note ], + sh:order 27 ; + sh:path linkml:imported_from ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 34 ; + sh:path skosxl:altLabel ], [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 12 ; + sh:order 13 ; sh:path linkml:implements ], - [ sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 8 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:string_serialization ], + sh:order 2 ; + sh:path linkml:mixin ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 18 ; + sh:path linkml:alt_descriptions ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 38 ; + sh:order 39 ; sh:path skos:narrowMatch ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 40 ; - sh:path pav:createdBy ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 48 ; - sh:path schema1:keywords ], - [ sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path skos:definition ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 25 ; + sh:path OIO:inSubset ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 33 ; - sh:path skosxl:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 34 ; - sh:path skos:mappingRelation ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 20 ; - sh:path linkml:todos ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 5 ; - sh:path linkml:values_from ], - [ sh:description "agent that modified the element" ; + sh:order 24 ; + sh:path linkml:examples ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 44 ; - sh:path oslc:modifiedBy ], - [ sh:description "An established standard to which the element conforms." ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path dcterms:conformsTo ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 30 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Definition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:apply_to ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 26 ; - sh:path linkml:imported_from ], - [ sh:description "id of the schema that defined the element" ; + sh:order 43 ; + sh:path pav:createdOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 38 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 25 ; - sh:path skos:inScheme ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 32 ; - sh:path skos:altLabel ], - [ sh:description "agent that contributed to the element" ; - sh:order 41 ; - sh:path dcterms:contributor ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 15 ; - sh:path linkml:annotations ] ; + sh:order 20 ; + sh:path linkml:deprecated ] ; sh:targetClass linkml:Definition . linkml:LocalName a sh:NodeShape ; sh:closed true ; sh:description "an attributed label" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "the ncname of the source of the name" ; + sh:property [ sh:datatype xsd:string ; + sh:description "the ncname of the source of the name" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; sh:path linkml:local_name_source ], - [ sh:description "a name assigned to an element in a given ontology" ; + [ sh:datatype xsd:string ; + sh:description "a name assigned to an element in a given ontology" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; @@ -3160,23 +3493,20 @@ linkml:AnonymousTypeExpression a sh:NodeShape ; sh:closed true ; sh:description "A type expression that is not a top-level named type definition. Used for nesting." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:all_of ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:property [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:structured_pattern ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; + sh:order 7 ; + sh:path linkml:minimum_value ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path linkml:any_of ], - [ sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:order 8 ; + sh:path linkml:maximum_value ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:order 4 ; sh:path linkml:equals_string ], @@ -3186,197 +3516,257 @@ linkml:AnonymousTypeExpression a sh:NodeShape ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path qudt:unit ], - [ sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:implicit_prefix ], - [ sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 5 ; - sh:path linkml:equals_string_in ], - [ sh:description "for slots with ranges of type number, the value must be equal to or lowe than this" ; + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:maximum_value ], - [ sh:description "for slots with ranges of type number, the value must be equal to or higher than this" ; + sh:order 6 ; + sh:path linkml:equals_number ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:minimum_value ], + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:structured_pattern ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 10 ; sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:implicit_prefix ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 5 ; + sh:path linkml:equals_string_in ], [ sh:class linkml:AnonymousTypeExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 9 ; sh:path linkml:none_of ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 11 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml:pattern ], - [ sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:equals_number ] ; + sh:path linkml:pattern ] ; sh:targetClass linkml:AnonymousTypeExpression . +linkml:Any a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ), + ( rdf:type ) ; + sh:targetClass linkml:Any . + linkml:AnonymousSlotExpression a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A related resource from which the element is derived." ; + sh:property [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 39 ; - sh:path dcterms:source ], - [ sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:order 57 ; + sh:path bibo:status ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 45 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:equals_expression ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 51 ; - sh:path skos:broadMatch ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:order 16 ; + sh:path linkml:equals_number ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 46 ; + sh:path skos:mappingRelation ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; + sh:order 52 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 33 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 47 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:range_expression ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 27 ; - sh:path linkml:annotations ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; + sh:order 23 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:enum_range ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 37 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 54 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:order 58 ; sh:path sh:order ], - [ sh:description "the maximum number of entries for a multivalued slot" ; + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:pattern ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:order 19 ; sh:path linkml:maximum_cardinality ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path linkml:all_of ], - [ sh:description "agent that modified the element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 48 ; + sh:path skos:closeMatch ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; - sh:order 56 ; - sh:path oslc:modifiedBy ], - [ sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:minimum_value ], + [ sh:datatype xsd:boolean ; + sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; sh:maxCount 1 ; sh:order 5 ; sh:path linkml:inlined ], - [ sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 15 ; + sh:path linkml:equals_string_in ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:equals_number ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 44 ; - sh:path skos:altLabel ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 42 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot must be present in instances of the class definition" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path dcterms:title ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:order 3 ; + sh:path linkml:required ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 21 ; - sh:path linkml:all_members ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 50 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; + sh:order 14 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 20 ; - sh:path linkml:has_member ], - [ sh: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)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:order 18 ; + sh:path linkml:minimum_cardinality ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:value_presence ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 34 ; - sh:path skos:note ], - [ sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 15 ; - sh:path linkml:equals_string_in ], + sh:order 31 ; + sh:path linkml:deprecated ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 39 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path linkml:equals_expression ], [ sh:class linkml:PatternExpression ; sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 10 ; sh:path linkml:structured_pattern ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 46 ; - sh:path skos:mappingRelation ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 32 ; - sh:path linkml:todos ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 38 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 47 ; - sh:path skos:exactMatch ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 50 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 51 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:boolean ; + sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:pattern ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 41 ; - sh:path rdfs:seeAlso ], + sh:order 6 ; + sh:path linkml:inlined_as_list ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 22 ; sh:path linkml:none_of ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 41 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:maximum_value ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 44 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 34 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 32 ; + sh:path linkml:todos ], [ sh:description "agent that contributed to the element" ; sh:order 53 ; sh:path dcterms:contributor ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 35 ; - sh:path linkml:examples ], - [ sh:description "for slots with ranges of type number, the value must be equal to or higher than this" ; + sh:order 1 ; + sh:path linkml:range_expression ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:minimum_value ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 33 ; - sh:path skos:editorialNote ], - [ sh:description "time at which the element was last updated" ; + sh:order 56 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:implicit_prefix ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 55 ; sh:path pav:lastUpdatedOn ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path qudt:unit ], - [ sh:description "Description of why and when this element will no longer be used" ; + sh:order 28 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 31 ; - sh:path linkml:deprecated ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 60 ; - sh:path schema1:keywords ], - [ sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:order 30 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:recommended ], + sh:order 38 ; + sh:path linkml:imported_from ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; @@ -3385,27 +3775,17 @@ linkml:AnonymousSlotExpression a sh:NodeShape ; [ sh:description "Controlled terms used to categorize an element." ; sh:order 59 ; sh:path dcterms:subject ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 54 ; - sh:path pav:createdOn ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 52 ; - sh:path pav:createdBy ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path OIO:inSubset ], - [ sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:implicit_prefix ], - [ sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:inlined_as_list ], + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:enum_range ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 29 ; + sh:path linkml:alt_descriptions ], [ sh:class linkml:Element ; sh:description """defines the type of the object of the slot. Given the following slot definition S1: @@ -3421,232 +3801,247 @@ implicitly asserts Y is an instance of C2 sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:range ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 45 ; - sh:path skosxl:altLabel ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 11 ; + sh:path qudt:unit ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; sh:maxCount 1 ; - sh:order 28 ; - sh:path skos:definition ], - [ sh:description "true means that the slot must be present in instances of the class definition" ; + sh:nodeKind sh:BlankNode ; + sh:order 21 ; + sh:path linkml:all_members ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:required ], - [ sh:description "the primary language used in the sources" ; + sh:nodeKind sh:BlankNode ; + sh:order 20 ; + sh:path linkml:has_member ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; sh:maxCount 1 ; - sh:order 40 ; - sh:path schema1:inLanguage ], - [ sh:description "id of the schema that defined the element" ; + sh:order 4 ; + sh:path linkml:recommended ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 37 ; - sh:path skos:inScheme ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 43 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 29 ; - sh:path linkml:alt_descriptions ], - [ sh:description "the slot must have range string and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:equals_string ], + sh:order 27 ; + sh:path linkml:annotations ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 24 ; sh:path linkml:any_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 48 ; - sh:path skos:closeMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 49 ; + sh:path skos:relatedMatch ], + [ sh: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)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path linkml:value_presence ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 35 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 60 ; + sh:path schema1:keywords ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 23 ; - sh:path linkml:exactly_one_of ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 25 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 42 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "for slots with ranges of type number, the value must be equal to or lowe than this" ; + sh:order 40 ; + sh:path schema1:inLanguage ] ; + sh:targetClass linkml:AnonymousSlotExpression . + +skosxl:Label a sh:NodeShape ; + sh:closed true ; + sh:description "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:order 8 ; - sh:path linkml:maximum_value ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 49 ; - sh:path skos:relatedMatch ], - [ sh:description "the minimum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:minimum_cardinality ], - [ sh:description "status of the element" ; + sh:path linkml:deprecated ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 57 ; - sh:path bibo:status ], + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 43 ; - sh:path linkml:deprecated_element_has_possible_replacement ] ; - sh:targetClass linkml:AnonymousSlotExpression . - -skosxl:Label a sh:NodeShape ; - sh:closed true ; - sh:description "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], - [ sh:description "time at which the element was last updated" ; + sh:order 34 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 32 ; sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:order 24 ; sh:path skos:exactMatch ], - [ sh:description "The category or categories of an alias. This can be drawn from any relevant vocabulary" ; - sh:order 2 ; - sh:path dcterms:subject ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "time at which the element was created" ; + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:description "The literal lexical form of a structured alias; i.e the actual alias value." ; + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "The literal lexical form of a structured alias; i.e the actual alias value." ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; sh:path skosxl:literalForm ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:description "agent that created the element" ; + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path skosxl:altLabel ], - [ sh:description "Description of why and when this element will no longer be used" ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:description "status of the element" ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:description "Keywords or tags used to describe the element" ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; sh:order 36 ; sh:path schema1:keywords ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "a textual description of the element's purpose and use" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ], + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "The relationship between an element and its alias." ; + sh:in ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path rdf:predicate ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; sh:order 4 ; sh:path linkml:annotations ], - [ sh:description "the primary language used in the sources" ; + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:order 17 ; sh:path schema1:inLanguage ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; sh:order 6 ; sh:path linkml:alt_descriptions ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], + [ sh:description "The category or categories of an alias. This can be drawn from any relevant vocabulary" ; + sh:order 2 ; + sh:path dcterms:subject ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:order 16 ; sh:path dcterms:source ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 22 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:imported_from ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 18 ; sh:path rdfs:seeAlso ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:description "The relationship between an element and its alias." ; - sh:in ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path rdf:predicate ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:order 35 ; - sh:path sh:order ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ] ; + sh:path sh:order ] ; sh:targetClass skosxl:Label . linkml:AltDescription a sh:NodeShape ; sh:closed true ; sh:description "an attributed description" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "text of an attributed description" ; + sh:property [ sh:datatype xsd:string ; + sh:description "text of an attributed description" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; sh:path linkml:alt_description_text ], - [ sh:description "the source of an attributed description" ; + [ sh:datatype xsd:string ; + sh:description "the source of an attributed description" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; @@ -3663,243 +4058,421 @@ linkml:Example a sh:NodeShape ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml:value_object ], - [ sh:description "example value" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path skos:example ], - [ sh:description "description of what the value is doing" ; + [ sh:datatype xsd:string ; + sh:description "description of what the value is doing" ; sh:maxCount 1 ; sh:order 1 ; - sh:path linkml:value_description ] ; + sh:path linkml:value_description ], + [ sh:datatype xsd:string ; + sh:description "example value" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path skos:example ] ; sh:targetClass linkml:Example . linkml:Annotation a sh:NodeShape ; sh:closed true ; sh:description "a tag/value pair with the semantics of OWL Annotation" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:property [ sh:class linkml:Any ; + sh:description "the actual annotation" ; + sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml:annotations ], + sh:order 2 ; + sh:path linkml:extension_value ], [ sh:description "a tag associated with an extension" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; sh:path linkml:extension_tag ], - [ sh:description "the actual annotation" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path linkml:extension_value ] ; + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml:annotations ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ] ; sh:targetClass linkml:Annotation . linkml:AnonymousClassExpression a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path skosxl:altLabel ], - [ sh:description "the primary language used in the sources" ; + sh:property [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 35 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; sh:order 20 ; sh:path schema1:inLanguage ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 13 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 30 ; - sh:path skos:narrowMatch ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 12 ; - sh:path linkml:todos ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 24 ; - sh:path skos:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 29 ; - sh:path skos:relatedMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 31 ; - sh:path skos:broadMatch ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 14 ; - sh:path skos:note ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path dcterms:source ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 26 ; - sh:path skos:mappingRelation ], + sh:order 18 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 38 ; + sh:path sh:order ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 15 ; + sh:path linkml:examples ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 23 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 34 ; - sh:path pav:createdOn ], - [ sh:description "time at which the element was last updated" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:all_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 27 ; - sh:path skos:exactMatch ], + sh:order 32 ; + sh:path pav:createdBy ], [ sh:class linkml:SlotDefinition ; sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; sh:order 5 ; sh:path linkml:slot_conditions ], - [ sh:description "Description of why and when this element will no longer be used" ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 30 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 28 ; + sh:path skos:closeMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 26 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 14 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 31 ; + sh:path skos:broadMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 33 ; + sh:path dcterms:contributor ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 39 ; + sh:path dcterms:subject ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 37 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:order 11 ; sh:path linkml:deprecated ], - [ sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path skos:definition ], - [ sh:description "Keywords or tags used to describe the element" ; + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; sh:order 40 ; sh:path schema1:keywords ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 22 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:extensions ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 13 ; + sh:path skos:editorialNote ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; sh:order 9 ; sh:path linkml:alt_descriptions ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 27 ; + sh:path skos:exactMatch ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path dcterms:source ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:extensions ], - [ sh:description "agent that created the element" ; + sh:order 7 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:createdBy ], + sh:order 8 ; + sh:path skos:definition ], [ sh:class linkml:Definition ; sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:is_a ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 39 ; - sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 24 ; + sh:path skos:altLabel ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:all_of ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 2 ; sh:path linkml:exactly_one_of ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:none_of ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:annotations ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 36 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 12 ; + sh:path linkml:todos ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 16 ; sh:path OIO:inSubset ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 36 ; - sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 28 ; - sh:path skos:closeMatch ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 38 ; - sh:path sh:order ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 29 ; + sh:path skos:relatedMatch ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 15 ; - sh:path linkml:examples ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path dcterms:title ], + sh:order 25 ; + sh:path skosxl:altLabel ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 21 ; sh:path rdfs:seeAlso ], - [ sh:description "agent that contributed to the element" ; - sh:order 33 ; - sh:path dcterms:contributor ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path bibo:status ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:imported_from ], [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if at least one of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:any_of ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path skos:inScheme ] ; + sh:order 3 ; + sh:path linkml:none_of ] ; sh:targetClass linkml:AnonymousClassExpression . linkml:SlotDefinition a sh:NodeShape ; sh:closed true ; sh:description "an element that describes how instances are related to other instances" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:SlotDefinition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:property [ sh:datatype xsd:boolean ; + sh:description "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; + sh:maxCount 1 ; + sh:order 24 ; + sh:path linkml:is_class_field ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 112 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:maxCount 1 ; + sh:order 41 ; + sh:path linkml:recommended ], + [ sh:class linkml:SlotDefinition ; + sh:description "A collection of secondary parent mixin slots from which inheritable metaslots are propagated" ; sh:nodeKind sh:IRI ; - sh:order 67 ; - sh:path linkml:apply_to ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:order 66 ; + sh:path linkml:mixins ], + [ sh:description "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:slot_uri ], + [ sh:description "agent that contributed to the element" ; + sh:order 105 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:maxCount 1 ; + sh:order 54 ; + sh:path linkml:equals_expression ], + [ sh:datatype xsd:boolean ; + sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:multivalued ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 81 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 89 ; + sh:path skos:inScheme ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 58 ; + sh:path linkml:all_members ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 100 ; + sh:path skos:closeMatch ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:order 73 ; + sh:path linkml:definition_uri ], + [ sh:datatype xsd:boolean ; + sh:description "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:designates_type ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 111 ; + sh:path dcterms:subject ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 77 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:string ; + sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path skos:prefLabel ], + [ sh:class linkml:SlotDefinition ; + sh:description "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path rdfs:subPropertyOf ], + [ sh:class linkml:SlotDefinition ; + sh:description "transitive_form_of including the reflexive case" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 26 ; + sh:path linkml:reflexive_transitive_form_of ], + [ sh:datatype xsd:boolean ; + sh:description "True means that the key slot(s) uniquely identify the elements within a single container" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:key ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 110 ; + sh:path sh:order ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 95 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "a name that is used in the singular form" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml:singular_name ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot must be present in instances of the class definition" ; + sh:maxCount 1 ; + sh:order 40 ; + sh:path linkml:required ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 104 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:boolean ; + sh:description "If True, then there must be no duplicates in the elements of a multivalued slot" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path linkml:list_elements_unique ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 38 ; + sh:path linkml:range_expression ], + [ sh:datatype xsd:string ; + sh:description "a textual descriptor that indicates the role played by the slot range" ; + sh:maxCount 1 ; + sh:order 27 ; + sh:path linkml:role ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 68 ; + sh:path linkml:values_from ], + [ sh:datatype xsd:boolean ; + sh:description "If True, then the relationship between the slot domain and range is many to one or many to many" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:shared ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 93 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 45 ; + sh:path linkml:maximum_value ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 76 ; + sh:path linkml:implements ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 70 ; - sh:path rdfs:label ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 72 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 101 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 85 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 99 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 80 ; - sh:path linkml:alt_descriptions ], - [ sh:description "a textual descriptor that indicates the role played by the slot range" ; + sh:order 59 ; + sh:path linkml:none_of ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; - sh:order 27 ; - sh:path linkml:role ], - [ sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:order 49 ; + sh:path linkml:implicit_prefix ], + [ sh:class linkml:SlotDefinition ; + sh:description "allows for grouping of related slots into a grouping slot that serves the role of a group" ; sh:maxCount 1 ; - sh:order 53 ; - sh:path linkml:equals_number ], - [ sh:class linkml:LocalName ; + sh:nodeKind sh:IRI ; + sh:order 31 ; + sh:path sh:group ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 73 ; - sh:path linkml:local_names ], - [ sh:class linkml:ClassDefinition ; - sh:description """defines the type of the subject of the slot. Given the following slot definition + sh:order 97 ; + sh:path skosxl:altLabel ], + [ sh:class linkml:Element ; + sh:description """defines the type of the object of the slot. Given the following slot definition S1: domain: C1 range: C2 @@ -3907,178 +4480,140 @@ the declaration X: S1: Y -implicitly asserts that X is an instance of C1 +implicitly asserts Y is an instance of C2 """ ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:domain ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 89 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 101 ; - sh:path skos:narrowMatch ], - [ sh:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml:identifier ], - [ sh:description "the value of the slot must equal the value of the evaluated expression" ; - sh:maxCount 1 ; - sh:order 54 ; - sh:path linkml:equals_expression ], - [ sh:description "If True, then the relationship between the slot domain and range is many to one or many to many" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:shared ], - [ sh:description "If True, then there must be no duplicates in the elements of a multivalued slot" ; + sh:order 37 ; + sh:path linkml:range ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:list_elements_unique ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 86 ; - sh:path linkml:examples ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 84 ; - sh:path skos:editorialNote ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 61 ; - sh:path linkml:any_of ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 92 ; - sh:path rdfs:seeAlso ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 57 ; - sh:path linkml:has_member ], - [ sh:description "a name that is used in the singular form" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:singular_name ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:boolean ; + sh:description "true if this slot is a grouping slot" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 47 ; - sh:path linkml:structured_pattern ], - [ sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. + sh:order 32 ; + sh:path linkml:is_grouping_slot ], + [ sh:class linkml:SlotDefinition ; + sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; + sh:nodeKind sh:IRI ; + sh:order 34 ; + sh:path linkml:disjoint_with ], + [ sh:datatype xsd:string ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; sh:maxCount 1 ; sh:order 69 ; sh:path linkml:string_serialization ], + [ sh:datatype xsd:boolean ; + sh:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path linkml:identifier ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the *value* of a slot is inherited by subclasses" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:inherited ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 87 ; + sh:order 88 ; sh:path OIO:inSubset ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 58 ; - sh:path linkml:all_members ], - [ sh:class linkml:SlotDefinition ; - sh:description "If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transitive (3) d holds whenever s holds and there are no intermediates, and s is not reflexive" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:transitive_form_of ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 97 ; + sh:order 98 ; sh:path skos:mappingRelation ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 75 ; - sh:path linkml:implements ], - [ sh:description "If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:list_elements_ordered ], - [ sh:description "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:locally_reflexive ], - [ sh:description "true means that the *value* of a slot is inherited by subclasses" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:inherited ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 71 ; - sh:path linkml:id_prefixes ], - [ sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 82 ; - sh:path linkml:deprecated ], - [ sh:description "for slots with ranges of type number, the value must be equal to or lowe than this" ; - sh:maxCount 1 ; - sh:order 45 ; - sh:path linkml:maximum_value ], - [ sh:class linkml:SlotDefinition ; - sh:description "transitive_form_of including the reflexive case" ; + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path linkml:reflexive_transitive_form_of ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 95 ; - sh:path skos:altLabel ], - [ sh:description "agent that created the element" ; + sh:nodeKind sh:BlankNode ; + sh:order 47 ; + sh:path linkml:structured_pattern ], + [ sh:datatype xsd:boolean ; + sh:description "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; sh:maxCount 1 ; - sh:order 103 ; - sh:path pav:createdBy ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 110 ; - sh:path dcterms:subject ], - [ sh:description "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." ; + sh:order 22 ; + sh:path linkml:transitive ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:slot_uri ], - [ sh:description "the minimum number of entries for a multivalued slot" ; + sh:order 75 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:string ; + sh:description "The name of the slot referenced in the slot_usage" ; sh:maxCount 1 ; - sh:order 55 ; - sh:path linkml:minimum_cardinality ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 76 ; - sh:path linkml:instantiates ], - [ sh:description "time at which the element was last updated" ; + sh:order 29 ; + sh:path linkml:usage_slot_name ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 87 ; + sh:path linkml:examples ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 106 ; + sh:order 107 ; sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 100 ; - sh:path skos:relatedMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:datatype xsd:boolean ; + sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; sh:maxCount 1 ; - sh:order 81 ; - sh:path dcterms:title ], - [ sh:description "a textual description of the element's purpose and use" ; + sh:order 43 ; + sh:path linkml:inlined_as_list ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 74 ; + sh:path linkml:local_names ], + [ sh:class linkml:SlotDefinition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 67 ; + sh:path linkml:apply_to ], + [ sh:datatype xsd:boolean ; + sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; sh:maxCount 1 ; - sh:order 79 ; - sh:path skos:definition ], - [ sh:description "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; + sh:order 35 ; + sh:path linkml:children_are_mutually_disjoint ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 86 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 52 ; + sh:path linkml:equals_string_in ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:designates_type ], - [ sh:description "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; + sh:nodeKind sh:BlankNode ; + sh:order 48 ; + sh:path qudt:unit ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:is_class_field ], - [ sh:description "Outstanding issues that needs resolution" ; sh:order 83 ; - sh:path linkml:todos ], - [ sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:path linkml:deprecated ], + [ sh:class linkml:SlotDefinition ; + sh:description "indicates that any instance of d s r implies that there is also an instance of r s' d" ; sh:maxCount 1 ; - sh:order 49 ; - sh:path linkml:implicit_prefix ], - [ sh:description """function that provides a default value for the slot. Possible values for this slot are defined in linkml.utils.ifabsent_functions.default_library: + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path owl:inverseOf ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 60 ; + sh:path linkml:exactly_one_of ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 61 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:string ; + sh:description """function that provides a default value for the slot. Possible values for this slot are defined in linkml.utils.ifabsent_functions.default_library: * [Tt]rue -- boolean True * [Ff]alse -- boolean False * bnode -- blank node identifier @@ -4093,155 +4628,150 @@ For example, a Measurement class may have 3 fields: unit, value, and string_valu sh:maxCount 1 ; sh:order 6 ; sh:path linkml:ifabsent ], - [ sh:description "The name of the slot referenced in the slot_usage" ; + [ sh:datatype xsd:boolean ; + sh:description "If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path linkml:usage_slot_name ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 8 ; + sh:path linkml:list_elements_ordered ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 108 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 62 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 80 ; + sh:path skos:definition ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 44 ; + sh:path linkml:minimum_value ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 96 ; + sh:path skos:altLabel ], + [ sh: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)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; sh:maxCount 1 ; - sh:order 109 ; - sh:path sh:order ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 50 ; + sh:path linkml:value_presence ], + [ sh:datatype xsd:string ; + sh:description "If present, slot is read only. Text explains why" ; sh:maxCount 1 ; - sh:order 72 ; - sh:path linkml:definition_uri ], - [ sh:description "time at which the element was created" ; + sh:order 5 ; + sh:path linkml:readonly ], + [ sh:class linkml:PathExpression ; + sh:description "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; sh:maxCount 1 ; - sh:order 105 ; - sh:path pav:createdOn ], - [ sh:description "the maximum number of entries for a multivalued slot" ; + sh:nodeKind sh:BlankNode ; + sh:order 33 ; + sh:path linkml:path_rule ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 71 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:order 56 ; sh:path linkml:maximum_cardinality ], - [ sh:description "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" ; - sh:maxCount 1 ; - sh:order 21 ; - sh:path linkml:asymmetric ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 68 ; - sh:path linkml:values_from ], - [ sh:class linkml:SlotDefinition ; - sh:description "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 16 ; - sh:path rdfs:subPropertyOf ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 85 ; - sh:path skos:note ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 94 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:order 106 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 48 ; - sh:path qudt:unit ], - [ sh:description "agent that contributed to the element" ; - sh:order 104 ; - sh:path dcterms:contributor ], - [ sh:description "If s is irreflexive, then there exists no i such i.s=i" ; + sh:order 55 ; + sh:path linkml:minimum_cardinality ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:irreflexive ], - [ sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; + sh:order 91 ; + sh:path dcterms:source ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 103 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:boolean ; + sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; sh:maxCount 1 ; sh:order 42 ; sh:path linkml:inlined ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 59 ; - sh:path linkml:none_of ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 96 ; - sh:path skosxl:altLabel ], - [ sh:class linkml:Definition ; - sh:description "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path linkml:owner ], [ sh:class linkml:SlotDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; + sh:description "A primary parent slot from which inheritable metaslots are propagated" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path linkml:union_of ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 63 ; + sh:path linkml:is_a ], + [ sh:datatype xsd:boolean ; + sh:description "If s is irreflexive, then there exists no i such i.s=i" ; sh:maxCount 1 ; - sh:order 90 ; - sh:path dcterms:source ], - [ sh:description "If s is symmetric, and i.s=v, then v.s=i" ; + sh:order 20 ; + sh:path linkml:irreflexive ], + [ sh:datatype xsd:boolean ; + sh:description "If s is symmetric, and i.s=v, then v.s=i" ; sh:maxCount 1 ; sh:order 17 ; sh:path linkml:symmetric ], - [ sh:description "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; - sh:in ( rdf:subject rdf:object rdf:predicate "NODE" "OTHER_ROLE" ) ; + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; - sh:order 30 ; - sh:path linkml:relational_role ], - [ sh:class linkml:SlotDefinition ; - sh:description "A collection of secondary parent mixin slots from which inheritable metaslots are propagated" ; + sh:order 65 ; + sh:path linkml:mixin ], + [ sh:class linkml:ClassDefinition ; + sh:description "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; sh:nodeKind sh:IRI ; - sh:order 66 ; - sh:path linkml:mixins ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 60 ; - sh:path linkml:exactly_one_of ], - [ sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:order 15 ; + sh:path linkml:domain_of ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:order 53 ; + sh:path linkml:equals_number ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; sh:order 64 ; sh:path linkml:abstract ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 62 ; - sh:path linkml:all_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 102 ; - sh:path skos:broadMatch ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 78 ; + sh:order 79 ; sh:path linkml:annotations ], - [ sh:description "true if this slot is a grouping slot" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path linkml:is_grouping_slot ], - [ sh:class linkml:ClassDefinition ; - sh:description "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path linkml:domain_of ], - [ sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 52 ; - sh:path linkml:equals_string_in ], - [ sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 88 ; - sh:path skos:inScheme ], - [ sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:order 51 ; sh:path linkml:equals_string ], - [ sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + [ sh:class linkml:Definition ; + sh:description "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; sh:maxCount 1 ; - sh:order 65 ; - sh:path linkml:mixin ], + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path linkml:owner ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 94 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 77 ; + sh:order 78 ; sh:path linkml:extensions ], - [ sh:class linkml:Element ; - sh:description """defines the type of the object of the slot. Given the following slot definition + [ sh:datatype xsd:boolean ; + sh:description "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:locally_reflexive ], + [ sh:class linkml:ClassDefinition ; + sh:description """defines the type of the subject of the slot. Given the following slot definition S1: domain: C1 range: C2 @@ -4249,315 +4779,280 @@ the declaration X: S1: Y -implicitly asserts Y is an instance of C2 +implicitly asserts that X is an instance of C1 """ ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path linkml:range ], - [ sh:class linkml:PathExpression ; - sh:description "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 33 ; - sh:path linkml:path_rule ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 107 ; - sh:path oslc:modifiedBy ], - [ sh:class linkml:SlotDefinition ; - sh:description "A primary parent slot from which inheritable metaslots are propagated" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 63 ; - sh:path linkml:is_a ], - [ sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; - sh:maxCount 1 ; - sh:order 41 ; - sh:path linkml:recommended ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 111 ; - sh:path schema1:keywords ], - [ sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; - sh:maxCount 1 ; - sh:order 13 ; - sh:path skos:prefLabel ], - [ sh:description "true means that the slot must be present in instances of the class definition" ; - sh:maxCount 1 ; - sh:order 40 ; - sh:path linkml:required ], - [ sh:description "for slots with ranges of type number, the value must be equal to or higher than this" ; - sh:maxCount 1 ; - sh:order 44 ; - sh:path linkml:minimum_value ], - [ sh:description "If present, slot is read only. Text explains why" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:readonly ], - [ sh: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)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; - sh:maxCount 1 ; - sh:order 50 ; - sh:path linkml:value_presence ], - [ sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:multivalued ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 99 ; - sh:path skos:closeMatch ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 93 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "If s is reflexive, then i.s=i for all instances i" ; + sh:order 1 ; + sh:path linkml:domain ], + [ sh:datatype xsd:boolean ; + sh:description "If s is reflexive, then i.s=i for all instances i" ; sh:maxCount 1 ; sh:order 18 ; sh:path linkml:reflexive ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 108 ; - sh:path bibo:status ], - [ sh:class linkml:SlotDefinition ; - sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path linkml:disjoint_with ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 39 ; - sh:path linkml:enum_range ], - [ sh:description "True means that this slot was defined in a slot_usage situation" ; + [ sh:description "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; + sh:in ( rdf:subject rdf:object rdf:predicate "NODE" "OTHER_ROLE" ) ; sh:maxCount 1 ; - sh:order 28 ; - sh:path linkml:is_usage_slot ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:order 30 ; + sh:path linkml:relational_role ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 38 ; - sh:path linkml:range_expression ], - [ sh:class linkml:SlotDefinition ; - sh:description "indicates that any instance of d s r implies that there is also an instance of r s' d" ; + sh:order 57 ; + sh:path linkml:has_member ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path owl:inverseOf ], + sh:order 82 ; + sh:path dcterms:title ], [ sh:class linkml:SlotDefinition ; - sh:description "allows for grouping of related slots into a grouping slot that serves the role of a group" ; + sh:description "If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transitive (3) d holds whenever s holds and there are no intermediates, and s is not reflexive" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path sh:group ], - [ sh:description "True means that the key slot(s) uniquely identify the elements within a single container" ; + sh:order 25 ; + sh:path linkml:transitive_form_of ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:key ], - [ sh:description "the primary language used in the sources" ; + sh:order 109 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 91 ; - sh:path schema1:inLanguage ], - [ sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; + sh:minCount 1 ; + sh:order 70 ; + sh:path rdfs:label ], + [ sh:datatype xsd:boolean ; + sh:description "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path linkml:children_are_mutually_disjoint ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 98 ; - sh:path skos:exactMatch ], - [ sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:order 21 ; + sh:path linkml:asymmetric ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 46 ; - sh:path linkml:pattern ], - [ sh:description "An established standard to which the element conforms." ; + sh:order 90 ; + sh:path linkml:imported_from ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; - sh:order 74 ; - sh:path dcterms:conformsTo ], - [ sh:description "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; + sh:nodeKind sh:BlankNode ; + sh:order 39 ; + sh:path linkml:enum_range ], + [ sh:class linkml:SlotDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path linkml:union_of ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 84 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 102 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:boolean ; + sh:description "True means that this slot was defined in a slot_usage situation" ; sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:transitive ], - [ sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; + sh:order 28 ; + sh:path linkml:is_usage_slot ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; - sh:order 43 ; - sh:path linkml:inlined_as_list ] ; + sh:order 46 ; + sh:path linkml:pattern ] ; sh:targetClass linkml:SlotDefinition . linkml:SubsetDefinition a sh:NodeShape ; sh:closed true ; sh:description "an element that can be used to group other metamodel elements" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 16 ; - sh:path linkml:examples ], - [ sh:description "Outstanding issues that needs resolution" ; - sh:order 13 ; - sh:path linkml:todos ], - [ sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path rdfs:label ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; + sh:property [ sh:description "Controlled terms used to categorize an element." ; + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 23 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 29 ; - sh:path skos:closeMatch ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 6 ; - sh:path linkml:instantiates ], + sh:path rdfs:seeAlso ], + [ sh:description "agent that contributed to the element" ; + sh:order 35 ; + sh:path dcterms:contributor ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 32 ; + sh:order 33 ; sh:path skos:broadMatch ], - [ sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 27 ; - sh:path skos:mappingRelation ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 38 ; - sh:path bibo:status ], - [ sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 15 ; - sh:path skos:note ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 32 ; + sh:path skos:narrowMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 8 ; - sh:path linkml:annotations ], - [ sh:description "An established standard to which the element conforms." ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path dcterms:conformsTo ], - [ sh:description "Keywords or tags used to describe the element" ; - sh:order 41 ; - sh:path schema1:keywords ], - [ sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 21 ; - sh:path schema1:inLanguage ], - [ sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 14 ; - sh:path skos:editorialNote ], - [ sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 1 ; - sh:path linkml:id_prefixes ], - [ sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:path linkml:extensions ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 39 ; + sh:order 40 ; sh:path sh:order ], - [ sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path skos:definition ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 37 ; - sh:path oslc:modifiedBy ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 36 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:definition_uri ], - [ sh:description "Description of why and when this element will no longer be used" ; + sh:order 5 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:deprecated ], + sh:order 10 ; + sh:path skos:definition ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 10 ; + sh:order 11 ; sh:path linkml:alt_descriptions ], - [ sh:description "time at which the element was last updated" ; + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:annotations ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:lastUpdatedOn ], + sh:order 38 ; + sh:path oslc:modifiedBy ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 24 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 16 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path rdfs:label ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 26 ; + sh:order 27 ; sh:path skosxl:altLabel ], - [ sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 25 ; - sh:path skos:altLabel ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path dcterms:source ], - [ sh:description "agent that contributed to the element" ; - sh:order 34 ; - sh:path dcterms:contributor ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; sh:order 30 ; - sh:path skos:relatedMatch ], + sh:path skos:closeMatch ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 1 ; + sh:path linkml:id_prefixes ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 17 ; + sh:order 18 ; sh:path OIO:inSubset ], - [ sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:local_names ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 7 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 26 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 19 ; + sh:order 22 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 20 ; sh:path linkml:imported_from ], [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 5 ; + sh:order 6 ; sh:path linkml:implements ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 31 ; - sh:path skos:narrowMatch ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 40 ; - sh:path dcterms:subject ], - [ sh:description "id of the schema that defined the element" ; + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 18 ; - sh:path skos:inScheme ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 22 ; - sh:path rdfs:seeAlso ], + sh:order 2 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 33 ; + sh:order 34 ; sh:path pav:createdBy ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path skos:inScheme ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 21 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path linkml:deprecated ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 17 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 37 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:definition_uri ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 28 ; + sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 29 ; sh:path skos:exactMatch ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:local_names ], - [ sh:description "time at which the element was created" ; + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path pav:createdOn ] ; + sh:order 39 ; + sh:path bibo:status ] ; sh:targetClass linkml:SubsetDefinition . linkml:Extension a sh:NodeShape ; sh:closed true ; sh:description "a tag/value pair used to add non-model information to an entry" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "the actual annotation" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path linkml:extension_value ], - [ sh:class linkml:Extension ; + sh:property [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 2 ; @@ -4566,6 +5061,13 @@ linkml:Extension a sh:NodeShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path linkml:extension_tag ] ; + sh:path linkml:extension_tag ], + [ sh:class linkml:Any ; + sh:description "the actual annotation" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:extension_value ] ; sh:targetClass linkml:Extension . diff --git a/linkml_runtime/linkml_model/shex/meta.shex b/linkml_runtime/linkml_model/shex/meta.shex index 4c5a60dc..893c9e5e 100644 --- a/linkml_runtime/linkml_model/shex/meta.shex +++ b/linkml_runtime/linkml_model/shex/meta.shex @@ -99,7 +99,9 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; + [ + + ] ? ; @ * ; @ * ; @ * ; @@ -177,13 +179,14 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; - @ ? ; + @ ? ; + @ ? ; @ ? ; @ ? ; qudt:unit @ ? ; @ ? ; - @ ? ; + [ + ] ? ; @ ? ; @ * ; @ ? ; @@ -211,8 +214,8 @@ PREFIX oboInOwl: @ ? ; @ * ; @ ? ; - @ ? ; - @ ? ; + @ ? ; + @ ? ; @ * ; @ * ; @ * ; @@ -409,6 +412,7 @@ PREFIX oboInOwl: & ; rdf:type [ ] ? ; @ * ; + @ ? ; @ ? ; @ * ; dcterms:conformsTo @ ? ; @@ -463,7 +467,9 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; + [ + + ] ? ; @ * ; @ * ; @ * ; @@ -482,7 +488,9 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; + [ + + ] ? ; @ * ; @ * ; @ * ; @@ -846,7 +854,8 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; + [ rdf:subject rdf:object rdf:predicate + ] ? ; sh:group @ ? ; @ ? ; @ ? ; @@ -862,13 +871,14 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; - @ ? ; + @ ? ; + @ ? ; @ ? ; @ ? ; qudt:unit @ ? ; @ ? ; - @ ? ; + [ + ] ? ; @ ? ; @ * ; @ ? ; @@ -896,13 +906,14 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; - @ ? ; - @ ? ; + @ ? ; + @ ? ; @ ? ; @ ? ; qudt:unit @ ? ; @ ? ; - @ ? ; + [ + ] ? ; @ ? ; @ * ; @ ? ; @@ -930,7 +941,7 @@ PREFIX oboInOwl: & ; rdf:type [ ] ? ; skosxl:literalForm @ ; - rdf:predicate @ ? ; + rdf:predicate [ skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ] ? ; dcterms:subject @ * ; @ * ; @ * ; @@ -996,8 +1007,8 @@ PREFIX oboInOwl: @ ? ; @ * ; @ ? ; - @ ? ; - @ ? ; + @ ? ; + @ ? ; @ * ; @ * ; @ * ; @@ -1017,8 +1028,8 @@ PREFIX oboInOwl: @ ? ; @ * ; @ ? ; - @ ? ; - @ ? ; + @ ? ; + @ ? ; @ * ; @ * ; @ * ; diff --git a/linkml_runtime/linkml_model/sqlschema/meta.sql b/linkml_runtime/linkml_model/sqlschema/meta.sql index e1544f2f..8e757707 100644 --- a/linkml_runtime/linkml_model/sqlschema/meta.sql +++ b/linkml_runtime/linkml_model/sqlschema/meta.sql @@ -117,8 +117,8 @@ CREATE TABLE anonymous_slot_expression ( recommended BOOLEAN, inlined BOOLEAN, inlined_as_list BOOLEAN, - minimum_value INTEGER, - maximum_value INTEGER, + minimum_value TEXT, + maximum_value TEXT, pattern TEXT, structured_pattern TEXT, unit TEXT, @@ -147,8 +147,8 @@ CREATE TABLE anonymous_type_expression ( equals_string TEXT, equals_string_in TEXT, equals_number INTEGER, - minimum_value INTEGER, - maximum_value INTEGER, + minimum_value TEXT, + maximum_value TEXT, none_of TEXT, exactly_one_of TEXT, any_of TEXT, @@ -158,6 +158,7 @@ CREATE TABLE anonymous_type_expression ( CREATE TABLE class_definition ( name TEXT NOT NULL, + id_prefixes_are_closed BOOLEAN, definition_uri TEXT, local_names TEXT, conforms_to TEXT, @@ -212,6 +213,7 @@ CREATE TABLE class_definition ( CREATE TABLE enum_definition ( name TEXT NOT NULL, + id_prefixes_are_closed BOOLEAN, definition_uri TEXT, local_names TEXT, conforms_to TEXT, @@ -469,6 +471,7 @@ CREATE TABLE structured_alias ( CREATE TABLE subset_definition ( name TEXT NOT NULL, + id_prefixes_are_closed BOOLEAN, definition_uri TEXT, local_names TEXT, conforms_to TEXT, @@ -498,6 +501,7 @@ CREATE TABLE subset_definition ( CREATE TABLE type_definition ( name TEXT NOT NULL, + id_prefixes_are_closed BOOLEAN, definition_uri TEXT, local_names TEXT, conforms_to TEXT, @@ -533,8 +537,8 @@ CREATE TABLE type_definition ( implicit_prefix TEXT, equals_string TEXT, equals_number INTEGER, - minimum_value INTEGER, - maximum_value INTEGER, + minimum_value TEXT, + maximum_value TEXT, none_of TEXT, exactly_one_of TEXT, any_of TEXT, @@ -603,6 +607,7 @@ CREATE TABLE class_rule ( ); CREATE TABLE schema_definition ( + id_prefixes_are_closed BOOLEAN, definition_uri TEXT, local_names TEXT, conforms_to TEXT, @@ -651,6 +656,7 @@ CREATE TABLE schema_definition ( CREATE TABLE slot_definition ( name TEXT NOT NULL, + id_prefixes_are_closed BOOLEAN, definition_uri TEXT, local_names TEXT, conforms_to TEXT, @@ -725,8 +731,8 @@ CREATE TABLE slot_definition ( recommended BOOLEAN, inlined BOOLEAN, inlined_as_list BOOLEAN, - minimum_value INTEGER, - maximum_value INTEGER, + minimum_value TEXT, + maximum_value TEXT, pattern TEXT, structured_pattern TEXT, unit TEXT, diff --git a/linkml_runtime/linkml_model/types.py b/linkml_runtime/linkml_model/types.py index 338fee8b..36b8f06f 100644 --- a/linkml_runtime/linkml_model/types.py +++ b/linkml_runtime/linkml_model/types.py @@ -1,5 +1,5 @@ -# Auto generated from types.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:20 +# Auto generated from types.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:06:06 # Schema: types # # id: https://w3id.org/linkml/types @@ -39,7 +39,7 @@ # Types class String(str): """ A character string """ - type_class_uri = XSD.string + type_class_uri = XSD["string"] type_class_curie = "xsd:string" type_name = "string" type_model_uri = LINKML.String @@ -47,7 +47,7 @@ class String(str): class Integer(int): """ An integer """ - type_class_uri = XSD.integer + type_class_uri = XSD["integer"] type_class_curie = "xsd:integer" type_name = "integer" type_model_uri = LINKML.Integer @@ -55,7 +55,7 @@ class Integer(int): class Boolean(Bool): """ A binary (true or false) value """ - type_class_uri = XSD.boolean + type_class_uri = XSD["boolean"] type_class_curie = "xsd:boolean" type_name = "boolean" type_model_uri = LINKML.Boolean @@ -63,7 +63,7 @@ class Boolean(Bool): class Float(float): """ A real number that conforms to the xsd:float specification """ - type_class_uri = XSD.float + type_class_uri = XSD["float"] type_class_curie = "xsd:float" type_name = "float" type_model_uri = LINKML.Float @@ -71,7 +71,7 @@ class Float(float): class Double(float): """ A real number that conforms to the xsd:double specification """ - type_class_uri = XSD.double + type_class_uri = XSD["double"] type_class_curie = "xsd:double" type_name = "double" type_model_uri = LINKML.Double @@ -79,7 +79,7 @@ class Double(float): class Decimal(Decimal): """ A real number with arbitrary precision that conforms to the xsd:decimal specification """ - type_class_uri = XSD.decimal + type_class_uri = XSD["decimal"] type_class_curie = "xsd:decimal" type_name = "decimal" type_model_uri = LINKML.Decimal @@ -87,7 +87,7 @@ class Decimal(Decimal): class Time(XSDTime): """ A time object represents a (local) time of day, independent of any particular day """ - type_class_uri = XSD.time + type_class_uri = XSD["time"] type_class_curie = "xsd:time" type_name = "time" type_model_uri = LINKML.Time @@ -95,7 +95,7 @@ class Time(XSDTime): class Date(XSDDate): """ a date (year, month and day) in an idealized calendar """ - type_class_uri = XSD.date + type_class_uri = XSD["date"] type_class_curie = "xsd:date" type_name = "date" type_model_uri = LINKML.Date @@ -103,7 +103,7 @@ class Date(XSDDate): class Datetime(XSDDateTime): """ The combination of a date and time """ - type_class_uri = XSD.dateTime + type_class_uri = XSD["dateTime"] type_class_curie = "xsd:dateTime" type_name = "datetime" type_model_uri = LINKML.Datetime @@ -111,7 +111,7 @@ class Datetime(XSDDateTime): class DateOrDatetime(str): """ Either a date or a datetime """ - type_class_uri = LINKML.DateOrDatetime + type_class_uri = LINKML["DateOrDatetime"] type_class_curie = "linkml:DateOrDatetime" type_name = "date_or_datetime" type_model_uri = LINKML.DateOrDatetime @@ -119,7 +119,7 @@ class DateOrDatetime(str): class Uriorcurie(URIorCURIE): """ a URI or a CURIE """ - type_class_uri = XSD.anyURI + type_class_uri = XSD["anyURI"] type_class_curie = "xsd:anyURI" type_name = "uriorcurie" type_model_uri = LINKML.Uriorcurie @@ -127,7 +127,7 @@ class Uriorcurie(URIorCURIE): class Curie(Curie): """ a compact URI """ - type_class_uri = XSD.string + type_class_uri = XSD["string"] type_class_curie = "xsd:string" type_name = "curie" type_model_uri = LINKML.Curie @@ -135,7 +135,7 @@ class Curie(Curie): class Uri(URI): """ a complete URI """ - type_class_uri = XSD.anyURI + type_class_uri = XSD["anyURI"] type_class_curie = "xsd:anyURI" type_name = "uri" type_model_uri = LINKML.Uri @@ -143,7 +143,7 @@ class Uri(URI): class Ncname(NCName): """ Prefix part of CURIE """ - type_class_uri = XSD.string + type_class_uri = XSD["string"] type_class_curie = "xsd:string" type_name = "ncname" type_model_uri = LINKML.Ncname @@ -151,7 +151,7 @@ class Ncname(NCName): class Objectidentifier(ElementIdentifier): """ A URI or CURIE that represents an object in the model. """ - type_class_uri = SHEX.iri + type_class_uri = SHEX["iri"] type_class_curie = "shex:iri" type_name = "objectidentifier" type_model_uri = LINKML.Objectidentifier @@ -159,7 +159,7 @@ class Objectidentifier(ElementIdentifier): class Nodeidentifier(NodeIdentifier): """ A URI, CURIE or BNODE that represents a node in a model. """ - type_class_uri = SHEX.nonLiteral + type_class_uri = SHEX["nonLiteral"] type_class_curie = "shex:nonLiteral" type_name = "nodeidentifier" type_model_uri = LINKML.Nodeidentifier @@ -167,7 +167,7 @@ class Nodeidentifier(NodeIdentifier): class Jsonpointer(str): """ A string encoding a JSON Pointer. The value of the string MUST conform to JSON Point syntax and SHOULD dereference to a valid object within the current instance document when encoded in tree form. """ - type_class_uri = XSD.string + type_class_uri = XSD["string"] type_class_curie = "xsd:string" type_name = "jsonpointer" type_model_uri = LINKML.Jsonpointer @@ -175,7 +175,7 @@ class Jsonpointer(str): class Jsonpath(str): """ A string encoding a JSON Path. The value of the string MUST conform to JSON Point syntax and SHOULD dereference to zero or more valid objects within the current instance document when encoded in tree form. """ - type_class_uri = XSD.string + type_class_uri = XSD["string"] type_class_curie = "xsd:string" type_name = "jsonpath" type_model_uri = LINKML.Jsonpath @@ -183,7 +183,7 @@ class Jsonpath(str): class Sparqlpath(str): """ A string encoding a SPARQL Property Path. The value of the string MUST conform to SPARQL syntax and SHOULD dereference to zero or more valid objects within the current instance document when encoded as RDF. """ - type_class_uri = XSD.string + type_class_uri = XSD["string"] type_class_curie = "xsd:string" type_name = "sparqlpath" type_model_uri = LINKML.Sparqlpath diff --git a/linkml_runtime/linkml_model/units.py b/linkml_runtime/linkml_model/units.py index dbe8edd3..ec7909fe 100644 --- a/linkml_runtime/linkml_model/units.py +++ b/linkml_runtime/linkml_model/units.py @@ -1,5 +1,5 @@ -# Auto generated from units.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:21 +# Auto generated from units.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:06:07 # Schema: units # # id: https://w3id.org/linkml/units @@ -55,7 +55,7 @@ class UnitOfMeasure(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = QUDT.Unit + class_class_uri: ClassVar[URIRef] = QUDT["Unit"] class_class_curie: ClassVar[str] = "qudt:Unit" class_name: ClassVar[str] = "UnitOfMeasure" class_model_uri: ClassVar[URIRef] = LINKML.UnitOfMeasure diff --git a/linkml_runtime/linkml_model/validation.py b/linkml_runtime/linkml_model/validation.py index 41644b33..9cefbe00 100644 --- a/linkml_runtime/linkml_model/validation.py +++ b/linkml_runtime/linkml_model/validation.py @@ -1,5 +1,5 @@ -# Auto generated from validation.yaml by pythongen.py version: 0.9.0 -# Generation date: 2023-09-01T13:21:24 +# Auto generated from validation.yaml by pythongen.py version: 0.0.1 +# Generation date: 2024-01-29T16:06:09 # Schema: reporting # # id: https://w3id.org/linkml/reporting @@ -56,7 +56,7 @@ class ValidationReport(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = SH.ValidationReport + class_class_uri: ClassVar[URIRef] = SH["ValidationReport"] class_class_curie: ClassVar[str] = "sh:ValidationReport" class_name: ClassVar[str] = "ValidationReport" class_model_uri: ClassVar[URIRef] = REPORTING.ValidationReport @@ -78,7 +78,7 @@ class ValidationResult(YAMLRoot): """ _inherited_slots: ClassVar[List[str]] = [] - class_class_uri: ClassVar[URIRef] = SH.ValidationResult + class_class_uri: ClassVar[URIRef] = SH["ValidationResult"] class_class_curie: ClassVar[str] = "sh:ValidationResult" class_name: ClassVar[str] = "ValidationResult" class_model_uri: ClassVar[URIRef] = REPORTING.ValidationResult @@ -141,7 +141,7 @@ class ProblemType(EnumDefinitionImpl): description="Applies when the value of a slot is inconsistent with the declared range") max_count_violation = PermissibleValue( text="max_count_violation", - meaning=SH.MaxCountConstraintComponent) + meaning=SH["MaxCountConstraintComponent"]) parsing_error = PermissibleValue( text="parsing_error", description="The data could not be parsed") @@ -155,13 +155,13 @@ class SeverityOptions(EnumDefinitionImpl): FATAL = PermissibleValue(text="FATAL") ERROR = PermissibleValue( text="ERROR", - meaning=SH.Violation) + meaning=SH["Violation"]) WARNING = PermissibleValue( text="WARNING", - meaning=SH.Warning) + meaning=SH["Warning"]) INFO = PermissibleValue( text="INFO", - meaning=SH.Info) + meaning=SH["Info"]) _defn = EnumDefinition( name="SeverityOptions", From 5b3b0e6040907de7bd3e1f201b168bdb9a9db19b Mon Sep 17 00:00:00 2001 From: cmungall Date: Wed, 7 Feb 2024 17:51:59 -0800 Subject: [PATCH 2/3] 1.7.0rc3 --- linkml_runtime/linkml_model/annotations.py | 2 +- linkml_runtime/linkml_model/datasets.py | 2 +- linkml_runtime/linkml_model/excel/meta.xlsx | Bin 27391 -> 29107 bytes linkml_runtime/linkml_model/extensions.py | 2 +- .../linkml_model/graphql/meta.graphql | 91 + .../linkml_model/jsonld/meta.context.jsonld | 23 +- .../linkml_model/jsonld/meta.jsonld | 287 +- .../linkml_model/jsonschema/meta.schema.json | 1927 +++- linkml_runtime/linkml_model/mappings.py | 2 +- linkml_runtime/linkml_model/meta.py | 420 +- .../linkml_model/model/schema/array.yaml | 2 + .../linkml_model/model/schema/meta.yaml | 103 +- .../linkml_model/model/schema/types.yaml | 1 - linkml_runtime/linkml_model/owl/meta.owl.ttl | 2386 ++--- .../linkml_model/protobuf/meta.proto | 90 + .../linkml_model/shacl/meta.shacl.ttl | 7823 +++++++++-------- linkml_runtime/linkml_model/shex/meta.shex | 107 + .../linkml_model/sqlschema/meta.sql | 92 +- linkml_runtime/linkml_model/types.py | 4 +- linkml_runtime/linkml_model/units.py | 2 +- linkml_runtime/linkml_model/validation.py | 2 +- 21 files changed, 8034 insertions(+), 5334 deletions(-) diff --git a/linkml_runtime/linkml_model/annotations.py b/linkml_runtime/linkml_model/annotations.py index a503757f..bc5c1cd2 100644 --- a/linkml_runtime/linkml_model/annotations.py +++ b/linkml_runtime/linkml_model/annotations.py @@ -1,5 +1,5 @@ # Auto generated from annotations.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:05:46 +# Generation date: 2024-02-07T17:29:22 # Schema: annotations # # id: https://w3id.org/linkml/annotations diff --git a/linkml_runtime/linkml_model/datasets.py b/linkml_runtime/linkml_model/datasets.py index 2ec19940..b05a6941 100644 --- a/linkml_runtime/linkml_model/datasets.py +++ b/linkml_runtime/linkml_model/datasets.py @@ -1,5 +1,5 @@ # Auto generated from datasets.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:05:52 +# Generation date: 2024-02-07T17:29:27 # Schema: datasets # # id: https://w3id.org/linkml/datasets diff --git a/linkml_runtime/linkml_model/excel/meta.xlsx b/linkml_runtime/linkml_model/excel/meta.xlsx index 39dafb4ea005146242c23b993489734dfed4312f..4b28e8fbd6c7d0d158ee4683f5ab4184fdf81c07 100644 GIT binary patch delta 7750 zcmaiZ1z1#D+xF0%(jiDlcZ0NmbcZz34bmZ-k`z>iP?|$Ycc&mNoiZZbCEf53!+F1R z9pC@@K89=0UiaKj?6sb?o@cLhHwjm@42Pwrh=51{0)bFLL(y^{u}biuUwQ=l9pk%D zZ~zVj!UN-(5daAvzp8X{VuqPm_P2N>(;%u(V?;c9@j?mSHJZY?$Yz$2%kJzn$8tMt zp@ZvI9H>n|Z|N2raoZ3@a$+o%o%U4EHi;Ikng-#WttfqeG@9!IL9rGT?Zj^Wic>|a zrePdH%Rf~fB>(B6i!oLqI(iHU^CZ$kwChvv!Ha4R4<7cj8Oh6sn-(%1L>NLu75*TZNnQVNV?g8ZprW517XfDVcEyww6%hmq!376O zlLA~k?B0$JF`po>A^f-!z}wDsB}VJy0dKm&4~b)fB?QxT)o&I9R}?x>5p6*4a@zKT zs~vLZaxdxdSH4=JQJC`mB5m>@2T|?X=g!gn@}4(*8p$G{hH*Btn(}bW_#etk(dT+DEYsxkgmmMs zv{No9w^@=PXK<1)^UDy=v5npiJN$g&q#x6dH;sMb%iS2J)k&1izVrVy)CGGJ2qU2@ zP;KF!A0d=V6sQq;u5LC=o!3lCq#IKe-Tg!YUFo8t=*qrHN|;w#Qgzk(s!-iOpF9T; zdq1AInr0sgB_6NfYw8UfRq3&;M}@kg5zaX06TOOWaHz?0Ox7LQ!yX!(k}N`})dok=++qmrg#m|`kPt+&kjgJHd){5sk(M);J* z02%F}^q0h_UOtSd8|w1}1oA~uy)7W+ru)edr1qGtTYP#s$oZD|lOi)WkZR^CLtu*b`xH~K9)4fX z`@KrPq8UrU+qhea_Otc1ZO&U4rzz~^_Y|#P33U)2mF!c{$NT0{1l{zR&DsFHgHaN< zWSAwwE36j+5V<#*k@1tBBt$XgOJObhb^Oe@Oxq4wH3uDT6!yF5hPIZ=n`p_EYefC) z46HvGx1Bj!{z?q!-)e$4l+FE}bF8T|_e(2mhiu#79nA+smhAwPBf4)}WY$lZ#kU=EYWC49X^4`Alnh zvIBZOQJh7sGgt;@>fkXw_r}v_+4>%c(k~lX$&$-#nJ}m|OA-%cEf}^G5309&SJE+{ z7ySlzwu6S4n~9V|MCj2fkoU6%LMw?l5?nbWD*5X&8$aNDEgq>UUj&H(?N-GwTwvT_HO5o7CQ$K6Mz9M`rr+>vUcmOJD5A z$>vVBVtTnA=Eq0zY)Iu{IQH(2#dO3n-F5*ODBo#{07*2JOmqF2e0LI#gNUNiErI1P zyd|e^qRx)8&66Aay&9THfSbe3n;x7`zE0nrtdx0pL@385N*DA6N=z1*@ORHO1bZ6n zRWS~V%{)o<-66Tdw&9X1n6$}-8O{oc*Qs71^7}VFej}V1PQJe1sbBEP(cZk% zwl%iGM}Q>sb%`CRalP!zOUq4vHd>?0Noro>zQPbY9&aE2YhN`*$D`5mCa+yNX<%A5 zyQJ~-rOmefrBT*9Na`BHMQ03oi+;~uw<)i~io#r>_cX3VQb^BhW+N8z>Z;GW1LOYw zhfbHS@7;lmoXMxpuF`XVv8Fbu60c9%2BebZzGF6LmLBU7;8X9;`Rfal2~O^sYR%Kb zi?i^h;YPU3Q#K2=N7iE7%%!SFbv}SjL9T;xvun!P)<}V_s&Z;Sqnz|U|7X<}O00on zdTn`Nf*UYjcEaZi`_zpVV`O8 z@?y7~$Epiom6LYloW1S=S)-14mNdsYu(i=L%H&ps6>W$X+b|JJ{^;dgkKh7?pG!*0 zWRZs0l-$m~);w99_FiXM{Sg}w%2Sv4>;Q#kk5GV_*hP!kF4@>_m2?X~EEC<=(o#$E zn^7lLA0Z}gwxwyHJz{-~CHa~4-6gJ5pM-!*CPZerFHmgH`;aKEsZnQiJ1%HVFfd8h zQC=O>9VNRjVeC`dMu_;=$kR8#jJ2TAo4G3t^-;ywJ}cXoZ z3q;Ii{8l@_!MlF+xG_K(qg2PHH*;0K66M_h6UK(mcJUIHfkdYl0-&VQ!^qoMO&}Q*Z1I5yqqY>bg-J zpPHqi_+sa_-_$9()x&4Djy`&((p?mSK`6pH@^iSJeV8!@V+UDR!cR98+^!k+H3OAk zWO?pLE=j1eBn+D)4N#7BU08R6M@m19xyj}Um-N#tmXXJ)**u6xsA#Bj1rWPlsX@l{ ziJLObgcu!sBiLJFx>vZ zYYV@tWW*ESQx~Va%5eVeIg{ijdQ(o;Um3wnA{5b<)koHIQ^`J)BriR^8lFmrVhWp>@@5dINO9WW~i3Vp2YQOm${i}&9aJ4Q2jxW`|96KRw%4AJ8A;6IxKK4eR zbjnplS$)HLdm zzhlxe;@ziOy;XQ)m6}jmqqQ(_-IMXy1SPG-UqDPm=oZ-BEfOd@VlAGt+A`wtAWt!7 z^bil>bwbk**oAET?2?w;;^fOr$0fG+U;aB%^T47=4?WM_bQYar>ajKeDlTofIB zbm7mhOli`PW;FD^Tjp}Z`36Uz<2GU8?J-L~ggZNt*Sv@0S93p48_-qT7E!vXU**Ep z*m%{bQ>h_#6BJ+~-2eD7`xr}WPhDE}-5(`#ulA>~Zg>#r2l{=E0S8(lSEcccJk+-? z{Hzc4ZH6%1LlHZq)2!10WzWOd0GHr>MoLI@R)uilcDE_S<4E-9+~C=<5R!yAav~$t zwnV0`%<9*?`TXYPK;67hZs1ds8RIU`Yrj2*9#yAi**0`VP(S}vJ!fCi^Ib{xP+v5i zx1tVT4^o7Diz1o=)I+C2?0kEZmnLnF^U4*P{Dt>=*l*n5QIhU1j9F&^RXP_}(wz0_ zD_0jz3kn>G6F3Cpu0=#HSnlK8?Q=`&`J+UJBOBZ}NAhA2@lQq$9|QVJ!aTgEhL-G@ zziIEJ@`3#c!0-rsGFV;j=UouHpEIefPKVgt67aL3hLr7C=~E@L>xt~RB7b?ikQ8w>aC!w)XECQ^5Og5mUJ$;_57DqTmcS# zZmP5fooW87C|tWTNH2Xk4_9*5A!#!Dh59Rba1i2e`Js;-4kf6`0OH9@%n+=+L*XRQ zFYy;}#Q192t4Fy6N0ti#GgEZSh6?XIEjJ25@qw)hBR{j*>YjdTFa4%hD>E!&Br67I ztZ3RkG+khR!(Yyt{qryLeI-+YSJZ(Tp99g>PFFb?&3R(N6A$Kwe5+nrJH-@UjfSqx z0d}<{!KIkZ)K^BWFM(t%;gdJlxL%?Dx|-`36Bd{GJMoT1b2MGw!yLuPrDXidu#icf z%V?gNUfw(omf`X0?`fOCWg+ufRmTb^oNHdwr~Q?`CH6Mb(>R;9tSEMbVL39aH9G0| z=(Ej+EE025Evc!DbluEG1JN|&rSHO>c9LP5&6aV4Haf1dsIlb;l5bk`Bc9P&U6<()r#^N04pmNE^9uTWf~dgymnYjZ(Tf!uh{BR z9?&POTuiPE^_11_wCh+q0cLkN5sk>ayLSe^jL{GGcvaA>Tt)c~H$5E}x5(WQ-c2Sr za?_dzD)C-FVfL})Y-eP)YeeCR_roM2oMWOgN#W9oKN`y>^J0ne=@OM}RzjVczx|{Tk=rZxbg;45)R`h!(w%Xe#hAJyF%NXc26s z2Y-~HgXiV~|E4Fa8kNX`$GYDpiRYp&RD^CLX@cQo$iW%1NL3lq+OXXX@Y!>EIG!p> z8U2T*uPi;dTppz=PgdsvxRaxYeIRg~%_52^+==)gnTs8tslRu9S&L~=OrpkDUE z-RCc;SK_GD57a_!dN}T?5p5G#vx-~S_d#RX%QfKs`3S5L$L}*AE(QpM1Kl$7cHr=G zer^BC+1VbpHIull0^uYGG|BBpV2wdorHSIja+IF!<|P4W1%#duwOZ67u&IiRs87d( zDRy<2qg&I>0kPA`qKaX1^K@bZ`kJQd?VN+w79~wx{>=I-Q~eRMVtyT0s^n89fX{@p5ehSMzVz(5L$3T8@-IQDvjH)J@`k#QCBgaH?fg3#Zav>psn;TA+@8{kJP~9N>~UIdR|NwqXk$z? zL3DQsNA704A)PY$GBrcmNwO-Q^5taV=D_G{FaG-$9Lb4SBFJiSJgg18i+ij~XCzV= zgXQz(tA(O*;p*HxtUO5vUmC`uPH)oW8orkgu<6koidT3qR*FPLX(XEgxgu;*HLU4o zh8(2yJe}Nk*gZ$3x7a`5CJU{p5%D;1P0xDYI(fYA|3v{IPiJ_)Peh-eGgwhwe$u%} z!NcfyBnff9Gu%=n(h`Rs>_)40aTS%J=VWB>t>+Xh1vcur1xsNU4ypyrSQg>Z|LY>+{*y~^Z^X4{p_L(Dj zJ=$1cAP}RtKPYO>&QkD^eKc&gT+;^fg35R|nDn#uYe}VdvgV1KQ<~f1t>Y2aU^(WM z%G1$tVSi7By73u}-K7mPgBc%Xz}!};gnP47%%J8%AZamQ8ejN|OqY2XIg2`WMlw2J zTQ1yac_6A-TS&&u_NK}~iqv5G`-QSHyHKesbuK%4f_iC{3C~*#z$F_C zp*1*3N)U!NK?x4G39k5|5`K22!Lf^grV95t=|`cxz8*^-{01`L9H14X0NyGW&V!v; zZT1EyJg&ti>}_jhZojrO$e(8-%Bu$(W+67nqH)Wjy$-=&A)@c4RKOJrmWS`u!A8)< zme$1%(Z%l6#YWJ>me#`#(ZlZ4gZtn9X9&V7m@v)90n43~sY#PN!tE)toR5WbD5f{_ zJwH&?6ye|r5dP<21zcw;f(A<$_a`ghD^q@|`xf+Mffg6KHJ8fpFpAKDg#87=eFv+V z(ZD$Wq$UuE(~DEFPTqu^@+Uria0M^vJA#y713o%AdN18DT<) ze;fU03-wPTHXDp6WQh;!8Wl@&cwZhE6ljSL8$XV@ke}yJhgIEBxXy%h^c=Q|Eb*mB*sZYiA3NPtB1j~vm%EN zl!ZYo)(=nx6ta+qLC_NJzdDkXH8eyCI+l9SvHbU-tSP{R8vfQJZcPqvt8@>=**pXz zJ;aJc8!8(4U!r@;U@n`7I2eSA`KrP+#r`e#Px<$!NqBV_ank0&bpso6_-#!XL}B}2 zlW6wUKnB!iHgs72a90QHsznaAv3-c2O{i?M9#obPS}r1k%l?KrZOP%)_3vSB9Vk+hZ>0auZQ|LmLEwDN!SC!CVWdA3%71u)aE~m( bxF&=|YKlnEl?nu6gnow6L7*Y4`_}&h5&wDh delta 6179 zcmaiY1z1$w_w@`V-8~>VbV!%d-5}ipLkL4jNev98A~~djNC`+N4j_VrAgO?az|f5} z2nve8e;D5Q^!+{0H_yzy=d8QeI(zSP=AL~oatV0;8AxKNgN;KC008g-N~NvdGz zlZA*5*7^<_`~U<1D9~qTZzn@PZ=XBDPTqbHpxawQGLny(!rL_QMhah7>Da^u1acBG zv6gdKhIfQn9_PmQ5*(V~OFP9abt1ms z{Dyocv9@=^o=ZfyOQe*JcW)@v0o%?5W25q>33i7M-5E~NymF9I%Or}>p)B4l#Z*d_lcs| zC-{?aXG~0&e4{(0wsPLCVVkv&` zny9EbcflR!h|YSW>h`V*eCt13BwvHxJjPpscaaJ8_Z(0Pdydu# z^gZI+CAFg-cXf9XnZH{W$!@77H)3Ht0OR#=WqQ=kp~BH~Q>CvD1zhIQR#B?Vu;;oN zQ`)e%&z^2J`T&?5Q%9+0t!>)J__(}QvTU~me&^dOQH}FOR7x&SnJgaG#b`&ccJNFn)WU2pgLg&ym6Nl?t`Ct%&rr>SZe1rG zVC6ywqb-QPS1q;X(Of(5pzW)@A)M+<_C$adLzm9=`RDvi{nC88Md4Y+r)OWXd4y(d zgoNl6*Gxa0aK4l_GeADSMWx{UM}EeWr_h1VTZO5H`g_-E~fr{6s8Z7-jctDYz?b2HMyUx#Rx&q}_pF z%9Fe-($V$&=MBw)lDvcR@JVj#2^OFEy(MhD`hmH)L}TCDibRrb6j#^kOfXYl;&Vvw z0wZKSE90Q<;o+C@rBA`&3VoBu`yV6MaAap+kg`5H`hnkzHtTOF0B`*dIXd#>ZxFbFe!}PT(?3!&11e>Cp+MxvAfFMTzvAuwW@vr zb!7CwWqleNB3+(@>=@;Rm@wRAPLtm;DR`)5YGmHB?a}|lO0REij^#OQjs)<{n>U&- z_eWtxgUrCJOObY!v&Uk|R0PcMZCGNnsBHWqC)kMmbN7ro^?)hi<-k zmbobI*5s9V*xqNQ*Ol6s7D1mCdMha=L+4H#58*_*uTia?*dv+YQR=c5#4}SG4r|t& zdeBOMv)XPd4>$+8`ef)ADafi9Vkjy4h)mPT{~p{gMpO`Q$m+CeMg0u6JbpM}-iM5e zh@q-UeY;3j++aFg76vaeHX1+F<{vE6zolOOblgmxM)j?C1DlMBv3o7?!+9ox>9JRN zP4xOf3uX_$7)XEGezlJy&a!)V1#B`qUiZK*>){td?!CS;W{P+U+YV2^67f|#;``q7 zswZqHS7}?7g>a?kU%&-2u&>b5SR)o$mkVRPa|*kKnjm_Gbus*< z?swF!W)v~Vptyu!Jd`fm>nKUJRMvi8wt{?TH=-OR-B5`0Bu@!NS$E2qZGy+{WE|p_ zL%f~p)YXSHX-%oV9AO`hsJ}K2FR+wCsjZo%aw*}B({4BKLU8x3V53mari`D4Eao(v z(oiwdc@I1peXRx;r&!`$YUS;onpo!|X_4ZFS5QHR$0;jz;T{sL1^ujp&3w!vJ!Wr7 z*_(xLNszCGCZ;GAH$NUxel|Y2@hGn3KoLDib7s>maItL3U6Utya`z6&!>zkApD7Xd zuubvaK>5D2cmXQXfidGkCbf5^1(!pm*tIkVs+{BTu$~y}J!0jt!oqjWVw-BcNjN66 zma-NqQk4w$u=d0M-t6b2wmK29i+qvZG92U1EW?tm(x$LHZ*WNd6=Wq^r>vyXL&bF@ zIzYXevO8wkDJB~4Z!RahLXlBJy=ZIYKy>HcJ~e~zJD2PDy)XjSj&)U)??uaFPNXQ? zP3HU&@~J#{9t%DcB`!WZ{4;Ht4SQSvC!)SITO0RT&coWar8fYY_M?F~U zS(Gwjq%k&1oANQEFr6O^>oisr)i9T-_rTW0qr$sC4U&_*LD=Ki9^A)ohT~pY^^_yR zkcp27e_54%$UewVwg;jew&vbO(MO2CHg7e^n1?l-qYM*UesA6TXdjDRmIvJ9C0!_YJ5uzq{@PE0O~3 zN4hjZDfr=D)O9hZm)++6E@idmrsV}WG1$lC|eHszF7*$ z+>wosDJ6kD6li~ym{gZ@=iYJrcZ>ExwuMAuqgp+Qr=9B4rt9*wo%g&g-H1F;UsxB{ z0k97QtP3NIwsJ2}Y9jI3t)@rTYZWZ2PTEh`&jPg1`C__sBA%I=e|x-N=3iApXz!wM zc6c1(vj26))7SraYRcT(&b8>J@6?;1{%I&QrjX zbbRlgxu@!NB^UM{pR{yXv=|H6pSN0g4Lmp)89{7rc3#KztCMb$&t6$~YB*A$jya>5 zDL?f1Di7r-G81=-7oL6Fr``fv`K+Ki?%!?anc{1l#vo<2sGpZXLRTMM#G5+8@;qAZPF#%}D#0s!_9sbV1HgzPk? zv_<5raAJu_BX+@z$T^jYODs{H6EUhti8u!nBIZ;GkYnoEmlu4sz`$$BEGTs(8cA_~xhO6gp`wBU8#($_~@*j!iuMUlC>Hkh&*aiRxC%t3LH zV14^bAl?8B6h~GW{M98h0wY-Uagj1cZ!d>Fz6l0OUbu<&2oEW5^6D~L+DXR``RD

&2|y@pcP+7{a8^Jv}`I+!*U z)za+~qF$CL?MZ6T*kF`mz2Xtm!eHTSKe zKGv;%tEgG*cN<&@ha{#~RMO*JeHUT`o;ecvc%>yUJb7)?US!R*K9}Pq#n_Js^}#jz zWup1z0-Co!1d6YOcH9W7;qq5j_(reG!2(+u67JlQ8L@fCcT)DcrSpdf;Z}21{Jrai z>OW9AQP|(>uRe8ZdkKV)kW?$#yrsBL!I_!TAQ@7j>r*lpXxNT-H25Zb5zZ<^={T74 za4Tj$w^$~w4qHJ_7OYuHK;UmUk|RhkkY-V_^j-`eEXj;=j$6Z7yS^~LUorXB0MG}4Iy}*eKTTUr2jzDMBbuIM+i5_iMl*wBcwZAu6Yc%Bt+@WPVv4* zcKVju?NEb9)9>KJ&6?q`#!4y&CYt1S=a|tHF)4G*8 zKQ;Z*57llr8|Kw?e@{(o)!gnjUOM83i58{1mVc#J<&bm&fMs>mvhdCgAz>^kJ$_GQ zNkP?(&4P~ULjn?yKJe65RDK~n7r5v(Vpqg$a%T$L#5I@kq+0U%eZulE{z1I-{5?;s zo`IELGz^iBiSmJAB_{X)A->dDF^Pwc9uh_}i_*LWpwC z+YG((YbXH#MgT(5mkHKCp_2qxq>f#vO0kOUY(Cy9iz;ZeZ$(wLR_UG$_JS^YWzG_ z6x3A(ZhD5bQH3N*sqZzNKYluFmyDi*`w&G>!~Kb(XW+p^(X;R{qUbqzBvJG{JccNG z0e+7tdJ+DRD0&I@Ac;SE33K@Q6*w^8P`K3h|2YK1leoPDrsG3beo>28i_BNK#V^=N z-8ipdlG^{A`cT*USf%d#kHpWBKF*3pC*GF|06>2M)+*j!{tz#JdxR{681})d{TjI% z4BSUc;WRQFAE`G5{ZObd&qd|9kmaeeuq#J^TTTaUh@WDdX&C`xJP!&+x7CU;si*zmRTq?czY>xAXmYN=j4{aFQ*ncZt5O7P-J z4fwD!{wrW0^z=?NKA%#Y3Eakrz)ug{b5A=3#HZv{j`OC7GKQ>&ldZ!{AFn!>*j9$& zt)FPviZkFtFL@?HNr1b&Sd z5ms)OT&Noe>na(BoBtPgmd;&h9lib75&g+UQDO{N+$b>PD!7BNj%hFuzx%(C3H=3h zP3mHU{v$$*DL(~b4zy3!g zcT>{n!h;6wCBxt0q0f;~`s^4(7&|T^pxtmI>s>TFRrW?2f!cJ(lqkzSWx{acs)8PSFz#_*@t zWkh*sZkzE1Bq}QXzg9wqT(K|(IyXJ&-|x9GHNhy|^S)H#_W@z$nPUD+pS&-l8OGgL zH%3RJfsTgc|6P(musI^x2ZYIKl@AD3XbAw=`$0VK2n$^t{|M0H-}(;#Ap1=x!3qEf z_7o2C_VaM`_V)N+0sOw*{>zR8y4YgK_I?NrUpCBS{<%Z^Z5;_bv_l9(Xb^e6_@rC_ OE`Sm`qB4hz%l`+F#GwEH diff --git a/linkml_runtime/linkml_model/extensions.py b/linkml_runtime/linkml_model/extensions.py index dda1c328..9b1ecf26 100644 --- a/linkml_runtime/linkml_model/extensions.py +++ b/linkml_runtime/linkml_model/extensions.py @@ -1,5 +1,5 @@ # Auto generated from extensions.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:05:53 +# Generation date: 2024-02-07T17:29:29 # Schema: extensions # # id: https://w3id.org/linkml/extensions diff --git a/linkml_runtime/linkml_model/graphql/meta.graphql b/linkml_runtime/linkml_model/graphql/meta.graphql index d1479d1e..761e079b 100644 --- a/linkml_runtime/linkml_model/graphql/meta.graphql +++ b/linkml_runtime/linkml_model/graphql/meta.graphql @@ -171,6 +171,7 @@ type AnonymousSlotExpression implements SlotExpression equalsStringIn: [String] equalsNumber: Integer equalsExpression: String + exactCardinality: Integer minimumCardinality: Integer maximumCardinality: Integer hasMember: AnonymousSlotExpression @@ -206,6 +207,50 @@ type AnyValue { } +type ArrayExpression implements Extensible, Annotatable, CommonMetadata + { + exactNumberDimensions: Integer + minimumNumberDimensions: Integer + maximumNumberDimensions: Anything + hasExtraDimensions: Boolean + dimensions: [DimensionExpression] + extensions: [Extension] + annotations: [Annotation] + description: String + altDescriptions: [AltDescription] + title: String + deprecated: String + todos: [String] + notes: [String] + comments: [String] + examples: [Example] + inSubset: [SubsetDefinition] + fromSchema: Uri + importedFrom: String + source: Uriorcurie + inLanguage: String + seeAlso: [Uriorcurie] + deprecatedElementHasExactReplacement: Uriorcurie + deprecatedElementHasPossibleReplacement: Uriorcurie + aliases: [String] + structuredAliases: [StructuredAlias] + mappings: [Uriorcurie] + exactMappings: [Uriorcurie] + closeMappings: [Uriorcurie] + relatedMappings: [Uriorcurie] + narrowMappings: [Uriorcurie] + broadMappings: [Uriorcurie] + createdBy: Uriorcurie + contributors: [Uriorcurie] + createdOn: Datetime + lastUpdatedOn: Datetime + modifiedBy: Uriorcurie + status: Uriorcurie + rank: Integer + categories: [Uriorcurie] + keywords: [String] + } + type ClassDefinition implements ClassExpression { name: String! @@ -429,6 +474,49 @@ interface Definition stringSerialization: String } +type DimensionExpression implements Extensible, Annotatable, CommonMetadata + { + alias: String + maximumCardinality: Integer + minimumCardinality: Integer + exactCardinality: Integer + extensions: [Extension] + annotations: [Annotation] + description: String + altDescriptions: [AltDescription] + title: String + deprecated: String + todos: [String] + notes: [String] + comments: [String] + examples: [Example] + inSubset: [SubsetDefinition] + fromSchema: Uri + importedFrom: String + source: Uriorcurie + inLanguage: String + seeAlso: [Uriorcurie] + deprecatedElementHasExactReplacement: Uriorcurie + deprecatedElementHasPossibleReplacement: Uriorcurie + aliases: [String] + structuredAliases: [StructuredAlias] + mappings: [Uriorcurie] + exactMappings: [Uriorcurie] + closeMappings: [Uriorcurie] + relatedMappings: [Uriorcurie] + narrowMappings: [Uriorcurie] + broadMappings: [Uriorcurie] + createdBy: Uriorcurie + contributors: [Uriorcurie] + createdOn: Datetime + lastUpdatedOn: Datetime + modifiedBy: Uriorcurie + status: Uriorcurie + rank: Integer + categories: [Uriorcurie] + keywords: [String] + } + type Element implements Extensible, Annotatable, CommonMetadata { name: String! @@ -910,6 +998,7 @@ type SlotDefinition implements SlotExpression domain: ClassDefinition slotUri: Uriorcurie multivalued: Boolean + array: ArrayExpression inherited: Boolean readonly: String ifabsent: String @@ -964,6 +1053,7 @@ type SlotDefinition implements SlotExpression equalsStringIn: [String] equalsNumber: Integer equalsExpression: String + exactCardinality: Integer minimumCardinality: Integer maximumCardinality: Integer hasMember: AnonymousSlotExpression @@ -994,6 +1084,7 @@ interface SlotExpression equalsStringIn: [String] equalsNumber: Integer equalsExpression: String + exactCardinality: Integer minimumCardinality: Integer maximumCardinality: Integer hasMember: AnonymousSlotExpression diff --git a/linkml_runtime/linkml_model/jsonld/meta.context.jsonld b/linkml_runtime/linkml_model/jsonld/meta.context.jsonld index d78abf2a..802ef6ed 100644 --- a/linkml_runtime/linkml_model/jsonld/meta.context.jsonld +++ b/linkml_runtime/linkml_model/jsonld/meta.context.jsonld @@ -1,7 +1,7 @@ { "comments": { "description": "Auto generated by LinkML jsonld context generator", - "generation_date": "2024-01-29T16:06:12", + "generation_date": "2024-02-07T17:29:49", "source": "meta.yaml" }, "@context": { @@ -74,6 +74,9 @@ "apply_to": { "@type": "@id" }, + "array": { + "@type": "@id" + }, "asymmetric": { "@type": "xsd:boolean" }, @@ -165,6 +168,9 @@ "designates_type": { "@type": "xsd:boolean" }, + "dimensions": { + "@type": "@id" + }, "disjoint_with": { "@type": "@id" }, @@ -196,6 +202,12 @@ "@type": "@id", "@id": "skos:exactMatch" }, + "exact_cardinality": { + "@type": "xsd:integer" + }, + "exact_number_dimensions": { + "@type": "xsd:integer" + }, "exactly_one_of": { "@type": "@id" }, @@ -221,6 +233,9 @@ "generation_date": { "@type": "xsd:dateTime" }, + "has_extra_dimensions": { + "@type": "xsd:boolean" + }, "has_member": { "@type": "@id" }, @@ -352,6 +367,9 @@ "maximum_cardinality": { "@type": "xsd:integer" }, + "maximum_number_dimensions": { + "@type": "@id" + }, "maximum_value": { "@type": "@id" }, @@ -361,6 +379,9 @@ "minimum_cardinality": { "@type": "xsd:integer" }, + "minimum_number_dimensions": { + "@type": "xsd:integer" + }, "minimum_value": { "@type": "@id" }, diff --git a/linkml_runtime/linkml_model/jsonld/meta.jsonld b/linkml_runtime/linkml_model/jsonld/meta.jsonld index c68f4185..fcdd35ee 100644 --- a/linkml_runtime/linkml_model/jsonld/meta.jsonld +++ b/linkml_runtime/linkml_model/jsonld/meta.jsonld @@ -1,9 +1,8 @@ { "name": "meta", - "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://w3id.org/linkml/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)", + "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://w3id.org/linkml/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\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)", "title": "LinkML Schema Metamodel", "id": "https://w3id.org/linkml/meta", - "version": "2.0.0", "imports": [ "linkml:types", "linkml:mappings", @@ -3079,6 +3078,124 @@ "range": "boolean", "@type": "SlotDefinition" }, + { + "name": "array", + "definition_uri": "https://w3id.org/linkml/array", + "description": "coerces the value of the slot into an array and defines the dimensions of that array", + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "domain": "SlotDefinition", + "slot_uri": "https://w3id.org/linkml/array", + "inherited": true, + "owner": "SlotDefinition", + "domain_of": [ + "SlotDefinition" + ], + "range": "ArrayExpression", + "inlined": true, + "@type": "SlotDefinition" + }, + { + "name": "dimensions", + "definition_uri": "https://w3id.org/linkml/dimensions", + "description": "definitions of each axis in the array", + "from_schema": "https://w3id.org/linkml/meta", + "aliases": [ + "axes" + ], + "status": "testing", + "domain": "ArrayExpression", + "slot_uri": "https://w3id.org/linkml/dimensions", + "multivalued": true, + "list_elements_ordered": true, + "owner": "ArrayExpression", + "domain_of": [ + "ArrayExpression" + ], + "range": "DimensionExpression", + "inlined": true, + "@type": "SlotDefinition" + }, + { + "name": "minimum_number_dimensions", + "definition_uri": "https://w3id.org/linkml/minimum_number_dimensions", + "description": "minimum number of dimensions in the array", + "comments": [ + "minimum_cardinality cannot be greater than maximum_cardinality" + ], + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "domain": "ArrayExpression", + "slot_uri": "https://w3id.org/linkml/minimum_number_dimensions", + "owner": "ArrayExpression", + "domain_of": [ + "ArrayExpression" + ], + "range": "integer", + "@type": "SlotDefinition" + }, + { + "name": "maximum_number_dimensions", + "definition_uri": "https://w3id.org/linkml/maximum_number_dimensions", + "description": "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False", + "comments": [ + "maximum_number_dimensions cannot be less than minimum_number_dimensions" + ], + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "domain": "ArrayExpression", + "slot_uri": "https://w3id.org/linkml/maximum_number_dimensions", + "owner": "ArrayExpression", + "domain_of": [ + "ArrayExpression" + ], + "range": "Anything", + "inlined": true, + "any_of": [ + { + "range": "integer", + "@type": "AnonymousSlotExpression" + }, + { + "range": "boolean", + "@type": "AnonymousSlotExpression" + } + ], + "@type": "SlotDefinition" + }, + { + "name": "exact_number_dimensions", + "definition_uri": "https://w3id.org/linkml/exact_number_dimensions", + "description": "exact number of dimensions in the array", + "comments": [ + "if exact_number_dimensions is set, then minimum_number_dimensions and maximum_number_dimensions must be unset or have the same value" + ], + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "domain": "ArrayExpression", + "slot_uri": "https://w3id.org/linkml/exact_number_dimensions", + "owner": "ArrayExpression", + "domain_of": [ + "ArrayExpression" + ], + "range": "integer", + "@type": "SlotDefinition" + }, + { + "name": "has_extra_dimensions", + "definition_uri": "https://w3id.org/linkml/has_extra_dimensions", + "description": "If this is set to true", + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "domain": "ArrayExpression", + "slot_uri": "https://w3id.org/linkml/has_extra_dimensions", + "owner": "ArrayExpression", + "domain_of": [ + "ArrayExpression" + ], + "range": "boolean", + "@type": "SlotDefinition" + }, { "name": "inherited", "definition_uri": "https://w3id.org/linkml/inherited", @@ -3265,10 +3382,35 @@ "range": "string", "@type": "SlotDefinition" }, + { + "name": "exact_cardinality", + "definition_uri": "https://w3id.org/linkml/exact_cardinality", + "description": "the exact number of entries for a multivalued slot", + "comments": [ + "if exact_cardinality is set, then minimum_cardinalty and maximum_cardinality must be unset or have the same value" + ], + "in_subset": [ + "SpecificationSubset" + ], + "from_schema": "https://w3id.org/linkml/meta", + "is_a": "list_value_specification_constant", + "slot_uri": "https://w3id.org/linkml/exact_cardinality", + "inherited": true, + "owner": "DimensionExpression", + "domain_of": [ + "SlotExpression", + "DimensionExpression" + ], + "range": "integer", + "@type": "SlotDefinition" + }, { "name": "minimum_cardinality", "definition_uri": "https://w3id.org/linkml/minimum_cardinality", "description": "the minimum number of entries for a multivalued slot", + "comments": [ + "minimum_cardinality cannot be greater than maximum_cardinality" + ], "in_subset": [ "SpecificationSubset" ], @@ -3276,9 +3418,10 @@ "is_a": "list_value_specification_constant", "slot_uri": "https://w3id.org/linkml/minimum_cardinality", "inherited": true, - "owner": "SlotExpression", + "owner": "DimensionExpression", "domain_of": [ - "SlotExpression" + "SlotExpression", + "DimensionExpression" ], "range": "integer", "@type": "SlotDefinition" @@ -3287,6 +3430,9 @@ "name": "maximum_cardinality", "definition_uri": "https://w3id.org/linkml/maximum_cardinality", "description": "the maximum number of entries for a multivalued slot", + "comments": [ + "maximum_cardinality cannot be less than minimum_cardinality" + ], "in_subset": [ "SpecificationSubset" ], @@ -3294,9 +3440,10 @@ "is_a": "list_value_specification_constant", "slot_uri": "https://w3id.org/linkml/maximum_cardinality", "inherited": true, - "owner": "SlotExpression", + "owner": "DimensionExpression", "domain_of": [ - "SlotExpression" + "SlotExpression", + "DimensionExpression" ], "range": "integer", "@type": "SlotDefinition" @@ -3717,9 +3864,10 @@ "rank": 6, "domain": "SlotDefinition", "slot_uri": "http://www.w3.org/2004/02/skos/core#prefLabel", - "owner": "SlotDefinition", + "owner": "DimensionExpression", "domain_of": [ - "SlotDefinition" + "SlotDefinition", + "DimensionExpression" ], "range": "string", "@type": "SlotDefinition" @@ -7109,6 +7257,7 @@ "equals_string_in", "equals_number", "equals_expression", + "exact_cardinality", "minimum_cardinality", "maximum_cardinality", "has_member", @@ -7184,6 +7333,7 @@ "equals_string_in", "equals_number", "equals_expression", + "exact_cardinality", "minimum_cardinality", "maximum_cardinality", "has_member", @@ -7277,6 +7427,7 @@ "domain", "slot_uri", "multivalued", + "array", "inherited", "readonly", "ifabsent", @@ -7331,6 +7482,7 @@ "equals_string_in", "equals_number", "equals_expression", + "exact_cardinality", "minimum_cardinality", "maximum_cardinality", "has_member", @@ -7598,6 +7750,119 @@ "class_uri": "https://w3id.org/linkml/ClassRule", "@type": "ClassDefinition" }, + { + "name": "ArrayExpression", + "definition_uri": "https://w3id.org/linkml/ArrayExpression", + "description": "defines the dimensions of an array", + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "mixins": [ + "Extensible", + "Annotatable", + "CommonMetadata" + ], + "slots": [ + "exact_number_dimensions", + "minimum_number_dimensions", + "maximum_number_dimensions", + "has_extra_dimensions", + "dimensions", + "extensions", + "annotations", + "description", + "alt_descriptions", + "title", + "deprecated", + "todos", + "notes", + "comments", + "examples", + "in_subset", + "from_schema", + "imported_from", + "source", + "in_language", + "see_also", + "deprecated_element_has_exact_replacement", + "deprecated_element_has_possible_replacement", + "aliases", + "structured_aliases", + "mappings", + "exact_mappings", + "close_mappings", + "related_mappings", + "narrow_mappings", + "broad_mappings", + "created_by", + "contributors", + "created_on", + "last_updated_on", + "modified_by", + "status", + "rank", + "categories", + "keywords" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml/ArrayExpression", + "@type": "ClassDefinition" + }, + { + "name": "DimensionExpression", + "definition_uri": "https://w3id.org/linkml/DimensionExpression", + "description": "defines one of the dimensions of an array", + "from_schema": "https://w3id.org/linkml/meta", + "status": "testing", + "mixins": [ + "Extensible", + "Annotatable", + "CommonMetadata" + ], + "slots": [ + "alias", + "maximum_cardinality", + "minimum_cardinality", + "exact_cardinality", + "extensions", + "annotations", + "description", + "alt_descriptions", + "title", + "deprecated", + "todos", + "notes", + "comments", + "examples", + "in_subset", + "from_schema", + "imported_from", + "source", + "in_language", + "see_also", + "deprecated_element_has_exact_replacement", + "deprecated_element_has_possible_replacement", + "aliases", + "structured_aliases", + "mappings", + "exact_mappings", + "close_mappings", + "related_mappings", + "narrow_mappings", + "broad_mappings", + "created_by", + "contributors", + "created_on", + "last_updated_on", + "modified_by", + "status", + "rank", + "categories", + "keywords" + ], + "slot_usage": {}, + "class_uri": "https://w3id.org/linkml/DimensionExpression", + "@type": "ClassDefinition" + }, { "name": "PatternExpression", "definition_uri": "https://w3id.org/linkml/PatternExpression", @@ -8060,9 +8325,9 @@ ], "metamodel_version": "1.7.0", "source_file": "meta.yaml", - "source_file_date": "2024-01-29T15:41:33", - "source_file_size": 90352, - "generation_date": "2024-01-29T16:06:14", + "source_file_date": "2024-02-07T17:29:17", + "source_file_size": 93289, + "generation_date": "2024-02-07T17:29:51", "@type": "SchemaDefinition", "@context": [ "staging/jsonld/meta.context.jsonld", diff --git a/linkml_runtime/linkml_model/jsonschema/meta.schema.json b/linkml_runtime/linkml_model/jsonschema/meta.schema.json index 1c2496e1..9d968840 100644 --- a/linkml_runtime/linkml_model/jsonschema/meta.schema.json +++ b/linkml_runtime/linkml_model/jsonschema/meta.schema.json @@ -56,14 +56,30 @@ "properties": { "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -90,14 +106,30 @@ "properties": { "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -152,7 +184,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -247,7 +287,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -494,7 +542,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -589,6 +645,10 @@ }, "type": "array" }, + "exact_cardinality": { + "description": "the exact number of entries for a multivalued slot", + "type": "integer" + }, "exact_mappings": { "description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": { @@ -612,7 +672,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -891,14 +959,10 @@ "string" ] }, - "ClassDefinition": { + "ArrayExpression": { "additionalProperties": false, - "description": "an element whose instances are complex objects that may have slot-value assignments", + "description": "defines the dimensions of an array", "properties": { - "abstract": { - "description": "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes.", - "type": "boolean" - }, "aliases": { "description": "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment.", "items": { @@ -906,13 +970,6 @@ }, "type": "array" }, - "all_of": { - "description": "holds if all of the expressions hold", - "items": { - "$ref": "#/$defs/AnonymousClassExpression" - }, - "type": "array" - }, "alt_descriptions": { "additionalProperties": { "anyOf": [ @@ -929,38 +986,18 @@ "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": { "anyOf": [ { - "$ref": "#/$defs/SlotDefinition__identifier_optional" + "$ref": "#/$defs/Annotation__identifier_optional" }, { - "type": "null" + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" } ] }, - "description": "Inline definition of slots", + "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" }, "broad_mappings": { @@ -977,21 +1014,6 @@ }, "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. Classification rules allow for automatically assigning the instantiated type of an instance.", - "items": { - "$ref": "#/$defs/AnonymousClassExpression" - }, - "type": "array" - }, "close_mappings": { "description": "A list of terms from different schemas or terminology systems that have close meaning.", "items": { @@ -1006,10 +1028,6 @@ }, "type": "array" }, - "conforms_to": { - "description": "An established standard to which the element conforms.", - "type": "string" - }, "contributors": { "description": "agent that contributed to the element", "items": { @@ -1026,17 +1044,6 @@ "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. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri", - "type": "string" - }, "deprecated": { "description": "Description of why and when this element will no longer be used", "type": "string" @@ -1053,10 +1060,10 @@ "description": "a textual 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", + "dimensions": { + "description": "definitions of each axis in the array", "items": { - "type": "string" + "$ref": "#/$defs/DimensionExpression" }, "type": "array" }, @@ -1067,12 +1074,9 @@ }, "type": "array" }, - "exactly_one_of": { - "description": "holds if only one of the expressions hold", - "items": { - "$ref": "#/$defs/AnonymousClassExpression" - }, - "type": "array" + "exact_number_dimensions": { + "description": "exact number of dimensions in the array", + "type": "integer" }, "examples": { "description": "example usages of an element", @@ -1083,7 +1087,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -1092,24 +1104,10 @@ "description": "id of the schema that defined the element", "type": "string" }, - "id_prefixes": { - "description": "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix", - "items": { - "type": "string" - }, - "type": "array" - }, - "id_prefixes_are_closed": { - "description": "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation.", + "has_extra_dimensions": { + "description": "If this is set to true", "type": "boolean" }, - "implements": { - "description": "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element.", - "items": { - "type": "string" - }, - "type": "array" - }, "imported_from": { "description": "the imports entry that this element was derived from. Empty means primary source", "type": "string" @@ -1125,17 +1123,6 @@ }, "type": "array" }, - "instantiates": { - "description": "An element in another schema which this element instantiates.", - "items": { - "type": "string" - }, - "type": "array" - }, - "is_a": { - "description": "A primary parent class from which inheritable metaslots are propagated", - "type": "string" - }, "keywords": { "description": "Keywords or tags used to describe the element", "items": { @@ -1148,20 +1135,6 @@ "format": "date-time", "type": "string" }, - "local_names": { - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/$defs/LocalName__identifier_optional" - }, - { - "description": "a name assigned to an element in a given ontology", - "type": "string" - } - ] - }, - "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": { @@ -1169,25 +1142,26 @@ }, "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" + "maximum_number_dimensions": { + "$ref": "#/$defs/Anything", + "anyOf": [ + { + "type": "integer" + }, + { + "type": "boolean" + } + ], + "description": "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" + }, + "minimum_number_dimensions": { + "description": "minimum number of dimensions in the array", + "type": "integer" }, "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": { @@ -1195,13 +1169,6 @@ }, "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 primarily for internal consumption", "items": { @@ -1220,17 +1187,6 @@ }, "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 list of related entities or URLs that may be of relevance", "items": { @@ -1238,68 +1194,21 @@ }, "type": "array" }, - "slot_conditions": { - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/$defs/SlotDefinition__identifier_optional" - }, - { - "type": "null" - } - ] - }, - "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" }, - "slot_names_unique": { - "description": "if true then induced/mangled slot names are not created for class_usage and attributes", - "type": "boolean" + "status": { + "description": "status of the element", + "type": "string" }, - "slot_usage": { - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/$defs/SlotDefinition__identifier_optional" - }, - { - "type": "null" - } - ] - }, - "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, used to provide aliases in conjunction with additional metadata.", - "items": { - "$ref": "#/$defs/StructuredAlias" + "structured_aliases": { + "description": "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata.", + "items": { + "$ref": "#/$defs/StructuredAlias" }, "type": "array" }, - "subclass_of": { - "description": "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation", - "type": "string" - }, "title": { "description": "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation.", "type": "string" @@ -1310,40 +1219,12 @@ "type": "string" }, "type": "array" - }, - "tree_root": { - "description": "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations", - "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 named 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 hierarchy into an enumerated list of possible values in every serialization of the model.", - "items": { - "type": "string" - }, - "type": "array" } }, - "required": [ - "name" - ], - "title": "ClassDefinition", + "title": "ArrayExpression", "type": "object" }, - "ClassDefinition__identifier_optional": { + "ClassDefinition": { "additionalProperties": false, "description": "an element whose instances are complex objects that may have slot-value assignments", "properties": { @@ -1382,7 +1263,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -1505,12 +1394,904 @@ "description": "a textual 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" + "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": { + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] + }, + "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": "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "id_prefixes_are_closed": { + "description": "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation.", + "type": "boolean" + }, + "implements": { + "description": "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element.", + "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": { + "description": "the primary language used in the sources", + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instantiates": { + "description": "An element in another schema which this element instantiates.", + "items": { + "type": "string" + }, + "type": "array" + }, + "is_a": { + "description": "A primary parent class from which inheritable metaslots are propagated", + "type": "string" + }, + "keywords": { + "description": "Keywords or tags used to describe the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + { + "description": "a name assigned to an element in a given ontology", + "type": "string" + } + ] + }, + "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 primarily 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 list of related entities or URLs that may be of relevance", + "items": { + "type": "string" + }, + "type": "array" + }, + "slot_conditions": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + { + "type": "null" + } + ] + }, + "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": { + "anyOf": [ + { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + { + "type": "null" + } + ] + }, + "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, used to provide aliases in conjunction with additional metadata.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "subclass_of": { + "description": "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation", + "type": "string" + }, + "title": { + "description": "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation.", + "type": "string" + }, + "todos": { + "description": "Outstanding issues that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "tree_root": { + "description": "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations", + "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": { + "anyOf": [ + { + "$ref": "#/$defs/UniqueKey__identifier_optional" + }, + { + "description": "list of slot names that form a key. The tuple formed from the values of all these slots should be unique.", + "items": { + "type": "string" + }, + "type": "array" + } + ] + }, + "description": "A collection of named 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 hierarchy 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 purposes.", + "type": "boolean" + }, + "aliases": { + "description": "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment.", + "items": { + "type": "string" + }, + "type": "array" + }, + "all_of": { + "description": "holds if all of the expressions hold", + "items": { + "$ref": "#/$defs/AnonymousClassExpression" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + { + "description": "text of an attributed description", + "type": "string" + } + ] + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] + }, + "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": { + "anyOf": [ + { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + { + "type": "null" + } + ] + }, + "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" + }, + "categories": { + "description": "Controlled terms used to categorize an element.", + "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. Classification rules allow for automatically assigning the instantiated type of an instance.", + "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 primarily for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "conforms_to": { + "description": "An established standard to which the element conforms.", + "type": "string" + }, + "contributors": { + "description": "agent that contributed to the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "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. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri", + "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 textual 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": { + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] + }, + "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": "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix", + "items": { + "type": "string" + }, + "type": "array" + }, + "id_prefixes_are_closed": { + "description": "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation.", + "type": "boolean" + }, + "implements": { + "description": "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element.", + "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": { + "description": "the primary language used in the sources", + "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.", + "items": { + "type": "string" + }, + "type": "array" + }, + "instantiates": { + "description": "An element in another schema which this element instantiates.", + "items": { + "type": "string" + }, + "type": "array" + }, + "is_a": { + "description": "A primary parent class from which inheritable metaslots are propagated", + "type": "string" + }, + "keywords": { + "description": "Keywords or tags used to describe the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "last_updated_on": { + "description": "time at which the element was last updated", + "format": "date-time", + "type": "string" + }, + "local_names": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/LocalName__identifier_optional" + }, + { + "description": "a name assigned to an element in a given ontology", + "type": "string" + } + ] + }, + "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 primarily 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 list of related entities or URLs that may be of relevance", + "items": { + "type": "string" + }, + "type": "array" + }, + "slot_conditions": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + { + "type": "null" + } + ] + }, + "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": { + "anyOf": [ + { + "$ref": "#/$defs/SlotDefinition__identifier_optional" + }, + { + "type": "null" + } + ] + }, + "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, used to provide aliases in conjunction with additional metadata.", + "items": { + "$ref": "#/$defs/StructuredAlias" + }, + "type": "array" + }, + "subclass_of": { + "description": "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation", + "type": "string" + }, + "title": { + "description": "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation.", + "type": "string" + }, + "todos": { + "description": "Outstanding issues that needs resolution", + "items": { + "type": "string" + }, + "type": "array" + }, + "tree_root": { + "description": "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations", + "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": { + "anyOf": [ + { + "$ref": "#/$defs/UniqueKey__identifier_optional" + }, + { + "description": "list of slot names that form a key. The tuple formed from the values of all these slots should be unique.", + "items": { + "type": "string" + }, + "type": "array" + } + ] + }, + "description": "A collection of named 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 hierarchy 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": "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment.", + "items": { + "type": "string" + }, + "type": "array" + }, + "alt_descriptions": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/AltDescription__identifier_optional" + }, + { + "description": "text of an attributed description", + "type": "string" + } + ] + }, + "description": "A sourced alternative description for an element", + "type": "object" + }, + "annotations": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] + }, + "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" + }, + "categories": { + "description": "Controlled terms used to categorize an element.", + "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 primarily for external consumption", + "items": { + "type": "string" + }, + "type": "array" + }, + "contributors": { + "description": "agent that contributed to the element", + "items": { + "type": "string" + }, + "type": "array" + }, + "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" + }, + "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 textual 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.", @@ -1519,13 +2300,6 @@ }, "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": { @@ -1535,7 +2309,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -1544,24 +2326,6 @@ "description": "id of the schema that defined the element", "type": "string" }, - "id_prefixes": { - "description": "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix", - "items": { - "type": "string" - }, - "type": "array" - }, - "id_prefixes_are_closed": { - "description": "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation.", - "type": "boolean" - }, - "implements": { - "description": "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element.", - "items": { - "type": "string" - }, - "type": "array" - }, "imported_from": { "description": "the imports entry that this element was derived from. Empty means primary source", "type": "string" @@ -1577,17 +2341,6 @@ }, "type": "array" }, - "instantiates": { - "description": "An element in another schema which this element instantiates.", - "items": { - "type": "string" - }, - "type": "array" - }, - "is_a": { - "description": "A primary parent class from which inheritable metaslots are propagated", - "type": "string" - }, "keywords": { "description": "Keywords or tags used to describe the element", "items": { @@ -1600,20 +2353,6 @@ "format": "date-time", "type": "string" }, - "local_names": { - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/$defs/LocalName__identifier_optional" - }, - { - "description": "a name assigned to an element in a given ontology", - "type": "string" - } - ] - }, - "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": { @@ -1621,25 +2360,10 @@ }, "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": { @@ -1647,13 +2371,6 @@ }, "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 primarily for internal consumption", "items": { @@ -1661,6 +2378,18 @@ }, "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" @@ -1672,17 +2401,6 @@ }, "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 list of related entities or URLs that may be of relevance", "items": { @@ -1690,45 +2408,6 @@ }, "type": "array" }, - "slot_conditions": { - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/$defs/SlotDefinition__identifier_optional" - }, - { - "type": "null" - } - ] - }, - "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": { - "anyOf": [ - { - "$ref": "#/$defs/SlotDefinition__identifier_optional" - }, - { - "type": "null" - } - ] - }, - "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" @@ -1737,10 +2416,6 @@ "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, used to provide aliases in conjunction with additional metadata.", "items": { @@ -1748,10 +2423,6 @@ }, "type": "array" }, - "subclass_of": { - "description": "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation", - "type": "string" - }, "title": { "description": "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation.", "type": "string" @@ -1762,41 +2433,19 @@ "type": "string" }, "type": "array" - }, - "tree_root": { - "description": "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations", - "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 named 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 hierarchy into an enumerated list of possible values in every serialization of the model.", - "items": { - "type": "string" - }, - "type": "array" } }, - "required": [], - "title": "ClassDefinition", + "title": "ClassRule", "type": "object" }, - "ClassRule": { + "DimensionExpression": { "additionalProperties": false, - "description": "A rule that applies to instances of a class", + "description": "defines one of the dimensions of an array", "properties": { + "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": "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment.", "items": { @@ -1821,15 +2470,19 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "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": { @@ -1874,10 +2527,6 @@ "format": "date-time", "type": "string" }, - "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" @@ -1894,9 +2543,9 @@ "description": "a textual 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_cardinality": { + "description": "the exact number of entries for a multivalued slot", + "type": "integer" }, "exact_mappings": { "description": "A list of terms from different schemas or terminology systems that have identical meaning.", @@ -1914,7 +2563,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -1957,6 +2614,14 @@ }, "type": "array" }, + "maximum_cardinality": { + "description": "the maximum number of entries for a multivalued slot", + "type": "integer" + }, + "minimum_cardinality": { + "description": "the minimum number of entries for a multivalued slot", + "type": "integer" + }, "modified_by": { "description": "agent that modified the element", "type": "string" @@ -1975,18 +2640,6 @@ }, "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" @@ -2032,7 +2685,7 @@ "type": "array" } }, - "title": "ClassRule", + "title": "DimensionExpression", "type": "object" }, "EnumDefinition": { @@ -2067,7 +2720,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -2186,7 +2847,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -2446,7 +3115,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -2565,7 +3242,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -2891,7 +3576,15 @@ "properties": { "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -2918,7 +3611,15 @@ "properties": { "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -2966,7 +3667,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -3047,7 +3756,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -3269,7 +3986,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -3364,7 +4089,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -3524,7 +4257,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -3605,7 +4346,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -3754,7 +4503,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -3835,7 +4592,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -3987,7 +4752,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -4068,7 +4841,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -4329,7 +5110,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -4468,7 +5257,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -4827,7 +5624,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -4846,6 +5651,10 @@ }, "type": "array" }, + "array": { + "$ref": "#/$defs/ArrayExpression", + "description": "coerces the value of the slot into an array and defines the dimensions of that 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" @@ -4967,6 +5776,10 @@ }, "type": "array" }, + "exact_cardinality": { + "description": "the exact number of entries for a multivalued slot", + "type": "integer" + }, "exact_mappings": { "description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": { @@ -4990,7 +5803,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -5412,7 +6233,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -5431,6 +6260,10 @@ }, "type": "array" }, + "array": { + "$ref": "#/$defs/ArrayExpression", + "description": "coerces the value of the slot into an array and defines the dimensions of that 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" @@ -5552,6 +6385,10 @@ }, "type": "array" }, + "exact_cardinality": { + "description": "the exact number of entries for a multivalued slot", + "type": "integer" + }, "exact_mappings": { "description": "A list of terms from different schemas or terminology systems that have identical meaning.", "items": { @@ -5575,7 +6412,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -5976,7 +6821,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -6057,7 +6910,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -6205,7 +7066,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -6294,7 +7163,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -6477,7 +7354,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -6566,7 +7451,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -6754,7 +7647,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -6876,7 +7777,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -7116,7 +8025,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -7238,7 +8155,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -7469,7 +8394,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -7554,7 +8487,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -7706,7 +8647,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -7791,7 +8740,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -7987,7 +8944,15 @@ }, "annotations": { "additionalProperties": { - "$ref": "#/$defs/Annotation__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Annotation__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a collection of tag/text tuples with the semantics of OWL Annotation", "type": "object" @@ -8126,7 +9091,15 @@ }, "extensions": { "additionalProperties": { - "$ref": "#/$defs/Extension__identifier_optional" + "anyOf": [ + { + "$ref": "#/$defs/Extension__identifier_optional" + }, + { + "$ref": "#/$defs/AnyValue", + "description": "the actual annotation" + } + ] }, "description": "a tag/text tuple attached to an arbitrary element", "type": "object" @@ -8398,5 +9371,5 @@ ], "title": "meta", "type": "object", - "version": "2.0.0" + "version": null } \ No newline at end of file diff --git a/linkml_runtime/linkml_model/mappings.py b/linkml_runtime/linkml_model/mappings.py index 890a0734..e8a146ca 100644 --- a/linkml_runtime/linkml_model/mappings.py +++ b/linkml_runtime/linkml_model/mappings.py @@ -1,5 +1,5 @@ # Auto generated from mappings.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:05:58 +# Generation date: 2024-02-07T17:29:35 # Schema: mappings # # id: https://w3id.org/linkml/mappings diff --git a/linkml_runtime/linkml_model/meta.py b/linkml_runtime/linkml_model/meta.py index f6583822..9edd8d13 100644 --- a/linkml_runtime/linkml_model/meta.py +++ b/linkml_runtime/linkml_model/meta.py @@ -1,5 +1,5 @@ # Auto generated from meta.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:06:00 +# Generation date: 2024-02-07T17:29:36 # Schema: meta # # id: https://w3id.org/linkml/meta @@ -24,7 +24,6 @@ # # * [MinimalSubset](https://w3id.org/linkml/MinimalSubset) # * [BasicSubset](https://w3id.org/linkml/BasicSubset) -# * [BasicSubset](https://w3id.org/linkml/BasicSubset) # # For canonical reference documentation on any metamodel construct, # refer to the official URI for each construct, e.g. @@ -52,7 +51,7 @@ from linkml_runtime.utils.metamodelcore import Bool, NCName, URI, URIorCURIE, XSDDateTime metamodel_version = "1.7.0" -version = "2.0.0" +version = None # Overwrite dataclasses _init_fn to add **kwargs in __init__ dataclasses._init_fn = dataclasses_init_fn_with_kwargs @@ -1766,7 +1765,7 @@ class SlotExpression(Expression): """ an expression that constrains the range of values a slot can take """ - _inherited_slots: ClassVar[List[str]] = ["range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "minimum_cardinality", "maximum_cardinality"] + _inherited_slots: ClassVar[List[str]] = ["range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "exact_cardinality", "minimum_cardinality", "maximum_cardinality"] class_class_uri: ClassVar[URIRef] = LINKML["SlotExpression"] class_class_curie: ClassVar[str] = "linkml:SlotExpression" @@ -1791,6 +1790,7 @@ class SlotExpression(Expression): equals_string_in: Optional[Union[str, List[str]]] = empty_list() equals_number: Optional[int] = None equals_expression: Optional[str] = None + exact_cardinality: Optional[int] = None minimum_cardinality: Optional[int] = None maximum_cardinality: Optional[int] = None has_member: Optional[Union[dict, "AnonymousSlotExpression"]] = None @@ -1850,6 +1850,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.equals_expression is not None and not isinstance(self.equals_expression, str): self.equals_expression = str(self.equals_expression) + if self.exact_cardinality is not None and not isinstance(self.exact_cardinality, int): + self.exact_cardinality = int(self.exact_cardinality) + if self.minimum_cardinality is not None and not isinstance(self.minimum_cardinality, int): self.minimum_cardinality = int(self.minimum_cardinality) @@ -1883,7 +1886,7 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): @dataclass class AnonymousSlotExpression(AnonymousExpression): - _inherited_slots: ClassVar[List[str]] = ["range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "minimum_cardinality", "maximum_cardinality"] + _inherited_slots: ClassVar[List[str]] = ["range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "exact_cardinality", "minimum_cardinality", "maximum_cardinality"] class_class_uri: ClassVar[URIRef] = LINKML["AnonymousSlotExpression"] class_class_curie: ClassVar[str] = "linkml:AnonymousSlotExpression" @@ -1908,6 +1911,7 @@ class AnonymousSlotExpression(AnonymousExpression): equals_string_in: Optional[Union[str, List[str]]] = empty_list() equals_number: Optional[int] = None equals_expression: Optional[str] = None + exact_cardinality: Optional[int] = None minimum_cardinality: Optional[int] = None maximum_cardinality: Optional[int] = None has_member: Optional[Union[dict, "AnonymousSlotExpression"]] = None @@ -1967,6 +1971,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.equals_expression is not None and not isinstance(self.equals_expression, str): self.equals_expression = str(self.equals_expression) + if self.exact_cardinality is not None and not isinstance(self.exact_cardinality, int): + self.exact_cardinality = int(self.exact_cardinality) + if self.minimum_cardinality is not None and not isinstance(self.minimum_cardinality, int): self.minimum_cardinality = int(self.minimum_cardinality) @@ -2003,7 +2010,7 @@ class SlotDefinition(Definition): """ an element that describes how instances are related to other instances """ - _inherited_slots: ClassVar[List[str]] = ["domain", "multivalued", "inherited", "readonly", "ifabsent", "list_elements_unique", "list_elements_ordered", "shared", "key", "identifier", "designates_type", "role", "relational_role", "range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "minimum_cardinality", "maximum_cardinality"] + _inherited_slots: ClassVar[List[str]] = ["domain", "multivalued", "array", "inherited", "readonly", "ifabsent", "list_elements_unique", "list_elements_ordered", "shared", "key", "identifier", "designates_type", "role", "relational_role", "range", "required", "recommended", "inlined", "inlined_as_list", "minimum_value", "maximum_value", "pattern", "structured_pattern", "value_presence", "equals_string", "equals_string_in", "equals_number", "equals_expression", "exact_cardinality", "minimum_cardinality", "maximum_cardinality"] class_class_uri: ClassVar[URIRef] = LINKML["SlotDefinition"] class_class_curie: ClassVar[str] = "linkml:SlotDefinition" @@ -2015,6 +2022,7 @@ class SlotDefinition(Definition): domain: Optional[Union[str, ClassDefinitionName]] = None slot_uri: Optional[Union[str, URIorCURIE]] = None multivalued: Optional[Union[bool, Bool]] = None + array: Optional[Union[dict, "ArrayExpression"]] = None inherited: Optional[Union[bool, Bool]] = None readonly: Optional[str] = None ifabsent: Optional[str] = None @@ -2069,6 +2077,7 @@ class SlotDefinition(Definition): equals_string_in: Optional[Union[str, List[str]]] = empty_list() equals_number: Optional[int] = None equals_expression: Optional[str] = None + exact_cardinality: Optional[int] = None minimum_cardinality: Optional[int] = None maximum_cardinality: Optional[int] = None has_member: Optional[Union[dict, AnonymousSlotExpression]] = None @@ -2096,6 +2105,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.multivalued is not None and not isinstance(self.multivalued, Bool): self.multivalued = Bool(self.multivalued) + if self.array is not None and not isinstance(self.array, ArrayExpression): + self.array = ArrayExpression(**as_dict(self.array)) + if self.inherited is not None and not isinstance(self.inherited, Bool): self.inherited = Bool(self.inherited) @@ -2258,6 +2270,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.equals_expression is not None and not isinstance(self.equals_expression, str): self.equals_expression = str(self.equals_expression) + if self.exact_cardinality is not None and not isinstance(self.exact_cardinality, int): + self.exact_cardinality = int(self.exact_cardinality) + if self.minimum_cardinality is not None and not isinstance(self.minimum_cardinality, int): self.minimum_cardinality = int(self.minimum_cardinality) @@ -2698,6 +2713,378 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): super().__post_init__(**kwargs) +@dataclass +class ArrayExpression(YAMLRoot): + """ + defines the dimensions of an array + """ + _inherited_slots: ClassVar[List[str]] = [] + + class_class_uri: ClassVar[URIRef] = LINKML["ArrayExpression"] + class_class_curie: ClassVar[str] = "linkml:ArrayExpression" + class_name: ClassVar[str] = "array_expression" + class_model_uri: ClassVar[URIRef] = LINKML.ArrayExpression + + exact_number_dimensions: Optional[int] = None + minimum_number_dimensions: Optional[int] = None + maximum_number_dimensions: Optional[Union[dict, Anything]] = None + has_extra_dimensions: Optional[Union[bool, Bool]] = None + dimensions: Optional[Union[Union[dict, "DimensionExpression"], List[Union[dict, "DimensionExpression"]]]] = 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 + alt_descriptions: Optional[Union[Dict[Union[str, AltDescriptionSource], Union[dict, "AltDescription"]], List[Union[dict, "AltDescription"]]]] = empty_dict() + title: Optional[str] = None + deprecated: Optional[str] = None + todos: Optional[Union[str, List[str]]] = empty_list() + notes: Optional[Union[str, List[str]]] = empty_list() + comments: Optional[Union[str, List[str]]] = empty_list() + examples: Optional[Union[Union[dict, "Example"], List[Union[dict, "Example"]]]] = empty_list() + in_subset: Optional[Union[Union[str, SubsetDefinitionName], List[Union[str, SubsetDefinitionName]]]] = empty_list() + from_schema: Optional[Union[str, URI]] = None + imported_from: Optional[str] = None + source: Optional[Union[str, URIorCURIE]] = None + in_language: Optional[str] = None + see_also: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + deprecated_element_has_exact_replacement: Optional[Union[str, URIorCURIE]] = None + deprecated_element_has_possible_replacement: Optional[Union[str, URIorCURIE]] = None + aliases: Optional[Union[str, List[str]]] = empty_list() + structured_aliases: Optional[Union[Union[dict, StructuredAlias], List[Union[dict, StructuredAlias]]]] = empty_list() + mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + exact_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + close_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + related_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + narrow_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + broad_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + created_by: Optional[Union[str, URIorCURIE]] = None + contributors: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + created_on: Optional[Union[str, XSDDateTime]] = None + last_updated_on: Optional[Union[str, XSDDateTime]] = None + modified_by: Optional[Union[str, URIorCURIE]] = None + status: Optional[Union[str, URIorCURIE]] = None + rank: Optional[int] = None + categories: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + keywords: Optional[Union[str, List[str]]] = empty_list() + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.exact_number_dimensions is not None and not isinstance(self.exact_number_dimensions, int): + self.exact_number_dimensions = int(self.exact_number_dimensions) + + if self.minimum_number_dimensions is not None and not isinstance(self.minimum_number_dimensions, int): + self.minimum_number_dimensions = int(self.minimum_number_dimensions) + + if self.has_extra_dimensions is not None and not isinstance(self.has_extra_dimensions, Bool): + self.has_extra_dimensions = Bool(self.has_extra_dimensions) + + if not isinstance(self.dimensions, list): + self.dimensions = [self.dimensions] if self.dimensions is not None else [] + self.dimensions = [v if isinstance(v, DimensionExpression) else DimensionExpression(**as_dict(v)) for v in self.dimensions] + + 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) + + if self.description is not None and not isinstance(self.description, str): + self.description = str(self.description) + + self._normalize_inlined_as_dict(slot_name="alt_descriptions", slot_type=AltDescription, key_name="source", keyed=True) + + if self.title is not None and not isinstance(self.title, str): + self.title = str(self.title) + + if self.deprecated is not None and not isinstance(self.deprecated, str): + self.deprecated = str(self.deprecated) + + if not isinstance(self.todos, list): + self.todos = [self.todos] if self.todos is not None else [] + self.todos = [v if isinstance(v, str) else str(v) for v in self.todos] + + if not isinstance(self.notes, list): + self.notes = [self.notes] if self.notes is not None else [] + self.notes = [v if isinstance(v, str) else str(v) for v in self.notes] + + if not isinstance(self.comments, list): + self.comments = [self.comments] if self.comments is not None else [] + self.comments = [v if isinstance(v, str) else str(v) for v in self.comments] + + if not isinstance(self.examples, list): + self.examples = [self.examples] if self.examples is not None else [] + self.examples = [v if isinstance(v, Example) else Example(**as_dict(v)) for v in self.examples] + + if not isinstance(self.in_subset, list): + self.in_subset = [self.in_subset] if self.in_subset is not None else [] + self.in_subset = [v if isinstance(v, SubsetDefinitionName) else SubsetDefinitionName(v) for v in self.in_subset] + + if self.from_schema is not None and not isinstance(self.from_schema, URI): + self.from_schema = URI(self.from_schema) + + if self.imported_from is not None and not isinstance(self.imported_from, str): + self.imported_from = str(self.imported_from) + + if self.source is not None and not isinstance(self.source, URIorCURIE): + self.source = URIorCURIE(self.source) + + if self.in_language is not None and not isinstance(self.in_language, str): + self.in_language = str(self.in_language) + + if not isinstance(self.see_also, list): + self.see_also = [self.see_also] if self.see_also is not None else [] + self.see_also = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.see_also] + + if self.deprecated_element_has_exact_replacement is not None and not isinstance(self.deprecated_element_has_exact_replacement, URIorCURIE): + self.deprecated_element_has_exact_replacement = URIorCURIE(self.deprecated_element_has_exact_replacement) + + if self.deprecated_element_has_possible_replacement is not None and not isinstance(self.deprecated_element_has_possible_replacement, URIorCURIE): + self.deprecated_element_has_possible_replacement = URIorCURIE(self.deprecated_element_has_possible_replacement) + + if not isinstance(self.aliases, list): + self.aliases = [self.aliases] if self.aliases is not None else [] + self.aliases = [v if isinstance(v, str) else str(v) for v in self.aliases] + + self._normalize_inlined_as_dict(slot_name="structured_aliases", slot_type=StructuredAlias, key_name="literal_form", keyed=False) + + if not isinstance(self.mappings, list): + self.mappings = [self.mappings] if self.mappings is not None else [] + self.mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.mappings] + + if not isinstance(self.exact_mappings, list): + self.exact_mappings = [self.exact_mappings] if self.exact_mappings is not None else [] + self.exact_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.exact_mappings] + + if not isinstance(self.close_mappings, list): + self.close_mappings = [self.close_mappings] if self.close_mappings is not None else [] + self.close_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.close_mappings] + + if not isinstance(self.related_mappings, list): + self.related_mappings = [self.related_mappings] if self.related_mappings is not None else [] + self.related_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.related_mappings] + + if not isinstance(self.narrow_mappings, list): + self.narrow_mappings = [self.narrow_mappings] if self.narrow_mappings is not None else [] + self.narrow_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.narrow_mappings] + + if not isinstance(self.broad_mappings, list): + self.broad_mappings = [self.broad_mappings] if self.broad_mappings is not None else [] + self.broad_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.broad_mappings] + + if self.created_by is not None and not isinstance(self.created_by, URIorCURIE): + self.created_by = URIorCURIE(self.created_by) + + if not isinstance(self.contributors, list): + self.contributors = [self.contributors] if self.contributors is not None else [] + self.contributors = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.contributors] + + if self.created_on is not None and not isinstance(self.created_on, XSDDateTime): + self.created_on = XSDDateTime(self.created_on) + + if self.last_updated_on is not None and not isinstance(self.last_updated_on, XSDDateTime): + self.last_updated_on = XSDDateTime(self.last_updated_on) + + if self.modified_by is not None and not isinstance(self.modified_by, URIorCURIE): + self.modified_by = URIorCURIE(self.modified_by) + + if self.status is not None and not isinstance(self.status, URIorCURIE): + self.status = URIorCURIE(self.status) + + if self.rank is not None and not isinstance(self.rank, int): + self.rank = int(self.rank) + + if not isinstance(self.categories, list): + self.categories = [self.categories] if self.categories is not None else [] + self.categories = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.categories] + + if not isinstance(self.keywords, list): + self.keywords = [self.keywords] if self.keywords is not None else [] + self.keywords = [v if isinstance(v, str) else str(v) for v in self.keywords] + + super().__post_init__(**kwargs) + + +@dataclass +class DimensionExpression(YAMLRoot): + """ + defines one of the dimensions of an array + """ + _inherited_slots: ClassVar[List[str]] = ["maximum_cardinality", "minimum_cardinality", "exact_cardinality"] + + class_class_uri: ClassVar[URIRef] = LINKML["DimensionExpression"] + class_class_curie: ClassVar[str] = "linkml:DimensionExpression" + class_name: ClassVar[str] = "dimension_expression" + class_model_uri: ClassVar[URIRef] = LINKML.DimensionExpression + + alias: Optional[str] = None + maximum_cardinality: Optional[int] = None + minimum_cardinality: Optional[int] = None + exact_cardinality: Optional[int] = None + 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 + alt_descriptions: Optional[Union[Dict[Union[str, AltDescriptionSource], Union[dict, "AltDescription"]], List[Union[dict, "AltDescription"]]]] = empty_dict() + title: Optional[str] = None + deprecated: Optional[str] = None + todos: Optional[Union[str, List[str]]] = empty_list() + notes: Optional[Union[str, List[str]]] = empty_list() + comments: Optional[Union[str, List[str]]] = empty_list() + examples: Optional[Union[Union[dict, "Example"], List[Union[dict, "Example"]]]] = empty_list() + in_subset: Optional[Union[Union[str, SubsetDefinitionName], List[Union[str, SubsetDefinitionName]]]] = empty_list() + from_schema: Optional[Union[str, URI]] = None + imported_from: Optional[str] = None + source: Optional[Union[str, URIorCURIE]] = None + in_language: Optional[str] = None + see_also: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + deprecated_element_has_exact_replacement: Optional[Union[str, URIorCURIE]] = None + deprecated_element_has_possible_replacement: Optional[Union[str, URIorCURIE]] = None + aliases: Optional[Union[str, List[str]]] = empty_list() + structured_aliases: Optional[Union[Union[dict, StructuredAlias], List[Union[dict, StructuredAlias]]]] = empty_list() + mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + exact_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + close_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + related_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + narrow_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + broad_mappings: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + created_by: Optional[Union[str, URIorCURIE]] = None + contributors: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + created_on: Optional[Union[str, XSDDateTime]] = None + last_updated_on: Optional[Union[str, XSDDateTime]] = None + modified_by: Optional[Union[str, URIorCURIE]] = None + status: Optional[Union[str, URIorCURIE]] = None + rank: Optional[int] = None + categories: Optional[Union[Union[str, URIorCURIE], List[Union[str, URIorCURIE]]]] = empty_list() + keywords: Optional[Union[str, List[str]]] = empty_list() + + def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): + if self.alias is not None and not isinstance(self.alias, str): + self.alias = str(self.alias) + + if self.maximum_cardinality is not None and not isinstance(self.maximum_cardinality, int): + self.maximum_cardinality = int(self.maximum_cardinality) + + if self.minimum_cardinality is not None and not isinstance(self.minimum_cardinality, int): + self.minimum_cardinality = int(self.minimum_cardinality) + + if self.exact_cardinality is not None and not isinstance(self.exact_cardinality, int): + self.exact_cardinality = int(self.exact_cardinality) + + 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) + + if self.description is not None and not isinstance(self.description, str): + self.description = str(self.description) + + self._normalize_inlined_as_dict(slot_name="alt_descriptions", slot_type=AltDescription, key_name="source", keyed=True) + + if self.title is not None and not isinstance(self.title, str): + self.title = str(self.title) + + if self.deprecated is not None and not isinstance(self.deprecated, str): + self.deprecated = str(self.deprecated) + + if not isinstance(self.todos, list): + self.todos = [self.todos] if self.todos is not None else [] + self.todos = [v if isinstance(v, str) else str(v) for v in self.todos] + + if not isinstance(self.notes, list): + self.notes = [self.notes] if self.notes is not None else [] + self.notes = [v if isinstance(v, str) else str(v) for v in self.notes] + + if not isinstance(self.comments, list): + self.comments = [self.comments] if self.comments is not None else [] + self.comments = [v if isinstance(v, str) else str(v) for v in self.comments] + + if not isinstance(self.examples, list): + self.examples = [self.examples] if self.examples is not None else [] + self.examples = [v if isinstance(v, Example) else Example(**as_dict(v)) for v in self.examples] + + if not isinstance(self.in_subset, list): + self.in_subset = [self.in_subset] if self.in_subset is not None else [] + self.in_subset = [v if isinstance(v, SubsetDefinitionName) else SubsetDefinitionName(v) for v in self.in_subset] + + if self.from_schema is not None and not isinstance(self.from_schema, URI): + self.from_schema = URI(self.from_schema) + + if self.imported_from is not None and not isinstance(self.imported_from, str): + self.imported_from = str(self.imported_from) + + if self.source is not None and not isinstance(self.source, URIorCURIE): + self.source = URIorCURIE(self.source) + + if self.in_language is not None and not isinstance(self.in_language, str): + self.in_language = str(self.in_language) + + if not isinstance(self.see_also, list): + self.see_also = [self.see_also] if self.see_also is not None else [] + self.see_also = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.see_also] + + if self.deprecated_element_has_exact_replacement is not None and not isinstance(self.deprecated_element_has_exact_replacement, URIorCURIE): + self.deprecated_element_has_exact_replacement = URIorCURIE(self.deprecated_element_has_exact_replacement) + + if self.deprecated_element_has_possible_replacement is not None and not isinstance(self.deprecated_element_has_possible_replacement, URIorCURIE): + self.deprecated_element_has_possible_replacement = URIorCURIE(self.deprecated_element_has_possible_replacement) + + if not isinstance(self.aliases, list): + self.aliases = [self.aliases] if self.aliases is not None else [] + self.aliases = [v if isinstance(v, str) else str(v) for v in self.aliases] + + self._normalize_inlined_as_dict(slot_name="structured_aliases", slot_type=StructuredAlias, key_name="literal_form", keyed=False) + + if not isinstance(self.mappings, list): + self.mappings = [self.mappings] if self.mappings is not None else [] + self.mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.mappings] + + if not isinstance(self.exact_mappings, list): + self.exact_mappings = [self.exact_mappings] if self.exact_mappings is not None else [] + self.exact_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.exact_mappings] + + if not isinstance(self.close_mappings, list): + self.close_mappings = [self.close_mappings] if self.close_mappings is not None else [] + self.close_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.close_mappings] + + if not isinstance(self.related_mappings, list): + self.related_mappings = [self.related_mappings] if self.related_mappings is not None else [] + self.related_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.related_mappings] + + if not isinstance(self.narrow_mappings, list): + self.narrow_mappings = [self.narrow_mappings] if self.narrow_mappings is not None else [] + self.narrow_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.narrow_mappings] + + if not isinstance(self.broad_mappings, list): + self.broad_mappings = [self.broad_mappings] if self.broad_mappings is not None else [] + self.broad_mappings = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.broad_mappings] + + if self.created_by is not None and not isinstance(self.created_by, URIorCURIE): + self.created_by = URIorCURIE(self.created_by) + + if not isinstance(self.contributors, list): + self.contributors = [self.contributors] if self.contributors is not None else [] + self.contributors = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.contributors] + + if self.created_on is not None and not isinstance(self.created_on, XSDDateTime): + self.created_on = XSDDateTime(self.created_on) + + if self.last_updated_on is not None and not isinstance(self.last_updated_on, XSDDateTime): + self.last_updated_on = XSDDateTime(self.last_updated_on) + + if self.modified_by is not None and not isinstance(self.modified_by, URIorCURIE): + self.modified_by = URIorCURIE(self.modified_by) + + if self.status is not None and not isinstance(self.status, URIorCURIE): + self.status = URIorCURIE(self.status) + + if self.rank is not None and not isinstance(self.rank, int): + self.rank = int(self.rank) + + if not isinstance(self.categories, list): + self.categories = [self.categories] if self.categories is not None else [] + self.categories = [v if isinstance(v, URIorCURIE) else URIorCURIE(v) for v in self.categories] + + if not isinstance(self.keywords, list): + self.keywords = [self.keywords] if self.keywords is not None else [] + self.keywords = [v if isinstance(v, str) else str(v) for v in self.keywords] + + super().__post_init__(**kwargs) + + @dataclass class PatternExpression(YAMLRoot): """ @@ -4013,6 +4400,24 @@ class slots: slots.multivalued = Slot(uri=LINKML.multivalued, name="multivalued", curie=LINKML.curie('multivalued'), model_uri=LINKML.multivalued, domain=SlotDefinition, range=Optional[Union[bool, Bool]]) +slots.array = Slot(uri=LINKML.array, name="array", curie=LINKML.curie('array'), + model_uri=LINKML.array, domain=SlotDefinition, range=Optional[Union[dict, "ArrayExpression"]]) + +slots.dimensions = Slot(uri=LINKML.dimensions, name="dimensions", curie=LINKML.curie('dimensions'), + model_uri=LINKML.dimensions, domain=ArrayExpression, range=Optional[Union[Union[dict, "DimensionExpression"], List[Union[dict, "DimensionExpression"]]]]) + +slots.minimum_number_dimensions = Slot(uri=LINKML.minimum_number_dimensions, name="minimum_number_dimensions", curie=LINKML.curie('minimum_number_dimensions'), + model_uri=LINKML.minimum_number_dimensions, domain=ArrayExpression, range=Optional[int]) + +slots.maximum_number_dimensions = Slot(uri=LINKML.maximum_number_dimensions, name="maximum_number_dimensions", curie=LINKML.curie('maximum_number_dimensions'), + model_uri=LINKML.maximum_number_dimensions, domain=ArrayExpression, range=Optional[Union[dict, Anything]]) + +slots.exact_number_dimensions = Slot(uri=LINKML.exact_number_dimensions, name="exact_number_dimensions", curie=LINKML.curie('exact_number_dimensions'), + model_uri=LINKML.exact_number_dimensions, domain=ArrayExpression, range=Optional[int]) + +slots.has_extra_dimensions = Slot(uri=LINKML.has_extra_dimensions, name="has_extra_dimensions", curie=LINKML.curie('has_extra_dimensions'), + model_uri=LINKML.has_extra_dimensions, domain=ArrayExpression, range=Optional[Union[bool, Bool]]) + slots.inherited = Slot(uri=LINKML.inherited, name="inherited", curie=LINKML.curie('inherited'), model_uri=LINKML.inherited, domain=SlotDefinition, range=Optional[Union[bool, Bool]]) @@ -4043,6 +4448,9 @@ class slots: slots.equals_expression = Slot(uri=LINKML.equals_expression, name="equals_expression", curie=LINKML.curie('equals_expression'), model_uri=LINKML.equals_expression, domain=None, range=Optional[str]) +slots.exact_cardinality = Slot(uri=LINKML.exact_cardinality, name="exact_cardinality", curie=LINKML.curie('exact_cardinality'), + model_uri=LINKML.exact_cardinality, domain=None, range=Optional[int]) + slots.minimum_cardinality = Slot(uri=LINKML.minimum_cardinality, name="minimum_cardinality", curie=LINKML.curie('minimum_cardinality'), model_uri=LINKML.minimum_cardinality, domain=None, range=Optional[int]) diff --git a/linkml_runtime/linkml_model/model/schema/array.yaml b/linkml_runtime/linkml_model/model/schema/array.yaml index f0ba1d96..1d5f67fd 100644 --- a/linkml_runtime/linkml_model/model/schema/array.yaml +++ b/linkml_runtime/linkml_model/model/schema/array.yaml @@ -63,6 +63,8 @@ classes: slots: - axis - array + see_also: + - https://docs.xarray.dev/en/stable/generated/xarray.DataArray.html GroupingByArrayOrder: mixin: true diff --git a/linkml_runtime/linkml_model/model/schema/meta.yaml b/linkml_runtime/linkml_model/model/schema/meta.yaml index d4b3439a..cfcedb94 100644 --- a/linkml_runtime/linkml_model/model/schema/meta.yaml +++ b/linkml_runtime/linkml_model/model/schema/meta.yaml @@ -23,14 +23,12 @@ description: |- * [MinimalSubset](https://w3id.org/linkml/MinimalSubset) * [BasicSubset](https://w3id.org/linkml/BasicSubset) - * [BasicSubset](https://w3id.org/linkml/BasicSubset) For canonical reference documentation on any metamodel construct, refer to the official URI for each construct, e.g. [https://w3id.org/linkml/is_a](https://w3id.org/linkml/is_a) license: https://creativecommons.org/publicdomain/zero/1.0/ -version: 2.0.0 prefixes: linkml: https://w3id.org/linkml/ @@ -1427,6 +1425,62 @@ slots: - BasicSubset - ObjectOrientedProfile + array: + domain: slot_definition + range: array_expression + inherited: true + description: coerces the value of the slot into an array and defines the dimensions of that array + status: testing + + dimensions: + aliases: + - axes + description: definitions of each axis in the array + domain: array_expression + range: dimension_expression + multivalued: true + list_elements_ordered: true + status: testing + + minimum_number_dimensions: + description: minimum number of dimensions in the array + domain: array_expression + range: integer + status: testing + # minimum_value: 1 + comments: + - minimum_cardinality cannot be greater than maximum_cardinality + + maximum_number_dimensions: + description: maximum number of dimensions in the array, or False if explicitly no maximum. + If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted + as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this + value is set to False + domain: array_expression + range: Anything + any_of: + - range: integer + # minimum_value: 1 + - range: boolean + status: testing + comments: + - maximum_number_dimensions cannot be less than minimum_number_dimensions + + exact_number_dimensions: + description: exact number of dimensions in the array + domain: array_expression + range: integer + status: testing + # minimum_value: 1 + comments: + - if exact_number_dimensions is set, then minimum_number_dimensions and maximum_number_dimensions must be unset or have the same value + + has_extra_dimensions: + description: If this is set to true + domain: array_expression + range: boolean + status: testing + inherited: domain: slot_definition range: boolean @@ -1528,6 +1582,16 @@ slots: in_subset: - SpecificationSubset + exact_cardinality: + is_a: list_value_specification_constant + range: integer + inherited: true + description: the exact number of entries for a multivalued slot + in_subset: + - SpecificationSubset + comments: + - if exact_cardinality is set, then minimum_cardinalty and maximum_cardinality must be unset or have the same value + minimum_cardinality: is_a: list_value_specification_constant range: integer @@ -1535,6 +1599,9 @@ slots: description: the minimum number of entries for a multivalued slot in_subset: - SpecificationSubset + # minimum_value: 0 + comments: + - minimum_cardinality cannot be greater than maximum_cardinality maximum_cardinality: is_a: list_value_specification_constant @@ -1543,6 +1610,9 @@ slots: description: the maximum number of entries for a multivalued slot in_subset: - SpecificationSubset + comments: + - maximum_cardinality cannot be less than minimum_cardinality + # minimum_value: 0 equals_string_in: is_a: list_value_specification_constant @@ -2723,6 +2793,7 @@ classes: - equals_string_in - equals_number - equals_expression + - exact_cardinality - minimum_cardinality - maximum_cardinality - has_member @@ -2767,6 +2838,7 @@ classes: - domain - slot_uri - multivalued + - array - inherited - readonly - ifabsent @@ -2925,6 +2997,33 @@ classes: in_subset: - SpecificationSubset + array_expression: + description: defines the dimensions of an array + mixins: + - extensible + - annotatable + - common_metadata + slots: + - exact_number_dimensions + - minimum_number_dimensions + - maximum_number_dimensions + - has_extra_dimensions + - dimensions + status: testing + + dimension_expression: + description: defines one of the dimensions of an array + mixins: + - extensible + - annotatable + - common_metadata + slots: + - alias + - maximum_cardinality + - minimum_cardinality + - exact_cardinality + status: testing + pattern_expression: description: a regular expression pattern used to evaluate conformance of a string mixins: diff --git a/linkml_runtime/linkml_model/model/schema/types.yaml b/linkml_runtime/linkml_model/model/schema/types.yaml index c4fd00f6..6be79908 100644 --- a/linkml_runtime/linkml_model/model/schema/types.yaml +++ b/linkml_runtime/linkml_model/model/schema/types.yaml @@ -4,7 +4,6 @@ id: https://w3id.org/linkml/types description: Shared type definitions for the core LinkML mode and metamodel license: https://creativecommons.org/publicdomain/zero/1.0/ -version: 2.0.0 prefixes: linkml: https://w3id.org/linkml/ diff --git a/linkml_runtime/linkml_model/owl/meta.owl.ttl b/linkml_runtime/linkml_model/owl/meta.owl.ttl index 3c94c1d0..7e7e1261 100644 --- a/linkml_runtime/linkml_model/owl/meta.owl.ttl +++ b/linkml_runtime/linkml_model/owl/meta.owl.ttl @@ -7,7 +7,6 @@ @prefix dcterms: . @prefix linkml: . @prefix owl: . -@prefix pav: . @prefix prov: . @prefix qb: . @prefix qudt: . @@ -148,75 +147,121 @@ linkml:ClassRule a owl:Class, rdfs:label "class_rule" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:deactivated ], + owl:onProperty linkml:bidirectional ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:rank ], + owl:onProperty linkml:open_world ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; + owl:onProperty linkml:postconditions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:elseconditions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:deactivated ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:open_world ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:elseconditions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:bidirectional ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:postconditions ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:open_world ], + owl:onProperty linkml:deactivated ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:open_world ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:rank ], + owl:onProperty linkml:preconditions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:rank ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:deactivated ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:bidirectional ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:elseconditions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:preconditions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:postconditions ], + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:postconditions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:deactivated ], + owl:maxCardinality 1 ; + owl:onProperty linkml:preconditions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:bidirectional ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:preconditions ], + linkml:Annotatable, + linkml:ClassLevelRule, + linkml:CommonMetadata, + linkml:Extensible ; + skos:altLabel "if rule" ; + skos:closeMatch swrl:Imp, + sh:TripleRule ; + skos:definition "A rule that applies to instances of a class" ; + skos:inScheme linkml:meta . + +linkml:DimensionExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "dimension_expression" ; + bibo:status ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:minimum_cardinality ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:minimum_cardinality ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:exact_cardinality ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:maximum_cardinality ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:postconditions ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:deactivated ], + owl:onProperty linkml:exact_cardinality ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:elseconditions ], + owl:onProperty linkml:alias ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:preconditions ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:open_world ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:bidirectional ], + owl:onProperty linkml:alias ], linkml:Annotatable, - linkml:ClassLevelRule, linkml:CommonMetadata, linkml:Extensible ; - skos:altLabel "if rule" ; - skos:closeMatch swrl:Imp, - sh:TripleRule ; - skos:definition "A rule that applies to instances of a class" ; + skos:definition "defines one of the dimensions of an array" ; skos:inScheme linkml:meta . a owl:Class, @@ -273,41 +318,71 @@ linkml:TypeExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "type_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:implicit_prefix ], + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string ], + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:AnonymousTypeExpression ; owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:minimum_value ], + owl:onProperty linkml:equals_number ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string_in ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PatternExpression ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:pattern ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty linkml:implicit_prefix ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:minimum_value ], @@ -316,28 +391,16 @@ linkml:TypeExpression a owl:Class, owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:equals_string ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:unit ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:equals_string_in ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:UnitOfMeasure ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:none_of ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:none_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:exactly_one_of ], @@ -346,46 +409,28 @@ linkml:TypeExpression a owl:Class, owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:equals_number ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:equals_string ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_number ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:Anything ; owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pattern ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PatternExpression ; - owl:onProperty linkml:structured_pattern ], + owl:minCardinality 0 ; + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousTypeExpression ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:implicit_prefix ], + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:structured_pattern ], + owl:maxCardinality 1 ; + owl:onProperty linkml:unit ], linkml:Expression ; skos:definition "An abstract class grouping named types and anonymous type expressions" ; skos:inScheme linkml:meta . @@ -481,6 +526,16 @@ linkml:defining_slots a owl:ObjectProperty, skos:definition "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" ; skos:inScheme linkml:meta . +linkml:dimensions a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "dimensions" ; + bibo:status ; + rdfs:domain linkml:ArrayExpression ; + rdfs:range linkml:DimensionExpression ; + skos:altLabel "axes" ; + skos:definition "definitions of each axis in the array" ; + skos:inScheme linkml:meta . + linkml:domain_of a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "domain_of" ; @@ -803,44 +858,44 @@ linkml:ClassExpression a owl:Class, owl:minCardinality 0 ; owl:onProperty linkml:any_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:all_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:slot_conditions ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:any_of ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:AnonymousClassExpression ; owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:exactly_one_of ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:none_of ], + 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:none_of ], + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:exactly_one_of ] ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ] ; skos:definition "A boolean expression that can be used to dynamically determine membership of a class" ; skos:inScheme linkml:meta . @@ -848,22 +903,22 @@ linkml:MatchQuery a owl:Class, linkml:ClassDefinition ; rdfs:label "match_query" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:identifier_pattern ], - [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:identifier_pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source_ontology ], + owl:onProperty linkml:identifier_pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:identifier_pattern ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:source_ontology ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:source_ontology ] ; 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." ; skos:inScheme linkml:meta . @@ -882,18 +937,7 @@ linkml:abstract a owl:ObjectProperty, skos:definition "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; skos:inScheme linkml:meta . -linkml:alias a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "alias" ; - rdfs:domain linkml:SlotDefinition ; - rdfs:range linkml:String ; - skos:definition "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; - skos:inScheme linkml:meta ; - skos:note "an example of alias is used within this metamodel, slot_definitions is aliases as slots", - "not to be confused with aliases, which indicates a set of terms to be used for search purposes." ; - sh:order 6 . - -linkml:alias_predicate a owl:ObjectProperty, +linkml:alias_predicate a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "alias_predicate" ; rdfs:domain linkml:StructuredAlias ; @@ -943,6 +987,15 @@ linkml:alt_description_text a owl:ObjectProperty, skos:inScheme linkml:meta ; skos:prefLabel "description" . +linkml:array a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "array" ; + bibo:status ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:ArrayExpression ; + skos:definition "coerces the value of the slot into an array and defines the dimensions of that array" ; + skos:inScheme linkml:meta . + linkml:asymmetric a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "asymmetric" ; @@ -1147,6 +1200,16 @@ linkml:enum_uri a owl:ObjectProperty, skos:definition "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" ; skos:inScheme linkml:meta . +linkml:exact_number_dimensions a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "exact_number_dimensions" ; + bibo:status ; + rdfs:domain linkml:ArrayExpression ; + rdfs:range linkml:Integer ; + skos:definition "exact number of dimensions in the array" ; + skos:inScheme linkml:meta ; + skos:note "if exact_number_dimensions is set, then minimum_number_dimensions and maximum_number_dimensions must be unset or have the same value" . + linkml:extension_tag a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "extension_tag" ; @@ -1189,6 +1252,15 @@ linkml:generation_date a owl:ObjectProperty, skos:definition "date and time that the schema was loaded/generated" ; skos:inScheme linkml:meta . +linkml:has_extra_dimensions a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "has_extra_dimensions" ; + bibo:status ; + rdfs:domain linkml:ArrayExpression ; + rdfs:range linkml:Boolean ; + skos:definition "If this is set to true" ; + skos:inScheme linkml:meta . + linkml:has_member a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "has_member" ; @@ -1507,13 +1579,16 @@ linkml:matches a owl:ObjectProperty, skos:definition "Specifies a match query that is used to calculate the list of permissible values" ; skos:inScheme linkml:meta . -linkml:maximum_cardinality a owl:ObjectProperty, +linkml:maximum_number_dimensions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "maximum_cardinality" ; - rdfs:range linkml:Integer ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the maximum number of entries for a multivalued slot" ; - skos:inScheme linkml:meta . + rdfs:label "maximum_number_dimensions" ; + bibo:status ; + rdfs:domain linkml:ArrayExpression ; + rdfs:range [ owl:intersectionOf ( [ a rdfs:Datatype ; + owl:unionOf ( linkml:Integer linkml:Boolean ) ] linkml:Anything ) ] ; + skos:definition "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" ; + skos:inScheme linkml:meta ; + skos:note "maximum_number_dimensions cannot be less than minimum_number_dimensions" . linkml:meaning a owl:ObjectProperty, linkml:SlotDefinition ; @@ -1534,13 +1609,15 @@ linkml:metamodel_version a owl:ObjectProperty, skos:definition "Version of the metamodel used to load the schema" ; skos:inScheme linkml:meta . -linkml:minimum_cardinality a owl:ObjectProperty, +linkml:minimum_number_dimensions a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "minimum_cardinality" ; + rdfs:label "minimum_number_dimensions" ; + bibo:status ; + rdfs:domain linkml:ArrayExpression ; rdfs:range linkml:Integer ; - rdfs:subPropertyOf linkml:list_value_specification_constant ; - skos:definition "the minimum number of entries for a multivalued slot" ; - skos:inScheme linkml:meta . + skos:definition "minimum number of dimensions in the array" ; + skos:inScheme linkml:meta ; + skos:note "minimum_cardinality cannot be greater than maximum_cardinality" . linkml:mixin a owl:ObjectProperty, linkml:SlotDefinition ; @@ -2059,21 +2136,21 @@ linkml:AltDescription a owl:Class, rdfs:label "alt_description" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:alt_description_text ], + owl:onProperty linkml:alt_description_source ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:alt_description_text ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:alt_description_source ], [ a owl:Restriction ; owl:minCardinality 1 ; - owl:onProperty linkml:alt_description_source ], + owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty linkml:alt_description_text ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alt_description_text ], + [ a owl:Restriction ; + owl:minCardinality 1 ; owl:onProperty linkml:alt_description_source ] ; skos:altLabel "structured description" ; skos:definition "an attributed description" ; @@ -2098,29 +2175,29 @@ linkml:ImportExpression a owl:Class, rdfs:label "import_expression" ; bibo:status ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Setting ; - owl:onProperty linkml:import_map ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:import_as ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:import_from ], + owl:allValuesFrom linkml:Setting ; + owl:onProperty linkml:import_map ], [ a owl:Restriction ; owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:import_as ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:import_map ], + owl:maxCardinality 1 ; + owl:onProperty linkml:import_as ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:import_from ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:import_from ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:import_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:import_as ], + owl:onProperty linkml:import_map ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -2131,23 +2208,23 @@ linkml:LocalName a owl:Class, linkml:ClassDefinition ; rdfs:label "local_name" ; rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:local_name_source ], + [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:local_name_source ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:local_name_source ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:local_name_source ], + owl:onProperty linkml:local_name_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:local_name_value ] ; + owl:minCardinality 1 ; + owl:onProperty linkml:local_name_source ] ; skos:definition "an attributed label" ; skos:inScheme linkml:meta . @@ -2155,22 +2232,22 @@ linkml:Prefix a owl:Class, linkml:ClassDefinition ; rdfs:label "prefix" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:prefix_prefix ], + owl:minCardinality 1 ; + owl:onProperty linkml:prefix_reference ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:prefix_reference ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; owl:allValuesFrom linkml:Ncname ; owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; - owl:onProperty linkml:prefix_reference ], + owl:maxCardinality 1 ; + owl:onProperty linkml:prefix_prefix ], [ a owl:Restriction ; owl:minCardinality 1 ; + owl:onProperty linkml:prefix_prefix ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uri ; owl:onProperty linkml:prefix_reference ] ; skos:definition "prefix URI tuple" ; skos:inScheme linkml:meta ; @@ -2180,236 +2257,245 @@ linkml:SlotExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "slot_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_value ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:equals_string ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:inlined_as_list ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:UnitOfMeasure ; - owl:onProperty linkml:unit ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:minimum_value ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:enum_range ], + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:implicit_prefix ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:recommended ], + owl:onProperty linkml:enum_range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:range_expression ], + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:pattern ], + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:range ], + owl:onProperty linkml:recommended ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:maximum_value ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:equals_number ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_expression ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:inlined_as_list ], + owl:maxCardinality 1 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:range ], + owl:onProperty linkml:value_presence ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:all_members ], + owl:onProperty linkml:equals_expression ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string ], + owl:maxCardinality 1 ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exactly_one_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:recommended ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:implicit_prefix ], + owl:allValuesFrom linkml:UnitOfMeasure ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:has_member ], + owl:onProperty linkml:inlined_as_list ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:minimum_value ], + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:maximum_value ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inlined ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:equals_number ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:recommended ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:pattern ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:minimum_cardinality ], + owl:minCardinality 0 ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:maxCardinality 1 ; owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:all_members ], + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:maxCardinality 1 ; owl:onProperty linkml:inlined ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:any_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:implicit_prefix ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:equals_expression ], + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:range_expression ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:structured_pattern ], + owl:minCardinality 0 ; + owl:onProperty linkml:all_members ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:required ], [ a owl:Restriction ; owl:allValuesFrom linkml:PatternExpression ; owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:maxCardinality 1 ; owl:onProperty linkml:maximum_cardinality ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:inlined_as_list ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:equals_string_in ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:has_member ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousSlotExpression ; - owl:onProperty linkml:all_members ], + owl:onProperty linkml:equals_string ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:required ], + owl:onProperty linkml:equals_string_in ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:pattern ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:required ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:inlined ], + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:value_presence ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_members ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:required ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:equals_number ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:equals_string ], + owl:onProperty linkml:maximum_value ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:enum_range ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:has_member ], + owl:minCardinality 0 ; + owl:onProperty linkml:inlined ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:structured_pattern ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:none_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Element ; - owl:onProperty linkml:range ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:minimum_cardinality ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:implicit_prefix ], + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:EnumExpression ; owl:onProperty linkml:enum_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Anything ; - owl:onProperty linkml:minimum_value ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:PresenceEnum ; owl:onProperty linkml:value_presence ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:recommended ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:maximum_cardinality ], + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:maximum_cardinality ], + owl:maxCardinality 1 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Element ; + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:minimum_cardinality ], + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:equals_number ], + owl:minCardinality 0 ; + owl:onProperty linkml:has_member ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:minimum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pattern ], + owl:onProperty linkml:maximum_cardinality ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:equals_expression ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_string ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:exact_cardinality ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:required ], + owl:onProperty linkml:inlined_as_list ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Anything ; + owl:onProperty linkml:minimum_value ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:all_members ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PresenceEnum ; + owl:maxCardinality 1 ; + owl:onProperty linkml:equals_number ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:value_presence ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:structured_pattern ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousSlotExpression ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:minimum_cardinality ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:maximum_value ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:required ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:inlined ], + owl:onProperty linkml:exactly_one_of ], linkml:Expression ; skos:definition "an expression that constrains the range of values a slot can take" ; skos:inScheme linkml:meta . @@ -2418,29 +2504,29 @@ linkml:StructuredAlias a owl:Class, linkml:ClassDefinition ; rdfs:label "structured_alias" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:alias_predicate ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AliasPredicateEnum ; - owl:onProperty linkml:alias_predicate ], + owl:minCardinality 0 ; + owl:onProperty linkml:categories ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:alias_predicate ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:categories ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:literal_form ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:literal_form ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 1 ; owl:onProperty linkml:literal_form ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:categories ], + owl:allValuesFrom linkml:AliasPredicateEnum ; + owl:onProperty linkml:alias_predicate ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:categories ], + owl:maxCardinality 1 ; + owl:onProperty linkml:alias_predicate ], linkml:Annotatable, linkml:CommonMetadata, linkml:Expression, @@ -2567,32 +2653,32 @@ linkml:Example a owl:Class, linkml:ClassDefinition ; rdfs:label "example" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:value ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:value ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:value_object ], + owl:onProperty linkml:value_description ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:value_description ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:value_object ], [ a owl:Restriction ; owl:allValuesFrom linkml:Anything ; owl:onProperty linkml:value_object ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:value_description ], + owl:maxCardinality 1 ; + owl:onProperty linkml:value ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:value_object ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:value_description ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:value_description ] ; + owl:onProperty linkml:value ] ; skos:definition "usage example and description" ; skos:inScheme linkml:meta . @@ -2600,28 +2686,28 @@ linkml:UniqueKey a owl:Class, linkml:ClassDefinition ; rdfs:label "unique_key" ; rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:consider_nulls_inequal ], + [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; + owl:onProperty linkml:unique_key_name ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:consider_nulls_inequal ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:unique_key_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:unique_key_slots ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:consider_nulls_inequal ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:unique_key_slots ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:unique_key_name ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:unique_key_name ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:consider_nulls_inequal ], linkml:Annotatable, linkml:CommonMetadata, @@ -2634,83 +2720,83 @@ linkml:UnitOfMeasure a owl:Class, linkml:ClassDefinition ; rdfs:label "UnitOfMeasure" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:derivation ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:has_quantity_kind ], + owl:maxCardinality 1 ; + owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:has_quantity_kind ], + owl:onProperty linkml:symbol ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:iec61360code ], + owl:onProperty linkml:derivation ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:ucum_code ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:descriptive_name ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:symbol ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:descriptive_name ], + owl:onProperty linkml:abbreviation ], + [ owl:unionOf ( [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:ucum_code ] [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:iec61360code ] [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:symbol ] [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:exact_mappings ] ) ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:ucum_code ], + owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:derivation ], + owl:onProperty linkml:has_quantity_kind ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:abbreviation ], + owl:onProperty linkml:iec61360code ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:derivation ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:abbreviation ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:iec61360code ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:has_quantity_kind ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:symbol ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:exact_mappings ], + owl:minCardinality 0 ; + owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:symbol ], - [ owl:unionOf ( [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:ucum_code ] [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:iec61360code ] [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:symbol ] [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:exact_mappings ] ) ], + owl:onProperty linkml:derivation ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:derivation ], + owl:onProperty linkml:descriptive_name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:exact_mappings ], + owl:onProperty linkml:symbol ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:has_quantity_kind ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:ucum_code ], + owl:onProperty linkml:iec61360code ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:abbreviation ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:iec61360code ] ; + owl:onProperty linkml:ucum_code ] ; skos:definition "A unit of measure, or unit, is a particular quantity value that has been chosen as a scale for measuring other quantities the same kind (more generally of equivalent dimension)." ; skos:exactMatch qudt:Unit ; skos:inScheme linkml:units . @@ -2738,29 +2824,29 @@ linkml:Extension a owl:Class, linkml:ClassDefinition ; rdfs:label "extension" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:maxCardinality 1 ; + owl:onProperty linkml:extension_value ], [ a owl:Restriction ; owl:minCardinality 1 ; - owl:onProperty linkml:extension_value ], + owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:AnyValue ; owl:onProperty linkml:extension_value ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:extension_tag ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:extensions ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnyValue ; + owl:minCardinality 1 ; owl:onProperty linkml:extension_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:extension_tag ] ; + owl:minCardinality 0 ; + owl:onProperty linkml:extensions ] ; skos:definition "a tag/value pair used to add non-model information to an entry" ; skos:inScheme linkml:extensions . @@ -2768,10 +2854,7 @@ linkml:PatternExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "pattern_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:interpolated ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:interpolated ], [ a owl:Restriction ; owl:minCardinality 0 ; @@ -2781,18 +2864,21 @@ linkml:PatternExpression a owl:Class, owl:onProperty linkml:partial_match ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:partial_match ], + owl:onProperty linkml:interpolated ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty linkml:syntax ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:syntax ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:syntax ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; + owl:onProperty linkml:partial_match ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:interpolated ], linkml:Annotatable, linkml:CommonMetadata, @@ -2809,30 +2895,21 @@ linkml:PermissibleValue a owl:Class, [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:description ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:unit ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:text ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:description ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:text ], + owl:onProperty linkml:meaning ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; + owl:minCardinality 0 ; owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:meaning ], + owl:onProperty linkml:unit ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:meaning ], + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:text ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:meaning ], @@ -2842,18 +2919,27 @@ linkml:PermissibleValue a owl:Class, [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:text ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:unit ], + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PermissibleValue ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:meaning ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:allValuesFrom linkml:UnitOfMeasure ; owl:onProperty linkml:unit ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:text ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PermissibleValue ; + owl:onProperty linkml:mixins ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -2867,26 +2953,37 @@ linkml:Setting a owl:Class, linkml:ClassDefinition ; rdfs:label "setting" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:setting_key ], - [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty linkml:setting_value ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty linkml:setting_key ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:setting_value ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:setting_key ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:setting_key ], + [ a owl:Restriction ; + owl:minCardinality 1 ; owl:onProperty linkml:setting_value ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty linkml:setting_key ] ; skos:definition "assignment of a key to a value" ; skos:inScheme linkml:meta . +linkml:alias a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "alias" ; + rdfs:domain linkml:SlotDefinition ; + rdfs:range linkml:String ; + skos:definition "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; + skos:inScheme linkml:meta ; + skos:note "an example of alias is used within this metamodel, slot_definitions is aliases as slots", + "not to be confused with aliases, which indicates a set of terms to be used for search purposes." ; + sh:order 6 . + linkml:apply_to a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "apply_to" ; @@ -2932,6 +3029,15 @@ linkml:equals_string a owl:ObjectProperty, skos:definition "the slot must have range string and the value of the slot must equal the specified value" ; skos:inScheme linkml:meta . +linkml:exact_cardinality a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "exact_cardinality" ; + rdfs:range linkml:Integer ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the exact number of entries for a multivalued slot" ; + skos:inScheme linkml:meta ; + skos:note "if exact_cardinality is set, then minimum_cardinalty and maximum_cardinality must be unset or have the same value" . + linkml:implicit_prefix a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "implicit_prefix" ; @@ -2941,6 +3047,15 @@ linkml:implicit_prefix a owl:ObjectProperty, skos:definition "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; skos:inScheme linkml:meta . +linkml:maximum_cardinality a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "maximum_cardinality" ; + rdfs:range linkml:Integer ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the maximum number of entries for a multivalued slot" ; + skos:inScheme linkml:meta ; + skos:note "maximum_cardinality cannot be less than minimum_cardinality" . + linkml:maximum_value a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "maximum_value" ; @@ -2951,6 +3066,15 @@ linkml:maximum_value a owl:ObjectProperty, skos:editorialNote "Range to be refined to an \"Ordinal\" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142" ; skos:inScheme linkml:meta . +linkml:minimum_cardinality a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "minimum_cardinality" ; + rdfs:range linkml:Integer ; + rdfs:subPropertyOf linkml:list_value_specification_constant ; + skos:definition "the minimum number of entries for a multivalued slot" ; + skos:inScheme linkml:meta ; + skos:note "minimum_cardinality cannot be greater than maximum_cardinality" . + linkml:minimum_value a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "minimum_value" ; @@ -3053,81 +3177,134 @@ linkml:union_of a owl:ObjectProperty, skos:editorialNote "this only applies in the OWL generation" ; skos:inScheme linkml:meta . -linkml:PathExpression a owl:Class, +linkml:ArrayExpression a owl:Class, linkml:ClassDefinition ; - rdfs:label "path_expression" ; + rdfs:label "array_expression" ; + bibo:status ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:range_expression ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:exact_number_dimensions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:exact_number_dimensions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:DimensionExpression ; + owl:onProperty linkml:dimensions ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:reversed ], + owl:onProperty linkml:maximum_number_dimensions ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:has_extra_dimensions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:has_extra_dimensions ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:has_extra_dimensions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:exact_number_dimensions ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:range_expression ], + owl:onProperty linkml:minimum_number_dimensions ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:traverse ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:minimum_number_dimensions ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:all_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:maximum_number_dimensions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:exactly_one_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:minimum_number_dimensions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:traverse ], + owl:allValuesFrom [ owl:intersectionOf ( [ a rdfs:Datatype ; + owl:unionOf ( linkml:Integer linkml:Boolean ) ] linkml:Anything ) ] ; + owl:onProperty linkml:maximum_number_dimensions ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:dimensions ], + linkml:Annotatable, + linkml:CommonMetadata, + linkml:Extensible ; + skos:definition "defines the dimensions of an array" ; + skos:inScheme linkml:meta . + +linkml:PathExpression a owl:Class, + linkml:ClassDefinition ; + rdfs:label "path_expression" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:followed_by ], [ a owl:Restriction ; owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:followed_by ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:none_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:all_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; + owl:onProperty linkml:range_expression ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:reversed ], [ a owl:Restriction ; owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:followed_by ], [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:any_of ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:reversed ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:traverse ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:any_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:range_expression ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:reversed ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:all_of ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:all_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; owl:onProperty linkml:none_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:all_of ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:traverse ], + owl:onProperty linkml:range_expression ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:any_of ], + owl:onProperty linkml:exactly_one_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:none_of ], + owl:onProperty linkml:any_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:followed_by ], + owl:onProperty linkml:exactly_one_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:traverse ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:range_expression ], + owl:onProperty linkml:traverse ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:exactly_one_of ], + owl:onProperty linkml:none_of ], linkml:Annotatable, linkml:CommonMetadata, linkml:Expression, @@ -3139,53 +3316,53 @@ linkml:ReachabilityQuery a owl:Class, linkml:ClassDefinition ; rdfs:label "reachability_query" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:traverse_up ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:include_self ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_direct ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_direct ], - [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:relationship_types ], + owl:onProperty linkml:source_nodes ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:traverse_up ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source_ontology ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:relationship_types ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:source_nodes ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:traverse_up ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:relationship_types ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:include_self ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:source_ontology ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:include_self ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:traverse_up ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:relationship_types ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:source_nodes ], + owl:onProperty linkml:include_self ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:is_direct ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:is_direct ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:source_ontology ] ; + owl:onProperty linkml:source_ontology ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + 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." ; skos:inScheme linkml:meta . @@ -3205,12 +3382,6 @@ linkml:AnonymousSlotExpression a owl:Class, linkml:SlotExpression ; skos:inScheme linkml:meta . -linkml:Anything a owl:Class, - linkml:ClassDefinition ; - rdfs:label "Anything" ; - skos:exactMatch linkml:Any ; - skos:inScheme linkml:meta . - linkml:PresenceEnum a owl:Class, linkml:EnumDefinition ; owl:unionOf ( ) ; @@ -3230,378 +3401,353 @@ linkml:mixins a owl:ObjectProperty, skos:note "mixins act in the same way as parents (is_a). They allow a model to have a primary strict hierarchy, while keeping the benefits of multiple inheritance" ; sh:order 13 . -linkml:CommonMetadata a owl:Class, +linkml:EnumDefinition a owl:Class, linkml:ClassDefinition ; - rdfs:label "common_metadata" ; + rdfs:label "enum_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:created_on ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:created_by ], - [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:narrow_mappings ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:alt_descriptions ], + owl:onProperty linkml:enum_uri ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:broad_mappings ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:aliases ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:imported_from ], + owl:onProperty linkml:enum_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:title ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:created_on ], + owl:maxCardinality 1 ; + owl:onProperty linkml:enum_uri ], + linkml:Definition, + linkml:EnumExpression ; + skos:altLabel "Terminology Value Set", + "answer list", + "code set", + "concept set", + "enum", + "enumeration", + "semantic enumeration", + "term set", + "value domain", + "value set" ; + skos:closeMatch skos:ConceptScheme ; + skos:definition "an element whose instances must be drawn from a specified set of permissible values" ; + skos:exactMatch NCIT:C113497, + qb:HierarchicalCodeList, + cdisc:ValueDomain ; + skos:inScheme linkml:meta ; + sh:order 5 . + +linkml:unit a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "unit" ; + rdfs:range linkml:UnitOfMeasure ; + skos:definition "an encoding of a unit" ; + skos:inScheme linkml:units . + +linkml:AliasPredicateEnum a owl:Class, + linkml:EnumDefinition ; + owl:unionOf ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; + linkml:permissible_values skos:broaderMatch, + skos:exactMatch, + skos:narrowerMatch, + skos:relatedMatch . + +linkml:Anything a owl:Class, + linkml:ClassDefinition ; + rdfs:label "Anything" ; + skos:exactMatch linkml:Any ; + skos:inScheme linkml:meta . + +linkml:CommonMetadata a owl:Class, + linkml:ClassDefinition ; + rdfs:label "common_metadata" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:Example ; + owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:keywords ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:created_by ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:notes ], + owl:maxCardinality 1 ; + owl:onProperty linkml:in_language ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:status ], + owl:onProperty linkml:source ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:keywords ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:description ], + owl:onProperty linkml:title ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:in_subset ], + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:broad_mappings ], + owl:allValuesFrom linkml:Uri ; + owl:onProperty linkml:from_schema ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:in_language ], + owl:allValuesFrom linkml:AltDescription ; + owl:onProperty linkml:alt_descriptions ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:rank ], + owl:onProperty linkml:categories ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty linkml:rank ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:categories ], + owl:onProperty linkml:status ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:aliases ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:see_also ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:deprecated_element_has_exact_replacement ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:contributors ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty linkml:narrow_mappings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Example ; - owl:onProperty linkml:examples ], + owl:minCardinality 0 ; + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source ], + owl:onProperty linkml:related_mappings ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:status ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:close_mappings ], + owl:onProperty linkml:see_also ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:created_on ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:categories ], + owl:onProperty linkml:modified_by ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:see_also ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:broad_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:close_mappings ], + owl:onProperty linkml:in_language ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:keywords ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty linkml:title ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:last_updated_on ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:categories ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; - owl:onProperty linkml:from_schema ], + owl:minCardinality 0 ; + owl:onProperty linkml:broad_mappings ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:description ], + owl:onProperty linkml:alt_descriptions ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:deprecated ], + owl:onProperty linkml:in_language ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:minCardinality 0 ; + owl:onProperty linkml:description ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:modified_by ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:todos ], + owl:onProperty linkml:in_subset ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:from_schema ], + owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty linkml:in_subset ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:contributors ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:status ], + owl:onProperty linkml:comments ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:imported_from ], + owl:onProperty linkml:notes ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:from_schema ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:rank ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty linkml:in_subset ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:title ], + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Datetime ; owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AltDescription ; - owl:onProperty linkml:alt_descriptions ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:created_on ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:modified_by ], + owl:onProperty linkml:last_updated_on ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mappings ], + owl:onProperty linkml:deprecated_element_has_exact_replacement ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:exact_mappings ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:aliases ], + owl:onProperty linkml:related_mappings ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:see_also ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:comments ], + owl:allValuesFrom linkml:StructuredAlias ; + owl:onProperty linkml:structured_aliases ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:notes ], + owl:onProperty linkml:exact_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:contributors ], + owl:onProperty linkml:close_mappings ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:deprecated ], + owl:onProperty linkml:imported_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:source ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:comments ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:structured_aliases ], + owl:maxCardinality 1 ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:from_schema ], + owl:onProperty linkml:mappings ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:created_by ], + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:exact_mappings ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:title ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:deprecated_element_has_exact_replacement ], + owl:onProperty linkml:created_by ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:comments ], + owl:onProperty linkml:deprecated ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:imported_from ], + owl:minCardinality 0 ; + owl:onProperty linkml:deprecated_element_has_possible_replacement ], [ a owl:Restriction ; - owl:allValuesFrom linkml:StructuredAlias ; - owl:onProperty linkml:structured_aliases ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty linkml:rank ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:related_mappings ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:notes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:examples ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:status ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:last_updated_on ], + owl:onProperty linkml:structured_aliases ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:narrow_mappings ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty linkml:created_on ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:modified_by ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:related_mappings ], + owl:onProperty linkml:modified_by ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:deprecated ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:aliases ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:contributors ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:todos ], + owl:onProperty linkml:status ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:in_language ], + owl:onProperty linkml:rank ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:title ], + owl:onProperty linkml:keywords ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:deprecated_element_has_possible_replacement ], + owl:onProperty linkml:source ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:mappings ], + owl:onProperty linkml:source ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:created_by ], + owl:minCardinality 0 ; + owl:onProperty linkml:from_schema ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:in_language ] ; - skos:definition "Generic metadata shared across definitions" ; - skos:inScheme linkml:meta . - -linkml:EnumDefinition a owl:Class, - linkml:ClassDefinition ; - rdfs:label "enum_definition" ; - rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:enum_uri ], + owl:onProperty linkml:examples ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:enum_uri ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:todos ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:enum_uri ], - linkml:Definition, - linkml:EnumExpression ; - skos:altLabel "Terminology Value Set", - "answer list", - "code set", - "concept set", - "enum", - "enumeration", - "semantic enumeration", - "term set", - "value domain", - "value set" ; - skos:closeMatch skos:ConceptScheme ; - skos:definition "an element whose instances must be drawn from a specified set of permissible values" ; - skos:exactMatch NCIT:C113497, - qb:HierarchicalCodeList, - cdisc:ValueDomain ; - skos:inScheme linkml:meta ; - sh:order 5 . - -linkml:unit a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "unit" ; - rdfs:range linkml:UnitOfMeasure ; - skos:definition "an encoding of a unit" ; - skos:inScheme linkml:units . - -linkml:AliasPredicateEnum a owl:Class, - linkml:EnumDefinition ; - owl:unionOf ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; - linkml:permissible_values skos:broaderMatch, - skos:exactMatch, - skos:narrowerMatch, - skos:relatedMatch . - -linkml:Extensible a owl:Class, - linkml:ClassDefinition ; - rdfs:label "extensible" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Extension ; - owl:onProperty linkml:extensions ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:close_mappings ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:extensions ] ; - skos:definition "mixin for classes that support extension" ; - skos:inScheme linkml:extensions . - -linkml:list_value_specification_constant a owl:ObjectProperty, - linkml:SlotDefinition ; - rdfs:label "list_value_specification_constant" ; - bibo:status ; - skos:definition "Grouping for metamodel slots that constrain members of a multivalued slot value to equal a specified constant" ; + owl:onProperty linkml:created_by ] ; + skos:definition "Generic metadata shared across definitions" ; skos:inScheme linkml:meta . -linkml:Annotatable a owl:Class, - linkml:ClassDefinition ; - rdfs:label "annotatable" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:annotations ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Annotation ; - owl:onProperty linkml:annotations ] ; - skos:definition "mixin for classes that support annotations" ; - skos:inScheme linkml:annotations . - linkml:TypeDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "type_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:type_uri ], + owl:minCardinality 0 ; + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:typeof ], + owl:onProperty linkml:repr ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty linkml:repr ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:type_uri ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:union_of ], + owl:onProperty linkml:base ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:base ], + owl:onProperty linkml:repr ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:typeof ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:base ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:repr ], + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:union_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:type_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:TypeDefinition ; owl:onProperty linkml:typeof ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:repr ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:base ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:type_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:union_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:typeof ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:base ], + owl:onProperty linkml:type_uri ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:typeof ], linkml:Element, linkml:TypeExpression ; skos:definition "an element that whose instances are atomic scalar values that can be mapped to primitive types" ; @@ -3616,12 +3762,31 @@ linkml:extensions a owl:ObjectProperty, skos:definition "a tag/text tuple attached to an arbitrary element" ; skos:inScheme linkml:extensions . +linkml:list_value_specification_constant a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "list_value_specification_constant" ; + bibo:status ; + skos:definition "Grouping for metamodel slots that constrain members of a multivalued slot value to equal a specified constant" ; + skos:inScheme linkml:meta . + linkml:Expression a owl:Class, linkml:ClassDefinition ; rdfs:label "expression" ; skos:definition "general mixin for any class that can represent some form of expression" ; skos:inScheme linkml:meta . +linkml:Extensible a owl:Class, + linkml:ClassDefinition ; + rdfs:label "extensible" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:extensions ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Extension ; + owl:onProperty linkml:extensions ] ; + skos:definition "mixin for classes that support extension" ; + skos:inScheme linkml:extensions . + linkml:PvFormulaOptions a owl:Class, linkml:EnumDefinition ; owl:unionOf ( ) ; @@ -3684,6 +3849,18 @@ linkml:none_of a owl:ObjectProperty, skos:inScheme linkml:meta ; sh:order 105 . +linkml:Annotatable a owl:Class, + linkml:ClassDefinition ; + rdfs:label "annotatable" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:annotations ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Annotation ; + owl:onProperty linkml:annotations ] ; + skos:definition "mixin for classes that support annotations" ; + skos:inScheme linkml:annotations . + linkml:AnonymousClassExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "anonymous_class_expression" ; @@ -3691,10 +3868,10 @@ linkml:AnonymousClassExpression a owl:Class, owl:minCardinality 0 ; owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; + owl:maxCardinality 1 ; owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Definition ; owl:onProperty linkml:is_a ], linkml:AnonymousExpression, linkml:ClassExpression ; @@ -3704,26 +3881,32 @@ linkml:EnumExpression a owl:Class, linkml:ClassDefinition ; rdfs:label "enum_expression" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:code_set_tag ], + owl:allValuesFrom linkml:MatchQuery ; + owl:onProperty linkml:matches ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:code_set_version ], + owl:onProperty linkml:matches ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:inherits ], [ a owl:Restriction ; owl:allValuesFrom linkml:PermissibleValue ; owl:onProperty linkml:permissible_values ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:pv_formula ], + owl:onProperty linkml:code_set ], [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; - owl:onProperty linkml:include ], + owl:minCardinality 0 ; + owl:onProperty linkml:code_set ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:inherits ], + owl:maxCardinality 1 ; + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:code_set_tag ], + owl:maxCardinality 1 ; + owl:onProperty linkml:matches ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:permissible_values ], @@ -3731,62 +3914,56 @@ linkml:EnumExpression a owl:Class, owl:minCardinality 0 ; owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ReachabilityQuery ; - owl:onProperty linkml:reachable_from ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:code_set_version ], + owl:minCardinality 0 ; + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:concepts ], + owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:reachable_from ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:code_set_version ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:code_set ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:matches ], + owl:onProperty linkml:include ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:code_set ], + owl:allValuesFrom linkml:ReachabilityQuery ; + owl:onProperty linkml:reachable_from ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:inherits ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:code_set_tag ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:code_set_version ], + owl:allValuesFrom linkml:PvFormulaOptions ; + owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:include ], + owl:onProperty linkml:concepts ], [ a owl:Restriction ; - owl:allValuesFrom linkml:MatchQuery ; - owl:onProperty linkml:matches ], + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:include ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:concepts ], + owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:onProperty linkml:minus ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:pv_formula ], + owl:onProperty linkml:inherits ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:matches ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PvFormulaOptions ; owl:onProperty linkml:pv_formula ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:code_set ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousEnumExpression ; + owl:minCardinality 0 ; owl:onProperty linkml:minus ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:concepts ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:minus ], + owl:onProperty linkml:code_set_version ], linkml:Expression ; skos:definition "An expression that constrains the range of a slot" ; skos:inScheme linkml:meta . @@ -3816,173 +3993,173 @@ linkml:SchemaDefinition a owl:Class, rdfs:label "schema_definition" ; rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source_file_size ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:generation_date ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:generation_date ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:SubsetDefinition ; + owl:onProperty linkml:subsets ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:default_prefix ], + owl:minCardinality 0 ; + owl:onProperty linkml:imports ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:default_range ], + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:prefixes ], + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; - owl:onProperty linkml:types ], - [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Uri ; owl:onProperty linkml:id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Prefix ; - owl:onProperty linkml:prefixes ], + owl:minCardinality 0 ; + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:license ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_definitions ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Setting ; - owl:onProperty linkml:settings ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; + owl:minCardinality 0 ; owl:onProperty linkml:classes ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:version ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file_date ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:license ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:imports ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:settings ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:source_file ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:name ], + owl:onProperty linkml:enums ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:version ], + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:license ], + owl:onProperty linkml:id ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:license ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:default_curi_maps ], + owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:default_prefix ], + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:classes ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:version ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:source_file_date ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:generation_date ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:source_file_size ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:TypeDefinition ; owl:onProperty linkml:default_range ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:source_file ], + owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_definitions ], + owl:minCardinality 0 ; + owl:onProperty linkml:prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SubsetDefinition ; - owl:onProperty linkml:subsets ], + owl:allValuesFrom linkml:Setting ; + owl:onProperty linkml:settings ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:default_prefix ], + owl:onProperty linkml:metamodel_version ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:source_file_date ], + owl:onProperty linkml:default_range ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slot_names_unique ], + owl:onProperty linkml:emit_prefixes ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uri ; - owl:onProperty linkml:id ], + owl:allValuesFrom linkml:Datetime ; + owl:onProperty linkml:source_file_date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:metamodel_version ], + owl:allValuesFrom linkml:TypeDefinition ; + owl:onProperty linkml:types ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:metamodel_version ], + owl:onProperty linkml:settings ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:metamodel_version ], + owl:minCardinality 0 ; + owl:onProperty linkml:types ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:id ], + owl:minCardinality 0 ; + owl:onProperty linkml:version ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Datetime ; - owl:onProperty linkml:source_file_date ], + owl:maxCardinality 1 ; + owl:onProperty linkml:source_file ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:subsets ], + owl:onProperty linkml:license ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:emit_prefixes ], + owl:onProperty linkml:source_file_size ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:version ], + owl:allValuesFrom linkml:EnumDefinition ; + owl:onProperty linkml:enums ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:generation_date ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:classes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slot_definitions ], + owl:onProperty linkml:default_prefix ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:name ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:imports ], + owl:onProperty linkml:default_curi_maps ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty linkml:source_file ], [ a owl:Restriction ; - owl:allValuesFrom linkml:TypeDefinition ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:default_prefix ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty linkml:id ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:generation_date ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:default_range ], [ a owl:Restriction ; - owl:allValuesFrom linkml:EnumDefinition ; - owl:onProperty linkml:enums ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:license ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:default_curi_maps ], + owl:onProperty linkml:subsets ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:enums ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_definitions ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:types ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_names_unique ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:version ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Prefix ; + owl:onProperty linkml:prefixes ], linkml:Element ; skos:altLabel "data dictionary", "data model", @@ -4002,58 +4179,58 @@ linkml:Definition a owl:Class, rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:mixin ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:values_from ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; owl:allValuesFrom linkml:Definition ; owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty linkml:mixin ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:abstract ], + owl:onProperty linkml:string_serialization ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:mixin ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:mixin ], + owl:onProperty linkml:abstract ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:maxCardinality 1 ; + owl:onProperty linkml:string_serialization ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:apply_to ], + owl:onProperty linkml:mixins ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:apply_to ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:mixin ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:string_serialization ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:abstract ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:values_from ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:is_a ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty linkml:values_from ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:abstract ], [ a owl:Restriction ; owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:mixins ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:string_serialization ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:string_serialization ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:abstract ], + owl:onProperty linkml:apply_to ], linkml:Element ; skos:definition "abstract base class for core metaclasses" ; skos:inScheme linkml:meta . @@ -4063,17 +4240,14 @@ linkml:Element a owl:Class, rdfs:label "element" ; rdfs:seeAlso ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:id_prefixes_are_closed ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:id_prefixes_are_closed ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:name ], + owl:minCardinality 0 ; + owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:id_prefixes_are_closed ], + owl:onProperty linkml:conforms_to ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:LocalName ; + owl:onProperty linkml:local_names ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty linkml:name ], @@ -4083,45 +4257,48 @@ linkml:Element a owl:Class, [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:conforms_to ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Ncname ; - owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:conforms_to ], + owl:onProperty linkml:local_names ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:implements ], + owl:onProperty linkml:instantiates ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:definition_uri ], + owl:onProperty linkml:implements ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:conforms_to ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:definition_uri ], + owl:onProperty linkml:id_prefixes_are_closed ], [ a owl:Restriction ; - owl:allValuesFrom linkml:LocalName ; - owl:onProperty linkml:local_names ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:definition_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:name ], + owl:maxCardinality 1 ; + owl:onProperty linkml:conforms_to ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:definition_uri ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Ncname ; + owl:onProperty linkml:id_prefixes ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:implements ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:instantiates ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:id_prefixes ], + owl:onProperty linkml:definition_uri ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:local_names ], + owl:maxCardinality 1 ; + owl:onProperty linkml:id_prefixes_are_closed ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:name ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:name ], linkml:Annotatable, linkml:CommonMetadata, linkml:Extensible ; @@ -4135,132 +4312,132 @@ linkml:ClassDefinition a owl:Class, rdfs:label "class_definition" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:unique_keys ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onProperty linkml:class_uri ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassRule ; + owl:onProperty linkml:rules ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:apply_to ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:UniqueKey ; + owl:onProperty linkml:unique_keys ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; owl:onProperty linkml:attributes ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:tree_root ], + owl:onProperty linkml:attributes ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:represents_relationship ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:disjoint_with ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:AnonymousClassExpression ; + owl:onProperty linkml:classification_rules ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:children_are_mutually_disjoint ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:union_of ], + owl:onProperty linkml:classification_rules ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:attributes ], + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:rules ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:slots ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:slot_usage ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slots ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:tree_root ], + owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:tree_root ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:class_uri ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:AnonymousClassExpression ; - owl:onProperty linkml:classification_rules ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:mixins ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:UniqueKey ; - owl:onProperty linkml:unique_keys ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:tree_root ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:subclass_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:slot_usage ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_usage ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:class_uri ], + owl:onProperty linkml:slots ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:subclass_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_names_unique ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:children_are_mutually_disjoint ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:apply_to ], + owl:onProperty linkml:defining_slots ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:subclass_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:classification_rules ], + owl:onProperty linkml:represents_relationship ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:defining_slots ], + owl:onProperty linkml:unique_keys ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:apply_to ], + owl:maxCardinality 1 ; + owl:onProperty linkml:subclass_of ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:defining_slots ], [ a owl:Restriction ; owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:union_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:slot_names_unique ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:disjoint_with ], + owl:onProperty linkml:class_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassRule ; - owl:onProperty linkml:rules ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:mixins ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slot_names_unique ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:defining_slots ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty linkml:is_a ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:rules ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:class_uri ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; owl:onProperty linkml:disjoint_with ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:represents_relationship ], + owl:minCardinality 0 ; + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:subclass_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:union_of ], linkml:ClassExpression, linkml:Definition ; @@ -4278,7 +4455,6 @@ linkml:meta a owl:Ontology ; rdfs:label "meta" ; dcterms:license "https://creativecommons.org/publicdomain/zero/1.0/" ; dcterms:title "LinkML Schema Metamodel" ; - pav:version "2.0.0" ; skos:definition """The metamodel for schemas defined using the Linked Data Modeling Language framework. For more information on LinkML: @@ -4300,7 +4476,6 @@ There are many subsets of *profiles* of the metamodel, for different purposes: * [MinimalSubset](https://w3id.org/linkml/MinimalSubset) * [BasicSubset](https://w3id.org/linkml/BasicSubset) -* [BasicSubset](https://w3id.org/linkml/BasicSubset) For canonical reference documentation on any metamodel construct, refer to the official URI for each construct, e.g. @@ -4310,350 +4485,359 @@ linkml:SlotDefinition a owl:Class, linkml:ClassDefinition ; rdfs:label "slot_definition" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:identifier ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_usage_slot ], + owl:maxCardinality 1 ; + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:relational_role ], + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:multivalued ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:role ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:ifabsent ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:subproperty_of ], + owl:onProperty linkml:mixins ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:domain ], + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:transitive_form_of ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:shared ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:subproperty_of ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:transitive ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:is_grouping_slot ], + owl:minCardinality 0 ; + owl:onProperty linkml:role ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:slot_group ], + owl:onProperty linkml:locally_reflexive ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:apply_to ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:transitive ], + owl:onProperty linkml:mixins ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:reflexive ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:owner ], + owl:onProperty linkml:shared ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:symmetric ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:list_elements_ordered ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:designates_type ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:irreflexive ], + owl:minCardinality 0 ; + owl:onProperty linkml:designates_type ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:key ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:transitive ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:domain_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty linkml:identifier ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty linkml:disjoint_with ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:is_usage_slot ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:union_of ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty linkml:domain ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:reflexive ], + owl:onProperty linkml:readonly ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:list_elements_ordered ], + owl:onProperty linkml:alias ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:transitive ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:disjoint_with ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onProperty linkml:key ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:mixins ], + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:readonly ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:symmetric ], + owl:onProperty linkml:array ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:alias ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:inherited ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:transitive ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:slot_uri ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:union_of ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:children_are_mutually_disjoint ], + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:readonly ], + owl:onProperty linkml:key ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:disjoint_with ], + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:owner ], + owl:maxCardinality 1 ; + owl:onProperty linkml:ifabsent ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:onProperty linkml:role ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:reflexive_transitive_form_of ], + owl:minCardinality 0 ; + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:transitive_form_of ], + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:asymmetric ], + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:domain_of ], + owl:onProperty linkml:shared ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty linkml:designates_type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty linkml:symmetric ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:list_elements_unique ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:designates_type ], + owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:singular_name ], + owl:maxCardinality 1 ; + owl:onProperty linkml:usage_slot_name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:reflexive ], + owl:onProperty linkml:list_elements_ordered ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty linkml:key ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:inherited ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Definition ; - owl:onProperty linkml:owner ], + owl:onProperty linkml:children_are_mutually_disjoint ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:slot_uri ], + owl:allValuesFrom linkml:ClassDefinition ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:union_of ], + owl:maxCardinality 1 ; + owl:onProperty linkml:slot_group ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty linkml:slot_uri ], + owl:maxCardinality 1 ; + owl:onProperty linkml:is_grouping_slot ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:multivalued ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:alias ], + owl:onProperty linkml:domain_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:apply_to ], + owl:minCardinality 0 ; + owl:onProperty linkml:path_rule ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:reflexive ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:multivalued ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:singular_name ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty linkml:shared ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:locally_reflexive ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:PathExpression ; - owl:onProperty linkml:path_rule ], + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:is_usage_slot ], + owl:onProperty linkml:locally_reflexive ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:path_rule ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:slot_group ], + owl:onProperty linkml:alias ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:ifabsent ], + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:mixins ], + owl:allValuesFrom linkml:RelationalRoleEnum ; + owl:onProperty linkml:relational_role ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:role ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:disjoint_with ], + owl:onProperty linkml:transitive ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:is_class_field ], + owl:onProperty linkml:owner ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:apply_to ], + owl:onProperty linkml:slot_uri ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:symmetric ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:key ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_class_field ], + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:list_elements_ordered ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:RelationalRoleEnum ; owl:onProperty linkml:relational_role ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:usage_slot_name ], + owl:onProperty linkml:is_grouping_slot ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:domain ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:multivalued ], + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:usage_slot_name ], + owl:onProperty linkml:asymmetric ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:inverse ], + owl:onProperty linkml:owner ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:reflexive ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:locally_reflexive ], + owl:onProperty linkml:reflexive_transitive_form_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_class_field ], + owl:onProperty linkml:list_elements_unique ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:list_elements_unique ], + owl:onProperty linkml:list_elements_ordered ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:relational_role ], + owl:onProperty linkml:identifier ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:is_a ], + owl:allValuesFrom linkml:Definition ; + owl:onProperty linkml:owner ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:role ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:slot_group ], + owl:onProperty linkml:union_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:minCardinality 0 ; owl:onProperty linkml:inherited ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:path_rule ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:inverse ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:ClassDefinition ; - owl:onProperty linkml:domain ], + owl:onProperty linkml:subproperty_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:ifabsent ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; owl:onProperty linkml:readonly ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:inverse ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:ifabsent ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:subproperty_of ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:shared ], + owl:onProperty linkml:irreflexive ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_grouping_slot ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:is_grouping_slot ], + owl:onProperty linkml:identifier ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty linkml:locally_reflexive ], + owl:onProperty linkml:symmetric ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:readonly ], + owl:onProperty linkml:is_class_field ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:is_a ], + owl:onProperty linkml:inherited ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:inherited ], + owl:onProperty linkml:is_a ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:asymmetric ], + owl:maxCardinality 1 ; + owl:onProperty linkml:array ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:usage_slot_name ], + owl:onProperty linkml:children_are_mutually_disjoint ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:singular_name ], + owl:onProperty linkml:transitive_form_of ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty linkml:role ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:subproperty_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:alias ], + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty linkml:list_elements_unique ], + owl:allValuesFrom linkml:ArrayExpression ; + owl:onProperty linkml:array ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty linkml:identifier ], + owl:allValuesFrom linkml:SlotDefinition ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:shared ], + owl:onProperty linkml:singular_name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:is_usage_slot ], + owl:onProperty linkml:subproperty_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty linkml:multivalued ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:PathExpression ; + owl:onProperty linkml:path_rule ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty linkml:slot_uri ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty linkml:alias ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty linkml:key ], + owl:onProperty linkml:is_usage_slot ], [ a owl:Restriction ; - owl:allValuesFrom linkml:SlotDefinition ; - owl:onProperty linkml:is_a ], + owl:maxCardinality 1 ; + owl:onProperty linkml:inverse ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty linkml:designates_type ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty linkml:list_elements_ordered ], + owl:onProperty linkml:ifabsent ], linkml:Definition, linkml:SlotExpression ; skos:altLabel "attribute", diff --git a/linkml_runtime/linkml_model/protobuf/meta.proto b/linkml_runtime/linkml_model/protobuf/meta.proto index 102c8c3b..454e6ed5 100644 --- a/linkml_runtime/linkml_model/protobuf/meta.proto +++ b/linkml_runtime/linkml_model/protobuf/meta.proto @@ -126,6 +126,7 @@ message AnonymousSlotExpression repeated string equalsStringIn = 0 integer equalsNumber = 0 string equalsExpression = 0 + integer exactCardinality = 0 integer minimumCardinality = 0 integer maximumCardinality = 0 anonymousSlotExpression hasMember = 0 @@ -152,6 +153,50 @@ message AnonymousTypeExpression repeated anonymousTypeExpression anyOf = 101 repeated anonymousTypeExpression allOf = 107 } +// defines the dimensions of an array +message ArrayExpression + { + integer exactNumberDimensions = 0 + integer minimumNumberDimensions = 0 + anything maximumNumberDimensions = 0 + boolean hasExtraDimensions = 0 + repeated dimensionExpression dimensions = 0 + repeated extension extensions = 0 + repeated annotation annotations = 0 + string description = 5 + repeated altDescription altDescriptions = 0 + string title = 3 + string deprecated = 0 + repeated string todos = 0 + repeated string notes = 0 + repeated string comments = 0 + repeated example examples = 0 + repeated subsetDefinition inSubset = 0 + uri fromSchema = 0 + string importedFrom = 0 + uriorcurie source = 0 + string inLanguage = 0 + repeated uriorcurie seeAlso = 0 + uriorcurie deprecatedElementHasExactReplacement = 0 + uriorcurie deprecatedElementHasPossibleReplacement = 0 + repeated string aliases = 0 + repeated structuredAlias structuredAliases = 0 + repeated uriorcurie mappings = 0 + repeated uriorcurie exactMappings = 0 + repeated uriorcurie closeMappings = 0 + repeated uriorcurie relatedMappings = 0 + repeated uriorcurie narrowMappings = 0 + repeated uriorcurie broadMappings = 0 + uriorcurie createdBy = 0 + repeated uriorcurie contributors = 0 + datetime createdOn = 0 + datetime lastUpdatedOn = 0 + uriorcurie modifiedBy = 0 + uriorcurie status = 0 + integer rank = 51 + repeated uriorcurie categories = 0 + repeated string keywords = 0 + } // an element whose instances are complex objects that may have slot-value assignments message ClassDefinition { @@ -271,6 +316,49 @@ message ClassRule repeated uriorcurie categories = 0 repeated string keywords = 0 } +// defines one of the dimensions of an array +message DimensionExpression + { + string alias = 6 + integer maximumCardinality = 0 + integer minimumCardinality = 0 + integer exactCardinality = 0 + repeated extension extensions = 0 + repeated annotation annotations = 0 + string description = 5 + repeated altDescription altDescriptions = 0 + string title = 3 + string deprecated = 0 + repeated string todos = 0 + repeated string notes = 0 + repeated string comments = 0 + repeated example examples = 0 + repeated subsetDefinition inSubset = 0 + uri fromSchema = 0 + string importedFrom = 0 + uriorcurie source = 0 + string inLanguage = 0 + repeated uriorcurie seeAlso = 0 + uriorcurie deprecatedElementHasExactReplacement = 0 + uriorcurie deprecatedElementHasPossibleReplacement = 0 + repeated string aliases = 0 + repeated structuredAlias structuredAliases = 0 + repeated uriorcurie mappings = 0 + repeated uriorcurie exactMappings = 0 + repeated uriorcurie closeMappings = 0 + repeated uriorcurie relatedMappings = 0 + repeated uriorcurie narrowMappings = 0 + repeated uriorcurie broadMappings = 0 + uriorcurie createdBy = 0 + repeated uriorcurie contributors = 0 + datetime createdOn = 0 + datetime lastUpdatedOn = 0 + uriorcurie modifiedBy = 0 + uriorcurie status = 0 + integer rank = 51 + repeated uriorcurie categories = 0 + repeated string keywords = 0 + } // an element whose instances must be drawn from a specified set of permissible values message EnumDefinition { @@ -697,6 +785,7 @@ message SlotDefinition classDefinition domain = 0 uriorcurie slotUri = 2 boolean multivalued = 7 + arrayExpression array = 0 boolean inherited = 0 string readonly = 0 string ifabsent = 0 @@ -751,6 +840,7 @@ message SlotDefinition repeated string equalsStringIn = 0 integer equalsNumber = 0 string equalsExpression = 0 + integer exactCardinality = 0 integer minimumCardinality = 0 integer maximumCardinality = 0 anonymousSlotExpression hasMember = 0 diff --git a/linkml_runtime/linkml_model/shacl/meta.shacl.ttl b/linkml_runtime/linkml_model/shacl/meta.shacl.ttl index 9531186a..370a098e 100644 --- a/linkml_runtime/linkml_model/shacl/meta.shacl.ttl +++ b/linkml_runtime/linkml_model/shacl/meta.shacl.ttl @@ -29,65 +29,126 @@ linkml:AnonymousExpression a sh:NodeShape ; sh:closed false ; sh:description "An abstract parent class for any nested expression" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 8 ; + sh:path skos:note ], + [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:order 11 ; sh:path skos:inScheme ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 21 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:alt_descriptions ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 18 ; - sh:path skos:altLabel ], + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:imported_from ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 20 ; + sh:path skos:mappingRelation ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 19 ; + sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 34 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 7 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 14 ; - sh:path schema1:inLanguage ], + sh:order 5 ; + sh:path linkml:deprecated ], + [ sh:description "agent that contributed to the element" ; + sh:order 27 ; + sh:path dcterms:contributor ], [ sh:datatype xsd:string ; sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:order 2 ; sh:path skos:definition ], - [ sh:description "agent that modified the element" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path oslc:modifiedBy ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 26 ; + sh:path pav:createdBy ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 16 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 6 ; + sh:path linkml:todos ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml:extensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 25 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path sh:order ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 10 ; sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 20 ; - sh:path skos:mappingRelation ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:imported_from ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:alt_descriptions ], + sh:order 28 ; + sh:path pav:createdOn ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 15 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 8 ; - sh:path skos:note ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 25 ; - sh:path skos:broadMatch ], + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 18 ; + sh:path skos:altLabel ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 33 ; + sh:path dcterms:subject ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:annotations ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 30 ; + sh:path oslc:modifiedBy ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; sh:order 24 ; sh:path skos:narrowMatch ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 7 ; - sh:path skos:editorialNote ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path dcterms:source ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was last updated" ; sh:maxCount 1 ; @@ -98,83 +159,22 @@ linkml:AnonymousExpression a sh:NodeShape ; sh:nodeKind sh:BlankNode ; sh:order 9 ; sh:path linkml:examples ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 22 ; - sh:path skos:closeMatch ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml:extensions ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 6 ; - sh:path linkml:todos ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 21 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 28 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path sh:order ], - [ sh:description "agent that contributed to the element" ; - sh:order 27 ; - sh:path dcterms:contributor ], - [ sh:description "agent that created the element" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 26 ; - sh:path pav:createdBy ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 15 ; - sh:path rdfs:seeAlso ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 19 ; - sh:path skosxl:altLabel ], + sh:order 14 ; + sh:path schema1:inLanguage ], [ sh:datatype xsd:string ; sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:order 4 ; sh:path dcterms:title ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 34 ; - sh:path schema1:keywords ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 22 ; + sh:path skos:closeMatch ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; sh:order 23 ; - sh:path skos:relatedMatch ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 33 ; - sh:path dcterms:subject ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 13 ; - sh:path dcterms:source ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:deprecated_element_has_exact_replacement ] ; + sh:path skos:relatedMatch ] ; sh:targetClass linkml:AnonymousExpression . linkml:ClassExpression a sh:NodeShape ; @@ -182,30 +182,30 @@ linkml:ClassExpression a sh:NodeShape ; sh:description "A boolean expression that can be used to dynamically determine membership of a class" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if all of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:all_of ], + sh:order 2 ; + sh:path linkml:none_of ], [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; sh:order 0 ; sh:path linkml:any_of ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:exactly_one_of ], [ sh:class linkml:SlotDefinition ; sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; sh:order 4 ; sh:path linkml:slot_conditions ], [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:none_of ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:exactly_one_of ] ; + sh:order 3 ; + sh:path linkml:all_of ] ; sh:targetClass linkml:ClassExpression . linkml:ClassLevelRule a sh:NodeShape ; @@ -218,142 +218,142 @@ linkml:CommonMetadata a sh:NodeShape ; sh:closed false ; sh:description "Generic metadata shared across definitions" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 26 ; - sh:path pav:createdOn ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 9 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path schema1:inLanguage ], - [ sh:datatype xsd:integer ; + sh:property [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:order 30 ; sh:path sh:order ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 6 ; - sh:path skos:note ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 19 ; - sh:path skos:exactMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 23 ; + sh:path skos:broadMatch ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 4 ; + sh:path linkml:todos ], + [ sh:description "agent that contributed to the element" ; + sh:order 25 ; + sh:path dcterms:contributor ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 24 ; + sh:path pav:createdBy ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 21 ; + sh:path skos:relatedMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 22 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe the element" ; sh:order 32 ; sh:path schema1:keywords ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 13 ; - sh:path rdfs:seeAlso ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 29 ; - sh:path bibo:status ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 28 ; - sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 20 ; - sh:path skos:closeMatch ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 31 ; + sh:path dcterms:subject ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 17 ; + sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:imported_from ], + sh:order 0 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 6 ; + sh:path skos:note ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:deprecated ], + sh:order 27 ; + sh:path pav:lastUpdatedOn ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 15 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 24 ; - sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 22 ; - sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 16 ; + sh:path skos:altLabel ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:order 11 ; sh:path dcterms:source ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 26 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path skos:inScheme ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 18 ; sh:path skos:mappingRelation ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 28 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 13 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 0 ; - sh:path skos:definition ], + sh:order 12 ; + sh:path schema1:inLanguage ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 19 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 16 ; - sh:path skos:altLabel ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:examples ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 23 ; - sh:path skos:broadMatch ], - [ sh:description "agent that contributed to the element" ; - sh:order 25 ; - sh:path dcterms:contributor ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 27 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 31 ; - sh:path dcterms:subject ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 21 ; - sh:path skos:relatedMatch ], + sh:order 2 ; + sh:path dcterms:title ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:imported_from ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:order 5 ; sh:path skos:editorialNote ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 4 ; - sh:path linkml:todos ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path skosxl:altLabel ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:alt_descriptions ] ; + sh:order 7 ; + sh:path linkml:examples ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path bibo:status ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 20 ; + sh:path skos:closeMatch ] ; sh:targetClass linkml:CommonMetadata . linkml:Expression a sh:NodeShape ; @@ -377,35 +377,13 @@ linkml:ImportExpression a sh:NodeShape ; sh:closed true ; sh:description "an expression describing an import" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:import_as ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], - [ sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:import_from ], + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ], + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; sh:order 11 ; @@ -415,233 +393,262 @@ linkml:ImportExpression a sh:NodeShape ; sh:maxCount 1 ; sh:order 17 ; sh:path schema1:inLanguage ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 19 ; sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ], + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was last updated" ; sh:maxCount 1 ; sh:order 32 ; sh:path pav:lastUpdatedOn ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:annotations ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 22 ; sh:path skosxl:altLabel ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; sh:order 6 ; sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:Setting ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:import_map ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; sh:order 12 ; sh:path linkml:examples ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:deprecated ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; sh:order 29 ; sh:path pav:createdBy ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path bibo:status ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:import_from ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 35 ; + sh:path sh:order ], [ sh:datatype xsd:string ; sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:order 7 ; sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:annotations ], + [ sh:class linkml:Setting ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:import_map ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:imported_from ] ; + sh:order 1 ; + sh:path linkml:import_as ] ; sh:targetClass linkml:ImportExpression . linkml:SchemaDefinition a sh:NodeShape ; sh:closed true ; sh:description "A collection of definitions that make up a schema or a data model." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 60 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; sh:description "license for the schema" ; sh:maxCount 1 ; sh:order 3 ; sh:path dcterms:license ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 49 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 54 ; - sh:path skos:broadMatch ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + [ sh:datatype xsd:string ; + sh:description "The prefix that is used for all elements within a schema" ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path linkml:default_prefix ], + [ sh:datatype xsd:string ; + sh:description "particular version of schema" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path pav:version ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 58 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Setting ; + sh:description "A collection of global variable settings" ; sh:nodeKind sh:BlankNode ; - sh:order 48 ; - sh:path skosxl:altLabel ], + sh:order 20 ; + sh:path linkml:settings ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 25 ; + sh:path linkml:local_names ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description "a unique name for the schema that is both human-readable and consists of only characters from the NCName set" ; sh:maxCount 1 ; - sh:order 41 ; - sh:path linkml:imported_from ], + sh:minCount 1 ; + sh:order 21 ; + sh:path rdfs:label ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 32 ; + sh:path linkml:alt_descriptions ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; sh:order 38 ; sh:path linkml:examples ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 63 ; - sh:path schema1:keywords ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 59 ; - sh:path oslc:modifiedBy ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 39 ; - sh:path OIO:inSubset ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 62 ; + sh:path dcterms:subject ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 29 ; sh:path linkml:extensions ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 28 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 36 ; - sh:path skos:editorialNote ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 62 ; - sh:path dcterms:subject ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 30 ; - sh:path linkml:annotations ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 27 ; - sh:path linkml:implements ], - [ sh:datatype xsd:boolean ; - sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:slot_names_unique ], + sh:order 45 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:dateTime ; - sh:description "date and time that the schema was loaded/generated" ; - sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:generation_date ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 32 ; - sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:string ; - sh:description "Version of the metamodel used to load the schema" ; + sh:description "modification date of the source of the schema" ; sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:metamodel_version ], + sh:order 16 ; + sh:path linkml:source_file_date ], [ sh:description "agent that contributed to the element" ; sh:order 56 ; sh:path dcterms:contributor ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 28 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:order 23 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:datatype xsd:string ; - sh:description "The prefix that is used for all elements within a schema" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:default_prefix ], - [ sh:class linkml:EnumDefinition ; - sh:description "An index to the collection of all enum definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 11 ; - sh:path linkml:enums ], - [ sh:class linkml:TypeDefinition ; - sh:description "default slot range to be used if range element is omitted from a slot definition" ; + sh:order 34 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:integer ; + sh:description "size in bytes of the source of the schema" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml:default_range ], + sh:order 17 ; + sh:path linkml:source_file_size ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 55 ; + sh:path pav:createdBy ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 59 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 41 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:order 26 ; + sh:path dcterms:conformsTo ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 27 ; + sh:path linkml:implements ], [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; sh:order 24 ; @@ -651,201 +658,183 @@ linkml:SchemaDefinition a sh:NodeShape ; sh:maxCount 1 ; sh:order 43 ; sh:path schema1:inLanguage ], - [ sh:class linkml:SlotDefinition ; - sh:description "An index to the collection of all slot definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 12 ; - sh:path linkml:slot_definitions ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 60 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "name, uri or description of the source of the schema" ; - sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:source_file ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 53 ; - sh:path skos:narrowMatch ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 37 ; - sh:path skos:note ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 51 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 49 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; - sh:description "a list of Curie prefixes that are used in the representation of instances of the model. All prefixes in this list are added to the prefix sections of the target models." ; - sh:order 5 ; - sh:path linkml:emit_prefixes ], + sh:description "Keywords or tags used to describe the element" ; + sh:order 63 ; + sh:path schema1:keywords ], [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:order 40 ; sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "Version of the metamodel used to load the schema" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path linkml:metamodel_version ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 48 ; + sh:path skosxl:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 51 ; + sh:path skos:closeMatch ], + [ sh:class linkml:TypeDefinition ; + sh:description "An index to the collection of all type definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 10 ; + sh:path linkml:types ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 54 ; + sh:path skos:broadMatch ], [ sh:class linkml:ClassDefinition ; sh:description "An index to the collection of all class definitions in the schema" ; sh:nodeKind sh:IRI ; sh:order 13 ; sh:path linkml:classes ], - [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; - sh:maxCount 1 ; - sh:order 26 ; - sh:path dcterms:conformsTo ], - [ sh:datatype xsd:integer ; - sh:description "size in bytes of the source of the schema" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:source_file_size ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; - sh:maxCount 1 ; - sh:order 23 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path dcterms:title ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 39 ; + sh:path OIO:inSubset ], + [ sh:class linkml:SlotDefinition ; + sh:description "An index to the collection of all slot definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 12 ; + sh:path linkml:slot_definitions ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 58 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "agent that created the element" ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 55 ; - sh:path pav:createdBy ], + sh:order 57 ; + sh:path pav:createdOn ], [ sh:datatype xsd:string ; - sh:description "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" ; - sh:order 6 ; - sh:path linkml:default_curi_maps ], - [ sh:class linkml:Setting ; - sh:description "A collection of global variable settings" ; - sh:nodeKind sh:BlankNode ; - sh:order 20 ; - sh:path linkml:settings ], - [ sh:datatype xsd:dateTime ; - sh:description "modification date of the source of the schema" ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:source_file_date ], + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 47 ; + sh:path skos:altLabel ], [ sh:datatype xsd:string ; - sh:description "particular version of schema" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 36 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:anyURI ; + sh:description "The official schema URI" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path pav:version ], - [ sh:class linkml:Prefix ; - sh:description "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path sh:declare ], - [ sh:class linkml:SubsetDefinition ; - sh:description "An index to the collection of all subset definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 9 ; - sh:path linkml:subsets ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 52 ; - sh:path skos:relatedMatch ], + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:id ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 46 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:class linkml:TypeDefinition ; + sh:description "default slot range to be used if range element is omitted from a slot definition" ; sh:maxCount 1 ; - sh:order 61 ; - sh:path sh:order ], + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml:default_range ], [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 44 ; sh:path rdfs:seeAlso ], - [ sh:class linkml:TypeDefinition ; - sh:description "An index to the collection of all type definitions in the schema" ; - sh:nodeKind sh:IRI ; - sh:order 10 ; - sh:path linkml:types ], [ sh:datatype xsd:string ; sh:description "Outstanding issues that needs resolution" ; sh:order 35 ; sh:path linkml:todos ], - [ sh:datatype xsd:anyURI ; - sh:description "The official schema URI" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:id ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 42 ; - sh:path dcterms:source ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 34 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 57 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 47 ; - sh:path skos:altLabel ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 22 ; - sh:path linkml:id_prefixes ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 53 ; + sh:path skos:narrowMatch ], [ sh:description "A list of schemas that are to be included in this schema" ; sh:order 2 ; sh:path linkml:imports ], [ sh:datatype xsd:string ; - sh:description "a unique name for the schema that is both human-readable and consists of only characters from the NCName set" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 21 ; - sh:path rdfs:label ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 31 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "a list of Curie prefixes that are used in the representation of instances of the model. All prefixes in this list are added to the prefix sections of the target models." ; + sh:order 5 ; + sh:path linkml:emit_prefixes ], + [ sh:class linkml:SubsetDefinition ; + sh:description "An index to the collection of all subset definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 9 ; + sh:path linkml:subsets ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 37 ; + sh:path skos:note ], + [ sh:class linkml:EnumDefinition ; + sh:description "An index to the collection of all enum definitions in the schema" ; + sh:nodeKind sh:IRI ; + sh:order 11 ; + sh:path linkml:enums ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 45 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 61 ; + sh:path sh:order ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:order 50 ; sh:path skos:exactMatch ], - [ sh:class linkml:LocalName ; + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path linkml:local_names ] ; + sh:order 30 ; + sh:path linkml:annotations ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 52 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:boolean ; + sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:slot_names_unique ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 22 ; + sh:path linkml:id_prefixes ], + [ sh:class linkml:Prefix ; + sh:description "A collection of prefix expansions that specify how CURIEs can be expanded to URIs" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path sh:declare ], + [ sh:datatype xsd:string ; + sh:description "ordered list of prefixcommon biocontexts to be fetched to resolve id prefixes and inline prefix variables" ; + sh:order 6 ; + sh:path linkml:default_curi_maps ], + [ sh:datatype xsd:string ; + sh:description "name, uri or description of the source of the schema" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:source_file ], + [ sh:datatype xsd:dateTime ; + sh:description "date and time that the schema was loaded/generated" ; + sh:maxCount 1 ; + sh:order 18 ; + sh:path linkml:generation_date ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 42 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path dcterms:title ] ; sh:targetClass linkml:SchemaDefinition . linkml:SlotExpression a sh:NodeShape ; sh:closed false ; sh:description "an expression that constrains the range of values a slot can take" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:maximum_cardinality ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path linkml:none_of ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:property [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:maximum_value ], + sh:order 14 ; + sh:path linkml:equals_string ], [ sh:class linkml:Element ; sh:description """defines the type of the object of the slot. Given the following slot definition S1: @@ -861,61 +850,60 @@ implicitly asserts Y is an instance of C2 sh:nodeKind sh:IRI ; sh:order 0 ; sh:path linkml:range ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 23 ; - sh:path linkml:exactly_one_of ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:recommended ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:range_expression ], - [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:implicit_prefix ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:order 8 ; + sh:path linkml:maximum_value ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:structured_pattern ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:order 22 ; + sh:path linkml:all_members ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 25 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:maximum_cardinality ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:minimum_value ], + sh:order 2 ; + sh:path linkml:enum_range ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 21 ; - sh:path linkml:all_members ], - [ sh:datatype xsd:string ; - sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:path linkml:has_member ], + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:equals_expression ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:order 18 ; + sh:path linkml:exact_cardinality ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:implicit_prefix ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path qudt:unit ], - [ sh: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)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:order 23 ; + sh:path linkml:none_of ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:value_presence ], + sh:order 9 ; + sh:path linkml:pattern ], [ sh:datatype xsd:boolean ; sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; sh:maxCount 1 ; @@ -924,803 +912,743 @@ implicitly asserts Y is an instance of C2 [ sh:datatype xsd:integer ; sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:order 18 ; + sh:order 19 ; sh:path linkml:minimum_cardinality ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path linkml:all_of ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; + sh:order 24 ; + sh:path linkml:exactly_one_of ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:enum_range ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:equals_number ], + sh:order 11 ; + sh:path qudt:unit ], [ sh:datatype xsd:boolean ; sh:description "true means that the slot must be present in instances of the class definition" ; sh:maxCount 1 ; sh:order 3 ; sh:path linkml:required ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 15 ; + sh:path linkml:equals_string_in ], + [ sh:datatype xsd:string ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path linkml:equals_expression ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:equals_string ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 24 ; - sh:path linkml:any_of ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; + sh:order 10 ; + sh:path linkml:structured_pattern ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 20 ; - sh:path linkml:has_member ], + sh:order 1 ; + sh:path linkml:range_expression ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 26 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:recommended ], + [ sh: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)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 13 ; + sh:path linkml:value_presence ], [ sh:datatype xsd:boolean ; sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; sh:maxCount 1 ; sh:order 6 ; sh:path linkml:inlined_as_list ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 15 ; - sh:path linkml:equals_string_in ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:pattern ] ; + sh:order 16 ; + sh:path linkml:equals_number ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:minimum_value ] ; sh:targetClass linkml:SlotExpression . linkml:TypeExpression a sh:NodeShape ; sh:closed false ; sh:description "An abstract class grouping named types and anonymous type expressions" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:none_of ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; + sh:property [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:exactly_one_of ], + sh:order 2 ; + sh:path qudt:unit ], [ sh:datatype xsd:integer ; sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; sh:order 6 ; sh:path linkml:equals_number ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:implicit_prefix ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 5 ; + sh:path linkml:equals_string_in ], [ sh:class linkml:Any ; sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 8 ; sh:path linkml:maximum_value ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:structured_pattern ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:all_of ], + sh:order 4 ; + sh:path linkml:equals_string ], [ sh:class linkml:Any ; sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 7 ; sh:path linkml:minimum_value ], - [ sh:datatype xsd:string ; + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:string ; sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:order 0 ; sh:path linkml:pattern ], [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; + sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path linkml:any_of ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 5 ; - sh:path linkml:equals_string_in ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:equals_string ], - [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:implicit_prefix ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:order 9 ; + sh:path linkml:none_of ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 10 ; + sh:path linkml:exactly_one_of ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path qudt:unit ] ; + sh:order 1 ; + sh:path linkml:structured_pattern ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 11 ; + sh:path linkml:any_of ] ; sh:targetClass linkml:TypeExpression . -linkml:ClassRule a sh:NodeShape ; +linkml:ArrayExpression a sh:NodeShape ; sh:closed true ; - sh:description "A rule that applies to instances of a class" ; + sh:description "defines the dimensions of an array" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "status of the element" ; + sh:property [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 12 ; + sh:path skos:editorialNote ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 38 ; - sh:path bibo:status ], + sh:order 18 ; + sh:path dcterms:source ], [ sh:datatype xsd:boolean ; - sh:description "a deactivated rule is not executed by the rules engine" ; + sh:description "If this is set to true" ; sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:has_extra_dimensions ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; sh:order 6 ; - sh:path sh:deactivated ], + sh:path linkml:annotations ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 29 ; + sh:path skos:narrowMatch ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 38 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 21 ; + sh:order 19 ; sh:path schema1:inLanguage ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold in order for the rule to be applicable to an instance" ; + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 20 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 13 ; + sh:path skos:note ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; + sh:order 34 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 25 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 11 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 39 ; + sh:path schema1:keywords ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path sh:condition ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 30 ; - sh:path skos:relatedMatch ], + sh:order 14 ; + sh:path linkml:examples ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:alt_descriptions ], + [ sh:description "agent that contributed to the element" ; + sh:order 32 ; + sh:path dcterms:contributor ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 23 ; + sh:order 21 ; sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 29 ; - sh:path skos:closeMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 27 ; - sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 30 ; + sh:path skos:broadMatch ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 22 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Any ; + sh:description "maximum number of dimensions in the array, or False if explicitly no maximum. If this is unset, and an explicit list of dimensions are passed using dimensions, then this is interpreted as a closed list and the maximum_number_dimensions is the length of the dimensions list, unless this value is set to False" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:maximum_number_dimensions ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 5 ; + sh:order 37 ; sh:path sh:order ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path pav:createdBy ], [ sh:datatype xsd:string ; sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 25 ; + sh:order 23 ; sh:path skos:altLabel ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + [ sh:datatype xsd:integer ; + sh:description "exact number of dimensions in the array" ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 39 ; - sh:path dcterms:subject ], - [ sh:description "agent that created the element" ; + sh:order 0 ; + sh:path linkml:exact_number_dimensions ], + [ sh:datatype xsd:integer ; + sh:description "minimum number of dimensions in the array" ; sh:maxCount 1 ; - sh:order 33 ; - sh:path pav:createdBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 32 ; - sh:path skos:broadMatch ], + sh:order 1 ; + sh:path linkml:minimum_number_dimensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 27 ; + sh:path skos:closeMatch ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 36 ; + sh:path bibo:status ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path skos:definition ], - [ sh:description "agent that contributed to the element" ; - sh:order 34 ; - sh:path dcterms:contributor ], + sh:order 17 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 26 ; + sh:path skos:exactMatch ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 37 ; + sh:order 35 ; sh:path oslc:modifiedBy ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold for an instance of the class, if the preconditions hold" ; - sh:maxCount 1 ; + [ sh:class linkml:DimensionExpression ; + sh:description "definitions of each axis in the array" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:postconditions ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 4 ; + sh:path linkml:dimensions ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; sh:order 15 ; - sh:path skos:note ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path dcterms:source ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path pav:createdOn ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 7 ; + sh:path skos:definition ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 13 ; - sh:path linkml:todos ], + sh:order 24 ; + sh:path skosxl:altLabel ], [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 18 ; + sh:order 16 ; sh:path skos:inScheme ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 31 ; - sh:path skos:narrowMatch ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 14 ; - sh:path skos:editorialNote ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "an expression that must hold for an instance of the class, if the preconditions no not hold" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:elseconditions ], - [ sh:datatype xsd:boolean ; - sh:description "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:open_world ], + sh:order 9 ; + sh:path dcterms:title ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 7 ; + sh:order 5 ; sh:path linkml:extensions ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 17 ; - sh:path OIO:inSubset ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path pav:createdOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 28 ; + sh:path skos:relatedMatch ] ; + sh:targetClass linkml:ArrayExpression . + +linkml:ClassRule a sh:NodeShape ; + sh:closed true ; + sh:description "A rule that applies to instances of a class" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 23 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 25 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 11 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 32 ; + sh:path skos:broadMatch ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; sh:order 26 ; sh:path skosxl:altLabel ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 28 ; - sh:path skos:exactMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 27 ; + sh:path skos:mappingRelation ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 39 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 14 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 29 ; + sh:path skos:closeMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 34 ; + sh:path dcterms:contributor ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; sh:order 16 ; sh:path linkml:examples ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:deprecated ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 22 ; - sh:path rdfs:seeAlso ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 40 ; - sh:path schema1:keywords ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 28 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold in order for the rule to be applicable to an instance" ; sh:maxCount 1 ; - sh:order 11 ; - sh:path dcterms:title ], + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path sh:condition ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:order 19 ; sh:path linkml:imported_from ], - [ sh:datatype xsd:boolean ; - sh:description "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:bidirectional ] ; - sh:targetClass linkml:ClassRule . - -linkml:Prefix a sh:NodeShape ; - sh:closed true ; - sh:description "prefix URI tuple" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; - sh:description "The namespace to which a prefix expands to." ; + sh:order 5 ; + sh:path sh:order ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path sh:namespace ], - [ sh:datatype xsd:string ; - sh:description "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; + sh:order 24 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path sh:prefix ] ; - sh:targetClass linkml:Prefix . - -linkml:UniqueKey a sh:NodeShape ; - sh:closed true ; - sh:description "a collection of slots whose values uniquely identify an instance of a class" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:SlotDefinition ; - sh:description "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:unique_key_slots ], + sh:order 37 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 22 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 31 ; + sh:path skos:narrowMatch ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 38 ; + sh:path bibo:status ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 32 ; + sh:order 36 ; sh:path pav:lastUpdatedOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:description "agent that modified the element" ; + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], + sh:order 12 ; + sh:path linkml:deprecated ], [ sh:datatype xsd:string ; sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; + sh:order 13 ; sh:path linkml:todos ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], + sh:path dcterms:source ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 29 ; + sh:order 33 ; sh:path pav:createdBy ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 13 ; + sh:order 17 ; sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], + [ sh:datatype xsd:boolean ; + sh:description "if true, the the postconditions may be omitted in instance data, but it is valid for an inference engine to add these" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:open_world ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; + sh:order 40 ; sh:path schema1:keywords ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 30 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 18 ; + sh:path skos:inScheme ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 17 ; + sh:order 21 ; sh:path schema1:inLanguage ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "name of the unique key" ; + sh:order 35 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:boolean ; + sh:description "a deactivated rule is not executed by the rules engine" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:unique_key_name ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], + sh:order 6 ; + sh:path sh:deactivated ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:order 15 ; - sh:path linkml:imported_from ], - [ sh:description "A related resource from which the element is derived." ; + sh:path skos:note ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold for an instance of the class, if the preconditions hold" ; sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 1 ; + sh:path linkml:postconditions ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "an expression that must hold for an instance of the class, if the preconditions no not hold" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:annotations ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path pav:createdOn ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ], - [ sh:datatype xsd:boolean ; - sh:description "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; - sh:maxCount 1 ; sh:order 2 ; - sh:path linkml:consider_nulls_inequal ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:path linkml:elseconditions ], + [ sh:datatype xsd:boolean ; + sh:description "in addition to preconditions entailing postconditions, the postconditions entail the preconditions" ; sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:bidirectional ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; sh:order 7 ; - sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ] ; - sh:targetClass linkml:UniqueKey . + sh:path linkml:extensions ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 10 ; + sh:path linkml:alt_descriptions ] ; + sh:targetClass linkml:ClassRule . -linkml:Setting a sh:NodeShape ; +linkml:DimensionExpression a sh:NodeShape ; sh:closed true ; - sh:description "assignment of a key to a value" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "The value assigned for a setting" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path linkml:setting_value ], - [ sh:datatype xsd:string ; - sh:description "the variable name for a setting" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:setting_key ] ; - sh:targetClass linkml:Setting . - -linkml:Element a sh:NodeShape ; - sh:closed false ; - sh:description "A named element in the model" ; + sh:description "defines one of the dimensions of an array" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 31 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:local_names ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 21 ; - sh:path dcterms:source ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 41 ; - sh:path dcterms:subject ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:property [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_exact_replacement ], + sh:order 36 ; + sh:path sh:order ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 8 ; + sh:order 4 ; sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 32 ; - sh:path skos:narrowMatch ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml:definition_uri ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 39 ; - sh:path bibo:status ], + sh:path linkml:exact_cardinality ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:deprecated ], + sh:order 6 ; + sh:path skos:definition ], [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 29 ; + sh:order 25 ; sh:path skos:exactMatch ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 37 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 16 ; - sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 26 ; - sh:path skos:altLabel ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 7 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "agent that created the element" ; + sh:order 9 ; + sh:path linkml:deprecated ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path pav:createdBy ], + sh:order 32 ; + sh:path pav:createdOn ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 5 ; - sh:path dcterms:conformsTo ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 1 ; - sh:path linkml:id_prefixes ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 8 ; + sh:path dcterms:title ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 14 ; + sh:path OIO:inSubset ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 42 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 28 ; - sh:path skos:mappingRelation ], - [ sh:description "agent that contributed to the element" ; - sh:order 35 ; - sh:path dcterms:contributor ], + sh:order 5 ; + sh:path linkml:annotations ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; sh:order 15 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 14 ; - sh:path linkml:todos ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], + sh:path skos:inScheme ], [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 23 ; + sh:order 19 ; sh:path rdfs:seeAlso ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 33 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path rdfs:label ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:examples ], + sh:order 1 ; + sh:path linkml:maximum_cardinality ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 27 ; + sh:order 23 ; sh:path skosxl:altLabel ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 6 ; - sh:path linkml:implements ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 38 ; + sh:order 34 ; sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 30 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:alt_descriptions ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 40 ; - sh:path sh:order ], + sh:order 35 ; + sh:path bibo:status ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:order 33 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:order 10 ; - sh:path skos:definition ], + sh:order 2 ; + sh:path linkml:minimum_cardinality ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 21 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 22 ; + sh:order 18 ; sh:path schema1:inLanguage ], + [ sh:description "agent that contributed to the element" ; + sh:order 31 ; + sh:path dcterms:contributor ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:imported_from ] ; - sh:targetClass linkml:Element . - -linkml:EnumExpression a sh:NodeShape ; - sh:closed true ; - sh:description "An expression that constrains the range of a slot" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "the identifier of an enumeration code set." ; + sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml:code_set ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml:include ], + sh:path skos:prefLabel ], [ sh:datatype xsd:string ; - sh:description "the version tag of the enumeration code set" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:code_set_tag ], - [ sh:class linkml:ReachabilityQuery ; - sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:reachable_from ], - [ sh:class linkml:PermissibleValue ; - sh:description "A list of possible values for a slot range" ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:permissible_values ], - [ sh:class linkml:EnumDefinition ; - sh:description "An enum definition that is used as the basis to create a new enum" ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:inherits ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:minus ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 10 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 11 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 22 ; + sh:path skos:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 24 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 12 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 38 ; + sh:path schema1:keywords ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ], - [ sh:class linkml:MatchQuery ; - sh:description "Specifies a match query that is used to calculate the list of permissible values" ; + sh:order 17 ; + sh:path dcterms:source ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 27 ; + sh:path skos:relatedMatch ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:matches ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:order 10 ; - sh:path linkml:concepts ], + sh:order 30 ; + sh:path pav:createdBy ], [ sh:datatype xsd:string ; - sh:description "the version identifier of the enumeration code set" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:code_set_version ] ; - sh:targetClass linkml:EnumExpression . + sh:order 16 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 29 ; + sh:path skos:broadMatch ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 13 ; + sh:path linkml:examples ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 26 ; + sh:path skos:closeMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 28 ; + sh:path skos:narrowMatch ] ; + sh:targetClass linkml:DimensionExpression . -linkml:MatchQuery a sh:NodeShape ; +linkml:Prefix a sh:NodeShape ; sh:closed true ; - sh: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." ; + sh:description "prefix URI tuple" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:identifier_pattern ], - [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + sh:property [ sh:datatype xsd:anyURI ; + sh:description "The namespace to which a prefix expands to." ; sh:maxCount 1 ; + sh:minCount 1 ; sh:order 1 ; - sh:path linkml:source_ontology ] ; - sh:targetClass linkml:MatchQuery . + sh:path sh:namespace ], + [ sh:datatype xsd:string ; + sh:description "The prefix components of a prefix expansions. This is the part that appears before the colon in a CURIE." ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path sh:prefix ] ; + sh:targetClass linkml:Prefix . -linkml:PermissibleValue a sh:NodeShape ; +linkml:UniqueKey a sh:NodeShape ; sh:closed true ; - sh:description "a permissible value, accompanied by intended text and an optional mapping to a concept URI" ; + sh:description "a collection of slots whose values uniquely identify an instance of a class" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:property [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:description "status of the element" ; + sh:order 22 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "name of the unique key" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:unique_key_name ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; @@ -1729,3047 +1657,2847 @@ linkml:PermissibleValue a sh:NodeShape ; [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 23 ; sh:path skos:mappingRelation ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; sh:order 15 ; sh:path linkml:imported_from ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path skos:definition ], + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; sh:order 31 ; sh:path pav:createdOn ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path qudt:unit ], + sh:order 34 ; + sh:path bibo:status ], [ sh:datatype xsd:string ; - sh:description "The actual permissible value itself" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path linkml:text ], - [ sh:description "agent that created the element" ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 8 ; + sh:path linkml:deprecated ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 5 ; - sh:path linkml:annotations ], - [ sh:description "the value meaning of a permissible value" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:meaning ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], + sh:order 6 ; + sh:path linkml:alt_descriptions ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 19 ; sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; sh:order 13 ; sh:path OIO:inSubset ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; sh:order 4 ; - sh:path linkml:extensions ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], + sh:path linkml:annotations ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 20 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:boolean ; + sh:description "By default, None values are considered equal for the purposes of comparisons in determining uniqueness. Set this to true to treat missing values as per ANSI-SQL NULLs, i.e NULL=NULL is always False." ; sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], + sh:order 2 ; + sh:path linkml:consider_nulls_inequal ], [ sh:description "agent that contributed to the element" ; sh:order 30 ; sh:path dcterms:contributor ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "agent that modified the element" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ] ; - sh:targetClass linkml:PermissibleValue . + sh:order 7 ; + sh:path dcterms:title ], + [ sh:class linkml:SlotDefinition ; + sh:description "list of slot names that form a key. The tuple formed from the values of all these slots should be unique." ; + sh:minCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:unique_key_slots ] ; + sh:targetClass linkml:UniqueKey . -linkml:ReachabilityQuery a sh:NodeShape ; +linkml:Setting a sh:NodeShape ; sh:closed true ; - sh: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." ; + sh:description "assignment of a key to a value" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:description "True if the query is reflexive" ; + sh:property [ sh:datatype xsd:string ; + sh:description "The value assigned for a setting" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:include_self ], - [ sh:description "A list of relationship types (properties) that are used in a reachability query" ; - sh:order 2 ; - sh:path linkml:relationship_types ], - [ sh:description "A list of nodes that are used in the reachability query" ; + sh:minCount 1 ; sh:order 1 ; - sh:path linkml:source_nodes ], - [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + sh:path linkml:setting_value ], + [ sh:datatype xsd:string ; + sh:description "the variable name for a setting" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:order 0 ; - sh:path linkml:source_ontology ], - [ sh:datatype xsd:boolean ; - sh:description "True if the direction of the reachability query is reversed and ancestors are retrieved" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:traverse_up ], - [ sh:datatype xsd:boolean ; - sh:description "True if the reachability query should only include directly related nodes, if False then include also transitively connected" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:is_direct ] ; - sh:targetClass linkml:ReachabilityQuery . + sh:path linkml:setting_key ] ; + sh:targetClass linkml:Setting . -linkml:EnumDefinition a sh:NodeShape ; - sh:closed true ; - sh:description "an element whose instances must be drawn from a specified set of permissible values" ; +linkml:Element a sh:NodeShape ; + sh:closed false ; + sh:description "A named element in the model" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "the version tag of the enumeration code set" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:code_set_tag ], - [ sh:class linkml:Definition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:order 16 ; - sh:path linkml:apply_to ], - [ sh:class linkml:MatchQuery ; - sh:description "Specifies a match query that is used to calculate the list of permissible values" ; + sh:path skos:note ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:matches ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 42 ; - sh:path rdfs:seeAlso ], - [ sh:description "the identifier of an enumeration code set." ; + sh:order 21 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:code_set ], + sh:minCount 1 ; + sh:order 0 ; + sh:path rdfs:label ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 1 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 24 ; - sh:path dcterms:conformsTo ], + sh:order 2 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 41 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 34 ; - sh:path skos:editorialNote ], - [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; sh:order 12 ; - sh:path linkml:is_a ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 49 ; - sh:path skos:closeMatch ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:order 11 ; - sh:path linkml:concepts ], + sh:path dcterms:title ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 47 ; + sh:order 28 ; sh:path skos:mappingRelation ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 27 ; - sh:path linkml:extensions ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 39 ; + sh:path bibo:status ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 18 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 31 ; + sh:path skos:relatedMatch ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 41 ; - sh:path schema1:inLanguage ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 17 ; - sh:path linkml:values_from ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 60 ; - sh:path dcterms:subject ], + sh:order 5 ; + sh:path dcterms:conformsTo ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 46 ; + sh:order 27 ; sh:path skosxl:altLabel ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:mixin ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 50 ; - sh:path skos:relatedMatch ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 25 ; - sh:path linkml:implements ], - [ sh:datatype xsd:string ; - sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; - sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:string_serialization ], - [ sh:class linkml:EnumDefinition ; - sh:description "An enum definition that is used as the basis to create a new enum" ; - sh:nodeKind sh:IRI ; - sh:order 8 ; - sh:path linkml:inherits ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 59 ; - sh:path sh:order ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 35 ; - sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 20 ; - sh:path linkml:id_prefixes ], - [ sh:class linkml:ReachabilityQuery ; - sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; + sh:order 37 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; sh:order 9 ; - sh:path linkml:reachable_from ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:path linkml:annotations ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:order 13 ; - sh:path linkml:abstract ], + sh:path linkml:deprecated ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 36 ; + sh:order 17 ; sh:path linkml:examples ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 26 ; - sh:path linkml:instantiates ], - [ sh:class linkml:PermissibleValue ; - sh:description "A list of possible values for a slot range" ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:permissible_values ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:definition_uri ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 39 ; + sh:order 20 ; sh:path linkml:imported_from ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:minus ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 28 ; - sh:path linkml:annotations ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 48 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; + sh:order 4 ; + sh:path linkml:local_names ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:order 33 ; - sh:path linkml:todos ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNode ; + sh:path skos:broadMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 35 ; + sh:path dcterms:contributor ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; sh:order 6 ; - sh:path linkml:include ], - [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:pv_formula ], - [ sh:description "A related resource from which the element is derived." ; + sh:path linkml:implements ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 40 ; - sh:path dcterms:source ], - [ sh:datatype xsd:string ; - sh:description "the version identifier of the enumeration code set" ; + sh:order 34 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:code_set_version ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 61 ; - sh:path schema1:keywords ], + sh:order 36 ; + sh:path pav:createdOn ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 7 ; + sh:path linkml:instantiates ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path linkml:deprecated ], - [ sh:description "agent that created the element" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 53 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:order 22 ; + sh:path schema1:inLanguage ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 30 ; + sh:path skos:closeMatch ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 21 ; - sh:path linkml:id_prefixes_are_closed ], + sh:order 38 ; + sh:path oslc:modifiedBy ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 30 ; + sh:order 11 ; sh:path linkml:alt_descriptions ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; - sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:definition_uri ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 51 ; + sh:order 32 ; sh:path skos:narrowMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 52 ; - sh:path skos:broadMatch ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 44 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Definition ; - sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path linkml:mixins ], - [ sh:description "URI of the enum that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:enum_uri ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 43 ; + sh:order 24 ; sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 38 ; + sh:order 19 ; sh:path skos:inScheme ], - [ sh:description "agent that contributed to the element" ; - sh:order 54 ; - sh:path dcterms:contributor ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 23 ; - sh:path linkml:local_names ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path OIO:inSubset ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 57 ; - sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 45 ; + sh:order 26 ; sh:path skos:altLabel ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; + sh:order 40 ; + sh:path sh:order ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; sh:order 29 ; - sh:path skos:definition ], + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 19 ; - sh:path rdfs:label ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 55 ; - sh:path pav:createdOn ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 58 ; - sh:path bibo:status ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 56 ; - sh:path pav:lastUpdatedOn ] ; - sh:targetClass linkml:EnumDefinition . + sh:order 10 ; + sh:path skos:definition ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 23 ; + sh:path rdfs:seeAlso ] ; + sh:targetClass linkml:Element . -linkml:TypeDefinition a sh:NodeShape ; +linkml:EnumExpression a sh:NodeShape ; sh:closed true ; - sh:description "an element that whose instances are atomic scalar values that can be mapped to primitive types" ; + sh:description "An expression that constrains the range of a slot" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A related resource from which the element is derived." ; + sh:property [ sh:description "the identifier of an enumeration code set." ; sh:maxCount 1 ; - sh:order 39 ; - sh:path dcterms:source ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 41 ; - sh:path rdfs:seeAlso ], - [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:implicit_prefix ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 51 ; - sh:path skos:broadMatch ], + sh:order 0 ; + sh:path linkml:code_set ], + [ sh:class linkml:EnumDefinition ; + sh:description "An enum definition that is used as the basis to create a new enum" ; + sh:nodeKind sh:IRI ; + sh:order 7 ; + sh:path linkml:inherits ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml:include ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:order 10 ; + sh:path linkml:concepts ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:minus ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "the version identifier of the enumeration code set" ; sh:maxCount 1 ; - sh:order 23 ; - sh:path dcterms:conformsTo ], - [ sh:description "agent that contributed to the element" ; - sh:order 53 ; - sh:path dcterms:contributor ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:order 2 ; + sh:path linkml:code_set_version ], + [ sh:class linkml:MatchQuery ; + sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml:equals_number ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 14 ; - sh:path linkml:none_of ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 52 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:order 9 ; + sh:path linkml:matches ], + [ sh:class linkml:PermissibleValue ; + sh:description "A list of possible values for a slot range" ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml:permissible_values ], + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; - sh:order 38 ; - sh:path linkml:imported_from ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 3 ; + sh:path linkml:pv_formula ], + [ sh:class linkml:ReachabilityQuery ; + sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; sh:maxCount 1 ; - sh:order 42 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 15 ; - sh:path linkml:exactly_one_of ], + sh:order 8 ; + sh:path linkml:reachable_from ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "the version tag of the enumeration code set" ; sh:maxCount 1 ; - sh:order 28 ; - sh:path skos:definition ], + sh:order 1 ; + sh:path linkml:code_set_tag ] ; + sh:targetClass linkml:EnumExpression . + +linkml:MatchQuery a sh:NodeShape ; + sh:closed true ; + sh: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." ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:source_ontology ], [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 19 ; - sh:path linkml:id_prefixes ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:description "A regular expression that is used to obtain a set of identifiers from a source_ontology to construct a set of permissible values" ; sh:maxCount 1 ; - sh:order 54 ; - sh:path pav:createdOn ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 29 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:order 0 ; + sh:path linkml:identifier_pattern ] ; + sh:targetClass linkml:MatchQuery . + +linkml:PermissibleValue a sh:NodeShape ; + sh:closed true ; + sh:description "a permissible value, accompanied by intended text and an optional mapping to a concept URI" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 13 ; - sh:path linkml:maximum_value ], + sh:order 29 ; + sh:path pav:createdBy ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 56 ; + sh:order 33 ; sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 46 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:TypeDefinition ; - sh:description "A parent type from which type properties are inherited" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:typeof ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 34 ; - sh:path skos:note ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 55 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 40 ; - sh:path schema1:inLanguage ], - [ sh:datatype xsd:string ; - sh:description "the name of the python object that implements this type definition" ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:repr ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 27 ; + sh:order 5 ; sh:path linkml:annotations ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + [ sh:description "the value meaning of a permissible value" ; sh:maxCount 1 ; - sh:order 21 ; - sh:path linkml:definition_uri ], + sh:order 2 ; + sh:path linkml:meaning ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 26 ; + sh:order 4 ; sh:path linkml:extensions ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 22 ; + sh:path skosxl:altLabel ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 44 ; - sh:path skos:altLabel ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 35 ; + sh:path sh:order ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; + sh:order 1 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:minimum_value ], + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 35 ; + sh:order 12 ; sh:path linkml:examples ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 49 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:description "agent that contributed to the element" ; sh:order 30 ; - sh:path dcterms:title ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 48 ; - sh:path skos:closeMatch ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 43 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 24 ; - sh:path linkml:implements ], + sh:path dcterms:contributor ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 31 ; + sh:order 8 ; sh:path linkml:deprecated ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 50 ; - sh:path skos:narrowMatch ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 16 ; - sh:path linkml:any_of ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path linkml:local_names ], [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 37 ; + sh:order 14 ; sh:path skos:inScheme ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + [ sh:datatype xsd:string ; + sh:description "The actual permissible value itself" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:text ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:structured_pattern ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:order 3 ; + sh:path qudt:unit ], + [ sh:description "status of the element" ; sh:maxCount 1 ; + sh:order 34 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; sh:order 9 ; - sh:path linkml:equals_string ], + sh:path linkml:todos ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 10 ; - sh:path linkml:equals_string_in ], - [ sh:description "The uri that defines the possible values for the type definition" ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:type_uri ], - [ sh:class linkml:TypeDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:union_of ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 58 ; - sh:path sh:order ], + sh:order 17 ; + sh:path schema1:inLanguage ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 36 ; + sh:order 13 ; sh:path OIO:inSubset ], - [ sh:datatype xsd:string ; - sh:description "python base type in the LinkML runtime that implements this type definition" ; + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:base ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:all_of ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 45 ; - sh:path skosxl:altLabel ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 59 ; - sh:path dcterms:subject ], + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 18 ; - sh:path rdfs:label ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; sh:order 32 ; - sh:path linkml:todos ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path qudt:unit ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 60 ; - sh:path schema1:keywords ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 33 ; - sh:path skos:editorialNote ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 25 ; - sh:path linkml:instantiates ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 47 ; - sh:path skos:exactMatch ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 57 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:pattern ] ; - sh:targetClass linkml:TypeDefinition . + sh:path pav:lastUpdatedOn ] ; + sh:targetClass linkml:PermissibleValue . -linkml:AnonymousEnumExpression a sh:NodeShape ; +linkml:ReachabilityQuery a sh:NodeShape ; sh:closed true ; - sh:description "An enum_expression that is not named" ; + sh: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." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Defines the specific formula to be used to generate the permissible values." ; - sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:pv_formula ], - [ sh:class linkml:MatchQuery ; - sh:description "Specifies a match query that is used to calculate the list of permissible values" ; + sh:property [ sh:datatype xsd:boolean ; + sh:description "True if the query is reflexive" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:matches ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; - sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:minus ], - [ sh:class linkml:PermissibleValue ; - sh:description "A list of possible values for a slot range" ; - sh:nodeKind sh:IRI ; sh:order 4 ; - sh:path linkml:permissible_values ], - [ sh:datatype xsd:string ; - sh:description "the version identifier of the enumeration code set" ; + sh:path linkml:include_self ], + [ sh:description "An ontology or vocabulary or terminology that is used in a query to obtain a set of permissible values" ; sh:maxCount 1 ; + sh:order 0 ; + sh:path linkml:source_ontology ], + [ sh:description "A list of relationship types (properties) that are used in a reachability query" ; sh:order 2 ; - sh:path linkml:code_set_version ], - [ sh:datatype xsd:string ; - sh:description "the version tag of the enumeration code set" ; + sh:path linkml:relationship_types ], + [ sh:datatype xsd:boolean ; + sh:description "True if the reachability query should only include directly related nodes, if False then include also transitively connected" ; sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:is_direct ], + [ sh:description "A list of nodes that are used in the reachability query" ; sh:order 1 ; - sh:path linkml:code_set_tag ], - [ sh:class linkml:ReachabilityQuery ; - sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + sh:path linkml:source_nodes ], + [ sh:datatype xsd:boolean ; + sh:description "True if the direction of the reachability query is reversed and ancestors are retrieved" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:reachable_from ], - [ sh:class linkml:EnumDefinition ; - sh:description "An enum definition that is used as the basis to create a new enum" ; - sh:nodeKind sh:IRI ; - sh:order 7 ; - sh:path linkml:inherits ], - [ sh:class linkml:AnonymousEnumExpression ; - sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; - sh:nodeKind sh:BlankNode ; sh:order 5 ; - sh:path linkml:include ], - [ sh:description "the identifier of an enumeration code set." ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:code_set ], - [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; - sh:order 10 ; - sh:path linkml:concepts ] ; - sh:targetClass linkml:AnonymousEnumExpression . + sh:path linkml:traverse_up ] ; + sh:targetClass linkml:ReachabilityQuery . -linkml:PathExpression a sh:NodeShape ; +linkml:EnumDefinition a sh:NodeShape ; sh:closed true ; - sh:description "An expression that describes an abstract path from an object to another through a sequence of slot lookups" ; + sh:description "an element whose instances must be drawn from a specified set of permissible values" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 33 ; - sh:path skos:broadMatch ], + sh:property [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 58 ; + sh:path bibo:status ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 15 ; + sh:order 34 ; sh:path skos:editorialNote ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path dcterms:title ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:order 44 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 36 ; + sh:path linkml:examples ], + [ sh:class linkml:Definition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path OIO:inSubset ], - [ sh:description "agent that modified the element" ; + sh:order 16 ; + sh:path linkml:apply_to ], + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; - sh:order 38 ; - sh:path oslc:modifiedBy ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 29 ; - sh:path skos:exactMatch ], - [ sh:class linkml:PathExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:all_of ], - [ sh:class linkml:PathExpression ; - sh:description "in a sequential list, this indicates the next member" ; + sh:order 4 ; + sh:path linkml:pv_formula ], + [ sh:class linkml:PermissibleValue ; + sh:description "A list of possible values for a slot range" ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml:permissible_values ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml:followed_by ], + sh:order 43 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 26 ; - sh:path skos:altLabel ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 61 ; + sh:path schema1:keywords ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 60 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:range_expression ], + sh:order 21 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description "the version identifier of the enumeration code set" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:imported_from ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 31 ; - sh:path skos:relatedMatch ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 41 ; - sh:path dcterms:subject ], + sh:order 3 ; + sh:path linkml:code_set_version ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 26 ; + sh:path linkml:instantiates ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 52 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 59 ; + sh:path sh:order ], [ sh:datatype xsd:string ; sh:description "Outstanding issues that needs resolution" ; - sh:order 14 ; + sh:order 33 ; sh:path linkml:todos ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 50 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:order 14 ; + sh:path linkml:mixin ], + [ sh:description "agent that contributed to the element" ; + sh:order 54 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:string ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; sh:maxCount 1 ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:PathExpression ; - sh:description "holds if at least one of the expressions hold" ; + sh:order 18 ; + sh:path linkml:string_serialization ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:any_of ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; + sh:order 46 ; + sh:path skosxl:altLabel ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; sh:order 42 ; - sh:path schema1:keywords ], - [ sh:class linkml:PathExpression ; - sh:description "holds if none of the expressions hold" ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:none_of ], + sh:order 28 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 39 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 20 ; + sh:path linkml:id_prefixes ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:order 22 ; + sh:path linkml:definition_uri ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 57 ; + sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 10 ; + sh:order 29 ; sh:path skos:definition ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 19 ; - sh:path skos:inScheme ], + sh:order 31 ; + sh:path dcterms:title ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path linkml:deprecated ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 25 ; + sh:path linkml:implements ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 11 ; + sh:order 30 ; sh:path linkml:alt_descriptions ], + [ sh:class linkml:Definition ; + sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; + sh:nodeKind sh:IRI ; + sh:order 15 ; + sh:path linkml:mixins ], [ sh:datatype xsd:boolean ; - sh:description "true if the slot is to be inversed" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:reversed ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 23 ; - sh:path rdfs:seeAlso ], - [ sh:description "A related resource from which the element is derived." ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; - sh:order 21 ; - sh:path dcterms:source ], - [ sh:description "status of the element" ; + sh:order 13 ; + sh:path linkml:abstract ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 51 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 39 ; - sh:path bibo:status ], + sh:order 41 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:include ], [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 30 ; + sh:order 49 ; sh:path skos:closeMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 28 ; - sh:path skos:mappingRelation ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:examples ], - [ sh:description "agent that contributed to the element" ; - sh:order 35 ; - sh:path dcterms:contributor ], - [ sh:class linkml:SlotDefinition ; - sh:description "the slot to traverse" ; + [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path linkml:traverse ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 12 ; + sh:path linkml:is_a ], + [ sh:description "URI of the enum that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; sh:maxCount 1 ; - sh:order 40 ; - sh:path sh:order ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 32 ; - sh:path skos:narrowMatch ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:order 0 ; + sh:path linkml:enum_uri ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:order 11 ; + sh:path linkml:concepts ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:minus ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 27 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:createdOn ], - [ sh:description "agent that created the element" ; + sh:minCount 1 ; + sh:order 19 ; + sh:path rdfs:label ], + [ sh:class linkml:EnumDefinition ; + sh:description "An enum definition that is used as the basis to create a new enum" ; + sh:nodeKind sh:IRI ; + sh:order 8 ; + sh:path linkml:inherits ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path pav:createdBy ], + sh:order 56 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 48 ; + sh:path skos:exactMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 47 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 16 ; - sh:path skos:note ], + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 45 ; + sh:path skos:altLabel ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:deprecated ], + sh:order 24 ; + sh:path dcterms:conformsTo ], + [ sh:description "the identifier of an enumeration code set." ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:code_set ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 17 ; + sh:path linkml:values_from ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "the version tag of the enumeration code set" ; sh:maxCount 1 ; - sh:order 22 ; - sh:path schema1:inLanguage ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:extensions ], - [ sh:class linkml:PathExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:exactly_one_of ] ; - sh:targetClass linkml:PathExpression . - -linkml:PatternExpression a sh:NodeShape ; - sh:closed true ; - sh:description "a regular expression pattern used to evaluate conformance of a string" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:dateTime ; + sh:order 2 ; + sh:path linkml:code_set_tag ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 40 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 35 ; + sh:path skos:note ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 37 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 38 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 31 ; + sh:order 55 ; sh:path pav:createdOn ], - [ sh:description "A related resource from which the element is derived." ; + [ sh:class linkml:MatchQuery ; + sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; - sh:order 16 ; - sh:path dcterms:source ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:order 10 ; + sh:path linkml:matches ], + [ sh:class linkml:ReachabilityQuery ; + sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 9 ; + sh:path linkml:reachable_from ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + sh:order 53 ; + sh:path pav:createdBy ], + [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; - sh:path rdfs:seeAlso ], + sh:order 23 ; + sh:path linkml:local_names ] ; + sh:targetClass linkml:EnumDefinition . + +linkml:TypeDefinition a sh:NodeShape ; + sh:closed true ; + sh:description "an element that whose instances are atomic scalar values that can be mapped to primitive types" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 60 ; + sh:path schema1:keywords ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 26 ; + sh:path linkml:extensions ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 22 ; + sh:order 45 ; sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 10 ; + sh:path linkml:equals_string_in ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 25 ; - sh:path skos:closeMatch ], + sh:order 52 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:order 23 ; + sh:path dcterms:conformsTo ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 17 ; + sh:order 40 ; sh:path schema1:inLanguage ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 36 ; - sh:path dcterms:subject ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:order 39 ; + sh:path dcterms:source ], + [ sh:class linkml:TypeDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path OIO:inSubset ], + sh:order 4 ; + sh:path linkml:union_of ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:pattern ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 50 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 8 ; + sh:order 31 ; sh:path linkml:deprecated ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 56 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." ; + sh:order 22 ; + sh:path linkml:local_names ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:syntax ], + sh:order 21 ; + sh:path linkml:definition_uri ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:boolean ; - sh:description "if true then the pattern is first string interpolated" ; - sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:interpolated ], - [ sh:description "status of the element" ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 23 ; - sh:path skos:mappingRelation ], + sh:order 8 ; + sh:path linkml:implicit_prefix ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 47 ; + sh:path skos:exactMatch ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 24 ; + sh:path linkml:implements ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 37 ; - sh:path schema1:keywords ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "agent that created the element" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "agent that contributed to the element" ; sh:order 30 ; - sh:path dcterms:contributor ], + sh:path dcterms:title ], [ sh:datatype xsd:string ; sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; + sh:order 32 ; sh:path linkml:todos ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:boolean ; - sh:description "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:partial_match ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; - sh:path skos:narrowMatch ], + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:minimum_value ], [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; + sh:order 49 ; sh:path skos:relatedMatch ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ] ; - sh:targetClass linkml:PatternExpression . - -qudt:Unit a sh:NodeShape ; - sh:closed true ; - sh: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)." ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "associates a QUDT unit with its UCUM code (case-sensitive)." ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:structured_pattern ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 14 ; + sh:path linkml:none_of ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 36 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 4 ; - sh:path qudt:ucumCode ], + sh:order 11 ; + sh:path linkml:equals_number ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 59 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "Expression for deriving this unit from other units" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:derivation ], + sh:order 28 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; - sh:description "the spelled out name of the unit, for example, meter" ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path rdfs:label ], - [ sh:description "Concept in a vocabulary or ontology that denotes the kind of quantity being measured, e.g. length" ; + sh:order 9 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 44 ; + sh:path skos:altLabel ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 16 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:string ; + sh:description "the name of the python object that implements this type definition" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path qudt:hasQuantityKind ], - [ sh:description "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT" ; sh:order 3 ; - sh:path skos:exactMatch ], + sh:path linkml:repr ], [ sh:datatype xsd:string ; - sh:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 1 ; - sh:path qudt:abbreviation ], - [ sh:datatype xsd:string ; - sh:description "name of the unit encoded as a symbol" ; + sh:minCount 1 ; + sh:order 18 ; + sh:path rdfs:label ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 48 ; + sh:path skos:closeMatch ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 0 ; - sh:path qudt:symbol ], - [ sh:datatype xsd:string ; + sh:order 43 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 17 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 7 ; - sh:path qudt:iec61360Code ] ; - sh:targetClass qudt:Unit . - -linkml:ClassDefinition a sh:NodeShape ; - sh:closed true ; - sh:description "an element whose instances are complex objects that may have slot-value assignments" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 60 ; - sh:path skos:broadMatch ], - [ sh:class linkml:ClassDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:union_of ], - [ sh:class linkml:ClassDefinition ; - sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; - sh:nodeKind sh:IRI ; - sh:order 13 ; - sh:path linkml:disjoint_with ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:order 37 ; + sh:path skos:inScheme ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 54 ; - sh:path skosxl:altLabel ], + sh:order 15 ; + sh:path linkml:exactly_one_of ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 25 ; + sh:path linkml:instantiates ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 47 ; + sh:order 38 ; sh:path linkml:imported_from ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 29 ; + sh:path linkml:alt_descriptions ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 27 ; + sh:path linkml:annotations ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 35 ; + sh:path linkml:examples ], + [ sh:description "The uri that defines the possible values for the type definition" ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:type_uri ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 58 ; + sh:path sh:order ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 34 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 46 ; + sh:path skos:mappingRelation ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 57 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "python base type in the LinkML runtime that implements this type definition" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:base ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; - sh:order 39 ; - sh:path dcterms:title ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:classification_rules ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:none_of ], + sh:order 13 ; + sh:path linkml:maximum_value ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 63 ; + sh:order 54 ; sh:path pav:createdOn ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 34 ; - sh:path linkml:instantiates ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 51 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:boolean ; sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; sh:maxCount 1 ; - sh:order 29 ; + sh:order 20 ; sh:path linkml:id_prefixes_are_closed ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 25 ; - sh:path linkml:values_from ], - [ sh:datatype xsd:boolean ; - sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml:slot_names_unique ], - [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 31 ; - sh:path linkml:local_names ], - [ sh:class linkml:SlotDefinition ; - sh:description "the refinement of a slot in the context of the containing class definition." ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path linkml:slot_usage ], + sh:order 7 ; + sh:path qudt:unit ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 43 ; - sh:path skos:note ], - [ sh:class linkml:ClassRule ; - sh:description "the collection of rules that apply to all members of this class" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path sh:rule ], + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 33 ; + sh:path skos:editorialNote ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 42 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 19 ; + sh:path linkml:id_prefixes ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 41 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:TypeDefinition ; + sh:description "A parent type from which type properties are inherited" ; sh:maxCount 1 ; - sh:order 37 ; - sh:path skos:definition ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 36 ; - sh:path linkml:annotations ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 68 ; - sh:path dcterms:subject ], + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:typeof ], [ sh:description "agent that contributed to the element" ; - sh:order 62 ; + sh:order 53 ; sh:path dcterms:contributor ], - [ sh:class linkml:ClassDefinition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; - sh:order 24 ; - sh:path linkml:apply_to ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 59 ; - sh:path skos:narrowMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 55 ; - sh:path skos:mappingRelation ], - [ sh:description "status of the element" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 66 ; - sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 58 ; - sh:path skos:relatedMatch ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 35 ; - sh:path linkml:extensions ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 61 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:boolean ; - sh:description "true if this class represents a relationship rather than an entity" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:represents_relationship ], - [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:order 55 ; + sh:path pav:lastUpdatedOn ] ; + sh:targetClass linkml:TypeDefinition . + +linkml:AnonymousEnumExpression a sh:NodeShape ; + sh:closed true ; + sh:description "An enum_expression that is not named" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "the version identifier of the enumeration code set" ; sh:maxCount 1 ; - sh:order 32 ; - sh:path dcterms:conformsTo ], - [ sh:description "URI of the class that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + sh:order 2 ; + sh:path linkml:code_set_version ], + [ sh:description "Defines the specific formula to be used to generate the permissible values." ; + sh:in ( "CODE" "CURIE" "URI" "FHIR_CODING" "LABEL" ) ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml:class_uri ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; - sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:mixin ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 45 ; - sh:path OIO:inSubset ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:path linkml:pv_formula ], + [ sh:description "A list of identifiers that are used to construct a set of permissible values" ; + sh:order 10 ; + sh:path linkml:concepts ], + [ sh:class linkml:ReachabilityQuery ; + sh:description "Specifies a query for obtaining a list of permissible values based on graph reachability" ; sh:maxCount 1 ; - sh:order 40 ; - sh:path linkml:deprecated ], - [ sh:class linkml:SlotDefinition ; - sh:description "Inline definition of slots" ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:reachable_from ], + [ sh:class linkml:PermissibleValue ; + sh:description "A list of possible values for a slot range" ; sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path linkml:attributes ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 50 ; - sh:path rdfs:seeAlso ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 56 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:tree_root ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 48 ; - sh:path dcterms:source ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 46 ; - sh:path skos:inScheme ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 65 ; - sh:path oslc:modifiedBy ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 51 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:datatype xsd:boolean ; - sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:children_are_mutually_disjoint ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:order 4 ; + sh:path linkml:permissible_values ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be included, after subtracting the minus set" ; + sh:nodeKind sh:BlankNode ; + sh:order 5 ; + sh:path linkml:include ], + [ sh:description "the identifier of an enumeration code set." ; sh:maxCount 1 ; - sh:order 67 ; - sh:path sh:order ], - [ sh:class linkml:SlotDefinition ; - sh:description "expresses constraints on a group of slots for a class expression" ; - sh:nodeKind sh:IRI ; - sh:order 19 ; - sh:path linkml:slot_conditions ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 42 ; - sh:path skos:editorialNote ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 69 ; - sh:path schema1:keywords ], + sh:order 0 ; + sh:path linkml:code_set ], [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:description "the version tag of the enumeration code set" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 27 ; - sh:path rdfs:label ], - [ sh:class linkml:UniqueKey ; - sh:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + sh:order 1 ; + sh:path linkml:code_set_tag ], + [ sh:class linkml:AnonymousEnumExpression ; + sh:description "An enum expression that yields a list of permissible values that are to be subtracted from the enum" ; sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:unique_keys ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 53 ; - sh:path skos:altLabel ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 33 ; - sh:path linkml:implements ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; - sh:maxCount 1 ; - sh:order 21 ; - sh:path linkml:abstract ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 52 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 57 ; - sh:path skos:closeMatch ], - [ sh:class linkml:SlotDefinition ; - sh:description "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" ; - sh:nodeKind sh:IRI ; sh:order 6 ; - sh:path linkml:defining_slots ], - [ sh:class linkml:ClassDefinition ; - sh:description "A primary parent class from which inheritable metaslots are propagated" ; - sh:maxCount 1 ; + sh:path linkml:minus ], + [ sh:class linkml:EnumDefinition ; + sh:description "An enum definition that is used as the basis to create a new enum" ; sh:nodeKind sh:IRI ; - sh:order 20 ; - sh:path linkml:is_a ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 7 ; + sh:path linkml:inherits ], + [ sh:class linkml:MatchQuery ; + sh:description "Specifies a match query that is used to calculate the list of permissible values" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path linkml:definition_uri ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 15 ; - sh:path linkml:any_of ], - [ sh:class linkml:ClassDefinition ; - sh:description "A collection of secondary parent mixin classes from which inheritable metaslots are propagated" ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path linkml:mixins ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 28 ; - sh:path linkml:id_prefixes ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 38 ; - sh:path linkml:alt_descriptions ], - [ sh:description "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:subclass_of ], - [ sh:class linkml:AnonymousClassExpression ; + sh:order 9 ; + sh:path linkml:matches ] ; + sh:targetClass linkml:AnonymousEnumExpression . + +linkml:PathExpression a sh:NodeShape ; + sh:closed true ; + sh:description "An expression that describes an abstract path from an object to another through a sequence of slot lookups" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 26 ; + sh:path skos:altLabel ], + [ sh:class linkml:PathExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 18 ; + sh:order 3 ; sh:path linkml:all_of ], - [ sh:class linkml:AnonymousClassExpression ; + [ sh:class linkml:PathExpression ; sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 16 ; + sh:order 4 ; sh:path linkml:exactly_one_of ], [ sh:datatype xsd:string ; sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 49 ; + sh:order 22 ; sh:path schema1:inLanguage ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + [ sh:class linkml:SlotDefinition ; + sh:description "the slot to traverse" ; sh:maxCount 1 ; - sh:order 64 ; - sh:path pav:lastUpdatedOn ], + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml:traverse ], + [ sh:description "agent that contributed to the element" ; + sh:order 35 ; + sh:path dcterms:contributor ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 44 ; + sh:order 17 ; sh:path linkml:examples ], [ sh:datatype xsd:string ; - sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 26 ; - sh:path linkml:string_serialization ], + sh:order 40 ; + sh:path sh:order ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 41 ; - sh:path linkml:todos ], - [ sh:class linkml:SlotDefinition ; - sh:description "collection of slot names that are applicable to a class" ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:slots ] ; - sh:targetClass linkml:ClassDefinition . - -linkml:Definition a sh:NodeShape ; - sh:closed false ; - sh:description "abstract base class for core metaclasses" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 35 ; - sh:path skos:mappingRelation ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path dcterms:title ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; sh:order 33 ; - sh:path skos:altLabel ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 47 ; - sh:path sh:order ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:order 37 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 31 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 48 ; - sh:path dcterms:subject ], + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 30 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 12 ; - sh:path dcterms:conformsTo ], + sh:order 20 ; + sh:path linkml:imported_from ], [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:description "true if the slot is to be inversed" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:id_prefixes_are_closed ], + sh:order 5 ; + sh:path linkml:reversed ], [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 7 ; - sh:path rdfs:label ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; + sh:order 39 ; + sh:path bibo:status ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 26 ; - sh:path skos:inScheme ], - [ sh:description "agent that created the element" ; + sh:order 10 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 29 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 16 ; + sh:path skos:note ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 41 ; - sh:path pav:createdBy ], + sh:order 36 ; + sh:path pav:createdOn ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 15 ; + sh:order 8 ; sh:path linkml:extensions ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Definition ; - sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; - sh:nodeKind sh:IRI ; - sh:order 3 ; - sh:path linkml:mixins ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path skos:definition ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 22 ; - sh:path skos:editorialNote ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 30 ; - sh:path rdfs:seeAlso ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:order 13 ; + sh:path linkml:deprecated ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 18 ; + sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:definition_uri ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:order 21 ; + sh:path dcterms:source ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path dcterms:title ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 5 ; - sh:path linkml:values_from ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 49 ; - sh:path schema1:keywords ], - [ sh:class linkml:Definition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; - sh:order 4 ; - sh:path linkml:apply_to ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 36 ; - sh:path skos:exactMatch ], - [ sh:class linkml:LocalName ; + sh:order 34 ; + sh:path pav:createdBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 32 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:PathExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 1 ; + sh:path linkml:none_of ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 27 ; + sh:path skosxl:altLabel ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; sh:order 11 ; - sh:path linkml:local_names ], + sh:path linkml:alt_descriptions ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 16 ; + sh:order 9 ; sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + [ sh:class linkml:PathExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:any_of ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:string_serialization ], - [ sh:description "A related resource from which the element is derived." ; + sh:order 19 ; + sh:path skos:inScheme ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:range_expression ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; + sh:order 24 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; sh:order 28 ; - sh:path dcterms:source ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:path skos:mappingRelation ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path linkml:abstract ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 14 ; - sh:path linkml:instantiates ], + sh:order 38 ; + sh:path oslc:modifiedBy ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 23 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 21 ; - sh:path linkml:todos ], - [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:class linkml:PathExpression ; + sh:description "in a sequential list, this indicates the next member" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; + sh:nodeKind sh:BlankNode ; sh:order 0 ; - sh:path linkml:is_a ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 37 ; - sh:path skos:closeMatch ], + sh:path linkml:followed_by ] ; + sh:targetClass linkml:PathExpression . + +linkml:PatternExpression a sh:NodeShape ; + sh:closed true ; + sh:description "a regular expression pattern used to evaluate conformance of a string" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:boolean ; + sh:description "if true then the pattern is first string interpolated" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:interpolated ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path pav:createdOn ], [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 40 ; + sh:order 28 ; sh:path skos:broadMatch ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 29 ; - sh:path schema1:inLanguage ], - [ sh:description "status of the element" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 46 ; - sh:path bibo:status ], + sh:order 8 ; + sh:path linkml:deprecated ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 23 ; - sh:path skos:note ], - [ sh:description "agent that modified the element" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:order 45 ; - sh:path oslc:modifiedBy ], + sh:order 7 ; + sh:path dcterms:title ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], [ sh:description "agent that contributed to the element" ; - sh:order 42 ; + sh:order 30 ; sh:path dcterms:contributor ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 27 ; - sh:path linkml:imported_from ], + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 34 ; + sh:order 22 ; sh:path skosxl:altLabel ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 13 ; - sh:path linkml:implements ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 36 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 8 ; - sh:path linkml:id_prefixes ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:mixin ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 18 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 39 ; - sh:path skos:narrowMatch ], + sh:order 34 ; + sh:path bibo:status ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 25 ; + sh:order 13 ; sh:path OIO:inSubset ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 24 ; - sh:path linkml:examples ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 44 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 43 ; - sh:path pav:createdOn ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 38 ; - sh:path skos:relatedMatch ], + sh:order 16 ; + sh:path dcterms:source ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated ] ; - sh:targetClass linkml:Definition . - -linkml:LocalName a sh:NodeShape ; - sh:closed true ; - sh:description "an attributed label" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "the ncname of the source of the name" ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string. May be interpolated." ; sh:maxCount 1 ; - sh:minCount 1 ; sh:order 0 ; - sh:path linkml:local_name_source ], + sh:path linkml:syntax ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], [ sh:datatype xsd:string ; - sh:description "a name assigned to an element in a given ontology" ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 37 ; + sh:path schema1:keywords ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path skos:altLabel ] ; - sh:targetClass linkml:LocalName . - -linkml:AnonymousTypeExpression a sh:NodeShape ; - sh:closed true ; - sh:description "A type expression that is not a top-level named type definition. Used for nesting." ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:boolean ; + sh:description "if not true then the pattern must match the whole string, as if enclosed in ^...$" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:minimum_value ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:order 2 ; + sh:path linkml:partial_match ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:maximum_value ], + sh:order 5 ; + sh:path skos:definition ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; sh:order 4 ; - sh:path linkml:equals_string ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:path linkml:annotations ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path qudt:unit ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:all_of ], + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path schema1:inLanguage ], [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:equals_number ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:order 35 ; + sh:path sh:order ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ] ; + sh:targetClass linkml:PatternExpression . + +qudt:Unit a sh:NodeShape ; + sh:closed true ; + sh: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)." ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "An abbreviation for a unit is a short ASCII string that is used in place of the full name for the unit in contexts where non-ASCII characters would be problematic, or where using the abbreviation will enhance readability. When a power of a base unit needs to be expressed, such as squares this can be done using abbreviations rather than symbols (source: qudt)" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml:structured_pattern ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:exactly_one_of ], + sh:path qudt:abbreviation ], [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:description "the spelled out name of the unit, for example, meter" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:implicit_prefix ], + sh:order 2 ; + sh:path rdfs:label ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:description "Expression for deriving this unit from other units" ; + sh:maxCount 1 ; sh:order 5 ; - sh:path linkml:equals_string_in ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:none_of ], - [ sh:class linkml:AnonymousTypeExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path linkml:any_of ], + sh:path linkml:derivation ], + [ sh:description "Concept in a vocabulary or ontology that denotes the kind of quantity being measured, e.g. length" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path qudt:hasQuantityKind ], [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:description "name of the unit encoded as a symbol" ; sh:maxCount 1 ; sh:order 0 ; - sh:path linkml:pattern ] ; - sh:targetClass linkml:AnonymousTypeExpression . + sh:path qudt:symbol ], + [ sh:datatype xsd:string ; + sh:description "associates a QUDT unit with its UCUM code (case-sensitive)." ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path qudt:ucumCode ], + [ sh:description "Used to link a unit to equivalent concepts in ontologies such as UO, SNOMED, OEM, OBOE, NCIT" ; + sh:order 3 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path qudt:iec61360Code ] ; + sh:targetClass qudt:Unit . -linkml:Any a sh:NodeShape ; - sh:closed true ; - sh:ignoredProperties ( rdf:type ), - ( rdf:type ) ; - sh:targetClass linkml:Any . - -linkml:AnonymousSlotExpression a sh:NodeShape ; +linkml:ClassDefinition a sh:NodeShape ; sh:closed true ; + sh:description "an element whose instances are complex objects that may have slot-value assignments" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "status of the element" ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 58 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:boolean ; + sh:description "if true then induced/mangled slot names are not created for class_usage and attributes" ; sh:maxCount 1 ; - sh:order 57 ; - sh:path bibo:status ], + sh:order 11 ; + sh:path linkml:slot_names_unique ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 45 ; + sh:order 54 ; sh:path skosxl:altLabel ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 16 ; - sh:path linkml:equals_number ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 46 ; + sh:order 55 ; sh:path skos:mappingRelation ], [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 52 ; + sh:order 61 ; sh:path pav:createdBy ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 33 ; - sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 47 ; - sh:path skos:exactMatch ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:class linkml:SlotDefinition ; + sh:description "Inline definition of slots" ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path linkml:attributes ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:maxCount 1 ; + sh:order 22 ; + sh:path linkml:mixin ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 23 ; - sh:path linkml:exactly_one_of ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; + sh:order 18 ; + sh:path linkml:all_of ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; - sh:order 37 ; - sh:path skos:inScheme ], + sh:order 32 ; + sh:path dcterms:conformsTo ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 54 ; + sh:order 63 ; sh:path pav:createdOn ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:class linkml:ClassDefinition ; + sh:description "A collection of secondary parent mixin classes from which inheritable metaslots are propagated" ; + sh:nodeKind sh:IRI ; + sh:order 23 ; + sh:path linkml:mixins ], + [ sh:class linkml:SlotDefinition ; + sh:description "the refinement of a slot in the context of the containing class definition." ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path linkml:slot_usage ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; - sh:order 58 ; - sh:path sh:order ], + sh:order 21 ; + sh:path linkml:abstract ], [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:pattern ], + sh:order 26 ; + sh:path linkml:string_serialization ], [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:maximum_cardinality ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 48 ; - sh:path skos:closeMatch ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; + sh:order 67 ; + sh:path sh:order ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 7 ; - sh:path linkml:minimum_value ], + sh:order 16 ; + sh:path linkml:exactly_one_of ], + [ sh:class linkml:ClassDefinition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path linkml:apply_to ], [ sh:datatype xsd:boolean ; - sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; + sh:description "Indicates that this is the Container class which forms the root of the serialized document structure in tree serializations" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:inlined ], + sh:order 7 ; + sh:path linkml:tree_root ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 15 ; - sh:path linkml:equals_string_in ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 42 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the slot must be present in instances of the class definition" ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 69 ; + sh:path schema1:keywords ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:required ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:order 65 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:ClassDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path linkml:union_of ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 14 ; - sh:path linkml:equals_string ], - [ sh:datatype xsd:integer ; - sh:description "the minimum number of entries for a multivalued slot" ; + sh:order 46 ; + sh:path skos:inScheme ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 38 ; + sh:path linkml:alt_descriptions ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 33 ; + sh:path linkml:implements ], + [ sh:class linkml:SlotDefinition ; + sh:description "collection of slot names that are applicable to a class" ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:slots ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:minimum_cardinality ], + sh:order 64 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 31 ; - sh:path linkml:deprecated ], + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 42 ; + sh:path skos:editorialNote ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 39 ; + sh:order 48 ; sh:path dcterms:source ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 68 ; + sh:path dcterms:subject ], [ sh:datatype xsd:string ; - sh:description "the value of the slot must equal the value of the evaluated expression" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:equals_expression ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; + sh:order 39 ; + sh:path dcterms:title ], + [ sh:class linkml:ClassRule ; + sh:description "the collection of rules that apply to all members of this class" ; sh:nodeKind sh:BlankNode ; - sh:order 10 ; - sh:path linkml:structured_pattern ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 50 ; - sh:path skos:narrowMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 51 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:boolean ; - sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; + sh:order 9 ; + sh:path sh:rule ], + [ sh:class linkml:UniqueKey ; + sh:description "A collection of named unique keys for this class. Unique keys may be singular or compound." ; + sh:nodeKind sh:BlankNode ; + sh:order 8 ; + sh:path linkml:unique_keys ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:inlined_as_list ], - [ sh:class linkml:AnonymousSlotExpression ; + sh:minCount 1 ; + sh:order 27 ; + sh:path rdfs:label ], + [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if none of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 22 ; + sh:order 17 ; sh:path linkml:none_of ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 41 ; - sh:path rdfs:seeAlso ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 28 ; + sh:path linkml:id_prefixes ], + [ sh:datatype xsd:boolean ; + sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; sh:maxCount 1 ; + sh:order 14 ; + sh:path linkml:children_are_mutually_disjoint ], + [ sh:class linkml:ClassDefinition ; + sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path linkml:disjoint_with ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; - sh:order 8 ; - sh:path linkml:maximum_value ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 44 ; - sh:path skos:altLabel ], + sh:order 35 ; + sh:path linkml:extensions ], [ sh:datatype xsd:string ; sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 34 ; + sh:order 43 ; sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 32 ; - sh:path linkml:todos ], [ sh:description "agent that contributed to the element" ; - sh:order 53 ; + sh:order 62 ; sh:path dcterms:contributor ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 1 ; - sh:path linkml:range_expression ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 56 ; - sh:path oslc:modifiedBy ], [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:implicit_prefix ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 55 ; - sh:path pav:lastUpdatedOn ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; + sh:order 49 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; sh:order 36 ; - sh:path OIO:inSubset ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 28 ; - sh:path skos:definition ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:path linkml:annotations ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; sh:order 30 ; - sh:path dcterms:title ], + sh:path linkml:definition_uri ], + [ sh:description "DEPRECATED -- rdfs:subClassOf to be emitted in OWL generation" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:subclass_of ], + [ sh:description "URI of the class that provides a semantic interpretation of the element in a linked data context. The URI may come from any namespace and may be shared between schemas" ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:class_uri ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 60 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:string ; sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 38 ; + sh:order 47 ; sh:path linkml:imported_from ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 26 ; - sh:path linkml:extensions ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 59 ; - sh:path dcterms:subject ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:enum_range ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 29 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Element ; - sh:description """defines the type of the object of the slot. Given the following slot definition - S1: - domain: C1 - range: C2 -the declaration - X: - S1: Y - -implicitly asserts Y is an instance of C2 -""" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:range ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path qudt:unit ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 21 ; - sh:path linkml:all_members ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 20 ; - sh:path linkml:has_member ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:recommended ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 57 ; + sh:path skos:closeMatch ], [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 43 ; + sh:order 52 ; sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 27 ; - sh:path linkml:annotations ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if at least one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 24 ; - sh:path linkml:any_of ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 49 ; - sh:path skos:relatedMatch ], - [ sh: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)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + [ sh:class linkml:ClassDefinition ; + sh:description "A primary parent class from which inheritable metaslots are propagated" ; sh:maxCount 1 ; - sh:order 13 ; - sh:path linkml:value_presence ], + sh:nodeKind sh:IRI ; + sh:order 20 ; + sh:path linkml:is_a ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 35 ; + sh:order 44 ; sh:path linkml:examples ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 50 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 60 ; - sh:path schema1:keywords ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if all of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path linkml:all_of ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:order 40 ; - sh:path schema1:inLanguage ] ; - sh:targetClass linkml:AnonymousSlotExpression . - -skosxl:Label a sh:NodeShape ; - sh:closed true ; - sh:description "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 28 ; - sh:path skos:broadMatch ], + sh:path linkml:deprecated ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 13 ; + sh:order 45 ; sh:path OIO:inSubset ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 56 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 15 ; + sh:path linkml:any_of ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:deprecated ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:order 37 ; + sh:path skos:definition ], + [ sh:class linkml:SlotDefinition ; + sh:description "expresses constraints on a group of slots for a class expression" ; + sh:nodeKind sh:IRI ; + sh:order 19 ; + sh:path linkml:slot_conditions ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "The collection of classification rules that apply to all members of this class. Classification rules allow for automatically assigning the instantiated type of an instance." ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ], + sh:order 10 ; + sh:path linkml:classification_rules ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 53 ; + sh:path skos:altLabel ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 25 ; + sh:path linkml:values_from ], + [ sh:class linkml:SlotDefinition ; + sh:description "The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom" ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path linkml:defining_slots ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 19 ; + sh:order 51 ; sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "true if this class represents a relationship rather than an entity" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:represents_relationship ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 27 ; + sh:order 59 ; sh:path skos:narrowMatch ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 21 ; - sh:path skos:altLabel ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 10 ; - sh:path skos:editorialNote ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 31 ; + sh:path linkml:local_names ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 34 ; + sh:path linkml:instantiates ], [ sh:description "status of the element" ; sh:maxCount 1 ; - sh:order 34 ; + sh:order 66 ; sh:path bibo:status ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 26 ; - sh:path skos:relatedMatch ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 11 ; - sh:path skos:note ], - [ sh:description "agent that contributed to the element" ; - sh:order 30 ; - sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 24 ; - sh:path skos:exactMatch ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 14 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:string ; - sh:description "The literal lexical form of a structured alias; i.e the actual alias value." ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 41 ; + sh:path linkml:todos ] ; + sh:targetClass linkml:ClassDefinition . + +linkml:Definition a sh:NodeShape ; + sh:closed false ; + sh:description "abstract base class for core metaclasses" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; sh:maxCount 1 ; - sh:minCount 1 ; + sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path skosxl:literalForm ], + sh:path linkml:is_a ], + [ sh:class linkml:Definition ; + sh:description "A collection of secondary parent classes or slots from which inheritable metaslots are propagated from." ; + sh:nodeKind sh:IRI ; + sh:order 3 ; + sh:path linkml:mixins ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 45 ; + sh:path oslc:modifiedBy ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:definition_uri ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 9 ; - sh:path linkml:todos ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:description "notes and comments about an element intended primarily for external consumption" ; sh:order 23 ; - sh:path skos:mappingRelation ], + sh:path skos:note ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:id_prefixes_are_closed ], [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 33 ; + sh:path skos:altLabel ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 22 ; + sh:path skos:editorialNote ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 40 ; + sh:path skos:broadMatch ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 24 ; + sh:path linkml:examples ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 8 ; + sh:path linkml:id_prefixes ], + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 5 ; - sh:path skos:definition ], + sh:order 41 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 21 ; + sh:path linkml:todos ], [ sh:datatype xsd:dateTime ; sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 31 ; + sh:order 43 ; sh:path pav:createdOn ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path dcterms:title ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + [ sh:class linkml:LocalName ; sh:nodeKind sh:BlankNode ; - sh:order 12 ; - sh:path linkml:examples ], + sh:order 11 ; + sh:path linkml:local_names ], [ sh:datatype xsd:string ; sh:description "Keywords or tags used to describe the element" ; - sh:order 36 ; + sh:order 49 ; sh:path schema1:keywords ], - [ sh:description "agent that created the element" ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path pav:createdBy ], - [ sh:description "The relationship between an element and its alias." ; - sh:in ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; + sh:order 47 ; + sh:path sh:order ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 48 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; sh:maxCount 1 ; sh:order 1 ; - sh:path rdf:predicate ], + sh:path linkml:abstract ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path dcterms:title ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 4 ; + sh:order 16 ; sh:path linkml:annotations ], - [ sh:description "agent that modified the element" ; + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 35 ; + sh:path skos:mappingRelation ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 36 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 33 ; - sh:path oslc:modifiedBy ], + sh:order 26 ; + sh:path skos:inScheme ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 34 ; + sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path schema1:inLanguage ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 27 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 39 ; + sh:path skos:narrowMatch ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 13 ; + sh:path linkml:implements ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 14 ; + sh:path linkml:instantiates ], + [ sh:description "agent that contributed to the element" ; + sh:order 42 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 44 ; + sh:path pav:lastUpdatedOn ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 46 ; + sh:path bibo:status ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; sh:order 25 ; - sh:path skos:closeMatch ], + sh:path OIO:inSubset ], + [ sh:class linkml:Definition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 4 ; + sh:path linkml:apply_to ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path skos:definition ], [ sh:class linkml:AltDescription ; sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 6 ; + sh:order 18 ; sh:path linkml:alt_descriptions ], - [ sh:description "The category or categories of an alias. This can be drawn from any relevant vocabulary" ; - sh:order 2 ; - sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 15 ; + sh:path linkml:extensions ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 5 ; + sh:path linkml:values_from ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path dcterms:conformsTo ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 37 ; + sh:path skos:closeMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 38 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 7 ; + sh:path rdfs:label ], [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 16 ; + sh:order 28 ; sh:path dcterms:source ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 22 ; - sh:path skosxl:altLabel ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; sh:maxCount 1 ; - sh:order 15 ; - sh:path linkml:imported_from ], + sh:order 6 ; + sh:path linkml:string_serialization ], [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 18 ; + sh:order 30 ; sh:path rdfs:seeAlso ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path sh:order ] ; - sh:targetClass skosxl:Label . + sh:order 32 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:mixin ] ; + sh:targetClass linkml:Definition . -linkml:AltDescription a sh:NodeShape ; +linkml:LocalName a sh:NodeShape ; sh:closed true ; - sh:description "an attributed description" ; + sh:description "an attributed label" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "text of an attributed description" ; + sh:description "a name assigned to an element in a given ontology" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; - sh:path linkml:alt_description_text ], + sh:path skos:altLabel ], [ sh:datatype xsd:string ; - sh:description "the source of an attributed description" ; + sh:description "the ncname of the source of the name" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; - sh:path linkml:alt_description_source ] ; - sh:targetClass linkml:AltDescription . + sh:path linkml:local_name_source ] ; + sh:targetClass linkml:LocalName . -linkml:Example a sh:NodeShape ; +linkml:AnonymousTypeExpression a sh:NodeShape ; sh:closed true ; - sh:description "usage example and description" ; + sh:description "A type expression that is not a top-level named type definition. Used for nesting." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Any ; - sh:description "direct object representation of the example" ; + sh:property [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:value_object ], + sh:order 6 ; + sh:path linkml:equals_number ], [ sh:datatype xsd:string ; - sh:description "description of what the value is doing" ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 5 ; + sh:path linkml:equals_string_in ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml:value_description ], + sh:path linkml:structured_pattern ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:minimum_value ], [ sh:datatype xsd:string ; - sh:description "example value" ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; sh:maxCount 1 ; sh:order 0 ; - sh:path skos:example ] ; - sh:targetClass linkml:Example . - -linkml:Annotation a sh:NodeShape ; - sh:closed true ; - sh:description "a tag/value pair with the semantics of OWL Annotation" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Any ; - sh:description "the actual annotation" ; + sh:path linkml:pattern ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:none_of ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:order 4 ; + sh:path linkml:equals_string ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:extension_value ], - [ sh:description "a tag associated with an extension" ; + sh:order 8 ; + sh:path linkml:maximum_value ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path linkml:extension_tag ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:order 3 ; + sh:path linkml:implicit_prefix ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 0 ; - sh:path linkml:annotations ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:order 10 ; + sh:path linkml:exactly_one_of ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:extensions ] ; - sh:targetClass linkml:Annotation . + sh:order 2 ; + sh:path qudt:unit ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if all of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:all_of ], + [ sh:class linkml:AnonymousTypeExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 11 ; + sh:path linkml:any_of ] ; + sh:targetClass linkml:AnonymousTypeExpression . -linkml:AnonymousClassExpression a sh:NodeShape ; +linkml:Any a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ), + ( rdf:type ) ; + sh:targetClass linkml:Any . + +linkml:AnonymousSlotExpression a sh:NodeShape ; sh:closed true ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 17 ; - sh:path skos:inScheme ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + sh:property [ sh:description "Controlled terms used to categorize an element." ; + sh:order 60 ; + sh:path dcterms:subject ], + [ sh:class linkml:Element ; + sh:description """defines the type of the object of the slot. Given the following slot definition + S1: + domain: C1 + range: C2 +the declaration + X: + S1: Y + +implicitly asserts Y is an instance of C2 +""" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:range ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:enum_range ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path schema1:inLanguage ], + sh:nodeKind sh:BlankNode ; + sh:order 10 ; + sh:path linkml:structured_pattern ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 49 ; + sh:path skos:closeMatch ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:imported_from ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 61 ; + sh:path schema1:keywords ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; sh:maxCount 1 ; - sh:order 38 ; - sh:path sh:order ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 15 ; - sh:path linkml:examples ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; + sh:order 22 ; + sh:path linkml:all_members ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; sh:order 23 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:description "agent that created the element" ; + sh:path linkml:none_of ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:order 32 ; - sh:path pav:createdBy ], - [ sh:class linkml:SlotDefinition ; - sh:description "expresses constraints on a group of slots for a class expression" ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path linkml:slot_conditions ], + sh:order 20 ; + sh:path linkml:maximum_cardinality ], [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 30 ; + sh:order 51 ; sh:path skos:narrowMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 28 ; - sh:path skos:closeMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 26 ; - sh:path skos:mappingRelation ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 14 ; - sh:path skos:note ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 31 ; - sh:path skos:broadMatch ], + [ sh:datatype xsd:boolean ; + sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:inlined ], [ sh:description "agent that contributed to the element" ; - sh:order 33 ; + sh:order 54 ; sh:path dcterms:contributor ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 39 ; - sh:path dcterms:subject ], - [ sh:description "status of the element" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path bibo:status ], - [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml:deprecated ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 40 ; - sh:path schema1:keywords ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if only one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 6 ; - sh:path linkml:extensions ], - [ sh:class linkml:AnonymousClassExpression ; + sh:order 24 ; + sh:path linkml:exactly_one_of ], + [ sh:class linkml:AnonymousSlotExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 1 ; + sh:order 25 ; sh:path linkml:any_of ], [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 13 ; - sh:path skos:editorialNote ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path linkml:equals_string ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:alt_descriptions ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 27 ; - sh:path skos:exactMatch ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 19 ; - sh:path dcterms:source ], + sh:order 11 ; + sh:path qudt:unit ], [ sh:class linkml:Annotation ; sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; sh:nodeKind sh:BlankNode ; - sh:order 7 ; + sh:order 28 ; sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + [ sh:description "agent that created the element" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path skos:definition ], - [ sh:class linkml:Definition ; - sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:order 53 ; + sh:path pav:createdBy ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path linkml:is_a ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 24 ; - sh:path skos:altLabel ], - [ sh:class linkml:AnonymousClassExpression ; + sh:order 44 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 50 ; + sh:path skos:relatedMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 48 ; + sh:path skos:exactMatch ], + [ sh:class linkml:AnonymousSlotExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 4 ; + sh:order 26 ; sh:path linkml:all_of ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if only one of the expressions hold" ; + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 38 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 15 ; + sh:path linkml:equals_string_in ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:exactly_one_of ], + sh:order 30 ; + sh:path linkml:alt_descriptions ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:minimum_value ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 35 ; + sh:path skos:note ], + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:order 18 ; + sh:path linkml:exact_cardinality ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path dcterms:title ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 56 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:implicit_prefix ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 27 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path linkml:deprecated ], [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 36 ; + sh:order 57 ; sh:path oslc:modifiedBy ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 59 ; + sh:path sh:order ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 12 ; - sh:path linkml:todos ], + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:pattern ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 41 ; + sh:path schema1:inLanguage ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 45 ; + sh:path skos:altLabel ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 43 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 55 ; + sh:path pav:createdOn ], [ sh:class linkml:SubsetDefinition ; sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 16 ; + sh:order 37 ; sh:path OIO:inSubset ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 29 ; - sh:path skos:relatedMatch ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 25 ; - sh:path skosxl:altLabel ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 21 ; - sh:path rdfs:seeAlso ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 3 ; - sh:path linkml:none_of ] ; - sh:targetClass linkml:AnonymousClassExpression . - -linkml:SlotDefinition a sh:NodeShape ; - sh:closed true ; - sh:description "an element that describes how instances are related to other instances" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:description "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; + [ sh:datatype xsd:boolean ; + sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; sh:maxCount 1 ; - sh:order 24 ; - sh:path linkml:is_class_field ], + sh:order 6 ; + sh:path linkml:inlined_as_list ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 58 ; + sh:path bibo:status ], [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 112 ; - sh:path schema1:keywords ], + sh:description "Outstanding issues that needs resolution" ; + sh:order 33 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 47 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:boolean ; sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; sh:maxCount 1 ; - sh:order 41 ; + sh:order 4 ; sh:path linkml:recommended ], - [ sh:class linkml:SlotDefinition ; - sh:description "A collection of secondary parent mixin slots from which inheritable metaslots are propagated" ; - sh:nodeKind sh:IRI ; - sh:order 66 ; - sh:path linkml:mixins ], - [ sh:description "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:slot_uri ], - [ sh:description "agent that contributed to the element" ; - sh:order 105 ; - sh:path dcterms:contributor ], [ sh:datatype xsd:string ; sh:description "the value of the slot must equal the value of the evaluated expression" ; sh:maxCount 1 ; - sh:order 54 ; + sh:order 17 ; sh:path linkml:equals_expression ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path skos:definition ], [ sh:datatype xsd:boolean ; - sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; + sh:description "true means that the slot must be present in instances of the class definition" ; sh:maxCount 1 ; sh:order 3 ; - sh:path linkml:multivalued ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 81 ; - sh:path linkml:alt_descriptions ], - [ sh:datatype xsd:anyURI ; - sh:description "id of the schema that defined the element" ; - sh:maxCount 1 ; - sh:order 89 ; - sh:path skos:inScheme ], + sh:path linkml:required ], [ sh:class linkml:AnonymousSlotExpression ; - sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 58 ; - sh:path linkml:all_members ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 100 ; - sh:path skos:closeMatch ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; - sh:maxCount 1 ; - sh:order 73 ; - sh:path linkml:definition_uri ], - [ sh:datatype xsd:boolean ; - sh:description "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; - sh:maxCount 1 ; - sh:order 12 ; - sh:path linkml:designates_type ], - [ sh:description "Controlled terms used to categorize an element." ; - sh:order 111 ; - sh:path dcterms:subject ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 77 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:string ; - sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; + sh:order 21 ; + sh:path linkml:has_member ], + [ sh: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)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; sh:maxCount 1 ; sh:order 13 ; - sh:path skos:prefLabel ], - [ sh:class linkml:SlotDefinition ; - sh:description "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:path linkml:value_presence ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; sh:order 16 ; - sh:path rdfs:subPropertyOf ], - [ sh:class linkml:SlotDefinition ; - sh:description "transitive_form_of including the reflexive case" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 26 ; - sh:path linkml:reflexive_transitive_form_of ], - [ sh:datatype xsd:boolean ; - sh:description "True means that the key slot(s) uniquely identify the elements within a single container" ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path linkml:key ], - [ sh:datatype xsd:integer ; - sh:description "the relative order in which the element occurs, lower values are given precedence" ; - sh:maxCount 1 ; - sh:order 110 ; - sh:path sh:order ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 95 ; - sh:path linkml:deprecated_element_has_possible_replacement ], - [ sh:datatype xsd:string ; - sh:description "a name that is used in the singular form" ; - sh:maxCount 1 ; - sh:order 0 ; - sh:path linkml:singular_name ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the slot must be present in instances of the class definition" ; - sh:maxCount 1 ; - sh:order 40 ; - sh:path linkml:required ], - [ sh:description "agent that created the element" ; - sh:maxCount 1 ; - sh:order 104 ; - sh:path pav:createdBy ], - [ sh:datatype xsd:boolean ; - sh:description "If True, then there must be no duplicates in the elements of a multivalued slot" ; - sh:maxCount 1 ; - sh:order 7 ; - sh:path linkml:list_elements_unique ], - [ sh:class linkml:AnonymousClassExpression ; - sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:path linkml:equals_number ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 38 ; + sh:order 1 ; sh:path linkml:range_expression ], [ sh:datatype xsd:string ; - sh:description "a textual descriptor that indicates the role played by the slot range" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 34 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 27 ; - sh:path linkml:role ], - [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; - sh:order 68 ; - sh:path linkml:values_from ], - [ sh:datatype xsd:boolean ; - sh:description "If True, then the relationship between the slot domain and range is many to one or many to many" ; + sh:order 39 ; + sh:path linkml:imported_from ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 52 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; sh:maxCount 1 ; - sh:order 9 ; - sh:path linkml:shared ], + sh:order 19 ; + sh:path linkml:minimum_cardinality ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 46 ; + sh:path skosxl:altLabel ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 40 ; + sh:path dcterms:source ], [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 93 ; + sh:order 42 ; sh:path rdfs:seeAlso ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 36 ; + sh:path linkml:examples ], [ sh:class linkml:Any ; sh:description "For ordinal ranges, the value must be equal to or lower than this" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 45 ; - sh:path linkml:maximum_value ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 76 ; - sh:path linkml:implements ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; - sh:maxCount 1 ; - sh:order 72 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 101 ; - sh:path skos:relatedMatch ], + sh:order 8 ; + sh:path linkml:maximum_value ] ; + sh:targetClass linkml:AnonymousSlotExpression . + +linkml:AnonymousClassExpression a sh:NodeShape ; + sh:closed true ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 21 ; + sh:path rdfs:seeAlso ], [ sh:datatype xsd:string ; sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 85 ; + sh:order 13 ; sh:path skos:editorialNote ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 99 ; - sh:path skos:exactMatch ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if none of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 59 ; - sh:path linkml:none_of ], [ sh:datatype xsd:string ; - sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 12 ; + sh:path linkml:todos ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 49 ; - sh:path linkml:implicit_prefix ], - [ sh:class linkml:SlotDefinition ; - sh:description "allows for grouping of related slots into a grouping slot that serves the role of a group" ; + sh:order 22 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 24 ; + sh:path skos:altLabel ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:extensions ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path pav:createdBy ], + [ sh:description "status of the element" ; sh:maxCount 1 ; + sh:order 37 ; + sh:path bibo:status ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; sh:nodeKind sh:IRI ; - sh:order 31 ; - sh:path sh:group ], + sh:order 16 ; + sh:path OIO:inSubset ], + [ sh:class linkml:Definition ; + sh:description "A primary parent class or slot from which inheritable metaslots are propagated from. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path linkml:is_a ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 36 ; + sh:path oslc:modifiedBy ], [ sh:class skosxl:Label ; sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 97 ; + sh:order 25 ; sh:path skosxl:altLabel ], - [ sh:class linkml:Element ; - sh:description """defines the type of the object of the slot. Given the following slot definition - S1: - domain: C1 - range: C2 -the declaration - X: - S1: Y - -implicitly asserts Y is an instance of C2 -""" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 37 ; - sh:path linkml:range ], - [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 92 ; - sh:path schema1:inLanguage ], - [ sh:datatype xsd:boolean ; - sh:description "true if this slot is a grouping slot" ; + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; sh:maxCount 1 ; - sh:order 32 ; - sh:path linkml:is_grouping_slot ], + sh:order 23 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:none_of ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 28 ; + sh:path skos:closeMatch ], [ sh:class linkml:SlotDefinition ; - sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; - sh:nodeKind sh:IRI ; - sh:order 34 ; - sh:path linkml:disjoint_with ], - [ sh:datatype xsd:string ; - sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. -We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. -Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; - sh:maxCount 1 ; - sh:order 69 ; - sh:path linkml:string_serialization ], - [ sh:datatype xsd:boolean ; - sh:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; - sh:maxCount 1 ; - sh:order 11 ; - sh:path linkml:identifier ], - [ sh:datatype xsd:boolean ; - sh:description "true means that the *value* of a slot is inherited by subclasses" ; - sh:maxCount 1 ; - sh:order 4 ; - sh:path linkml:inherited ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:description "expresses constraints on a group of slots for a class expression" ; sh:nodeKind sh:IRI ; - sh:order 88 ; - sh:path OIO:inSubset ], + sh:order 5 ; + sh:path linkml:slot_conditions ], [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 98 ; + sh:order 26 ; sh:path skos:mappingRelation ], - [ sh:class linkml:PatternExpression ; - sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 47 ; - sh:path linkml:structured_pattern ], - [ sh:datatype xsd:boolean ; - sh:description "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 22 ; - sh:path linkml:transitive ], + sh:order 35 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:string ; - sh:description "An established standard to which the element conforms." ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 14 ; + sh:path skos:note ], + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:order 75 ; - sh:path dcterms:conformsTo ], + sh:order 19 ; + sh:path dcterms:source ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 29 ; + sh:path skos:relatedMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 33 ; + sh:path dcterms:contributor ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 7 ; + sh:path linkml:annotations ], [ sh:datatype xsd:string ; - sh:description "The name of the slot referenced in the slot_usage" ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 29 ; - sh:path linkml:usage_slot_name ], + sh:order 11 ; + sh:path linkml:deprecated ], [ sh:class linkml:Example ; sh:description "example usages of an element" ; sh:nodeKind sh:BlankNode ; - sh:order 87 ; + sh:order 15 ; sh:path linkml:examples ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 107 ; - sh:path pav:lastUpdatedOn ], - [ sh:datatype xsd:boolean ; - sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; - sh:order 43 ; - sh:path linkml:inlined_as_list ], - [ sh:class linkml:LocalName ; + sh:order 38 ; + sh:path sh:order ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 74 ; - sh:path linkml:local_names ], - [ sh:class linkml:SlotDefinition ; - sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; - sh:nodeKind sh:IRI ; - sh:order 67 ; - sh:path linkml:apply_to ], - [ sh:datatype xsd:boolean ; - sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; + sh:order 4 ; + sh:path linkml:all_of ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 31 ; + sh:path skos:broadMatch ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 35 ; - sh:path linkml:children_are_mutually_disjoint ], + sh:order 8 ; + sh:path skos:definition ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 30 ; + sh:path skos:narrowMatch ], [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 86 ; - sh:path skos:note ], + sh:description "Keywords or tags used to describe the element" ; + sh:order 40 ; + sh:path schema1:keywords ], [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; - sh:order 52 ; - sh:path linkml:equals_string_in ], - [ sh:class qudt:Unit ; - sh:description "an encoding of a unit" ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 48 ; - sh:path qudt:unit ], + sh:order 10 ; + sh:path dcterms:title ], [ sh:datatype xsd:string ; - sh:description "Description of why and when this element will no longer be used" ; + sh:description "the primary language used in the sources" ; sh:maxCount 1 ; - sh:order 83 ; - sh:path linkml:deprecated ], - [ sh:class linkml:SlotDefinition ; - sh:description "indicates that any instance of d s r implies that there is also an instance of r s' d" ; + sh:order 20 ; + sh:path schema1:inLanguage ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 27 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 23 ; - sh:path owl:inverseOf ], - [ sh:class linkml:AnonymousSlotExpression ; - sh:description "holds if only one of the expressions hold" ; - sh:nodeKind sh:BlankNode ; - sh:order 60 ; - sh:path linkml:exactly_one_of ], - [ sh:class linkml:AnonymousSlotExpression ; + sh:order 34 ; + sh:path pav:createdOn ], + [ sh:class linkml:AnonymousClassExpression ; sh:description "holds if at least one of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 61 ; + sh:order 1 ; sh:path linkml:any_of ], [ sh:datatype xsd:string ; - sh:description """function that provides a default value for the slot. Possible values for this slot are defined in linkml.utils.ifabsent_functions.default_library: - * [Tt]rue -- boolean True - * [Ff]alse -- boolean False - * bnode -- blank node identifier - * class_curie -- CURIE for the containing class - * class_uri -- URI for the containing class - * default_ns -- schema default namespace - * default_range -- schema default range - * int(value) -- integer value - * slot_uri -- URI for the slot - * slot_curie -- CURIE for the slot - * string(value) -- string value""" ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; sh:maxCount 1 ; - sh:order 6 ; - sh:path linkml:ifabsent ], - [ sh:datatype xsd:boolean ; - sh:description "If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed" ; + sh:order 18 ; + sh:path linkml:imported_from ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 39 ; + sh:path dcterms:subject ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:exactly_one_of ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:alt_descriptions ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; - sh:order 8 ; - sh:path linkml:list_elements_ordered ], - [ sh:description "agent that modified the element" ; + sh:order 17 ; + sh:path skos:inScheme ] ; + sh:targetClass linkml:AnonymousClassExpression . + +linkml:SlotDefinition a sh:NodeShape ; + sh:closed true ; + sh:description "an element that describes how instances are related to other instances" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:boolean ; + sh:description "True means that an inlined slot is represented as a list of range instances. False means that an inlined slot is represented as a dictionary, whose key is the slot key or identifier and whose value is the range instance." ; sh:maxCount 1 ; - sh:order 108 ; - sh:path oslc:modifiedBy ], + sh:order 44 ; + sh:path linkml:inlined_as_list ], + [ sh:class linkml:SlotDefinition ; + sh:description "allows for grouping of related slots into a grouping slot that serves the role of a group" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 32 ; + sh:path sh:group ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 99 ; + sh:path skosxl:altLabel ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "holds if all of the expressions hold" ; sh:nodeKind sh:BlankNode ; - sh:order 62 ; + sh:order 64 ; sh:path linkml:all_of ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; + [ sh:datatype xsd:boolean ; + sh:description "True means that the key slot(s) is used to determine the instantiation (types) relation between objects and a ClassDefinition" ; sh:maxCount 1 ; - sh:order 80 ; - sh:path skos:definition ], - [ sh:class linkml:Any ; - sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:order 13 ; + sh:path linkml:designates_type ], + [ sh:class qudt:Unit ; + sh:description "an encoding of a unit" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 44 ; - sh:path linkml:minimum_value ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 96 ; - sh:path skos:altLabel ], - [ sh: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)" ; - sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; - sh:maxCount 1 ; - sh:order 50 ; - sh:path linkml:value_presence ], - [ sh:datatype xsd:string ; - sh:description "If present, slot is read only. Text explains why" ; - sh:maxCount 1 ; - sh:order 5 ; - sh:path linkml:readonly ], - [ sh:class linkml:PathExpression ; - sh:description "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; + sh:order 49 ; + sh:path qudt:unit ], + [ sh:class linkml:EnumExpression ; + sh:description "An inlined enumeration" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 33 ; - sh:path linkml:path_rule ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 71 ; - sh:path linkml:id_prefixes ], - [ sh:datatype xsd:integer ; - sh:description "the maximum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:order 56 ; - sh:path linkml:maximum_cardinality ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; - sh:maxCount 1 ; - sh:order 106 ; - sh:path pav:createdOn ], - [ sh:datatype xsd:integer ; - sh:description "the minimum number of entries for a multivalued slot" ; - sh:maxCount 1 ; - sh:order 55 ; - sh:path linkml:minimum_cardinality ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 91 ; - sh:path dcterms:source ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 103 ; - sh:path skos:broadMatch ], - [ sh:datatype xsd:boolean ; - sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; - sh:maxCount 1 ; - sh:order 42 ; - sh:path linkml:inlined ], + sh:order 40 ; + sh:path linkml:enum_range ], [ sh:class linkml:SlotDefinition ; - sh:description "A primary parent slot from which inheritable metaslots are propagated" ; + sh:description "Ontology property which this slot is a subproperty of. Note: setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 63 ; - sh:path linkml:is_a ], + sh:order 17 ; + sh:path rdfs:subPropertyOf ], [ sh:datatype xsd:boolean ; - sh:description "If s is irreflexive, then there exists no i such i.s=i" ; + sh:description "true means that the slot must be present in instances of the class definition" ; sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:irreflexive ], + sh:order 41 ; + sh:path linkml:required ], [ sh:datatype xsd:boolean ; - sh:description "If s is symmetric, and i.s=v, then v.s=i" ; + sh:description "If True, then there must be no duplicates in the elements of a multivalued slot" ; sh:maxCount 1 ; - sh:order 17 ; - sh:path linkml:symmetric ], + sh:order 8 ; + sh:path linkml:list_elements_unique ], [ sh:datatype xsd:boolean ; sh:description "Indicates the class or slot is intended to be inherited from without being an is_a parent. mixins should not be inherited from using is_a, except by other mixins." ; sh:maxCount 1 ; - sh:order 65 ; + sh:order 67 ; sh:path linkml:mixin ], - [ sh:class linkml:ClassDefinition ; - sh:description "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; - sh:nodeKind sh:IRI ; - sh:order 15 ; - sh:path linkml:domain_of ], - [ sh:datatype xsd:integer ; - sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 53 ; - sh:path linkml:equals_number ], - [ sh:datatype xsd:boolean ; - sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; - sh:maxCount 1 ; - sh:order 64 ; - sh:path linkml:abstract ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; - sh:nodeKind sh:BlankNode ; - sh:order 79 ; - sh:path linkml:annotations ], - [ sh:datatype xsd:string ; - sh:description "the slot must have range string and the value of the slot must equal the specified value" ; - sh:maxCount 1 ; - sh:order 51 ; - sh:path linkml:equals_string ], - [ sh:class linkml:Definition ; - sh:description "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 103 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; + sh:order 109 ; + sh:path pav:lastUpdatedOn ], + [ sh:class linkml:SlotDefinition ; + sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; sh:nodeKind sh:IRI ; - sh:order 14 ; - sh:path linkml:owner ], - [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 94 ; - sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 78 ; - sh:path linkml:extensions ], + sh:order 37 ; + sh:path linkml:union_of ], [ sh:datatype xsd:boolean ; - sh:description "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; + sh:description "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" ; sh:maxCount 1 ; - sh:order 19 ; - sh:path linkml:locally_reflexive ], + sh:order 22 ; + sh:path linkml:asymmetric ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 104 ; + sh:path skos:narrowMatch ], + [ sh:datatype xsd:string ; + sh:description "a textual descriptor that indicates the role played by the slot range" ; + sh:maxCount 1 ; + sh:order 28 ; + sh:path linkml:role ], [ sh:class linkml:ClassDefinition ; sh:description """defines the type of the subject of the slot. Given the following slot definition S1: @@ -4785,279 +4513,917 @@ implicitly asserts that X is an instance of C1 sh:nodeKind sh:IRI ; sh:order 1 ; sh:path linkml:domain ], - [ sh:datatype xsd:boolean ; - sh:description "If s is reflexive, then i.s=i for all instances i" ; + [ sh:datatype xsd:string ; + sh:description "the slot must have range string and the value of the slot must equal one of the specified values" ; + sh:order 53 ; + sh:path linkml:equals_string_in ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 87 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "a name that is used in the singular form" ; sh:maxCount 1 ; - sh:order 18 ; - sh:path linkml:reflexive ], - [ sh:description "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; - sh:in ( rdf:subject rdf:object rdf:predicate "NODE" "OTHER_ROLE" ) ; + sh:order 0 ; + sh:path linkml:singular_name ], + [ sh:class linkml:SlotDefinition ; + sh:description "A collection of secondary parent mixin slots from which inheritable metaslots are propagated" ; + sh:nodeKind sh:IRI ; + sh:order 68 ; + sh:path linkml:mixins ], + [ sh:datatype xsd:string ; + sh:description "the value of the slot must equal the value of the evaluated expression" ; sh:maxCount 1 ; - sh:order 30 ; - sh:path linkml:relational_role ], + sh:order 55 ; + sh:path linkml:equals_expression ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 97 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:datatype xsd:string ; + sh:description "Causes the slot value to be interpreted as a uriorcurie after prefixing with this string" ; + sh:maxCount 1 ; + sh:order 50 ; + sh:path linkml:implicit_prefix ], + [ sh:class linkml:SlotDefinition ; + sh:description "If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transitive (3) d holds whenever s holds and there are no intermediates, and s is not reflexive" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 26 ; + sh:path linkml:transitive_form_of ], + [ sh:class linkml:Definition ; + sh:description "the \"owner\" of the slot. It is the class if it appears in the slots list, otherwise the declaring slot" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 15 ; + sh:path linkml:owner ], + [ sh:class linkml:Element ; + sh:description """defines the type of the object of the slot. Given the following slot definition + S1: + domain: C1 + range: C2 +the declaration + X: + S1: Y + +implicitly asserts Y is an instance of C2 +""" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 38 ; + sh:path linkml:range ], [ sh:class linkml:AnonymousSlotExpression ; sh:description "the value of the slot is multivalued with at least one member satisfying the condition" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNode ; - sh:order 57 ; + sh:order 59 ; sh:path linkml:has_member ], [ sh:datatype xsd:string ; - sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 114 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 100 ; + sh:path skos:mappingRelation ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; sh:order 82 ; - sh:path dcterms:title ], - [ sh:class linkml:SlotDefinition ; - sh:description "If s transitive_form_of d, then (1) s holds whenever d holds (2) s is transitive (3) d holds whenever s holds and there are no intermediates, and s is not reflexive" ; + sh:path skos:definition ], + [ sh:datatype xsd:integer ; + sh:description "the slot must have range of a number and the value of the slot must equal the specified value" ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 25 ; - sh:path linkml:transitive_form_of ], - [ sh:description "status of the element" ; + sh:order 54 ; + sh:path linkml:equals_number ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 88 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; - sh:order 109 ; - sh:path bibo:status ], + sh:order 85 ; + sh:path linkml:deprecated ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 110 ; + sh:path oslc:modifiedBy ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or higher than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 45 ; + sh:path linkml:minimum_value ], [ sh:datatype xsd:string ; sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 70 ; + sh:order 72 ; sh:path rdfs:label ], [ sh:datatype xsd:boolean ; - sh:description "If s is antisymmetric, and i.s=v where i is different from v, v.s cannot have value i" ; + sh:description "If s is locally_reflexive, then i.s=i for all instances i where s is a class slot for the type of i" ; sh:maxCount 1 ; - sh:order 21 ; - sh:path linkml:asymmetric ], + sh:order 20 ; + sh:path linkml:locally_reflexive ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 76 ; + sh:path linkml:local_names ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 112 ; + sh:path sh:order ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 108 ; + sh:path pav:createdOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 105 ; + sh:path skos:broadMatch ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:description """function that provides a default value for the slot. Possible values for this slot are defined in linkml.utils.ifabsent_functions.default_library: + * [Tt]rue -- boolean True + * [Ff]alse -- boolean False + * bnode -- blank node identifier + * class_curie -- CURIE for the containing class + * class_uri -- URI for the containing class + * default_ns -- schema default namespace + * default_range -- schema default range + * int(value) -- integer value + * slot_uri -- URI for the slot + * slot_curie -- CURIE for the slot + * string(value) -- string value""" ; sh:maxCount 1 ; - sh:order 90 ; - sh:path linkml:imported_from ], - [ sh:class linkml:EnumExpression ; - sh:description "An inlined enumeration" ; + sh:order 7 ; + sh:path linkml:ifabsent ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 102 ; + sh:path skos:closeMatch ], + [ sh:description "agent that contributed to the element" ; + sh:order 107 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:boolean ; + sh:description "True means that the key slot(s) uniquely identify the elements within a single container" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNode ; - sh:order 39 ; - sh:path linkml:enum_range ], + sh:order 11 ; + sh:path linkml:key ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 95 ; + sh:path rdfs:seeAlso ], + [ sh:datatype xsd:boolean ; + sh:description "If True, then the relationship between the slot domain and range is many to one or many to many" ; + sh:maxCount 1 ; + sh:order 10 ; + sh:path linkml:shared ], + [ sh:datatype xsd:boolean ; + sh:description "If s is transitive, and i.s=z, and s.s=j, then i.s=j" ; + sh:maxCount 1 ; + sh:order 23 ; + sh:path linkml:transitive ], + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 113 ; + sh:path dcterms:subject ], + [ sh:datatype xsd:string ; + sh:description "If present, slot is read only. Text explains why" ; + sh:maxCount 1 ; + sh:order 6 ; + sh:path linkml:readonly ], + [ sh:datatype xsd:string ; + sh:description "The name of the slot referenced in the slot_usage" ; + sh:maxCount 1 ; + sh:order 30 ; + sh:path linkml:usage_slot_name ], [ sh:class linkml:SlotDefinition ; - sh:description "indicates that the domain element consists exactly of the members of the element in the range." ; + sh:description "A primary parent slot from which inheritable metaslots are propagated" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 36 ; - sh:path linkml:union_of ], + sh:order 65 ; + sh:path linkml:is_a ], + [ sh:class linkml:PathExpression ; + sh:description "a rule for inferring a slot assignment based on evaluating a path through a sequence of slot assignments" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 34 ; + sh:path linkml:path_rule ], + [ sh:datatype xsd:integer ; + sh:description "the minimum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:order 57 ; + sh:path linkml:minimum_cardinality ], [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 84 ; - sh:path linkml:todos ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 102 ; - sh:path skos:narrowMatch ], + sh:description "the slot must have range string and the value of the slot must equal the specified value" ; + sh:maxCount 1 ; + sh:order 52 ; + sh:path linkml:equals_string ], + [ sh:datatype xsd:boolean ; + sh:description "True means that the key slot(s) uniquely identifies the elements. There can be at most one identifier or key per container" ; + sh:maxCount 1 ; + sh:order 12 ; + sh:path linkml:identifier ], + [ sh:datatype xsd:boolean ; + sh:description "If s is reflexive, then i.s=i for all instances i" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:reflexive ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 80 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:integer ; + sh:description "the exact number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:order 56 ; + sh:path linkml:exact_cardinality ], + [ sh:datatype xsd:boolean ; + sh:description "If s is symmetric, and i.s=v, then v.s=i" ; + sh:maxCount 1 ; + sh:order 18 ; + sh:path linkml:symmetric ], + [ sh:description "the role a slot on a relationship class plays, for example, the subject, object or predicate roles" ; + sh:in ( rdf:subject rdf:object rdf:predicate "NODE" "OTHER_ROLE" ) ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path linkml:relational_role ], + [ sh:datatype xsd:integer ; + sh:description "the maximum number of entries for a multivalued slot" ; + sh:maxCount 1 ; + sh:order 58 ; + sh:path linkml:maximum_cardinality ], + [ sh:class linkml:AnonymousClassExpression ; + sh:description "A range that is described as a boolean expression combining existing ranges" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 39 ; + sh:path linkml:range_expression ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 98 ; + sh:path skos:altLabel ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 81 ; + sh:path linkml:annotations ], + [ sh:class linkml:SlotDefinition ; + sh:description "Two classes are disjoint if they have no instances in common, two slots are disjoint if they can never hold between the same two instances" ; + sh:nodeKind sh:IRI ; + sh:order 35 ; + sh:path linkml:disjoint_with ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 79 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:boolean ; + sh:description "If s is irreflexive, then there exists no i such i.s=i" ; + sh:maxCount 1 ; + sh:order 21 ; + sh:path linkml:irreflexive ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 84 ; + sh:path dcterms:title ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 83 ; + sh:path linkml:alt_descriptions ], + [ sh:class linkml:SlotDefinition ; + sh:description "indicates that any instance of d s r implies that there is also an instance of r s' d" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 24 ; + sh:path owl:inverseOf ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if none of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 61 ; + sh:path linkml:none_of ], + [ sh:description "URI of the class that provides a semantic interpretation of the slot in a linked data context. The URI may come from any namespace and may be shared between schemas." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:slot_uri ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 91 ; + sh:path skos:inScheme ], + [ sh:class linkml:SlotDefinition ; + sh:description "transitive_form_of including the reflexive case" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 27 ; + sh:path linkml:reflexive_transitive_form_of ], + [ sh:datatype xsd:boolean ; + sh:description "If true then all direct is_a children are mutually disjoint and share no instances in common" ; + sh:maxCount 1 ; + sh:order 36 ; + sh:path linkml:children_are_mutually_disjoint ], + [ sh:class linkml:ClassDefinition ; + sh:description "the class(es) that reference the slot in a \"slots\" or \"slot_usage\" context" ; + sh:nodeKind sh:IRI ; + sh:order 16 ; + sh:path linkml:domain_of ], + [ sh:datatype xsd:string ; + sh:description "An established standard to which the element conforms." ; + sh:maxCount 1 ; + sh:order 77 ; + sh:path dcterms:conformsTo ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 86 ; + sh:path linkml:todos ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:order 74 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 92 ; + sh:path linkml:imported_from ], + [ sh:datatype xsd:string ; + sh:description "the name used for a slot in the context of its owning class. If present, this is used instead of the actual slot name." ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path skos:prefLabel ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if at least one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 63 ; + sh:path linkml:any_of ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 96 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:datatype xsd:boolean ; + sh:description "True means that keyed or identified slot appears in an outer structure by value. False means that only the key or identifier for the slot appears within the domain, referencing a structure that appears elsewhere." ; + sh:maxCount 1 ; + sh:order 43 ; + sh:path linkml:inlined ], + [ sh:class linkml:SlotDefinition ; + sh:description "Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class." ; + sh:nodeKind sh:IRI ; + sh:order 69 ; + sh:path linkml:apply_to ], + [ sh:class linkml:Any ; + sh:description "For ordinal ranges, the value must be equal to or lower than this" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 46 ; + sh:path linkml:maximum_value ], + [ sh:datatype xsd:string ; + sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:maxCount 1 ; + sh:order 47 ; + sh:path linkml:pattern ], + [ sh:datatype xsd:boolean ; + sh:description "indicates that for any instance, i, the domain of this slot will include an assertion of i s range" ; + sh:maxCount 1 ; + sh:order 25 ; + sh:path linkml:is_class_field ], + [ sh:datatype xsd:boolean ; + sh:description "Indicates the class or slot cannot be directly instantiated and is intended for grouping purposes." ; + sh:maxCount 1 ; + sh:order 66 ; + sh:path linkml:abstract ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 111 ; + sh:path bibo:status ], + [ sh:datatype xsd:boolean ; + sh:description "If True, then the order of elements of a multivalued slot is guaranteed to be preserved. If False, the order may still be preserved but this is not guaranteed" ; + sh:maxCount 1 ; + sh:order 9 ; + sh:path linkml:list_elements_ordered ], + [ sh:class linkml:PatternExpression ; + sh:description "the string value of the slot must conform to the regular expression in the pattern expression" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 48 ; + sh:path linkml:structured_pattern ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 101 ; + sh:path skos:exactMatch ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:maxCount 1 ; + sh:order 75 ; + sh:path linkml:definition_uri ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 89 ; + sh:path linkml:examples ], [ sh:datatype xsd:boolean ; sh:description "True means that this slot was defined in a slot_usage situation" ; sh:maxCount 1 ; - sh:order 28 ; - sh:path linkml:is_usage_slot ], + sh:order 29 ; + sh:path linkml:is_usage_slot ], + [ sh:datatype xsd:boolean ; + sh:description "true if this slot is a grouping slot" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path linkml:is_grouping_slot ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the slot should be present in instances of the class definition, but this is not required" ; + sh:maxCount 1 ; + sh:order 42 ; + sh:path linkml:recommended ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 73 ; + sh:path linkml:id_prefixes ], + [ sh: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)" ; + sh:in ( "UNCOMMITTED" "PRESENT" "ABSENT" ) ; + sh:maxCount 1 ; + sh:order 51 ; + sh:path linkml:value_presence ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "the value of the slot is multivalued with all members satisfying the condition" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 60 ; + sh:path linkml:all_members ], + [ sh:datatype xsd:boolean ; + sh:description "true means that slot can have more than one value and should be represented using a list or collection structure." ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path linkml:multivalued ], + [ sh:class linkml:ArrayExpression ; + sh:description "coerces the value of the slot into an array and defines the dimensions of that array" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:array ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 94 ; + sh:path schema1:inLanguage ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 78 ; + sh:path linkml:implements ], + [ sh:description "The identifier of a \"value set\" -- a set of identifiers that form the possible values for the range of a slot. Note: this is different than 'subproperty_of' in that 'subproperty_of' is intended to be a single ontology term while 'values_from' is the identifier of an entire value set. Additionally, this is different than an enumeration in that in an enumeration, the values of the enumeration are listed directly in the model itself. Setting this property on a slot does not guarantee an expansion of the ontological hierarchy into an enumerated list of possible values in every serialization of the model." ; + sh:order 70 ; + sh:path linkml:values_from ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 93 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description """Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. +We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. +Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) 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""" ; + sh:maxCount 1 ; + sh:order 71 ; + sh:path linkml:string_serialization ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 90 ; + sh:path OIO:inSubset ], + [ sh:class linkml:AnonymousSlotExpression ; + sh:description "holds if only one of the expressions hold" ; + sh:nodeKind sh:BlankNode ; + sh:order 62 ; + sh:path linkml:exactly_one_of ], + [ sh:datatype xsd:boolean ; + sh:description "true means that the *value* of a slot is inherited by subclasses" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path linkml:inherited ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 106 ; + sh:path pav:createdBy ] ; + sh:targetClass linkml:SlotDefinition . + +skosxl:Label a sh:NodeShape ; + sh:closed true ; + sh:description "object that contains meta data about a synonym or alias including where it came from (source) and its scope (narrow, broad, etc.)" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 12 ; + sh:path linkml:examples ], + [ sh:description "agent that modified the element" ; + sh:maxCount 1 ; + sh:order 33 ; + sh:path oslc:modifiedBy ], + [ sh:datatype xsd:string ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 10 ; + sh:path skos:editorialNote ], + [ sh:datatype xsd:string ; + sh:description "Description of why and when this element will no longer be used" ; + sh:maxCount 1 ; + sh:order 8 ; + sh:path linkml:deprecated ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 6 ; + sh:path linkml:alt_descriptions ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 18 ; + sh:path rdfs:seeAlso ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:annotations ], + [ sh:datatype xsd:string ; + sh:description "a textual description of the element's purpose and use" ; + sh:maxCount 1 ; + sh:order 5 ; + sh:path skos:definition ], + [ sh:datatype xsd:string ; + sh:description "Outstanding issues that needs resolution" ; + sh:order 9 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 25 ; + sh:path skos:closeMatch ], + [ sh:description "A related resource from which the element is derived." ; + sh:maxCount 1 ; + sh:order 16 ; + sh:path dcterms:source ], + [ sh:datatype xsd:string ; + sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; + sh:maxCount 1 ; + sh:order 7 ; + sh:path dcterms:title ], + [ sh:description "The category or categories of an alias. This can be drawn from any relevant vocabulary" ; + sh:order 2 ; + sh:path dcterms:subject ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 36 ; + sh:path schema1:keywords ], + [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 27 ; + sh:path skos:narrowMatch ], + [ sh:description "The relationship between an element and its alias." ; + sh:in ( skos:exactMatch skos:relatedMatch skos:broaderMatch skos:narrowerMatch ) ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path rdf:predicate ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:deprecated_element_has_possible_replacement ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 29 ; + sh:path pav:createdBy ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was created" ; + sh:maxCount 1 ; + sh:order 31 ; + sh:path pav:createdOn ], + [ sh:datatype xsd:string ; + sh:description "The literal lexical form of a structured alias; i.e the actual alias value." ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path skosxl:literalForm ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 17 ; + sh:path schema1:inLanguage ], + [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 19 ; + sh:path linkml:deprecated_element_has_exact_replacement ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 26 ; + sh:path skos:relatedMatch ], + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; + sh:nodeKind sh:BlankNode ; + sh:order 22 ; + sh:path skosxl:altLabel ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; + sh:maxCount 1 ; + sh:order 32 ; + sh:path pav:lastUpdatedOn ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 11 ; + sh:path skos:note ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 24 ; + sh:path skos:exactMatch ], + [ sh:datatype xsd:anyURI ; + sh:description "id of the schema that defined the element" ; + sh:maxCount 1 ; + sh:order 14 ; + sh:path skos:inScheme ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 21 ; + sh:path skos:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 23 ; + sh:path skos:mappingRelation ], + [ sh:description "agent that contributed to the element" ; + sh:order 30 ; + sh:path dcterms:contributor ], + [ sh:datatype xsd:integer ; + sh:description "the relative order in which the element occurs, lower values are given precedence" ; + sh:maxCount 1 ; + sh:order 35 ; + sh:path sh:order ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 28 ; + sh:path skos:broadMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 13 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 15 ; + sh:path linkml:imported_from ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path bibo:status ] ; + sh:targetClass skosxl:Label . + +linkml:AltDescription a sh:NodeShape ; + sh:closed true ; + sh:description "an attributed description" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "the source of an attributed description" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path linkml:alt_description_source ], + [ sh:datatype xsd:string ; + sh:description "text of an attributed description" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 1 ; + sh:path linkml:alt_description_text ] ; + sh:targetClass linkml:AltDescription . + +linkml:Example a sh:NodeShape ; + sh:closed true ; + sh:description "usage example and description" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:string ; + sh:description "description of what the value is doing" ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path linkml:value_description ], + [ sh:class linkml:Any ; + sh:description "direct object representation of the example" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:value_object ], + [ sh:datatype xsd:string ; + sh:description "example value" ; + sh:maxCount 1 ; + sh:order 0 ; + sh:path skos:example ] ; + sh:targetClass linkml:Example . + +linkml:Annotation a sh:NodeShape ; + sh:closed true ; + sh:description "a tag/value pair with the semantics of OWL Annotation" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 0 ; + sh:path linkml:annotations ], + [ sh:description "a tag associated with an extension" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 1 ; + sh:path linkml:extension_tag ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 3 ; + sh:path linkml:extensions ], + [ sh:class linkml:Any ; + sh:description "the actual annotation" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:extension_value ] ; + sh:targetClass linkml:Annotation . + +linkml:SubsetDefinition a sh:NodeShape ; + sh:closed true ; + sh:description "an element that can be used to group other metamodel elements" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; + sh:order 32 ; + sh:path skos:narrowMatch ], + [ sh:description "agent that created the element" ; + sh:maxCount 1 ; + sh:order 34 ; + sh:path pav:createdBy ], + [ sh:description "An element in another schema which this element instantiates." ; + sh:order 7 ; + sh:path linkml:instantiates ], + [ sh:datatype xsd:string ; + sh:description "Keywords or tags used to describe the element" ; + sh:order 42 ; + sh:path schema1:keywords ], + [ sh:datatype xsd:string ; + sh:description "notes and comments about an element intended primarily for external consumption" ; + sh:order 16 ; + sh:path skos:note ], + [ sh:datatype xsd:string ; + sh:description "the primary language used in the sources" ; + sh:maxCount 1 ; + sh:order 22 ; + sh:path schema1:inLanguage ], + [ sh:class linkml:LocalName ; + sh:nodeKind sh:BlankNode ; + sh:order 4 ; + sh:path linkml:local_names ], + [ sh:datatype xsd:string ; + sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; + sh:order 1 ; + sh:path linkml:id_prefixes ], + [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; + sh:maxCount 1 ; + sh:order 25 ; + sh:path linkml:deprecated_element_has_possible_replacement ], [ sh:datatype xsd:string ; - sh:description "the string value of the slot must conform to this regular expression expressed in the string" ; + sh:description "editorial notes about an element intended primarily for internal consumption" ; + sh:order 15 ; + sh:path skos:editorialNote ], + [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; sh:maxCount 1 ; - sh:order 46 ; - sh:path linkml:pattern ] ; - sh:targetClass linkml:SlotDefinition . - -linkml:SubsetDefinition a sh:NodeShape ; - sh:closed true ; - sh:description "an element that can be used to group other metamodel elements" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:description "Controlled terms used to categorize an element." ; - sh:order 41 ; - sh:path dcterms:subject ], - [ sh:description "A list of related entities or URLs that may be of relevance" ; - sh:order 23 ; - sh:path rdfs:seeAlso ], + sh:order 3 ; + sh:path linkml:definition_uri ], + [ sh:class linkml:Example ; + sh:description "example usages of an element" ; + sh:nodeKind sh:BlankNode ; + sh:order 17 ; + sh:path linkml:examples ], [ sh:description "agent that contributed to the element" ; sh:order 35 ; sh:path dcterms:contributor ], - [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; - sh:order 33 ; - sh:path skos:broadMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have narrower meaning." ; - sh:order 32 ; - sh:path skos:narrowMatch ], - [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; - sh:order 31 ; - sh:path skos:relatedMatch ], + [ sh:class linkml:SubsetDefinition ; + sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; + sh:nodeKind sh:IRI ; + sh:order 18 ; + sh:path OIO:inSubset ], + [ sh:datatype xsd:boolean ; + sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path linkml:id_prefixes_are_closed ], + [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; + sh:order 6 ; + sh:path linkml:implements ], [ sh:class linkml:Extension ; sh:description "a tag/text tuple attached to an arbitrary element" ; sh:nodeKind sh:BlankNode ; sh:order 8 ; sh:path linkml:extensions ], + [ sh:datatype xsd:string ; + sh:description "the imports entry that this element was derived from. Empty means primary source" ; + sh:maxCount 1 ; + sh:order 20 ; + sh:path linkml:imported_from ], + [ sh:description "A list of related entities or URLs that may be of relevance" ; + sh:order 23 ; + sh:path rdfs:seeAlso ], + [ sh:description "status of the element" ; + sh:maxCount 1 ; + sh:order 39 ; + sh:path bibo:status ], [ sh:datatype xsd:integer ; sh:description "the relative order in which the element occurs, lower values are given precedence" ; sh:maxCount 1 ; sh:order 40 ; sh:path sh:order ], - [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was created" ; + [ sh:datatype xsd:string ; + sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; sh:maxCount 1 ; - sh:order 36 ; - sh:path pav:createdOn ], + sh:minCount 1 ; + sh:order 0 ; + sh:path rdfs:label ], + [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; + sh:order 29 ; + sh:path skos:exactMatch ], [ sh:datatype xsd:string ; sh:description "An established standard to which the element conforms." ; sh:maxCount 1 ; sh:order 5 ; sh:path dcterms:conformsTo ], - [ sh:datatype xsd:string ; - sh:description "a textual description of the element's purpose and use" ; - sh:maxCount 1 ; - sh:order 10 ; - sh:path skos:definition ], - [ sh:class linkml:AltDescription ; - sh:description "A sourced alternative description for an element" ; - sh:nodeKind sh:BlankNode ; - sh:order 11 ; - sh:path linkml:alt_descriptions ], - [ sh:class linkml:Annotation ; - sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + [ sh:class skosxl:Label ; + sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; sh:nodeKind sh:BlankNode ; - sh:order 9 ; - sh:path linkml:annotations ], - [ sh:description "agent that modified the element" ; - sh:maxCount 1 ; - sh:order 38 ; - sh:path oslc:modifiedBy ], + sh:order 27 ; + sh:path skosxl:altLabel ], [ sh:description "When an element is deprecated, it can be automatically replaced by this uri or curie" ; sh:maxCount 1 ; sh:order 24 ; sh:path linkml:deprecated_element_has_exact_replacement ], - [ sh:datatype xsd:string ; - sh:description "notes and comments about an element intended primarily for external consumption" ; - sh:order 16 ; - sh:path skos:note ], - [ sh:datatype xsd:string ; - sh:description "the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class." ; + [ sh:description "A related resource from which the element is derived." ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path rdfs:label ], - [ sh:class skosxl:Label ; - sh:description "A list of structured_alias objects, used to provide aliases in conjunction with additional metadata." ; - sh:nodeKind sh:BlankNode ; - sh:order 27 ; - sh:path skosxl:altLabel ], - [ sh:datatype xsd:string ; - sh:description "Keywords or tags used to describe the element" ; - sh:order 42 ; - sh:path schema1:keywords ], - [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; - sh:order 30 ; - sh:path skos:closeMatch ], - [ sh:datatype xsd:string ; - sh:description "An allowed list of prefixes for which identifiers must conform. The identifier of this class or slot must begin with the URIs referenced by this prefix" ; - sh:order 1 ; - sh:path linkml:id_prefixes ], - [ sh:class linkml:SubsetDefinition ; - sh:description "used to indicate membership of a term in a defined subset of terms used for a particular domain or application." ; - sh:nodeKind sh:IRI ; - sh:order 18 ; - sh:path OIO:inSubset ], - [ sh:class linkml:LocalName ; - sh:nodeKind sh:BlankNode ; - sh:order 4 ; - sh:path linkml:local_names ], - [ sh:description "An element in another schema which this element instantiates." ; - sh:order 7 ; - sh:path linkml:instantiates ], - [ sh:datatype xsd:string ; - sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; - sh:order 26 ; - sh:path skos:altLabel ], + sh:order 21 ; + sh:path dcterms:source ], [ sh:datatype xsd:string ; - sh:description "the primary language used in the sources" ; - sh:maxCount 1 ; - sh:order 22 ; - sh:path schema1:inLanguage ], + sh:description "Outstanding issues that needs resolution" ; + sh:order 14 ; + sh:path linkml:todos ], + [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; + sh:order 28 ; + sh:path skos:mappingRelation ], [ sh:datatype xsd:string ; - sh:description "the imports entry that this element was derived from. Empty means primary source" ; - sh:maxCount 1 ; - sh:order 20 ; - sh:path linkml:imported_from ], - [ sh:description "An element in another schema which this element conforms to. The referenced element is not imported into the schema for the implementing element. However, the referenced schema may be used to check conformance of the implementing element." ; - sh:order 6 ; - sh:path linkml:implements ], - [ sh:datatype xsd:boolean ; - sh:description "If true, then the id_prefixes slot is treated as being closed, and any use of an id that does not have this prefix is considered a violation." ; + sh:description "a textual description of the element's purpose and use" ; sh:maxCount 1 ; - sh:order 2 ; - sh:path linkml:id_prefixes_are_closed ], - [ sh:description "agent that created the element" ; + sh:order 10 ; + sh:path skos:definition ], + [ sh:datatype xsd:dateTime ; + sh:description "time at which the element was last updated" ; sh:maxCount 1 ; - sh:order 34 ; - sh:path pav:createdBy ], + sh:order 37 ; + sh:path pav:lastUpdatedOn ], [ sh:datatype xsd:anyURI ; sh:description "id of the schema that defined the element" ; sh:maxCount 1 ; sh:order 19 ; sh:path skos:inScheme ], - [ sh:description "A related resource from which the element is derived." ; - sh:maxCount 1 ; - sh:order 21 ; - sh:path dcterms:source ], [ sh:datatype xsd:string ; sh:description "Description of why and when this element will no longer be used" ; sh:maxCount 1 ; sh:order 13 ; sh:path linkml:deprecated ], - [ sh:class linkml:Example ; - sh:description "example usages of an element" ; + [ sh:description "Controlled terms used to categorize an element." ; + sh:order 41 ; + sh:path dcterms:subject ], + [ sh:class linkml:AltDescription ; + sh:description "A sourced alternative description for an element" ; sh:nodeKind sh:BlankNode ; - sh:order 17 ; - sh:path linkml:examples ], - [ sh:datatype xsd:string ; - sh:description "editorial notes about an element intended primarily for internal consumption" ; - sh:order 15 ; - sh:path skos:editorialNote ], - [ sh:description "When an element is deprecated, it can be potentially replaced by this uri or curie" ; - sh:maxCount 1 ; - sh:order 25 ; - sh:path linkml:deprecated_element_has_possible_replacement ], + sh:order 11 ; + sh:path linkml:alt_descriptions ], [ sh:datatype xsd:string ; sh:description "A concise human-readable display label for the element. The title should mirror the name, and should use ordinary textual punctuation." ; sh:maxCount 1 ; sh:order 12 ; sh:path dcterms:title ], - [ sh:datatype xsd:string ; - sh:description "Outstanding issues that needs resolution" ; - sh:order 14 ; - sh:path linkml:todos ], + [ sh:class linkml:Annotation ; + sh:description "a collection of tag/text tuples with the semantics of OWL Annotation" ; + sh:nodeKind sh:BlankNode ; + sh:order 9 ; + sh:path linkml:annotations ], [ sh:datatype xsd:dateTime ; - sh:description "time at which the element was last updated" ; - sh:maxCount 1 ; - sh:order 37 ; - sh:path pav:lastUpdatedOn ], - [ sh:description "The native URI of the element. This is always within the namespace of the containing schema. Contrast with the assigned URI, via class_uri or slot_uri" ; + sh:description "time at which the element was created" ; sh:maxCount 1 ; - sh:order 3 ; - sh:path linkml:definition_uri ], - [ sh:description "A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective." ; - sh:order 28 ; - sh:path skos:mappingRelation ], - [ sh:description "A list of terms from different schemas or terminology systems that have identical meaning." ; - sh:order 29 ; - sh:path skos:exactMatch ], - [ sh:description "status of the element" ; + sh:order 36 ; + sh:path pav:createdOn ], + [ sh:description "A list of terms from different schemas or terminology systems that have related meaning." ; + sh:order 31 ; + sh:path skos:relatedMatch ], + [ sh:datatype xsd:string ; + sh:description "Alternate names/labels for the element. These do not alter the semantics of the schema, but may be useful to support search and alignment." ; + sh:order 26 ; + sh:path skos:altLabel ], + [ sh:description "A list of terms from different schemas or terminology systems that have close meaning." ; + sh:order 30 ; + sh:path skos:closeMatch ], + [ sh:description "A list of terms from different schemas or terminology systems that have broader meaning." ; + sh:order 33 ; + sh:path skos:broadMatch ], + [ sh:description "agent that modified the element" ; sh:maxCount 1 ; - sh:order 39 ; - sh:path bibo:status ] ; + sh:order 38 ; + sh:path oslc:modifiedBy ] ; sh:targetClass linkml:SubsetDefinition . linkml:Extension a sh:NodeShape ; sh:closed true ; sh:description "a tag/value pair used to add non-model information to an entry" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class linkml:Extension ; - sh:description "a tag/text tuple attached to an arbitrary element" ; - sh:nodeKind sh:BlankNode ; - sh:order 2 ; - sh:path linkml:extensions ], - [ sh:description "a tag associated with an extension" ; + sh:property [ sh:description "a tag associated with an extension" ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 0 ; @@ -5068,6 +5434,11 @@ linkml:Extension a sh:NodeShape ; sh:minCount 1 ; sh:nodeKind sh:BlankNode ; sh:order 1 ; - sh:path linkml:extension_value ] ; + sh:path linkml:extension_value ], + [ sh:class linkml:Extension ; + sh:description "a tag/text tuple attached to an arbitrary element" ; + sh:nodeKind sh:BlankNode ; + sh:order 2 ; + sh:path linkml:extensions ] ; sh:targetClass linkml:Extension . diff --git a/linkml_runtime/linkml_model/shex/meta.shex b/linkml_runtime/linkml_model/shex/meta.shex index 893c9e5e..abdb049a 100644 --- a/linkml_runtime/linkml_model/shex/meta.shex +++ b/linkml_runtime/linkml_model/shex/meta.shex @@ -191,6 +191,7 @@ PREFIX oboInOwl: @ * ; @ ? ; @ ? ; + @ ? ; @ ? ; @ ? ; @ ? ; @@ -237,6 +238,58 @@ PREFIX oboInOwl: ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + & ; + rdf:type [ ] ? ; + & ; + rdf:type [ ] ? ; + @ ? ; + @ ? ; + @ ? ; + @ ? ; + @ * ; + @ * ; + @ * ; + skos:definition @ ? ; + @ * ; + dcterms:title @ ? ; + @ ? ; + @ * ; + skos:editorialNote @ * ; + skos:note @ * ; + @ * ; + oboInOwl:inSubset @ * ; + skos:inScheme @ ? ; + @ ? ; + dcterms:source @ ? ; + schema1:inLanguage @ ? ; + rdfs:seeAlso @ * ; + @ ? ; + @ ? ; + skos:altLabel @ * ; + skosxl:altLabel @ * ; + skos:mappingRelation @ * ; + skos:exactMatch @ * ; + skos:closeMatch @ * ; + skos:relatedMatch @ * ; + skos:narrowMatch @ * ; + skos:broadMatch @ * ; + pav:createdBy @ ? ; + dcterms:contributor @ * ; + pav:createdOn @ ? ; + pav:lastUpdatedOn @ ? ; + oslc:modifiedBy @ ? ; + bibo:status @ ? ; + sh:order @ ? ; + dcterms:subject @ * ; + schema1:keywords @ * + ) ; + rdf:type [ ] ? + ) +} + CLOSED { ( $ ( & ; rdf:type [ ] ? ; @@ -400,6 +453,57 @@ PREFIX oboInOwl: ) } + CLOSED { + ( $ ( & ; + rdf:type [ ] ? ; + & ; + rdf:type [ ] ? ; + & ; + rdf:type [ ] ? ; + skos:prefLabel @ ? ; + @ ? ; + @ ? ; + @ ? ; + @ * ; + @ * ; + skos:definition @ ? ; + @ * ; + dcterms:title @ ? ; + @ ? ; + @ * ; + skos:editorialNote @ * ; + skos:note @ * ; + @ * ; + oboInOwl:inSubset @ * ; + skos:inScheme @ ? ; + @ ? ; + dcterms:source @ ? ; + schema1:inLanguage @ ? ; + rdfs:seeAlso @ * ; + @ ? ; + @ ? ; + skos:altLabel @ * ; + skosxl:altLabel @ * ; + skos:mappingRelation @ * ; + skos:exactMatch @ * ; + skos:closeMatch @ * ; + skos:relatedMatch @ * ; + skos:narrowMatch @ * ; + skos:broadMatch @ * ; + pav:createdBy @ ? ; + dcterms:contributor @ * ; + pav:createdOn @ ? ; + pav:lastUpdatedOn @ ? ; + oslc:modifiedBy @ ? ; + bibo:status @ ? ; + sh:order @ ? ; + dcterms:subject @ * ; + schema1:keywords @ * + ) ; + rdf:type [ ] ? + ) +} + ( @ OR @ OR @ OR @ ) @@ -828,6 +932,7 @@ PREFIX oboInOwl: @ ? ; @ ? ; @ ? ; + @ ? ; @ ? ; @ ? ; @ ? ; @@ -883,6 +988,7 @@ PREFIX oboInOwl: @ * ; @ ? ; @ ? ; + @ ? ; @ ? ; @ ? ; @ ? ; @@ -918,6 +1024,7 @@ PREFIX oboInOwl: @ * ; @ ? ; @ ? ; + @ ? ; @ ? ; @ ? ; @ ? ; diff --git a/linkml_runtime/linkml_model/sqlschema/meta.sql b/linkml_runtime/linkml_model/sqlschema/meta.sql index 8e757707..aa2d615a 100644 --- a/linkml_runtime/linkml_model/sqlschema/meta.sql +++ b/linkml_runtime/linkml_model/sqlschema/meta.sql @@ -128,6 +128,7 @@ CREATE TABLE anonymous_slot_expression ( equals_string_in TEXT, equals_number INTEGER, equals_expression TEXT, + exact_cardinality INTEGER, minimum_cardinality INTEGER, maximum_cardinality INTEGER, has_member TEXT, @@ -136,7 +137,7 @@ CREATE TABLE anonymous_slot_expression ( exactly_one_of TEXT, any_of TEXT, all_of TEXT, - PRIMARY KEY (extensions, annotations, description, alt_descriptions, title, deprecated, todos, notes, comments, examples, in_subset, from_schema, imported_from, source, in_language, see_also, deprecated_element_has_exact_replacement, deprecated_element_has_possible_replacement, aliases, structured_aliases, mappings, exact_mappings, close_mappings, related_mappings, narrow_mappings, broad_mappings, created_by, contributors, created_on, last_updated_on, modified_by, status, rank, categories, keywords, range, range_expression, enum_range, required, recommended, inlined, inlined_as_list, minimum_value, maximum_value, pattern, structured_pattern, unit, implicit_prefix, value_presence, equals_string, equals_string_in, equals_number, equals_expression, minimum_cardinality, maximum_cardinality, has_member, all_members, none_of, exactly_one_of, any_of, all_of) + PRIMARY KEY (extensions, annotations, description, alt_descriptions, title, deprecated, todos, notes, comments, examples, in_subset, from_schema, imported_from, source, in_language, see_also, deprecated_element_has_exact_replacement, deprecated_element_has_possible_replacement, aliases, structured_aliases, mappings, exact_mappings, close_mappings, related_mappings, narrow_mappings, broad_mappings, created_by, contributors, created_on, last_updated_on, modified_by, status, rank, categories, keywords, range, range_expression, enum_range, required, recommended, inlined, inlined_as_list, minimum_value, maximum_value, pattern, structured_pattern, unit, implicit_prefix, value_presence, equals_string, equals_string_in, equals_number, equals_expression, exact_cardinality, minimum_cardinality, maximum_cardinality, has_member, all_members, none_of, exactly_one_of, any_of, all_of) ); CREATE TABLE anonymous_type_expression ( @@ -156,6 +157,50 @@ CREATE TABLE anonymous_type_expression ( PRIMARY KEY (pattern, structured_pattern, unit, implicit_prefix, equals_string, equals_string_in, equals_number, minimum_value, maximum_value, none_of, exactly_one_of, any_of, all_of) ); +CREATE TABLE array_expression ( + exact_number_dimensions INTEGER, + minimum_number_dimensions INTEGER, + maximum_number_dimensions TEXT, + has_extra_dimensions BOOLEAN, + dimensions TEXT, + extensions TEXT, + annotations TEXT, + description TEXT, + alt_descriptions TEXT, + title TEXT, + deprecated TEXT, + todos TEXT, + notes TEXT, + comments TEXT, + examples TEXT, + in_subset TEXT, + from_schema TEXT, + imported_from TEXT, + source TEXT, + in_language TEXT, + see_also TEXT, + deprecated_element_has_exact_replacement TEXT, + deprecated_element_has_possible_replacement TEXT, + aliases TEXT, + structured_aliases TEXT, + mappings TEXT, + exact_mappings TEXT, + close_mappings TEXT, + related_mappings TEXT, + narrow_mappings TEXT, + broad_mappings TEXT, + created_by TEXT, + contributors TEXT, + created_on DATETIME, + last_updated_on DATETIME, + modified_by TEXT, + status TEXT, + rank INTEGER, + categories TEXT, + keywords TEXT, + PRIMARY KEY (exact_number_dimensions, minimum_number_dimensions, maximum_number_dimensions, has_extra_dimensions, dimensions, extensions, annotations, description, alt_descriptions, title, deprecated, todos, notes, comments, examples, in_subset, from_schema, imported_from, source, in_language, see_also, deprecated_element_has_exact_replacement, deprecated_element_has_possible_replacement, aliases, structured_aliases, mappings, exact_mappings, close_mappings, related_mappings, narrow_mappings, broad_mappings, created_by, contributors, created_on, last_updated_on, modified_by, status, rank, categories, keywords) +); + CREATE TABLE class_definition ( name TEXT NOT NULL, id_prefixes_are_closed BOOLEAN, @@ -211,6 +256,49 @@ CREATE TABLE class_definition ( FOREIGN KEY(is_a) REFERENCES class_definition (name) ); +CREATE TABLE dimension_expression ( + alias TEXT, + maximum_cardinality INTEGER, + minimum_cardinality INTEGER, + exact_cardinality INTEGER, + extensions TEXT, + annotations TEXT, + description TEXT, + alt_descriptions TEXT, + title TEXT, + deprecated TEXT, + todos TEXT, + notes TEXT, + comments TEXT, + examples TEXT, + in_subset TEXT, + from_schema TEXT, + imported_from TEXT, + source TEXT, + in_language TEXT, + see_also TEXT, + deprecated_element_has_exact_replacement TEXT, + deprecated_element_has_possible_replacement TEXT, + aliases TEXT, + structured_aliases TEXT, + mappings TEXT, + exact_mappings TEXT, + close_mappings TEXT, + related_mappings TEXT, + narrow_mappings TEXT, + broad_mappings TEXT, + created_by TEXT, + contributors TEXT, + created_on DATETIME, + last_updated_on DATETIME, + modified_by TEXT, + status TEXT, + rank INTEGER, + categories TEXT, + keywords TEXT, + PRIMARY KEY (alias, maximum_cardinality, minimum_cardinality, exact_cardinality, extensions, annotations, description, alt_descriptions, title, deprecated, todos, notes, comments, examples, in_subset, from_schema, imported_from, source, in_language, see_also, deprecated_element_has_exact_replacement, deprecated_element_has_possible_replacement, aliases, structured_aliases, mappings, exact_mappings, close_mappings, related_mappings, narrow_mappings, broad_mappings, created_by, contributors, created_on, last_updated_on, modified_by, status, rank, categories, keywords) +); + CREATE TABLE enum_definition ( name TEXT NOT NULL, id_prefixes_are_closed BOOLEAN, @@ -688,6 +776,7 @@ CREATE TABLE slot_definition ( domain TEXT, slot_uri TEXT, multivalued BOOLEAN, + array TEXT, inherited BOOLEAN, readonly TEXT, ifabsent TEXT, @@ -741,6 +830,7 @@ CREATE TABLE slot_definition ( equals_string TEXT, equals_number INTEGER, equals_expression TEXT, + exact_cardinality INTEGER, minimum_cardinality INTEGER, maximum_cardinality INTEGER, has_member TEXT, diff --git a/linkml_runtime/linkml_model/types.py b/linkml_runtime/linkml_model/types.py index 36b8f06f..522a9e97 100644 --- a/linkml_runtime/linkml_model/types.py +++ b/linkml_runtime/linkml_model/types.py @@ -1,5 +1,5 @@ # Auto generated from types.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:06:06 +# Generation date: 2024-02-07T17:29:42 # Schema: types # # id: https://w3id.org/linkml/types @@ -23,7 +23,7 @@ from linkml_runtime.utils.metamodelcore import Bool, Curie, Decimal, ElementIdentifier, NCName, NodeIdentifier, URI, URIorCURIE, XSDDate, XSDDateTime, XSDTime metamodel_version = "1.7.0" -version = "2.0.0" +version = None # Overwrite dataclasses _init_fn to add **kwargs in __init__ dataclasses._init_fn = dataclasses_init_fn_with_kwargs diff --git a/linkml_runtime/linkml_model/units.py b/linkml_runtime/linkml_model/units.py index ec7909fe..30fbae46 100644 --- a/linkml_runtime/linkml_model/units.py +++ b/linkml_runtime/linkml_model/units.py @@ -1,5 +1,5 @@ # Auto generated from units.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:06:07 +# Generation date: 2024-02-07T17:29:43 # Schema: units # # id: https://w3id.org/linkml/units diff --git a/linkml_runtime/linkml_model/validation.py b/linkml_runtime/linkml_model/validation.py index 9cefbe00..b9fe24f8 100644 --- a/linkml_runtime/linkml_model/validation.py +++ b/linkml_runtime/linkml_model/validation.py @@ -1,5 +1,5 @@ # Auto generated from validation.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-01-29T16:06:09 +# Generation date: 2024-02-07T17:29:45 # Schema: reporting # # id: https://w3id.org/linkml/reporting From 2e35728bc1f288344fa0e81db54041d01c299110 Mon Sep 17 00:00:00 2001 From: cmungall Date: Wed, 7 Feb 2024 18:03:10 -0800 Subject: [PATCH 3/3] sync --- linkml_runtime/linkml_model/model/schema/meta.yaml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/linkml_runtime/linkml_model/model/schema/meta.yaml b/linkml_runtime/linkml_model/model/schema/meta.yaml index cfcedb94..d9c21038 100644 --- a/linkml_runtime/linkml_model/model/schema/meta.yaml +++ b/linkml_runtime/linkml_model/model/schema/meta.yaml @@ -1475,12 +1475,6 @@ slots: comments: - if exact_number_dimensions is set, then minimum_number_dimensions and maximum_number_dimensions must be unset or have the same value - has_extra_dimensions: - description: If this is set to true - domain: array_expression - range: boolean - status: testing - inherited: domain: slot_definition range: boolean @@ -3007,7 +3001,6 @@ classes: - exact_number_dimensions - minimum_number_dimensions - maximum_number_dimensions - - has_extra_dimensions - dimensions status: testing