# baseURI: https://spec.pistoiaalliance.org/idmp/ontology/master/v1.4.0/ISO/ISO21090-HarmonizedDatatypes/
# imports: https://spec.pistoiaalliance.org/idmp/ontology/master/v1.4.0/META/ChangeManagement/
# imports: https://www.omg.org/spec/Commons/AnnotationVocabulary/
# imports: https://www.omg.org/spec/Commons/Classifiers/
# imports: https://www.omg.org/spec/Commons/CodesAndCodeSets/
# imports: https://www.omg.org/spec/Commons/Collections/
# imports: https://www.omg.org/spec/Commons/ContextualDesignators/
# imports: https://www.omg.org/spec/Commons/DatesAndTimes/
# imports: https://www.omg.org/spec/Commons/Designators/
# imports: https://www.omg.org/spec/Commons/Documents/
# imports: https://www.omg.org/spec/Commons/Identifiers/
# imports: https://www.omg.org/spec/Commons/Organizations/
# imports: https://www.omg.org/spec/Commons/QuantitiesAndUnits/
# imports: https://www.omg.org/spec/Commons/TextDatatype/
# imports: https://www.omg.org/spec/LCC/Languages/ISO639-1-LanguageCodes/
# imports: https://www.omg.org/spec/LCC/Languages/LanguageRepresentation/
# imports: https://www.omg.org/spec/MVF/MultipleVocabularyFacility/

@base <https://spec.pistoiaalliance.org/idmp/ontology/master/v1.4.0/ISO/ISO21090-HarmonizedDatatypes/> .
@prefix cmns-av: <https://www.omg.org/spec/Commons/AnnotationVocabulary/> .
@prefix cmns-cds: <https://www.omg.org/spec/Commons/CodesAndCodeSets/> .
@prefix cmns-cls: <https://www.omg.org/spec/Commons/Classifiers/> .
@prefix cmns-col: <https://www.omg.org/spec/Commons/Collections/> .
@prefix cmns-cxtdsg: <https://www.omg.org/spec/Commons/ContextualDesignators/> .
@prefix cmns-doc: <https://www.omg.org/spec/Commons/Documents/> .
@prefix cmns-dsg: <https://www.omg.org/spec/Commons/Designators/> .
@prefix cmns-dt: <https://www.omg.org/spec/Commons/DatesAndTimes/> .
@prefix cmns-id: <https://www.omg.org/spec/Commons/Identifiers/> .
@prefix cmns-org: <https://www.omg.org/spec/Commons/Organizations/> .
@prefix cmns-qtu: <https://www.omg.org/spec/Commons/QuantitiesAndUnits/> .
@prefix cmns-txt: <https://www.omg.org/spec/Commons/TextDatatype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix idmp-chg: <https://spec.pistoiaalliance.org/idmp/ontology/META/ChangeManagement/> .
@prefix idmp-dtp: <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> .
@prefix lcc-639-1: <https://www.omg.org/spec/LCC/Languages/ISO639-1-LanguageCodes/> .
@prefix lcc-lr: <https://www.omg.org/spec/LCC/Languages/LanguageRepresentation/> .
@prefix mvf: <https://www.omg.org/spec/MVF/MultipleVocabularyFacility/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/>
	a owl:Ontology ;
	rdfs:label "ISO 21090 Harmonized Datatypes Ontology" ;
	dcterms:abstract """The harmonized datatypes ontology provides a semantic model representing the harmonized datatype definitions for exchanging basic concepts that are commonly encountered in healthcare environments in support of information exchange in the healthcare environment. It is derived from and largely conforms with the ISO 21090:2011 Health informatics - Harmonized data types for information interchange specification, which in turn is compliant with and uses the terminology, notations and datatypes defined in ISO/IEC 11404.
		
		The implementation of ISO 21090 included herein is an OWL 2 DL compliant representation of the datatypes defined in the ISO specification. This means that it is not a perfect match for the UML (Unified Modeling Language) representation given in the standard, as there is not a one-to-one alignment between UML and OWL. For details on mapping UML to OWL, please refer to the Object Management Group (OMG) specifications for (1) the Ontology Definition Metamode (ODM), available at https://www.omg.org/spec/ODM/, and (2) MOF to RDF Mapping (MOF2RDF), available at https://www.omg.org/spec/MOF2RDF/. As a consequence, this ontology is an indirectly conforming implementation that provides mappings to the XML Schema Datatypes that are supported in OWL 2 for some ISO 21090 datatypes, and encodes others in a manner that is OWL 2 DL compliant. References to ISO 11179 with respect to the representation of codes and code sets are faithful to the 3rd edition of 11179 as well as to revisions to that standard that are part of emerging work in the ISO JTC 1 SC32 WG2 working group to the degree possible.
		
		For more information on the ontologies on which this ontology depends, please refer to the Object Management Group (OMG) specifications for (1) the Commons Ontology Library (Commons) specification, available at https://www.omg.org/spec/COMMONS/, (2) the Languages, Countries and Codes (LCC) specification, available at https://www.omg.org/spec/LCC/, and (3) the Multiple Vocabulary Facility (MVF) specification, available at https://www.omg.org/spec/MVF/.""" ;
	dcterms:license "https://opensource.org/licenses/MIT"^^xsd:anyURI ;
	owl:imports
		<https://spec.pistoiaalliance.org/idmp/ontology/master/v1.4.0/META/ChangeManagement/> ,
		<https://www.omg.org/spec/Commons/AnnotationVocabulary/> ,
		<https://www.omg.org/spec/Commons/Classifiers/> ,
		<https://www.omg.org/spec/Commons/CodesAndCodeSets/> ,
		<https://www.omg.org/spec/Commons/Collections/> ,
		<https://www.omg.org/spec/Commons/ContextualDesignators/> ,
		<https://www.omg.org/spec/Commons/DatesAndTimes/> ,
		<https://www.omg.org/spec/Commons/Designators/> ,
		<https://www.omg.org/spec/Commons/Documents/> ,
		<https://www.omg.org/spec/Commons/Identifiers/> ,
		<https://www.omg.org/spec/Commons/Organizations/> ,
		<https://www.omg.org/spec/Commons/QuantitiesAndUnits/> ,
		<https://www.omg.org/spec/Commons/TextDatatype/> ,
		<https://www.omg.org/spec/LCC/Languages/ISO639-1-LanguageCodes/> ,
		<https://www.omg.org/spec/LCC/Languages/LanguageRepresentation/> ,
		<https://www.omg.org/spec/MVF/MultipleVocabularyFacility/>
		;
	owl:versionIRI <https://spec.pistoiaalliance.org/idmp/ontology/master/v1.4.0/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:versionInfo "The IDMP MVP version of this ontology is incomplete, and covers only the parts of the ISO 21090 standard required to support the MVP use cases." ;
	skos:changeNote
		"The https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes.rdf version of this ontology was augmented to include XP and ENXP datatypes, required to represent fragments of medicinal product names and to incorporate revisions to the Commons 1.2 ontologies." ,
		"The https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes.rdf version of this ontology was modified to clean up URIs that had an erroneous final slash." ,
		"The https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes.rdf version of this ontology was modified to incorporate the Multiple Vocabulary Facility (MVF) for consistent representation of controlled vocabularies and code systems, and to align representations of URI-related properties (IDMP-636)." ,
		"The https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes.rdf version of this ontology was modified to make hasBooleanValue and hasIntegerValue non-functional properties." ,
		"The https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes.rdf version of this ontology was modified to make hasIntegerValue and hasLevelInHierarchy subproperties of hasNumericValue."
		;
	idmp-chg:hasMaturityLevel idmp-chg:Release ;
	cmns-av:copyright
		"Copyright (c) 2022-2024 EDM Council, Inc." ,
		"Copyright (c) 2022-2024 Pistoia Alliance, Inc."
		;
	cmns-av:explanatoryNote "The harmonized datatypes ontology provides a set of codes for datatypes and classes used in other standards in the health informatics family of standards, including those published by HL7. These codes need to be referenced via an annotation in the context of the IDMP ontologies due to the fact that any other approach would result in punning." ;
	.

