PREFIX mottr-ver: <http://spec.ottr.xyz/mOTTR/0.1.2/>
PREFIX o-mottr: <http://spec.ottr.xyz/mOTTR/0.1.2/tpl/>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX o-rottr: <http://spec.ottr.xyz/rOTTR/0.2.3/tpl/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX sh: <http://www.w3.org/ns/shacl#>
PREFIX t-pnd: <http://types.ottr.xyz/std/0.1/PunnedTypes#>
PREFIX rottr-ver: <http://spec.ottr.xyz/rOTTR/0.2.3/>
PREFIX ottr: <http://ns.ottr.xyz/0.4/>
PREFIX rottr-doc: <http://spec.ottr.xyz/rOTTR/>

ottr:Bot  ottr:subTypeOf  xsd:negativeInteger .

xsd:negativeInteger  ottr:subTypeOf  xsd:nonPositiveInteger;
        skos:definition  "Integer numbers <0" .

ottr:Bot  ottr:subTypeOf  rdf:langString .

rdf:langString  ottr:subTypeOf  ottr:string;
        skos:definition  "Character string with language tag" .

ottr:Bot  ottr:subTypeOf  xsd:token .

xsd:token  ottr:subTypeOf  xsd:normalizedString;
        skos:definition  "Tokenized strings" .

ottr:Bot  ottr:subTypeOf  xsd:integer .

xsd:integer  ottr:subTypeOf  xsd:decimal;
        skos:definition  "Arbitrary-size integer numbers" .

ottr:Bot  ottr:subTypeOf  xsd:nonPositiveInteger .

xsd:nonPositiveInteger
        ottr:subTypeOf   xsd:integer;
        skos:definition  "Integer numbers =<0" .

ottr:Bot  ottr:subTypeOf  xsd:float .

xsd:float  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "32-bit floating point numbers incl. +-Inf, +-0, NaN" .

ottr:Bot  ottr:subTypeOf  rdf:HTML .

rdf:HTML  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "HTML content" .

ottr:Bot  ottr:subTypeOf  xsd:positiveInteger .

xsd:positiveInteger  ottr:subTypeOf  xsd:nonNegativeInteger;
        skos:definition  "Integer numbers >0" .

ottr:Bot  ottr:subTypeOf  xsd:unsignedInt .

xsd:unsignedInt  ottr:subTypeOf  xsd:unsignedLong;
        skos:definition  "0...4294967295 (32 bit)" .

ottr:Bot  ottr:subTypeOf  rdfs:Literal .

rdfs:Literal  ottr:subTypeOf  rdfs:Resource;
        skos:definition  "The class rdfs:Literal is the class of literal values such as strings and integers" .

ottr:Bot  ottr:subTypeOf  xsd:nonNegativeInteger .

xsd:nonNegativeInteger
        ottr:subTypeOf   xsd:integer;
        skos:definition  "Integer numbers >=0" .

ottr:Bot  ottr:subTypeOf  xsd:gMonthDay .

xsd:gMonthDay  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Gregorian calendar month and day" .

ottr:Bot  ottr:subTypeOf  owl:real .

owl:real  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "The set of all real numbers" .

ottr:Bot  ottr:subTypeOf  xsd:gMonth .

xsd:gMonth  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Gregorian calendar month" .

ottr:Bot  ottr:subTypeOf  ottr:string .

ottr:string  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Character string with or without language tag" .

ottr:Bot  ottr:subTypeOf  xsd:NCName .

xsd:NCName  ottr:subTypeOf  xsd:Name;
        skos:definition  "XML NCNames" .

ottr:Bot  ottr:subTypeOf  xsd:Name .

xsd:Name  ottr:subTypeOf  xsd:token;
        skos:definition  "XML Names" .

ottr:Bot  ottr:subTypeOf  owl:AnnotationProperty .

owl:AnnotationProperty
        ottr:subTypeOf   ottr:IRI;
        skos:definition  "Annotation properties can be used to provide an annotation for an ontology, axiom, or an IRI." .

ottr:Bot  ottr:subTypeOf  xsd:time .

