rdf-vocab 2.0.2 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rdf/vocab.rb +12 -1
- data/lib/rdf/vocab/cc.rb +1 -1
- data/lib/rdf/vocab/datacite.rb +75 -65
- data/lib/rdf/vocab/disco.rb +56 -56
- data/lib/rdf/vocab/ebucore.rb +13 -13
- data/lib/rdf/vocab/extensions.rb +2 -2
- data/lib/rdf/vocab/ldp.rb +4 -0
- data/lib/rdf/vocab/oa.rb +267 -364
- data/lib/rdf/vocab/org.rb +1 -1
- data/lib/rdf/vocab/premis.rb +1 -1
- data/lib/rdf/vocab/schema.rb +3888 -1057
- data/spec/matchers.rb +27 -0
- data/spec/vocab_spec.rb +22 -3
- metadata +5 -6
data/lib/rdf/vocab/ebucore.rb
CHANGED
@@ -63,18 +63,18 @@ module RDF::Vocab
|
|
63
63
|
subClassOf: "ebucore:Rating".freeze,
|
64
64
|
type: "rdfs:Class".freeze
|
65
65
|
term :AudioChannel,
|
66
|
-
comment: %(An audioChannel represents a single sequence of audio samples. It
|
67
|
-
is sub-divided in the time domain into audioBlocks, which is must contain at
|
68
|
-
least one of. The typeDefintion of the audioChannel format specifies the type of
|
69
|
-
audio it is describing, and also determines which parameters are used within its
|
66
|
+
comment: %(An audioChannel represents a single sequence of audio samples. It
|
67
|
+
is sub-divided in the time domain into audioBlocks, which is must contain at
|
68
|
+
least one of. The typeDefintion of the audioChannel format specifies the type of
|
69
|
+
audio it is describing, and also determines which parameters are used within its
|
70
70
|
audioBlock children.).freeze,
|
71
71
|
label: "Audio channel".freeze,
|
72
72
|
subClassOf: "ebucore:Essence".freeze,
|
73
73
|
type: "rdfs:Class".freeze
|
74
74
|
term :AudioContent,
|
75
|
-
comment: %(An audioContent defines one component of a programme \(e.g. background
|
76
|
-
music\), its association with an audioGroup \(e.g. a 2.0 audioPackFormat of
|
77
|
-
audioChannelFormats for stereo reproduction\), its association with an
|
75
|
+
comment: %(An audioContent defines one component of a programme \(e.g. background
|
76
|
+
music\), its association with an audioGroup \(e.g. a 2.0 audioPackFormat of
|
77
|
+
audioChannelFormats for stereo reproduction\), its association with an
|
78
78
|
audioStreamFormat, and its set of loudness parameters.).freeze,
|
79
79
|
label: "Audio content".freeze,
|
80
80
|
subClassOf: "ebucore:AudioProgramme".freeze,
|
@@ -103,8 +103,8 @@ module RDF::Vocab
|
|
103
103
|
subClassOf: "ebucore:AudioFormat".freeze,
|
104
104
|
type: "rdfs:Class".freeze
|
105
105
|
term :AudioProgramme,
|
106
|
-
comment: %(A set of one or more audioContent that derive from the same material,
|
107
|
-
i.e. an audioMultiplex, and the definition of its multiplexed audioContents \(e.g.
|
106
|
+
comment: %(A set of one or more audioContent that derive from the same material,
|
107
|
+
i.e. an audioMultiplex, and the definition of its multiplexed audioContents \(e.g.
|
108
108
|
foreground and commentary, background music\).).freeze,
|
109
109
|
label: "Audio programme".freeze,
|
110
110
|
subClassOf: "ebucore:Programme".freeze,
|
@@ -120,10 +120,10 @@ module RDF::Vocab
|
|
120
120
|
subClassOf: "ebucore:AudioFormat".freeze,
|
121
121
|
type: "rdfs:Class".freeze
|
122
122
|
term :AudioTrack,
|
123
|
-
comment: [%(An audioTrack is the basic audio data container of a medium. Attribute is
|
124
|
-
an unambiguous reference to this container in a given medium.).freeze, %(An audioTrack object defines a component of an audioStream.
|
125
|
-
A single set of samples or data in the storage medium.).freeze, %(Represents a physical container or carrier to hold an audio stream. This
|
126
|
-
should be usually defined by many attributes such as ID, format \(e.g. 48 kHz/24
|
123
|
+
comment: [%(An audioTrack is the basic audio data container of a medium. Attribute is
|
124
|
+
an unambiguous reference to this container in a given medium.).freeze, %(An audioTrack object defines a component of an audioStream.
|
125
|
+
A single set of samples or data in the storage medium.).freeze, %(Represents a physical container or carrier to hold an audio stream. This
|
126
|
+
should be usually defined by many attributes such as ID, format \(e.g. 48 kHz/24
|
127
127
|
bits\), linkage information \(e.g. odd/even\)…).freeze],
|
128
128
|
label: "Audio track".freeze,
|
129
129
|
subClassOf: "ebucore:Track".freeze,
|
data/lib/rdf/vocab/extensions.rb
CHANGED
@@ -400,7 +400,7 @@ module RDF
|
|
400
400
|
uncategorized = {}
|
401
401
|
graph.query(predicate: RDF.type) do |statement|
|
402
402
|
# Only serialize statements that are in the defined vocabulary
|
403
|
-
next unless statement.subject.start_with?(self.to_uri)
|
403
|
+
next unless statement.subject.uri? && statement.subject.start_with?(self.to_uri)
|
404
404
|
case statement.object
|
405
405
|
when RDF.Property,
|
406
406
|
RDF::OWL.AnnotationProperty,
|
@@ -505,4 +505,4 @@ module RDF
|
|
505
505
|
# TODO: in Ruby 2.0, `prepend` seems to be a private method of the class singleton; works okay elsewhere.
|
506
506
|
Format.singleton_class.send(:prepend, VocabFormatExtensions)
|
507
507
|
end
|
508
|
-
end
|
508
|
+
end
|
data/lib/rdf/vocab/ldp.rb
CHANGED
@@ -170,8 +170,12 @@ module RDF::Vocab
|
|
170
170
|
# Extra definitions
|
171
171
|
term :"",
|
172
172
|
comment: %(This ontology provides an informal representation of the concepts and terms as defined in the LDP specification. Consult the LDP specification for normative reference.).freeze,
|
173
|
+
:"dc:created" => %(2015-02-26).freeze,
|
173
174
|
:"dc:description" => %(Vocabulary URIs defined in the Linked Data Platform \(LDP\) namespace.).freeze,
|
175
|
+
:"dc:publisher" => %(http://www.w3.org/data#W3C).freeze,
|
174
176
|
:"dc:title" => %(The W3C Linked Data Platform \(LDP\) Vocabulary).freeze,
|
177
|
+
:"http://purl.org/vocab/vann/preferredNamespacePrefix" => %(ldp).freeze,
|
178
|
+
:"http://purl.org/vocab/vann/preferredNamespaceUri" => %(http://www.w3.org/ns/ldp#).freeze,
|
175
179
|
label: "W3C Linked Data Platform (LDP)".freeze,
|
176
180
|
:"rdfs:seeAlso" => [%(http://www.w3.org/2011/09/LinkedData/).freeze, %(http://www.w3.org/2012/ldp).freeze, %(http://www.w3.org/TR/ldp-paging/).freeze, %(http://www.w3.org/TR/ldp-ucr/).freeze, %(http://www.w3.org/TR/ldp/).freeze],
|
177
181
|
type: "owl:Ontology".freeze
|
data/lib/rdf/vocab/oa.rb
CHANGED
@@ -11,523 +11,426 @@ module RDF::Vocab
|
|
11
11
|
|
12
12
|
# Class definitions
|
13
13
|
term :Annotation,
|
14
|
-
comment: %(
|
15
|
-
|
16
|
-
This "aboutness" may be further clarified or extended to notions such as classifying or identifying with oa:motivatedBy.).freeze,
|
14
|
+
comment: %(The class for Web Annotations.).freeze,
|
17
15
|
label: "Annotation".freeze,
|
18
16
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
19
|
-
type: "
|
17
|
+
type: "rdfs:Class".freeze
|
20
18
|
term :Choice,
|
21
|
-
comment: %(A
|
22
|
-
|
23
|
-
oa:Choice can be used as the object of the object of the oa:hasBody, oa:hasTarget, oa:hasSelector, oa:hasState, oa:styledBy and oa:hasScope relationships,
|
24
|
-
|
25
|
-
There MUST be 1 or more oa:item relationships for each oa:Choice.
|
26
|
-
|
27
|
-
There SHOULD be exactly 1 default relationship for each Choice.).freeze,
|
19
|
+
comment: %(A subClass of as:OrderedCollection that conveys to a consuming application that it should select one of the resources in the as:items list to use, rather than all of them. This is typically used to provide a choice of resources to render to the user, based on further supplied properties. If the consuming application cannot determine the user's preference, then it should use the first in the list.).freeze,
|
28
20
|
label: "Choice".freeze,
|
29
21
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
30
|
-
subClassOf: "
|
31
|
-
type: "
|
22
|
+
subClassOf: "http://www.w3.org/ns/activitystreams#OrderedCollection".freeze,
|
23
|
+
type: "rdfs:Class".freeze
|
32
24
|
term :Composite,
|
33
|
-
comment: %(A
|
34
|
-
|
35
|
-
oa:Composite can be used as the object of the object of the oa:hasBody, oa:hasTarget, oa:hasSelector, oa:hasState, oa:styledBy and oa:hasScope relationships,
|
36
|
-
|
37
|
-
There MUST be 2 or more oa:item relationships for each oa:Composite.).freeze,
|
25
|
+
comment: %(A subClass of as:OrderedCollection that conveys to a consuming application that it should use all of the resources in the as:items list, but that order is not important. This class is at-risk.).freeze,
|
38
26
|
label: "Composite".freeze,
|
39
27
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
40
|
-
subClassOf: "
|
41
|
-
type: "
|
28
|
+
subClassOf: "http://www.w3.org/ns/activitystreams#OrderedCollection".freeze,
|
29
|
+
type: "rdfs:Class".freeze
|
30
|
+
term :CssSelector,
|
31
|
+
comment: %(A CssSelector describes a Segment of interest in a representation that conforms to the Document Object Model through the use of the CSS selector specification.).freeze,
|
32
|
+
label: "CssSelector".freeze,
|
33
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
34
|
+
subClassOf: "oa:Selector".freeze,
|
35
|
+
type: "rdfs:Class".freeze
|
42
36
|
term :CssStyle,
|
43
|
-
comment: %(A resource which describes styles for resources participating in the Annotation using CSS.
|
44
|
-
|
45
|
-
Specific Resources MAY be assigned a CSS style class using oa:styleClass.
|
46
|
-
|
47
|
-
The CSS resource MAY have its own dereferencable URI that provides the information. For example, "Style1" in the diagram below might actually have the URI "http://www.example.com/styles/annotations.css". It MAY be embedded within the Annotation using the inline constructions described in Embedding Resources.).freeze,
|
37
|
+
comment: %(A resource which describes styles for resources participating in the Annotation using CSS.).freeze,
|
48
38
|
label: "CssStyle".freeze,
|
49
39
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
50
40
|
subClassOf: "oa:Style".freeze,
|
51
|
-
type: "
|
41
|
+
type: "rdfs:Class".freeze
|
52
42
|
term :DataPositionSelector,
|
53
|
-
comment: %(
|
54
|
-
|
55
|
-
Each DataPositionSelector MUST have exactly 1 oa:start property.
|
56
|
-
|
57
|
-
Each TextPositionSelector MUST have exactly 1 oa:end property.
|
58
|
-
|
59
|
-
See oa:TextPositionSelector for selection at normalized character level rather than bytestream level.).freeze,
|
43
|
+
comment: %(DataPositionSelector describes a range of data by recording the start and end positions of the selection in the stream. Position 0 would be immediately before the first byte, position 1 would be immediately before the second byte, and so on. The start byte is thus included in the list, but the end byte is not.).freeze,
|
60
44
|
label: "DataPositionSelector".freeze,
|
61
45
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
62
46
|
subClassOf: "oa:Selector".freeze,
|
63
|
-
type: "
|
47
|
+
type: "rdfs:Class".freeze
|
48
|
+
term :Direction,
|
49
|
+
comment: %(A class to encapsulate the different text directions that a textual resource might take. It is not used directly in the Annotation Model, only its three instances.).freeze,
|
50
|
+
label: "Direction".freeze,
|
51
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
52
|
+
type: "rdfs:Class".freeze
|
64
53
|
term :FragmentSelector,
|
65
|
-
comment: %(
|
66
|
-
|
67
|
-
It is RECOMMENDED to use oa:FragmentSelector as the selector on a Specific Resource rather than annotating the fragment URI directly, in order to improve discoverability of annotation on the Source.
|
68
|
-
|
69
|
-
The oa:FragmentSelector MUST have exactly 1 rdf:value property, containing the fragment identifier component of a URI that describes the segment of interest in the resource, excluding the initial "#".
|
70
|
-
|
71
|
-
The Fragment Selector SHOULD have a dcterms:conformsTo relationship with the object being the specification that defines the syntax of the fragment, for instance <http://tools.ietf.org/rfc/rfc3236> for HTML fragments. ).freeze,
|
54
|
+
comment: %(The FragmentSelector class is used to record the segment of a representation using the IRI fragment specification defined by the representation's media type.).freeze,
|
72
55
|
label: "FragmentSelector".freeze,
|
73
56
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
74
57
|
subClassOf: "oa:Selector".freeze,
|
75
|
-
type: "
|
58
|
+
type: "rdfs:Class".freeze
|
76
59
|
term :HttpRequestState,
|
77
|
-
comment: %(
|
78
|
-
|
79
|
-
There MUST be exactly 1 rdf:value property per HttpRequestState, containing HTTP request headers as a single, complete string, exactly as they would appear in an HTTP request. ).freeze,
|
60
|
+
comment: %(The HttpRequestState class is used to record the HTTP request headers that a client SHOULD use to request the correct representation from the resource. ).freeze,
|
80
61
|
label: "HttpRequestState".freeze,
|
81
62
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
82
63
|
subClassOf: "oa:State".freeze,
|
83
|
-
type: "
|
64
|
+
type: "rdfs:Class".freeze
|
65
|
+
term :Independents,
|
66
|
+
comment: %(A subClass of as:OrderedCollection that conveys to a consuming application that each of the resources in the as:items list are independently associated with all of the other bodies or targets. This class is at-risk.).freeze,
|
67
|
+
label: "Independents".freeze,
|
68
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
69
|
+
subClassOf: "http://www.w3.org/ns/activitystreams#OrderedCollection".freeze,
|
70
|
+
type: "rdfs:Class".freeze
|
84
71
|
term :List,
|
85
|
-
comment: %(A
|
86
|
-
|
87
|
-
oa:List can be used as the object of the object of the oa:hasBody, oa:hasTarget, oa:hasSelector, oa:hasState, oa:styledBy and oa:hasScope relationships,
|
88
|
-
|
89
|
-
There MUST be 2 or more oa:item relationships for each oa:List, with their order defined using the rdf:List construct of rdf:first/rdf:rest/rdf:nil.
|
90
|
-
|
91
|
-
All the elements of the list should also be declared using oa:item, and each of the oa:items should appear at least once in the list.).freeze,
|
72
|
+
comment: %(A subClass of as:OrderedCollection that conveys to a consuming application that it should use each of the resources in the as:items list, and that their order is important. This class is at-risk.).freeze,
|
92
73
|
label: "List".freeze,
|
93
74
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
94
|
-
subClassOf: "
|
95
|
-
type: "
|
75
|
+
subClassOf: "http://www.w3.org/ns/activitystreams#OrderedCollection".freeze,
|
76
|
+
type: "rdfs:Class".freeze
|
96
77
|
term :Motivation,
|
97
|
-
comment: %(The Motivation
|
98
|
-
|
99
|
-
Each Annotation SHOULD have at least one oa:motivatedBy relationship to an instance of oa:Motivation, which is a subClass of skos:Concept.).freeze,
|
78
|
+
comment: %(The Motivation class is used to record the user's intent or motivation for the creation of the Annotation, or the inclusion of the body or target, that it is associated with.).freeze,
|
100
79
|
label: "Motivation".freeze,
|
101
80
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
102
81
|
subClassOf: "skos:Concept".freeze,
|
103
|
-
type: "
|
82
|
+
type: "rdfs:Class".freeze
|
83
|
+
term :RangeSelector,
|
84
|
+
comment: %(A Range Selector can be used to identify the beginning and the end of the selection by using other Selectors. The selection consists of everything from the beginning of the starting selector through to the beginning of the ending selector, but not including it.).freeze,
|
85
|
+
label: "RangeSelector".freeze,
|
86
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
87
|
+
subClassOf: "oa:Selector".freeze,
|
88
|
+
type: "rdfs:Class".freeze
|
89
|
+
term :ResourceSelection,
|
90
|
+
comment: %(Instances of the ResourceSelection class identify part \(described by an oa:Selector\) of another resource \(referenced with oa:hasSource\), possibly from a particular representation of a resource \(described by an oa:State\). Please note that ResourceSelection is not used directly in the Web Annotation model, but is provided as a separate class for further application profiles to use, separate from oa:SpecificResource which has many Annotation specific features.).freeze,
|
91
|
+
label: "ResourceSelection".freeze,
|
92
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
93
|
+
type: "rdfs:Class".freeze
|
104
94
|
term :Selector,
|
105
|
-
comment: %(A resource which describes the segment of interest in a representation of a Source resource, indicated with oa:hasSelector from the Specific Resource.
|
106
|
-
|
107
|
-
This class is not used directly in Annotations, only its subclasses are.
|
108
|
-
|
109
|
-
The nature of the Selector will be dependent on the type of the representation for which the segment is conveyed. The specific type of selector should be indicated using a subclass of oa:Selector.
|
110
|
-
|
111
|
-
The Specifier's description MAY be conveyed as an external or embedded resource \(cnt:Content\), or as RDF properties within the graph. The description SHOULD use existing standards whenever possible. If the Specifier has an HTTP URI, then its description, and only its description, MUST be returned when the URI is dereferenced.).freeze,
|
95
|
+
comment: %(A resource which describes the segment of interest in a representation of a Source resource, indicated with oa:hasSelector from the Specific Resource. This class is not used directly in the Annotation model, only its subclasses.).freeze,
|
112
96
|
label: "Selector".freeze,
|
113
97
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
114
|
-
type: "
|
115
|
-
term :SemanticTag,
|
116
|
-
comment: %(A class assigned to the Body when it is a semantic tagging resource; a URI that identifies a concept, rather than an embedded string, frequently a term from a controlled vocabulary.
|
117
|
-
|
118
|
-
It is NOT RECOMMENDED to use the URI of a document as a Semantic Tag, as it might also be used as a regular Body in other Annotations which would inherit the oa:SemanticTag class assignment. Instead it is more appropriate to create a new URI and link it to the document, using the foaf:page predicate.).freeze,
|
119
|
-
label: "SemanticTag".freeze,
|
120
|
-
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
121
|
-
subClassOf: "oa:Tag".freeze,
|
122
|
-
type: "owl:Class".freeze
|
98
|
+
type: "rdfs:Class".freeze
|
123
99
|
term :SpecificResource,
|
124
|
-
comment: %(
|
125
|
-
|
126
|
-
The Specific Resource takes the role of oa:hasBody or oa:hasTarget in an oa:Annotation instead of the Source resource.
|
127
|
-
|
128
|
-
There MUST be exactly 1 oa:hasSource relationship associated with a Specific Resource.
|
129
|
-
|
130
|
-
There MUST be exactly 0 or 1 oa:hasSelector relationship associated with a Specific Resource.
|
131
|
-
|
132
|
-
There MAY be 0 or 1 oa:hasState relationship for each Specific Resource.
|
133
|
-
|
134
|
-
If the Specific Resource has an HTTP URI, then the exact segment of the Source resource that it identifies, and only the segment, MUST be returned when the URI is dereferenced. For example, if the segment of interest is a region of an image and the Specific Resource has an HTTP URI, then dereferencing it MUST return the selected region of the image as it was at the time when the annotation was created. Typically this would be a burden to support, and thus the Specific Resource SHOULD be identified by a globally unique URI, such as a UUID URN. If it is not considered important to allow other Annotations or systems to refer to the Specific Resource, then a blank node MAY be used instead.).freeze,
|
100
|
+
comment: %(Instances of the SpecificResource class identify part of another resource \(referenced with oa:hasSource\), a particular representation of a resource, a resource with styling hints for renders, or any combination of these, as used within an Annotation.).freeze,
|
135
101
|
label: "SpecificResource".freeze,
|
136
102
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
137
|
-
|
103
|
+
subClassOf: "oa:ResourceSelection".freeze,
|
104
|
+
type: "rdfs:Class".freeze
|
138
105
|
term :State,
|
139
|
-
comment: %(A
|
140
|
-
|
141
|
-
This class is not used directly in Annotations, only its subclasses are.
|
142
|
-
|
143
|
-
The Specifier's description MAY be conveyed as an external or embedded resource \(cnt:Content\), or as RDF properties within the graph. The description SHOULD use existing standards whenever possible. If the Specifier has an HTTP URI, then its description, and only its description, MUST be returned when the URI is dereferenced.).freeze,
|
106
|
+
comment: %(A State describes the intended state of a resource as applied to the particular Annotation, and thus provides the information needed to retrieve the correct representation of that resource.).freeze,
|
144
107
|
label: "State".freeze,
|
145
108
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
146
|
-
type: "
|
109
|
+
type: "rdfs:Class".freeze
|
147
110
|
term :Style,
|
148
|
-
comment: %(A
|
149
|
-
|
150
|
-
This class is not used directly in Annotations, only its subclasses are.
|
151
|
-
|
152
|
-
The content of the resource provides the rendering hints about the Annotation's constituent resources.
|
153
|
-
|
154
|
-
The Specifier's description MAY be conveyed as an external or embedded resource \(cnt:Content\), or as RDF properties within the graph. The description SHOULD use existing standards whenever possible. If the Specifier has an HTTP URI, then its description, and only its description, MUST be returned when the URI is dereferenced.).freeze,
|
111
|
+
comment: %(A Style describes the intended styling of a resource as applied to the particular Annotation, and thus provides the information to ensure that rendering is consistent across implementations.).freeze,
|
155
112
|
label: "Style".freeze,
|
156
113
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
157
|
-
type: "
|
114
|
+
type: "rdfs:Class".freeze
|
158
115
|
term :SvgSelector,
|
159
|
-
comment: %(
|
160
|
-
|
161
|
-
The SVG document should either be retrievable by resolving the URI of this resource, or be included as an Embedded Resource using cnt:Content.
|
162
|
-
|
163
|
-
It is RECOMMENDED that the document contain only a single shape element and that element SHOULD be one of: path, rect, circle, ellipse, polyline, polygon or g. The g element SHOULD ONLY be used to construct a multi-element group, for example to define a donut shape requiring an outer circle and a clipped inner circle.
|
164
|
-
|
165
|
-
The dimensions of both the shape and the SVG canvas MUST be relative to the dimensions of the Source resource. For example, given an image which is 600 pixels by 400 pixels, and the desired section is a circle of 100 pixel radius at the center of the image, then the SVG element would be: <circle cx="300" cy="200" r="100"/>
|
166
|
-
|
167
|
-
It is NOT RECOMMENDED to include style information within the SVG element, nor Javascript, animation, text or other non shape oriented information. Clients SHOULD ignore such information if present.).freeze,
|
116
|
+
comment: %(An SvgSelector defines an area through the use of the Scalable Vector Graphics [SVG] standard. This allows the user to select a non-rectangular area of the content, such as a circle or polygon by describing the region using SVG. The SVG may be either embedded within the Annotation or referenced as an External Resource.).freeze,
|
168
117
|
label: "SvgSelector".freeze,
|
169
118
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
170
119
|
subClassOf: "oa:Selector".freeze,
|
171
|
-
type: "
|
172
|
-
term :Tag,
|
173
|
-
comment: %(A class assigned to the Body when it is a tag, such as a embedded text string with cnt:chars.
|
174
|
-
|
175
|
-
Tags are typically keywords or labels, and used for organization, description or discovery of the resource being tagged. In the Semantic Web, URIs are used instead of strings to avoid the issue of polysemy where one word has multiple meanings, such usage MUST be indicated using the subclass oa:SemanticTag.
|
176
|
-
|
177
|
-
Annotations that tag resources, either with text or semantic tags, SHOULD also have the oa:tagging motivation to make the reason for the Annotation more clear to applications, and MAY have other motivations as well.).freeze,
|
178
|
-
label: "Tag".freeze,
|
179
|
-
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
180
|
-
type: "owl:Class".freeze
|
120
|
+
type: "rdfs:Class".freeze
|
181
121
|
term :TextPositionSelector,
|
182
|
-
comment: %(
|
183
|
-
|
184
|
-
The text MUST be normalized before counting characters. For a Selector that works from the bitstream rather than the rendered characters, see oa:DataPositionSelector.
|
185
|
-
|
186
|
-
Each oa:TextPositionSelector MUST have exactly 1 oa:start property.
|
187
|
-
|
188
|
-
Each oa:TextPositionSelector MUST have exactly 1 oa:end property.).freeze,
|
122
|
+
comment: %(The TextPositionSelector describes a range of text by recording the start and end positions of the selection in the stream. Position 0 would be immediately before the first character, position 1 would be immediately before the second character, and so on.).freeze,
|
189
123
|
label: "TextPositionSelector".freeze,
|
190
124
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
191
125
|
subClassOf: "oa:Selector".freeze,
|
192
|
-
type: "
|
126
|
+
type: "rdfs:Class".freeze
|
193
127
|
term :TextQuoteSelector,
|
194
|
-
comment: %(
|
195
|
-
|
196
|
-
For example, if the document were "abcdefghijklmnopqrstuvwxyz", one could select "efg" by a oa:prefix of "abcd", the quotation of oa:exact "efg" and a oa:suffix of "hijk".
|
197
|
-
|
198
|
-
The text MUST be normalized before recording.
|
199
|
-
|
200
|
-
Each TextQuoteSelector MUST have exactly 1 oa:exact property.
|
201
|
-
|
202
|
-
Each TextQuoteSelector SHOULD have exactly 1 oa:prefix property, and MUST NOT have more than 1.
|
203
|
-
|
204
|
-
Each TextQuoteSelector SHOULD have exactly 1 oa:suffix property, and MUST NOT have more than 1.).freeze,
|
128
|
+
comment: %(The TextQuoteSelector describes a range of text by copying it, and including some of the text immediately before \(a prefix\) and after \(a suffix\) it to distinguish between multiple copies of the same sequence of characters.).freeze,
|
205
129
|
label: "TextQuoteSelector".freeze,
|
206
130
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
207
131
|
subClassOf: "oa:Selector".freeze,
|
208
|
-
type: "
|
132
|
+
type: "rdfs:Class".freeze
|
133
|
+
term :TextualBody,
|
134
|
+
comment: %().freeze,
|
135
|
+
label: "TextualBody".freeze,
|
136
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
137
|
+
type: "rdfs:Class".freeze
|
209
138
|
term :TimeState,
|
210
|
-
comment: %(A
|
211
|
-
|
212
|
-
There MUST be at least one of oa:cachedSource or oa:when specified. If there is more than 1, each gives an alternative copy of the representation.).freeze,
|
139
|
+
comment: %(A TimeState records the time at which the resource's state is appropriate for the Annotation, typically the time that the Annotation was created and/or a link to a persistent copy of the current version.).freeze,
|
213
140
|
label: "TimeState".freeze,
|
214
141
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
215
142
|
subClassOf: "oa:State".freeze,
|
216
|
-
type: "
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
comment: %(The time at which the Annotation was created.
|
221
|
-
|
222
|
-
There SHOULD be exactly 1 oa:annotatedAt property per Annotation, and MUST NOT be more than 1. The datetime MUST be expressed in the xsd:dateTime format, and SHOULD have a timezone specified.).freeze,
|
223
|
-
domain: "oa:Annotation".freeze,
|
224
|
-
label: "annotatedAt".freeze,
|
225
|
-
range: "xsd:dateTimeStamp".freeze,
|
143
|
+
type: "rdfs:Class".freeze
|
144
|
+
term :XPathSelector,
|
145
|
+
comment: %( An XPathSelector is used to select elements and content within a resource that supports the Document Object Model via a specified XPath value.).freeze,
|
146
|
+
label: "XPathSelector".freeze,
|
226
147
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
227
|
-
|
228
|
-
|
229
|
-
comment: %(The object of the relationship is a resource that identifies the agent responsible for creating the Annotation. This may be either a human or software agent.
|
230
|
-
|
231
|
-
There SHOULD be exactly 1 oa:annotatedBy relationship per Annotation, but MAY be 0 or more than 1, as the Annotation may be anonymous, or multiple agents may have worked together on it.
|
148
|
+
subClassOf: "oa:Selector".freeze,
|
149
|
+
type: "rdfs:Class".freeze
|
232
150
|
|
233
|
-
|
151
|
+
# Property definitions
|
152
|
+
property :annotationService,
|
153
|
+
comment: %(The object of the relationship is the end point of a service that conforms to the annotation-protocol, and it may be associated with any resource. The expectation of asserting the relationship is that the object is the preferred service for maintaining annotations about the subject resource, according to the publisher of the relationship.
|
154
|
+
|
155
|
+
This relationship is intended to be used both within Linked Data descriptions and as the rel type of a Link, via HTTP Link Headers rfc5988 for binary resources and in HTML <link> elements. For more information about these, please see the Annotation Protocol specification annotation-protocol.
|
156
|
+
).freeze,
|
157
|
+
label: "annotationService".freeze,
|
158
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
159
|
+
type: "rdf:Property".freeze
|
160
|
+
property :bodyValue,
|
161
|
+
comment: %(The object of the predicate is a plain text string to be used as the content of the body of the Annotation. The value MUST be an xsd:string and that data type MUST NOT be expressed in the serialization. Note that language MUST NOT be associated with the value either as a language tag, as that is only available for rdf:langString .
|
162
|
+
).freeze,
|
234
163
|
domain: "oa:Annotation".freeze,
|
235
|
-
label: "
|
164
|
+
label: "bodyValue".freeze,
|
165
|
+
range: "xsd:string".freeze,
|
236
166
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
237
|
-
|
238
|
-
type: "owl:ObjectProperty".freeze
|
167
|
+
type: "rdf:Property".freeze
|
239
168
|
property :cachedSource,
|
240
|
-
comment: %(A
|
169
|
+
comment: %(A object of the relationship is a copy of the Source resource's representation, appropriate for the Annotation.).freeze,
|
241
170
|
domain: "oa:TimeState".freeze,
|
242
171
|
label: "cachedSource".freeze,
|
243
172
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
244
|
-
type: "
|
245
|
-
property :
|
246
|
-
comment: %(
|
247
|
-
|
248
|
-
There SHOULD be exactly 1 default relationship for each Choice.).freeze,
|
249
|
-
domain: "oa:Choice".freeze,
|
250
|
-
label: "default".freeze,
|
173
|
+
type: "rdf:Property".freeze
|
174
|
+
property :canonical,
|
175
|
+
comment: %(A object of the relationship is the canonical IRI that can always be used to deduplicate the Annotation, regardless of the current IRI used to access the representation.).freeze,
|
176
|
+
label: "canonical".freeze,
|
251
177
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
252
|
-
|
253
|
-
type: "owl:ObjectProperty".freeze
|
178
|
+
type: "rdf:Property".freeze
|
254
179
|
property :end,
|
255
|
-
comment: %(The end
|
256
|
-
|
257
|
-
See oa:DataPositionSelector and oa:oa:TextPositionSelector.).freeze,
|
258
|
-
domain: "oa:Selector".freeze,
|
180
|
+
comment: %(The end property is used to convey the 0-based index of the end position of a range of content.).freeze,
|
259
181
|
label: "end".freeze,
|
260
182
|
range: "xsd:nonNegativeInteger".freeze,
|
261
183
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
262
|
-
type: "
|
263
|
-
property :equivalentTo,
|
264
|
-
comment: %(The subject and object resources of the oa:equivalentTo relationship represent the same resource, but potentially have different metadata such as oa:serializedBy, oa:serializedAt and serialization format. oa:equivalentTo is a symmetrical and transitive relationship; if A oa:equivalentTo B, then it is also true that B oa:equivalent A; and that if B oa:equivalentTo C, then it is also true that A oa:equivalentTo C.
|
265
|
-
|
266
|
-
The Annotation MAY include 0 or more instances of the oa:equivalentTo relationship between copies of the Annotation or other resources, and SHOULD include as many as are available.
|
267
|
-
|
268
|
-
If a system publishes an embedded resource \(a cnt:Content\) at a new HTTP URI, then it SHOULD express the oa:equivalentTo relationship between the resource's URN and the new URI from which it is available.).freeze,
|
269
|
-
label: "equivalentTo".freeze,
|
270
|
-
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
271
|
-
subPropertyOf: "prov:alternateOf".freeze,
|
272
|
-
type: "owl:ObjectProperty".freeze
|
184
|
+
type: "rdf:Property".freeze
|
273
185
|
property :exact,
|
274
|
-
comment: %(
|
275
|
-
|
276
|
-
See oa:TextQuoteSelector.).freeze,
|
277
|
-
domain: "oa:Selector".freeze,
|
186
|
+
comment: %(The object of the predicate is a copy of the text which is being selected, after normalization.).freeze,
|
278
187
|
label: "exact".freeze,
|
188
|
+
range: "xsd:string".freeze,
|
279
189
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
280
|
-
type: "
|
190
|
+
type: "rdf:Property".freeze
|
281
191
|
property :hasBody,
|
282
|
-
comment: %(The
|
283
|
-
|
284
|
-
The Body may be of any media type, and contain any type of content. The Body SHOULD be identified by HTTP URIs unless they are embedded within the Annotation.
|
285
|
-
|
286
|
-
Embedded bodies SHOULD be instances of cnt:ContentAsText and embed their content with cnt:chars. They SHOULD declare their media type with dc:format, and MAY indicate their language using dc:language and a RFC-3066 language tag.
|
287
|
-
|
288
|
-
There is no OA class provided for "Body" as a body might be a target of a different annotation. However, there SHOULD be 1 or more content-based classes associated with the body resources of an Annotation, and the dctypes: vocabulary is recommended for this purpose, for instance dctypes:Text to declare textual content.
|
289
|
-
).freeze,
|
192
|
+
comment: %(The object of the relationship is a resource that is a body of the Annotation.).freeze,
|
290
193
|
domain: "oa:Annotation".freeze,
|
291
194
|
label: "hasBody".freeze,
|
292
195
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
293
|
-
type: "
|
196
|
+
type: "rdf:Property".freeze
|
197
|
+
property :hasEndSelector,
|
198
|
+
comment: %(The relationship between a RangeSelector and the Selector that describes the end position of the range. ).freeze,
|
199
|
+
domain: "oa:RangeSelector".freeze,
|
200
|
+
label: "hasEndSelector".freeze,
|
201
|
+
range: "oa:Selector".freeze,
|
202
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
203
|
+
type: "rdf:Property".freeze
|
204
|
+
property :hasPurpose,
|
205
|
+
comment: %(The purpose served by the resource in the Annotation.).freeze,
|
206
|
+
label: "hasPurpose".freeze,
|
207
|
+
range: "oa:Motivation".freeze,
|
208
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
209
|
+
type: "rdf:Property".freeze
|
294
210
|
property :hasScope,
|
295
|
-
comment: %(The
|
296
|
-
|
297
|
-
There MAY be 0 or more hasScope relationships for each Specific Resource.).freeze,
|
211
|
+
comment: %(The scope or context in which the resource is used within the Annotation.).freeze,
|
298
212
|
domain: "oa:SpecificResource".freeze,
|
299
213
|
label: "hasScope".freeze,
|
300
214
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
301
|
-
type: "
|
215
|
+
type: "rdf:Property".freeze
|
302
216
|
property :hasSelector,
|
303
|
-
comment: %(The relationship
|
304
|
-
|
305
|
-
There MUST be exactly 0 or 1 oa:hasSelector relationship associated with a
|
306
|
-
Specific Resource.
|
307
|
-
|
308
|
-
If multiple Selectors are required, either to express a choice between different optional, equivalent selectors, or a chain of selectors that should all be processed, it is necessary to use oa:Choice, oa:Composite or oa:List as a selector.).freeze,
|
309
|
-
domain: "oa:SpecificResource".freeze,
|
217
|
+
comment: %(The object of the relationship is a Selector that describes the segment or region of interest within the source resource. Please note that the domain \( oa:ResourceSelection \) is not used directly in the Web Annotation model.).freeze,
|
218
|
+
domain: "oa:ResourceSelection".freeze,
|
310
219
|
label: "hasSelector".freeze,
|
311
220
|
range: "oa:Selector".freeze,
|
312
221
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
313
|
-
type: "
|
222
|
+
type: "rdf:Property".freeze
|
314
223
|
property :hasSource,
|
315
|
-
comment: %(The
|
316
|
-
|
317
|
-
There MUST be exactly 1 oa:hasSource relationship associated with a Specific Resource.).freeze,
|
318
|
-
domain: "oa:SpecificResource".freeze,
|
224
|
+
comment: %(The resource that the ResourceSelection, or its subclass SpecificResource, is refined from, or more specific than. Please note that the domain \( oa:ResourceSelection \) is not used directly in the Web Annotation model.).freeze,
|
225
|
+
domain: "oa:ResourceSelection".freeze,
|
319
226
|
label: "hasSource".freeze,
|
320
227
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
321
|
-
type: "
|
228
|
+
type: "rdf:Property".freeze
|
229
|
+
property :hasStartSelector,
|
230
|
+
comment: %(The relationship between a RangeSelector and the Selector that describes the start position of the range. ).freeze,
|
231
|
+
domain: "oa:RangeSelector".freeze,
|
232
|
+
label: "hasStartSelector".freeze,
|
233
|
+
range: "oa:Selector".freeze,
|
234
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
235
|
+
type: "rdf:Property".freeze
|
322
236
|
property :hasState,
|
323
|
-
comment: %(The relationship between
|
324
|
-
|
325
|
-
There MAY be 0 or 1 oa:hasState relationship for each SpecificResource.
|
326
|
-
|
327
|
-
If there are multiple State resources that must be associated with the specific resource, then the use of the Multiplicity Constructs oa:Choice, oa:Composite or oa:List is RECOMMENDED.).freeze,
|
328
|
-
domain: "oa:SpecificResource".freeze,
|
237
|
+
comment: %(The relationship between the ResourceSelection, or its subclass SpecificResource, and a State resource. Please note that the domain \( oa:ResourceSelection \) is not used directly in the Web Annotation model.).freeze,
|
238
|
+
domain: "oa:ResourceSelection".freeze,
|
329
239
|
label: "hasState".freeze,
|
330
240
|
range: "oa:State".freeze,
|
331
241
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
332
|
-
type: "
|
242
|
+
type: "rdf:Property".freeze
|
333
243
|
property :hasTarget,
|
334
|
-
comment: %(The relationship between
|
335
|
-
|
336
|
-
The target may be of any media type, and contain any type of content. The target SHOULD be identified by HTTP URIs unless they are embedded within the Annotation.
|
337
|
-
|
338
|
-
Embedded targets SHOULD be instances of cnt:ContentAsText and embed their content with cnt:chars. They SHOULD declare their media type with dc:format, and MAY indicate their language using dc:language and a RFC-3066 language tag.
|
339
|
-
|
340
|
-
There is no OA class provided for "Target" as a target might be a body in a different annotation. However, there SHOULD be 1 or more content-based classes associated with the target resources of an Annotation, and the dctypes: vocabulary is recommended for this purpose, for instance dctypes:Text to declare textual content.).freeze,
|
244
|
+
comment: %(The relationship between an Annotation and its Target.).freeze,
|
341
245
|
domain: "oa:Annotation".freeze,
|
342
246
|
label: "hasTarget".freeze,
|
343
247
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
344
|
-
type: "
|
345
|
-
property :item,
|
346
|
-
comment: %(The relationship between a multiplicity construct node and its constituent resources.
|
347
|
-
|
348
|
-
There MUST be 1 or more item relationships for each multiplicity construct oa:Choice, oa:Composite and oa:List.).freeze,
|
349
|
-
label: "item".freeze,
|
350
|
-
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
351
|
-
subPropertyOf: "rdfs:member".freeze,
|
352
|
-
type: "owl:ObjectProperty".freeze
|
248
|
+
type: "rdf:Property".freeze
|
353
249
|
property :motivatedBy,
|
354
|
-
comment: %(The relationship between an Annotation and a Motivation
|
355
|
-
|
356
|
-
Each Annotation SHOULD have at least one oa:motivatedBy relationship, and MAY be more than 1.).freeze,
|
250
|
+
comment: %(The relationship between an Annotation and a Motivation that describes the reason for the Annotation's creation.).freeze,
|
357
251
|
domain: "oa:Annotation".freeze,
|
358
252
|
label: "motivatedBy".freeze,
|
359
253
|
range: "oa:Motivation".freeze,
|
360
254
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
361
|
-
type: "
|
255
|
+
type: "rdf:Property".freeze
|
362
256
|
property :prefix,
|
363
|
-
comment: %(
|
364
|
-
|
365
|
-
See oa:TextQuoteSelector.).freeze,
|
366
|
-
domain: "oa:Selector".freeze,
|
257
|
+
comment: %(The object of the property is a snippet of content that occurs immediately before the content which is being selected by the Selector.).freeze,
|
367
258
|
label: "prefix".freeze,
|
259
|
+
range: "xsd:string".freeze,
|
260
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
261
|
+
type: "rdf:Property".freeze
|
262
|
+
property :processingLanguage,
|
263
|
+
comment: %(The object of the property is the language that should be used for textual processing algorithms when dealing with the content of the resource, including hyphenation, line breaking, which font to use for rendering and so forth. The value must follow the recommendations of BCP47.).freeze,
|
264
|
+
label: "processingLanguage".freeze,
|
265
|
+
range: "xsd:string".freeze,
|
266
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
267
|
+
type: "rdf:Property".freeze
|
268
|
+
property :refinedBy,
|
269
|
+
comment: %(The relationship between a Selector and another Selector or a State and a Selector or State that should be applied to the results of the first to refine the processing of the source resource. ).freeze,
|
270
|
+
label: "refinedBy".freeze,
|
271
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
272
|
+
type: "rdf:Property".freeze
|
273
|
+
property :renderedVia,
|
274
|
+
comment: %(A system that was used by the application that created the Annotation to render the resource.).freeze,
|
275
|
+
domain: "oa:SpecificResource".freeze,
|
276
|
+
label: "renderedVia".freeze,
|
277
|
+
range: "rdfs:Resource".freeze,
|
368
278
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
369
|
-
type: "
|
370
|
-
property :
|
371
|
-
comment: %(The
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
domain: "oa:Annotation".freeze,
|
376
|
-
label: "serializedAt".freeze,
|
377
|
-
range: "xsd:dateTimeStamp".freeze,
|
279
|
+
type: "rdf:Property".freeze
|
280
|
+
property :sourceDate,
|
281
|
+
comment: %(The timestamp at which the Source resource should be interpreted as being applicable to the Annotation.).freeze,
|
282
|
+
domain: "oa:TimeState".freeze,
|
283
|
+
label: "sourceDate".freeze,
|
284
|
+
range: "xsd:dateTime".freeze,
|
378
285
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
379
|
-
type: "
|
380
|
-
property :
|
381
|
-
comment: %(The
|
382
|
-
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
|
286
|
+
type: "rdf:Property".freeze
|
287
|
+
property :sourceDateEnd,
|
288
|
+
comment: %(The end timestamp of the interval over which the Source resource should be interpreted as being applicable to the Annotation.).freeze,
|
289
|
+
domain: "oa:TimeState".freeze,
|
290
|
+
label: "sourceDateEnd".freeze,
|
291
|
+
range: "xsd:dateTime".freeze,
|
292
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
293
|
+
type: "rdf:Property".freeze
|
294
|
+
property :sourceDateStart,
|
295
|
+
comment: %(The start timestamp of the interval over which the Source resource should be interpreted as being applicable to the Annotation.).freeze,
|
296
|
+
domain: "oa:TimeState".freeze,
|
297
|
+
label: "sourceDateStart".freeze,
|
298
|
+
range: "xsd:dateTime".freeze,
|
388
299
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
389
|
-
|
390
|
-
type: "owl:ObjectProperty".freeze
|
300
|
+
type: "rdf:Property".freeze
|
391
301
|
property :start,
|
392
|
-
comment: %(The
|
393
|
-
|
394
|
-
See oa:DataPositionSelector and oa:TextPositionSelector.).freeze,
|
395
|
-
domain: "oa:Selector".freeze,
|
302
|
+
comment: %(The start position in a 0-based index at which a range of content is selected from the data in the source resource.).freeze,
|
396
303
|
label: "start".freeze,
|
397
304
|
range: "xsd:nonNegativeInteger".freeze,
|
398
305
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
399
|
-
type: "
|
306
|
+
type: "rdf:Property".freeze
|
400
307
|
property :styleClass,
|
401
|
-
comment: %(The
|
402
|
-
|
403
|
-
There MAY be 0 or more styleClass properties on a Specific Resource.
|
404
|
-
|
405
|
-
See oa:CssStyle.).freeze,
|
308
|
+
comment: %(The name of the class used in the CSS description referenced from the Annotation that should be applied to the Specific Resource.).freeze,
|
406
309
|
domain: "oa:SpecificResource".freeze,
|
407
310
|
label: "styleClass".freeze,
|
311
|
+
range: "xsd:string".freeze,
|
408
312
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
409
|
-
type: "
|
313
|
+
type: "rdf:Property".freeze
|
410
314
|
property :styledBy,
|
411
|
-
comment: %(
|
412
|
-
|
413
|
-
There MAY be 0 or 1 styledBy relationships for each Annotation.
|
414
|
-
|
415
|
-
If there are multiple Style resources that must be associated with the Annotation, then the use of the Multiplicity Constructs oa:Choice, oa:Composite or oa:List is RECOMMENDED.).freeze,
|
315
|
+
comment: %(A reference to a Stylesheet that should be used to apply styles to the Annotation rendering.).freeze,
|
416
316
|
domain: "oa:Annotation".freeze,
|
417
317
|
label: "styledBy".freeze,
|
418
318
|
range: "oa:Style".freeze,
|
419
319
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
420
|
-
type: "
|
320
|
+
type: "rdf:Property".freeze
|
421
321
|
property :suffix,
|
422
|
-
comment: %(The snippet of text that occurs immediately after the text which is being selected.
|
423
|
-
|
424
|
-
See oa:TextQuoteSelector.).freeze,
|
425
|
-
domain: "oa:Selector".freeze,
|
322
|
+
comment: %(The snippet of text that occurs immediately after the text which is being selected.).freeze,
|
426
323
|
label: "suffix".freeze,
|
324
|
+
range: "xsd:string".freeze,
|
427
325
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
428
|
-
type: "
|
429
|
-
property :
|
430
|
-
comment: %(The
|
431
|
-
|
432
|
-
|
433
|
-
|
326
|
+
type: "rdf:Property".freeze
|
327
|
+
property :textDirection,
|
328
|
+
comment: %(The direction of the text of the subject resource. There MUST only be one text direction associated with any given resource.).freeze,
|
329
|
+
label: "textDirection".freeze,
|
330
|
+
range: "oa:Direction".freeze,
|
331
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
332
|
+
type: "rdf:Property".freeze
|
333
|
+
property :via,
|
334
|
+
comment: %(A object of the relationship is a resource from which the source resource was retrieved by the providing system.).freeze,
|
335
|
+
label: "via".freeze,
|
434
336
|
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
435
|
-
type: "
|
337
|
+
type: "rdf:Property".freeze
|
436
338
|
|
437
339
|
# Extra definitions
|
438
340
|
term :"",
|
439
|
-
comment: %(The
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
Note that OWL imports are disabled in the published version in order to reduce external implications, improve OWL 2 Profile conformity and increase interoperability. Some OWL tools might thus misleadingly show this ontology as \(re\)defining properties like skos:prefLabel.).freeze,
|
444
|
-
:"dc11:contributor" => %(Stian Soiland-Reyes).freeze,
|
445
|
-
:"dc11:creator" => %(Robert Sanderson).freeze,
|
446
|
-
:"dc11:description" => %(The Open Annotation Core Data Model specifies an interoperable framework for creating associations between related resources, annotations, using a methodology that conforms to the Architecture of the World Wide Web. Open Annotations can easily be shared between platforms, with sufficient richness of expression to satisfy complex requirements while remaining simple enough to also allow for the most common use cases, such as attaching a piece of text to a single web resource.
|
447
|
-
|
448
|
-
An Annotation is considered to be a set of connected resources, typically including a body and target, where the body is somehow about the target. The full model supports additional functionality, enabling semantic annotations, embedding content, selecting segments of resources, choosing the appropriate representation of a resource and providing styling hints for consuming clients.).freeze,
|
449
|
-
:"dc11:title" => %(Open Annotation Data Model).freeze,
|
450
|
-
:"dc:modified" => %(2013-02-22T21:40:51+01:00).freeze,
|
341
|
+
comment: %(The Web Annotation ontology defines the terms of the Web Annotation vocabulary).freeze,
|
342
|
+
:"dc11:title" => %(Web Annotation Ontology).freeze,
|
343
|
+
:"dc:creator" => [%(Benjamin Young).freeze, %(Paolo Ciccarese).freeze, %(Robert Sanderson).freeze],
|
344
|
+
:"dc:modified" => %(2016-06-03T14:54:43Z).freeze,
|
451
345
|
label: "".freeze,
|
452
|
-
:"owl:
|
453
|
-
:"owl:versionInfo" => %(
|
454
|
-
:"rdfs:seeAlso" => %(http://www.
|
346
|
+
:"owl:previousVersionURI" => %(http://www.openannotation.org/spec/core/20130208/oa.owl).freeze,
|
347
|
+
:"owl:versionInfo" => %(2016-06-03T14:54:43Z).freeze,
|
348
|
+
:"rdfs:seeAlso" => %(http://www.w3.org/TR/annotation-vocab/).freeze,
|
455
349
|
type: "owl:Ontology".freeze
|
350
|
+
term :PreferContainedDescriptions,
|
351
|
+
comment: %(An IRI to signal the client prefers to receive full descriptions of the Annotations from a container, not just their IRIs.).freeze,
|
352
|
+
label: "PreferContainedDescriptions".freeze,
|
353
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
354
|
+
type: "rdfs:Resource".freeze
|
355
|
+
term :PreferContainedIRIs,
|
356
|
+
comment: %(An IRI to signal that the client prefers to receive only the IRIs of the Annotations from a container, not their full descriptions.).freeze,
|
357
|
+
label: "PreferContainedIRIs".freeze,
|
358
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
359
|
+
type: "rdfs:Resource".freeze
|
360
|
+
term :assessing,
|
361
|
+
comment: %(The motivation for when the user intends to provide an assessment about the Target resource.).freeze,
|
362
|
+
label: "assessing".freeze,
|
363
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
364
|
+
type: "oa:Motivation".freeze
|
456
365
|
term :bookmarking,
|
457
|
-
comment: %(The motivation
|
366
|
+
comment: %(The motivation for when the user intends to create a bookmark to the Target or part thereof.).freeze,
|
458
367
|
label: "bookmarking".freeze,
|
459
|
-
:"
|
460
|
-
:"
|
461
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
368
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
369
|
+
type: "oa:Motivation".freeze
|
462
370
|
term :classifying,
|
463
|
-
comment: %(The motivation
|
371
|
+
comment: %(The motivation for when the user intends to that classify the Target as something.).freeze,
|
464
372
|
label: "classifying".freeze,
|
465
|
-
:"
|
466
|
-
:"
|
467
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
373
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
374
|
+
type: "oa:Motivation".freeze
|
468
375
|
term :commenting,
|
469
|
-
comment: %(The motivation
|
376
|
+
comment: %(The motivation for when the user intends to comment about the Target.).freeze,
|
470
377
|
label: "commenting".freeze,
|
471
|
-
:"
|
472
|
-
:"
|
473
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
378
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
379
|
+
type: "oa:Motivation".freeze
|
474
380
|
term :describing,
|
475
|
-
comment: %(The motivation
|
381
|
+
comment: %(The motivation for when the user intends to describe the Target, as opposed to a comment about them.).freeze,
|
476
382
|
label: "describing".freeze,
|
477
|
-
:"
|
478
|
-
:"
|
479
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
383
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
384
|
+
type: "oa:Motivation".freeze
|
480
385
|
term :editing,
|
481
|
-
comment: %(The motivation
|
386
|
+
comment: %(The motivation for when the user intends to request a change or edit to the Target resource.).freeze,
|
482
387
|
label: "editing".freeze,
|
483
|
-
:"
|
484
|
-
:"
|
485
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
388
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
389
|
+
type: "oa:Motivation".freeze
|
486
390
|
term :highlighting,
|
487
|
-
comment: %(The motivation
|
391
|
+
comment: %(The motivation for when the user intends to highlight the Target resource or segment of it.).freeze,
|
488
392
|
label: "highlighting".freeze,
|
489
|
-
:"
|
490
|
-
:"
|
491
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
393
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
394
|
+
type: "oa:Motivation".freeze
|
492
395
|
term :identifying,
|
493
|
-
comment: %(The motivation
|
396
|
+
comment: %(The motivation for when the user intends to assign an identity to the Target or identify what is being depicted or described in the Target.).freeze,
|
494
397
|
label: "identifying".freeze,
|
495
|
-
:"
|
496
|
-
:"
|
497
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
398
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
399
|
+
type: "oa:Motivation".freeze
|
498
400
|
term :linking,
|
499
|
-
comment: %(The motivation
|
401
|
+
comment: %(The motivation for when the user intends to link to a resource related to the Target.).freeze,
|
500
402
|
label: "linking".freeze,
|
501
|
-
:"
|
502
|
-
:"
|
503
|
-
|
403
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
404
|
+
type: "oa:Motivation".freeze
|
405
|
+
term :ltr,
|
406
|
+
comment: %(The direction of text that is read from left to right.).freeze,
|
407
|
+
label: "ltr".freeze,
|
408
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
409
|
+
type: "oa:Direction".freeze
|
504
410
|
term :moderating,
|
505
|
-
comment: %(The motivation
|
411
|
+
comment: %(The motivation for when the user intends to assign some value or quality to the Target.).freeze,
|
506
412
|
label: "moderating".freeze,
|
507
|
-
:"
|
508
|
-
:"
|
509
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
510
|
-
term :motivationScheme,
|
511
|
-
comment: %(The concept scheme for Open Annotation Motivations).freeze,
|
512
|
-
label: "motivationScheme".freeze,
|
513
|
-
type: ["owl:NamedIndividual".freeze, "skos:ConceptScheme".freeze]
|
413
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
414
|
+
type: "oa:Motivation".freeze
|
514
415
|
term :questioning,
|
515
|
-
comment: %(The motivation
|
416
|
+
comment: %(The motivation for when the user intends to ask a question about the Target.).freeze,
|
516
417
|
label: "questioning".freeze,
|
517
|
-
:"
|
518
|
-
:"
|
519
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
418
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
419
|
+
type: "oa:Motivation".freeze
|
520
420
|
term :replying,
|
521
|
-
comment: %(The motivation
|
421
|
+
comment: %(The motivation for when the user intends to reply to a previous statement, either an Annotation or another resource.).freeze,
|
522
422
|
label: "replying".freeze,
|
523
|
-
:"
|
524
|
-
:"
|
525
|
-
|
423
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
424
|
+
type: "oa:Motivation".freeze
|
425
|
+
term :rtl,
|
426
|
+
comment: %(The direction of text that is read from right to left.).freeze,
|
427
|
+
label: "rtl".freeze,
|
428
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
429
|
+
type: "oa:Direction".freeze
|
526
430
|
term :tagging,
|
527
|
-
comment: %(The motivation
|
431
|
+
comment: %(The motivation for when the user intends to associate a tag with the Target.).freeze,
|
528
432
|
label: "tagging".freeze,
|
529
|
-
:"
|
530
|
-
:"
|
531
|
-
type: ["oa:Motivation".freeze, "owl:NamedIndividual".freeze]
|
433
|
+
:"rdfs:isDefinedBy" => %(oa:).freeze,
|
434
|
+
type: "oa:Motivation".freeze
|
532
435
|
end
|
533
436
|
end
|