aboutsummaryrefslogtreecommitdiffstats
path: root/schemas
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2021-03-08 23:25:35 -0500
committerDavid Robillard <d@drobilla.net>2021-03-09 01:43:52 -0500
commit7b954f5667e82de1b64984a9aeb26b8ebb5cab81 (patch)
tree5668f80ce2dc7a52cf66bbe2f4e4429b18f09e08 /schemas
parentc579186c5dd4e11bffddd353cef8978a66ef9c10 (diff)
downloadserd1-meson.tar.gz
serd1-meson.tar.bz2
serd1-meson.zip
WIP: Validationserd1-meson
Diffstat (limited to 'schemas')
-rw-r--r--schemas/rdf.ttl2
-rw-r--r--schemas/rdfs.ttl2
-rw-r--r--schemas/xsd.ttl98
3 files changed, 30 insertions, 72 deletions
diff --git a/schemas/rdf.ttl b/schemas/rdf.ttl
index 5ef93450..bd9a6738 100644
--- a/schemas/rdf.ttl
+++ b/schemas/rdf.ttl
@@ -2,7 +2,7 @@
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
-<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+rdf:
rdfs:comment "The RDF Vocabulary (RDF)" ;
a owl:Ontology ;
rdfs:seeAlso <http://www.w3.org/2000/01/rdf-schema-more> .
diff --git a/schemas/rdfs.ttl b/schemas/rdfs.ttl
index 43c51e58..a266b972 100644
--- a/schemas/rdfs.ttl
+++ b/schemas/rdfs.ttl
@@ -2,7 +2,7 @@
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
-<http://www.w3.org/2000/01/rdf-schema#>
+rdfs:
rdfs:comment "The RDF Schema vocabulary (RDFS)" ;
a owl:Ontology ;
rdfs:seeAlso <http://www.w3.org/2000/01/rdf-schema-more> .
diff --git a/schemas/xsd.ttl b/schemas/xsd.ttl
index 46f6793a..82a9ccf0 100644
--- a/schemas/xsd.ttl
+++ b/schemas/xsd.ttl
@@ -3,41 +3,10 @@
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
-<http://www.w3.org/2001/XMLSchema#>
+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 ;
@@ -75,10 +44,6 @@ xsd:minExclusive
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" .
@@ -89,7 +54,7 @@ xsd:base64Binary
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:pattern "(([A-Za-z0-9+/] *[A-Za-z0-9+/] *[A-Za-z0-9+/] *[A-Za-z0-9+/] *)*(([A-Za-z0-9+/] *[A-Za-z0-9+/] *[A-Za-z0-9+/] *[A-Za-z0-9+/])|([A-Za-z0-9+/] *[A-Za-z0-9+/] *[AEIMQUYcgkosw048] *=)|([A-Za-z0-9+/] *[AQgw] *= *=)))?"
]
) .
@@ -98,7 +63,7 @@ xsd:boolean
rdfs:label "boolean" ;
owl:withRestrictions (
[
- xsd:pattern "(true|false)"
+ xsd:pattern "(true|false|0|1)"
]
) .
@@ -109,7 +74,8 @@ xsd:byte
owl:withRestrictions (
[
xsd:maxInclusive 127
- ] [
+ ]
+ [
xsd:minInclusive -128
]
) .
@@ -119,7 +85,7 @@ xsd:date
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:pattern "-?[0-9][0-9][0-9][0-9][0-9]*-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])(Z|[-+][0-2][0-9]:[0-5][0-9])?"
]
) .
@@ -133,7 +99,7 @@ xsd: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:pattern "-?INF|NaN|[+-]?(([0-9]+[.]?[0-9]*)|([0-9]*[.]?[0-9]+))([eE][-+]?[0-9]+)?"
]
) .
@@ -143,7 +109,7 @@ xsd:double
rdfs:comment "IEEE double-precision 64-bit floating point." ;
owl:withRestrictions (
[
- xsd:pattern "[+-]?[0-9]*\\.?[0-9]*([eE][-+]?[0-9]+)?"
+ xsd:pattern "-?INF|NaN|[+-]?(([0-9]+[.]?[0-9]*)|([0-9]*[.]?[0-9]+))([eE][-+]?[0-9]+)?"
]
) .
@@ -157,28 +123,13 @@ xsd: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:pattern "([0-9A-Fa-f][0-9A-Fa-f])*"
]
) .
@@ -189,7 +140,8 @@ xsd:int
owl:withRestrictions (
[
xsd:maxInclusive 2147483647
- ] [
+ ]
+ [
xsd:minInclusive -2147483648
]
) .
@@ -201,7 +153,8 @@ xsd:integer
owl:withRestrictions (
[
xsd:pattern "[-+]?[0-9]+"
- ] [
+ ]
+ [
xsd:fractionDigits 0
]
) .
@@ -212,7 +165,7 @@ xsd:language
owl:onDatatype xsd:token ;
owl:withRestrictions (
[
- xsd:pattern "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*"
+ xsd:pattern "[a-zA-Z][a-zA-Z]?[a-zA-Z]?[a-zA-Z]?[a-zA-Z]?[a-zA-Z]?[a-zA-Z]?[a-zA-Z]?(-[a-zA-Z0-9][a-zA-Z0-9]?[a-zA-Z0-9]?[a-zA-Z0-9]?[a-zA-Z0-9]?[a-zA-Z0-9]?[a-zA-Z0-9]?[a-zA-Z0-9]?)*"
]
) .
@@ -223,7 +176,8 @@ xsd:long
owl:withRestrictions (
[
xsd:maxInclusive 9223372036854775807
- ] [
+ ]
+ [
xsd:minInclusive -9223372036854775808
]
) .
@@ -244,8 +198,9 @@ xsd:nonNegativeInteger
owl:onDatatype xsd:integer ;
owl:withRestrictions (
[
- xsd:pattern "[0-9]*"
- ] [
+ xsd:pattern "[+]?[0-9]+"
+ ]
+ [
xsd:minInclusive 0
]
) .
@@ -257,7 +212,8 @@ xsd:nonPositiveInteger
owl:withRestrictions (
[
xsd:pattern "(0|-[0-9]+)"
- ] [
+ ]
+ [
xsd:maxInclusive 0
]
) .
@@ -274,8 +230,9 @@ xsd:positiveInteger
owl:onDatatype xsd:nonNegativeInteger ;
owl:withRestrictions (
[
- xsd:pattern "[+]?[0-9]+"
- ] [
+ xsd:pattern "[+]?[0-9]*[1-9]+[0-9]*"
+ ]
+ [
xsd:minInclusive 1
]
) .
@@ -287,7 +244,8 @@ xsd:short
owl:withRestrictions (
[
xsd:maxInclusive 32767
- ] [
+ ]
+ [
xsd:minInclusive -32768
]
) .
@@ -302,7 +260,7 @@ xsd:time
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:pattern "(([0-1][0-9])|(2[0-4])):[0-5][0-9]:[0-5][0-9](.[0-9]+)?(Z|[-+][0-2][0-9]:[0-5][0-9])?"
]
) .
@@ -338,7 +296,7 @@ xsd:unsignedLong
owl:onDatatype xsd:nonNegativeInteger ;
owl:withRestrictions (
[
- xsd:maxInclusive 18446744073709551615
+ xsd:maxInclusive "18446744073709551615"^^xsd:unsignedLong
]
) .