rdf-tabular 3.1.0 → 3.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,14 +1,14 @@
1
1
  $:.unshift(File.expand_path("..", __FILE__))
2
- require 'rdf' # @see http://rubygems.org/gems/rdf
2
+ require 'rdf' # @see https://rubygems.org/gems/rdf
3
3
  require 'csv'
4
4
 
5
5
  module RDF
6
6
  ##
7
7
  # **`RDF::Tabular`** is a Tabular/CSV extension for RDF.rb.
8
8
  #
9
- # @see http://w3c.github.io/csvw/
9
+ # @see https://w3c.github.io/csvw/
10
10
  #
11
- # @author [Gregg Kellogg](http://greggkellogg.net/)
11
+ # @author [Gregg Kellogg](https://greggkellogg.net/)
12
12
  module Tabular
13
13
  require 'rdf/tabular/format'
14
14
  autoload :Column, 'rdf/tabular/metadata'
@@ -5,548 +5,958 @@ require 'rdf'
5
5
  module RDF::Tabular
6
6
  # @!parse
7
7
  # # Vocabulary for <http://www.w3.org/ns/csvw#>
8
+ # #
9
+ # # CSVW Namespace Vocabulary Terms
10
+ # #
11
+ # # This document describes the RDFS vocabulary description used in the Metadata Vocabulary for Tabular Data [[tabular-metadata]] along with the default JSON-LD Context.
12
+ # # @version https://github.com/w3c/csvw/commit/94898e9f0b073aa09b3334ded2eb5ab3b87b37a9
13
+ # # @see http://www.w3.org/TR/tabular-metadata
8
14
  # class CSVW < RDF::StrictVocabulary
