rdf-vocab 3.1.7 → 3.1.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -3
  3. data/VERSION +1 -1
  4. data/lib/rdf/vocab.rb +33 -8
  5. data/lib/rdf/vocab/acl.rb +67 -194
  6. data/lib/rdf/vocab/as.rb +471 -984
  7. data/lib/rdf/vocab/bf2.rb +1714 -3034
  8. data/lib/rdf/vocab/bibframe.rb +2270 -1840
  9. data/lib/rdf/vocab/bibo.rb +696 -1201
  10. data/lib/rdf/vocab/cc.rb +75 -214
  11. data/lib/rdf/vocab/cert.rb +90 -268
  12. data/lib/rdf/vocab/cnt.rb +70 -152
  13. data/lib/rdf/vocab/crm.rb +1420 -3261
  14. data/lib/rdf/vocab/datacite.rb +161 -161
  15. data/lib/rdf/vocab/dbo.rb +3901 -14146
  16. data/lib/rdf/vocab/dc.rb +556 -898
  17. data/lib/rdf/vocab/dc11.rb +92 -158
  18. data/lib/rdf/vocab/dcat.rb +300 -466
  19. data/lib/rdf/vocab/dcmitype.rb +77 -131
  20. data/lib/rdf/vocab/disco.rb +228 -459
  21. data/lib/rdf/vocab/doap.rb +250 -430
  22. data/lib/rdf/vocab/dwc.rb +1639 -2395
  23. data/lib/rdf/vocab/earl.rb +105 -243
  24. data/lib/rdf/vocab/ebucore.rb +3957 -8695
  25. data/lib/rdf/vocab/edm.rb +211 -426
  26. data/lib/rdf/vocab/exif.rb +614 -1268
  27. data/lib/rdf/vocab/extensions.rb +3 -3
  28. data/lib/rdf/vocab/fcrepo4.rb +268 -648
  29. data/lib/rdf/vocab/foaf.rb +448 -756
  30. data/lib/rdf/vocab/geo.rb +24 -167
  31. data/lib/rdf/vocab/geojson.rb +32 -101
  32. data/lib/rdf/vocab/geonames.rb +2915 -3092
  33. data/lib/rdf/vocab/gr.rb +716 -1991
  34. data/lib/rdf/vocab/gs1.rb +3780 -5380
  35. data/lib/rdf/vocab/ht.rb +133 -300
  36. data/lib/rdf/vocab/hydra.rb +298 -511
  37. data/lib/rdf/vocab/iana.rb +142 -417
  38. data/lib/rdf/vocab/ical.rb +532 -1045
  39. data/lib/rdf/vocab/identifiers.rb +215 -1019
  40. data/lib/rdf/vocab/iiif.rb +106 -245
  41. data/lib/rdf/vocab/jsonld.rb +163 -323
  42. data/lib/rdf/vocab/ldp.rb +161 -294
  43. data/lib/rdf/vocab/lrmi.rb +175 -199
  44. data/lib/rdf/vocab/ma.rb +312 -702
  45. data/lib/rdf/vocab/mads.rb +516 -1113
  46. data/lib/rdf/vocab/marcrelators.rb +540 -1351
  47. data/lib/rdf/vocab/mo.rb +1579 -2844
  48. data/lib/rdf/vocab/mods.rb +503 -1026
  49. data/lib/rdf/vocab/nfo.rb +311 -315
  50. data/lib/rdf/vocab/oa.rb +264 -546
  51. data/lib/rdf/vocab/og.rb +158 -239
  52. data/lib/rdf/vocab/ogc.rb +33 -70
  53. data/lib/rdf/vocab/ore.rb +64 -123
  54. data/lib/rdf/vocab/org.rb +226 -422
  55. data/lib/rdf/vocab/pcdm.rb +61 -133
  56. data/lib/rdf/vocab/pplan.rb +16 -202
  57. data/lib/rdf/vocab/premis.rb +793 -2039
  58. data/lib/rdf/vocab/premiseventtype.rb +115 -273
  59. data/lib/rdf/vocab/prov.rb +1077 -1724
  60. data/lib/rdf/vocab/ptr.rb +111 -254
  61. data/lib/rdf/vocab/rdau.rb +10506 -0
  62. data/lib/rdf/vocab/rightsstatements.rb +102 -110
  63. data/lib/rdf/vocab/rsa.rb +37 -89
  64. data/lib/rdf/vocab/rss.rb +34 -79
  65. data/lib/rdf/vocab/schema.rb +11734 -22244
  66. data/lib/rdf/vocab/schemas.rb +16870 -0
  67. data/lib/rdf/vocab/sd.rb +123 -280
  68. data/lib/rdf/vocab/sh.rb +912 -1651
  69. data/lib/rdf/vocab/sioc.rb +513 -917
  70. data/lib/rdf/vocab/siocservices.rb +39 -80
  71. data/lib/rdf/vocab/sioctypes.rb +183 -344
  72. data/lib/rdf/vocab/skos.rb +136 -260
  73. data/lib/rdf/vocab/skosxl.rb +36 -69
  74. data/lib/rdf/vocab/v.rb +231 -529
  75. data/lib/rdf/vocab/vcard.rb +407 -1038
  76. data/lib/rdf/vocab/vmd.rb +231 -529
  77. data/lib/rdf/vocab/void.rb +112 -236
  78. data/lib/rdf/vocab/vs.rb +20 -42
  79. data/lib/rdf/vocab/wdrs.rb +65 -158
  80. data/lib/rdf/vocab/wot.rb +113 -194
  81. data/lib/rdf/vocab/xhtml.rb +2 -7
  82. data/lib/rdf/vocab/xhv.rb +206 -663
  83. data/lib/rdf/vocab/xkos.rb +122 -275
  84. data/spec/extensions_spec.rb +1 -1
  85. data/spec/spec_helper.rb +13 -0
  86. metadata +72 -24
data/lib/rdf/vocab/cc.rb CHANGED
@@ -3,283 +3,144 @@
3
3
  # This file generated automatically using rdf vocabulary format from http://creativecommons.org/ns#
4
4
  require 'rdf'
5
5
  module RDF::Vocab