idmp-dtp:CodeSystem
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ControlledVocabulary ,
		cmns-cds:CodeSet ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-id:isIdentifiedBy ;
			owl:onClass cmns-id:Identifier ;
			owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		]
		;
	rdfs:label "code system" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 3.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "managed collection of concept identifiers, usually codes, but sometimes more complex sets of rules and references" ;
	skos:note "They are often described as collections of uniquely identifiable concepts with associated representations, designations, associations and meanings." ;
	cmns-av:usageNote
		"ISO 21090 does not explicitly define a datatype called CD.CodeSystem (or codeSystem, or codeSystem: Uid, depending on the reference), which is referenced in some of the IDMP standards. The relationship 'is member of' some code system, which is a property of every code element, corresponds to CD.CodeSystem, however, and, the UID/OID for the relevant system can be retrieved via SPARQL." ,
		"The restriction, isIdentifiedBy exactly 1 Identifier corresponds to the 'codeSystem : Uid' attribute given in ISO 21090. ISO 21090 requires the code system name to be associated with every code; in this ontology, the name is associated with the code system and a code is a member of that system, thus one can retrieve the code system name via SPARQL. The 'codeSystem : String' corresponds with the hasVersion property, and again can be retrieved for any code using SPARQL to query through to the definition of the code system of which it is a member. Both the name and version are inherited from CodeSet."
		;
	.

idmp-dtp:CodeSystemName
	a owl:Class ;
	rdfs:subClassOf
		cmns-dsg:Name ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-dsg:isNameOf ;
			owl:onClass cmns-cds:CodeSet ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
		]
		;
	rdfs:label "code system name" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.3" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "common name of the coding system" ;
	skos:note "The purpose of a code system name is to assist an unaided human interpreter of a code value to understand which code system is referenced." ;
	cmns-av:usageNote "ISO 21090 does not explicitly define a datatype called CD.CodeSystemName (or codeSystemName), which is referenced in some of the IDMP standards. The relationship 'has name' some code system name, which is a property of every code set, corresponds to CD.CodeSystemName, however. This element can be retrieved by using SPARQL from any code to the code system of which it is a member." ;
	.

idmp-dtp:CodingRationale
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:DatatypeFlavor ,
		cmns-cls:Classifier ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-cls:classifies ;
			owl:allValuesFrom cmns-cds:CodeElement ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-dsg:denotes ;
			owl:allValuesFrom cmns-cds:CodeElement ;
		]
		;
	rdfs:label "coding rationale" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			idmp-dtp:CodingRationale-O
			idmp-dtp:CodingRationale-OR
			idmp-dtp:CodingRationale-P
			idmp-dtp:CodingRationale-PR
			idmp-dtp:CodingRationale-R
		) ;
	] ;
	skos:definition "code element that indicates a reason why a particular CD has been provided, either as the root concept or as one of the translations." ;
	skos:note
		"A code is deemed to be post-coded if the user does not assign the code when they first enter the data. codingRationale is not expected to act as a quality review marker on the quality of the coding or the translation processes." ,
		"A code is required when it is present in the instance to meet some constraints imposed on the instance by the context of use. Information Processing Entities shall not be required to mark a particular translation as required even though it is required by the context of use, but may do so. Information processing entities shall not reject instances because of the presence or absence of the codingRationale flag." ,
		"If populated, the value contained in this attribute shall be taken from this enumeration, composed from the HL7 CodingRationale code system."
		;
	.

idmp-dtp:CodingRationale-O
	a
		owl:NamedIndividual ,
		idmp-dtp:CodingRationale
		;
	rdfs:label "coding rationale O" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that the code descriptor represents the originally produced code" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CodingRationaleEnumeration ;
	cmns-dsg:hasDescription "Original" ;
	cmns-txt:hasTextValue "O" ;
	.

idmp-dtp:CodingRationale-OR
	a
		owl:NamedIndividual ,
		idmp-dtp:CodingRationale
		;
	rdfs:label "coding rationale OR" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that the code descriptor is an originally produced code and is required by the specification describing the use of the coded concept" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CodingRationaleEnumeration ;
	cmns-dsg:hasDescription "Original and Required" ;
	cmns-txt:hasTextValue "OR" ;
	.

idmp-dtp:CodingRationale-P
	a
		owl:NamedIndividual ,
		idmp-dtp:CodingRationale
		;
	rdfs:label "coding rationale P" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that the code descriptor was post-coded from free text source" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CodingRationaleEnumeration ;
	cmns-dsg:hasDescription "Post-coded" ;
	cmns-txt:hasTextValue "P" ;
	.

idmp-dtp:CodingRationale-PR
	a
		owl:NamedIndividual ,
		idmp-dtp:CodingRationale
		;
	rdfs:label "coding rationale PR" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that the code descriptor is post-coded from free text source and is required by the specification describing the use of the coded concept" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CodingRationaleEnumeration ;
	cmns-dsg:hasDescription "Post-coded and Required" ;
	cmns-txt:hasTextValue "PR" ;
	.

idmp-dtp:CodingRationale-R
	a
		owl:NamedIndividual ,
		idmp-dtp:CodingRationale
		;
	rdfs:label "coding rationale R" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that the code descriptor is required by the specification describing the use of the coded concept" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "The exact form of the requirement is not specified here; it may be required by the specification directly, or it may arise as an indirect result of other conformance tools. More than one different requirement may exist simultaneously, so more than one code in a CD complex may be required." ;
	cmns-col:isMemberOf idmp-dtp:CodingRationaleEnumeration ;
	cmns-dsg:hasDescription "Required" ;
	cmns-txt:hasTextValue "R" ;
	.

idmp-dtp:CodingRationaleEnumeration
	a
		owl:NamedIndividual ,
		idmp-dtp:CodeSystem ,
		cmns-cls:ClassificationScheme
		;
	rdfs:label "coding rationale enumeration" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "controlled vocabulary representing the enumeration for coding rationale as specified in ISO 21090" ;
	cmns-col:isConstituentOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "controlled vocabulary representing the enumeration for coding rationale" ;
	cmns-id:isIdentifiedBy idmp-dtp:OID-2.16.840.1.113883.5.1074 ;
	mvf:hasLanguage lcc-639-1:English ;
	mvf:hasTextualName "Coding Rationale Enumeration" ;
	mvf:hasURI "https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/CodingRationaleEnumeration"^^xsd:anyURI ;
	.

idmp-dtp:CompressionAlgorithm
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:DatatypeFlavor ,
		cmns-cls:Classifier
		;
	rdfs:label "compression algorithm" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			idmp-dtp:CompressionAlgorithm-BZ
			idmp-dtp:CompressionAlgorithm-DF
			idmp-dtp:CompressionAlgorithm-GZ
			idmp-dtp:CompressionAlgorithm-Z
			idmp-dtp:CompressionAlgorithm-Z7
			idmp-dtp:CompressionAlgorithm-ZL
		) ;
	] ;
	skos:definition "code element that identifies an algorithm, if any, used to compress the raw byte data" ;
	skos:note
		"If populated, the value of this attribute shall be taken from the HL7 CompressionAlgorithm code system." ,
		"If the attribute is null, the data are not compressed. Compression only applies to the binary form of the content."
		;
	cmns-av:synonym "compression algorithm enumeration" ;
	.

