From b5865b7ab1c687f537951f9d0b10c47b475bc23d Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 14 Oct 2018 22:18:17 +0200 Subject: Add validation test suite --- schemas/xsd.ttl | 353 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 353 insertions(+) create mode 100644 schemas/xsd.ttl (limited to 'schemas/xsd.ttl') diff --git a/schemas/xsd.ttl b/schemas/xsd.ttl new file mode 100644 index 00000000..46f6793a --- /dev/null +++ b/schemas/xsd.ttl @@ -0,0 +1,353 @@ +@prefix owl: . +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . + + + a owl:Ontology ; + rdfs:comment "XML Schema Datatypes" . + +xsd:ID + a rdfs:Datatype ; + owl:onDatatype xsd:NCName . + +xsd:IDREF + a rdfs:Datatype ; + owl:onDatatype xsd:NCName . + +xsd:ENTITY + a rdfs:Datatype ; + owl:onDatatype xsd:NCName . + +xsd:NCName + a rdfs:Datatype ; + owl:onDatatype xsd:Name . + +xsd:NMTOKEN + a rdfs:Datatype ; + owl:onDatatype xsd:token . + +xsd:Name + a rdfs:Datatype ; + owl:onDatatype xsd:token . + +xsd:totalDigits + a rdf:Property , + owl:DatatypeProperty ; + rdfs:range xsd:positiveInteger ; + rdfs:label "total digits" ; + rdfs:comment "The maximum number of decimal digits required to represent a value." . + +xsd:fractionDigits + a rdf:Property , + owl:DatatypeProperty ; + rdfs:range xsd:nonNegativeInteger ; + rdfs:label "fraction digits" ; + rdfs:comment "The total number of digits to the right of the decimal point required to represent a value." . + +xsd:pattern + a rdf:Property , + owl:DatatypeProperty ; + rdfs:label "pattern" ; + rdfs:comment "A regular expression that matches complete valid literals." . + +xsd:maxInclusive + a rdf:Property , + owl:DatatypeProperty ; + rdfs:label "max inclusive" ; + rdfs:comment "The inclusive upper bound of an ordered datatype." . + +xsd:maxExclusive + a rdf:Property , + owl:DatatypeProperty ; + rdfs:label "max exclusive" ; + rdfs:comment "The exclusive upper bound of an ordered datatype." . + +xsd:minInclusive + a rdf:Property , + owl:DatatypeProperty ; + rdfs:label "min inclusive" ; + rdfs:comment "The inclusive lower bound of an ordered datatype." . + +xsd:minExclusive + a rdf:Property , + owl:DatatypeProperty ; + rdfs:label "min exclusive" ; + rdfs:comment "The exclusive lower bound of an ordered datatype." . + +xsd:QName + a rdfs:Datatype ; + rdfs:label "XML qualified name" . + +xsd:anyURI + a rdfs:Datatype ; + rdfs:label "URI reference" . + +xsd:base64Binary + a rdfs:Datatype ; + rdfs:label "base64 binary" ; + rdfs:comment "Base64-encoded arbitrary binary data." ; + owl:withRestrictions ( + [ + xsd:pattern "(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?" + ] + ) . + +xsd:boolean + a rdfs:Datatype ; + rdfs:label "boolean" ; + owl:withRestrictions ( + [ + xsd:pattern "(true|false)" + ] + ) . + +xsd:byte + a rdfs:Datatype ; + rdfs:label "byte" ; + owl:onDatatype xsd:short ; + owl:withRestrictions ( + [ + xsd:maxInclusive 127 + ] [ + xsd:minInclusive -128 + ] + ) . + +xsd:date + a rdfs:Datatype ; + rdfs:label "date" ; + owl:withRestrictions ( + [ + xsd:pattern "-?[0-9][0-9][0-9][0-9]([0-9]*)?-(0[1-9]|1[0-2])-([0-3][0-9])([+-]([0-1][0-9]|2[0-3]):[0-5][0-9])?" + ] + ) . + +xsd:dateTime + a rdfs:Datatype ; + rdfs:label "date time" . + +xsd:decimal + a rdfs:Datatype ; + rdfs:label "decimal" ; + rdfs:comment "A subset of the real numbers, which can be represented by decimal numerals." ; + owl:withRestrictions ( + [ + xsd:pattern "[+-]?[0-9]*\\.?[0-9]*" + ] + ) . + +xsd:double + a rdfs:Datatype ; + rdfs:label "double" ; + rdfs:comment "IEEE double-precision 64-bit floating point." ; + owl:withRestrictions ( + [ + xsd:pattern "[+-]?[0-9]*\\.?[0-9]*([eE][-+]?[0-9]+)?" + ] + ) . + +xsd:duration + a rdfs:Datatype ; + rdfs:label "duration" . + +xsd:float + a rdfs:Datatype ; + rdfs:label "float" ; + rdfs:comment "IEEE single-precision 32-bit floating point." ; + owl:onDatatype xsd:double . + +xsd:gDay + a rdfs:Datatype . + +xsd:gMonth + a rdfs:Datatype . + +xsd:gMonthDay + a rdfs:Datatype . + +xsd:gYear + a rdfs:Datatype . + +xsd:gYearMonth + a rdfs:Datatype . + +xsd:hexBinary + a rdfs:Datatype ; + rdfs:label "hex binary" ; + rdfs:comment "Hex-encoded arbitrary binary data." ; + owl:withRestrictions ( + [ + xsd:pattern "[0-9A-F]*" + ] + ) . + +xsd:int + a rdfs:Datatype ; + rdfs:label "int" ; + owl:onDatatype xsd:long ; + owl:withRestrictions ( + [ + xsd:maxInclusive 2147483647 + ] [ + xsd:minInclusive -2147483648 + ] + ) . + +xsd:integer + a rdfs:Datatype ; + rdfs:label "integer" ; + owl:onDatatype xsd:decimal ; + owl:withRestrictions ( + [ + xsd:pattern "[-+]?[0-9]+" + ] [ + xsd:fractionDigits 0 + ] + ) . + +xsd:language + a rdfs:Datatype ; + rdfs:label "language" ; + owl:onDatatype xsd:token ; + owl:withRestrictions ( + [ + xsd:pattern "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" + ] + ) . + +xsd:long + a rdfs:Datatype ; + rdfs:label "long" ; + owl:onDatatype xsd:integer ; + owl:withRestrictions ( + [ + xsd:maxInclusive 9223372036854775807 + ] [ + xsd:minInclusive -9223372036854775808 + ] + ) . + +xsd:negativeInteger + a rdfs:Datatype ; + rdfs:label "negative integer" ; + owl:onDatatype xsd:nonPositiveInteger ; + owl:withRestrictions ( + [ + xsd:maxInclusive -1 + ] + ) . + +xsd:nonNegativeInteger + a rdfs:Datatype ; + rdfs:label "non-negative integer" ; + owl:onDatatype xsd:integer ; + owl:withRestrictions ( + [ + xsd:pattern "[0-9]*" + ] [ + xsd:minInclusive 0 + ] + ) . + +xsd:nonPositiveInteger + a rdfs:Datatype ; + rdfs:label "non-positive integer" ; + owl:onDatatype xsd:integer ; + owl:withRestrictions ( + [ + xsd:pattern "(0|-[0-9]+)" + ] [ + xsd:maxInclusive 0 + ] + ) . + +xsd:normalizedString + a rdfs:Datatype ; + rdfs:label "normalized string" ; + owl:onDatatype xsd:string ; + rdfs:comment "The set of strings that do not contain the carriage return (#xD), line feed (#xA) nor tab (#x9) characters." . + +xsd:positiveInteger + a rdfs:Datatype ; + rdfs:label "positive integer" ; + owl:onDatatype xsd:nonNegativeInteger ; + owl:withRestrictions ( + [ + xsd:pattern "[+]?[0-9]+" + ] [ + xsd:minInclusive 1 + ] + ) . + +xsd:short + a rdfs:Datatype ; + rdfs:label "short" ; + owl:onDatatype xsd:int ; + owl:withRestrictions ( + [ + xsd:maxInclusive 32767 + ] [ + xsd:minInclusive -32768 + ] + ) . + +xsd:string + a rdfs:Datatype ; + rdfs:label "string" ; + rdfs:comment "A character string." . + +xsd:time + a rdfs:Datatype ; + rdfs:label "time" ; + owl:withRestrictions ( + [ + xsd:pattern "[1-2][0-9]:[0-5][0-9]:[0-5][0-9].[0-9][0-9][0-9]" + ] + ) . + +xsd:token + a rdfs:Datatype ; + rdfs:label "token" ; + owl:onDatatype xsd:normalizedString ; + rdfs:comment "The set of strings that do not contain the carriage return (#xD), line feed (#xA) nor tab (#x9) characters, that have no leading or trailing spaces (#x20) and that have no internal sequences of two or more spaces." . + +xsd:unsignedByte + a rdfs:Datatype ; + rdfs:label "unsigned byte" ; + owl:onDatatype xsd:unsignedShort ; + owl:withRestrictions ( + [ + xsd:maxInclusive 255 + ] + ) . + +xsd:unsignedInt + a rdfs:Datatype ; + rdfs:label "unsigned int" ; + owl:onDatatype xsd:unsignedLong ; + owl:withRestrictions ( + [ + xsd:maxInclusive 4294967295 + ] + ) . + +xsd:unsignedLong + a rdfs:Datatype ; + rdfs:label "unsigned long" ; + owl:onDatatype xsd:nonNegativeInteger ; + owl:withRestrictions ( + [ + xsd:maxInclusive 18446744073709551615 + ] + ) . + +xsd:unsignedShort + a rdfs:Datatype ; + rdfs:label "unsigned short" ; + owl:onDatatype xsd:unsignedInt ; + owl:withRestrictions ( + [ + xsd:maxInclusive 65535 + ] + ) . -- cgit v1.2.1