6
- # @!parse
7
- # # Vocabulary for <http://creativecommons.org/ns#>
8
- # #
9
- # class CC < RDF::StrictVocabulary
10
- # # the legal jurisdiction of a license
11
- # # @return [RDF::Vocabulary::Term]
12
- # attr_reader :Jurisdiction
13
- #
14
- # # a set of requests/permissions to users of a Work, e.g. a copyright license, the public domain, information for distributors
15
- # # @return [RDF::Vocabulary::Term]
16
- # attr_reader :License
17
- #
18
- # # an action that may or may not be allowed or desired
19
- # # @return [RDF::Vocabulary::Term]
20
- # attr_reader :Permission
21
- #
22
- # # something you may be asked not to do
23
- # # @return [RDF::Vocabulary::Term]
24
- # attr_reader :Prohibition
25
- #
26
- # # an action that may or may not be requested of you
27
- # # @return [RDF::Vocabulary::Term]
28
- # attr_reader :Requirement
29
- #
30
- # # a potentially copyrightable work
31
- # # @return [RDF::Vocabulary::Term]
32
- # attr_reader :Work
33
- #
34
- # # @return [RDF::Vocabulary::Term]
35
- # attr_reader :attributionName
36
- #
37
- # # @return [RDF::Vocabulary::Term]
38
- # attr_reader :attributionURL
39
- #
40
- # # @return [RDF::Vocabulary::Term]
41
- # attr_reader :deprecatedOn
42
- #
43
- # # @return [RDF::Vocabulary::Term]
44
- # attr_reader :jurisdiction
45
- #
46
- # # @return [RDF::Vocabulary::Term]
47
- # attr_reader :legalcode
48
- #
49
- # # @return [RDF::Vocabulary::Term]
50
- # attr_reader :license
51
- #
52
- # # @return [RDF::Vocabulary::Term]
53
- # attr_reader :morePermissions
54
- #
55
- # # @return [RDF::Vocabulary::Term]
56
- # attr_reader :permits
57
- #
58
- # # @return [RDF::Vocabulary::Term]
59
- # attr_reader :prohibits
60
- #
61
- # # @return [RDF::Vocabulary::Term]
62
- # attr_reader :requires
63
- #
64
- # # @return [RDF::Vocabulary::Term]
65
- # attr_reader :useGuidelines
66
- #
67
- # # credit be given to copyright holder and/or author
68
- # # @return [RDF::Vocabulary::Term]
69
- # attr_reader :Attribution
70
- #
71
- # # exercising rights for commercial purposes
72
- # # @return [RDF::Vocabulary::Term]
73
- # attr_reader :CommercialUse
74
- #
75
- # # derivative and combined works must be licensed under specified terms, similar to those on the original work
76
- # # @return [RDF::Vocabulary::Term]
77
- # attr_reader :Copyleft
78
- #
79
- # # distribution of derivative works
80
- # # @return [RDF::Vocabulary::Term]
81
- # attr_reader :DerivativeWorks
82
- #
83
- # # distribution, public display, and publicly performance
84
- # # @return [RDF::Vocabulary::Term]
85
- # attr_reader :Distribution
86
- #
87
- # # use in a non-developing country
88
- # # @return [RDF::Vocabulary::Term]
89
- # attr_reader :HighIncomeNationUse
90
- #
91
- # # derivative works must be licensed under specified terms, with at least the same conditions as the original work; combinations with the work may be licensed under different terms
92
- # # @return [RDF::Vocabulary::Term]
93
- # attr_reader :LesserCopyleft
94
- #
95
- # # copyright and license notices be kept intact
96
- # # @return [RDF::Vocabulary::Term]
97
- # attr_reader :Notice
98
- #
99
- # # making multiple copies
100
- # # @return [RDF::Vocabulary::Term]
101
- # attr_reader :Reproduction
102
- #
103
- # # derivative works be licensed under the same terms or compatible terms as the original work
104
- # # @return [RDF::Vocabulary::Term]
105
- # attr_reader :ShareAlike
106
- #
107
- # # permits commercial derivatives, but only non-commercial distribution
108
- # # @return [RDF::Vocabulary::Term]
109
- # attr_reader :Sharing
110
- #
111
- # # source code (the preferred form for making modifications) must be provided when exercising some rights granted by the license.
112
- # # @return [RDF::Vocabulary::Term]
113
- # attr_reader :SourceCode
114
- #
115
- # end
116
6
  CC = Class.new(RDF::StrictVocabulary("http://creativecommons.org/ns#")) do
117
7
 
118
8
  # Ontology definition
119
9
  ontology :"http://creativecommons.org/ns#",
120
- "xhv:license": "https://creativecommons.org/licenses/by/4.0/".freeze,
121
- "xhv:stylesheet": "https://creativecommons.org/includes/bootstrap.min.css".freeze
10
+ "http://www.w3.org/1999/xhtml/vocab#license": "https://creativecommons.org/licenses/by/4.0/".freeze,
11
+ "http://www.w3.org/1999/xhtml/vocab#stylesheet": "https://creativecommons.org/includes/bootstrap.min.css".freeze
122
12
 
123
13
  # Class definitions
124
14
  term :Jurisdiction,
125
- comment: %(the legal jurisdiction
126
- of a license).freeze,
15
+ comment: "the legal jurisdiction\nof a license".freeze,
127
16
  label: "Jurisdiction".freeze,
128
- type: "rdfs:Class".freeze
17
+ type: "http://www.w3.org/2000/01/rdf-schema#Class".freeze
129
18
  term :License,
130
- comment: %(a set of
131
- requests/permissions to users of a Work, e.g. a
132
- copyright license, the public domain, information
133
- for distributors).freeze,
19
+ comment: "a set of\nrequests/permissions to users of a Work, e.g. a\ncopyright license, the public domain, information\nfor distributors".freeze,
134
20
  label: "License".freeze,
135
- subClassOf: "dc:LicenseDocument".freeze,
136
- type: "rdfs:Class".freeze
21
+ subClassOf: "http://purl.org/dc/terms/LicenseDocument".freeze,
22
+ type: "http://www.w3.org/2000/01/rdf-schema#Class".freeze
137
23
  term :Permission,
138
- comment: %(an action that may or
139
- may not be allowed or desired).freeze,
24
+ comment: "an action that may or\nmay not be allowed or desired".freeze,
140
25
  label: "Permission".freeze,
141
- type: "rdfs:Class".freeze
26
+ type: "http://www.w3.org/2000/01/rdf-schema#Class".freeze
142
27
  term :Prohibition,
143
- comment: %(something you may be
144
- asked not to do).freeze,
28
+ comment: "something you may be\nasked not to do".freeze,
145
29
  label: "Prohibition".freeze,
146
- type: "rdfs:Class".freeze
30
+ type: "http://www.w3.org/2000/01/rdf-schema#Class".freeze
147
31
  term :Requirement,
148
- comment: %(an action that may or
149
- may not be requested of you).freeze,
32
+ comment: "an action that may or\nmay not be requested of you".freeze,
150
33
  label: "Requirement".freeze,
151
- type: "rdfs:Class".freeze
34
+ type: "http://www.w3.org/2000/01/rdf-schema#Class".freeze
152
35
  term :Work,
153
- comment: %(a potentially
154
- copyrightable work).freeze,
36
+ comment: "a potentially\ncopyrightable work".freeze,
155
37
  label: "Work".freeze,
156
- type: "rdfs:Class".freeze
38
+ type: "http://www.w3.org/2000/01/rdf-schema#Class".freeze
157
39
 
158
40
  # Property definitions
159
41
  property :attributionName,
160
- domain: "cc:Work".freeze,
161
- range: "rdfs:Literal".freeze,
162
- type: "rdf:Property".freeze
42
+ domain: "http://creativecommons.org/ns#Work".freeze,
43
+ range: "http://www.w3.org/2000/01/rdf-schema#Literal".freeze,
44
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
163
45
  property :attributionURL,
164
- domain: "cc:Work".freeze,
165
- range: "rdfs:Resource".freeze,
166
- type: "rdf:Property".freeze
46
+ domain: "http://creativecommons.org/ns#Work".freeze,
47
+ range: "http://www.w3.org/2000/01/rdf-schema#Resource".freeze,
48
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
167
49
  property :deprecatedOn,