idmp-dtp:CompressionAlgorithm-BZ
	a
		owl:NamedIndividual ,
		idmp-dtp:CompressionAlgorithm
		;
	rdfs:label "compression algorithm BZ" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating the bzip-2 compression format. See [http://www.bzip.org/] for more information." ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-dsg:hasDescription "bzip" ;
	cmns-txt:hasTextValue "BZ" ;
	.

idmp-dtp:CompressionAlgorithm-DF
	a
		owl:NamedIndividual ,
		idmp-dtp:CompressionAlgorithm
		;
	rdfs:label "compression algorithm DF" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating the deflate compressed data format as specified in IETF RFC 1951" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-dsg:hasDescription "deflate" ;
	cmns-txt:hasTextValue "DF" ;
	.

idmp-dtp:CompressionAlgorithm-GZ
	a
		owl:NamedIndividual ,
		idmp-dtp:CompressionAlgorithm
		;
	rdfs:label "compression algorithm GZ" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating a compressed data format that is compatible with the widely used GZIP utility as specified in IETF RFC 1952 (uses the deflate algorithm)" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-dsg:hasDescription "gzip" ;
	cmns-txt:hasTextValue "GZ" ;
	.

idmp-dtp:CompressionAlgorithm-Z
	a
		owl:NamedIndividual ,
		idmp-dtp:CompressionAlgorithm
		;
	rdfs:label "compression algorithm Z" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating the original UNIX compress algorithm and file format using the LZC algorithm (a variant of LZW). Patent encumbered and less efficient than deflate" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-dsg:hasDescription "compress" ;
	cmns-txt:hasTextValue "Z" ;
	.

idmp-dtp:CompressionAlgorithm-Z7
	a
		owl:NamedIndividual ,
		idmp-dtp:CompressionAlgorithm
		;
	rdfs:label "compression algorithm Z7" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating the 7z compression file format. See [http://www.7-zip.org/7z.html] for more information." ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-dsg:hasDescription "Z7" ;
	cmns-txt:hasTextValue "Z7" ;
	.

idmp-dtp:CompressionAlgorithm-ZL
	a
		owl:NamedIndividual ,
		idmp-dtp:CompressionAlgorithm
		;
	rdfs:label "compression algorithm ZL" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating a compressed data format that also uses the deflate algorithm. Specified as IETF RFC 1950" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-dsg:hasDescription "zlib" ;
	cmns-txt:hasTextValue "ZL" ;
	.

idmp-dtp:CompressionAlgorithmEnumeration
	a
		owl:NamedIndividual ,
		idmp-dtp:CodeSystem ,
		cmns-cls:ClassificationScheme
		;
	rdfs:label "compression algorithm enumeration" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "controlled vocabulary representing the enumeration for compression algorithms as specified in ISO 21090" ;
	cmns-col:isConstituentOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "controlled vocabulary representing the enumeration for compression algorithms as specified in ISO 21090" ;
	cmns-id:isIdentifiedBy idmp-dtp:OID-2.16.840.1.113883.5.1009 ;
	mvf:hasLanguage lcc-639-1:English ;
	mvf:hasTextualName "Compression Algorithm Enumeration" ;
	mvf:hasURI "https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/CompressionAlgorithmEnumeration"^^xsd:anyURI ;
	.

idmp-dtp:ControlledVocabulary
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ValueDomain ,
		mvf:Vocabulary
		;
	rdfs:label "controlled vocabulary" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "finite set of values that represent the only allowed values for a data item" ;
	skos:note "The allowed values can be codes, text or numeric." ;
	cmns-av:directSource
		"ISO 11238:2018 Health informatics - Identification of medicinal products (IDMP) - Data elements and structures for the unique identification and exchange of regulated information on substances, clause 3.18" ,
		"ISO 11240:2012 Health informatics - Identification of medicinal products - Data elements and structures for the unique identification and exchange of units of measurement, clause 3.1.5"
		;
	.

idmp-dtp:DatatypeCode-ANY
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code ANY" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code representing the most basic, non-private datatype in the ISO 21090 datatype classification hierarchy" ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-txt:hasTextValue "ANY" ;
	.

idmp-dtp:DatatypeCode-BL
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code BL" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a boolean datatype" ;
	cmns-av:explanatoryNote "This code typically denotes an xsd:boolean value." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "boolean" ;
	cmns-txt:hasTextValue "BL" ;
	.

idmp-dtp:DatatypeCode-BL.NONNULL
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code BL.NONNULL" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a boolean datatype for which a value is required" ;
	cmns-av:explanatoryNote "This code typically denotes an xsd:boolean value." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "flavor that constrains boolean" ;
	cmns-txt:hasTextValue "BL.NONNULL" ;
	.

idmp-dtp:DatatypeCode-CD
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code CD" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a concept descriptor" ;
	cmns-av:explanatoryNote "This code typically denotes a complex concept that is a class that has inherent relationships and attributes." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "concept description" ;
	cmns-txt:hasTextValue "CD" ;
	.

idmp-dtp:DatatypeCode-ED
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code ED" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for encapsulated data" ;
	cmns-av:explanatoryNote "This code may link to some external resource or denote a complex concept that is a class that has inherent relationships and attributes." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "encapsulated data" ;
	cmns-txt:hasTextValue "ED" ;
	.

idmp-dtp:DatatypeCode-EN
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code EN" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for an entity name" ;
	cmns-av:explanatoryNote "This code denotes a name expressed as an xsd:string or rdf:langString, or a reified name that is an individual of type cmns-dsg:Name or of a subclass of cmns-dsg:Name such as a composite person name, organizational name, or other contextual name that may include provenance details such as the date such a name was last verified in addition to possible components of a name." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "entity name" ;
	cmns-txt:hasTextValue "EN" ;
	.

idmp-dtp:DatatypeCode-ENXP
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code ENXP" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code representing a part of a name that may have a type code signifying the role of the part in the whole entity name, and qualifier codes for more detail about the name part type" ;
	skos:example "Typical name parts for person names are given names, and family names, titles, etc." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-txt:hasTextValue "ENXP" ;
	.

idmp-dtp:DatatypeCode-HXIT
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code HXIT" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code representing the top-level datatype in the ISO 21090 datatype classification hierarchy" ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-txt:hasTextValue "HXIT" ;
	.

idmp-dtp:DatatypeCode-II
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code II" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for an instance identifier" ;
	cmns-av:explanatoryNote "This code typically denotes a complex concept, i.e., a named individual of type identifier that has inherent relationships and attributes, such as a named individual of type cmns-id:Individual or a subclass thereof." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "instance identifier" ;
	cmns-txt:hasTextValue "II" ;
	.

idmp-dtp:DatatypeCode-INT
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code INT" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for an integer datatype" ;
	cmns-av:explanatoryNote "This code denotes an xsd:integer value." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "integer" ;
	cmns-txt:hasTextValue "INT" ;
	.

idmp-dtp:DatatypeCode-NM
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code NM" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a name" ;
	cmns-av:explanatoryNote "This code denotes a name expressed as an xsd:string or rdf:langString, or a reified name that is an individual of type cmns-dsg:Name." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "name" ;
	cmns-txt:hasTextValue "NM" ;
	.

idmp-dtp:DatatypeCode-PQ
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code PQ" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a physical quantity" ;
	cmns-av:explanatoryNote "This code denotes a complex concept, i.e., a named individual of type cmns-qtu:ScalarQuantityValue that has an inherent unit of measure and numeric value." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "physical quantity" ;
	cmns-txt:hasTextValue "PQ" ;
	.

idmp-dtp:DatatypeCode-REAL
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code REAL" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a real number datatype" ;
	cmns-av:explanatoryNote "This code denotes a real number typically expressed as an xsd:decimal, xsd:float, owl:rational, or owl:real datatype." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "real number" ;
	cmns-txt:hasTextValue "REAL" ;
	.

idmp-dtp:DatatypeCode-ST
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code ST" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a string-valued datatype" ;
	cmns-av:explanatoryNote "This code denotes either an xsd:string or rdf:langString." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "string" ;
	cmns-txt:hasTextValue "ST" ;
	.

idmp-dtp:DatatypeCode-STT
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code STT" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a datatype representing the condition of something as of some point in time" ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "state" ;
	cmns-txt:hasTextValue "STT" ;
	.

idmp-dtp:DatatypeCode-TS
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "TS datatype code" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a timestamp datatype" ;
	cmns-av:explanatoryNote "This code denotes either a reified time instant (cmns:TimeInstant) or individual that is a member of a subclass of time instant, or an instance of cmns-dt:CombinedDateTime." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "timestamp" ;
	cmns-txt:hasTextValue "TS" ;
	.

idmp-dtp:DatatypeCode-XP
	a
		owl:NamedIndividual ,
		cmns-cds:CodeElement
		;
	rdfs:label "datatype code XP" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code representing an abstract, private datatype in the ISO 21090 datatype classification hierarchy" ;
	cmns-av:explanatoryNote "A part of a name or address. Each part is a character string that may be coded, and that also may have a nullFlavor. The string content shall always be provided whether a code is provided or not." ;
	cmns-col:isMemberOf idmp-dtp:ISO21090-CodeSet ;
	cmns-txt:hasTextValue "XP" ;
	.

idmp-dtp:DatatypeFlavor
	a owl:Class ;
	rdfs:subClassOf
		cmns-cds:CodeElement ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasLevelInHierarchy ;
			owl:someValuesFrom xsd:nonNegativeInteger ;
		]
		;
	rdfs:label "datatype flavor" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 6.7.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code element that describes a common constraint pattern on a datatype" ;
	skos:note "Datatype flavors cannot introduce new attributes, new codes, default values, or any new definitional material. Datatype flavors may only make rules about what or how existing features of a class may be used." ;
	.

idmp-dtp:EntityNamePartType
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:DatatypeFlavor ,
		cmns-cls:Classifier
		;
	rdfs:label "entity name part type" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			idmp-dtp:EntityNamePartType-Family
			idmp-dtp:EntityNamePartType-Given
			idmp-dtp:EntityNamePartType-Title
			idmp-dtp:EntityNamePartType-Delimiter
		) ;
	] ;
	skos:definition "code element that identifies a component of a name" ;
	skos:note "If populated, the value of this attribute shall be taken from the HL7 EntityNamePartType2 code system." ;
	cmns-av:explanatoryNote "Not every name part shall have a type code, if the type code is unknown, not applicable, or simply undefined this is expressed by a null value (type.isNull)." ;
	.

idmp-dtp:EntityNamePartType-Delimiter
	a
		owl:NamedIndividual ,
		idmp-dtp:EntityNamePartType
		;
	rdfs:label "entity name part type - delimiter" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating a delimiter, which has no meaning other than being literally printed in this name representation" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "A delimiter has no implicitleading and trailing white space." ;
	cmns-col:isMemberOf idmp-dtp:EntityNamePartTypeEnumeration ;
	cmns-dsg:hasDescription "delimiter" ;
	cmns-txt:hasTextValue "DEL" ;
	.

