@prefix : <https://www.w3.org/2019/wot/json-schema#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix vann: <http://purl.org/vocab/vann/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix schema: <http://schema.org/> .

<https://www.w3.org/2019/wot/json-schema#> rdf:type owl:Ontology ;
                                    
                                    owl:versionInfo "0.6.0" ;
                                    
                                    rdfs:comment "Module for data schema specifications, part of the W3C Web of Things (WoT) Thing Description model"@en ;
                                    
                                    vann:preferredNamespacePrefix "jsonschema" ;
                                    
                                    vann:preferredNamespaceUri "https://www.w3.org/2019/wot/json-schema#" ;
                                    
                                    dc:title "JSON Schema in RDF"@en ;
                                    
                                    dcterms:license <http://purl.org/NET/rdflicense/cc-by4.0> ;
                                    
                                    dc:publisher <https://www.w3.org/WoT/WG/> ;
                                    
                                    dcterms:creator <https://vcharpenay.link/#me> .


#################################################################
#
#    Object Properties
#
#################################################################


###  https://www.w3.org/2019/wot/json-schema#items

<https://www.w3.org/2019/wot/json-schema#items> rdf:type owl:ObjectProperty ;
                                         
                                         rdfs:label "items" ;
                                         
                                         rdfs:comment "Used to define the characteristics of an array."@en ;
                                         
                                         schema:domainIncludes :ArraySchema ;
                                         schema:rangeIncludes :DataSchema .



###  https://www.w3.org/2019/wot/json-schema#properties

<https://www.w3.org/2019/wot/json-schema#properties> rdf:type owl:ObjectProperty ;
                                              
                                              rdfs:label "properties" ;
                                              
                                              rdfs:comment "Data schema nested definitions"@en ;
                                         
                                         schema:domainIncludes :ObjectSchema ;
                                         schema:rangeIncludes :DataSchema .



###  https://www.w3.org/2019/wot/json-schema#oneOf

<https://www.w3.org/2019/wot/json-schema#oneOf> rdf:type owl:ObjectProperty ;
                                        
                                        rdfs:label "oneOf" ;
                                        
                                        rdfs:comment "Used to ensure that the data is valid against exactly one of the specified schemas in the array."@en ;
                                         
                                         schema:domainIncludes :DataSchema ;
                                         schema:rangeIncludes :DataSchema .



###  https://www.w3.org/2019/wot/json-schema#allOf

<https://www.w3.org/2019/wot/json-schema#allOf> rdf:type owl:ObjectProperty ;
                                        
                                        rdfs:label "allOf" ;
                                        
                                        rdfs:comment "Used to ensure that the data is valid against all of the specified schemas in the array."@en ;
                                         
                                         schema:domainIncludes :DataSchema ;
                                         schema:rangeIncludes :DataSchema .



###  https://www.w3.org/2019/wot/json-schema#anyOf

<https://www.w3.org/2019/wot/json-schema#anyOf> rdf:type owl:ObjectProperty ;
                                        
                                        rdfs:label "anyOf" ;
                                        
                                        rdfs:comment "Used to ensure that the data is valid against any of the specified schemas in the array."@en ;
                                         
                                         schema:domainIncludes :DataSchema ;
                                         schema:rangeIncludes :DataSchema .





#################################################################
#
#    Data properties
#
#################################################################


###  https://www.w3.org/2019/wot/json-schema#const

<https://www.w3.org/2019/wot/json-schema#const> rdf:type owl:DatatypeProperty ;
                                         
                                         rdfs:label "const" ;
                                         
                                         rdfs:comment "Provides a constant value."@en ;
                                         
                                         schema:domainIncludes :DataSchema .


###  https://www.w3.org/2019/wot/json-schema#default

<https://www.w3.org/2019/wot/json-schema#default> rdf:type owl:DatatypeProperty ;
                                         
                                         rdfs:label "default" ;
                                         
                                         rdfs:comment "Supply a default value. The value should validate against the data schema in which it resides."@en ;
                                         
                                         schema:domainIncludes :DataSchema .

