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.
- checksums.yaml +4 -4
- data/README.md +42 -43
- data/UNLICENSE +1 -1
- data/VERSION +1 -1
- data/etc/doap.csv +1 -1
- data/etc/doap.csv-metadata.json +1 -1
- data/etc/doap.ttl +14 -13
- data/etc/earl.html +648 -648
- data/etc/earl.jsonld +691 -691
- data/etc/earl.ttl +846 -846
- data/lib/rdf/tabular.rb +3 -3
- data/lib/rdf/tabular/csvw.rb +500 -90
- data/lib/rdf/tabular/format.rb +2 -2
- data/lib/rdf/tabular/metadata.rb +9 -4
- data/lib/rdf/tabular/reader.rb +14 -5
- data/lib/rdf/tabular/uax35.rb +1 -1
- data/spec/metadata_spec.rb +83 -0
- data/spec/reader_spec.rb +2 -2
- metadata +4 -4
data/lib/rdf/tabular.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
$:.unshift(File.expand_path("..", __FILE__))
|
2
|
-
require 'rdf' # @see
|
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
|
9
|
+
# @see https://w3c.github.io/csvw/
|
10
10
|
#
|
11
|
-
# @author [Gregg Kellogg](
|
11
|
+
# @author [Gregg Kellogg](https://greggkellogg.net/)
|
12
12
|
module Tabular
|
13
13
|
require 'rdf/tabular/format'
|
14
14
|
autoload :Column, 'rdf/tabular/metadata'
|
data/lib/rdf/tabular/csvw.rb
CHANGED
@@ -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
|
-
|
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
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
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
|
-
:
|
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
|
-
:
|
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
|