168
- domain: "cc:License".freeze,
50
+ domain: "http://creativecommons.org/ns#License".freeze,
169
51
  label: "deprecated\non".freeze,
170
52
  range: "http://www.w3.org/2001/XMLSchema-datatypes#date".freeze,
171
- type: "rdf:Property".freeze
53
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
172
54
  property :jurisdiction,
173
- domain: "cc:License".freeze,
55
+ domain: "http://creativecommons.org/ns#License".freeze,
174
56
  label: "jurisdiction".freeze,
175
- range: "cc:Jurisdiction".freeze,
176
- type: "rdf:Property".freeze
57
+ range: "http://creativecommons.org/ns#Jurisdiction".freeze,
58
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
177
59
  property :legalcode,
178
- domain: "cc:License".freeze,
179
- range: "rdfs:Resource".freeze,
180
- type: "rdf:Property".freeze
60
+ domain: "http://creativecommons.org/ns#License".freeze,
61
+ range: "http://www.w3.org/2000/01/rdf-schema#Resource".freeze,
62
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
181
63
  property :license,
182
- domain: "cc:Work".freeze,
64
+ domain: "http://creativecommons.org/ns#Work".freeze,
65
+ "http://www.w3.org/2002/07/owl#sameAs": "http://www.w3.org/1999/xhtml/vocab#license".freeze,
183
66
  label: "has\nlicense".freeze,
184
- "owl:sameAs": "xhv:license".freeze,
185
- range: "cc:License".freeze,
186
- subPropertyOf: "dc:license".freeze,
187
- type: "rdf:Property".freeze
67
+ range: "http://creativecommons.org/ns#License".freeze,
68
+ subPropertyOf: "http://purl.org/dc/terms/license".freeze,
69
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
188
70
  property :morePermissions,
189
- domain: "cc:Work".freeze,
190
- range: "rdfs:Resource".freeze,
191
- subPropertyOf: "dc:relation".freeze,
192
- type: "rdf:Property".freeze
71
+ domain: "http://creativecommons.org/ns#Work".freeze,
72
+ range: "http://www.w3.org/2000/01/rdf-schema#Resource".freeze,
73
+ subPropertyOf: "http://purl.org/dc/terms/relation".freeze,
74
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
193
75
  property :permits,
194
- domain: "cc:License".freeze,
76
+ domain: "http://creativecommons.org/ns#License".freeze,
195
77
  label: "permits".freeze,
196
- range: "cc:Permission".freeze,
197
- type: "rdf:Property".freeze
78
+ range: "http://creativecommons.org/ns#Permission".freeze,
79
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
198
80
  property :prohibits,
199
- domain: "cc:License".freeze,
81
+ domain: "http://creativecommons.org/ns#License".freeze,
200
82
  label: "prohibits".freeze,
201
- range: "cc:Prohibition".freeze,
202
- type: "rdf:Property".freeze
83
+ range: "http://creativecommons.org/ns#Prohibition".freeze,
84
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
203
85
  property :requires,
204
- domain: "cc:License".freeze,
86
+ domain: "http://creativecommons.org/ns#License".freeze,
205
87
  label: "requires".freeze,
206
- range: "cc:Requirement".freeze,
207
- type: "rdf:Property".freeze
88
+ range: "http://creativecommons.org/ns#Requirement".freeze,
89
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
208
90
  property :useGuidelines,
209
- domain: "cc:Work".freeze,
210
- range: "rdfs:Resource".freeze,
211
- subPropertyOf: "dc:relation".freeze,
212
- type: "rdf:Property".freeze
91
+ domain: "http://creativecommons.org/ns#Work".freeze,
92
+ range: "http://www.w3.org/2000/01/rdf-schema#Resource".freeze,
93
+ subPropertyOf: "http://purl.org/dc/terms/relation".freeze,
94
+ type: "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze
213
95
 
214
96
  # Extra definitions
215
97
  term :Attribution,
216
- comment: %(credit be given to
217
- copyright holder and/or author).freeze,
98
+ comment: "credit be given to\ncopyright holder and/or author".freeze,
218
99
  label: "Attribution".freeze,
219
- type: "cc:Requirement".freeze
100
+ type: "http://creativecommons.org/ns#Requirement".freeze
220
101
  term :CommercialUse,
221
- comment: %(exercising rights for
222
- commercial purposes).freeze,
102
+ comment: "exercising rights for\ncommercial purposes".freeze,
223
103
  label: "Commercial Use".freeze,
224
- type: "cc:Prohibition".freeze
104
+ type: "http://creativecommons.org/ns#Prohibition".freeze
225
105
  term :Copyleft,
226
- comment: %(derivative and
227
- combined works must be licensed under specified
228
- terms, similar to those on the original
229
- work).freeze,
106
+ comment: "derivative and\ncombined works must be licensed under specified\nterms, similar to those on the original\nwork".freeze,
230
107
  label: "Copyleft".freeze,
231
- type: "cc:Requirement".freeze
108
+ type: "http://creativecommons.org/ns#Requirement".freeze
232
109
  term :DerivativeWorks,
233
- comment: %(distribution of
234
- derivative works).freeze,
110
+ comment: "distribution of\nderivative works".freeze,
235
111
  label: "Derivative Works".freeze,
236
- type: "cc:Permission".freeze
112
+ type: "http://creativecommons.org/ns#Permission".freeze
237
113
  term :Distribution,
238
- comment: %(distribution, public
239
- display, and publicly performance).freeze,
114
+ comment: "distribution, public\ndisplay, and publicly performance".freeze,
240
115
  label: "Distribution".freeze,
241
- type: "cc:Permission".freeze
116
+ type: "http://creativecommons.org/ns#Permission".freeze
242
117
  term :HighIncomeNationUse,
243
- comment: %(use in a
244
- non-developing country).freeze,
118
+ comment: "use in a\nnon-developing country".freeze,
245
119
  label: "High Income Nation Use".freeze,
246
- type: "cc:Prohibition".freeze
120
+ type: "http://creativecommons.org/ns#Prohibition".freeze
247
121
  term :LesserCopyleft,
248
- comment: %(derivative works must
249
- be licensed under specified terms, with at least
250
- the same conditions as the original work;
251
- combinations with the work may be licensed under
252
- different terms).freeze,
122
+ comment: "derivative works must\nbe licensed under specified terms, with at least\nthe same conditions as the original work;\ncombinations with the work may be licensed under\ndifferent terms".freeze,
253
123
  label: "Lesser Copyleft".freeze,
254
- type: "cc:Requirement".freeze
124
+ type: "http://creativecommons.org/ns#Requirement".freeze
255
125
  term :Notice,
256
- comment: %(copyright and license
257
- notices be kept intact).freeze,
126
+ comment: "copyright and license\nnotices be kept intact".freeze,
258
127
  label: "Notice".freeze,
259
- type: "cc:Requirement".freeze
128
+ type: "http://creativecommons.org/ns#Requirement".freeze
260
129
  term :Reproduction,
261
- comment: %(making multiple
262
- copies).freeze,
130
+ comment: "making multiple\ncopies".freeze,
263
131
  label: "Reproduction".freeze,
264
- type: "cc:Permission".freeze
132
+ type: "http://creativecommons.org/ns#Permission".freeze
265
133
  term :ShareAlike,