idmp-dtp:EntityNamePartType-Family
	a
		owl:NamedIndividual ,
		idmp-dtp:EntityNamePartType
		;
	rdfs:label "entity name part type - family" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating a family name, this is the name that links to the genealogy" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "In some cultures (e.g. Eritrea), the family name of a son is the first name of his father." ;
	cmns-col:isMemberOf idmp-dtp:EntityNamePartTypeEnumeration ;
	cmns-dsg:hasDescription "Family name, this is the name that links to the genealogy" ;
	cmns-txt:hasTextValue "FAM" ;
	.

idmp-dtp:EntityNamePartType-Given
	a
		owl:NamedIndividual ,
		idmp-dtp:EntityNamePartType
		;
	rdfs:label "entity name part type - given" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating a given name" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "Not to be called 'first name' since given names do not always come first." ;
	cmns-col:isMemberOf idmp-dtp:EntityNamePartTypeEnumeration ;
	cmns-dsg:hasDescription "given name" ;
	cmns-txt:hasTextValue "GIV" ;
	.

idmp-dtp:EntityNamePartType-Title
	a
		owl:NamedIndividual ,
		idmp-dtp:EntityNamePartType
		;
	rdfs:label "entity name part type - title" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating a part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc." ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "Title name parts include name parts that come after the name, such as qualifications" ;
	cmns-col:isMemberOf idmp-dtp:EntityNamePartTypeEnumeration ;
	cmns-dsg:hasDescription "title" ;
	cmns-txt:hasTextValue "TITLE" ;
	.

idmp-dtp:EntityNamePartTypeEnumeration
	a
		owl:NamedIndividual ,
		idmp-dtp:CodeSystem ,
		cmns-cls:ClassificationScheme
		;
	rdfs:label "entity name part type enumeration" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "controlled vocabulary representing the enumeration for entity name parts as specified in ISO 21090" ;
	cmns-col:isConstituentOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "controlled vocabulary representing the enumeration for entity name parts as specified in ISO 21090" ;
	cmns-id:isIdentifiedBy idmp-dtp:OID-2.16.840.1.113883.5.1121 ;
	mvf:hasLanguage lcc-639-1:English ;
	mvf:hasTextualName "Entity Name Part Type Enumeration" ;
	mvf:hasURI "https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/EntityNamePartTypeEnumeration"^^xsd:anyURI ;
	.

idmp-dtp:ISO21090-AbstractPrivateDatatype
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-Datatype ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasExceptionalValue ;
			owl:onClass idmp-dtp:NullFlavor ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-dsg:isSignifiedBy ;
			owl:onClass cmns-cds:CodeElement ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-txt:hasTextValue ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		]
		;
	rdfs:label "ISO 21090 abstract private datatype" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that defines the basic properties of an abstract type used for representing parts of other datatypes, including names and addresses" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-XP ;
	.

idmp-dtp:ISO21090-AnyDatatype
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-Datatype ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasExceptionalValue ;
			owl:onClass idmp-dtp:NullFlavor ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasUpdateMode ;
			owl:onClass idmp-dtp:UpdateMode ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasFlavorIdentifier ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		]
		;
	rdfs:label "ISO 21090 any datatype" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that defines the basic properties of every data value" ;
	skos:note
		"However exceptional values (nullFlavored values) may be of type ANY, except for the exceptional values that imply the NullFlavor INV, since this requires a type to be meaningful. Not all NullFlavors may be used with the type ANY." ,
		"This is conceptually an abstract type, meaning that no proper value can be just a data value without belonging to any concrete type. Every public concrete type is a specialization of this general abstract DataValue type."
		;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ANY ;
	.

idmp-dtp:ISO21090-Boolean
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-AnyDatatype ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasBooleanValue ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:boolean ;
		]
		;
	rdfs:label "ISO 21090 boolean" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that stands for the values of two-valued logic" ;
	skos:note "A BL value can be either true or false, or may have a nullFlavor, which makes this classifier essentially three-valued." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-BL ;
	.

idmp-dtp:ISO21090-BooleanNonNullDatatype
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-Boolean ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasBooleanValue ;
			owl:someValuesFrom xsd:boolean ;
		]
		;
	rdfs:label "ISO 21090 boolean non-null datatype" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that stands for the values of two-valued logic, for which a value is required" ;
	skos:note "BL.NONNULL is a constrained instance of BL that cannot have a nullFlavor. By implication, a null can never be used in the place of a BL.NONNULL, though this is not a rule that can be enforced by this International Standard." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-BL.NONNULL ;
	.

idmp-dtp:ISO21090-CharacterString
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-AnyDatatype ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasTranslation ;
			owl:allValuesFrom idmp-dtp:ISO21090-CharacterString ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasLanguageCode ;
			owl:onClass lcc-lr:LanguageIdentifier ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-txt:hasTextValue ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange cmns-txt:Text ;
		]
		;
	rdfs:label "ISO 21090 character string" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that stands for text data, primarily intended for machine processing (e.g. sorting, querying, indexing, etc.) or direct display" ;
	skos:note "A ST shall have at least one character or else have a nullFlavor" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

idmp-dtp:ISO21090-CodeSet
	a
		owl:NamedIndividual ,
		cmns-cds:CodeSet
		;
	rdfs:label "ISO 21090 code set" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:seeAlso "https://www.iso.org/standard/35646.html"^^xsd:anyURI ;
	skos:definition "set of codes for harmonized datatypes defined in the ISO 21090 specification" ;
	.

idmp-dtp:ISO21090-ConceptDescriptor
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-AnyDatatype ,
		cmns-cds:CodeElement ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-cls:isCharacterizedBy ;
			owl:onClass idmp-dtp:CodingRationale ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasSourceDescriptor ;
			owl:onClass idmp-dtp:ISO21090-ConceptDescriptor ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasTranslation ;
			owl:onClass idmp-dtp:ISO21090-ConceptDescriptor ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-col:comprises ;
			owl:onClass idmp-dtp:ValueDomain ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasDisplayName ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasOriginalText ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		]
		;
	rdfs:label "ISO 21090 concept descriptor" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that provides a reference to a concept defined in an external code system, terminology or ontology" ;
	skos:note "A CD may contain a simple code – that is, a reference to a concept defined directly by the referenced code system, or it may contain an expression in some syntax defined by the referenced code system that can be meaningfully evaluated, e.g. the concept of a 'left foot' as a postcoordinated term built from the primary code 'FOOT' and the qualifier 'LEFT'." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-CD ;
	.

idmp-dtp:ISO21090-Datatype
	a owl:Class ;
	rdfs:subClassOf
		cmns-cls:Classifier ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasControlInformationExtension ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasControlInformationRoot ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasValidTimeHigh ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange cmns-dt:CombinedDateTime ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasValidTimeLow ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange cmns-dt:CombinedDateTime ;
		]
		;
	rdfs:label "ISO 21090 datatype" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 3.7, 7.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that provides the top-level, abstract definition of a datatype, which is set of distinct values, characterized by properties of those values, and by operations on those values, according to the ISO 20190 specification" ;
	skos:note
		"Because of the way that the types are defined, a number of attributes of the datatypes have values with a type derived from HXIT (i.e., from this abstract class definition corresponding to HXIT). In these cases the HXIT attributes are constrained to null. The only case where the HXIT attributes are allowed within a datatype is on items in a collection (DSET, LIST, BAG, HIST). The use of these attributes is generally subject to further constraints in the specifications that make use of these types." ,
		"This concept corresponds to the HXIT datatype, which is abstract and private from a UML perspective - this datatype is not for use outside the datatypes in this International Standard." ,
		"Together, the root and extension identify a particular record of a real world event that may supply additional information about the value such as who made the change, when it was made, why it was made, what system originated the change. These attributes exist because sometimes this information is required, but the value is being represented in an external context that does not contain a proper relationship to the control information for the value itself. The record need not be directly or easily resolvable. Conformance statements may make additional statements about these two properties, or about how such a reference should be resolved. If a hasControlInformationExtension value is provided, a ControlInformationRoot shall also be provided."
		;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-HXIT ;
	.

