rdf-tabular 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 9edf0da4328030ca559eafcc719fa2d0ea74f23d
4
+ data.tar.gz: 77aa006413d31534d91dc49b8c9921889f9cc557
5
+ SHA512:
6
+ metadata.gz: cb4cdf39c4dca8526c102f57a6b96fe026e4bc5533858e37eaf0b5eb0808c638a2f06b7659c3c7d9b0131cd3a5e04e01664c3416f23db222ef6c18a2a11328af
7
+ data.tar.gz: 83054ed9fe8cb41a9c63f2e20259f4add9b0c13f3a6ae87c2aad989e79d4ccde73bab3fb7bd8c30ad5d1570280b81083d7287759e28cdfde2c514710caceada4
data/AUTHORS ADDED
@@ -0,0 +1 @@
1
+ * Gregg Kellogg <gregg@greggkellogg.net>
data/README.md ADDED
@@ -0,0 +1,73 @@
1
+ # Tabular Data RDF Reader and JSON serializer
2
+
3
+ [CSV][] reader for [RDF.rb][] and fully JSON serializer.
4
+
5
+ [![Gem Version](https://badge.fury.io/rb/rdf-tabular.png)](http://badge.fury.io/rb/rdf-tabular)
6
+ [![Build Status](https://secure.travis-ci.org/ruby-rdf/rdf-tabular.png?branch=master)](http://travis-ci.org/ruby-rdf/rdf-tabular)
7
+
8
+ ## Features
9
+
10
+ RDF::Tabular parses CSV or other Tabular Data into [RDF][] and JSON using the [W3C CSVW][] specifications, currently undergoing development.
11
+
12
+ Install with `gem install rdf-tabular`
13
+
14
+ ## Examples
15
+
16
+ require 'rubygems'
17
+ require 'rdf/tabular'
18
+
19
+ ## RDF Reader
20
+ RDF::Tabular also acts as a normal RDF reader, using the standard RDF.rb Reader interface:
21
+
22
+ graph = RDF::Graph.load("etc/doap.csv", minimal: true)
23
+
24
+ ## Documentation
25
+ Full documentation available on [RubyDoc](http://rubydoc.info/gems/rdf-tabular/file/README.md)
26
+
27
+ ### Principal Classes
28
+ * {RDF::Tabular}
29
+ * {RDF::Tabular::JSON}
30
+ * {RDF::Tabular::Format}
31
+ * {RDF::Tabular::Metadata}
32
+ * {RDF::Tabular::Reader}
33
+
34
+ ## Dependencies
35
+ * [Ruby](http://ruby-lang.org/) (>= 2.0.0)
36
+ * [RDF.rb](http://rubygems.org/gems/rdf) (>= 1.0)
37
+ * [JSON](https://rubygems.org/gems/json) (>= 1.5)
38
+
39
+ ## Installation
40
+ The recommended installation method is via [RubyGems](http://rubygems.org/).
41
+ To install the latest official release of the `RDF::Tabular` gem, do:
42
+
43
+ % [sudo] gem install rdf-tabular
44
+
45
+ ## Mailing List
46
+ * <http://lists.w3.org/Archives/Public/public-rdf-ruby/>
47
+
48
+ ## Author
49
+ * [Gregg Kellogg](http://github.com/gkellogg) - <http://greggkellogg.net/>
50
+
51
+ ## Contributing
52
+ * Do your best to adhere to the existing coding conventions and idioms.
53
+ * Don't use hard tabs, and don't leave trailing whitespace on any line.
54
+ * Do document every method you add using [YARD][] annotations. Read the
55
+ [tutorial][YARD-GS] or just look at the existing code for examples.
56
+ * Don't touch the `rdf-tabular.gemspec`, `VERSION` or `AUTHORS` files. If you need to change them, do so on your private branch only.
57
+ * Do feel free to add yourself to the `CREDITS` file and the corresponding list in the the `README`. Alphabetical order applies.
58
+ * Do note that in order for us to merge any non-trivial changes (as a rule of thumb, additions larger than about 15 lines of code), we need an explicit [public domain dedication][PDD] on record from you.
59
+
60
+ License
61
+ -------
62
+
63
+ This is free and unencumbered public domain software. For more information,
64
+ see <http://unlicense.org/> or the accompanying {file:UNLICENSE} file.
65
+
66
+ [Ruby]: http://ruby-lang.org/
67
+ [RDF]: http://www.w3.org/RDF/
68
+ [YARD]: http://yardoc.org/
69
+ [YARD-GS]: http://rubydoc.info/docs/yard/file/docs/GettingStarted.md
70
+ [PDD]: http://lists.w3.org/Archives/Public/public-rdf-ruby/2010May/0013.html
71
+ [RDF.rb]: http://rubygems.org/gems/rdf
72
+ [CSV]: http://en.wikipedia.org/wiki/Comma-separated_values
73
+ [W3C CSVW]: http://www.w3.org/2013/csvw/wiki/Main_Page
data/UNLICENSE ADDED
@@ -0,0 +1,24 @@
1
+ This is free and unencumbered software released into the public domain.
2
+
3
+ Anyone is free to copy, modify, publish, use, compile, sell, or
4
+ distribute this software, either in source code form or as a compiled
5
+ binary, for any purpose, commercial or non-commercial, and by any
6
+ means.
7
+
8
+ In jurisdictions that recognize copyright laws, the author or authors
9
+ of this software dedicate any and all copyright interest in the
10
+ software to the public domain. We make this dedication for the benefit
11
+ of the public at large and to the detriment of our heirs and
12
+ successors. We intend this dedication to be an overt act of
13
+ relinquishment in perpetuity of all present and future rights to this
14
+ software under copyright law.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20
+ OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22
+ OTHER DEALINGS IN THE SOFTWARE.
23
+
24
+ For more information, please refer to <http://unlicense.org/>
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.1
data/etc/csvw.jsonld ADDED
@@ -0,0 +1,1507 @@
1
+ {
2
+ "@context": {
3
+ "cc": "http://creativecommons.org/ns#",
4
+ "csvw": "http://www.w3.org/ns/csvw#",
5
+ "ctag": "http://commontag.org/ns#",
6
+ "dc": "http://purl.org/dc/terms/",
7
+ "dc11": "http://purl.org/dc/elements/1.1/",
8
+ "dcat": "http://www.w3.org/ns/dcat#",
9
+ "dcterms": "http://purl.org/dc/terms/",
10
+ "dctypes": "http://purl.org/dc/dcmitype/",
11
+ "foaf": "http://xmlns.com/foaf/0.1/",
12
+ "gr": "http://purl.org/goodrelations/v1#",
13
+ "grddl": "http://www.w3.org/2003/g/data-view#",
14
+ "ical": "http://www.w3.org/2002/12/cal/icaltzd#",
15
+ "ma": "http://www.w3.org/ns/ma-ont#",
16
+ "oa": "http://www.w3.org/ns/oa#",
17
+ "og": "http://ogp.me/ns#",
18
+ "org": "http://www.w3.org/ns/org#",
19
+ "owl": "http://www.w3.org/2002/07/owl#",
20
+ "prov": "http://www.w3.org/ns/prov#",
21
+ "qb": "http://purl.org/linked-data/cube#",
22
+ "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
23
+ "rdfa": "http://www.w3.org/ns/rdfa#",
24
+ "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
25
+ "rev": "http://purl.org/stuff/rev#",
26
+ "rif": "http://www.w3.org/2007/rif#",
27
+ "rr": "http://www.w3.org/ns/r2rml#",
28
+ "schema": "http://schema.org/",
29
+ "sd": "http://www.w3.org/ns/sparql-service-description#",
30
+ "sioc": "http://rdfs.org/sioc/ns#",
31
+ "skos": "http://www.w3.org/2004/02/skos/core#",
32
+ "skosxl": "http://www.w3.org/2008/05/skos-xl#",
33
+ "v": "http://rdf.data-vocabulary.org/#",
34
+ "vcard": "http://www.w3.org/2006/vcard/ns#",
35
+ "void": "http://rdfs.org/ns/void#",
36
+ "wdr": "http://www.w3.org/2007/05/powder#",
37
+ "wrds": "http://www.w3.org/2007/05/powder-s#",
38
+ "xhv": "http://www.w3.org/1999/xhtml/vocab#",
39
+ "xml": "rdf:XMLLiteral",
40
+ "xsd": "http://www.w3.org/2001/XMLSchema#",
41
+ "json": "csvw:JSON",
42
+ "any": "xsd:anyAtomicType",
43
+ "anyAtomicType": "xsd:anyAtomicType",
44
+ "binary": "xsd:base64Binary",
45
+ "datetime": "xsd:dateTime",
46
+ "describedby": "wrds:describedby",
47
+ "html": "rdf:HTML",
48
+ "license": "xhv:license",
49
+ "maximum": "csvw:maxInclusive",
50
+ "minimum": "csvw:minInclusive",
51
+ "number": "xsd:double",
52
+ "role": "xhv:role",
53
+ "anyURI": "xsd:anyURI",
54
+ "base64Binary": "xsd:base64Binary",
55
+ "boolean": "xsd:boolean",
56
+ "byte": "xsd:byte",
57
+ "date": "xsd:date",
58
+ "dateTime": "xsd:dateTime",
59
+ "dateTimeDuration": "xsd:dateTimeDuration",
60
+ "dateTimeStamp": "xsd:dateTimeStamp",
61
+ "decimal": "xsd:decimal",
62
+ "double": "xsd:double",
63
+ "duration": "xsd:duration",
64
+ "float": "xsd:float",
65
+ "gDay": "xsd:gDay",
66
+ "gMonth": "xsd:gMonth",
67
+ "gMonthDay": "xsd:gMonthDay",
68
+ "gYear": "xsd:gYear",
69
+ "gYearMonth": "xsd:gYearMonth",
70
+ "hexBinary": "xsd:hexBinary",
71
+ "int": "xsd:int",
72
+ "integer": "xsd:integer",
73
+ "language": "xsd:language",
74
+ "long": "xsd:long",
75
+ "Name": "xsd:Name",
76
+ "NCName": "xsd:NCName",
77
+ "NMTOKEN": "xsd:NMTOKEN",
78
+ "negativeInteger": "xsd:negativeInteger",
79
+ "nonNegativeInteger": "xsd:nonNegativeInteger",
80
+ "nonPositiveInteger": "xsd:nonPositiveInteger",
81
+ "normalizedString": "xsd:normalizedString",
82
+ "positiveInteger": "xsd:positiveInteger",
83
+ "QName": "xsd:QName",
84
+ "short": "xsd:short",
85
+ "string": "xsd:string",
86
+ "time": "xsd:time",
87
+ "token": "xsd:token",
88
+ "unsignedByte": "xsd:unsignedByte",
89
+ "unsignedInt": "xsd:unsignedInt",
90
+ "unsignedLong": "xsd:unsignedLong",
91
+ "unsignedShort": "xsd:unsignedShort",
92
+ "yearMonthDuration": "xsd:yearMonthDuration",
93
+ "Cell": "csvw:Cell",
94
+ "Column": "csvw:Column",
95
+ "Datatype": "csvw:Datatype",
96
+ "Dialect": "csvw:Dialect",
97
+ "Direction": "csvw:Direction",
98
+ "ForeignKey": "csvw:ForeignKey",
99
+ "NumericFormat": "csvw:NumericFormat",
100
+ "Row": "csvw:Row",
101
+ "Schema": "csvw:Schema",
102
+ "Table": "csvw:Table",
103
+ "TableGroup": "csvw:TableGroup",
104
+ "TableReference": "csvw:TableReference",
105
+ "Transformation": "csvw:Transformation",
106
+ "aboutUrl": {
107
+ "@id": "csvw:aboutUrl",
108
+ "@type": "@id"
109
+ },
110
+ "base": {
111
+ "@id": "csvw:base",
112
+ "@language": null
113
+ },
114
+ "columnReferenc": {
115
+ "@id": "csvw:columnReferenc",
116
+ "@language": null,
117
+ "@container": "@list"
118
+ },
119
+ "columns": {
120
+ "@id": "csvw:columns",
121
+ "@type": "@id",
122
+ "@container": "@list"
123
+ },
124
+ "commentPrefix": {
125
+ "@id": "csvw:commentPrefix",
126
+ "@language": null
127
+ },
128
+ "datatype": {
129
+ "@id": "csvw:datatype",
130
+ "@type": "@vocab"
131
+ },
132
+ "decimalChar": {
133
+ "@id": "csvw:decimalChar",
134
+ "@language": null
135
+ },
136
+ "default": {
137
+ "@id": "csvw:default",
138
+ "@language": null
139
+ },
140
+ "describes": {
141
+ "@id": "csvw:describes"
142
+ },
143
+ "delimiter": {
144
+ "@id": "csvw:delimiter",
145
+ "@language": null
146
+ },
147
+ "dialect": {
148
+ "@id": "csvw:dialect",
149
+ "@type": "@id"
150
+ },
151
+ "doubleQuote": {
152
+ "@id": "csvw:doubleQuote",
153
+ "@type": "xsd:boolean"
154
+ },
155
+ "encoding": {
156
+ "@id": "csvw:encoding",
157
+ "@language": null
158
+ },
159
+ "foreignKeys": {
160
+ "@id": "csvw:foreignKeys",
161
+ "@type": "@id"
162
+ },
163
+ "format": {
164
+ "@id": "csvw:format",
165
+ "@language": null
166
+ },
167
+ "groupChar": {
168
+ "@id": "csvw:groupChar",
169
+ "@type": "NumericFormat,xsd:string"
170
+ },
171
+ "header": {
172
+ "@id": "csvw:header",
173
+ "@type": "xsd:boolean"
174
+ },
175
+ "headerColumnCount": {
176
+ "@id": "csvw:headerColumnCount",
177
+ "@type": "xsd:nonNegativeInteger"
178
+ },
179
+ "headerRowCount": {
180
+ "@id": "csvw:headerRowCount",
181
+ "@type": "xsd:nonNegativeInteger"
182
+ },
183
+ "lang": {
184
+ "@id": "csvw:lang",
185
+ "@language": null
186
+ },
187
+ "length": {
188
+ "@id": "csvw:length",
189
+ "@type": "xsd:nonNegativeInteger"
190
+ },
191
+ "lineTerminator": {
192
+ "@id": "csvw:lineTerminator",
193
+ "@language": null
194
+ },
195
+ "maxExclusive": {
196
+ "@id": "csvw:maxExclusive",
197
+ "@type": "xsd:integer"
198
+ },
199
+ "maxInclusive": {
200
+ "@id": "csvw:maxInclusive",
201
+ "@type": "xsd:integer"
202
+ },
203
+ "maxLength": {
204
+ "@id": "csvw:maxLength",
205
+ "@type": "xsd:nonNegativeInteger"
206
+ },
207
+ "minExclusive": {
208
+ "@id": "csvw:minExclusive",
209
+ "@type": "xsd:integer"
210
+ },
211
+ "minInclusive": {
212
+ "@id": "csvw:minInclusive",
213
+ "@type": "xsd:integer"
214
+ },
215
+ "minLength": {
216
+ "@id": "csvw:minLength",
217
+ "@type": "xsd:nonNegativeInteger"
218
+ },
219
+ "name": {
220
+ "@id": "csvw:name",
221
+ "@language": null
222
+ },
223
+ "notes": {
224
+ "@id": "csvw:notes"
225
+ },
226
+ "null": {
227
+ "@id": "csvw:null",
228
+ "@language": null
229
+ },
230
+ "ordered": {
231
+ "@id": "csvw:ordered",
232
+ "@type": "xsd:boolean"
233
+ },
234
+ "pattern": {
235
+ "@id": "csvw:pattern",
236
+ "@language": null
237
+ },
238
+ "primaryKey": {
239
+ "@id": "csvw:primaryKey",
240
+ "@language": null
241
+ },
242
+ "propertyUrl": {
243
+ "@id": "csvw:propertyUrl",
244
+ "@type": "@id"
245
+ },
246
+ "quoteChar": {
247
+ "@id": "csvw:quoteChar",
248
+ "@language": null
249
+ },
250
+ "reference": {
251
+ "@id": "csvw:reference",
252
+ "@type": "@id"
253
+ },
254
+ "required": {
255
+ "@id": "csvw:required",
256
+ "@type": "xsd:boolean"
257
+ },
258
+ "resource": {
259
+ "@id": "csvw:resource",
260
+ "@type": "xsd:anyURI"
261
+ },
262
+ "resources": {
263
+ "@id": "csvw:resources",
264
+ "@type": "@id",
265
+ "@container": "@set"
266
+ },
267
+ "row": {
268
+ "@id": "csvw:row",
269
+ "@type": "@id",
270
+ "@container": "@set"
271
+ },
272
+ "rownum": {
273
+ "@id": "csvw:rownum",
274
+ "@type": "xsd:integer"
275
+ },
276
+ "scriptFormat": {
277
+ "@id": "csvw:scriptFormat",
278
+ "@type": "xsd:anyURI"
279
+ },
280
+ "schemaReference": {
281
+ "@id": "csvw:schemaReference",
282
+ "@type": "xsd:anyURI"
283
+ },
284
+ "separator": {
285
+ "@id": "csvw:separator",
286
+ "@language": null
287
+ },
288
+ "skipBlankRows": {
289
+ "@id": "csvw:skipBlankRows",
290
+ "@type": "xsd:boolean"
291
+ },
292
+ "skipColumns": {
293
+ "@id": "csvw:skipColumns",
294
+ "@type": "xsd:nonNegativeInteger"
295
+ },
296
+ "skipInitialSpace": {
297
+ "@id": "csvw:skipInitialSpace",
298
+ "@type": "xsd:boolean"
299
+ },
300
+ "skipRows": {
301
+ "@id": "csvw:skipRows",
302
+ "@type": "xsd:nonNegativeInteger"
303
+ },
304
+ "source": {
305
+ "@id": "csvw:source",
306
+ "@language": null
307
+ },
308
+ "suppressOutput": {
309
+ "@id": "csvw:suppressOutput",
310
+ "@type": "xsd:boolean"
311
+ },
312
+ "table": {
313
+ "@id": "csvw:table",
314
+ "@type": "@id",
315
+ "@container": "@set"
316
+ },
317
+ "tableDirection": {
318
+ "@id": "csvw:tableDirection",
319
+ "@type": "@vocab"
320
+ },
321
+ "tableSchema": {
322
+ "@id": "csvw:tableSchema",
323
+ "@type": "@id"
324
+ },
325
+ "targetFormat": {
326
+ "@id": "csvw:targetFormat",
327
+ "@type": "xsd:anyURI"
328
+ },
329
+ "transformations": {
330
+ "@id": "csvw:transformations",
331
+ "@type": "@id"
332
+ },
333
+ "textDirection": {
334
+ "@id": "csvw:textDirection",
335
+ "@type": "@vocab"
336
+ },
337
+ "title": {
338
+ "@id": "csvw:title",
339
+ "@container": "@language"
340
+ },
341
+ "trim": {
342
+ "@id": "csvw:trim",
343
+ "@type": "xsd:boolean"
344
+ },
345
+ "url": {
346
+ "@id": "csvw:url",
347
+ "@type": "xsd:anyURI"
348
+ },
349
+ "valueUrl": {
350
+ "@id": "csvw:valueUrl",
351
+ "@type": "@id"
352
+ },
353
+ "virtual": {
354
+ "@id": "csvw:virtual",
355
+ "@type": "xsd:boolean"
356
+ },
357
+ "JSON": "csvw:JSON",
358
+ "uriTemplate": "csvw:uriTemplate"
359
+ },
360
+ "@graph": {
361
+ "@context": {
362
+ "id": "@id",
363
+ "type": "@type",
364
+ "dc:title": {
365
+ "@container": "@language"
366
+ },
367
+ "dc:description": {
368
+ "@container": "@language"
369
+ },
370
+ "rdfs:comment": {
371
+ "@container": "@language"
372
+ },
373
+ "rdfs:domain": {
374
+ "@type": "@id"
375
+ },
376
+ "rdfs:label": {
377
+ "@container": "@language"
378
+ },
379
+ "rdfs:range": {
380
+ "@type": "@id"
381
+ },
382
+ "rdfs:subClassOf": {
383
+ "@type": "@id"
384
+ },
385
+ "rdfs:subPropertyOf": {
386
+ "@type": "@id"
387
+ },
388
+ "owl:equivalentClass": {
389
+ "@type": "@vocab"
390
+ },
391
+ "owl:equivalentProperty": {
392
+ "@type": "@vocab"
393
+ },
394
+ "owl:oneOf": {
395
+ "@container": "@list",
396
+ "@type": "@vocab"
397
+ },
398
+ "owl:imports": {
399
+ "@type": "@id"
400
+ },
401
+ "owl:versionInfo": {
402
+ "@type": "xsd:string",
403
+ "@language": null
404
+ },
405
+ "owl:inverseOf": {
406
+ "@type": "@vocab"
407
+ },
408
+ "owl:unionOf": {
409
+ "@type": "@vocab",
410
+ "@container": "@list"
411
+ },
412
+ "rdfs_classes": {
413
+ "@reverse": "rdfs:isDefinedBy",
414
+ "@type": "@id"
415
+ },
416
+ "rdfs_properties": {
417
+ "@reverse": "rdfs:isDefinedBy",
418
+ "@type": "@id"
419
+ },
420
+ "rdfs_datatypes": {
421
+ "@reverse": "rdfs:isDefinedBy",
422
+ "@type": "@id"
423
+ },
424
+ "rdfs_instances": {
425
+ "@reverse": "rdfs:isDefinedBy",
426
+ "@type": "@id"
427
+ }
428
+ },
429
+ "@id": "http://www.w3.org/ns/csvw#",
430
+ "@type": "owl:Ontology",
431
+ "dc:title": {
432
+ "en": "CSVW Namespace Vocabulary Terms"
433
+ },
434
+ "dc:description": {
435
+ "en": "This document describes the RDFS vocabulary description used in the Metadata Vocabulary for Tabular Data [[tabular-metadata]] along with the default JSON-LD Context."
436
+ },
437
+ "rdfs_classes": [
438
+ {
439
+ "@id": "csvw:Cell",
440
+ "@type": "rdfs:Class",
441
+ "rdfs:label": {
442
+ "en": "Cell"
443
+ },
444
+ "rdfs:comment": {
445
+ "en": "A Cell represents a cell at the intersection of a Row and a Column within a Table."
446
+ }
447
+ },
448
+ {
449
+ "@id": "csvw:Column",
450
+ "@type": "rdfs:Class",
451
+ "rdfs:label": {
452
+ "en": "Column Description"
453
+ },
454
+ "rdfs:comment": {
455
+ "en": "A Column represents a vertical arrangement of Cells within a Table."
456
+ }
457
+ },
458
+ {
459
+ "@id": "csvw:Datatype",
460
+ "@type": "rdfs:Class",
461
+ "rdfs:label": {
462
+ "en": "Datatype"
463
+ },
464
+ "rdfs:comment": {
465
+ "en": "Describes facets of a datatype."
466
+ }
467
+ },
468
+ {
469
+ "@id": "csvw:Dialect",
470
+ "@type": "rdfs:Class",
471
+ "rdfs:label": {
472
+ "en": "Dialect Description"
473
+ },
474
+ "rdfs:comment": {
475
+ "en": "A Dialect Description provides hints to parsers about how to parse a linked file."
476
+ }
477
+ },
478
+ {
479
+ "@id": "csvw:Direction",
480
+ "@type": "rdfs:Class",
481
+ "rdfs:label": {
482
+ "en": "Direction"
483
+ },
484
+ "rdfs:comment": {
485
+ "en": "The class of table/text directions."
486
+ }
487
+ },
488
+ {
489
+ "@id": "csvw:ForeignKey",
490
+ "@type": "rdfs:Class",
491
+ "rdfs:label": {
492
+ "en": "Foreign Key Definition"
493
+ },
494
+ "rdfs:comment": {
495
+ "en": "Describes relationships between Columns in one or more Tables."
496
+ }
497
+ },
498
+ {
499
+ "@id": "csvw:NumericFormat",
500
+ "@type": "rdfs:Class",
501
+ "rdfs:label": {
502
+ "en": "Numeric Format"
503
+ },
504
+ "rdfs:comment": {
505
+ "en": "If the datatype is a numeric type, the format property indicates the expected format for that number. Its value must be either a single string or an object with one or more properties."
506
+ }
507
+ },
508
+ {
509
+ "@id": "csvw:Row",
510
+ "@type": "rdfs:Class",
511
+ "rdfs:label": {
512
+ "en": "Row"
513
+ },
514
+ "rdfs:comment": {
515
+ "en": "A Row represents a horizontal arrangement of cells within a Table."
516
+ }
517
+ },
518
+ {
519
+ "@id": "csvw:Schema",
520
+ "@type": "rdfs:Class",
521
+ "rdfs:label": {
522
+ "en": "Schema"
523
+ },
524
+ "rdfs:comment": {
525
+ "en": "A Schema is a definition of a tabular format that may be common to multiple tables."
526
+ }
527
+ },
528
+ {
529
+ "@id": "csvw:Table",
530
+ "@type": "rdfs:Class",
531
+ "rdfs:label": {
532
+ "en": "Annotated Table"
533
+ },
534
+ "rdfs:comment": {
535
+ "en": "An annotated table is a table that is annotated with additional metadata."
536
+ }
537
+ },
538
+ {
539
+ "@id": "csvw:TableGroup",
540
+ "@type": "rdfs:Class",
541
+ "rdfs:label": {
542
+ "en": "Group of Tables"
543
+ },
544
+ "rdfs:comment": {
545
+ "en": "A Group of Tables comprises a set of Annotated Tables and a set of annotations that relate to those Tables."
546
+ }
547
+ },
548
+ {
549
+ "@id": "csvw:TableReference",
550
+ "@type": "rdfs:Class",
551
+ "rdfs:label": {
552
+ "en": "Table Reference"
553
+ },
554
+ "rdfs:comment": {
555
+ "en": "An object property that identifies a referenced table and a set of referenced columns within that table."
556
+ }
557
+ },
558
+ {
559
+ "@id": "csvw:Transformation",
560
+ "@type": "rdfs:Class",
561
+ "rdfs:label": {
562
+ "en": "Transformation Definition"
563
+ },
564
+ "rdfs:comment": {
565
+ "en": "A Transformation Definition is a definition of how tabular data can be transformed into another format."
566
+ }
567
+ }
568
+ ],
569
+ "rdfs_properties": [
570
+ {
571
+ "@id": "csvw:aboutUrl",
572
+ "@type": "rdf:Property",
573
+ "rdfs:label": {
574
+ "en": "about URL"
575
+ },
576
+ "rdfs:comment": {
577
+ "en": "A URI template property that may be used to create a unique identifier for each cell within a row when mapping data to other formats."
578
+ },
579
+ "rdfs:domain": {
580
+ "owl:unionOf": [
581
+ "csvw:TableGroup",
582
+ "csvw:Table",
583
+ "csvw:Schema",
584
+ "csvw:Column"
585
+ ]
586
+ },
587
+ "rdfs:range": "csvw:uriTemplate"
588
+ },
589
+ {
590
+ "@id": "csvw:base",
591
+ "@type": "rdf:Property",
592
+ "rdfs:label": {
593
+ "en": "base"
594
+ },
595
+ "rdfs:comment": {
596
+ "en": "An atomic property that contains a single string: a term defined in the default context representing a built-in datatype URL."
597
+ },
598
+ "rdfs:domain": "csvw:Datatype",
599
+ "rdfs:range": "xsd:string"
600
+ },
601
+ {
602
+ "@id": "csvw:columnReferenc",
603
+ "@type": "rdf:Property",
604
+ "rdfs:label": {
605
+ "en": "column reference"
606
+ },
607
+ "rdfs:comment": {
608
+ "en": "A column reference property that holds either a single reference to a column description object within this schema, or an array of references."
609
+ },
610
+ "rdfs:domain": {
611
+ "owl:unionOf": [
612
+ "csvw:ForeignKey",
613
+ "csvw:TableReference"
614
+ ]
615
+ },
616
+ "rdfs:range": "xsd:string"
617
+ },
618
+ {
619
+ "@id": "csvw:columns",
620
+ "@type": "rdf:Property",
621
+ "rdfs:label": {
622
+ "en": "columns"
623
+ },
624
+ "rdfs:comment": {
625
+ "en": "An array property of column descriptions as described in section 4.9 Columns."
626
+ },
627
+ "rdfs:domain": "csvw:Schema",
628
+ "rdfs:range": "csvw:Column"
629
+ },
630
+ {
631
+ "@id": "csvw:commentPrefix",
632
+ "@type": "rdf:Property",
633
+ "rdfs:label": {
634
+ "en": "comment prefix"
635
+ },
636
+ "rdfs:comment": {
637
+ "en": "An atomic property that sets the comment prefix flag to the single provided value, which must be a single character string."
638
+ },
639
+ "rdfs:domain": "csvw:Dialect",
640
+ "rdfs:range": "xsd:string"
641
+ },
642
+ {
643
+ "@id": "csvw:datatype",
644
+ "@type": "rdf:Property",
645
+ "rdfs:label": {
646
+ "en": "datatype"
647
+ },
648
+ "rdfs:comment": {
649
+ "en": "An atomic property that contains either a single string that is the main datatype of the values of the cell or a datatype description object."
650
+ },
651
+ "rdfs:domain": {
652
+ "owl:unionOf": [
653
+ "csvw:TableGroup",
654
+ "csvw:Table",
655
+ "csvw:Schema",
656
+ "csvw:Column"
657
+ ]
658
+ },
659
+ "rdfs:range": {
660
+ "owl:unionOf": [
661
+ "csvw:Datatype",
662
+ "xsd:string"
663
+ ]
664
+ }
665
+ },
666
+ {
667
+ "@id": "csvw:decimalChar",
668
+ "@type": "rdf:Property",
669
+ "rdfs:label": {
670
+ "en": "decimal character"
671
+ },
672
+ "rdfs:comment": {
673
+ "en": "An atomic property containing a single character string whose value is used to represent a decimal point within the number."
674
+ },
675
+ "rdfs:domain": "csvw:NumericFormat",
676
+ "rdfs:range": "xsd:string"
677
+ },
678
+ {
679
+ "@id": "csvw:default",
680
+ "@type": "rdf:Property",
681
+ "rdfs:label": {
682
+ "en": "default"
683
+ },
684
+ "rdfs:comment": {
685
+ "en": "An atomic property holding a single string that is used to create a default value for the cell in cases where the original string value is an empty string."
686
+ },
687
+ "rdfs:domain": {
688
+ "owl:unionOf": [
689
+ "csvw:TableGroup",
690
+ "csvw:Table",
691
+ "csvw:Schema",
692
+ "csvw:Column"
693
+ ]
694
+ },
695
+ "rdfs:range": "xsd:string"
696
+ },
697
+ {
698
+ "@id": "csvw:describes",
699
+ "@type": "rdf:Property",
700
+ "rdfs:label": {
701
+ "en": "describes"
702
+ },
703
+ "rdfs:comment": {
704
+ "en": "From IANA describes: The relationship A 'describes' B asserts that resource A provides a description of resource B. There are no constraints on the format or representation of either A or B, neither are there any further constraints on either resource."
705
+ },
706
+ "rdfs:domain": "csvw:Row"
707
+ },
708
+ {
709
+ "@id": "csvw:delimiter",
710
+ "@type": "rdf:Property",
711
+ "rdfs:label": {
712
+ "en": "delimiter"
713
+ },
714
+ "rdfs:comment": {
715
+ "en": "An atomic property that sets the delimiter flag to the single provided value, which must be a single character string."
716
+ },
717
+ "rdfs:domain": "csvw:Dialect",
718
+ "rdfs:range": "xsd:string"
719
+ },
720
+ {
721
+ "@id": "csvw:dialect",
722
+ "@type": "rdf:Property",
723
+ "rdfs:label": {
724
+ "en": "dialect"
725
+ },
726
+ "rdfs:comment": {
727
+ "en": "Provides hints to processors about how to parse the referenced files for to create tabular data models for an individual table, or all the tables in a group."
728
+ },
729
+ "rdfs:domain": {
730
+ "owl:unionOf": [
731
+ "csvw:TableGroup",
732
+ "csvw:Table"
733
+ ]
734
+ },
735
+ "rdfs:range": "csvw:Dialect"
736
+ },
737
+ {
738
+ "@id": "csvw:doubleQuote",
739
+ "@type": "rdf:Property",
740
+ "rdfs:label": {
741
+ "en": "double quote"
742
+ },
743
+ "rdfs:comment": {
744
+ "en": "A boolean atomic property that, if `true`, sets the escape character flag to `\"`. If `false`, to `\\\\`."
745
+ },
746
+ "rdfs:domain": "csvw:Dialect",
747
+ "rdfs:range": "xsd:boolean"
748
+ },
749
+ {
750
+ "@id": "csvw:encoding",
751
+ "@type": "rdf:Property",
752
+ "rdfs:label": {
753
+ "en": "encoding"
754
+ },
755
+ "rdfs:comment": {
756
+ "en": "An atomic property that sets the encoding flag to the single provided string value, which must be a defined [encoding]."
757
+ },
758
+ "rdfs:domain": "csvw:Dialect",
759
+ "rdfs:range": "xsd:string"
760
+ },
761
+ {
762
+ "@id": "csvw:foreignKeys",
763
+ "@type": "rdf:Property",
764
+ "rdfs:label": {
765
+ "en": "foreign keys"
766
+ },
767
+ "rdfs:comment": {
768
+ "en": "An array property of foreign key definitions that define how the values from specified columns within this table link to rows within this table or other tables."
769
+ },
770
+ "rdfs:domain": "csvw:Schema",
771
+ "rdfs:range": "csvw:ForeignKey"
772
+ },
773
+ {
774
+ "@id": "csvw:format",
775
+ "@type": "rdf:Property",
776
+ "rdfs:label": {
777
+ "en": "format"
778
+ },
779
+ "rdfs:comment": {
780
+ "en": "An atomic property that contains either a single string or an object that defines the format of a value of this type."
781
+ },
782
+ "rdfs:domain": "csvw:Datatype",
783
+ "rdfs:range": "xsd:string"
784
+ },
785
+ {
786
+ "@id": "csvw:groupChar",
787
+ "@type": "rdf:Property",
788
+ "rdfs:label": {
789
+ "en": "group character"
790
+ },
791
+ "rdfs:comment": {
792
+ "en": "An atomic property containing a single character string whose value is used to group digits within the number."
793
+ },
794
+ "rdfs:domain": "csvw:NumericFormat",
795
+ "rdfs:range": {
796
+ "owl:unionOf": [
797
+ "csvw:NumericFormat",
798
+ "xsd:string"
799
+ ]
800
+ }
801
+ },
802
+ {
803
+ "@id": "csvw:header",
804
+ "@type": "rdf:Property",
805
+ "rdfs:label": {
806
+ "en": "header"
807
+ },
808
+ "rdfs:comment": {
809
+ "en": "A boolean atomic property that, if `true`, sets the header row count flag to `1`, and if `false` to `0`, unless headerRowCount is provided, in which case the value provided for the header property is ignored."
810
+ },
811
+ "rdfs:domain": "csvw:Dialect",
812
+ "rdfs:range": "xsd:boolean"
813
+ },
814
+ {
815
+ "@id": "csvw:headerColumnCount",
816
+ "@type": "rdf:Property",
817
+ "rdfs:label": {
818
+ "en": "header column count"
819
+ },
820
+ "rdfs:comment": {
821
+ "en": "An numeric atomic property that sets the header column count flag to the single provided value, which must be non-negative integer."
822
+ },
823
+ "rdfs:domain": "csvw:Dialect",
824
+ "rdfs:range": "xsd:nonNegativeInteger"
825
+ },
826
+ {
827
+ "@id": "csvw:headerRowCount",
828
+ "@type": "rdf:Property",
829
+ "rdfs:label": {
830
+ "en": "header row count"
831
+ },
832
+ "rdfs:comment": {
833
+ "en": "The number of header rows (following the skipped rows) in the file. The default is 1."
834
+ },
835
+ "rdfs:domain": "csvw:Dialect",
836
+ "rdfs:range": "xsd:nonNegativeInteger"
837
+ },
838
+ {
839
+ "@id": "csvw:lang",
840
+ "@type": "rdf:Property",
841
+ "rdfs:label": {
842
+ "en": "language"
843
+ },
844
+ "rdfs:comment": {
845
+ "en": "An atomic property giving a single string language code as defined by [BCP47]."
846
+ },
847
+ "rdfs:domain": {
848
+ "owl:unionOf": [
849
+ "csvw:TableGroup",
850
+ "csvw:Table",
851
+ "csvw:Schema",
852
+ "csvw:Column"
853
+ ]
854
+ },
855
+ "rdfs:range": "xsd:string"
856
+ },
857
+ {
858
+ "@id": "csvw:length",
859
+ "@type": "rdf:Property",
860
+ "rdfs:label": {
861
+ "en": "length"
862
+ },
863
+ "rdfs:comment": {
864
+ "en": "The exact length of the value of the cell."
865
+ },
866
+ "rdfs:domain": "csvw:Datatype",
867
+ "rdfs:range": "xsd:nonNegativeInteger"
868
+ },
869
+ {
870
+ "@id": "csvw:lineTerminator",
871
+ "@type": "rdf:Property",
872
+ "rdfs:label": {
873
+ "en": "line terminator"
874
+ },
875
+ "rdfs:comment": {
876
+ "en": "A numeric atomic property that contains a single integer that is the exact length of the value."
877
+ },
878
+ "rdfs:domain": "csvw:Dialect",
879
+ "rdfs:range": "xsd:string"
880
+ },
881
+ {
882
+ "@id": "csvw:maxExclusive",
883
+ "@type": "rdf:Property",
884
+ "rdfs:label": {
885
+ "en": "max exclusive"
886
+ },
887
+ "rdfs:comment": {
888
+ "en": "An atomic property that contains a single number that is the maximum valid value (exclusive)."
889
+ },
890
+ "rdfs:domain": "csvw:Datatype",
891
+ "rdfs:range": "xsd:integer"
892
+ },
893
+ {
894
+ "@id": "csvw:maxInclusive",
895
+ "@type": "rdf:Property",
896
+ "rdfs:label": {
897
+ "en": "max inclusive"
898
+ },
899
+ "rdfs:comment": {
900
+ "en": "An atomic property that contains a single number that is the maximum valid value (inclusive)."
901
+ },
902
+ "rdfs:domain": "csvw:Datatype",
903
+ "rdfs:range": "xsd:integer"
904
+ },
905
+ {
906
+ "@id": "csvw:maxLength",
907
+ "@type": "rdf:Property",
908
+ "rdfs:label": {
909
+ "en": "max length"
910
+ },
911
+ "rdfs:comment": {
912
+ "en": "A numeric atomic property that contains a single integer that is the maximum length of the value."
913
+ },
914
+ "rdfs:domain": "csvw:Datatype",
915
+ "rdfs:range": "xsd:nonNegativeInteger"
916
+ },
917
+ {
918
+ "@id": "csvw:minExclusive",
919
+ "@type": "rdf:Property",
920
+ "rdfs:label": {
921
+ "en": "min exclusive"
922
+ },
923
+ "rdfs:comment": {
924
+ "en": "An atomic property that contains a single number that is the minimum valid value (exclusive)."
925
+ },
926
+ "rdfs:domain": "csvw:Datatype",
927
+ "rdfs:range": "xsd:integer"
928
+ },
929
+ {
930
+ "@id": "csvw:minInclusive",
931
+ "@type": "rdf:Property",
932
+ "rdfs:label": {
933
+ "en": "min inclusive"
934
+ },
935
+ "rdfs:comment": {
936
+ "en": "An atomic property that contains a single number that is the minimum valid value (inclusive)."
937
+ },
938
+ "rdfs:domain": "csvw:Datatype",
939
+ "rdfs:range": "xsd:integer"
940
+ },
941
+ {
942
+ "@id": "csvw:minLength",
943
+ "@type": "rdf:Property",
944
+ "rdfs:label": {
945
+ "en": "min length"
946
+ },
947
+ "rdfs:comment": {
948
+ "en": "An atomic property that contains a single integer that is the minimum length of the value."
949
+ },
950
+ "rdfs:domain": "csvw:Datatype",
951
+ "rdfs:range": "xsd:nonNegativeInteger"
952
+ },
953
+ {
954
+ "@id": "csvw:name",
955
+ "@type": "rdf:Property",
956
+ "rdfs:label": {
957
+ "en": "name"
958
+ },
959
+ "rdfs:comment": {
960
+ "en": "An atomic property that gives a canonical name for the column. This must be a string. Conversion specifications must use this property as the basis for the names of properties/elements/attributes in the results of conversions."
961
+ },
962
+ "rdfs:domain": "csvw:Column",
963
+ "rdfs:range": "xsd:string"
964
+ },
965
+ {
966
+ "@id": "csvw:notes",
967
+ "@type": "rdf:Property",
968
+ "rdfs:label": {
969
+ "en": "notes"
970
+ },
971
+ "rdfs:comment": {
972
+ "en": "An array of objects representing annotations. This specification does not place any constraints on the structure of these objects."
973
+ },
974
+ "rdfs:domain": {
975
+ "owl:unionOf": [
976
+ "csvw:TableGroup",
977
+ "csvw:Table"
978
+ ]
979
+ }
980
+ },
981
+ {
982
+ "@id": "csvw:null",
983
+ "@type": "rdf:Property",
984
+ "rdfs:label": {
985
+ "en": "null"
986
+ },
987
+ "rdfs:comment": {
988
+ "en": "An atomic property giving the string or strings used for null values within the data."
989
+ },
990
+ "rdfs:domain": {
991
+ "owl:unionOf": [
992
+ "csvw:TableGroup",
993
+ "csvw:Table",
994
+ "csvw:Schema",
995
+ "csvw:Column"
996
+ ]
997
+ },
998
+ "rdfs:range": "xsd:string"
999
+ },
1000
+ {
1001
+ "@id": "csvw:ordered",
1002
+ "@type": "rdf:Property",
1003
+ "rdfs:label": {
1004
+ "en": "ordered"
1005
+ },
1006
+ "rdfs:comment": {
1007
+ "en": "A boolean atomic property taking a single value which indicates whether a list that is the value of the cell is ordered (if `true`) or unordered (if `false`)."
1008
+ },
1009
+ "rdfs:domain": {
1010
+ "owl:unionOf": [
1011
+ "csvw:TableGroup",
1012
+ "csvw:Table",
1013
+ "csvw:Schema",
1014
+ "csvw:Column"
1015
+ ]
1016
+ },
1017
+ "rdfs:range": "xsd:boolean"
1018
+ },
1019
+ {
1020
+ "@id": "csvw:pattern",
1021
+ "@type": "rdf:Property",
1022
+ "rdfs:label": {
1023
+ "en": "pattern"
1024
+ },
1025
+ "rdfs:comment": {
1026
+ "en": "An atomic property containing a regular expression string, in the syntax and interpreted as defined by [ECMASCRIPT]."
1027
+ },
1028
+ "rdfs:domain": "csvw:NumericFormat",
1029
+ "rdfs:range": "xsd:string"
1030
+ },
1031
+ {
1032
+ "@id": "csvw:primaryKey",
1033
+ "@type": "rdf:Property",
1034
+ "rdfs:label": {
1035
+ "en": "primary key"
1036
+ },
1037
+ "rdfs:comment": {
1038
+ "en": "A column reference property that holds either a single reference to a column description object or an array of references."
1039
+ },
1040
+ "rdfs:domain": "csvw:Schema",
1041
+ "rdfs:range": "xsd:string"
1042
+ },
1043
+ {
1044
+ "@id": "csvw:propertyUrl",
1045
+ "@type": "rdf:Property",
1046
+ "rdfs:label": {
1047
+ "en": "property URL"
1048
+ },
1049
+ "rdfs:comment": {
1050
+ "en": "An URI template property that may be used to create a URI for a property if the table is mapped to another format."
1051
+ },
1052
+ "rdfs:domain": {
1053
+ "owl:unionOf": [
1054
+ "csvw:TableGroup",
1055
+ "csvw:Table",
1056
+ "csvw:Schema",
1057
+ "csvw:Column"
1058
+ ]
1059
+ },
1060
+ "rdfs:range": "csvw:uriTemplate"
1061
+ },
1062
+ {
1063
+ "@id": "csvw:quoteChar",
1064
+ "@type": "rdf:Property",
1065
+ "rdfs:label": {
1066
+ "en": "quote char"
1067
+ },
1068
+ "rdfs:comment": {
1069
+ "en": "An atomic property that sets the quote character flag to the single provided value, which must be a single character."
1070
+ },
1071
+ "rdfs:domain": "csvw:Dialect",
1072
+ "rdfs:range": "xsd:string"
1073
+ },
1074
+ {
1075
+ "@id": "csvw:reference",
1076
+ "@type": "rdf:Property",
1077
+ "rdfs:label": {
1078
+ "en": "reference"
1079
+ },
1080
+ "rdfs:comment": {
1081
+ "en": "An object property that identifies a referenced table and a set of referenced columns within that table."
1082
+ },
1083
+ "rdfs:domain": "csvw:ForeignKey",
1084
+ "rdfs:range": "csvw:TableReference"
1085
+ },
1086
+ {
1087
+ "@id": "csvw:required",
1088
+ "@type": "rdf:Property",
1089
+ "rdfs:label": {
1090
+ "en": "required"
1091
+ },
1092
+ "rdfs:comment": {
1093
+ "en": "A boolean value which indicates whether every cell within the column must have a non-null value."
1094
+ },
1095
+ "rdfs:domain": "csvw:Column",
1096
+ "rdfs:range": "xsd:boolean"
1097
+ },
1098
+ {
1099
+ "@id": "csvw:resource",
1100
+ "@type": "rdf:Property",
1101
+ "rdfs:label": {
1102
+ "en": "resource"
1103
+ },
1104
+ "rdfs:comment": {
1105
+ "en": "A link property holding a URL that is the identifier for a specific table that is being referenced."
1106
+ },
1107
+ "rdfs:domain": "csvw:TableReference",
1108
+ "rdfs:range": "xsd:anyURI"
1109
+ },
1110
+ {
1111
+ "@id": "csvw:resources",
1112
+ "@type": "rdf:Property",
1113
+ "rdfs:label": {
1114
+ "en": "resources"
1115
+ },
1116
+ "rdfs:comment": {
1117
+ "en": "An array property of table descriptions for the tables in the group, namely those listed in the resources annotation on the group of tables being described."
1118
+ },
1119
+ "rdfs:domain": "csvw:TableGroup",
1120
+ "rdfs:range": "csvw:Table"
1121
+ },
1122
+ {
1123
+ "@id": "csvw:row",
1124
+ "@type": "rdf:Property",
1125
+ "rdfs:label": {
1126
+ "en": "row"
1127
+ },
1128
+ "rdfs:comment": {
1129
+ "en": "Relates a Table to each Row output."
1130
+ },
1131
+ "rdfs:subPropertyOf": "rdfs:member",
1132
+ "rdfs:domain": "csvw:Table",
1133
+ "rdfs:range": "csvw:Row"
1134
+ },
1135
+ {
1136
+ "@id": "csvw:rownum",
1137
+ "@type": "rdf:Property",
1138
+ "rdfs:label": {
1139
+ "en": "row number"
1140
+ },
1141
+ "rdfs:comment": {
1142
+ "en": "The position of the row amongst the rows of the Annotated Tabl, starting from 1 "
1143
+ },
1144
+ "rdfs:range": "xsd:integer"
1145
+ },
1146
+ {
1147
+ "@id": "csvw:scriptFormat",
1148
+ "@type": "rdf:Property",
1149
+ "rdfs:label": {
1150
+ "en": "script format"
1151
+ },
1152
+ "rdfs:comment": {
1153
+ "en": "A link property giving the single URL for the format that is used by the script or template."
1154
+ },
1155
+ "rdfs:domain": "csvw:Transformation",
1156
+ "rdfs:range": "xsd:anyURI"
1157
+ },
1158
+ {
1159
+ "@id": "csvw:schemaReference",
1160
+ "@type": "rdf:Property",
1161
+ "rdfs:label": {
1162
+ "en": "schema reference"
1163
+ },
1164
+ "rdfs:comment": {
1165
+ "en": "A link property holding a URL that is the identifier for a schema that is being referenced."
1166
+ },
1167
+ "rdfs:domain": "csvw:TableReference",
1168
+ "rdfs:range": "xsd:anyURI"
1169
+ },
1170
+ {
1171
+ "@id": "csvw:separator",
1172
+ "@type": "rdf:Property",
1173
+ "rdfs:label": {
1174
+ "en": "separator"
1175
+ },
1176
+ "rdfs:comment": {
1177
+ "en": "An atomic property that must have a single string value that is the character used to separate items in the string value of the cell."
1178
+ },
1179
+ "rdfs:domain": {
1180
+ "owl:unionOf": [
1181
+ "csvw:TableGroup",
1182
+ "csvw:Table",
1183
+ "csvw:Schema",
1184
+ "csvw:Column"
1185
+ ]
1186
+ },
1187
+ "rdfs:range": "xsd:string"
1188
+ },
1189
+ {
1190
+ "@id": "csvw:skipBlankRows",
1191
+ "@type": "rdf:Property",
1192
+ "rdfs:label": {
1193
+ "en": "skip blank rows"
1194
+ },
1195
+ "rdfs:comment": {
1196
+ "en": "An boolean atomic property that sets the skip blank rows flag to the single provided boolean value."
1197
+ },
1198
+ "rdfs:domain": "csvw:Dialect",
1199
+ "rdfs:range": "xsd:boolean"
1200
+ },
1201
+ {
1202
+ "@id": "csvw:skipColumns",
1203
+ "@type": "rdf:Property",
1204
+ "rdfs:label": {
1205
+ "en": "skip columns"
1206
+ },
1207
+ "rdfs:comment": {
1208
+ "en": "An numeric atomic property that sets the skip columns flag to the single provided numeric value, which must be a non-negative integer."
1209
+ },
1210
+ "rdfs:domain": "csvw:Dialect",
1211
+ "rdfs:range": "xsd:nonNegativeInteger"
1212
+ },
1213
+ {
1214
+ "@id": "csvw:skipInitialSpace",
1215
+ "@type": "rdf:Property",
1216
+ "rdfs:label": {
1217
+ "en": "skip initial space"
1218
+ },
1219
+ "rdfs:comment": {
1220
+ "en": "A boolean atomic property that, if `true`, sets the trim flag to \"start\". If `false`, to `false`. If the trim property is provided, the skipInitialSpace property is ignored."
1221
+ },
1222
+ "rdfs:domain": "csvw:Dialect",
1223
+ "rdfs:range": "xsd:boolean"
1224
+ },
1225
+ {
1226
+ "@id": "csvw:skipRows",
1227
+ "@type": "rdf:Property",
1228
+ "rdfs:label": {
1229
+ "en": "skip rows"
1230
+ },
1231
+ "rdfs:comment": {
1232
+ "en": "An numeric atomic property that sets the skip rows flag to the single provided numeric value, which must be a non-negative integer."
1233
+ },
1234
+ "rdfs:domain": "csvw:Dialect",
1235
+ "rdfs:range": "xsd:nonNegativeInteger"
1236
+ },
1237
+ {
1238
+ "@id": "csvw:source",
1239
+ "@type": "rdf:Property",
1240
+ "rdfs:label": {
1241
+ "en": "source"
1242
+ },
1243
+ "rdfs:comment": {
1244
+ "en": "A single string atomic property that provides, if specified, the format to which the tabular data should be transformed prior to the transformation using the script or template."
1245
+ },
1246
+ "rdfs:domain": "csvw:Transformation",
1247
+ "rdfs:range": "xsd:string"
1248
+ },
1249
+ {
1250
+ "@id": "csvw:suppressOutput",
1251
+ "@type": "rdf:Property",
1252
+ "rdfs:label": {
1253
+ "en": "suppress output"
1254
+ },
1255
+ "rdfs:comment": {
1256
+ "en": "A boolean atomic property. If true, suppresses any output that would be generated when converting a table or cells within a column."
1257
+ },
1258
+ "rdfs:domain": {
1259
+ "owl:unionOf": [
1260
+ "csvw:Table",
1261
+ "csvw:Column"
1262
+ ]
1263
+ },
1264
+ "rdfs:range": "xsd:boolean"
1265
+ },
1266
+ {
1267
+ "@id": "csvw:table",
1268
+ "@type": "rdf:Property",
1269
+ "rdfs:label": {
1270
+ "en": "table"
1271
+ },
1272
+ "rdfs:comment": {
1273
+ "en": "Relates an Table group to annotated tables. (Note, this is different from csvw:resources, which relates metadata, rather than resulting annotated table descriptions."
1274
+ },
1275
+ "rdfs:subPropertyOf": "rdfs:member",
1276
+ "rdfs:domain": "csvw:TableGroup",
1277
+ "rdfs:range": "csvw:Table"
1278
+ },
1279
+ {
1280
+ "@id": "csvw:tableDirection",
1281
+ "@type": "rdf:Property",
1282
+ "rdfs:label": {
1283
+ "en": "table direction"
1284
+ },
1285
+ "rdfs:comment": {
1286
+ "en": "One of csvw:rtl csvw:ltr or csvw:default. Indicates whether the tables in the group should be displayed with the first column on the right, on the left, or based on the first character in the table that has a specific direction."
1287
+ },
1288
+ "rdfs:domain": {
1289
+ "owl:unionOf": [
1290
+ "csvw:TableGroup",
1291
+ "csvw:Table"
1292
+ ]
1293
+ },
1294
+ "rdfs:range": "csvw:Direction"
1295
+ },
1296
+ {
1297
+ "@id": "csvw:tableSchema",
1298
+ "@type": "rdf:Property",
1299
+ "rdfs:label": {
1300
+ "en": "table schema"
1301
+ },
1302
+ "rdfs:comment": {
1303
+ "en": "An object property that provides a single schema description as described in section 4.8 Schemas, used as the default for all the tables in the group"
1304
+ },
1305
+ "rdfs:domain": {
1306
+ "owl:unionOf": [
1307
+ "csvw:TableGroup",
1308
+ "csvw:Table"
1309
+ ]
1310
+ },
1311
+ "rdfs:range": "csvw:Schema"
1312
+ },
1313
+ {
1314
+ "@id": "csvw:targetFormat",
1315
+ "@type": "rdf:Property",
1316
+ "rdfs:label": {
1317
+ "en": "target format"
1318
+ },
1319
+ "rdfs:comment": {
1320
+ "en": "A link property giving the single URL for the format that will be created through the transformation."
1321
+ },
1322
+ "rdfs:domain": "csvw:Transformation",
1323
+ "rdfs:range": "xsd:anyURI"
1324
+ },
1325
+ {
1326
+ "@id": "csvw:transformations",
1327
+ "@type": "rdf:Property",
1328
+ "rdfs:label": {
1329
+ "en": "transformations"
1330
+ },
1331
+ "rdfs:comment": {
1332
+ "en": "An array property of transformation definitions that provide mechanisms to transform the tabular data into other formats."
1333
+ },
1334
+ "rdfs:domain": {
1335
+ "owl:unionOf": [
1336
+ "csvw:TableGroup",
1337
+ "csvw:Table",
1338
+ "csvw:Schema",
1339
+ "csvw:Column"
1340
+ ]
1341
+ },
1342
+ "rdfs:range": "csvw:Transformation"
1343
+ },
1344
+ {
1345
+ "@id": "csvw:textDirection",
1346
+ "@type": "rdf:Property",
1347
+ "rdfs:label": {
1348
+ "en": "text direction"
1349
+ },
1350
+ "rdfs:comment": {
1351
+ "en": "An atomic property that must have a single value that is one of csvw:rtl or csvw:ltr (the default)."
1352
+ },
1353
+ "rdfs:domain": {
1354
+ "owl:unionOf": [
1355
+ "csvw:TableGroup",
1356
+ "csvw:Table",
1357
+ "csvw:Schema",
1358
+ "csvw:Column"
1359
+ ]
1360
+ },
1361
+ "rdfs:range": "csvw:Direction"
1362
+ },
1363
+ {
1364
+ "@id": "csvw:title",
1365
+ "@type": "rdf:Property",
1366
+ "rdfs:label": {
1367
+ "en": "title"
1368
+ },
1369
+ "rdfs:comment": {
1370
+ "en": "For a Transformation A natural language property that describes the format that will be generated from the transformation.\n\nFor a Column: A natural language property that provides possible alternative names for the column."
1371
+ },
1372
+ "rdfs:domain": {
1373
+ "owl:unionOf": [
1374
+ "csvw:Transformation",
1375
+ "csvw:Column"
1376
+ ]
1377
+ }
1378
+ },
1379
+ {
1380
+ "@id": "csvw:trim",
1381
+ "@type": "rdf:Property",
1382
+ "rdfs:label": {
1383
+ "en": "trim"
1384
+ },
1385
+ "rdfs:comment": {
1386
+ "en": "An atomic property that, if the boolean `true`, sets the trim flag to `true` and if the boolean `false` to `false`. If the value provided is a string, sets the trim flag to the provided value, which must be one of \"true\", \"false\", \"start\" or \"end\"."
1387
+ },
1388
+ "rdfs:domain": "csvw:Dialect",
1389
+ "rdfs:range": "xsd:boolean"
1390
+ },
1391
+ {
1392
+ "@id": "csvw:url",
1393
+ "@type": "rdf:Property",
1394
+ "rdfs:label": {
1395
+ "en": "url"
1396
+ },
1397
+ "rdfs:comment": {
1398
+ "en": "For a Table: This link property gives the single URL of the CSV file that the table is held in, relative to the location of the metadata document.\n\nFor a Transformation: A link property giving the single URL of the file that the script or template is held in, relative to the location of the metadata document."
1399
+ },
1400
+ "rdfs:domain": {
1401
+ "owl:unionOf": [
1402
+ "csvw:Table",
1403
+ "csvw:Transformation"
1404
+ ]
1405
+ },
1406
+ "rdfs:range": "xsd:anyURI"
1407
+ },
1408
+ {
1409
+ "@id": "csvw:valueUrl",
1410
+ "@type": "rdf:Property",
1411
+ "rdfs:label": {
1412
+ "en": "valueUrl"
1413
+ },
1414
+ "rdfs:comment": {
1415
+ "en": "An URI template property that is used to map the values to the cells into URLs."
1416
+ },
1417
+ "rdfs:domain": {
1418
+ "owl:unionOf": [
1419
+ "csvw:TableGroup",
1420
+ "csvw:Table",
1421
+ "csvw:Schema",
1422
+ "csvw:Column"
1423
+ ]
1424
+ },
1425
+ "rdfs:range": "csvw:uriTemplate"
1426
+ },
1427
+ {
1428
+ "@id": "csvw:virtual",
1429
+ "@type": "rdf:Property",
1430
+ "rdfs:label": {
1431
+ "en": "virtual"
1432
+ },
1433
+ "rdfs:comment": {
1434
+ "en": "A boolean atomic property taking a single value which indicates whether the column is a virtual column not present in the original source"
1435
+ },
1436
+ "rdfs:domain": "csvw:Column",
1437
+ "rdfs:range": "xsd:boolean"
1438
+ }
1439
+ ],
1440
+ "rdfs_datatypes": [
1441
+ {
1442
+ "@id": "csvw:JSON",
1443
+ "@type": "rdfs:Datatype",
1444
+ "rdfs:label": {
1445
+ "en": "JSON"
1446
+ },
1447
+ "rdfs:comment": {
1448
+ "en": "A literal containing JSON."
1449
+ },
1450
+ "rdfs:subClassOf": "xsd:string"
1451
+ },
1452
+ {
1453
+ "@id": "csvw:uriTemplate",
1454
+ "@type": "rdfs:Datatype",
1455
+ "rdfs:label": {
1456
+ "en": "uri template"
1457
+ },
1458
+ "rdfs:comment": {
1459
+ "en": ""
1460
+ },
1461
+ "rdfs:subClassOf": "xsd:anyURI"
1462
+ }
1463
+ ],
1464
+ "rdfs_instances": [
1465
+ {
1466
+ "@id": "csvw:ltr",
1467
+ "@type": "Direction",
1468
+ "rdfs:label": {
1469
+ "en": "left to right"
1470
+ },
1471
+ "rdfs:comment": {
1472
+ "en": "Indicates text should be processed left to right."
1473
+ }
1474
+ },
1475
+ {
1476
+ "@id": "csvw:rtl",
1477
+ "@type": "Direction",
1478
+ "rdfs:label": {
1479
+ "en": "right to left"
1480
+ },
1481
+ "rdfs:comment": {
1482
+ "en": "Indiects text should be processed right to left"
1483
+ }
1484
+ },
1485
+ {
1486
+ "@id": "csvw:csvEncodedTabularData",
1487
+ "@type": "prov:Role",
1488
+ "rdfs:label": {
1489
+ "en": "CSV Encoded Tabular Data"
1490
+ },
1491
+ "rdfs:comment": {
1492
+ "en": "Describes the role of a CSV file in the tabular data mapping."
1493
+ }
1494
+ },
1495
+ {
1496
+ "@id": "csvw:tabularMetadata",
1497
+ "@type": "prov:Role",
1498
+ "rdfs:label": {
1499
+ "en": "Tabular Metadata"
1500
+ },
1501
+ "rdfs:comment": {
1502
+ "en": "Describes the role of a Metadata file in the tabular data mapping."
1503
+ }
1504
+ }
1505
+ ]
1506
+ }
1507
+ }