15
+ # # A Cell represents a cell at the intersection of a Row and a Column within a Table.
16
+ # # @return [RDF::Vocabulary::Term]
17
+ # attr_reader :Cell
18
+ #
19
+ # # A Column represents a vertical arrangement of Cells within a Table.
20
+ # # @return [RDF::Vocabulary::Term]
21
+ # attr_reader :Column
22
+ #
23
+ # # Describes facets of a datatype.
24
+ # # @return [RDF::Vocabulary::Term]
25
+ # attr_reader :Datatype
26
+ #
27
+ # # A Dialect Description provides hints to parsers about how to parse a linked file.
28
+ # # @return [RDF::Vocabulary::Term]
29
+ # attr_reader :Dialect
30
+ #
31
+ # # The class of table/text directions.
32
+ # # @return [RDF::Vocabulary::Term]
33
+ # attr_reader :Direction
34
+ #
35
+ # # Describes relationships between Columns in one or more Tables.
36
+ # # @return [RDF::Vocabulary::Term]
37
+ # attr_reader :ForeignKey
38
+ #
39
+ # # 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.
40
+ # # @return [RDF::Vocabulary::Term]
41
+ # attr_reader :NumericFormat
42
+ #
43
+ # # A Row represents a horizontal arrangement of cells within a Table.
44
+ # # @return [RDF::Vocabulary::Term]
45
+ # attr_reader :Row
46
+ #
47
+ # # A Schema is a definition of a tabular format that may be common to multiple tables.
48
+ # # @return [RDF::Vocabulary::Term]
49
+ # attr_reader :Schema
50
+ #
51
+ # # An annotated table is a table that is annotated with additional metadata.
52
+ # # @return [RDF::Vocabulary::Term]
53
+ # attr_reader :Table
54
+ #
55
+ # # A Group of Tables comprises a set of Annotated Tables and a set of annotations that relate to those Tables.
56
+ # # @return [RDF::Vocabulary::Term]
57
+ # attr_reader :TableGroup
58
+ #
59
+ # # An object property that identifies a referenced table and a set of referenced columns within that table.
60
+ # # @return [RDF::Vocabulary::Term]
61
+ # attr_reader :TableReference
62
+ #
63
+ # # A Transformation Definition is a definition of how tabular data can be transformed into another format.
64
+ # # @return [RDF::Vocabulary::Term]
65
+ # attr_reader :Transformation
66
+ #
67
+ # # A URI template property that MAY be used to indicate what a cell contains information about.
68
+ # # @return [RDF::Vocabulary::Term]
69
+ # attr_reader :aboutUrl
70
+ #
71
+ # # An atomic property that contains a single string: a term defined in the default context representing a built-in datatype URL, as listed above.
72
+ # # @return [RDF::Vocabulary::Term]
73
+ # attr_reader :base
74
+ #
75
+ # # An array property of column descriptions as described in section 5.6 Columns.
76
+ # # @return [RDF::Vocabulary::Term]
77
+ # attr_reader :column
78
+ #
79
+ # # A column reference property that holds either a single reference to a column description object within this schema, or an array of references. These form the referencing columns for the foreign key definition.
80
+ # # @return [RDF::Vocabulary::Term]
81
+ # attr_reader :columnReference
82
+ #
83
+ # # An atomic property that sets the comment prefix flag to the single provided value, which MUST be a string.
84
+ # # @return [RDF::Vocabulary::Term]
85
+ # attr_reader :commentPrefix
86
+ #
87
+ # # An object property that contains either a single string that is the main datatype of the values of the cell or a datatype description object. If the value of this property is a string, it MUST be one of the built-in datatypes defined in section 5.11.1 Built-in Datatypes or an absolute URL; if it is an object then it describes a more specialised datatype.
88
+ # # @return [RDF::Vocabulary::Term]
89
+ # attr_reader :datatype
90
+ #
91
+ # # A string whose value is used to represent a decimal point within the number.
92
+ # # @return [RDF::Vocabulary::Term]
93
+ # attr_reader :decimalChar
94
+ #
95
+ # # 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.
96
+ # # @return [RDF::Vocabulary::Term]
97
+ # attr_reader :default
98
+ #
99
+ # # An atomic property that sets the delimiter flag to the single provided value, which MUST be a string.
100
+ # # @return [RDF::Vocabulary::Term]
101
+ # attr_reader :delimiter
102
+ #
103
+ # # 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.
104
+ # # @return [RDF::Vocabulary::Term]
105
+ # attr_reader :describes
106
+ #
107
+ # # An object property that provides a single dialect description. If provided, dialect provides hints to processors about how to parse the referenced files to create tabular data models for the tables in the group.
108
+ # # @return [RDF::Vocabulary::Term]
109
+ # attr_reader :dialect
110
+ #
111
+ # # A boolean atomic property that, if `true`, sets the escape character flag to `"`.
112
+ # # @return [RDF::Vocabulary::Term]
113
+ # attr_reader :doubleQuote
114
+ #
115
+ # # An atomic property that sets the encoding flag to the single provided string value, which MUST be a defined in [[encoding]]. The default is "utf-8".
116
+ # # @return [RDF::Vocabulary::Term]
117
+ # attr_reader :encoding
118
+ #
119
+ # # For a Table: a list of foreign keys on the table. For a Schema: 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.
120
+ # # @return [RDF::Vocabulary::Term]
121
+ # attr_reader :foreignKey
122
+ #
123
+ # # An atomic property that contains either a single string or an object that defines the format of a value of this type, used when parsing a string value as described in Parsing Cells in [[tabular-data-model]].
124
+ # # @return [RDF::Vocabulary::Term]
125
+ # attr_reader :format
126
+ #
127
+ # # A string whose value is used to group digits within the number.
128
+ # # @return [RDF::Vocabulary::Term]
129
+ # attr_reader :groupChar
130
+ #
131
+ # # 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.
132
+ # # @return [RDF::Vocabulary::Term]
133
+ # attr_reader :header
134
+ #
135
+ # # An numeric atomic property that sets the header row count flag to the single provided value, which must be a non-negative integer.
136
+ # # @return [RDF::Vocabulary::Term]
137
+ # attr_reader :headerRowCount
138
+ #
139
+ # # An atomic property giving a single string language code as defined by [[BCP47]].
140
+ # # @return [RDF::Vocabulary::Term]
141
+ # attr_reader :lang
142
+ #
143
+ # # The exact length of the value of the cell.
144
+ # # @return [RDF::Vocabulary::Term]
145
+ # attr_reader :length
146
+ #
147
+ # # An atomic property that sets the line terminators flag to either an array containing the single provided string value, or the provided array.
148
+ # # @return [RDF::Vocabulary::Term]
149
+ # attr_reader :lineTerminators
150
+ #
151
+ # # An atomic property that contains a single number that is the maximum valid value (exclusive).
152
+ # # @return [RDF::Vocabulary::Term]
153
+ # attr_reader :maxExclusive
154
+ #
155
+ # # An atomic property that contains a single number that is the maximum valid value (inclusive).
156
+ # # @return [RDF::Vocabulary::Term]
157
+ # attr_reader :maxInclusive
158
+ #
159
+ # # A numeric atomic property that contains a single integer that is the maximum length of the value.
160
+ # # @return [RDF::Vocabulary::Term]
161
+ # attr_reader :maxLength
162
+ #
163
+ # # An atomic property that contains a single number that is the minimum valid value (exclusive).
164
+ # # @return [RDF::Vocabulary::Term]
165
+ # attr_reader :minExclusive
166
+ #
167
+ # # An atomic property that contains a single number that is the minimum valid value (inclusive).
168
+ # # @return [RDF::Vocabulary::Term]
169
+ # attr_reader :minInclusive
170
+ #
171
+ # # An atomic property that contains a single integer that is the minimum length of the value.
172
+ # # @return [RDF::Vocabulary::Term]
173
+ # attr_reader :minLength
174
+ #
175
+ # # An atomic property that gives a single canonical name for the column. The value of this property becomes the name annotation for the described column.
176
+ # # @return [RDF::Vocabulary::Term]
177
+ # attr_reader :name
178
+ #
179
+ # # An array property that provides an array of objects representing arbitrary annotations on the annotated tabular data model.
180
+ # # @return [RDF::Vocabulary::Term]
181
+ # attr_reader :note
182
+ #
183
+ # # An atomic property giving the string or strings used for null values within the data. If the string value of the cell is equal to any one of these values, the cell value is `null`.
184
+ # # @return [RDF::Vocabulary::Term]
185
+ # attr_reader :null
186
+ #
187
+ # # 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`).
188
+ # # @return [RDF::Vocabulary::Term]
189
+ # attr_reader :ordered
190
+ #
191
+ # # A regular expression string, in the syntax and interpreted as defined by [[ECMASCRIPT]].
192
+ # # @return [RDF::Vocabulary::Term]
193
+ # attr_reader :pattern
194
+ #
195
+ # # For Schema: A column reference property that holds either a single reference to a column description object or an array of references. For Row: a possibly empty list of cells whose values together provide a unique identifier for this row. This is similar to the name of a column.
196
+ # # @return [RDF::Vocabulary::Term]
197
+ # attr_reader :primaryKey
198
+ #
199
+ # # An URI template property that MAY be used to create a URI for a property if the table is mapped to another format.
200
+ # # @return [RDF::Vocabulary::Term]
201
+ # attr_reader :propertyUrl
202
+ #
203
+ # # An atomic property that sets the quote character flag to the single provided value, which must be a string or `null`.
204
+ # # @return [RDF::Vocabulary::Term]
205
+ # attr_reader :quoteChar
206
+ #
207
+ # # An object property that identifies a **referenced table** and a set of **referenced columns** within that table.
208
+ # # @return [RDF::Vocabulary::Term]
209
+ # attr_reader :reference
210
+ #
211
+ # # A possibly empty list of pairs of a foreign key and a row in a table within the same group of tables.
212
+ # # @return [RDF::Vocabulary::Term]
213
+ # attr_reader :referencedRow
214
+ #
215
+ # # A boolean atomic property taking a single value which indicates whether the cell must have a non-null value. The default is `false`.
216
+ # # @return [RDF::Vocabulary::Term]
217
+ # attr_reader :required
218
+ #
219
+ # # A link property holding a URL that is the identifier for a specific table that is being referenced.
220
+ # # @return [RDF::Vocabulary::Term]
221
+ # attr_reader :resource
222
+ #
223
+ # # Relates a Table to each Row output.
224
+ # # @return [RDF::Vocabulary::Term]
225
+ # attr_reader :row
226
+ #
227
+ # # A column reference property that holds either a single reference to a column description object or an array of references.
228
+ # # @return [RDF::Vocabulary::Term]
229
+ # attr_reader :rowTitle
230
+ #
231
+ # # The position of the row amongst the rows of the Annotated Tabl, starting from 1
232
+ # # @return [RDF::Vocabulary::Term]
233
+ # attr_reader :rownum
234
+ #
235
+ # # A link property holding a URL that is the identifier for a schema that is being referenced.
236
+ # # @return [RDF::Vocabulary::Term]
237
+ # attr_reader :schemaReference
238
+ #
239
+ # # A link property giving the single URL for the format that is used by the script or template.
240
+ # # @return [RDF::Vocabulary::Term]
241
+ # attr_reader :scriptFormat
242
+ #
243
+ # # 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.
244
+ # # @return [RDF::Vocabulary::Term]
245
+ # attr_reader :separator
246
+ #
247
+ # # An boolean atomic property that sets the `skip blank rows` flag to the single provided boolean value.
248
+ # # @return [RDF::Vocabulary::Term]
249
+ # attr_reader :skipBlankRows
250
+ #
251
+ # # An numeric atomic property that sets the `skip columns` flag to the single provided numeric value, which MUST be a non-negative integer.
252
+ # # @return [RDF::Vocabulary::Term]
253
+ # attr_reader :skipColumns
254
+ #
255
+ # # A boolean atomic property that, if `true`, sets the trim flag to "start". If `false`, to `false`.
256
+ # # @return [RDF::Vocabulary::Term]
257
+ # attr_reader :skipInitialSpace
258
+ #
259
+ # # An numeric atomic property that sets the `skip rows` flag to the single provided numeric value, which MUST be a non-negative integer.
260
+ # # @return [RDF::Vocabulary::Term]
261
+ # attr_reader :skipRows
262
+ #
263
+ # # 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.
264
+ # # @return [RDF::Vocabulary::Term]
265
+ # attr_reader :source
266
+ #
267
+ # # A boolean atomic property. If `true`, suppresses any output that would be generated when converting a table or cells within a column.
268
+ # # @return [RDF::Vocabulary::Term]
269
+ # attr_reader :suppressOutput
270
+ #
271
+ # # Relates an Table group to annotated tables.
272
+ # # @return [RDF::Vocabulary::Term]
273
+ # attr_reader :table
274
+ #
275
+ # # One of `rtl`, `ltr` or `auto`. 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.
276
+ # # @return [RDF::Vocabulary::Term]
277
+ # attr_reader :tableDirection
278
+ #
279
+ # # An object property that provides a single schema description as described in section 5.5 Schemas, used as the default for all the tables in the group
280
+ # # @return [RDF::Vocabulary::Term]
281
+ # attr_reader :tableSchema
282
+ #
283
+ # # A link property giving the single URL for the format that will be created through the transformation.
284
+ # # @return [RDF::Vocabulary::Term]
285
+ # attr_reader :targetFormat
286
+ #
287
+ # # An atomic property that must have a single value that is one of `rtl` or `ltr` (the default).
288
+ # # @return [RDF::Vocabulary::Term]
289
+ # attr_reader :textDirection
290
+ #
291
+ # # For a Transformation A natural language property that describes the format that will be generated from the transformation. For a Column: A natural language property that provides possible alternative names for the column.
292
+ # # @return [RDF::Vocabulary::Term]
293
+ # attr_reader :title
294
+ #
295
+ # # An array property of transformation definitions that provide mechanisms to transform the tabular data into other formats.
296
+ # # @return [RDF::Vocabulary::Term]
297
+ # attr_reader :transformations
298
+ #
299
+ # # 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".
300
+ # # @return [RDF::Vocabulary::Term]
301
+ # attr_reader :trim
302
+ #
303
+ # # 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. For 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.
304
+ # # @return [RDF::Vocabulary::Term]
305
+ # attr_reader :url
306
+ #
307
+ # # An URI template property that is used to map the values of cells into URLs.
308
+ # # @return [RDF::Vocabulary::Term]
309
+ # attr_reader :valueUrl
310
+ #
311
+ # # A boolean atomic property taking a single value which indicates whether the column is a virtual column not present in the original source
312
+ # # @return [RDF::Vocabulary::Term]
313
+ # attr_reader :virtual
314
+ #
315
+ # # A literal containing JSON.
316
+ # # @return [RDF::Vocabulary::Term]
317
+ # attr_reader :JSON
318
+ #
319
+ # #
320
+ # # @return [RDF::Vocabulary::Term]
321
+ # attr_reader :uriTemplate
322
+ #
323
+ # # Indicates whether the tables in the group should be displayed based on the first character in the table that has a specific direction.
324
+ # # @return [RDF::Vocabulary::Term]
325
+ # attr_reader :auto
326
+ #
327
+ # # Describes the role of a CSV file in the tabular data mapping.
328
+ # # @return [RDF::Vocabulary::Term]
329
+ # attr_reader :csvEncodedTabularData
330
+ #
331
+ # # For `textDirection`, indicates that the direction is inherited from the `tableDirection` annotation of the `table`.
332
+ # # @return [RDF::Vocabulary::Term]
333
+ # attr_reader :inherit
334
+ #
335
+ # # Indicates whether the tables in the group should be displayed with the first column on the right.
336
+ # # @return [RDF::Vocabulary::Term]
337
+ # attr_reader :ltr
338
+ #
339
+ # # Indicates whether the tables in the group should be displayed with the first column on the left.
340
+ # # @return [RDF::Vocabulary::Term]
341
+ # attr_reader :rtl
342
+ #
343
+ # # Describes the role of a Metadata file in the tabular data mapping.
344
+ # # @return [RDF::Vocabulary::Term]
345
+ # attr_reader :tabularMetadata
346
+ #
9
347
  # end