xsd:time  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Times (hh:mm:ss.sss...) with or without timezone" .

ottr:Bot  ottr:subTypeOf  xsd:dateTime .

xsd:dateTime  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Date and time with or without timezone" .

ottr:Bot  ottr:subTypeOf  xsd:dateTimeStamp .

xsd:dateTimeStamp  ottr:subTypeOf  xsd:dateTime;
        skos:definition  "Date and time with required timezone" .

ottr:Bot  ottr:subTypeOf  xsd:gYear .

xsd:gYear  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Gregorian calendar year" .

ottr:Bot  ottr:subTypeOf  rdf:List .

rdf:List  rdfs:label     "List<>";
        skos:definition  "rdf:List represents the mOTTR list type *List<>*. The type contains all list terms." .

ottr:Bot  ottr:subTypeOf  xsd:NMTOKEN .

xsd:NMTOKEN  ottr:subTypeOf  xsd:Name;
        skos:definition  "XML NMTOKENs" .

ottr:Bot  ottr:subTypeOf  xsd:dayTimeDuration .

xsd:dayTimeDuration  ottr:subTypeOf  xsd:duration;
        skos:definition  "Duration of time (days, hours, minutes, seconds only)" .

ottr:Bot  ottr:subTypeOf  owl:ObjectProperty .

owl:ObjectProperty  ottr:subTypeOf  ottr:IRI;
        skos:definition  "Object properties connect pairs of individuals." .

ottr:Bot  ottr:subTypeOf  xsd:gYearMonth .

xsd:gYearMonth  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Gregorian calendar year and month" .

ottr:Bot  ottr:subTypeOf  xsd:date .

xsd:date  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Dates (yyyy-mm-dd) with or without timezone" .

ottr:Bot  ottr:subTypeOf  owl:Class .

owl:Class  ottr:subTypeOf  ottr:IRI;
        skos:definition  "Classes can be understood as sets of individuals." .

ottr:Bot  ottr:subTypeOf  xsd:anyURI .

xsd:anyURI  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Absolute or relative URIs and IRIs" .

ottr:Bot  ottr:subTypeOf  owl:DatatypeProperty .

owl:DatatypeProperty  ottr:subTypeOf  ottr:IRI;
        skos:definition  "Data properties connect individuals with literals. In some knowledge representation systems, functional data properties are called attributes." .

ottr:Bot  ottr:subTypeOf  xsd:base64Binary .

xsd:base64Binary  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Base64-encoded binary data" .

ottr:Bot  ottr:subTypeOf  ottr:Bot;
        ottr:subTypeOf  xsd:duration .

xsd:duration  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Duration of time" .

ottr:Bot  ottr:subTypeOf  xsd:string .

xsd:string  ottr:subTypeOf  ottr:string;
        skos:definition  "Character strings (but not all Unicode character strings)" .

ottr:Bot  ottr:subTypeOf  xsd:boolean .

xsd:boolean  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "true, false" .

ottr:Bot  ottr:subTypeOf  xsd:unsignedByte .

xsd:unsignedByte  ottr:subTypeOf  xsd:unsignedShort;
        skos:definition  "0...255 (8 bit)" .

ottr:Bot  ottr:subTypeOf  xsd:unsignedShort .

xsd:unsignedShort  ottr:subTypeOf  xsd:unsignedInt;
        skos:definition  "0...65535 (16 bit)" .

ottr:Bot  ottr:subTypeOf  owl:rational .

owl:rational  ottr:subTypeOf  owl:real;
        skos:definition  "The set of all rational numbers" .

ottr:Bot  ottr:subTypeOf  rdfs:Resource .

rdfs:Resource  skos:definition  "All things described by RDF are called resources, and are instances of the class rdfs:Resource" .

ottr:Bot  ottr:subTypeOf  xsd:long .

xsd:long  ottr:subTypeOf  xsd:integer;
        skos:definition  "-9223372036854775808...+9223372036854775807 (64 bit)" .

ottr:Bot  ottr:subTypeOf  xsd:byte .

xsd:byte  ottr:subTypeOf  xsd:short;
        skos:definition  "-128...+127 (8 bit)" .

