rdf 1.1.0p4 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. checksums.yaml +6 -14
  2. data/README +33 -33
  3. data/VERSION +1 -1
  4. data/lib/rdf.rb +60 -12
  5. data/lib/rdf/cli.rb +7 -1
  6. data/lib/rdf/cli/vocab-loader.rb +240 -0
  7. data/lib/rdf/format.rb +2 -2
  8. data/lib/rdf/mixin/enumerable.rb +12 -4
  9. data/lib/rdf/mixin/queryable.rb +13 -13
  10. data/lib/rdf/model/graph.rb +5 -4
  11. data/lib/rdf/model/list.rb +15 -4
  12. data/lib/rdf/model/literal.rb +2 -1
  13. data/lib/rdf/model/statement.rb +10 -1
  14. data/lib/rdf/model/term.rb +8 -0
  15. data/lib/rdf/model/uri.rb +107 -2
  16. data/lib/rdf/model/value.rb +8 -0
  17. data/lib/rdf/ntriples/reader.rb +5 -4
  18. data/lib/rdf/query.rb +47 -12
  19. data/lib/rdf/query/solutions.rb +29 -29
  20. data/lib/rdf/reader.rb +13 -3
  21. data/lib/rdf/repository.rb +1 -0
  22. data/lib/rdf/util/file.rb +86 -6
  23. data/lib/rdf/vocab.rb +158 -58
  24. data/lib/rdf/vocab/cc.rb +28 -11
  25. data/lib/rdf/vocab/cert.rb +127 -9
  26. data/lib/rdf/vocab/dc.rb +242 -60
  27. data/lib/rdf/vocab/dc11.rb +42 -20
  28. data/lib/rdf/vocab/doap.rb +121 -42
  29. data/lib/rdf/vocab/exif.rb +540 -165
  30. data/lib/rdf/vocab/foaf.rb +353 -66
  31. data/lib/rdf/vocab/geo.rb +40 -10
  32. data/lib/rdf/vocab/gr.rb +1094 -0
  33. data/lib/rdf/vocab/http.rb +81 -23
  34. data/lib/rdf/vocab/ical.rb +361 -0
  35. data/lib/rdf/vocab/ma.rb +281 -69
  36. data/lib/rdf/vocab/og.rb +98 -0
  37. data/lib/rdf/vocab/owl.rb +226 -56
  38. data/lib/rdf/vocab/prov.rb +489 -0
  39. data/lib/rdf/vocab/rdfs.rb +38 -14
  40. data/lib/rdf/vocab/rsa.rb +25 -9
  41. data/lib/rdf/vocab/rss.rb +29 -11
  42. data/lib/rdf/vocab/schema.rb +3729 -647
  43. data/lib/rdf/vocab/sioc.rb +224 -89
  44. data/lib/rdf/vocab/skos.rb +141 -33
  45. data/lib/rdf/vocab/skosxl.rb +43 -0
  46. data/lib/rdf/vocab/v.rb +154 -0
  47. data/lib/rdf/vocab/vcard.rb +337 -0
  48. data/lib/rdf/vocab/void.rb +142 -0
  49. data/lib/rdf/vocab/wdrs.rb +129 -0
  50. data/lib/rdf/vocab/wot.rb +52 -18
  51. data/lib/rdf/vocab/xhtml.rb +3 -6
  52. data/lib/rdf/vocab/xhv.rb +239 -0
  53. data/lib/rdf/writer.rb +3 -3
  54. metadata +81 -14
data/lib/rdf/vocab/owl.rb CHANGED
@@ -1,59 +1,229 @@
1
+ # This file generated automatically using vocab-fetch from http://www.w3.org/2002/07/owl#
2
+ require 'rdf'
1
3
  module RDF