10
- class CSVW < RDF::StrictVocabulary("http://www.w3.org/ns/csvw#")
348
+ CSVW = Class.new(RDF::StrictVocabulary("http://www.w3.org/ns/csvw#")) do
11
349
 
12
350
  # Ontology definition
13
351
  ontology :"http://www.w3.org/ns/csvw#",
14
- :"dc:date" => %(2017-05-23).freeze,
15
- :"dc:description" => %(This document describes the RDFS vocabulary description used in the Metadata Vocabulary for Tabular Data [[tabular-metadata]] along with the default JSON-LD Context.).freeze,
16
- :"dc:title" => %(CSVW Namespace Vocabulary Terms).freeze,
17
- :"owl:imports" => %(http://www.w3.org/ns/prov).freeze,
18
- :"owl:versionInfo" => %(https://github.com/w3c/csvw/commit/94898e9f0b073aa09b3334ded2eb5ab3b87b37a9).freeze,
19
- :"rdfs:seeAlso" => %(http://www.w3.org/TR/tabular-metadata).freeze,
352
+ "dc:date": "2017-05-23".freeze,
353
+ "dc:description": "This document describes the RDFS vocabulary description used in the Metadata Vocabulary for Tabular Data [[tabular-metadata]] along with the default JSON-LD Context.".freeze,
354
+ "dc:title": "CSVW Namespace Vocabulary Terms".freeze,
355
+ "owl:imports": "http://www.w3.org/ns/prov".freeze,
356
+ "owl:versionInfo": "https://github.com/w3c/csvw/commit/94898e9f0b073aa09b3334ded2eb5ab3b87b37a9".freeze,
357
+ "rdfs:seeAlso": "http://www.w3.org/TR/tabular-metadata".freeze,
20
358
  type: "owl:Ontology".freeze
21
359
 
22
360
  # Class definitions
23
361
  term :Cell,
24
362
  comment: %(A Cell represents a cell at the intersection of a Row and a Column within a Table.).freeze,
363
+ isDefinedBy: "csvw:".freeze,
25
364
  label: "Cell".freeze,
26
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
27
365
  type: "rdfs:Class".freeze
28
366
  term :Column,
29
367
  comment: %(A Column represents a vertical arrangement of Cells within a Table.).freeze,
368
+ isDefinedBy: "csvw:".freeze,
30
369
  label: "Column Description".freeze,
31
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
32
370
  type: "rdfs:Class".freeze
33
371
  term :Datatype,
34
372
  comment: %(Describes facets of a datatype.).freeze,
373
+ isDefinedBy: "csvw:".freeze,
35
374
  label: "Datatype".freeze,
36
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
37
375
  type: "rdfs:Class".freeze
38
376
  term :Dialect,
39
377
  comment: %(A Dialect Description provides hints to parsers about how to parse a linked file.).freeze,
378
+ isDefinedBy: "csvw:".freeze,
40
379
  label: "Dialect Description".freeze,
41
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
42
380
  type: "rdfs:Class".freeze
43
381
  term :Direction,
44
382
  comment: %(The class of table/text directions.).freeze,
383
+ isDefinedBy: "csvw:".freeze,
45
384
  label: "Direction".freeze,
46
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
47
385
  type: "rdfs:Class".freeze
48
386
  term :ForeignKey,
49
387
  comment: %(Describes relationships between Columns in one or more Tables.).freeze,
388
+ isDefinedBy: "csvw:".freeze,
50
389
  label: "Foreign Key Definition".freeze,
51
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
52
390
  type: "rdfs:Class".freeze
53
391
  term :NumericFormat,
54
392
  comment: %(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.).freeze,
393
+ isDefinedBy: "csvw:".freeze,
55
394
  label: "Numeric Format".freeze,
56
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
57
395
  type: "rdfs:Class".freeze
58
396
  term :Row,
59
397
  comment: %(A Row represents a horizontal arrangement of cells within a Table.).freeze,
398
+ isDefinedBy: "csvw:".freeze,
60
399
  label: "Row".freeze,
61
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
62
400
  type: "rdfs:Class".freeze
63
401
  term :Schema,
64
402
  comment: %(A Schema is a definition of a tabular format that may be common to multiple tables.).freeze,
403
+ isDefinedBy: "csvw:".freeze,
65
404
  label: "Schema".freeze,
66
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
67
405
  type: "rdfs:Class".freeze
68
406
  term :Table,
69
407
  comment: %(An annotated table is a table that is annotated with additional metadata.).freeze,
408
+ isDefinedBy: "csvw:".freeze,
70
409
  label: "Annotated Table".freeze,
71
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
72
410
  type: "rdfs:Class".freeze
73
411
  term :TableGroup,
74
412
  comment: %(A Group of Tables comprises a set of Annotated Tables and a set of annotations that relate to those Tables.).freeze,
413
+ isDefinedBy: "csvw:".freeze,
75
414
  label: "Group of Tables".freeze,
76
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
77
415
  type: "rdfs:Class".freeze
78
416
  term :TableReference,
79
417
  comment: %(An object property that identifies a referenced table and a set of referenced columns within that table.).freeze,
418
+ isDefinedBy: "csvw:".freeze,
80
419
  label: "Table Reference".freeze,
81
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
82
420
  type: "rdfs:Class".freeze
83
421
  term :Transformation,
84
422
  comment: %(A Transformation Definition is a definition of how tabular data can be transformed into another format.).freeze,
423
+ isDefinedBy: "csvw:".freeze,
85
424
  label: "Transformation Definition".freeze,
86
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
87
425
  type: "rdfs:Class".freeze
88
426
 
89
427
  # Property definitions
90
428
  property :aboutUrl,
91
429
  comment: %(A URI template property that MAY be used to indicate what a cell contains information about.).freeze,
430
+ domain: term(
431
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
432
+ ),
433
+ isDefinedBy: "csvw:".freeze,
92
434
  label: "about URL".freeze,
93
435
  range: "csvw:uriTemplate".freeze,
94
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
95
436
  type: "rdf:Property".freeze
96
437
  property :base,
97
438
  comment: %(An atomic property that contains a single string: a term defined in the default context representing a built-in datatype URL, as listed above.).freeze,
98
439
  domain: "csvw:Datatype".freeze,
440
+ isDefinedBy: "csvw:".freeze,
99
441
  label: "base".freeze,
100
442
  range: "xsd:string".freeze,
101
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
102
443
  type: "rdf:Property".freeze
103
444
  property :column,
104
445
  comment: %(An array property of column descriptions as described in section 5.6 Columns.).freeze,
105
446
  domain: "csvw:Schema".freeze,
447
+ isDefinedBy: "csvw:".freeze,
106
448
  label: "column".freeze,
107
449
  range: "csvw:Column".freeze,
108
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
109
450
  type: "rdf:Property".freeze
110
451
  property :columnReference,
111
452
  comment: %(A column reference property that holds either a single reference to a column description object within this schema, or an array of references. These form the referencing columns for the foreign key definition.).freeze,
453
+ domain: term(
454
+ unionOf: list("csvw:ForeignKey".freeze, "csvw:TableReference".freeze)
455
+ ),
456
+ isDefinedBy: "csvw:".freeze,
112
457
  label: "column reference".freeze,
113
458
  range: "xsd:string".freeze,
114
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
115
459
  type: "rdf:Property".freeze
116
460
  property :commentPrefix,
117
461
  comment: %(An atomic property that sets the comment prefix flag to the single provided value, which MUST be a string.).freeze,
118
462
  domain: "csvw:Dialect".freeze,
463
+ isDefinedBy: "csvw:".freeze,
119
464
  label: "comment prefix".freeze,
120
465
  range: "xsd:string".freeze,
121
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
122
466
  type: "rdf:Property".freeze
123
467
  property :datatype,
124
468
  comment: %(An object property that contains either a single string that is the main datatype of the values of the cell or a datatype description object. If the value of this property is a string, it MUST be one of the built-in datatypes defined in section 5.11.1 Built-in Datatypes or an absolute URL; if it is an object then it describes a more specialised datatype.).freeze,
469
+ domain: term(
470
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
471
+ ),
472
+ isDefinedBy: "csvw:".freeze,
125
473
  label: "datatype".freeze,
126
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
474
+ range: term(
475
+ unionOf: list("csvw:Datatype".freeze, "xsd:string".freeze)
476
+ ),
127
477
  type: "rdf:Property".freeze
128
478
  property :decimalChar,
129
479
  comment: %(A string whose value is used to represent a decimal point within the number.).freeze,
130
480
  domain: "csvw:NumericFormat".freeze,
481
+ isDefinedBy: "csvw:".freeze,
131
482
  label: "decimal character".freeze,
132
483
  range: "xsd:string".freeze,
133
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
134
484
  type: "rdf:Property".freeze
135
485
  property :default,
136
486
  comment: %(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.).freeze,
487
+ domain: term(
488
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
489
+ ),
490
+ isDefinedBy: "csvw:".freeze,
137
491
  label: "default".freeze,
138
492
  range: "xsd:string".freeze,
139
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
140
493
  type: "rdf:Property".freeze
141
494
  property :delimiter,
142
495
  comment: %(An atomic property that sets the delimiter flag to the single provided value, which MUST be a string.).freeze,
143
496
  domain: "csvw:Dialect".freeze,
497
+ isDefinedBy: "csvw:".freeze,
144
498
  label: "delimiter".freeze,
145
499
  range: "xsd:string".freeze,
146
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
147
500
  type: "rdf:Property".freeze
148
501
  property :describes,
149
502
  comment: %(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.).freeze,
150
503
  domain: "csvw:Row".freeze,
504
+ isDefinedBy: "csvw:".freeze,
151
505
  label: "describes".freeze,
152
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
153
506
  type: "rdf:Property".freeze
154
507
  property :dialect,
155
508
  comment: %(An object property that provides a single dialect description. If provided, dialect provides hints to processors about how to parse the referenced files to create tabular data models for the tables in the group.).freeze,
509
+ domain: term(
510
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze)
511
+ ),
512
+ isDefinedBy: "csvw:".freeze,
156
513
  label: "dialect".freeze,
157
514
  range: "csvw:Dialect".freeze,
158
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
159
515
  type: "rdf:Property".freeze
160
516
  property :doubleQuote,
161
517
  comment: %(A boolean atomic property that, if `true`, sets the escape character flag to `"`.).freeze,
162
518
  domain: "csvw:Dialect".freeze,
519
+ isDefinedBy: "csvw:".freeze,
163
520
  label: "double quote".freeze,
164
521
  range: "xsd:boolean".freeze,
165
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
166
522
  type: "rdf:Property".freeze
167
523
  property :encoding,
168
524
  comment: %(An atomic property that sets the encoding flag to the single provided string value, which MUST be a defined in [[encoding]]. The default is "utf-8".).freeze,
169
525
  domain: "csvw:Dialect".freeze,
526
+ isDefinedBy: "csvw:".freeze,
170
527
  label: "encoding".freeze,
171
528
  range: "xsd:string".freeze,
172
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
173
529
  type: "rdf:Property".freeze
174
530
  property :foreignKey,
175
531
  comment: %(For a Table: a list of foreign keys on the table.
176
532
 
177
533
  For a Schema: 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.).freeze,
534
+ domain: term(
535
+ unionOf: list("csvw:Table".freeze, "csvw:Schema".freeze)
536
+ ),
537
+ isDefinedBy: "csvw:".freeze,
178
538
  label: "foreign key".freeze,
179
539
  range: "csvw:ForeignKey".freeze,
180
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
181
540
  type: "rdf:Property".freeze
182
541
  property :format,
183
542
  comment: %(An atomic property that contains either a single string or an object that defines the format of a value of this type, used when parsing a string value as described in Parsing Cells in [[tabular-data-model]].).freeze,
184
543
  domain: "csvw:Datatype".freeze,
544
+ isDefinedBy: "csvw:".freeze,
185
545
  label: "format".freeze,
186
546
  range: "xsd:string".freeze,
187
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
188
547
  type: "rdf:Property".freeze
189
548
  property :groupChar,
190
549
  comment: %(A string whose value is used to group digits within the number.).freeze,
191
550
  domain: "csvw:NumericFormat".freeze,
551
+ isDefinedBy: "csvw:".freeze,
192
552
  label: "group character".freeze,
193
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
553
+ range: term(
554
+ unionOf: list("csvw:NumericFormat".freeze, "xsd:string".freeze)
555
+ ),
194
556
  type: "rdf:Property".freeze
195
557
  property :header,
196
558
  comment: %(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.).freeze,
197
559
  domain: "csvw:Dialect".freeze,
560
+ isDefinedBy: "csvw:".freeze,
198
561
  label: "header".freeze,
199
562
  range: "xsd:boolean".freeze,
200
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
201
563
  type: "rdf:Property".freeze
202
564
  property :headerRowCount,
203
565
  comment: %(An numeric atomic property that sets the header row count flag to the single provided value, which must be a non-negative integer.).freeze,
204
566
  domain: "csvw:Dialect".freeze,
567
+ isDefinedBy: "csvw:".freeze,
205
568
  label: "header row count".freeze,
206
569
  range: "xsd:nonNegativeInteger".freeze,
207
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
208
570
  type: "rdf:Property".freeze
209
571
  property :lang,
210
572
  comment: %(An atomic property giving a single string language code as defined by [[BCP47]].).freeze,
573
+ domain: term(
574
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
575
+ ),
576
+ isDefinedBy: "csvw:".freeze,
211
577
  label: "language".freeze,
212
578
  range: "xsd:string".freeze,
213
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
214
579
  type: "rdf:Property".freeze
215
580
  property :length,
216
581
  comment: %(The exact length of the value of the cell.).freeze,
217
582
  domain: "csvw:Datatype".freeze,
583
+ isDefinedBy: "csvw:".freeze,
218
584
  label: "length".freeze,
219
585
  range: "xsd:nonNegativeInteger".freeze,
220
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
221
586
  type: "rdf:Property".freeze
222
587
  property :lineTerminators,
223
588
  comment: %(An atomic property that sets the line terminators flag to either an array containing the single provided string value, or the provided array.).freeze,
224
589
  domain: "csvw:Dialect".freeze,
590
+ isDefinedBy: "csvw:".freeze,
225
591
  label: "line terminators".freeze,
226
592
  range: "xsd:string".freeze,
227
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
228
593
  type: "rdf:Property".freeze
229
594
  property :maxExclusive,
230
595
  comment: %(An atomic property that contains a single number that is the maximum valid value \(exclusive\).).freeze,
231
596
  domain: "csvw:Datatype".freeze,
597
+ isDefinedBy: "csvw:".freeze,
232
598
  label: "max exclusive".freeze,
233
599
  range: "xsd:integer".freeze,
234
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
235
600
  type: "rdf:Property".freeze
236
601
  property :maxInclusive,
237
602
  comment: %(An atomic property that contains a single number that is the maximum valid value \(inclusive\).).freeze,
238
603
  domain: "csvw:Datatype".freeze,
604
+ isDefinedBy: "csvw:".freeze,
239
605
  label: "max inclusive".freeze,
240
606
  range: "xsd:integer".freeze,
241
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
242
607
  type: "rdf:Property".freeze
243
608
  property :maxLength,
244
609
  comment: %(A numeric atomic property that contains a single integer that is the maximum length of the value.).freeze,
245
610
  domain: "csvw:Datatype".freeze,
611
+ isDefinedBy: "csvw:".freeze,
246
612
  label: "max length".freeze,
247
613
  range: "xsd:nonNegativeInteger".freeze,
248
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
249
614
  type: "rdf:Property".freeze
250
615
  property :minExclusive,
251
616
  comment: %(An atomic property that contains a single number that is the minimum valid value \(exclusive\).).freeze,
252
617
  domain: "csvw:Datatype".freeze,
618
+ isDefinedBy: "csvw:".freeze,
253
619
  label: "min exclusive".freeze,
254
620
  range: "xsd:integer".freeze,
255
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
256
621
  type: "rdf:Property".freeze
257
622
  property :minInclusive,
258
623
  comment: %(An atomic property that contains a single number that is the minimum valid value \(inclusive\).).freeze,
259
624
  domain: "csvw:Datatype".freeze,
625
+ isDefinedBy: "csvw:".freeze,
260
626
  label: "min inclusive".freeze,
261
627
  range: "xsd:integer".freeze,
262
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
263
628
  type: "rdf:Property".freeze
264
629
  property :minLength,
265
630
  comment: %(An atomic property that contains a single integer that is the minimum length of the value.).freeze,
266
631
  domain: "csvw:Datatype".freeze,
632
+ isDefinedBy: "csvw:".freeze,
267
633
  label: "min length".freeze,
268
634
  range: "xsd:nonNegativeInteger".freeze,
269
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
270
635
  type: "rdf:Property".freeze
271
636
  property :name,
272
637
  comment: %(An atomic property that gives a single canonical name for the column. The value of this property becomes the name annotation for the described column.).freeze,
273
638
  domain: "csvw:Column".freeze,
639
+ isDefinedBy: "csvw:".freeze,
274
640
  label: "name".freeze,
275
641
  range: "xsd:string".freeze,
276
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
277
642
  type: "rdf:Property".freeze
278
643
  property :note,
279
644
  comment: %(An array property that provides an array of objects representing arbitrary annotations on the annotated tabular data model.).freeze,
645
+ domain: term(
646
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze)
647
+ ),
648
+ isDefinedBy: "csvw:".freeze,
280
649
  label: "note".freeze,
281
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
282
650
  type: "rdf:Property".freeze
283
651
  property :null,
284
652
  comment: %(An atomic property giving the string or strings used for null values within the data. If the string value of the cell is equal to any one of these values, the cell value is `null`.).freeze,
653
+ domain: term(
654
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
655
+ ),
656
+ isDefinedBy: "csvw:".freeze,
285
657
  label: "null".freeze,
286
658
  range: "xsd:string".freeze,
287
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
288
659
  type: "rdf:Property".freeze
289
660
  property :ordered,
290
661
  comment: %(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`\).).freeze,
662
+ domain: term(
663
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
664
+ ),
665
+ isDefinedBy: "csvw:".freeze,
291
666
  label: "ordered".freeze,
292
667
  range: "xsd:boolean".freeze,
293
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
294
668
  type: "rdf:Property".freeze
295
669
  property :pattern,
296
670
  comment: %(A regular expression string, in the syntax and interpreted as defined by [[ECMASCRIPT]].).freeze,
297
671
  domain: "csvw:NumericFormat".freeze,
672
+ isDefinedBy: "csvw:".freeze,
298
673
  label: "pattern".freeze,
299
674
  range: "xsd:string".freeze,
300
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
301
675
  type: "rdf:Property".freeze
302
676
  property :primaryKey,
303
677
  comment: %(For Schema: A column reference property that holds either a single reference to a column description object or an array of references.
304
678
 
305
679
  For Row: a possibly empty list of cells whose values together provide a unique identifier for this row. This is similar to the name of a column.).freeze,
680
+ domain: term(
681
+ unionOf: list("csvw:Schema".freeze, "csvw:Row".freeze)
682
+ ),
683
+ isDefinedBy: "csvw:".freeze,
306
684
  label: "primary key".freeze,
307
685
  range: "xsd:string".freeze,
308
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
309
686
  type: "rdf:Property".freeze
310
687
  property :propertyUrl,
311
688
  comment: %(An URI template property that MAY be used to create a URI for a property if the table is mapped to another format. ).freeze,
689
+ domain: term(
690
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
691
+ ),
692
+ isDefinedBy: "csvw:".freeze,
312
693
  label: "property URL".freeze,
313
694
  range: "csvw:uriTemplate".freeze,
314
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
315
695
  type: "rdf:Property".freeze
316
696
  property :quoteChar,
317
697
  comment: %(An atomic property that sets the quote character flag to the single provided value, which must be a string or `null`.).freeze,
318
698
  domain: "csvw:Dialect".freeze,
699
+ isDefinedBy: "csvw:".freeze,
319
700
  label: "quote char".freeze,
320
701
  range: "xsd:string".freeze,
321
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
322
702
  type: "rdf:Property".freeze
323
703
  property :reference,
324
704
  comment: %(An object property that identifies a **referenced table** and a set of **referenced columns** within that table.).freeze,
325
705
  domain: "csvw:ForeignKey".freeze,
706
+ isDefinedBy: "csvw:".freeze,
326
707
  label: "reference".freeze,
327
708
  range: "csvw:TableReference".freeze,
328
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
329
709
  type: "rdf:Property".freeze
330
710
  property :referencedRow,
331
711
  comment: %(A possibly empty list of pairs of a foreign key and a row in a table within the same group of tables.).freeze,
332
712
  domain: "csvw:Row".freeze,
713
+ isDefinedBy: "csvw:".freeze,
333
714
  label: "referenced rows".freeze,
334
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
335
715
  type: "rdf:Property".freeze
336
716
  property :required,
337
717
  comment: %(A boolean atomic property taking a single value which indicates whether the cell must have a non-null value. The default is `false`. ).freeze,
718
+ domain: term(
719
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
720
+ ),
721
+ isDefinedBy: "csvw:".freeze,
338
722
  label: "required".freeze,
339
723
  range: "xsd:boolean".freeze,
340
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
341
724
  type: "rdf:Property".freeze
342
725
  property :resource,
343
726
  comment: %(A link property holding a URL that is the identifier for a specific table that is being referenced.).freeze,
344
727
  domain: "csvw:TableReference".freeze,
728
+ isDefinedBy: "csvw:".freeze,
345
729
  label: "resource".freeze,
346
730
  range: "xsd:anyURI".freeze,
347
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
348
731
  type: "rdf:Property".freeze
349
732
  property :row,
350
733
  comment: %(Relates a Table to each Row output.).freeze,
351
734
  domain: "csvw:Table".freeze,
735
+ isDefinedBy: "csvw:".freeze,
352
736
  label: "row".freeze,
353
737
  range: "csvw:Row".freeze,
354
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
355
738
  subPropertyOf: "rdfs:member".freeze,
356
739
  type: "rdf:Property".freeze
357
740
  property :rowTitle,
358
741
  comment: %(A column reference property that holds either a single reference to a column description object or an array of references.).freeze,
359
742
  domain: "csvw:Schema".freeze,
743
+ isDefinedBy: "csvw:".freeze,
360
744
  label: "row titles".freeze,
361
745
  range: "xsd:string".freeze,
362
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
363
746
  type: "rdf:Property".freeze
364
747
  property :rownum,
365
748
  comment: %(The position of the row amongst the rows of the Annotated Tabl, starting from 1).freeze,
749
+ isDefinedBy: "csvw:".freeze,
366
750
  label: "row number".freeze,
367
751
  range: "xsd:integer".freeze,
368
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
369
752
  type: "rdf:Property".freeze
370
753
  property :schemaReference,
371
754
  comment: %(A link property holding a URL that is the identifier for a schema that is being referenced.).freeze,
372
755
  domain: "csvw:TableReference".freeze,
756
+ isDefinedBy: "csvw:".freeze,
373
757
  label: "schema reference".freeze,
374
758
  range: "xsd:anyURI".freeze,
375
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
376
759
  type: "rdf:Property".freeze
377
760
  property :scriptFormat,
378
761
  comment: %(A link property giving the single URL for the format that is used by the script or template.).freeze,
379
762
  domain: "csvw:Transformation".freeze,
763
+ isDefinedBy: "csvw:".freeze,
380
764
  label: "script format".freeze,
381
765
  range: "xsd:anyURI".freeze,
382
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
383
766
  type: "rdf:Property".freeze
384
767
  property :separator,
385
768
  comment: %(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.).freeze,
769
+ domain: term(
770
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
771
+ ),
772
+ isDefinedBy: "csvw:".freeze,
386
773
  label: "separator".freeze,
387
774
  range: "xsd:string".freeze,
388
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
389
775
  type: "rdf:Property".freeze
390
776
  property :skipBlankRows,
391
777
  comment: %(An boolean atomic property that sets the `skip blank rows` flag to the single provided boolean value.).freeze,
392
778
  domain: "csvw:Dialect".freeze,
779
+ isDefinedBy: "csvw:".freeze,
393
780
  label: "skip blank rows".freeze,
394
781
  range: "xsd:boolean".freeze,
395
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
396
782
  type: "rdf:Property".freeze
397
783
  property :skipColumns,
398
784
  comment: %(An numeric atomic property that sets the `skip columns` flag to the single provided numeric value, which MUST be a non-negative integer.).freeze,
399
785
  domain: "csvw:Dialect".freeze,
786
+ isDefinedBy: "csvw:".freeze,
400
787
  label: "skip columns".freeze,
401
788
  range: "xsd:nonNegativeInteger".freeze,
402
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
403
789
  type: "rdf:Property".freeze
404
790
  property :skipInitialSpace,
405
791
  comment: %(A boolean atomic property that, if `true`, sets the trim flag to "start". If `false`, to `false`.).freeze,
406
792
  domain: "csvw:Dialect".freeze,
793
+ isDefinedBy: "csvw:".freeze,
407
794
  label: "skip initial space".freeze,
408
795
  range: "xsd:boolean".freeze,
409
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
410
796
  type: "rdf:Property".freeze
411
797
  property :skipRows,
412
798
  comment: %(An numeric atomic property that sets the `skip rows` flag to the single provided numeric value, which MUST be a non-negative integer.).freeze,
413
799
  domain: "csvw:Dialect".freeze,
800
+ isDefinedBy: "csvw:".freeze,
414
801
  label: "skip rows".freeze,
415
802
  range: "xsd:nonNegativeInteger".freeze,
416
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
417
803
  type: "rdf:Property".freeze
418
804
  property :source,
419
805
  comment: %(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.).freeze,
420
806
  domain: "csvw:Transformation".freeze,
807
+ isDefinedBy: "csvw:".freeze,
421
808
  label: "source".freeze,
422
809
  range: "xsd:string".freeze,
423
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
424
810
  type: "rdf:Property".freeze
425
811
  property :suppressOutput,
426
812
  comment: %(A boolean atomic property. If `true`, suppresses any output that would be generated when converting a table or cells within a column.).freeze,
813
+ domain: term(
814
+ unionOf: list("csvw:Table".freeze, "csvw:Column".freeze)
815
+ ),
816
+ isDefinedBy: "csvw:".freeze,
427
817
  label: "suppress output".freeze,
428
818
  range: "xsd:boolean".freeze,
429
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
430
819
  type: "rdf:Property".freeze
431
820
  property :table,
432
821
  comment: %(Relates an Table group to annotated tables.).freeze,
433
822
  domain: "csvw:TableGroup".freeze,
823
+ isDefinedBy: "csvw:".freeze,
434
824
  label: "table".freeze,
435
825
  range: "csvw:Table".freeze,
436
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
437
826
  subPropertyOf: "rdfs:member".freeze,
438
827
  type: "rdf:Property".freeze
439
828
  property :tableDirection,
440
829
  comment: %(One of `rtl`, `ltr` or `auto`. 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.).freeze,
830
+ domain: term(
831
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze)
832
+ ),
833
+ isDefinedBy: "csvw:".freeze,
441
834
  label: "table direction".freeze,
442
835
  range: "csvw:Direction".freeze,
443
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
444
836
  type: "rdf:Property".freeze
445
837
  property :tableSchema,
446
838
  comment: %(An object property that provides a single schema description as described in section 5.5 Schemas, used as the default for all the tables in the group).freeze,
839
+ domain: term(
840
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze)
841
+ ),
842
+ isDefinedBy: "csvw:".freeze,
447
843
  label: "table schema".freeze,
448
844
  range: "csvw:Schema".freeze,
449
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
450
845
  type: "rdf:Property".freeze
451
846
  property :targetFormat,
452
847
  comment: %(A link property giving the single URL for the format that will be created through the transformation.).freeze,
453
848
  domain: "csvw:Transformation".freeze,
849
+ isDefinedBy: "csvw:".freeze,
454
850
  label: "target format".freeze,
455
851
  range: "xsd:anyURI".freeze,
456
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
457
852
  type: "rdf:Property".freeze
458
853
  property :textDirection,
459
854
  comment: %(An atomic property that must have a single value that is one of `rtl` or `ltr` \(the default\).).freeze,
855
+ domain: term(
856
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
857
+ ),
858
+ isDefinedBy: "csvw:".freeze,
460
859
  label: "text direction".freeze,
461
860
  range: "csvw:Direction".freeze,
462
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
463
861
  type: "rdf:Property".freeze
464
862
  property :title,
465
863
  comment: %(For a Transformation A natural language property that describes the format that will be generated from the transformation.
466
864
 
467
865
  For a Column: A natural language property that provides possible alternative names for the column.).freeze,
866
+ domain: term(
867
+ unionOf: list("csvw:Transformation".freeze, "csvw:Column".freeze, "csvw:Row".freeze)
868
+ ),
869
+ isDefinedBy: "csvw:".freeze,
468
870
  label: "title".freeze,
469
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
470
871
  type: "rdf:Property".freeze
471
872
  property :transformations,
472
873
  comment: %(An array property of transformation definitions that provide mechanisms to transform the tabular data into other formats.).freeze,
874
+ domain: term(
875
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
876
+ ),
877
+ isDefinedBy: "csvw:".freeze,
473
878
  label: "transformations".freeze,
474
879
  range: "csvw:Transformation".freeze,
475
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
476
880
  type: "rdf:Property".freeze
477
881
  property :trim,
478
882
  comment: %(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".).freeze,
479
883
  domain: "csvw:Dialect".freeze,
884
+ isDefinedBy: "csvw:".freeze,
480
885
  label: "trim".freeze,
481
886
  range: "xsd:boolean".freeze,
482
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
483
887
  type: "rdf:Property".freeze
484
888
  property :url,
485
889
  comment: %(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.
486
890
 
487
891
  For 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.).freeze,
892
+ domain: term(
893
+ unionOf: list("csvw:Table".freeze, "csvw:Transformation".freeze)
894
+ ),
895
+ isDefinedBy: "csvw:".freeze,
488
896
  label: "url".freeze,
489
897
  range: "xsd:anyURI".freeze,
490
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
491
898
  type: "rdf:Property".freeze
492
899
  property :valueUrl,
493
900
  comment: %(An URI template property that is used to map the values of cells into URLs.).freeze,
901
+ domain: term(
902
+ unionOf: list("csvw:TableGroup".freeze, "csvw:Table".freeze, "csvw:Schema".freeze, "csvw:Column".freeze)
903
+ ),
904
+ isDefinedBy: "csvw:".freeze,
494
905
  label: "valueUrl".freeze,
495
906
  range: "csvw:uriTemplate".freeze,
496
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
497
907
  type: "rdf:Property".freeze
498
908
  property :virtual,
499
909
  comment: %(A boolean atomic property taking a single value which indicates whether the column is a virtual column not present in the original source).freeze,
500
910
  domain: "csvw:Column".freeze,
911
+ isDefinedBy: "csvw:".freeze,
501
912
  label: "virtual".freeze,
502
913
  range: "xsd:boolean".freeze,
503
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
504
914
  type: "rdf:Property".freeze
505
915
 
506
916
  # Datatype definitions
507
917
  term :JSON,
508
918
  comment: %(A literal containing JSON.).freeze,
919
+ isDefinedBy: "csvw:".freeze,
509
920
  label: "JSON".freeze,
510
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
511
921
  subClassOf: "xsd:string".freeze,
512
922
  type: "rdfs:Datatype".freeze
513
923
  term :uriTemplate,
514
924
  comment: %().freeze,
925
+ isDefinedBy: "csvw:".freeze,
515
926
  label: "uri template".freeze,
516
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
517
927
  subClassOf: "xsd:string".freeze,
518
928
  type: "rdfs:Datatype".freeze
519
929
 
520
930
  # Extra definitions
521
931
  term :auto,
522
932
  comment: %(Indicates whether the tables in the group should be displayed based on the first character in the table that has a specific direction.).freeze,
933
+ isDefinedBy: "csvw:".freeze,
523
934
  label: "auto".freeze,
524
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
525
935
  type: "csvw:Direction".freeze
526
936
  term :csvEncodedTabularData,
527
937
  comment: %(Describes the role of a CSV file in the tabular data mapping.).freeze,
938
+ isDefinedBy: "csvw:".freeze,
528
939
  label: "CSV Encoded Tabular Data".freeze,
529
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
530
940
  type: "prov:Role".freeze
531
941
  term :inherit,
532
942
  comment: %(For `textDirection`, indicates that the direction is inherited from the `tableDirection` annotation of the `table`.).freeze,
943
+ isDefinedBy: "csvw:".freeze,
533
944
  label: "inherit".freeze,
534
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
535
945
  type: "csvw:Direction".freeze
536
946
  term :ltr,
537
947
  comment: %(Indicates whether the tables in the group should be displayed with the first column on the right.).freeze,
948
+ isDefinedBy: "csvw:".freeze,
538
949
  label: "left to right".freeze,
539
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
540
950
  type: "csvw:Direction".freeze
541
951
  term :rtl,
542
952
  comment: %(Indicates whether the tables in the group should be displayed with the first column on the left.).freeze,
953
+ isDefinedBy: "csvw:".freeze,
543
954
  label: "right to left".freeze,
544
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
545
955
  type: "csvw:Direction".freeze
546
956
  term :tabularMetadata,
547
957
  comment: %(Describes the role of a Metadata file in the tabular data mapping.).freeze,
958
+ isDefinedBy: "csvw:".freeze,
548
959
  label: "Tabular Metadata".freeze,
549
- :"rdfs:isDefinedBy" => %(csvw:).freeze,
550
960
  type: "prov:Role".freeze
551
961
  end
552
962
  end