###  https://www.w3.org/2019/wot/json-schema#enum

<https://www.w3.org/2019/wot/json-schema#enum> rdf:type owl:DatatypeProperty ;
                                        
                                        rdfs:label "enum" ;
                                        
                                        rdfs:comment "Restricted set of values provided as an array."@en ;
                                         
                                         schema:domainIncludes :DataSchema .




###  https://www.w3.org/2019/wot/json-schema#maxItems

<https://www.w3.org/2019/wot/json-schema#maxItems> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "maxItems" ;
                                            
                                            rdfs:comment "Defines the maximum number of items that have to be in the array."@en ;
                                         
                                         schema:domainIncludes :ArraySchema ;
                                         rdfs:range xsd:nonNegativeInteger .



###  https://www.w3.org/2019/wot/json-schema#maximum

<https://www.w3.org/2019/wot/json-schema#maximum> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "maximum" ;
                                           
                                           rdfs:comment "Specifies a maximum numeric value, representing an inclusive upper limit. Only applicable for associated number or integer types."@en ;
                                           
                                           rdfs:seeAlso <http://schema.org/maxValue> ;
                                         
                                         schema:domainIncludes :NumberSchema, :IntegerSchema ;
                                         rdfs:range xsd:decimal .
										 
										 
###  https://www.w3.org/2019/wot/json-schema#exclusiveMaximum

<https://www.w3.org/2019/wot/json-schema#exclusiveMaximum> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "exclusiveMaximum" ;
                                           
                                           rdfs:comment "Specifies a maximum numeric value, representing an exclusive upper limit. Only applicable for associated number or integer types."@en ;
                                           
                                           rdfs:seeAlso <http://schema.org/maxValue> ;
                                         
                                         schema:domainIncludes :NumberSchema, :IntegerSchema ;
                                         rdfs:range xsd:decimal .


###  https://www.w3.org/2019/wot/json-schema#minItems

<https://www.w3.org/2019/wot/json-schema#minItems> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "minItems" ;
                                            
                                            rdfs:comment "Defines the minimum number of items that have to be in the array."@en ;
                                         
                                         schema:domainIncludes :ArraySchema ;
                                         rdfs:range xsd:nonNegativeInteger .

###  https://www.w3.org/2019/wot/json-schema#multipleOf

<https://www.w3.org/2019/wot/json-schema#multipleOf> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "multipleOf" ;
                                           
                                           rdfs:comment "Specifies the multipleOf value number. The value must strictly greater than 0. Only applicable for associated number or integer types."@en ;
                                                                                    
                                          schema:domainIncludes :NumberSchema, :IntegerSchema ;
                                          rdfs:range xsd:decimal .

###  https://www.w3.org/2019/wot/json-schema#minimum

<https://www.w3.org/2019/wot/json-schema#minimum> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "minimum" ;
                                           
                                           rdfs:comment "Specifies a minimum numeric value, representing an inclusive lower limit. Only applicable for associated number or integer types."@en ;
                                           
                                           rdfs:seeAlso <http://schema.org/minValue> ;
                                         
                                         schema:domainIncludes :NumberSchema, :IntegerSchema ;
                                         rdfs:range xsd:decimal .
										 
###  https://www.w3.org/2019/wot/json-schema#exclusiveMinimum

<https://www.w3.org/2019/wot/json-schema#exclusiveMinimum> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "exclusiveMinimum" ;
                                           
                                           rdfs:comment "Specifies a minimum numeric value, representing an exclusive lower limit. Only applicable for associated number or integer types."@en ;
                                           
                                           rdfs:seeAlso <http://schema.org/minValue> ;
                                         
                                         schema:domainIncludes :NumberSchema, :IntegerSchema ;
                                         rdfs:range xsd:decimal .

###  https://www.w3.org/2019/wot/json-schema#maxLength