266
- comment: %(derivative works be
267
- licensed under the same terms or compatible terms
268
- as the original work).freeze,
134
+ comment: "derivative works be\nlicensed under the same terms or compatible terms\nas the original work".freeze,
269
135
  label: "Share Alike".freeze,
270
- type: "cc:Requirement".freeze
136
+ type: "http://creativecommons.org/ns#Requirement".freeze
271
137
  term :Sharing,
272
- comment: %(permits commercial
273
- derivatives, but only non-commercial
274
- distribution).freeze,
138
+ comment: "permits commercial\nderivatives, but only non-commercial\ndistribution".freeze,
275
139
  label: "Sharing".freeze,
276
- type: "cc:Permission".freeze
140
+ type: "http://creativecommons.org/ns#Permission".freeze
277
141
  term :SourceCode,
278
- comment: %(source code \(the
279
- preferred form for making modifications\) must be
280
- provided when exercising some rights granted by
281
- the license.).freeze,
142
+ comment: "source code (the\npreferred form for making modifications) must be\nprovided when exercising some rights granted by\nthe license.".freeze,
282
143
  label: "Source Code".freeze,
283
- type: "cc:Requirement".freeze
144
+ type: "http://creativecommons.org/ns#Requirement".freeze
284
145
  end
285
146
  end
@@ -3,313 +3,135 @@
3
3
  # This file generated automatically using rdf vocabulary format from http://www.w3.org/ns/auth/cert#
4
4
  require 'rdf'
5
5
  module RDF::Vocab
6
- # @!parse
7
- # # Vocabulary for <http://www.w3.org/ns/auth/cert#>
8
- # #
9
- # # Ontology for Certificates and crypto stuff.
10
- # #
11
- # # Ontology for Certificates and crypto stuff. This is in development. Some other ontologies to look at: * http://www.w3.org/2000/10/swap/crypto + has cwm builtins: http://www.w3.org/2000/10/swap/doc/Trust - a bit old perhaps. It imports daml+oil - would help to be more completely specified - uses literals as subjects a little liberally, which makes this a bit difficult to work with frameworks that don't permit this * http://xmlns.com/wot/0.1/ - limited very much to PGP (though on can map PGP to X509) - a little coarse grained, mixes up the PGP certificate with the PGP public key * Todo: - add some classes and relations for DSA - should this all be in one file? Or should this be cut up a little? Say one file for the general CERT ontology, and then files for RSA, DSA, PGP, etc... Or perhaps it does not really matter? - expand more on the certification side of things - verify this by security experts - owl2 has some constructs for combined inverse functional properties. This may be useful to use in defining an RSA key which is identified by two numbers. - also create html version of the spec by using this as a template. - should comments such as this be in html?
12
- # # @see http://lists.foaf-project.org/mailman/listinfo/foaf-protocols
13
- # # @see http://www.w3.org/ns/auth/X509Uml.svg
14
- # # @see http://www.w3.org/ns/auth/rsa
15
- # class CERT < RDF::StrictVocabulary
16
- # # A certificate is a Document that is signed. As explained here http://www.pgpi.org/doc/pgpintro/#p16 'A digital certificate consists of three things: * A public key. * Certificate information. ('Identity' information about the user, such as name, user ID, and so on.) * One or more digital signatures.'
17
- # # @return [RDF::Vocabulary::Term]
18
- # attr_reader :Certificate
19
- #
20
- # # the class of keys
21
- # # @return [RDF::Vocabulary::Term]
22
- # attr_reader :Key
23
- #
24
- # # the class of PGP Certificates
25
- # # @return [RDF::Vocabulary::Term]
26
- # attr_reader :PGPCertificate
27
- #
28
- # # Private Key
29
- # # @return [RDF::Vocabulary::Term]
30
- # attr_reader :PrivateKey
31
- #
32
- # # Public Key
33
- # # @return [RDF::Vocabulary::Term]
34
- # attr_reader :PublicKey
35
- #
36
- # # The union of the public and private components of an RSAKey. Usually those pieces are not kept together
37
- # # @return [RDF::Vocabulary::Term]
38
- # attr_reader :RSAKey
39
- #
40
- # # The RSA public key. Padded message m are encrypted by applying the function modulus(power(m,exponent),modulus)
41
- # # @return [RDF::Vocabulary::Term]
42
- # attr_reader :RSAPublicKey
43
- #
44
- # # the class of signtatures
45
- # # @return [RDF::Vocabulary::Term]
46
- # attr_reader :Signature
47
- #
48
- # # the class of X509 Certificates
49
- # # @return [RDF::Vocabulary::Term]
50
- # attr_reader :X509Certificate
51
- #
52
- # # The exponent used to encrypt the message. Number chosen between 1 and the totient(p*q). Often named 'e' .
53
- # # @return [RDF::Vocabulary::Term]
54
- # attr_reader :exponent
55
- #
56
- # # the identity of the public key. This is the entity that knows the private key and so can decrypt messages encrypted with the public key, or encrypt messages that can be decrypted with the public key.
57
- # # @return [RDF::Vocabulary::Term]
58
- # attr_reader :identity
59
- #
60
- # # relates an agent to a key - most often the public key.
61
- # # @return [RDF::Vocabulary::Term]
62
- # attr_reader :key
63
- #
64
- # # <p>The modulus of an RSA public and private key. Or the modulus of a DSA Key. The modulus is encoded as a hex binary. The binary is the same as the one encoded in the <a href="http://www.w3.org/TR/xmldsig-core/#sec-CryptoBinary">XML DSIG CryptoBinary</a> </p> <blockquote> This specification defines the ds:CryptoBinary simple type for representing arbitrary-length integers (e.g. "bignums") in XML as octet strings. The integer value is first converted to a "big endian" bitstring. The bitstring is then padded with leading zero bits so that the total number of bits == 0 mod 8 (so that there are an integral number of octets). If the bitstring contains entire leading octets that are zero, these are removed (so the high-order octet is always non-zero). </blockquote> <p>The only difference is that the octet string is then encoded using either xsd:base64Binary or xsd:hexBinary. Currently for all usages of this relation, the xsd:hexBinary datatype should be used until the SPARQL working group specifies specifies in its <a href="http://www.w3.org/TR/sparql11-entailment/#DEntRegime">D-Entailment</a> that those two types are equivalent.</p> <p>It would have been better had there been a hexInteger datatype that was standard and supported by all tools.</p>
65
- # # @return [RDF::Vocabulary::Term]
66
- # attr_reader :modulus
67
- #
68
- # # The exponent used to decrypt the message calculated as public_exponent*private_exponent = 1 modulo totient(p*q) The private exponent is often named 'd'
69
- # # @return [RDF::Vocabulary::Term]
70
- # attr_reader :privateExponent
71
- #
72
- # # <span xmlns="http://www.w3.org/1999/xhtml" xmlns:dc="http://purl.org/dc/terms/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:vs="http://www.w3.org/2003/06/sw-vocab-status/ns#"><p> An encoding of a positive integer (from 0 to infinity) as a hexadecimal string that makes it easy to read and/or fun to present on the web.</p> <p>The purpose of this way of representing hexadecimals is to enable users to copy and paste hexadecimal notations as shown by most browsers, keychains or tools such as opensso, into their rdf representation of choice. There are a wide variety of ways in which such strings can be presented. One finds the following:</p> <pre> e1 dc d5 e1 00 8f 21 5e d5 cc 7c 7e c4 9c ad 86 64 aa dc 29 f2 8d d9 56 7f 31 b6 bd 1b fd b8 ee 51 0d 3c 84 59 a2 45 d2 13 59 2a 14 82 1a 0f 6e d3 d1 4a 2d a9 4c 7e db 90 07 fc f1 8d a3 8e 38 25 21 0a 32 c1 95 31 3c ba 56 cc 17 45 87 e1 eb fd 9f 0f 82 16 67 9f 67 fa 91 e4 0d 55 4e 52 c0 66 64 2f fe 98 8f ae f8 96 21 5e ea 38 9e 5c 4f 27 e2 48 ca ca f2 90 23 ad 99 4b cc 38 32 6d bf </pre> <p> Or the same as the above, with ':' instead of spaces. We can't guarantee that these are the only ways such tools will present hexadecimals, so we are very lax.</p> <p>The letters can be uppercase or lowercase, or mixed. </p> <p>Some strings may start with initial 00's, and can be stripped in this notation as they often are. Doing this could, in complement of 2 notation turn a positive number into a negative one, if the first hexadecimal character happens to be one of the set {'8', '9', 'a', 'A', 'b', 'B', 'c', 'C', 'd', 'D', 'e', 'E', 'f', 'F'} . As we interpret this string as a hexadecimal number leading 00s are not important (Complement of 2 notation and hexadecimal overlap for positive numbers)</p> <p> In order to make this fun, we allow any unicode characters in the string. A parser should </p> <ol> <li>remove all non hexadecimal characters</li> <li>treat the resulting as a hexadecimal representation of a number</li> </ol> <p> This will allow people to make an ascii - better yet a UTF-8 - picture of their public key when publishing it on the web. </p> <p> Cert hex is also a datatype property because we used to write it out like this </p> <pre> [] a rsa:RSAPublicKey; rsa:public_exponent [ cert:hex "e1 dc d5 ..."] </pre> <p> The above notation is now deprecated. Now we prefer the literal format below.</p> <pre> [] a rsa:RSAPublicKey; rsa:public_exponent "e1 dc d5 ..."^^cert:hex . </pre> </span>
73
- # # @return [RDF::Vocabulary::Term]
74
- # attr_reader :hex
75
- #
76
- # end
77
6
  CERT = Class.new(RDF::StrictVocabulary("http://www.w3.org/ns/auth/cert#")) do