ottr:Bot  ottr:subTypeOf  xsd:language .

xsd:language  ottr:subTypeOf  xsd:token;
        skos:definition  "Language tags per [BCP47]" .

ottr:Bot  ottr:subTypeOf  rdf:XMLLiteral .

rdf:XMLLiteral  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "XML content" .

ottr:Bot  ottr:subTypeOf  xsd:unsignedLong .

xsd:unsignedLong  ottr:subTypeOf  xsd:positiveInteger;
        skos:definition  "0...18446744073709551615 (64 bit)" .

ottr:Bot  ottr:subTypeOf  xsd:int .

xsd:int  ottr:subTypeOf  xsd:long;
        skos:definition  "-2147483648...+2147483647 (32 bit)" .

ottr:Bot  ottr:subTypeOf  xsd:hexBinary .

xsd:hexBinary  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Hex-encoded binary data" .

ottr:Bot  ottr:subTypeOf  xsd:normalizedString .

xsd:normalizedString  ottr:subTypeOf  xsd:string;
        skos:definition  "Whitespace-normalized strings" .

ottr:Bot  ottr:subTypeOf  rdfs:Datatype .

rdfs:Datatype  ottr:subTypeOf  ottr:IRI;
        skos:definition  "Datatypes are entities that refer to sets of data values. Thus, datatypes are analogous to classes, the main difference being that the former contain data values such as strings and numbers, rather than individuals." .

ottr:Bot  ottr:subTypeOf  ottr:NEList .

ottr:NEList  rdfs:label  "NEList<>";
        skos:definition  "ottr:NEList represents the mOTTR list type *NEList<>*. The type contains all non-empty list terms." .

ottr:Bot  ottr:subTypeOf  xsd:gDay .

xsd:gDay  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "Gregorian calendar day of the month" .

ottr:Bot  ottr:subTypeOf  ottr:LUB .

ottr:LUB  rdfs:label     "LUB<>";
        skos:definition  "ottr:LUB represents the mOTTR list type *LUB<>* (least upper bound)." .

ottr:Bot  ottr:subTypeOf  owl:NamedIndividual .

owl:NamedIndividual  ottr:subTypeOf  ottr:IRI;
        skos:definition  "Individuals in the OWL 2 syntax represent actual objects from the domain." .

ottr:Bot  ottr:subTypeOf  xsd:yearMonthDuration .

xsd:yearMonthDuration
        ottr:subTypeOf   xsd:duration;
        skos:definition  "Duration of time (months and years only)" .

ottr:Bot  ottr:subTypeOf  xsd:short .

xsd:short  ottr:subTypeOf  xsd:int;
        skos:definition  "-32768...+32767 (16 bit)" .

ottr:Bot  ottr:subTypeOf  ottr:IRI .

ottr:IRI  ottr:subTypeOf  rdfs:Resource;
        skos:definition  "An IRI (Internationalized Resource Identifier) within an RDF graph is a Unicode string that conforms to the syntax defined in RFC 3987." .

ottr:Bot  ottr:subTypeOf  xsd:decimal .

xsd:decimal  ottr:subTypeOf  owl:rational;
        skos:definition  "Arbitrary-precision decimal numbers" .

ottr:Bot  ottr:subTypeOf  xsd:double .

xsd:double  ottr:subTypeOf  rdfs:Literal;
        skos:definition  "64-bit floating point numbers incl. +-Inf, +-0, NaN" .

rottr-doc:types.owl.ttl
        rdf:type          owl:Ontology;
        owl:versionIRI    rottr-ver:types.owl.ttl;
        owl:versionInfo   "0.2.3";
        owl:priorVersion  <http://spec.ottr.xyz/rOTTR/0.2.2/types.owl.ttl>;
        rdfs:label        "OTTR types" .

ottr:Type  rdf:type  owl:Class .

ottr:subTypeOf  rdf:type  owl:ObjectProperty;
        rdf:type     owl:TransitiveProperty;
        rdf:type     owl:ReflexiveProperty;
        rdfs:domain  ottr:Type;
        rdfs:range   ottr:Type .