<https://www.w3.org/2019/wot/json-schema#maxLength> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "maxLength" ;
                                           
                                           rdfs:comment "Specifies the maximum length of a string. Only applicable for associated string types."@en ;
                                         
                                         schema:domainIncludes :StringSchema ;
                                         rdfs:range xsd:nonNegativeInteger .

###  https://www.w3.org/2019/wot/json-schema#minLength

<https://www.w3.org/2019/wot/json-schema#minLength> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "minLength" ;
                                           
                                           rdfs:comment "Specifies the minimum length of a string. Only applicable for associated string types."@en ;
                                         
                                         schema:domainIncludes :StringSchema ;
                                         rdfs:range xsd:nonNegativeInteger .

###  https://www.w3.org/2019/wot/json-schema#pattern

<https://www.w3.org/2019/wot/json-schema#pattern> rdf:type owl:DatatypeProperty ;
                                           
                                           rdfs:label "pattern" ;
                                           
                                           rdfs:comment "Provides a regular expression to express constraints of the string value. The regular expression must follow the ECMA 262 dialect."@en ;
                                         
                                         schema:domainIncludes :StringSchema ;
                                         rdfs:range xsd:nonNegativeInteger .


###  https://www.w3.org/2019/wot/json-schema#required

<https://www.w3.org/2019/wot/json-schema#required> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "required" ;
                                            
                                            rdfs:comment "Defines which members of the object type are mandatory, i.e. which members are mandatory in the payload that is to be sent (e.g. input of <code>invokeaction</code>, <code>writeproperty</code>) and what members will be definitely delivered in the payload that is being received (e.g. output of <code>invokeaction</code>, <code>readproperty</code>)"@en ;
                                         
                                         schema:domainIncludes :ObjectSchema ;
                                         rdfs:range xsd:string .


###  https://www.w3.org/2019/wot/json-schema#readOnly

<https://www.w3.org/2019/wot/json-schema#readOnly> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "readOnly" ;
                                            
                                            rdfs:comment "Boolean value that is a hint to indicate whether a property interaction / value is read only (=true) or not (=false)"@en ;
                                         
                                         schema:domainIncludes :DataSchema ;
                                         rdfs:range xsd:boolean .

 <https://www.w3.org/2019/wot/json-schema#format> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "format" ;
                                            
                                            rdfs:comment "Allows validation based on a format pattern such as \"date-time\", \"email\", \"uri\", etc."@en ;
                                         
                                         schema:domainIncludes :StringSchema ;
                                         rdfs:range xsd:string .


 <https://www.w3.org/2019/wot/json-schema#contentEncoding> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "contentEncoding" ;
                                            
                                            rdfs:comment "Specifies the encoding used to store the contents, as specified in RFC 2054. The values that are accepted: \"7bit\", \"8bit\", \"binary\", \"quoted-printable\" and \"base64\"."@en ;
                                         
                                         schema:domainIncludes :StringSchema ;
                                         rdfs:range xsd:string .
                                         
 <https://www.w3.org/2019/wot/json-schema#contentMediaType> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "contentMediaType" ;
                                            
                                            rdfs:comment "Specifies the MIME type (e.g., image/png, audio/mpeg) of the contents of a string value, as described in RFC 2046."@en ;
                                         
                                         schema:domainIncludes :StringSchema ;
                                         rdfs:range xsd:string .                                                                                     

                                            
###  https://www.w3.org/2019/wot/json-schema#writeOnly

<https://www.w3.org/2019/wot/json-schema#writeOnly> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "writeOnly" ;
                                            
                                            rdfs:comment "Boolean value that is a hint to indicate whether a property interaction / value is write only (=true) or not (=false)"@en ;
                                         
                                         schema:domainIncludes :DataSchema ;
                                         rdfs:range xsd:boolean .

                                            
###  https://www.w3.org/2019/wot/json-schema#description