idmp-dtp:ISO21090-EncapsulatedData
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-AnyDatatype ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasThumbnail ;
			owl:allValuesFrom idmp-dtp:ISO21090-EncapsulatedData ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasTranslation ;
			owl:allValuesFrom idmp-dtp:ISO21090-EncapsulatedData ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasCompressionAlgorithm ;
			owl:onClass idmp-dtp:CompressionAlgorithm ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasIntegrityCheckAlgorithm ;
			owl:onClass idmp-dtp:IntegrityCheckAlgorithm ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasCharacterSet ;
			owl:onClass cmns-cds:CodeElement ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasMediaType ;
			owl:onClass cmns-cds:CodeElement ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasLanguageCode ;
			owl:onClass lcc-lr:LanguageIdentifier ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasReferenceURL ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:anyURI ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasBinaryData ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:base64Binary ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasIntegrityCheck ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:base64Binary ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasXMLEncodedData ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-dsg:hasDescription ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-txt:hasTextValue ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange cmns-txt:Text ;
		]
		;
	rdfs:label "ISO 21090 encapsulated data" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that stands for data that are primarily intended for human interpretation or for further machine processing outside the scope of the ISO 21090 International Standard" ;
	skos:note
		"The three representations of the ED data - as a sequence of characters, as a sequence of bytes, or as XML in a native XML format - are mutually incompatible and could also have been implemented as three specializations of an abstract ED supertype. However, doing so would complicate definition and implementation of the ED flavors and complicate the associated XML format (the additional of a mandatory xsi:type attribute) without significantly simplifying the overall implementation of ED." ,
		"This includes unformatted or formatted written language, multimedia data, or structured information as defined by a different standard (e.g. XML-signatures)."
		;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ED ;
	.

idmp-dtp:ISO21090-EntityName
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-AnyDatatype ,
		cmns-cxtdsg:ContextualName
		;
	rdfs:label "ISO 21090 entity name" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "designation by which someone, some place, or something is known in the context of ISO 21090" ;
	skos:note "From an ISO 21090 perspective, entity names may be simple names or include sequences of entity name parts. They add a 'use' code and a valid time range for information about when the name was used and how to choose between multiple aliases that may be valid at the same time." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-EN ;
	.

idmp-dtp:ISO21090-EntityNamePart
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:ISO21090-AbstractPrivateDatatype ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasExceptionalValue ;
			owl:onClass idmp-dtp:NullFlavor ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-dsg:isSignifiedBy ;
			owl:onClass cmns-cds:CodeElement ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-txt:hasTextValue ;
			owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		]
		;
	rdfs:label "ISO 21090 entity name part" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "classifier that defines the basic properties of component of an entity name" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ENXP ;
	.

idmp-dtp:IntegrityCheckAlgorithm
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:DatatypeFlavor ,
		cmns-cls:Classifier
		;
	rdfs:label "integrity check algorithm" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			idmp-dtp:IntegrityCheckAlgorithm-SHA1
			idmp-dtp:IntegrityCheckAlgorithm-SHA256
		) ;
	] ;
	skos:definition "code element that identifies the algorithm used to compute the IntegrityCheckAlgorithm value" ;
	skos:note "If populated, the value of this attribute shall be taken from the HL7 IntegrityCheckAlgorithm code system." ;
	.

idmp-dtp:IntegrityCheckAlgorithm-SHA1
	a
		owl:NamedIndividual ,
		idmp-dtp:IntegrityCheckAlgorithm
		;
	rdfs:label "integrity check algorithm SHA1" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating the algorithm defined in FIPS PUB 180-1: Secure Hash Standard, As of April 17, 1995" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:IntegrityCheckAlgorithmEnumeration ;
	cmns-dsg:hasDescription "secure hash algorithm - 1" ;
	cmns-txt:hasTextValue "SHA1" ;
	.

idmp-dtp:IntegrityCheckAlgorithm-SHA256
	a
		owl:NamedIndividual ,
		idmp-dtp:IntegrityCheckAlgorithm
		;
	rdfs:label "integrity check algorithm SHA256" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating the algorithm defined in FIPS PUB 180-2: Secure Hash Standard" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:IntegrityCheckAlgorithmEnumeration ;
	cmns-dsg:hasDescription "secure hash algorithm - 256" ;
	cmns-txt:hasTextValue "SHA256" ;
	.

idmp-dtp:IntegrityCheckAlgorithmEnumeration
	a
		owl:NamedIndividual ,
		idmp-dtp:CodeSystem ,
		cmns-cls:ClassificationScheme
		;
	rdfs:label "integrity check algorithm enumeration" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "controlled vocabulary representing the enumeration for integrity check algorithms as specified in ISO 21090" ;
	cmns-col:isConstituentOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "controlled vocabulary representing the enumeration for integrity check algorithms as specified in ISO 21090" ;
	cmns-id:isIdentifiedBy idmp-dtp:OID-2.16.840.1.113883.5.1010 ;
	mvf:hasLanguage lcc-639-1:English ;
	mvf:hasTextualName "Integrity Check Algorithm Enumeration" ;
	mvf:hasURI "https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/IntegrityCheckAlgorithmEnumeration"^^xsd:anyURI ;
	.

idmp-dtp:NullFlavor
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:DatatypeFlavor ,
		cmns-cls:Classifier
		;
	rdfs:label "null flavor" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			idmp-dtp:NullFlavor-ASKU
			idmp-dtp:NullFlavor-DER
			idmp-dtp:NullFlavor-INV
			idmp-dtp:NullFlavor-MSK
			idmp-dtp:NullFlavor-NA
			idmp-dtp:NullFlavor-NASK
			idmp-dtp:NullFlavor-NAV
			idmp-dtp:NullFlavor-NI
			idmp-dtp:NullFlavor-NINF
			idmp-dtp:NullFlavor-OTH
			idmp-dtp:NullFlavor-PINF
			idmp-dtp:NullFlavor-QS
			idmp-dtp:NullFlavor-TRC
			idmp-dtp:NullFlavor-UNC
			idmp-dtp:NullFlavor-UNK
		) ;
	] ;
	skos:definition "code element that provides a general framework for handling incomplete data which is often encountered in healthcare information collection, use and analysis" ;
	skos:note
		"Some of the Null flavors are not generally applicable to all datatypes. The NullFlavors NINF, PINF, QS, and TRC shall only be used in association with QTY types. The NullFlavor UNC shall only be used with any type that has an hasOriginalText value, and when UNC is used the hasOriginalText property shall be populated. When the NullFlavor DER is used, an expression shall be provided." ,
		"The nullFlavor property may also play a special role in conformance frameworks in specifications that make use of these types."
		;
	.

idmp-dtp:NullFlavor-ASKU
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor ASKU" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which information was sought but not found (e.g. patient was asked but did not know)." ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Asked but unknown" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-UNK ;
	cmns-txt:hasTextValue "ASKU" ;
	.

idmp-dtp:NullFlavor-DER
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor DER" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for value for which no attempt has been made to encode the information correctly but the raw source information is represented (usually in hasOriginalText property)" ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Derived" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-INV ;
	cmns-txt:hasTextValue "DER" ;
	.

idmp-dtp:NullFlavor-INV
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor INV" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value as represented in the instance that is not a member of the set of permitted data values in the constrained value domain of a variable" ;
	idmp-dtp:hasLevelInHierarchy "2"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Invalid" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-NI ;
	cmns-txt:hasTextValue "INV" ;
	.

idmp-dtp:NullFlavor-MSK
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor MSK" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which there is information available but it has not been provided by the sender due to security, privacy or other reasons" ;
	idmp-dtp:hasLevelInHierarchy "2"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote
		"There may be an alternate mechanism for gaining access to this information." ,
		"Warning: Using this Nullflavor does provide information that may be a breach of confidentiality, even though no detailed data are provided. Its primary purpose is for those circumstances where it is necessary to inform the receiver that the information does exist without providing any detail."
		;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Masked" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-NI ;
	cmns-txt:hasTextValue "MSK" ;
	.

idmp-dtp:NullFlavor-NA
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor NA" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which no proper value is applicable in this context (e.g. last menstrual period for a male)" ;
	idmp-dtp:hasLevelInHierarchy "2"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Not applicable" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-NI ;
	cmns-txt:hasTextValue "NA" ;
	.

idmp-dtp:NullFlavor-NASK
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor NASK" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which information has not been sought (e.g. patient was not asked)" ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Not asked" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-UNK ;
	cmns-txt:hasTextValue "NASK" ;
	.

idmp-dtp:NullFlavor-NAV
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor NAV" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which information is not available at this time but it is expected that it would be available later" ;
	idmp-dtp:hasLevelInHierarchy "4"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Temporarily unavailable" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-ASKU ;
	cmns-txt:hasTextValue "NAV" ;
	.

idmp-dtp:NullFlavor-NI
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor NI" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value that is exceptional (missing, omitted, incomplete, improper)" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "No information as to the reason for being an exceptional value is provided. This is the most general exceptional value. It is also the default exceptional value." ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "No information" ;
	cmns-txt:hasTextValue "NI" ;
	.