2
- ##
3
- # Web Ontology Language (OWL) vocabulary.
4
- #
5
- # @see http://www.w3.org/TR/owl-overview/
6
- class OWL < Vocabulary("http://www.w3.org/2002/07/owl#")
7
- property :allValuesFrom
8
- property :annotatedProperty
9
- property :annotatedSource
10
- property :annotatedTarget
11
- property :assertionProperty
12
- property :backwardCompatibleWith
13
- property :bottomDataProperty
14
- property :bottomObjectProperty
15
- property :cardinality
16
- property :complementOf
17
- property :datatypeComplementOf
18
- property :deprecated
19
- property :differentFrom
20
- property :disjointUnionOf
21
- property :disjointWith
22
- property :distinctMembers
23
- property :equivalentClass
24
- property :equivalentProperty
25
- property :hasKey
26
- property :hasSelf
27
- property :hasValue
28
- property :imports
29
- property :incompatibleWith
30
- property :intersectionOf
31
- property :inverseOf
32
- property :maxCardinality
33
- property :maxQualifiedCardinality
34
- property :members
35
- property :minCardinality
36
- property :minQualifiedCardinality
37
- property :onClass
38
- property :onDataRange
39
- property :onDatatype
40
- property :onProperties
41
- property :onProperty
42
- property :oneOf
43
- property :priorVersion
44
- property :propertyChainAxiom
45
- property :propertyDisjointWith
46
- property :qualifiedCardinality
47
- property :sameAs
48
- property :someValuesFrom
49
- property :sourceIndividual
50
- property :targetIndividual
51
- property :targetValue
52
- property :topDataProperty
53
- property :topObjectProperty
54
- property :unionOf
55
- property :versionIRI
56
- property :versionInfo
57
- property :withRestrictions
4
+ class OWL < StrictVocabulary("http://www.w3.org/2002/07/owl#")
5
+
6
+ # Class definitions
7
+ property :AllDifferent, :label => 'AllDifferent', :comment =>
8
+ %(The class of collections of pairwise different individuals.)
9
+ property :AllDisjointClasses, :label => 'AllDisjointClasses', :comment =>
10
+ %(The class of collections of pairwise disjoint classes.)
11
+ property :AllDisjointProperties, :label => 'AllDisjointProperties', :comment =>
12
+ %(The class of collections of pairwise disjoint properties.)
13
+ property :Annotation, :label => 'Annotation', :comment =>
14
+ %(The class of annotated annotations for which the RDF
15
+ serialization consists of an annotated subject, predicate and
16
+ object.)
17
+ property :AnnotationProperty, :label => 'AnnotationProperty', :comment =>
18
+ %(The class of annotation properties.)
19
+ property :AsymmetricProperty, :label => 'AsymmetricProperty', :comment =>
20
+ %(The class of asymmetric properties.)
21
+ property :Axiom, :label => 'Axiom', :comment =>
22
+ %(The class of annotated axioms for which the RDF serialization
23
+ consists of an annotated subject, predicate and object.)
24
+ property :Class, :label => 'Class', :comment =>
25
+ %(The class of OWL classes.)
26
+ property :DataRange, :label => 'DataRange', :comment =>
27
+ %(The class of OWL data ranges, which are special kinds of
28
+ datatypes. Note: The use of the IRI owl:DataRange has been
29
+ deprecated as of OWL 2. The IRI rdfs:Datatype SHOULD be used
30
+ instead.)
31
+ property :DatatypeProperty, :label => 'DatatypeProperty', :comment =>
32
+ %(The class of data properties.)
33
+ property :DeprecatedClass, :label => 'DeprecatedClass', :comment =>
34
+ %(The class of deprecated classes.)
35
+ property :DeprecatedProperty, :label => 'DeprecatedProperty', :comment =>
36
+ %(The class of deprecated properties.)
37
+ property :FunctionalProperty, :label => 'FunctionalProperty', :comment =>
38
+ %(The class of functional properties.)
39
+ property :InverseFunctionalProperty, :label => 'InverseFunctionalProperty', :comment =>
40
+ %(The class of inverse-functional properties.)
41
+ property :IrreflexiveProperty, :label => 'IrreflexiveProperty', :comment =>
42
+ %(The class of irreflexive properties.)
43
+ property :NamedIndividual, :label => 'NamedIndividual', :comment =>
44
+ %(The class of named individuals.)
45
+ property :NegativePropertyAssertion, :label => 'NegativePropertyAssertion', :comment =>
46
+ %(The class of negative property assertions.)
47
+ property :Nothing, :label => 'Nothing', :comment =>
48
+ %(This is the empty class.)
49
+ property :ObjectProperty, :label => 'ObjectProperty', :comment =>
50
+ %(The class of object properties.)
51
+ property :Ontology, :label => 'Ontology', :comment =>
52
+ %(The class of ontologies.)
53
+ property :OntologyProperty, :label => 'OntologyProperty', :comment =>
54
+ %(The class of ontology properties.)
55
+ property :ReflexiveProperty, :label => 'ReflexiveProperty', :comment =>
56
+ %(The class of reflexive properties.)
57
+ property :Restriction, :label => 'Restriction', :comment =>
58
+ %(The class of property restrictions.)
59
+ property :SymmetricProperty, :label => 'SymmetricProperty', :comment =>
60
+ %(The class of symmetric properties.)
61
+ property :Thing, :label => 'Thing', :comment =>
62
+ %(The class of OWL individuals.)
63
+ property :TransitiveProperty, :label => 'TransitiveProperty', :comment =>
64
+ %(The class of transitive properties.)
65
+
66
+ # Property definitions
67
+ property :allValuesFrom, :label => 'allValuesFrom', :comment =>
68
+ %(The property that determines the class that a universal
69
+ property restriction refers to.)
70
+ property :annotatedProperty, :label => 'annotatedProperty', :comment =>
71
+ %(The property that determines the predicate of an annotated
72
+ axiom or annotated annotation.)
73
+ property :annotatedSource, :label => 'annotatedSource', :comment =>
74
+ %(The property that determines the subject of an annotated axiom
75
+ or annotated annotation.)
76
+ property :annotatedTarget, :label => 'annotatedTarget', :comment =>
77
+ %(The property that determines the object of an annotated axiom
78
+ or annotated annotation.)
79
+ property :assertionProperty, :label => 'assertionProperty', :comment =>
80
+ %(The property that determines the predicate of a negative
81
+ property assertion.)
82
+ property :cardinality, :label => 'cardinality', :comment =>
83
+ %(The property that determines the cardinality of an exact
84
+ cardinality restriction.)
85
+ property :complementOf, :label => 'complementOf', :comment =>
86
+ %(The property that determines that a given class is the
87
+ complement of another class.)
88
+ property :datatypeComplementOf, :label => 'datatypeComplementOf', :comment =>
89
+ %(The property that determines that a given data range is the
90
+ complement of another data range with respect to the data
91
+ domain.)
92
+ property :differentFrom, :label => 'differentFrom', :comment =>
93
+ %(The property that determines that two given individuals are
94
+ different.)
95
+ property :disjointUnionOf, :label => 'disjointUnionOf', :comment =>
96
+ %(The property that determines that a given class is equivalent
97
+ to the disjoint union of a collection of other classes.)
98
+ property :disjointWith, :label => 'disjointWith', :comment =>
99
+ %(The property that determines that two given classes are
100
+ disjoint.)
101
+ property :distinctMembers, :label => 'distinctMembers', :comment =>
102
+ %(The property that determines the collection of pairwise
103
+ different individuals in a owl:AllDifferent axiom.)
104
+ property :equivalentClass, :label => 'equivalentClass', :comment =>
105
+ %(The property that determines that two given classes are
106
+ equivalent, and that is used to specify datatype definitions.)
107
+ property :equivalentProperty, :label => 'equivalentProperty', :comment =>
108
+ %(The property that determines that two given properties are
109
+ equivalent.)
110
+ property :hasKey, :label => 'hasKey', :comment =>
111
+ %(The property that determines the collection of properties that
112
+ jointly build a key.)
113
+ property :hasSelf, :label => 'hasSelf', :comment =>
114
+ %(The property that determines the property that a self
115
+ restriction refers to.)
116
+ property :hasValue, :label => 'hasValue', :comment =>
117
+ %(The property that determines the individual that a has-value
118
+ restriction refers to.)
119
+ property :intersectionOf, :label => 'intersectionOf', :comment =>
120
+ %(The property that determines the collection of classes or data
121
+ ranges that build an intersection.)
122
+ property :inverseOf, :label => 'inverseOf', :comment =>
123
+ %(The property that determines that two given properties are
124
+ inverse.)
125
+ property :maxCardinality, :label => 'maxCardinality', :comment =>
126
+ %(The property that determines the cardinality of a maximum
127
+ cardinality restriction.)
128
+ property :maxQualifiedCardinality, :label => 'maxQualifiedCardinality', :comment =>
129
+ %(The property that determines the cardinality of a maximum
130
+ qualified cardinality restriction.)
131
+ property :members, :label => 'members', :comment =>
132
+ %(The property that determines the collection of members in
133
+ either a owl:AllDifferent, owl:AllDisjointClasses or
134
+ owl:AllDisjointProperties axiom.)
135
+ property :minCardinality, :label => 'minCardinality', :comment =>
136
+ %(The property that determines the cardinality of a minimum
137
+ cardinality restriction.)
138
+ property :minQualifiedCardinality, :label => 'minQualifiedCardinality', :comment =>
139
+ %(The property that determines the cardinality of a minimum
140
+ qualified cardinality restriction.)
141
+ property :onClass, :label => 'onClass', :comment =>
142
+ %(The property that determines the class that a qualified object
143
+ cardinality restriction refers to.)
144
+ property :onDataRange, :label => 'onDataRange', :comment =>
145
+ %(The property that determines the data range that a qualified
146
+ data cardinality restriction refers to.)
147
+ property :onDatatype, :label => 'onDatatype', :comment =>
148
+ %(The property that determines the datatype that a datatype
149
+ restriction refers to.)
150
+ property :onProperties, :label => 'onProperties', :comment =>
151
+ %(The property that determines the n-tuple of properties that a
152
+ property restriction on an n-ary data range refers to.)
153
+ property :onProperty, :label => 'onProperty', :comment =>
154
+ %(The property that determines the property that a property
155
+ restriction refers to.)
156
+ property :oneOf, :label => 'oneOf', :comment =>
157
+ %(The property that determines the collection of individuals or
158
+ data values that build an enumeration.)
159
+ property :propertyChainAxiom, :label => 'propertyChainAxiom', :comment =>
160
+ %(The property that determines the n-tuple of properties that
161
+ build a sub property chain of a given property.)
162
+ property :propertyDisjointWith, :label => 'propertyDisjointWith', :comment =>
163
+ %(The property that determines that two given properties are
164
+ disjoint.)
165
+ property :qualifiedCardinality, :label => 'qualifiedCardinality', :comment =>
166
+ %(The property that determines the cardinality of an exact
167
+ qualified cardinality restriction.)
168
+ property :sameAs, :label => 'sameAs', :comment =>
169
+ %(The property that determines that two given individuals are
170
+ equal.)
171
+ property :someValuesFrom, :label => 'someValuesFrom', :comment =>
172
+ %(The property that determines the class that an existential
173
+ property restriction refers to.)
174
+ property :sourceIndividual, :label => 'sourceIndividual', :comment =>
175
+ %(The property that determines the subject of a negative
176
+ property assertion.)
177
+ property :targetIndividual, :label => 'targetIndividual', :comment =>
178
+ %(The property that determines the object of a negative object
179
+ property assertion.)
180
+ property :targetValue, :label => 'targetValue', :comment =>
181
+ %(The property that determines the value of a negative data
182
+ property assertion.)
183
+ property :unionOf, :label => 'unionOf', :comment =>
184
+ %(The property that determines the collection of classes or data
185
+ ranges that build a union.)
186
+ property :withRestrictions, :label => 'withRestrictions', :comment =>
187
+ %(The property that determines the collection of facet-value
188
+ pairs that define a datatype restriction.)
189
+ property :bottomDataProperty, :label => 'bottomDataProperty', :comment =>
190
+ %(The data property that does not relate any individual to any
191
+ data value.)
192
+ property :topDataProperty, :label => 'topDataProperty', :comment =>
193
+ %(The data property that relates every individual to every data
194
+ value.)
195
+ property :bottomObjectProperty, :label => 'bottomObjectProperty', :comment =>
196
+ %(The object property that does not relate any two individuals.)
197
+ property :topObjectProperty, :label => 'topObjectProperty', :comment =>
198
+ %(The object property that relates every two individuals.)
199
+ property :backwardCompatibleWith, :label => 'backwardCompatibleWith', :comment =>
200
+ %(The annotation property that indicates that a given ontology
201
+ is backward compatible with another ontology.)
202
+ property :deprecated, :label => 'deprecated', :comment =>
203
+ %(The annotation property that indicates that a given entity has
204
+ been deprecated.)
205
+ property :incompatibleWith, :label => 'incompatibleWith', :comment =>
206
+ %(The annotation property that indicates that a given ontology
207
+ is incompatible with another ontology.)
208
+ property :priorVersion, :label => 'priorVersion', :comment =>
209
+ %(The annotation property that indicates the predecessor
210
+ ontology of a given ontology.)
211
+ property :versionInfo, :label => 'versionInfo', :comment =>
212
+ %(The annotation property that provides version information for
213
+ an ontology or another OWL construct.)
214
+ property :backwardCompatibleWith, :label => 'backwardCompatibleWith', :comment =>
215
+ %(The annotation property that indicates that a given ontology
216
+ is backward compatible with another ontology.)
217
+ property :imports, :label => 'imports', :comment =>
218
+ %(The property that is used for importing other ontologies into
219
+ a given ontology.)
220
+ property :incompatibleWith, :label => 'incompatibleWith', :comment =>
221
+ %(The annotation property that indicates that a given ontology
222
+ is incompatible with another ontology.)
223
+ property :priorVersion, :label => 'priorVersion', :comment =>
224
+ %(The annotation property that indicates the predecessor
225
+ ontology of a given ontology.)
226
+ property :versionIRI, :label => 'versionIRI', :comment =>
227
+ %(The property that identifies the version IRI of an ontology.)
58
228
  end