<https://www.w3.org/2019/wot/json-schema#propertyName> rdf:type owl:DatatypeProperty ;
                                            
                                            rdfs:label "propertyName" ;
                                            
                                            rdfs:comment "Used to store the indexing name in the parent object when this schema appears as a property of an object schema."@en ;
                                         
                                         schema:domainIncludes :DataSchema ;
                                         rdfs:range xsd:string .

#################################################################
#
#    Classes
#
#################################################################


###  https://www.w3.org/2019/wot/json-schema#ArraySchema

<https://www.w3.org/2019/wot/json-schema#ArraySchema> rdf:type owl:Class ;
                                               
                                               rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                               
                                               rdfs:comment "Metadata describing data of type array. This subclass is indicated by the value <code>array</code> assigned to <code>type</code> in <code>DataSchema</code> instances."@en .



###  https://www.w3.org/2019/wot/json-schema#BooleanSchema

<https://www.w3.org/2019/wot/json-schema#BooleanSchema> rdf:type owl:Class ;
                                                 
                                                 rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                                 
                                                 rdfs:comment "Metadata describing data of type <code>boolean</code>. This subclass is indicated by the value <code>boolean</code> assigned to <code>type</code> in <code>DataSchema</code> instances."@en .



###  https://www.w3.org/2019/wot/json-schema#NullSchema

<https://www.w3.org/2019/wot/json-schema#NullSchema> rdf:type owl:Class ;
                                                 
                                                 rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                                 
                                                 rdfs:comment "Metadata describing data of type <code>null</code>. This subclass is indicated by the value <code>null</code> assigned to <code>type</code> in <code>DataSchema</code> instances. This Subclass describes only one acceptable value, namely <code>null</code>. It is important to note that <code>null</code> does not mean the absence of a value. It is analogous to <code>null</code> in JavaScript, <code>None</code> in Python, <code>null</code> in Java and <code>nil</code> in Ruby programming languages. It can be used as part of a <code>oneOf</code> declaration, where it is used to indicate, that the data can also be <code>null</code>."@en .



###  https://www.w3.org/2019/wot/json-schema#DataSchema

<https://www.w3.org/2019/wot/json-schema#DataSchema> rdf:type owl:Class ;
                                                
                                              rdfs:comment "Metadata that describes the data format used. It can be used for validation." .



###  https://www.w3.org/2019/wot/json-schema#IntegerSchema

<https://www.w3.org/2019/wot/json-schema#IntegerSchema> rdf:type owl:Class ;
                                                 
                                                 rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                                 
                                                 rdfs:comment "Metadata describing data of type <code>integer</code>. This subclass is indicated by the value <code>integer</code> assigned to <code>type</code> in <code>DataSchema</code> instances."@en .



###  https://www.w3.org/2019/wot/json-schema#NumberSchema

<https://www.w3.org/2019/wot/json-schema#NumberSchema> rdf:type owl:Class ;
                                                
                                                rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                                
                                                rdfs:comment "Metadata describing data of type <code>number</code>. This subclass is indicated by the value <code>number</code> assigned to <code>type</code> in <code>DataSchema</code> instances."@en .



###  https://www.w3.org/2019/wot/json-schema#ObjectSchema

<https://www.w3.org/2019/wot/json-schema#ObjectSchema> rdf:type owl:Class ;
                                                
                                                rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                                
                                                rdfs:comment "Metadata describing data of type <code>object</code>. This subclass is indicated by the value <code>object</code> assigned to <code>type</code> in <code>DataSchema</code> instances."@en .



###  https://www.w3.org/2019/wot/json-schema#StringSchema

<https://www.w3.org/2019/wot/json-schema#StringSchema> rdf:type owl:Class ;
                                                
                                                rdfs:subClassOf <https://www.w3.org/2019/wot/json-schema#DataSchema> ;
                                                
                                                rdfs:comment "Metadata describing data of type <code>string</code>. This subclass is indicated by the value <code>string</code> assigned to <code>type</code> in <code>DataSchema</code> instances."@en .




###  Generated by the OWL API (version 3.4.2) http://owlapi.sourceforge.net

