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#>
PREFIX http: <http://www.w3.org/2011/http#>
PREFIX linkml: <https://w3id.org/linkml/>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX content: <http://www.w3.org/2011/content#>
PREFIX pav: <http://purl.org/pav/>
PREFIX schema: <http://schema.org/>
PREFIX sh: <http://www.w3.org/ns/shacl#>
PREFIX vann: <http://purl.org/vocab/vann/>

<http://www.w3.org/2011/http> a owl:Ontology ;
  rdfs:label "HTTP in RDF"@en ;
  rdfs:comment "A namespace for describing HTTP messages (http://www.w3.org/Protocols/rfc2616/rfc2616.html)"@en ;
  rdfs:seeAlso <http://www.w3.org/TR/Content-in-RDF/> , <http://www.w3.org/WAI/intro/earl> ;
  schema:inLanguage "en" ;
  pav:version "Working Draft 29 April 2011" ;
  rdfs:isDefinedBy <http://www.w3.org/TR/HTTP-in-RDF/> ;
  vann:preferredNamespacePrefix "http" ;
  vann:preferredNamespaceUri "http://www.w3.org/2011/http#"^^xsd:anyURI ;
  sh:declare [
    sh:prefix "http" ;
    sh:namespace "http://www.w3.org/2011/http#"^^xsd:anyURI
  ] , [
    sh:prefix "linkml" ;
    sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI
  ] , [
    sh:prefix "dcterms" ;
    sh:namespace "http://purl.org/dc/terms/"^^xsd:anyURI
  ] , [
    sh:prefix "rdfs" ;
    sh:namespace "http://www.w3.org/2000/01/rdf-schema#"^^xsd:anyURI
  ] , [
    sh:prefix "xsd" ;
    sh:namespace "http://www.w3.org/2001/XMLSchema#"^^xsd:anyURI
  ] , [
    sh:prefix "owl" ;
    sh:namespace "http://www.w3.org/2002/07/owl#"^^xsd:anyURI
  ] , [
    sh:prefix "content" ;
    sh:namespace "http://www.w3.org/2011/content#"^^xsd:anyURI
  ] .

http:EntityHeader a owl:Class ;
  rdfs:label "Entity Header"@en ;
  rdfs:comment "An entity header in an HTTP message."@en ;
  rdfs:subClassOf http:MessageHeader .

http:Method a owl:Class ;
  rdfs:label "Method"@en ;
  rdfs:comment "The HTTP method used for the request."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> .

http:Parameter a owl:Class ;
  rdfs:label "Parameter"@en ;
  rdfs:comment "A parameter for a part of a header value."@en ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty http:paramValue ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:paramName ;
    owl:allValuesFrom owl:Thing
  ] .

http:ResponseHeader a owl:Class ;
  rdfs:label "Response Header"@en ;
  rdfs:comment "A header in an HTTP response message."@en ;
  rdfs:subClassOf http:MessageHeader .

http:Connection a owl:Class ;
  rdfs:label "Connection"@en ;
  rdfs:comment "A connection used for HTTP transfer."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty http:requests ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:connectionAuthority ;
    owl:allValuesFrom owl:Thing
  ] .

http:RequestHeader a owl:Class ;
  rdfs:label "Request Header"@en ;
  rdfs:comment "A header in an HTTP request message."@en ;
  rdfs:subClassOf http:MessageHeader .

http:Message a owl:Class ;
  rdfs:label "Message"@en ;
  rdfs:comment "An HTTP message."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty http:headers ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:httpVersion ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:body ;
    owl:allValuesFrom content:ContentAsBase64
  ] .

http:StatusCode a owl:Class ;
  rdfs:label "Status code"@en ;
  rdfs:comment "The status code of an HTTP response."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty http:statusCodeNumber ;
    owl:allValuesFrom xsd:int
  ] .

http:Request a owl:Class ;
  rdfs:label "Request"@en ;
  rdfs:comment "An HTTP request."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:subClassOf http:Message , [
    a owl:Restriction ;
    owl:onProperty http:requestURI ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:methodName ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:mthd ;
    owl:allValuesFrom http:Method
  ] , [
    a owl:Restriction ;
    owl:onProperty http:resp ;
    owl:allValuesFrom http:Response
  ] .

http:HeaderElement a owl:Class ;
  rdfs:label "Header Element"@en ;
  rdfs:comment "A part of a deconstructed header value."@en ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty http:params ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:elementName ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:elementValue ;
    owl:allValuesFrom owl:Thing
  ] .

http:MessageHeader a owl:Class ;
  rdfs:label "Message Header"@en ;
  rdfs:comment "A header in an HTTP message."@en ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty http:hdrName ;
    owl:allValuesFrom http:HeaderName
  ] , [
    a owl:Restriction ;
    owl:onProperty http:fieldValue ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:fieldName ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:headerElements ;
    owl:allValuesFrom owl:Thing
  ] .

http:GeneralHeader a owl:Class ;
  rdfs:label "General Header"@en ;
  rdfs:comment "A general header in an HTTP message."@en ;
  rdfs:subClassOf http:MessageHeader .

http:Response a owl:Class ;
  rdfs:label "Response"@en ;
  rdfs:comment "An HTTP response."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:subClassOf http:Message , [
    a owl:Restriction ;
    owl:onProperty http:sc ;
    owl:allValuesFrom http:StatusCode
  ] , [
    a owl:Restriction ;
    owl:onProperty http:reasonPhrase ;
    owl:allValuesFrom owl:Thing
  ] , [
    a owl:Restriction ;
    owl:onProperty http:statusCodeValue ;
    owl:allValuesFrom owl:Thing
  ] .

http:HeaderName a owl:Class ;
  rdfs:label "Header Name"@en ;
  rdfs:comment "A header name."@en .

