aboutsummaryrefslogtreecommitdiffstats
path: root/schemas/xsd.ttl
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2018-10-14 22:18:17 +0200
committerDavid Robillard <d@drobilla.net>2019-04-13 19:48:23 +0200
commite320bb53e58314fb2f04d514fc68202efcb52f3e (patch)
tree67b5741ef8d614ae7fbcbd530ad4bc82ccbb5ff4 /schemas/xsd.ttl
parent25a0c50bb95f9523e700a2ca91b6b4a61c8243c5 (diff)
downloadserd-e320bb53e58314fb2f04d514fc68202efcb52f3e.tar.gz
serd-e320bb53e58314fb2f04d514fc68202efcb52f3e.tar.bz2
serd-e320bb53e58314fb2f04d514fc68202efcb52f3e.zip
Add validation test suite
Diffstat (limited to 'schemas/xsd.ttl')
-rw-r--r--schemas/xsd.ttl353
1 files changed, 353 insertions, 0 deletions
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: <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 xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+<http://www.w3.org/2001/XMLSchema#>
+ 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
+ ]
+ ) .