78
7
 
79
8
  # Ontology definition
80
9
  ontology :"http://www.w3.org/ns/auth/cert#",
81
- comment: %(
82
- Ontology for Certificates and crypto stuff.
83
- This is in development.
84
- Some other ontologies to look at:
85
- * http://www.w3.org/2000/10/swap/crypto
86
- + has cwm builtins: http://www.w3.org/2000/10/swap/doc/Trust
87
- - a bit old perhaps. It imports daml+oil
88
- - would help to be more completely specified
89
- - uses literals as subjects a little liberally, which makes this a
90
- bit difficult to work with frameworks that don't permit this
91
- * http://xmlns.com/wot/0.1/
92
- - limited very much to PGP \(though on can map PGP to X509\)
93
- - a little coarse grained, mixes up the PGP certificate with the PGP
94
- public key
95
- *
96
- Todo:
97
- - add some classes and relations for DSA
98
- - should this all be in one file? Or should this be cut up a little? Say one file for the general CERT ontology, and then files for RSA, DSA, PGP, etc... Or perhaps it does not really matter?
99
- - expand more on the certification side of things
100
- - verify this by security experts
101
- - owl2 has some constructs for combined inverse functional properties.
102
- This may be useful to use in defining an RSA key which is identified
103
- by two numbers.
104
- - also create html version of the spec by using this as a template.
105
- - should comments such as this be in html?
106
- ).freeze,
107
- "dc:created": "2008-11-13".freeze,
108
- "foaf:maker": "http://bblfish.net/people/henry/card#me".freeze,
10
+ comment: "\n Ontology for Certificates and crypto stuff.\n This is in development. \n Some other ontologies to look at:\n * http://www.w3.org/2000/10/swap/crypto\n + has cwm builtins: http://www.w3.org/2000/10/swap/doc/Trust\n - a bit old perhaps. It imports daml+oil\n - would help to be more completely specified\n - uses literals as subjects a little liberally, which makes this a \n bit difficult to work with frameworks that don't permit this\n * http://xmlns.com/wot/0.1/\n - limited very much to PGP (though on can map PGP to X509)\n - a little coarse grained, mixes up the PGP certificate with the PGP\n public key\n *\n Todo: \n - add some classes and relations for DSA\n - should this all be in one file? Or should this be cut up a little? Say one file for the general CERT ontology, and then files for RSA, DSA, PGP, etc... Or perhaps it does not really matter?\n - expand more on the certification side of things\n - verify this by security experts\n - owl2 has some constructs for combined inverse functional properties. \n This may be useful to use in defining an RSA key which is identified\n by two numbers.\n - also create html version of the spec by using this as a template.\n - should comments such as this be in html?\n ".freeze,
11
+ "http://purl.org/dc/terms/created": "2008-11-13".freeze,
12
+ "http://www.w3.org/2000/01/rdf-schema#seeAlso": ["http://lists.foaf-project.org/mailman/listinfo/foaf-protocols".freeze, "http://www.w3.org/ns/auth/X509Uml.svg".freeze, "http://www.w3.org/ns/auth/rsa".freeze],
13
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
14
+ "http://xmlns.com/foaf/0.1/maker": "http://bblfish.net/people/henry/card#me".freeze,
109
15
  label: "Ontology for Certificates and crypto stuff.".freeze,
110
- "rdfs:seeAlso": ["http://lists.foaf-project.org/mailman/listinfo/foaf-protocols".freeze, "http://www.w3.org/ns/auth/X509Uml.svg".freeze, "http://www.w3.org/ns/auth/rsa".freeze],
111
- type: "owl:Ontology".freeze,
112
- "vs:term_status": "unstable".freeze
16
+ type: "http://www.w3.org/2002/07/owl#Ontology".freeze
113
17
 
114
18
  # Class definitions
115
19
  term :Certificate,
116
- comment: %(A certificate is a Document that is signed.
117
- As explained here http://www.pgpi.org/doc/pgpintro/#p16
118
- 'A digital certificate consists of three things:
119
- * A public key.
120
- * Certificate information. \('Identity' information about the
121
- user, such as name, user ID, and so on.\)
122
- * One or more digital signatures.'
123
- ).freeze,
124
- isDefinedBy: "cert:".freeze,
20
+ comment: "A certificate is a Document that is signed.\n As explained here http://www.pgpi.org/doc/pgpintro/#p16\n 'A digital certificate consists of three things:\n * A public key.\n * Certificate information. ('Identity' information about the \n user, such as name, user ID, and so on.)\n * One or more digital signatures.'\n ".freeze,
21
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
22
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
125
23
  label: "Certificate".freeze,