content:ContentAsBase64 a owl:Class .

http:absoluteURI a owl:ObjectProperty ;
  rdfs:label "Absolute URI"@en ;
  rdfs:comment "The absolute request URI."@en ;
  rdfs:subPropertyOf http:requestURI .

http:authority a owl:ObjectProperty ;
  rdfs:label "Authority"@en ;
  rdfs:comment "The authority sort of request URI."@en ;
  rdfs:subPropertyOf http:requestURI .

http:absolutePath a owl:ObjectProperty ;
  rdfs:label "Absolute path"@en ;
  rdfs:comment "The absolute path sort of request URI."@en ;
  rdfs:subPropertyOf http:requestURI .

http:requestURI a owl:ObjectProperty ;
  rdfs:label "Request URI"@en ;
  rdfs:comment "The request URI of an HTTP request."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Request .

http:hdrName a owl:ObjectProperty ;
  rdfs:label "Header name"@en ;
  rdfs:comment "The name of an HTTP header."@en ;
  rdfs:range http:HeaderName ;
  rdfs:domain http:MessageHeader .

http:headers a owl:ObjectProperty ;
  rdfs:label "Headers"@en ;
  rdfs:comment "The headers in an HTTP message."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Message .

http:paramValue a owl:ObjectProperty ;
  rdfs:label "Parameter value"@en ;
  rdfs:comment "The value of a parameter in a part of a deconstructed HTTP header value."@en ;
  rdfs:domain http:Parameter .

http:fieldValue a owl:ObjectProperty ;
  rdfs:label "Field value"@en ;
  rdfs:comment "The value of an HTTP header field."@en ;
  rdfs:domain http:MessageHeader .

http:sc a owl:ObjectProperty ;
  rdfs:label "Status code"@en ;
  rdfs:comment "The status code of an HTTP response."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:range http:StatusCode ;
  rdfs:domain http:Response .

http:params a owl:ObjectProperty ;
  rdfs:label "Header parameters"@en ;
  rdfs:comment "The parameters in a part of a deconstructed HTTP header value."@en ;
  rdfs:domain http:HeaderElement .

http:fieldName a owl:ObjectProperty ;
  rdfs:label "Field name"@en ;
  rdfs:comment "The name of an HTTP header field."@en ;
  rdfs:domain http:MessageHeader .

http:reasonPhrase a owl:ObjectProperty ;
  rdfs:label "Reason phrase"@en ;
  rdfs:comment "The reason phrase (status text) of an HTTP response."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Response .

http:elementName a owl:ObjectProperty ;
  rdfs:label "Header element name"@en ;
  rdfs:comment "The name of a header element."@en ;
  rdfs:domain http:HeaderElement .

http:requests a owl:ObjectProperty ;
  rdfs:label "Requests"@en ;
  rdfs:comment "The HTTP requests made via a connection."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Connection .

http:paramName a owl:ObjectProperty ;
  rdfs:label "Parameter name"@en ;
  rdfs:comment "The name of a parameter in a part of a deconstructed HTTP header value."@en ;
  rdfs:domain http:Parameter .

http:statusCodeValue a owl:ObjectProperty ;
  rdfs:label "Status code"@en ;
  rdfs:comment "The status code value of an HTTP response."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Response .

http:httpVersion a owl:ObjectProperty ;
  rdfs:label "HTTP version"@en ;
  rdfs:comment "The HTTP version of an HTTP message."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Message .

http:statusCodeNumber a owl:ObjectProperty ;
  rdfs:label "Status code"@en ;
  rdfs:comment "The status code number."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:range xsd:int ;
  rdfs:domain http:StatusCode ;
  rdfs:subPropertyOf dcterms:identifier .

http:elementValue a owl:ObjectProperty ;
  rdfs:label "Header element value"@en ;
  rdfs:comment "The value of a header element."@en ;
  rdfs:domain http:HeaderElement .

http:methodName a owl:ObjectProperty ;
  rdfs:label "Method name"@en ;
  rdfs:comment "The HTTP method name used for the HTTP request."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:domain http:Request .

http:connectionAuthority a owl:ObjectProperty ;
  rdfs:label "Connection authority"@en ;
  rdfs:comment "The authority of a connection used for the HTTP transfer."@en ;
  rdfs:domain http:Connection .

http:headerElements a owl:ObjectProperty ;
  rdfs:label "Header elements"@en ;
  rdfs:comment "The deconstructed parts of an HTTP header value."@en ;
  rdfs:domain http:MessageHeader .

http:body a owl:ObjectProperty ;
  rdfs:label "Entity Body"@en ;
  rdfs:comment "The entity body of an HTTP message."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:range content:ContentAsBase64 ;
  rdfs:domain http:Message .

http:mthd a owl:ObjectProperty ;
  rdfs:label "Method"@en ;
  rdfs:comment "The HTTP method used for the HTTP request."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:range http:Method ;
  rdfs:domain http:Request .

http:resp a owl:ObjectProperty ;
  rdfs:label "Response"@en ;
  rdfs:comment "The HTTP response sent in answer to an HTTP request."@en ;
  rdfs:isDefinedBy <http://www.ietf.org/rfc/rfc2616.txt> ;
  rdfs:range http:Response ;
  rdfs:domain http:Request .

dcterms:identifier a owl:ObjectProperty .

schema:inLanguage a owl:AnnotationProperty .

pav:version a owl:AnnotationProperty .

vann:preferredNamespacePrefix a owl:AnnotationProperty .

vann:preferredNamespaceUri a owl:AnnotationProperty .

sh:declare a owl:AnnotationProperty .

sh:prefix a owl:AnnotationProperty .

sh:namespace a owl:AnnotationProperty .