idmp-dtp:NullFlavor-NINF
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor NINF" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value that is part of a value domain including a negative infinity of numbers" ;
	idmp-dtp:hasLevelInHierarchy "4"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Negative infinity" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-OTH ;
	cmns-txt:hasTextValue "NINF" ;
	.

idmp-dtp:NullFlavor-OTH
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor OTH" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for an actual value that is not a member of the set of permitted data values in the constrained value domain of a variable (e.g. concept not provided by required code system)" ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Other" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-INV ;
	cmns-txt:hasTextValue "OTH" ;
	.

idmp-dtp:NullFlavor-PINF
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor PINF" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value that is part of a value domain including a positive infinity of numbers" ;
	idmp-dtp:hasLevelInHierarchy "4"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Positive infinity" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-OTH ;
	cmns-txt:hasTextValue "PINF" ;
	.

idmp-dtp:NullFlavor-QS
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor QS" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which a specific quantity is not known, but is known to be non-zero and is not specified because it makes up the bulk of the material" ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "'Add 10 mg of ingredient X, 50 mg of ingredient Y, and sufficient quantity of water to 100 ml.' The null flavor would be used to express the quantity of water." ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Sufficient quantity" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-UNK ;
	cmns-txt:hasTextValue "QS" ;
	.

idmp-dtp:NullFlavor-TRC
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor TRC" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which content is greater than zero, but too small to be quantified" ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Trace" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-UNK ;
	cmns-txt:hasTextValue "TRC" ;
	.

idmp-dtp:NullFlavor-UNC
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor UNC" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which an actual value may exist, but it must be derived from the information provided (usually an expression is provided directly)" ;
	idmp-dtp:hasLevelInHierarchy "3"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Unencoded" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-INV ;
	cmns-txt:hasTextValue "UNC" ;
	.

idmp-dtp:NullFlavor-UNK
	a
		owl:NamedIndividual ,
		idmp-dtp:NullFlavor
		;
	rdfs:label "null flavor UNK" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code for a value for which proper value is applicable, but not known" ;
	idmp-dtp:hasLevelInHierarchy "2"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:NullFlavorEnumeration ;
	cmns-dsg:hasDescription "Unknown" ;
	cmns-qtu:specializes idmp-dtp:NullFlavor-NI ;
	cmns-txt:hasTextValue "UNK" ;
	.

idmp-dtp:NullFlavorEnumeration
	a
		owl:NamedIndividual ,
		idmp-dtp:CodeSystem ,
		cmns-cls:ClassificationScheme
		;
	rdfs:label "null flavor enumeration" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "controlled vocabulary representing the enumeration for null flavor codes as specified in ISO 21090" ;
	cmns-col:isConstituentOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "controlled vocabulary representing the enumeration for null flavor codes as specified in ISO 21090" ;
	cmns-id:isIdentifiedBy idmp-dtp:OID-2.16.840.1.113883.5.1008 ;
	mvf:hasLanguage lcc-639-1:English ;
	mvf:hasTextualName "Null Flavor Enumeration" ;
	mvf:hasURI "https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/NullFlavorEnumeration"^^xsd:anyURI ;
	.

idmp-dtp:OID-2.16.840.1.113883.5.1008
	a
		owl:NamedIndividual ,
		idmp-dtp:ObjectIdentifier
		;
	rdfs:label "null flavor enumeration object identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "object identifier for the null flavor enumeration" ;
	cmns-col:compliesWith idmp-dtp:ISO21090-CodeSet ;
	cmns-id:identifies idmp-dtp:NullFlavorEnumeration ;
	cmns-txt:hasTextValue "2.16.840.1.113883.5.1008" ;
	.

idmp-dtp:OID-2.16.840.1.113883.5.1009
	a
		owl:NamedIndividual ,
		idmp-dtp:ObjectIdentifier
		;
	rdfs:label "compression algorithm enumeration object identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "object identifier for the compression algorithm enumeration" ;
	cmns-col:compliesWith idmp-dtp:ISO21090-CodeSet ;
	cmns-id:identifies idmp-dtp:CompressionAlgorithmEnumeration ;
	cmns-txt:hasTextValue "2.16.840.1.113883.5.1009" ;
	.

idmp-dtp:OID-2.16.840.1.113883.5.1010
	a
		owl:NamedIndividual ,
		idmp-dtp:ObjectIdentifier
		;
	rdfs:label "integrity check algorithm enumeration object identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.8" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "object identifier for the integrity check algorithm enumeration" ;
	cmns-col:compliesWith idmp-dtp:ISO21090-CodeSet ;
	cmns-id:identifies idmp-dtp:IntegrityCheckAlgorithmEnumeration ;
	cmns-txt:hasTextValue "2.16.840.1.113883.5.1010" ;
	.

idmp-dtp:OID-2.16.840.1.113883.5.1074
	a
		owl:NamedIndividual ,
		idmp-dtp:ObjectIdentifier
		;
	rdfs:label "coding rationale enumeration object identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "object identifier for the coding rationale enumeration" ;
	cmns-col:compliesWith idmp-dtp:ISO21090-CodeSet ;
	cmns-id:identifies idmp-dtp:CodingRationaleEnumeration ;
	cmns-txt:hasTextValue "2.16.840.1.113883.5.1074" ;
	.

idmp-dtp:OID-2.16.840.1.113883.5.1121
	a
		owl:NamedIndividual ,
		idmp-dtp:ObjectIdentifier
		;
	rdfs:label "entity name part type enumeration object identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.7.5.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "object identifier for the entity name part type enumeration" ;
	cmns-col:compliesWith idmp-dtp:ISO21090-CodeSet ;
	cmns-id:identifies idmp-dtp:EntityNamePartTypeEnumeration ;
	cmns-txt:hasTextValue "2.16.840.1.113883.5.1121" ;
	.

idmp-dtp:OID-2.16.840.1.113883.5.57
	a
		owl:NamedIndividual ,
		idmp-dtp:ObjectIdentifier
		;
	rdfs:label "update mode enumeration object identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "object identifier for the update mode enumeration" ;
	cmns-av:abbreviation "update mode OID" ;
	cmns-col:compliesWith idmp-dtp:ISO21090-CodeSet ;
	cmns-id:identifies idmp-dtp:UpdateModeEnumeration ;
	cmns-txt:hasTextValue "2.16.840.1.113883.5.57" ;
	.

idmp-dtp:ObjectIdentifier
	a owl:Class ;
	rdfs:subClassOf cmns-id:Identifier ;
	rdfs:label "object identifier" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "globally unique identifier of a data object as defined in ISO/IEC 8824-2" ;
	cmns-av:abbreviation "OID" ;
	cmns-av:adaptedFrom "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 4" ;
	cmns-av:explanatoryNote "An object identifier (OID) is a unique alphanumeric/numeric identifier registered under the ISO/IEC 8824-2 registration standard to reference a specific object or object class." ;
	.

idmp-dtp:UpdateMode
	a owl:Class ;
	rdfs:subClassOf
		idmp-dtp:DatatypeFlavor ,
		cmns-cls:Classifier
		;
	rdfs:label "update mode" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	owl:equivalentClass [
		a owl:Class ;
		owl:oneOf (
			idmp-dtp:UpdateMode-A
			idmp-dtp:UpdateMode-AR
			idmp-dtp:UpdateMode-D
			idmp-dtp:UpdateMode-K
			idmp-dtp:UpdateMode-N
			idmp-dtp:UpdateMode-R
			idmp-dtp:UpdateMode-U
		) ;
	] ;
	skos:definition "code element that allows a sending system to identify the role that the attribute plays in processing the instance that is being represented" ;
	skos:note "If populated, the value of this attribute shall be taken from the HL7 UpdateMode code system." ;
	.

idmp-dtp:UpdateMode-A
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode A" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that an item was (or is to be) added, having not been present immediately before" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "If it is already present, this may be treated as an error condition." ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "Add" ;
	cmns-txt:hasTextValue "A" ;
	.

idmp-dtp:UpdateMode-AR
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode AR" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that an item was (or is to be) either added or replaced" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "No assertion is made as to whether the item previously existed." ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "Add or replace" ;
	cmns-txt:hasTextValue "AR" ;
	.

idmp-dtp:UpdateMode-D
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode D" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that an item item was (or is to be) removed (sometimes referred to as deleted)" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "If the item is part of a collection, delete any matching items." ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "Remove" ;
	cmns-txt:hasTextValue "D" ;
	.

idmp-dtp:UpdateMode-K
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode K" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that the item is part of the identifying information for the object that contains it" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "Key" ;
	cmns-txt:hasTextValue "K" ;
	.

idmp-dtp:UpdateMode-N
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode N" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that there was (or is to be) no change to the item" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "This is primarily used when this element has not changed, but other attributes in the instance have changed." ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "No change" ;
	cmns-txt:hasTextValue "N" ;
	.