126
- subClassOf: "foaf:Document".freeze,
127
- type: "owl:Class".freeze,
128
- "vs:term_status": "unstable".freeze
24
+ subClassOf: "http://xmlns.com/foaf/0.1/Document".freeze,
25
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
129
26
  term :Key,
130
- comment: %(the class of keys).freeze,
131
- isDefinedBy: "cert:".freeze,
132
- type: "owl:Class".freeze,
133
- "vs:term_status": "unstable".freeze
27
+ comment: "the class of keys".freeze,
28
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
29
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
30
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
134
31
  term :PGPCertificate,
135
- comment: %(the class of PGP Certificates).freeze,
136
- equivalentClass: "wot:PubKey".freeze,
137
- isDefinedBy: "cert:".freeze,
32
+ comment: "the class of PGP Certificates".freeze,
33
+ equivalentClass: "http://xmlns.com/wot/0.1/PubKey".freeze,
34
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
35
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
138
36
  label: "PGPCertificate".freeze,
139
- subClassOf: "cert:Certificate".freeze,
140
- type: "owl:Class".freeze,
141
- "vs:term_status": "unstable".freeze
37
+ subClassOf: "http://www.w3.org/ns/auth/cert#Certificate".freeze,
38
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
142
39
  term :PrivateKey,
143
- comment: %(Private Key).freeze,
144
- isDefinedBy: "cert:".freeze,
40
+ comment: "Private Key".freeze,
41
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
145
42
  label: "PrivateKey".freeze,
146
- subClassOf: "cert:Key".freeze,
147
- type: "owl:Class".freeze
43
+ subClassOf: "http://www.w3.org/ns/auth/cert#Key".freeze,
44
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
148
45
  term :PublicKey,
149
- comment: %(Public Key).freeze,
150
- isDefinedBy: "cert:".freeze,
46
+ comment: "Public Key".freeze,
47
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
48
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
151
49
  label: "PublicKey".freeze,
152
- subClassOf: "cert:Key".freeze,
153
- type: "owl:Class".freeze,
154
- "vs:term_status": "unstable".freeze
50
+ subClassOf: "http://www.w3.org/ns/auth/cert#Key".freeze,
51
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
155
52
  term :RSAKey,
156
- comment: %(
157
- The union of the public and private components of an RSAKey.
158
- Usually those pieces are not kept together
159
- ).freeze,
160
- isDefinedBy: "cert:".freeze,
53
+ comment: "\n The union of the public and private components of an RSAKey.\n Usually those pieces are not kept together\n ".freeze,
54
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
55
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
161
56
  label: "RSA Key".freeze,
162
- subClassOf: "cert:Key".freeze,
163
- type: "owl:Class".freeze,
164
- "vs:term_status": "unstable".freeze
57
+ subClassOf: "http://www.w3.org/ns/auth/cert#Key".freeze,
58
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
165
59
  term :RSAPublicKey,
166
- comment: %(
167
- The RSA public key. Padded message m are encrypted by applying the function
168
- modulus\(power\(m,exponent\),modulus\)
169
- ).freeze,
170
- isDefinedBy: "cert:".freeze,
60
+ comment: "\n The RSA public key. Padded message m are encrypted by applying the function\n modulus(power(m,exponent),modulus)\n ".freeze,
61
+ "http://www.w3.org/2000/01/rdf-schema#seeAlso": "http://en.wikipedia.org/wiki/RSA".freeze,
62
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
63
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
171
64
  label: "RSA Public Key".freeze,
172
- "rdfs:seeAlso": "http://en.wikipedia.org/wiki/RSA".freeze,
173
- subClassOf: ["cert:PublicKey".freeze, "cert:RSAKey".freeze],
174
- type: "owl:Class".freeze,
175
- "vs:term_status": "unstable".freeze
65
+ subClassOf: ["http://www.w3.org/ns/auth/cert#PublicKey".freeze, "http://www.w3.org/ns/auth/cert#RSAKey".freeze],
66
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
176
67
  term :Signature,
177
- comment: %(the class of signtatures).freeze,
178
- isDefinedBy: "cert:".freeze,
68
+ comment: "the class of signtatures".freeze,
69
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
70
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
179
71
  label: "Signature".freeze,
180
- type: "owl:Class".freeze,
181
- "vs:term_status": "unstable".freeze
72
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
182
73
  term :X509Certificate,
183
- comment: %(the class of X509 Certificates).freeze,
184
- isDefinedBy: "cert:".freeze,
74
+ comment: "the class of X509 Certificates".freeze,
75
+ "http://www.w3.org/2000/01/rdf-schema#seeAlso": "http://en.wikipedia.org/wiki/X509".freeze,
76
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
77
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
185
78
  label: "X509Certificate".freeze,
186
- "rdfs:seeAlso": "http://en.wikipedia.org/wiki/X509".freeze,
187
- subClassOf: "cert:Certificate".freeze,
188
- type: "owl:Class".freeze,
189
- "vs:term_status": "unstable".freeze
79
+ subClassOf: "http://www.w3.org/ns/auth/cert#Certificate".freeze,
80
+ type: "http://www.w3.org/2002/07/owl#Class".freeze
190
81
 
191
82
  # Property definitions
192
83
  property :exponent,
193
- comment: %(
194
- The exponent used to encrypt the message. Number chosen between
195
- 1 and the totient\(p*q\). Often named 'e' .
196
- ).freeze,
197
- domain: "cert:RSAPublicKey".freeze,
198
- isDefinedBy: "cert:".freeze,
84
+ comment: "\n The exponent used to encrypt the message. Number chosen between\n 1 and the totient(p*q). Often named 'e' .\n ".freeze,
85
+ domain: "http://www.w3.org/ns/auth/cert#RSAPublicKey".freeze,
86
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
87
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
199
88
  label: "exponent".freeze,
200
- range: "xsd:nonNegativeInteger".freeze,
201
- type: "owl:DatatypeProperty".freeze,
202
- "vs:term_status": "unstable".freeze
89
+ range: "http://www.w3.org/2001/XMLSchema#nonNegativeInteger".freeze,
90
+ type: "http://www.w3.org/2002/07/owl#DatatypeProperty".freeze
203
91
  property :identity,
204
- comment: %(
205
- the identity of the public key. This is the entity that knows the private key and
206
- so can decrypt messages encrypted with the public key, or encrypt messages that can
207
- be decrypted with the public key.
208
- ).freeze,
209
- domain: "cert:PublicKey".freeze,
210
- editorialNote: %(
211
- It turns out that this relation is unintuitive to write out and to name.
212
- One should instead use cert:key
213
- ).freeze,
214
- inverseOf: "cert:key".freeze,
215
- isDefinedBy: "cert:".freeze,
92
+ comment: "\n the identity of the public key. This is the entity that knows the private key and \n so can decrypt messages encrypted with the public key, or encrypt messages that can \n be decrypted with the public key. \n ".freeze,
93
+ domain: "http://www.w3.org/ns/auth/cert#PublicKey".freeze,
94
+ editorialNote: "\n It turns out that this relation is unintuitive to write out and to name.\n One should instead use cert:key\n ".freeze,
95
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "archaic".freeze,
96
+ inverseOf: "http://www.w3.org/ns/auth/cert#key".freeze,
97
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
216
98
  label: "identity".freeze,
