-
Notifications
You must be signed in to change notification settings - Fork 63
/
hctl.ttl
122 lines (102 loc) · 7.27 KB
/
hctl.ttl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
@prefix : <https://www.w3.org/2019/wot/hypermedia#> .
@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 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/hypermedia#> rdf:type owl:Ontology ;
rdfs:comment "Ontology designed to provide an RDF representation of Hypermedia Controls, in particular links and forms." ;
rdfs:label "Hypermedia Controls Ontology" ;
vann:preferredNamespacePrefix "hctl" ;
vann:preferredNamespaceUri "https://www.w3.org/2019/wot/hypermedia#" ;
dcterms:creator <https://vcharpenay.link/#me> .
:hintsAtMediaType rdf:type owl:DatatypeProperty ;
rdfs:comment "Target attribute providing a hint indicating what the media type [IANA-MEDIA-TYPES] of the result of dereferencing the link should be." ;
rdfs:label "hintsAtMediaType" ;
schema:domainIncludes :Link ;
schema:rangeIncludes schema:Text .
:forContentType rdf:type owl:DatatypeProperty ;
rdfs:label "forContentType" ;
rdfs:comment "Assign a content type based on a media type [[IANA-MEDIA-TYPES]] (e.g., 'text/plain') and potential parameters (e.g., 'charset=utf-8') for the media type."@en ;
schema:domainIncludes :Form ;
schema:rangeIncludes schema:Text .
:forContentCoding rdf:type owl:DatatypeProperty ;
rdfs:label "forContentCoding" ;
rdfs:comment "Content coding values indicate an encoding transformation that has been or can be applied to a representation. Content codings are primarily used to allow a representation to be compressed or otherwise usefully transformed without losing the identity of its underlying media type and without loss of information. Examples of content coding include \"gzip\", \"deflate\", etc. "@en ;
schema:domainIncludes :Form ;
schema:rangeIncludes schema:Text .
:forSubProtocol rdf:type owl:DatatypeProperty ;
rdfs:label "forSubProtocol" ;
rdfs:comment """Indicates the exact mechanism by which an interaction will be accomplished for a given protocol when there are multiple options.
For example, for HTTP and Events, it indicates which of several available mechanisms should be used for asynchronous notifications such as long polling, websub (also see https://www.w3.org/TR/websub/), or server sent events (also see https://www.w3.org/TR/eventsource/). Please note that there is no restriction on the sub-protocol selection and other mechanisms can also be announced by this subprotocol term."""@en ;
schema:domainIncludes :Form ;
schema:rangeIncludes schema:Text .
:returns rdf:type owl:ObjectProperty ;
rdfs:label "returns" ;
rdfs:comment """This optional term can be used if, e.g., the output communication metadata differ from input metadata (e.g., output contentType differ from the
input contentType). The response name contains metadata that is only valid for the reponse messages."""@en ;
schema:domainIncludes :Form ;
schema:rangeIncludes :ExpectedResponse .
:additionalReturns rdf:type owl:ObjectProperty ;
rdfs:label "additionalReturns" ;
rdfs:comment """This optional term can be used if additional expected responses
are possible, e.g. for error reporting. Each additional response needs to be
distinguished from others in some way (for example, by specifying
a protocol-specific response code), and may also have its own data schema."""@en ;
schema:domainIncludes :Form ;
schema:rangeIncludes :AdditionalExpectedResponse .
:hasAdditionalOutputSchema rdf:type owl:ObjectProperty ;
rdfs:label "hasAdditionalOutputSchema" ;
rdfs:comment """This optional term can be used to define a data schema for
an additional response if it differs from the default
output data schema.
Rather than a <code>DataSchema</code> object, the
name of a previous definition given in a
<code>schemaDefinitions</code> map must be used."""@en ;
schema:domainIncludes :AdditionalExpectedResponse ;
rdfs:isDefinedBy : .
:isSuccess rdf:type owl:DatatypeProperty ;
rdfs:label "isSuccess" ;
rdfs:comment "Signals if the additional response should not be considered an error."@en ;
schema:domainIncludes :AdditionalExpectedResponse ;
schema:rangeIncludes schema:Boolean ;
rdfs:isDefinedBy : .
:hasAnchor rdf:type owl:DatatypeProperty ;
rdfs:comment "By default, the context, or anchor, of a link conveyed in the Link header field is the URL of the representation it is associated with, as defined in RFC7231, Section 3.1.4.1, and is serialized as a URI." ;
rdfs:label "hasAnchor" ;
schema:domainIncludes :Link .
:hasTarget rdf:type owl:DatatypeProperty ;
rdfs:comment "target IRI of a link or submission target of a form." ;
rdfs:label "hasTarget" ;
schema:domainIncludes :Link, :Form .
:hasRelationType rdf:type owl:DatatypeProperty ;
rdfs:comment "A link relation type identifies the semantics of a link." ;
rdfs:label "hasRelationType" ;
schema:domainIncludes :Link .
:hasSizes rdf:type owl:DatatypeProperty ;
rdfs:comment "Target attribute that specifies one or more sizes for the referenced icon. Only applicable for relation type 'icon'. The value pattern follows {Height}x{Width} (e.g., \"16x16\", \"16x16 32x32\")" ;
rdfs:label "hasSizes" ;
schema:domainIncludes :Link .
:hasHreflang rdf:type owl:DatatypeProperty ;
rdfs:comment "The hreflang attribute specifies the language of a linked document. The value of this must be a valid language tag [[BCP47]]." ;
rdfs:label "hasHreflang" ;
schema:domainIncludes :Link .
:hasOperationType rdf:type owl:ObjectProperty ;
rdfs:comment "Indicates the semantic intention of performing the operation(s) described by the form." ;
rdfs:label "hasOperationType" ;
schema:domainIncludes :Form .
:Link rdf:type rdfs:Class, owl:Class ;
rdfs:comment "A link can be viewed as a statement of the form \"<b><em>link context</em></b> has a <b><em>relation type</em></b> resource at <b><em>link target</em></b>\", where the optional <b><em>target attributes</em></b> may further describe the resource."@en ;
rdfs:label "Link" .
:Form rdf:type rdfs:Class, owl:Class ;
rdfs:label "Form" ;
rdfs:comment "A form can be viewed as a statement of \"To perform an <b><em>operation type</em></b> operation on <b><em>form context</b></em>, make a <b><em>request method</b></em> request to <b><em>submission target</b></em>\" where the optional <b><em>form fields</b></em> may further describe the required request. In Thing Descriptions, the <b><em>form context</b></em> is the surrounding Object, such as Properties, Actions, and Events or the Thing itself for meta-interactions."@en .
:ExpectedResponse rdf:type rdfs:Class, owl:Class ;
rdfs:label "ExpectedResponse" ;
rdfs:comment "Communication metadata describing the expected response message for the primary response."@en .
:AdditionalExpectedResponse rdf:type rdfs:Class, owl:Class ;
rdfs:label "AdditionalExpectedResponse" ;
rdfs:comment "Communication metadata describing the expected response message for additional responses."@en .