idmp-dtp:UpdateMode-R
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode R" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that an item existed previously and has been (or is to be) revised" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-av:explanatoryNote "If an item does not already exist, this may be treated as an error condition." ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "Replace" ;
	cmns-txt:hasTextValue "R" ;
	.

idmp-dtp:UpdateMode-U
	a
		owl:NamedIndividual ,
		idmp-dtp:UpdateMode
		;
	rdfs:label "update mode U" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "code indicating that it is not specified whether or what kind of change has occurred to the item, or whether the item is present as a reference or identifying property" ;
	idmp-dtp:hasLevelInHierarchy "1"^^xsd:nonNegativeInteger ;
	cmns-col:isMemberOf idmp-dtp:UpdateModeEnumeration ;
	cmns-dsg:hasDescription "Unknown" ;
	cmns-txt:hasTextValue "U" ;
	.

idmp-dtp:UpdateModeEnumeration
	a
		owl:NamedIndividual ,
		idmp-dtp:CodeSystem ,
		cmns-cls:ClassificationScheme
		;
	rdfs:label "update mode enumeration" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "controlled vocabulary representing the enumeration for update mode codes as specified in ISO 21090" ;
	cmns-col:isConstituentOf idmp-dtp:ISO21090-CodeSet ;
	cmns-dsg:hasDescription "controlled vocabulary representing the enumeration for update mode codes as specified in ISO 21090" ;
	cmns-id:isIdentifiedBy idmp-dtp:OID-2.16.840.1.113883.5.57 ;
	mvf:hasLanguage lcc-639-1:English ;
	mvf:hasTextualName "Update Mode Enumeration" ;
	mvf:hasURI "https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/UpdateModeEnumeration"^^xsd:anyURI ;
	.

idmp-dtp:ValueDomain
	a owl:Class ;
	rdfs:subClassOf
		cmns-col:Collection ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasVersion ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasPublicationDateTime ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
			owl:onDataRange cmns-dt:CombinedDateTime ;
		]
		;
	rdfs:label "value domain" ;
	dcterms:source
		"ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.5" ,
		"ISO/IEC 11179-3 Information technology - Metadata registries (MDR) - Part 3: Registry metamodel and basic attributes, Third edition, 2013-02-15"
		;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "set of permissible values" ;
	skos:note
		"The permissible values may either be enumerated or expressed via a description." ,
		"The value domain provides representation, but has no implication as to what data element concept the values might be associated with nor what the values mean."
		;
	cmns-av:abbreviation "VD" ;
	cmns-av:synonym "value set" ;
	.

idmp-dtp:ValueDomainIdentifier
	a owl:Class ;
	rdfs:subClassOf
		cmns-id:Identifier ,
		[
			a owl:Restriction ;
			owl:onProperty cmns-id:identifies ;
			owl:someValuesFrom idmp-dtp:ValueDomain ;
		]
		;
	rdfs:label "value domain identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.5" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "identifier that allows unambiguous reference to a value set" ;
	skos:note "Where either ISO or HL7 have assigned an identifying name to a value set, then that name shall be used." ;
	.

idmp-dtp:hasBinaryData
	a owl:DatatypeProperty ;
	rdfs:label "has binary data" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:base64Binary ;
	skos:definition "indicates a simple sequence of byte values that contains the content" ;
	.

idmp-dtp:hasBooleanValue
	a owl:DatatypeProperty ;
	rdfs:label "has boolean value" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.4.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:boolean ;
	skos:definition "indicates the value of the BL" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-BL ;
	.

idmp-dtp:hasCharacterSet
	a
		owl:ObjectProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has character set" ;
	dcterms:source "ISO 11240:2021, clause 7.4.2.3.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range cmns-cds:CodeElement ;
	skos:definition "identifies an Internet Assigned Numbers Authority (IANA) Charset Registered character set and character encoding for character-based encoding types" ;
	skos:note "Whenever the content of the ED is character type data in any form, the charset property needs to be known. If the content is provided directly in the value attribute, then the charset shall be a known character set consistent with the String Character Set. If the content is provided as a reference, and the access method does not provide the charset for the content (such as by a mime header), then the charset shall be conveyed as part of the ED." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-CD ;
	.

idmp-dtp:hasCompressionAlgorithm
	a
		owl:ObjectProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has compression algorithm" ;
	dcterms:source "ISO 11240:2021, clause 7.4.2.3.6" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:CompressionAlgorithm ;
	skos:definition "indicates the algorithm, if any, used on the raw byte data for compression purposes" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-CD ;
	.

idmp-dtp:hasControlInformationExtension
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-txt:hasTextValue ;
	rdfs:label "has control information extension" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.4" ;
	rdfs:domain idmp-dtp:ISO21090-Datatype ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "indicates the extension of the identifier of the event associated with setting the datatype to its specified value" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

idmp-dtp:hasControlInformationRoot
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-txt:hasTextValue ;
	rdfs:label "has control information root" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.3" ;
	rdfs:domain idmp-dtp:ISO21090-Datatype ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "indicates the root of the identifier of the event associated with setting the datatype to its specified value" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

idmp-dtp:hasDisplayName
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf cmns-txt:hasTextValue ;
	rdfs:label "has display name" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.7" ;
	rdfs:domain idmp-dtp:ISO21090-AnyDatatype ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "indicates a name, title, or representation for the code or expression as it exists in the code system" ;
	skos:note "If populated, the hasDisplayName shall be a valid human readable representation of the concept as defined by the code system at the time of data entry." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

idmp-dtp:hasExceptionalValue
	a owl:ObjectProperty ;
	rdfs:subPropertyOf cmns-dsg:describes ;
	rdfs:label "has exceptional value" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.1" ;
	rdfs:domain idmp-dtp:ISO21090-AnyDatatype ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:NullFlavor ;
	skos:definition "indicates the reason if a value is not proper" ;
	.

idmp-dtp:hasFlavorIdentifier
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-txt:hasTextValue ;
	rdfs:label "has flavor identifier" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.3" ;
	rdfs:domain idmp-dtp:ISO21090-AnyDatatype ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "indicates the root of the identifier of the event associated with setting the datatype to its specified value" ;
	skos:note "Signals the imposition of one or more sets of constraints on the datatype. The sole purpose of specifying that a constraint that has been used to further constrain the datatype is to support validation of the instance: a validation engine can look up the rules expressed for the specified flavors and confirm that the instance conforms to the rules for the flavor. No other processing should depend on the content of the flavor attribute. No other semantic or computational use shall depend on the value of this property. If this value is populated,the datatype flavor(s) shall be a valid constraint on the type of value." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

idmp-dtp:hasIntegerValue
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf cmns-qtu:hasNumericValue ;
	rdfs:label "has integer value" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.8.3.3" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:integer ;
	skos:definition "indicates the value of the INT" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-INT ;
	.

idmp-dtp:hasIntegrityCheck
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf idmp-dtp:hasBinaryData ;
	rdfs:label "has integrity check" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.9" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:base64Binary ;
	skos:definition "indicates a checksum calculated over the binary data" ;
	skos:note "The purpose of this property, when communicated with a reference is for anyone to validate later whether or not the reference still resolved to the same content that the reference resolved to when the encapsulated data value with reference was created. If the attribute is null, there is no IntegrityCheckAlgorithm. It is an error if the data resolved through the reference does not match the integrity check." ;
	.

idmp-dtp:hasIntegrityCheckAlgorithm
	a
		owl:ObjectProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has integrity check algorithm" ;
	dcterms:source "ISO 11240:2021, clause 7.4.2.3.10" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:IntegrityCheckAlgorithm ;
	skos:definition "indicates the algorithm used to compute the IntegrityCheckAlgorithm value" ;
	.

idmp-dtp:hasLanguageCode
	a owl:ObjectProperty ;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has language code" ;
	dcterms:source "ISO 11240:2021, clause 7.4.6.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range lcc-lr:LanguageIdentifier ;
	skos:definition "indicates the human language of the content" ;
	skos:note "Valid codes are taken from the IETF RFC 3066. If this attribute is null, the language may be inferred from elsewhere, either from the context or from unicode language tags, for example. Conformance profiles should define defaulting rules for language for a given usage environment of this International Standard. While language tags usually alter the meaning of the text, the language does not alter the meaning of the characters in the text." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-CD ;
	.