217
- type: ["owl:ObjectProperty".freeze, "rdf:Property".freeze],
218
- "vs:term_status": "archaic".freeze
99
+ type: ["http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze, "http://www.w3.org/2002/07/owl#ObjectProperty".freeze]
219
100
  property :key,
220
- comment: %(relates an agent to a key - most often the public key.).freeze,
221
- domain: "foaf:Agent".freeze,
222
- inverseOf: "cert:identity".freeze,
223
- isDefinedBy: "cert:".freeze,
101
+ comment: "relates an agent to a key - most often the public key.".freeze,
102
+ domain: "http://xmlns.com/foaf/0.1/Agent".freeze,
103
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
104
+ inverseOf: "http://www.w3.org/ns/auth/cert#identity".freeze,
105
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
224
106
  label: "key".freeze,
225
- range: ["cert:Key".freeze, "cert:PublicKey".freeze],
226
- type: ["owl:InverseFunctionalProperty".freeze, "owl:ObjectProperty".freeze, "rdf:Property".freeze],
227
- "vs:term_status": "unstable".freeze
107
+ range: ["http://www.w3.org/ns/auth/cert#Key".freeze, "http://www.w3.org/ns/auth/cert#PublicKey".freeze],
108
+ type: ["http://www.w3.org/1999/02/22-rdf-syntax-ns#Property".freeze, "http://www.w3.org/2002/07/owl#InverseFunctionalProperty".freeze, "http://www.w3.org/2002/07/owl#ObjectProperty".freeze]
228
109
  property :modulus,
229
- comment: %(
230
- <p>The modulus of an RSA public and private key.
231
- Or the modulus of a DSA Key.
232
- The modulus is encoded as a hex binary. The binary is the same as the one encoded in the
233
- <a href="http://www.w3.org/TR/xmldsig-core/#sec-CryptoBinary">XML DSIG CryptoBinary</a>
234
- </p>
235
- <blockquote>
236
- This specification defines the ds:CryptoBinary simple type for representing arbitrary-length integers \(e.g. "bignums"\) in XML as octet strings. The integer value is first converted to a "big endian" bitstring. The bitstring is then padded with leading zero bits so that the total number of bits == 0 mod 8 \(so that there are an integral number of octets\). If the bitstring contains entire leading octets that are zero, these are removed \(so the high-order octet is always non-zero\).
237
- </blockquote>
238
- <p>The only difference is that the octet string is then encoded using either xsd:base64Binary or xsd:hexBinary. Currently for all usages of this relation, the xsd:hexBinary datatype should be used until the SPARQL working group specifies specifies in its <a href="http://www.w3.org/TR/sparql11-entailment/#DEntRegime">D-Entailment</a> that those two types are equivalent.</p>
239
- <p>It would have been better had there been a hexInteger datatype that was standard and supported by all tools.</p>
240
- ).freeze,
241
- domain: "cert:RSAKey".freeze,
242
- isDefinedBy: "cert:".freeze,
110
+ comment: " \n <p>The modulus of an RSA public and private key. \n Or the modulus of a DSA Key.\n The modulus is encoded as a hex binary. The binary is the same as the one encoded in the \n <a href=\"http://www.w3.org/TR/xmldsig-core/#sec-CryptoBinary\">XML DSIG CryptoBinary</a>\n </p>\n <blockquote>\n This specification defines the ds:CryptoBinary simple type for representing arbitrary-length integers (e.g. \"bignums\") in XML as octet strings. The integer value is first converted to a \"big endian\" bitstring. The bitstring is then padded with leading zero bits so that the total number of bits == 0 mod 8 (so that there are an integral number of octets). If the bitstring contains entire leading octets that are zero, these are removed (so the high-order octet is always non-zero).\n </blockquote>\n <p>The only difference is that the octet string is then encoded using either xsd:base64Binary or xsd:hexBinary. Currently for all usages of this relation, the xsd:hexBinary datatype should be used until the SPARQL working group specifies specifies in its <a href=\"http://www.w3.org/TR/sparql11-entailment/#DEntRegime\">D-Entailment</a> that those two types are equivalent.</p>\n <p>It would have been better had there been a hexInteger datatype that was standard and supported by all tools.</p>\n ".freeze,
111
+ domain: "http://www.w3.org/ns/auth/cert#RSAKey".freeze,
112
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
113
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
243
114
  label: "modulus".freeze,
244
- range: ["xsd:base64Binary".freeze, "xsd:hexBinary".freeze],
245
- type: "owl:DatatypeProperty".freeze,
246
- "vs:term_status": "unstable".freeze
115
+ range: ["http://www.w3.org/2001/XMLSchema#base64Binary".freeze, "http://www.w3.org/2001/XMLSchema#hexBinary".freeze],
116
+ type: "http://www.w3.org/2002/07/owl#DatatypeProperty".freeze
247
117
  property :privateExponent,
248
- comment: %(
249
- The exponent used to decrypt the message
250
- calculated as
251
- public_exponent*private_exponent = 1 modulo totient\(p*q\)
252
- The private exponent is often named 'd'
253
- ).freeze,
254
- domain: "cert:PrivateKey".freeze,
255
- isDefinedBy: "cert:".freeze,
118
+ comment: "\n The exponent used to decrypt the message\n calculated as \n public_exponent*private_exponent = 1 modulo totient(p*q)\n The private exponent is often named 'd'\n ".freeze,
119
+ domain: "http://www.w3.org/ns/auth/cert#PrivateKey".freeze,
120
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "unstable".freeze,
121
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
256
122
  label: "private".freeze,
257
- range: "xsd:nonNegativeInteger".freeze,
258
- type: "owl:DatatypeProperty".freeze,
259
- "vs:term_status": "unstable".freeze
123
+ range: "http://www.w3.org/2001/XMLSchema#nonNegativeInteger".freeze,
124
+ type: "http://www.w3.org/2002/07/owl#DatatypeProperty".freeze
260
125
 
261
126
  # Datatype definitions
262
127
  term :hex,
263
- comment: %(<span xmlns="http://www.w3.org/1999/xhtml" xmlns:dc="http://purl.org/dc/terms/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:vs="http://www.w3.org/2003/06/sw-vocab-status/ns#"><p>
264
- An encoding of a positive integer \(from 0 to infinity\) as a hexadecimal string that makes it easy to read and/or fun to present on the web.</p>
265
- <p>The purpose of this way of representing hexadecimals is to enable users to copy and paste hexadecimal notations as shown by most browsers, keychains or tools such as opensso, into their rdf representation of choice. There are a wide variety of ways in which such strings can be presented. One finds the following:</p>
266
- <pre>
267
- e1 dc d5 e1 00 8f 21 5e d5 cc 7c 7e c4 9c ad 86
268
- 64 aa dc 29 f2 8d d9 56 7f 31 b6 bd 1b fd b8 ee
269
- 51 0d 3c 84 59 a2 45 d2 13 59 2a 14 82 1a 0f 6e
270
- d3 d1 4a 2d a9 4c 7e db 90 07 fc f1 8d a3 8e 38
271
- 25 21 0a 32 c1 95 31 3c ba 56 cc 17 45 87 e1 eb
272
- fd 9f 0f 82 16 67 9f 67 fa 91 e4 0d 55 4e 52 c0
273
- 66 64 2f fe 98 8f ae f8 96 21 5e ea 38 9e 5c 4f
274
- 27 e2 48 ca ca f2 90 23 ad 99 4b cc 38 32 6d bf
275
- </pre>
276
- <p>
277
- Or the same as the above, with ':' instead of spaces. We can't guarantee that these are the only ways such tools will present hexadecimals, so we are very lax.</p>
278
- <p>The letters can be uppercase or lowercase, or mixed. </p>
279
- <p>Some strings may start with initial 00's, and can be stripped in this notation as they often are. Doing this could, in complement of 2 notation turn a positive number into a negative one, if the first hexadecimal character happens to be one of the set {'8', '9', 'a', 'A', 'b', 'B', 'c', 'C', 'd', 'D', 'e', 'E', 'f', 'F'} . As we interpret this string as a hexadecimal number leading 00s are not important \(Complement of 2 notation and hexadecimal overlap for positive numbers\)</p>
280
- <p> In order to make this fun, we allow any unicode characters in the string. A parser should </p>
281
- <ol>
282
- <li>remove all non hexadecimal characters</li>
283
- <li>treat the resulting as a hexadecimal representation of a number</li>
284
- </ol>
285
- <p>
286
- This will allow people to make an ascii - better yet a UTF-8 - picture of their public key when publishing it on the web.
287
- </p>
288
- <p>
289
- Cert hex is also a datatype property because we used to write it out like this
290
- </p>
291
- <pre>
292
- [] a rsa:RSAPublicKey;
293
- rsa:public_exponent [ cert:hex "e1 dc d5 ..."]
294
- </pre>
295
- <p> The above notation is now deprecated. Now we prefer the literal format below.</p>
296
- <pre>
297
- [] a rsa:RSAPublicKey;
298
- rsa:public_exponent "e1 dc d5 ..."^^cert:hex .
299
- </pre>
300
- </span>
301
- ).freeze,
302
- editorialNote: %(<span xmlns="http://www.w3.org/1999/xhtml"><p>
303
- This relation should slowly be transited to just being a datatype.</p>
304
- <p>Being a datatype and a property is legal as explained here
305
- <a href="http://lists.w3.org/Archives/Public/semantic-web/2010Mar/0037.html">on the semantic web mailing list in March 2010</a>.
306
- But it may be somewhat confusing, especially if it goes against a pattern - still to be set - by the xsd datatypes as the follow up email makes clear. </p></span>
307
- ).freeze,
308
- equivalentClass: "xsd:nonNegativeInteger".freeze,
309
- isDefinedBy: "cert:".freeze,
128
+ comment: "<span xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:dc=\"http://purl.org/dc/terms/\" xmlns:foaf=\"http://xmlns.com/foaf/0.1/\" xmlns:owl=\"http://www.w3.org/2002/07/owl#\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\" xmlns:rdfs=\"http://www.w3.org/2000/01/rdf-schema#\" xmlns:skos=\"http://www.w3.org/2004/02/skos/core#\" xmlns:vs=\"http://www.w3.org/2003/06/sw-vocab-status/ns#\"><p>\n An encoding of a positive integer (from 0 to infinity) as a hexadecimal string that makes it easy to read and/or fun to present on the web.</p>\n <p>The purpose of this way of representing hexadecimals is to enable users to copy and paste hexadecimal notations as shown by most browsers, keychains or tools such as opensso, into their rdf representation of choice. There are a wide variety of ways in which such strings can be presented. One finds the following:</p>\n<pre>\n e1 dc d5 e1 00 8f 21 5e d5 cc 7c 7e c4 9c ad 86 \n 64 aa dc 29 f2 8d d9 56 7f 31 b6 bd 1b fd b8 ee \n 51 0d 3c 84 59 a2 45 d2 13 59 2a 14 82 1a 0f 6e \n d3 d1 4a 2d a9 4c 7e db 90 07 fc f1 8d a3 8e 38 \n 25 21 0a 32 c1 95 31 3c ba 56 cc 17 45 87 e1 eb \n fd 9f 0f 82 16 67 9f 67 fa 91 e4 0d 55 4e 52 c0 \n 66 64 2f fe 98 8f ae f8 96 21 5e ea 38 9e 5c 4f \n 27 e2 48 ca ca f2 90 23 ad 99 4b cc 38 32 6d bf \n</pre>\n<p>\n Or the same as the above, with ':' instead of spaces. We can't guarantee that these are the only ways such tools will present hexadecimals, so we are very lax.</p>\n <p>The letters can be uppercase or lowercase, or mixed. </p>\n <p>Some strings may start with initial 00's, and can be stripped in this notation as they often are. Doing this could, in complement of 2 notation turn a positive number into a negative one, if the first hexadecimal character happens to be one of the set {'8', '9', 'a', 'A', 'b', 'B', 'c', 'C', 'd', 'D', 'e', 'E', 'f', 'F'} . As we interpret this string as a hexadecimal number leading 00s are not important (Complement of 2 notation and hexadecimal overlap for positive numbers)</p>\n<p> In order to make this fun, we allow any unicode characters in the string. A parser should </p>\n <ol>\n<li>remove all non hexadecimal characters</li>\n<li>treat the resulting as a hexadecimal representation of a number</li>\n</ol>\n<p>\n This will allow people to make an ascii - better yet a UTF-8 - picture of their public key when publishing it on the web.\n</p>\n<p>\n Cert hex is also a datatype property because we used to write it out like this\n</p>\n <pre>\n [] a rsa:RSAPublicKey;\n rsa:public_exponent [ cert:hex \"e1 dc d5 ...\"] \n </pre> \n<p> The above notation is now deprecated. Now we prefer the literal format below.</p>\n <pre>\n [] a rsa:RSAPublicKey;\n rsa:public_exponent \"e1 dc d5 ...\"^^cert:hex .\n </pre> \n </span>\n ".freeze,
129
+ editorialNote: "<span xmlns=\"http://www.w3.org/1999/xhtml\"><p> \n This relation should slowly be transited to just being a datatype.</p>\n <p>Being a datatype and a property is legal as explained here\n <a href=\"http://lists.w3.org/Archives/Public/semantic-web/2010Mar/0037.html\">on the semantic web mailing list in March 2010</a>. \n But it may be somewhat confusing, especially if it goes against a pattern - still to be set - by the xsd datatypes as the follow up email makes clear. </p></span>\n ".freeze,
130
+ equivalentClass: "http://www.w3.org/2001/XMLSchema#nonNegativeInteger".freeze,
131
+ "http://www.w3.org/2000/01/rdf-schema#seeAlso": "http://en.wikipedia.org/wiki/Hexadecimal".freeze,
132
+ "http://www.w3.org/2003/06/sw-vocab-status/ns#term_status": "archaic".freeze,
133
+ isDefinedBy: "http://www.w3.org/ns/auth/cert#".freeze,
310
134
  label: "hexadecimal".freeze,
311
- "rdfs:seeAlso": "http://en.wikipedia.org/wiki/Hexadecimal".freeze,
312
- type: "rdfs:Datatype".freeze,
313
- "vs:term_status": "archaic".freeze
135
+ type: "http://www.w3.org/2000/01/rdf-schema#Datatype".freeze
314
136
  end
315
137
  end