59
229
  end
@@ -0,0 +1,489 @@
1
+ # This file generated automatically using vocab-fetch from http://www.w3.org/ns/prov#
2
+ require 'rdf'
3
+ module RDF
4
+ class PROV < StrictVocabulary("http://www.w3.org/ns/prov#")
5
+
6
+ # Class definitions
7
+ property :Accept, :label => 'Accept'
8
+ property :Activity, :label => 'Activity'
9
+ property :ActivityInfluence, :label => 'ActivityInfluence', :comment =>
10
+ %(ActivityInfluence provides additional descriptions of an
11
+ Activity's binary influence upon any other kind of resource.
12
+ Instances of ActivityInfluence use the prov:activity property
13
+ to cite the influencing Activity.)
14
+ property :ActivityInfluence, :label => 'ActivityInfluence', :comment =>
15
+ %(It is not recommended that the type ActivityInfluence be
16
+ asserted without also asserting one of its more specific
17
+ subclasses.)
18
+ property :Agent, :label => 'Agent'
19
+ property :AgentInfluence, :label => 'AgentInfluence', :comment =>
20
+ %(AgentInfluence provides additional descriptions of an Agent's
21
+ binary influence upon any other kind of resource. Instances of
22
+ AgentInfluence use the prov:agent property to cite the
23
+ influencing Agent.)
24
+ property :AgentInfluence, :label => 'AgentInfluence', :comment =>
25
+ %(It is not recommended that the type AgentInfluence be asserted
26
+ without also asserting one of its more specific subclasses.)
27
+ property :Association, :label => 'Association', :comment =>
28
+ %(An instance of prov:Association provides additional
29
+ descriptions about the binary prov:wasAssociatedWith relation
30
+ from an prov:Activity to some prov:Agent that had some
31
+ responsiblity for it. For example, :baking
32
+ prov:wasAssociatedWith :baker; prov:qualifiedAssociation [ a
33
+ prov:Association; prov:agent :baker; :foo :bar ].)
34
+ property :Attribution, :label => 'Attribution', :comment =>
35
+ %(An instance of prov:Attribution provides additional
36
+ descriptions about the binary prov:wasAttributedTo relation
37
+ from an prov:Entity to some prov:Agent that had some
38
+ responsible for it. For example, :cake prov:wasAttributedTo
39
+ :baker; prov:qualifiedAttribution [ a prov:Attribution;
40
+ prov:entity :baker; :foo :bar ].)
41
+ property :Bundle, :label => 'Bundle', :comment =>
42
+ %(Note that there are kinds of bundles \(e.g. handwritten
43
+ letters, audio recordings, etc.\) that are not expressed in
44
+ PROV-O, but can be still be described by PROV-O.)
45
+ property :Collection, :label => 'Collection'
46
+ property :Communication, :label => 'Communication', :comment =>
47
+ %(An instance of prov:Communication provides additional
48
+ descriptions about the binary prov:wasInformedBy relation from
49
+ an informed prov:Activity to the prov:Activity that informed
50
+ it. For example, :you_jumping_off_bridge prov:wasInformedBy
51
+ :everyone_else_jumping_off_bridge; prov:qualifiedCommunication
52
+ [ a prov:Communication; prov:activity
53
+ :everyone_else_jumping_off_bridge; :foo :bar ].)
54
+ property :Contribute, :label => 'Contribute'
55
+ property :Contributor, :label => 'Contributor'
56
+ property :Copyright, :label => 'Copyright'
57
+ property :Create, :label => 'Create'
58
+ property :Creator, :label => 'Creator'
59
+ property :Delegation, :label => 'Delegation', :comment =>
60
+ %(An instance of prov:Delegation provides additional
61
+ descriptions about the binary prov:actedOnBehalfOf relation
62
+ from a performing prov:Agent to some prov:Agent for whom it
63
+ was performed. For example, :mixing prov:wasAssociatedWith
64
+ :toddler . :toddler prov:actedOnBehalfOf :mother;
65
+ prov:qualifiedDelegation [ a prov:Delegation; prov:entity
66
+ :mother; :foo :bar ].)
67
+ property :Derivation, :label => 'Derivation', :comment =>
68
+ %(An instance of prov:Derivation provides additional
69
+ descriptions about the binary prov:wasDerivedFrom relation
70
+ from some derived prov:Entity to another prov:Entity from
71
+ which it was derived. For example, :chewed_bubble_gum
72
+ prov:wasDerivedFrom :unwrapped_bubble_gum;
73
+ prov:qualifiedDerivation [ a prov:Derivation; prov:entity
74
+ :unwrapped_bubble_gum; :foo :bar ].)
75
+ property :Derivation, :label => 'Derivation', :comment =>
76
+ %(The more specific forms of prov:Derivation \(i.e.,
77
+ prov:Revision, prov:Quotation, prov:PrimarySource\) should be
78
+ asserted if they apply.)
79
+ property :Dictionary, :label => 'Dictionary', :comment =>
80
+ %(A given dictionary forms a given structure for its members. A
81
+ different structure \(obtained either by insertion or removal
82
+ of members\) constitutes a different dictionary.)
83
+ property :Dictionary, :label => 'Dictionary', :comment =>
84
+ %(This concept allows for the provenance of the dictionary, but
85
+ also of its constituents to be expressed. Such a notion of
86
+ dictionary corresponds to a wide variety of concrete data
87
+ structures, such as a maps or associative arrays.)
88
+ property :EmptyDictionary, :label => 'Empty Dictionary'
89
+ property :EmptyCollection, :label => 'EmptyCollection'
90
+ property :End, :label => 'End', :comment =>
91
+ %(An instance of prov:End provides additional descriptions about
92
+ the binary prov:wasEndedBy relation from some ended
93
+ prov:Activity to an prov:Entity that ended it. For example,
94
+ :ball_game prov:wasEndedBy :buzzer; prov:qualifiedEnd [ a
95
+ prov:End; prov:entity :buzzer; :foo :bar; prov:atTime
96
+ '2012-03-09T08:05:08-05:00'^^xsd:dateTime ].)
97
+ property :Entity, :label => 'Entity'
98
+ property :EntityInfluence, :label => 'EntityInfluence', :comment =>
99
+ %(EntityInfluence provides additional descriptions of an
100
+ Entity's binary influence upon any other kind of resource.
101
+ Instances of EntityInfluence use the prov:entity property to
102
+ cite the influencing Entity.)
103
+ property :EntityInfluence, :label => 'EntityInfluence', :comment =>
104
+ %(It is not recommended that the type EntityInfluence be
105
+ asserted without also asserting one of its more specific
106
+ subclasses.)
107
+ property :Generation, :label => 'Generation', :comment =>
108
+ %(An instance of prov:Generation provides additional
109
+ descriptions about the binary prov:wasGeneratedBy relation
110
+ from a generated prov:Entity to the prov:Activity that
111
+ generated it. For example, :cake prov:wasGeneratedBy :baking;
112
+ prov:qualifiedGeneration [ a prov:Generation; prov:activity
113
+ :baking; :foo :bar ].)
114
+ property :Influence, :label => 'Influence', :comment =>
115
+ %(Because prov:Influence is a broad relation, its most specific
116
+ subclasses \(e.g. prov:Communication, prov:Delegation,
117
+ prov:End, prov:Revision, etc.\) should be used when
118
+ applicable.)
119
+ property :Influence, :label => 'Influence', :comment =>
120
+ %(An instance of prov:Influence provides additional descriptions
121
+ about the binary prov:wasInfluencedBy relation from some
122
+ influenced Activity, Entity, or Agent to the influencing
123
+ Activity, Entity, or Agent. For example, :stomach_ache
124
+ prov:wasInfluencedBy :spoon; prov:qualifiedInfluence [ a
125
+ prov:Influence; prov:entity :spoon; :foo :bar ] . Because
126
+ prov:Influence is a broad relation, the more specific
127
+ relations \(Communication, Delegation, End, etc.\) should be
128
+ used when applicable.)
129
+ property :Insertion, :label => 'Insertion'
130
+ property :InstantaneousEvent, :label => 'InstantaneousEvent', :comment =>
131
+ %(An instantaneous event, or event for short, happens in the
132
+ world and marks a change in the world, in its activities and
133
+ in its entities. The term 'event' is commonly used in process
134
+ algebra with a similar meaning. Events represent
135
+ communications or interactions; they are assumed to be atomic
136
+ and instantaneous.)
137
+ property :Invalidation, :label => 'Invalidation', :comment =>
138
+ %(An instance of prov:Invalidation provides additional
139
+ descriptions about the binary prov:wasInvalidatedBy relation
140
+ from an invalidated prov:Entity to the prov:Activity that
141
+ invalidated it. For example, :uncracked_egg
142
+ prov:wasInvalidatedBy :baking; prov:qualifiedInvalidation [ a
143
+ prov:Invalidation; prov:activity :baking; :foo :bar ].)
144
+ property :KeyEntityPair, :label => 'Key-Entity Pair'
145
+ property :Location, :label => 'Location'
146
+ property :Modify, :label => 'Modify'
147
+ property :Organization, :label => 'Organization'
148
+ property :Person, :label => 'Person'
149
+ property :Plan, :label => 'Plan', :comment =>
150
+ %(There exist no prescriptive requirement on the nature of
151
+ plans, their representation, the actions or steps they consist
152
+ of, or their intended goals. Since plans may evolve over time,
153
+ it may become necessary to track their provenance, so plans
154
+ themselves are entities. Representing the plan explicitly in
155
+ the provenance can be useful for various tasks: for example,
156
+ to validate the execution as represented in the provenance
157
+ record, to manage expectation failures, or to provide
158
+ explanations.)
159
+ property :PrimarySource, :label => 'PrimarySource', :comment =>
160
+ %(An instance of prov:PrimarySource provides additional
161
+ descriptions about the binary prov:hadPrimarySource relation
162
+ from some secondary prov:Entity to an earlier, primary
163
+ prov:Entity. For example, :blog prov:hadPrimarySource
164
+ :newsArticle; prov:qualifiedPrimarySource [ a
165
+ prov:PrimarySource; prov:entity :newsArticle; :foo :bar ] .)
166
+ property :DirectQueryService, :label => 'ProvenanceService', :comment =>
167
+ %(Type for a generic provenance query service. Mainly for use in
168
+ RDF provenance query service descriptions, to facilitate
169
+ discovery in linked data environments.)
170
+ property :Publish, :label => 'Publish'
171
+ property :Publisher, :label => 'Publisher'
172
+ property :Quotation, :label => 'Quotation', :comment =>
173
+ %(An instance of prov:Quotation provides additional descriptions
174
+ about the binary prov:wasQuotedFrom relation from some taken
175
+ prov:Entity from an earlier, larger prov:Entity. For example,
176
+ :here_is_looking_at_you_kid prov:wasQuotedFrom
177
+ :casablanca_script; prov:qualifiedQuotation [ a
178
+ prov:Quotation; prov:entity :casablanca_script; :foo :bar ].)
179
+ property :Removal, :label => 'Removal'
180
+ property :Replace, :label => 'Replace'
181
+ property :Revision, :label => 'Revision', :comment =>
182
+ %(An instance of prov:Revision provides additional descriptions
183
+ about the binary prov:wasRevisionOf relation from some newer
184
+ prov:Entity to an earlier prov:Entity. For example, :draft_2
185
+ prov:wasRevisionOf :draft_1; prov:qualifiedRevision [ a
186
+ prov:Revision; prov:entity :draft_1; :foo :bar ].)
187
+ property :RightsAssignment, :label => 'RightsAssignment'
188
+ property :RightsHolder, :label => 'RightsHolder'
189
+ property :Role, :label => 'Role'
190
+ property :ServiceDescription, :label => 'ServiceDescription', :comment =>
191
+ %(Type for a generic provenance query service. Mainly for use in
192
+ RDF provenance query service descriptions, to facilitate
193
+ discovery in linked data environments.)
194
+ property :SoftwareAgent, :label => 'SoftwareAgent'
195
+ property :Start, :label => 'Start', :comment =>
196
+ %(An instance of prov:Start provides additional descriptions
197
+ about the binary prov:wasStartedBy relation from some started
198
+ prov:Activity to an prov:Entity that started it. For example,
199
+ :foot_race prov:wasStartedBy :bang; prov:qualifiedStart [ a
200
+ prov:Start; prov:entity :bang; :foo :bar; prov:atTime
201
+ '2012-03-09T08:05:08-05:00'^^xsd:dateTime ] .)
202
+ property :Submit, :label => 'Submit'
203
+ property :Usage, :label => 'Usage', :comment =>
204
+ %(An instance of prov:Usage provides additional descriptions
205
+ about the binary prov:used relation from some prov:Activity to
206
+ an prov:Entity that it used. For example, :keynote prov:used
207
+ :podium; prov:qualifiedUsage [ a prov:Usage; prov:entity
208
+ :podium; :foo :bar ].)
209
+
210
+ # Property definitions
211
+ property :atTime, :label => 'atTime', :comment =>
212
+ %(The time at which an InstantaneousEvent occurred, in the form
213
+ of xsd:dateTime.)
214
+ property :endedAtTime, :label => 'endedAtTime', :comment =>
215
+ %(The time at which an activity ended. See also
216
+ prov:startedAtTime.)
217
+ property :generatedAtTime, :label => 'generatedAtTime', :comment =>
218
+ %(The time at which an entity was completely created and is
219
+ available for use.)
220
+ property :invalidatedAtTime, :label => 'invalidatedAtTime', :comment =>
221
+ %(The time at which an entity was invalidated \(i.e., no longer
222
+ usable\).)
223
+ property :pairKey, :label => 'pairKey'
224
+ property :provenanceUriTemplate, :label => 'provenanceUriTemplate', :comment =>
225
+ %(Relates a provenance service to a URI template string for
226
+ constructing provenance-URIs.)
227
+ property :removedKey, :label => 'removedKey'
228
+ property :startedAtTime, :label => 'startedAtTime', :comment =>
229
+ %(The time at which an activity started. See also
230
+ prov:endedAtTime.)
231
+ property :value, :label => 'value'
232
+ property :actedOnBehalfOf, :label => 'actedOnBehalfOf', :comment =>
233
+ %(An object property to express the accountability of an agent
234
+ towards another agent. The subordinate agent acted on behalf
235
+ of the responsible agent in an actual activity.)
236
+ property :activity, :label => 'activity'
237
+ property :agent, :label => 'agent'
238
+ property :alternateOf, :label => 'alternateOf'
239
+ property :asInBundle, :label => 'asInBundle', :comment =>
240
+ %(prov:asInBundle is used to specify which bundle the general
241
+ entity of a prov:mentionOf property is described. When :x
242
+ prov:mentionOf :y and :y is described in Bundle :b, the triple
243
+ :x prov:asInBundle :b is also asserted to cite the Bundle in
244
+ which :y was described.)
245
+ property :atLocation, :label => 'atLocation', :comment =>
246
+ %(This property has multiple RDFS domains to suit multiple OWL
247
+ Profiles. See <a href="#owl-profile">PROV-O OWL Profile</a>.)
248
+ property :atLocation, :label => 'atLocation', :comment =>
249
+ %(The Location of any resource.)
250
+ property :derivedByInsertionFrom, :label => 'derivedByInsertionFrom'
251
+ property :derivedByRemovalFrom, :label => 'derivedByRemovalFrom'
252
+ property :describesService, :label => 'describesService', :comment =>
253
+ %(relates a generic provenance query service resource \(type
254
+ prov:ServiceDescription\) to a specific query service
255
+ description \(e.g. a prov:DirectQueryService or a
256
+ sd:Service\).)
257
+ property :dictionary, :label => 'dictionary'
258
+ property :entity, :label => 'entity'
259
+ property :generated, :label => 'generated'
260
+ property :hadActivity, :label => 'hadActivity', :comment =>
261
+ %(The _optional_ Activity of an Influence, which used,
262
+ generated, invalidated, or was the responsibility of some
263
+ Entity. This property is _not_ used by ActivityInfluence \(use
264
+ prov:activity instead\).)
265
+ property :hadActivity, :label => 'hadActivity', :comment =>
266
+ %(This property has multiple RDFS domains to suit multiple OWL
267
+ Profiles. See <a href="#owl-profile">PROV-O OWL Profile</a>.)
268
+ property :hadDictionaryMember, :label => 'hadDictionaryMember'
269
+ property :hadGeneration, :label => 'hadGeneration', :comment =>
270
+ %(The _optional_ Generation involved in an Entity's Derivation.)
271
+ property :hadMember, :label => 'hadMember'
272
+ property :hadPlan, :label => 'hadPlan', :comment =>
273
+ %(The _optional_ Plan adopted by an Agent in Association with
274
+ some Activity. Plan specifications are out of the scope of
275
+ this specification.)
276
+ property :hadPrimarySource, :label => 'hadPrimarySource'
277
+ property :hadRole, :label => 'hadRole', :comment =>
278
+ %(This property has multiple RDFS domains to suit multiple OWL
279
+ Profiles. See <a href="#owl-profile">PROV-O OWL Profile</a>.)
280
+ property :hadRole, :label => 'hadRole', :comment =>
281
+ %(The _optional_ Role that an Entity assumed in the context of
282
+ an Activity. For example, :baking prov:used :spoon;
283
+ prov:qualified [ a prov:Usage; prov:entity :spoon;
284
+ prov:hadRole roles:mixing_implement ].)
285
+ property :hadUsage, :label => 'hadUsage', :comment =>
286
+ %(The _optional_ Usage involved in an Entity's Derivation.)
287
+ property :has_query_service, :label => 'hasProvenanceService', :comment =>
288
+ %(Indicates a provenance query service that can access
289
+ provenance related to its subject or anchor resource.)
290
+ property :has_anchor, :label => 'has_anchor', :comment =>
291
+ %(Indicates anchor URI for a potentially dynamic resource
292
+ instance.)
293
+ property :has_provenance, :label => 'has_provenance', :comment =>
294
+ %(Indicates a provenance-URI for a resource; the resource
295
+ identified by this property presents a provenance record about
296
+ its subject or anchor resource.)
297
+ property :influenced, :label => 'influenced'
298
+ property :influencer, :label => 'influencer', :comment =>
299
+ %(Subproperties of prov:influencer are used to cite the object
300
+ of an unqualified PROV-O triple whose predicate is a
301
+ subproperty of prov:wasInfluencedBy \(e.g. prov:used,
302
+ prov:wasGeneratedBy\). prov:influencer is used much like
303
+ rdf:object is used.)
304
+ property :insertedKeyEntityPair, :label => 'insertedKeyEntityPair'
305
+ property :invalidated, :label => 'invalidated'
306
+ property :mentionOf, :label => 'mentionOf', :comment =>
307
+ %(prov:mentionOf is used to specialize an entity as described in
308
+ another bundle. It is to be used in conjuction with
309
+ prov:asInBundle. prov:asInBundle is used to cite the Bundle in
310
+ which the generalization was mentioned.)
311
+ property :pairEntity, :label => 'pairKey'
312
+ property :pingback, :label => 'provenance pingback', :comment =>
313
+ %(Relates a resource to a provenance pingback service that may
314
+ receive additional provenance links about the resource.)
315
+ property :qualifiedAssociation, :label => 'qualifiedAssociation', :comment =>
316
+ %(If this Activity prov:wasAssociatedWith Agent :ag, then it can
317
+ qualify the Association using prov:qualifiedAssociation [ a
318
+ prov:Association; prov:agent :ag; :foo :bar ].)
319
+ property :qualifiedAttribution, :label => 'qualifiedAttribution', :comment =>
320
+ %(If this Entity prov:wasAttributedTo Agent :ag, then it can
321
+ qualify how it was influenced using prov:qualifiedAttribution
322
+ [ a prov:Attribution; prov:agent :ag; :foo :bar ].)
323
+ property :qualifiedCommunication, :label => 'qualifiedCommunication', :comment =>
324
+ %(If this Activity prov:wasInformedBy Activity :a, then it can
325
+ qualify how it was influenced using
326
+ prov:qualifiedCommunication [ a prov:Communication;
327
+ prov:activity :a; :foo :bar ].)
328
+ property :qualifiedDelegation, :label => 'qualifiedDelegation', :comment =>
329
+ %(If this Agent prov:actedOnBehalfOf Agent :ag, then it can
330
+ qualify how with prov:qualifiedResponsibility [ a
331
+ prov:Responsibility; prov:agent :ag; :foo :bar ].)
332
+ property :qualifiedDerivation, :label => 'qualifiedDerivation', :comment =>
333
+ %(If this Entity prov:wasDerivedFrom Entity :e, then it can
334
+ qualify how it was derived using prov:qualifiedDerivation [ a
335
+ prov:Derivation; prov:entity :e; :foo :bar ].)
336
+ property :qualifiedEnd, :label => 'qualifiedEnd', :comment =>
337
+ %(If this Activity prov:wasEndedBy Entity :e1, then it can
338
+ qualify how it was ended using prov:qualifiedEnd [ a prov:End;
339
+ prov:entity :e1; :foo :bar ].)
340
+ property :qualifiedGeneration, :label => 'qualifiedGeneration', :comment =>
341
+ %(If this Activity prov:generated Entity :e, then it can qualify
342
+ how it performed the Generation using prov:qualifiedGeneration
343
+ [ a prov:Generation; prov:entity :e; :foo :bar ].)
344
+ property :qualifiedInfluence, :label => 'qualifiedInfluence', :comment =>
345
+ %(Because prov:qualifiedInfluence is a broad relation, the more
346
+ specific relations \(qualifiedCommunication,
347
+ qualifiedDelegation, qualifiedEnd, etc.\) should be used when
348
+ applicable.)
349
+ property :qualifiedInsertion, :label => 'qualifiedInsertion'
350
+ property :qualifiedInvalidation, :label => 'qualifiedInvalidation', :comment =>
351
+ %(If this Entity prov:wasInvalidatedBy Activity :a, then it can
352
+ qualify how it was invalidated using
353
+ prov:qualifiedInvalidation [ a prov:Invalidation;
354
+ prov:activity :a; :foo :bar ].)
355
+ property :qualifiedPrimarySource, :label => 'qualifiedPrimarySource', :comment =>
356
+ %(If this Entity prov:hadPrimarySource Entity :e, then it can
357
+ qualify how using prov:qualifiedPrimarySource [ a
358
+ prov:PrimarySource; prov:entity :e; :foo :bar ].)
359
+ property :qualifiedQuotation, :label => 'qualifiedQuotation', :comment =>
360
+ %(If this Entity prov:wasQuotedFrom Entity :e, then it can
361
+ qualify how using prov:qualifiedQuotation [ a prov:Quotation;
362
+ prov:entity :e; :foo :bar ].)
363
+ property :qualifiedRemoval, :label => 'qualifiedRemoval'
364
+ property :qualifiedRevision, :label => 'qualifiedRevision', :comment =>
365
+ %(If this Entity prov:wasRevisionOf Entity :e, then it can
366
+ qualify how it was revised using prov:qualifiedRevision [ a
367
+ prov:Revision; prov:entity :e; :foo :bar ].)
368
+ property :qualifiedStart, :label => 'qualifiedStart', :comment =>
369
+ %(If this Activity prov:wasStartedBy Entity :e1, then it can
370
+ qualify how it was started using prov:qualifiedStart [ a
371
+ prov:Start; prov:entity :e1; :foo :bar ].)
372
+ property :qualifiedUsage, :label => 'qualifiedUsage', :comment =>
373
+ %(If this Activity prov:used Entity :e, then it can qualify how
374
+ it used it using prov:qualifiedUsage [ a prov:Usage;
375
+ prov:entity :e; :foo :bar ].)
376
+ property :specializationOf, :label => 'specializationOf'
377
+ property :used, :label => 'used', :comment =>
378
+ %(A prov:Entity that was used by this prov:Activity. For
379
+ example, :baking prov:used :spoon, :egg, :oven .)
380
+ property :wasAssociatedWith, :label => 'wasAssociatedWith', :comment =>
381
+ %(An prov:Agent that had some \(unspecified\) responsibility for
382
+ the occurrence of this prov:Activity.)
383
+ property :wasAttributedTo, :label => 'wasAttributedTo', :comment =>
384
+ %(Attribution is the ascribing of an entity to an agent.)
385
+ property :wasDerivedFrom, :label => 'wasDerivedFrom', :comment =>
386
+ %(The more specific subproperties of prov:wasDerivedFrom \(i.e.,
387
+ prov:wasQuotedFrom, prov:wasRevisionOf,
388
+ prov:hadPrimarySource\) should be used when applicable.)
389
+ property :wasEndedBy, :label => 'wasEndedBy', :comment =>
390
+ %(End is when an activity is deemed to have ended. An end may
391
+ refer to an entity, known as trigger, that terminated the
392
+ activity.)
393
+ property :wasGeneratedBy, :label => 'wasGeneratedBy'
394
+ property :wasInfluencedBy, :label => 'wasInfluencedBy', :comment =>
395
+ %(This property has multiple RDFS domains to suit multiple OWL
396
+ Profiles. See <a href="#owl-profile">PROV-O OWL Profile</a>.)
397
+ property :wasInfluencedBy, :label => 'wasInfluencedBy', :comment =>
398
+ %(Because prov:wasInfluencedBy is a broad relation, its more
399
+ specific subproperties \(e.g. prov:wasInformedBy,
400
+ prov:actedOnBehalfOf, prov:wasEndedBy, etc.\) should be used
401
+ when applicable.)
402
+ property :wasInformedBy, :label => 'wasInformedBy', :comment =>
403
+ %(An activity a2 is dependent on or informed by another activity
404
+ a1, by way of some unspecified entity that is generated by a1
405
+ and used by a2.)
406
+ property :wasInvalidatedBy, :label => 'wasInvalidatedBy'
407
+ property :wasQuotedFrom, :label => 'wasQuotedFrom', :comment =>
408
+ %(An entity is derived from an original entity by copying, or
409
+ 'quoting', some or all of it.)
410
+ property :wasRevisionOf, :label => 'wasRevisionOf', :comment =>
411
+ %(A revision is a derivation that revises an entity into a
412
+ revised version.)
413
+ property :wasStartedBy, :label => 'wasStartedBy', :comment =>
414
+ %(Start is when an activity is deemed to have started. A start
415
+ may refer to an entity, known as trigger, that initiated the
416
+ activity.)
417
+ property :aq
418
+ property :category, :comment =>
419
+ %(Classify prov-o terms into three categories, including
420
+ 'starting-point', 'qualifed', and 'extended'. This
421
+ classification is used by the prov-o html document to gently
422
+ introduce prov-o terms to its users.)
423
+ property :component, :comment =>
424
+ %(Classify prov-o terms into six components according to
425
+ prov-dm, including 'agents-responsibility', 'alternate',
426
+ 'annotations', 'collections', 'derivations', and
427
+ 'entities-activities'. This classification is used so that
428
+ readers of prov-o specification can find its correspondence
429
+ with the prov-dm specification.)
430
+ property :constraints, :comment =>
431
+ %(A reference to the principal section of the PROV-CONSTRAINTS
432
+ document that describes this concept.)
433
+ property :definition, :comment =>
434
+ %(A definition quoted from PROV-DM or PROV-CONSTRAINTS that
435
+ describes the concept expressed with this OWL term.)
436
+ property :dm, :comment =>
437
+ %(A reference to the principal section of the PROV-DM document
438
+ that describes this concept.)
439
+ property :editorialNote, :comment =>
440
+ %(A note by the OWL development team about how this term
441
+ expresses the PROV-DM concept, or how it should be used in
442
+ context of semantic web or linked data.)
443
+ property :editorsDefinition, :comment =>
444
+ %(When the prov-o term does not have a definition drawn from
445
+ prov-dm, and the prov-o editor provides one.)
446
+ property :inverse, :comment =>
447
+ %(PROV-O does not define all property inverses. The
448
+ directionalities defined in PROV-O should be given preference
449
+ over those not defined. However, if users wish to name the
450
+ inverse of a PROV-O property, the local name given by
451
+ prov:inverse should be used.)
452
+ property :n, :comment =>
453
+ %(A reference to the principal section of the PROV-M document
454
+ that describes this concept.)
455
+ property :n, :comment =>
456
+ %(A reference to the principal section of the PROV-DM document
457
+ that describes this concept.)
458
+ property :order, :comment =>
459
+ %(The position that this OWL term should be listed within
460
+ documentation. The scope of the documentation \(e.g., among
461
+ all terms, among terms within a prov:category, among
462
+ properties applying to a particular class, etc.\) is
463
+ unspecified.)
464
+ property :qualifiedForm, :comment =>
465
+ %(This annotation property links a subproperty of
466
+ prov:wasInfluencedBy with the subclass of prov:Influence and
467
+ the qualifying property that are used to qualify it. Example
468
+ annotation: prov:wasGeneratedBy prov:qualifiedForm
469
+ prov:qualifiedGeneration, prov:Generation . Then this
470
+ unqualified assertion: :entity1 prov:wasGeneratedBy :activity1
471
+ . can be qualified by adding: :entity1
472
+ prov:qualifiedGeneration :entity1Gen . :entity1Gen a
473
+ prov:Generation, prov:Influence; prov:activity :activity1;
474
+ :customValue 1337 . Note how the value of the unqualified
475
+ influence \(prov:wasGeneratedBy :activity1\) is mirrored as
476
+ the value of the prov:activity \(or prov:entity, or
477
+ prov:agent\) property on the influence class.)
478
+ property :sharesDefinitionWith
479
+ property :todo
480
+ property :unqualifiedForm, :comment =>
481
+ %(Classes and properties used to qualify relationships are
482
+ annotated with prov:unqualifiedForm to indicate the property
483
+ used to assert an unqualified provenance relation.)
484
+ property :specializationOf, :label => 'specializationOf'
485
+ property :wasRevisionOf, :label => 'wasRevisionOf', :comment =>
486
+ %(A revision is a derivation that revises an entity into a
487
+ revised version.)
488
+ end
489
+ end