idmp-dtp:hasLevelInHierarchy
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-qtu:hasNumericValue ;
	rdfs:label "has level in hierarchy" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.1.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:nonNegativeInteger ;
	skos:definition "indicates a position of the concept with respect to the hierarchy of the terminology" ;
	skos:note
		"All concepts marked with the same level and not separated by a concept with a level of less numerical magnitude are siblings, and all concepts that follow after another concept with a higher level value are children of that concept." ,
		"The hierarchy in the enumeration is an important part of the specification. Although the enumerations are defined as linear lists within ISO/IEC 11404 and the UML definitions, any information processing entity that asserts direct or indirect conformance with this International Standard shall conform to the relationships when evaluating meaning (implication) within the enumeration. In addition, this International Standard occasionally refers to the relationships within the narrative when defining the outcome of some operations."
		;
	.

idmp-dtp:hasMediaType
	a
		owl:ObjectProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has media type" ;
	dcterms:source "ISO 11240:2021, clause 7.4.2.3.5" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range cmns-cds:CodeElement ;
	skos:definition "identifies the type of the encapsulated data and can be used to determine a method to interpret or render the content" ;
	skos:note
		"If the content is compressed using a specified compression algorithm, the mediaType shall refer the mediaType of the uncompressed data, whether the data are accessed by reference or not." ,
		"The IANA defined domain of media types is established by the IETF RFCs 2045 and 2046. mediaType has a default value of text/plain and cannot be null. If the media type is different to text/plain, the mediaType attribute shall be populated."
		;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-CD ;
	.

idmp-dtp:hasOriginalText
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf cmns-txt:hasTextValue ;
	rdfs:label "has original text" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.5.2.4.7" ;
	rdfs:domain idmp-dtp:ISO21090-AnyDatatype ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "indicates the text as seen and/or selected by the user who entered the data which represents the intended meaning of the user" ;
	skos:note
		"Local implementations might influence what is required to represent that original text." ,
		"The original text shall be an excerpt of the relevant information in the original sources, rather than a pointer or exact reproduction. Thus the original text shall be represented in plain text form. In specific circumstances, when the context of use is clearly described, the hasOriginalText value may be a reference to some other text artefact for which the resolution scope is clearly described."
		;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ED ;
	.

idmp-dtp:hasPublicationDateTime
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf cmns-dt:hasObservedDateTime ;
	rdfs:label "has publication date and time" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range cmns-dt:CombinedDateTime ;
	skos:definition "indicates a date and time associated with the publication of something, such as a particular version of a value set" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-TS ;
	.

idmp-dtp:hasReferenceURL
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf mvf:hasURI ;
	rdfs:label "has reference URL" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.4.2.3.4" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:anyURI ;
	skos:definition "indicates a URL the target of which provides the binary content" ;
	.

idmp-dtp:hasSourceDescriptor
	a owl:ObjectProperty ;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has source descriptor" ;
	dcterms:source "ISO 11240:2021, clause 7.4.6.3.3" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:ISO21090-ConceptDescriptor ;
	skos:definition "indicates a reference to the CD that was the source of this translation, if this CD was created by translating it from another CD" ;
	skos:note "This property is a reference. The source to which the reference points shall be provided within the scope of this CD's root CD and translations; that is, another representation of the same concept in the same attribute." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-CD ;
	.

idmp-dtp:hasThumbnail
	a owl:ObjectProperty ;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has thumbnail" ;
	dcterms:source "ISO 11240:2021, clause 7.4.2.3.12" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:ISO21090-AnyDatatype ;
	skos:definition "indicates an abbreviated rendition of the full content" ;
	skos:note "A thumbnail requires significantly fewer resources than the full content, while still maintaining some distinctive similarity with the full content. A thumbnail is typically used with by-reference encapsulated data. It allows a user to select the appropriate content more efficiently before actually downloading through the reference. Originally, the term thumbnail refers to an image in a lower resolution (or smaller size) than another image. However, the thumbnail concept can be metaphorically used for media types other than images. For example a movie may be represented by a shorter clip; an audio-clip may be represented by another audio-clip that is shorter, has a lower sampling rate, or a glossy compression; or an abstract provided for a long document. A thumbnail itself shall not contain a thumbnail." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ED ;
	.

idmp-dtp:hasTranslation
	a owl:ObjectProperty ;
	rdfs:subPropertyOf cmns-doc:refersTo ;
	rdfs:label "has translation" ;
	dcterms:source "ISO 11240:2021, clause 7.4.6.3.3" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:ISO21090-AnyDatatype ;
	skos:definition "indicates an alternate rendition of the same content translated into a different language" ;
	skos:note "Translations may not contain translations. The translations shall convey the same information, but in a different language. The translations do not take part in the test for equality, so shall not introduce any new semantics to the value." ;
	.

idmp-dtp:hasUpdateMode
	a
		owl:ObjectProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-dsg:describes ;
	rdfs:label "has update mode" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.3.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range idmp-dtp:UpdateMode ;
	skos:definition "allows a sending system to to identify the role that the attribute plays in processing the instance that is being represented" ;
	.

idmp-dtp:hasValidTimeHigh
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-dt:hasObservedDateTime ;
	rdfs:label "has valid time high" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.2" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range cmns-dt:CombinedDateTime ;
	skos:definition "indicates the time that the given information ceased or will cease to be correct" ;
	skos:note "Both hasValidTimeLow and hasValidTimeHigh shall be valid timestamps using the format described in 7.8.13.3.1 (TS.value)." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-TS ;
	.

idmp-dtp:hasValidTimeLow
	a
		owl:DatatypeProperty ,
		owl:FunctionalProperty
		;
	rdfs:subPropertyOf cmns-dt:hasObservedDateTime ;
	rdfs:label "has valid time low" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.1" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range cmns-dt:CombinedDateTime ;
	skos:definition "indicates the time that the given information became or will become valid" ;
	skos:note "This is not the time that any system first observed the value, but the time that the actual value became correct (i.e. when a patient changes their name)." ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-TS ;
	.

idmp-dtp:hasVersion
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf cmns-dsg:hasDescription ;
	rdfs:label "has version" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "provides a version descriptor for the source" ;
	skos:note
		"For the purposes of ISO 21090, versions of a given resource must be backwards compatible." ,
		"Whenever a code system changes in an incompatible way, it constitutes a new code system, not simply a different version, regardless of how the vocabulary publisher calls it. For example, the publisher of ICD-9 and ICD-10 calls these code systems, 'revision 9' and 'revision 10' respectively. However, ICD-10 is a complete redesign of the ICD code, not a backward compatible version. Therefore, for the purposes of this datatype International Standard, ICD-9 and ICD-10 are different code systems, not just different versions. By contrast, when LOINC updates from revision '1.0j' to '1.0k', this would be considered as just another version of LOINC, since LOINC revisions are backwards compatible."
		;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	cmns-av:adaptedFrom "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.3" ;
	.

idmp-dtp:hasXMLEncodedData
	a owl:DatatypeProperty ;
	rdfs:subPropertyOf cmns-txt:hasTextValue ;
	rdfs:label "has XML-encoded data" ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 7.3.2.3.3" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	rdfs:range xsd:string ;
	skos:definition "indicates content represented in plain XML form" ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

idmp-dtp:isEncodedAs
	a owl:AnnotationProperty ;
	rdfs:label "is encoded as" ;
	rdfs:isDefinedBy <https://spec.pistoiaalliance.org/idmp/ontology/ISO/ISO21090-HarmonizedDatatypes/> ;
	skos:definition "assigns an ISO 21090 datatype to an XML Scheme Datatype or more complex concept corresponding to the notion of an ISO 21090 datatype" ;
	.

cmns-cds:CodeElement
	a owl:Class ;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 3.3" ;
	cmns-av:explanatoryNote "A code element is a concept representation published by the author of a code system as part of the code system, being an entity of that code system." ;
	cmns-av:synonym "code" ;
	.

cmns-cds:CodeSet
	a owl:Class ;
	rdfs:subClassOf
		[
			a owl:Restriction ;
			owl:onProperty cmns-dsg:hasName ;
			owl:onClass idmp-dtp:CodeSystemName ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
		] ,
		[
			a owl:Restriction ;
			owl:onProperty idmp-dtp:hasVersion ;
			owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
			owl:onDataRange xsd:string ;
		]
		;
	dcterms:source "ISO 21090:2011 Health informatics - Harmonized data types for information interchange, clause 3.4" ;
	skos:example "ICD-9, LOINC and SNOMED" ;
	skos:note "They are often described as collections of uniquely identifiable concepts with associated representations, designations, associations and meanings." ;
	cmns-av:explanatoryNote "A code system is a managed collection of concept identifiers, usually codes, but sometimes more complex sets of rules and references." ;
	cmns-av:synonym "code system" ;
	.

cmns-dsg:hasDescription
	a owl:DatatypeProperty ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

cmns-txt:hasTextValue
	a owl:DatatypeProperty ;
	idmp-dtp:isEncodedAs idmp-dtp:DatatypeCode-ST ;
	.

