rdf 1.1.4 → 1.1.4.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,8 +6,15 @@ module RDF
6
6
 
7
7
  # Class definitions
8
8
  term :Point,
9
- comment: %(A point, typically described using a coordinate system relative to Earth, such as WGS84.
10
- ).freeze,
9
+ comment: [%(A point, typically described using a coordinate system relative to Earth, such as WGS84.
10
+ ).freeze, %(
11
+ Uniquely identified by lat/long/alt. i.e.
12
+
13
+ spaciallyIntersects\(P1, P2\) :- lat\(P1, LAT\), long\(P1, LONG\), alt\(P1, ALT\),
14
+ lat\(P2, LAT\), long\(P2, LONG\), alt\(P2, ALT\).
15
+
16
+ sameThing\(P1, P2\) :- type\(P1, Point\), type\(P2, Point\), spaciallyIntersects\(P1, P2\).
17
+ ).freeze],
11
18
  label: "point".freeze,
12
19
  subClassOf: "geo:SpatialThing".freeze,
13
20
  type: "rdfs:Class".freeze
@@ -18,7 +18,7 @@ module RDF
18
18
 
19
19
  \(Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Brand\)).freeze,
20
20
  label: "Brand".freeze,
21
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
21
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
22
22
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
23
23
  type: "owl:Class".freeze
24
24
  term :BusinessEntity,
@@ -29,8 +29,7 @@ Example: Siemens Austria AG, Volkswagen Ltd., Peter Miller's Cell phone Shop LLC
29
29
  Compatibility with schema.org: This class is equivalent to the union of http://schema.org/Person and http://schema.org/Organization.
30
30
  ).freeze,
31
31
  label: "Business entity".freeze,
32
- "owl:disjointWith" => %(gr:Location).freeze,
33
- "owl:equivalentClass" => %(_:g2178357860).freeze,
32
+ "owl:disjointWith" => [%(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
34
33
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
35
34
  type: "owl:Class".freeze
36
35
  term :BusinessEntityType,
@@ -38,7 +37,7 @@ Compatibility with schema.org: This class is equivalent to the union of http://s
38
37
 
39
38
  Examples: Consumers, Retailers, Wholesalers, or Public Institutions).freeze,
40
39
  label: "Business entity type".freeze,
41
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
40
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
42
41
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
43
42
  type: "owl:Class".freeze
44
43
  term :BusinessFunction,
@@ -48,7 +47,7 @@ Licenses and other proprietary specifications of access rights are also instance
48
47
 
49
48
  Examples: A particular offering made by Miller Rentals Ltd. says that they \(1\) sell Volkswagen Golf convertibles, \(2\) lease out a particular Ford pick-up truck, and \(3\) dispose car wrecks of any make and model.).freeze,
50
49
  label: "Business function".freeze,
51
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
50
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:Offering).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
52
51
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
53
52
  type: "owl:Class".freeze
54
53
  term :DayOfWeek,
@@ -56,7 +55,7 @@ Examples: A particular offering made by Miller Rentals Ltd. says that they \(1\)
56
55
 
57
56
  Examples: Monday, Tuesday, Wednesday,...).freeze,
58
57
  label: "Day of week".freeze,
59
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
58
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:Offering).freeze, %(gr:TypeAndQuantityNode).freeze],
60
59
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
61
60
  type: "owl:Class".freeze
62
61
  term :DeliveryChargeSpecification,
@@ -71,7 +70,7 @@ If the price can only be given as a range, use gr:hasMaxCurrencyValue and gr:has
71
70
 
72
71
  Important: When querying for the price, always use gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue.).freeze,
73
72
  label: "Delivery charge specification".freeze,
74
- "owl:disjointWith" => %(gr:PaymentChargeSpecification).freeze,
73
+ "owl:disjointWith" => [%(gr:PaymentChargeSpecification).freeze, %(gr:UnitPriceSpecification).freeze],
75
74
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
76
75
  subClassOf: "gr:PriceSpecification".freeze,
77
76
  type: "owl:Class".freeze
@@ -80,7 +79,7 @@ Important: When querying for the price, always use gr:hasMaxCurrencyValue and gr
80
79
 
81
80
  Examples: Delivery by mail, delivery by direct download, delivery by UPS).freeze,
82
81
  label: "Delivery method".freeze,
83
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
82
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
84
83
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
85
84
  type: "owl:Class".freeze
86
85
  term :DeliveryModeParcelService,
@@ -101,10 +100,10 @@ Note 2: This class is the new, shorter form of the former gr:ActualProductOrServ
101
100
 
102
101
  Compatibility with schema.org: This class is a subclass of http://schema.org/Product.).freeze,
103
102
  label: "Individual".freeze,
104
- "owl:disjointWith" => %(gr:SomeItems).freeze,
103
+ "owl:disjointWith" => [%(gr:SomeItems).freeze, %(gr:ProductOrServiceModel).freeze],
105
104
  "owl:equivalentClass" => %(gr:ActualProductOrServiceInstance).freeze,
106
105
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
107
- subClassOf: "gr:ProductOrService".freeze,
106
+ subClassOf: ["gr:ProductOrService".freeze, "schema:Product".freeze],
108
107
  type: "owl:Class".freeze
109
108
  term :License,
110
109
  comment: %(A license is the specification of a bundle of rights that determines the type of activity or access offered by the gr:BusinessEntity on the gr:ProductOrService through the gr:Offering.
@@ -123,7 +122,7 @@ Note: Typical address standards \(vcard\) and location data \(geo, WGC84\) shoul
123
122
 
124
123
  Compatibility with schema.org: This class is equivalent to http://schema.org/Place.).freeze,
125
124
  label: "Location".freeze,
126
- "owl:disjointWith" => %(gr:OpeningHoursSpecification).freeze,
125
+ "owl:disjointWith" => [%(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
127
126
  "owl:equivalentClass" => %(gr:LocationOfSalesOrServiceProvisioning).freeze,
128
127
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
129
128
  type: "owl:Class".freeze
@@ -153,13 +152,13 @@ Example: Peter Miller offers to repair TV sets made by Siemens, Volkswagen Innsb
153
152
 
154
153
  Compatibility with schema.org: This class is a superclass to http://schema.org/Offer, since gr:Offering can also represent demand.).freeze,
155
154
  label: "Offering".freeze,
156
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
155
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:WarrantyScope).freeze, %(gr:Brand).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:QualitativeValue).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
157
156
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
158
157
  type: "owl:Class".freeze
159
158
  term :OpeningHoursSpecification,
160
159
  comment: %(This is a conceptual entity that holds together all information about the opening hours on a given day \(gr:DayOfWeek\).).freeze,
161
160
  label: "Opening hours specification".freeze,
162
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
161
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
163
162
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
164
163
  type: "owl:Class".freeze
165
164
  term :PaymentChargeSpecification,
@@ -174,7 +173,7 @@ If the price can only be given as a range, use gr:hasMaxCurrencyValue and gr:has
174
173
 
175
174
  Important: When querying for the price, always use gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue.).freeze,
176
175
  label: "Payment charge specification".freeze,
177
- "owl:disjointWith" => %(gr:UnitPriceSpecification).freeze,
176
+ "owl:disjointWith" => [%(gr:UnitPriceSpecification).freeze, %(gr:DeliveryChargeSpecification).freeze],
178
177
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
179
178
  subClassOf: "gr:PriceSpecification".freeze,
180
179
  type: "owl:Class".freeze
@@ -183,7 +182,7 @@ Important: When querying for the price, always use gr:hasMaxCurrencyValue and gr
183
182
 
184
183
  Examples: VISA, MasterCard, Diners, cash, or bank transfer in advance.).freeze,
185
184
  label: "Payment method".freeze,
186
- "owl:disjointWith" => %(gr:Location).freeze,
185
+ "owl:disjointWith" => [%(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:QuantitativeValue).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
187
186
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
188
187
  type: "owl:Class".freeze
189
188
  term :PaymentMethodCreditCard,
@@ -197,7 +196,7 @@ Examples: VISA, MasterCard, or American Express.).freeze,
197
196
  term :PriceSpecification,
198
197
  comment: %(The superclass of all price specifications.).freeze,
199
198
  label: "Price specification".freeze,
200
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
199
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
201
200
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
202
201
  type: "owl:Class".freeze
203
202
  term :ProductOrService,
@@ -212,7 +211,7 @@ Note: Your first choice for specializations of gr:ProductOrService should be htt
212
211
 
213
212
  Compatibility with schema.org: This class is \(approximately\) equivalent to http://schema.org/Product.).freeze,
214
213
  label: "Product or service".freeze,
215
- "owl:disjointWith" => %(gr:OpeningHoursSpecification).freeze,
214
+ "owl:disjointWith" => [%(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:QuantitativeValue).freeze, %(gr:WarrantyPromise).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
216
215
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
217
216
  type: "owl:Class".freeze
218
217
  term :ProductOrServiceModel,
@@ -224,9 +223,9 @@ Note: An actual product or service \(gr:Individual\) by default shares the featu
224
223
 
225
224
  Compatibility with schema.org: This class is \(approximately\) a subclass of http://schema.org/Product.).freeze,
226
225
  label: "Product or service model".freeze,
227
- "owl:disjointWith" => %(gr:SomeItems).freeze,
226
+ "owl:disjointWith" => [%(gr:SomeItems).freeze, %(gr:BusinessEntity).freeze, %(gr:Individual).freeze, %(gr:Brand).freeze],
228
227
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
229
- subClassOf: "gr:ProductOrService".freeze,
228
+ subClassOf: ["gr:ProductOrService".freeze, "schema:Product".freeze],
230
229
  type: "owl:Class".freeze
231
230
  term :ProductOrServicesSomeInstancesPlaceholder,
232
231
  comment: %(DEPRECATED - This class is superseded by gr:SomeItems. Replace all occurrences of gr:ProductOrServicesSomeInstancesPlaceholder by gr:SomeItems, if possible.).freeze,
@@ -245,7 +244,7 @@ Note: Value sets are supported by creating subclasses of this class. Ordinal rel
245
244
 
246
245
  Compatibility with schema.org: This class is equivalent to http://schema.org/Enumeration.).freeze,
247
246
  label: "Qualitative value".freeze,
248
- "owl:disjointWith" => %(gr:QuantitativeValue).freeze,
247
+ "owl:disjointWith" => [%(gr:QuantitativeValue).freeze, %(gr:TypeAndQuantityNode).freeze, %(gr:Offering).freeze],
249
248
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
250
249
  type: "owl:Class".freeze
251
250
  term :QuantitativeValue,
@@ -255,7 +254,7 @@ Example: a weight between 10 and 25 kilogramms, a length between 10 and 15 milim
255
254
 
256
255
  Compatibility with schema.org: This class is equivalent to http://schema.org/Quantity.).freeze,
257
256
  label: "Quantitative value".freeze,
258
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
257
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:BusinessEntityType).freeze, %(gr:WarrantyScope).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:QualitativeValue).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
259
258
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
260
259
  type: "owl:Class".freeze
261
260
  term :QuantitativeValueFloat,
@@ -291,17 +290,17 @@ Note: This class is the new, shorter form of the former gr:ProductOrServicesSome
291
290
 
292
291
  Compatibility with schema.org: This class is \(approximately\) a subclass of http://schema.org/Product.).freeze,
293
292
  label: "Some items".freeze,
294
- "owl:disjointWith" => %(gr:ProductOrServiceModel).freeze,
293
+ "owl:disjointWith" => [%(gr:ProductOrServiceModel).freeze, %(gr:Individual).freeze],
295
294
  "owl:equivalentClass" => %(gr:ProductOrServicesSomeInstancesPlaceholder).freeze,
296
295
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
297
- subClassOf: "gr:ProductOrService".freeze,
296
+ subClassOf: ["gr:ProductOrService".freeze, "schema:Product".freeze],
298
297
  type: "owl:Class".freeze
299
298
  term :TypeAndQuantityNode,
300
299
  comment: %(This class collates all the information about a gr:ProductOrService included in a bundle. If a gr:Offering contains just one item, you can directly link from the gr:Offering to the gr:ProductOrService using gr:includes. If the offering contains multiple items, use an instance of this class for each component to indicate the quantity, unit of measurement, and type of product, and link from the gr:Offering via gr:includesObject.
301
300
 
302
301
  Example: An offering may include of 100g of Butter and 1 kg of potatoes, or 1 cell phone and 2 headsets.).freeze,
303
302
  label: "Type and quantity node".freeze,
304
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
303
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:WarrantyScope).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:QualitativeValue).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze],
305
304
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
306
305
  type: "owl:Class".freeze
307
306
  term :UnitPriceSpecification,
@@ -332,7 +331,7 @@ Note 1: Due to the complexity of pricing scenarios in various industries, it may
332
331
  Note 2: For Google, attaching a gr:validThrough statement to a gr:UnitPriceSpecification is mandatory.
333
332
  ).freeze,
334
333
  label: "Unit price specification".freeze,
335
- "owl:disjointWith" => %(gr:PaymentChargeSpecification).freeze,
334
+ "owl:disjointWith" => [%(gr:PaymentChargeSpecification).freeze, %(gr:DeliveryChargeSpecification).freeze],
336
335
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
337
336
  subClassOf: "gr:PriceSpecification".freeze,
338
337
  type: "owl:Class".freeze
@@ -343,7 +342,7 @@ A Warranty promise is an entity representing the duration and scope of services
343
342
 
344
343
  Examples: 12 months parts and labor, 36 months parts).freeze,
345
344
  label: "Warranty promise".freeze,
346
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
345
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyScope).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
347
346
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
348
347
  type: "owl:Class".freeze
349
348
  term :WarrantyScope,
@@ -351,21 +350,19 @@ Examples: 12 months parts and labor, 36 months parts).freeze,
351
350
 
352
351
  Examples: Parts and Labor, Parts).freeze,
353
352
  label: "Warranty scope".freeze,
354
- "owl:disjointWith" => %(gr:ProductOrService).freeze,
353
+ "owl:disjointWith" => [%(gr:ProductOrService).freeze, %(gr:Location).freeze, %(gr:OpeningHoursSpecification).freeze, %(gr:PriceSpecification).freeze, %(gr:BusinessFunction).freeze, %(gr:QuantitativeValue).freeze, %(gr:BusinessEntityType).freeze, %(gr:Brand).freeze, %(gr:Offering).freeze, %(gr:PaymentMethod).freeze, %(gr:WarrantyPromise).freeze, %(gr:DeliveryMethod).freeze, %(gr:BusinessEntity).freeze, %(gr:DayOfWeek).freeze, %(gr:TypeAndQuantityNode).freeze],
355
354
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
356
355
  type: "owl:Class".freeze
357
356
 
358
357
  # Property definitions
359
358
  property :acceptedPaymentMethods,
360
359
  comment: %(The gr:PaymentMethod or methods accepted by the gr:BusinessEntity for the given gr:Offering.).freeze,
361
- domain: "_:g2172062380".freeze,
362
360
  label: "accepted payment methods (0..*)".freeze,
363
361
  range: "gr:PaymentMethod".freeze,
364
362
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
365
363
  type: "owl:ObjectProperty".freeze
366
364
  property :addOn,
367
365
  comment: %(This property points from a gr:Offering to additional offerings that can only be obtained in combination with the first offering. This can be used to model supplements and extensions that are available for a surcharge. Any gr:PriceSpecification attached to the secondary offering is to be understood as an additional charge.).freeze,
368
- domain: "_:g2176962200".freeze,
369
366
  label: "add-on (0..*)".freeze,
370
367
  range: "gr:Offering".freeze,
371
368
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -374,7 +371,6 @@ Examples: Parts and Labor, Parts).freeze,
374
371
  comment: %(The minimal and maximal amount of time that is required between accepting the gr:Offering and the actual usage of the resource or service. This is mostly relevant for offers regarding hotel rooms, the rental of objects, or the provisioning of services. The duration is specified relatively to the beginning of the usage of the contracted object. It is represented by attaching an instance of the class gr:QuantitativeValueInteger. The lower and upper boundaries are specified using the properties gr:hasMinValueInteger and gr:hasMaxValueInteger to that instance. The unit of measurement is specified using the property gr:hasUnitOfMeasurement with a string holding a UN/CEFACT code suitable for durations, e.g. MON \(months\), DAY \(days\), HUR \(hours\), or MIN \(minutes\).
375
372
 
376
373
  The difference to the gr:validFrom and gr:validThrough properties is that those specify the interval during which the gr:Offering is valid, while gr:advanceBookingRequirement specifies the acceptable relative amount of time between accepting the offer and the fulfilment or usage.).freeze,
377
- domain: "_:g2172526500".freeze,
378
374
  label: "advance booking requirement (0..1)".freeze,
379
375
  range: "gr:QuantitativeValueInteger".freeze,
380
376
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -419,7 +415,6 @@ or
419
415
  2008-05-30T09:30:10+09:00.
420
416
 
421
417
  Note: There is another property gr:availableAtOrFrom, which is used to indicate the gr:Location \(e.g. store or shop\) from which the goods would be available.).freeze,
422
- domain: "_:g2170140980".freeze,
423
418
  label: "availability ends (0..1)".freeze,
424
419
  range: "xsd:dateTime".freeze,
425
420
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -443,21 +438,18 @@ or
443
438
  2008-05-30T09:30:10+09:00.
444
439
 
445
440
  Note: There is another property gr:availableAtOrFrom, which is used to indicate the gr:Location \(e.g. store or shop\) from which the goods would be available.).freeze,
446
- domain: "_:g2177273360".freeze,
447
441
  label: "availability starts (0..1)".freeze,
448
442
  range: "xsd:dateTime".freeze,
449
443
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
450
444
  type: "owl:DatatypeProperty".freeze
451
445
  property :availableAtOrFrom,
452
446
  comment: %(This states that a particular gr:Offering is available at or from the given gr:Location \(e.g. shop or branch\).).freeze,
453
- domain: "_:g2176979660".freeze,
454
447
  label: "available at or from (0..*)".freeze,
455
448
  range: "gr:Location".freeze,
456
449
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
457
450
  type: "owl:ObjectProperty".freeze
458
451
  property :availableDeliveryMethods,
459
452
  comment: %(This specifies the gr:DeliveryMethod or methods available for a given gr:Offering.).freeze,
460
- domain: "_:g2172427120".freeze,
461
453
  label: "available delivery methods (0..*)".freeze,
462
454
  range: "gr:DeliveryMethod".freeze,
463
455
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -482,7 +474,6 @@ This property makes sense only for instances of gr:Offering that include not mor
482
474
  Note 1: For products, it is better to add an rdf:type statement referring to a GoodRelations-compliant ontology for vertical industries instead, but if you just have a short text label, gr:category is simpler.
483
475
  Note 2: You can use greater signs or slashes to informally indicate a category hierarchy, e.g. "restaurants/asian_restaurants" or "cables > usb_cables"
484
476
  ).freeze,
485
- domain: "_:g2170826280".freeze,
486
477
  label: "category (0..*)".freeze,
487
478
  range: "rdfs:Literal".freeze,
488
479
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -511,7 +502,6 @@ Note 3: If the shop re-opens on the same day of the week or set of days of the w
511
502
  type: "owl:DatatypeProperty".freeze
512
503
  property :color,
513
504
  comment: %(The color of the product.).freeze,
514
- domain: "_:g2178205740".freeze,
515
505
  label: "color (0..1)".freeze,
516
506
  range: "rdfs:Literal".freeze,
517
507
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -519,7 +509,6 @@ Note 3: If the shop re-opens on the same day of the week or set of days of the w
519
509
  type: "owl:DatatypeProperty".freeze
520
510
  property :condition,
521
511
  comment: %(A textual description of the condition of the product or service, or the products or services included in the offer \(when attached to a gr:Offering\)).freeze,
522
- domain: "_:g2156343640".freeze,
523
512
  label: "condition (0..1)".freeze,
524
513
  range: "rdfs:Literal".freeze,
525
514
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -528,7 +517,6 @@ Note 3: If the shop re-opens on the same day of the week or set of days of the w
528
517
  comment: %(This property is the super property for all pure datatype properties that can be used to describe a gr:ProductOrService.
529
518
 
530
519
  In products and services ontologies, only such properties that are no quantitative properties and that have no predefined gr:QualitativeValue instances are subproperties of this property. In practice, this refers to a few integer properties for which the integer value represents qualitative aspects, for string datatypes \(as long as no predefined values exist\), for boolean datatype properties, and for dates and times.).freeze,
531
- domain: "_:g2178031160".freeze,
532
520
  label: "datatype product or service property (0..*)".freeze,
533
521
  range: "rdfs:Literal".freeze,
534
522
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -537,7 +525,6 @@ In products and services ontologies, only such properties that are no quantitati
537
525
  comment: %(This property can be used to indicate the promised delay between the receipt of the order and the goods leaving the warehouse.
538
526
 
539
527
  The duration is specified by attaching an instance of gr:QuantitativeValueInteger. The lower and upper boundaries are specified using the properties gr:hasMinValueInteger and gr:hasMaxValueInteger to that instance. A point value can be modeled with the gr:hasValueInteger property. The unit of measurement is specified using the property gr:hasUnitOfMeasurement with a string holding a UN/CEFACT code suitable for durations, e.g. MON \(months\), DAY \(days\), HUR \(hours\), or MIN \(minutes\).).freeze,
540
- domain: "_:g2177276460".freeze,
541
528
  label: "delivery lead time (0..1)".freeze,
542
529
  range: "gr:QuantitativeValueInteger".freeze,
543
530
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -545,7 +532,6 @@ The duration is specified by attaching an instance of gr:QuantitativeValueIntege
545
532
  property :depth,
546
533
  comment: %(The depth of the product.
547
534
  Typical unit code\(s\): CMT for centimeters, INH for inches).freeze,
548
- domain: "_:g2171357240".freeze,
549
535
  label: "depth (0..1)".freeze,
550
536
  range: "gr:QuantitativeValue".freeze,
551
537
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -555,7 +541,6 @@ Typical unit code\(s\): CMT for centimeters, INH for inches).freeze,
555
541
  comment: %(A short textual description of the resource.
556
542
 
557
543
  This property is semantically equivalent to rdfs:comment and just meant as a handy shortcut for marking up data.).freeze,
558
- domain: "_:g2170338020".freeze,
559
544
  label: "description (0..1)".freeze,
560
545
  range: "rdfs:Literal".freeze,
561
546
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -577,7 +562,6 @@ Note: Rely on this property only for data originating from a single RDF graph; o
577
562
  type: "owl:DatatypeProperty".freeze
578
563
  property :eligibleCustomerTypes,
579
564
  comment: %(The types of customers \(gr:BusinessEntityType\) for which the given gr:Offering is valid.).freeze,
580
- domain: "_:g2169968240".freeze,
581
565
  label: "eligible customer types (0..*)".freeze,
582
566
  range: "gr:BusinessEntityType".freeze,
583
567
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -586,7 +570,6 @@ Note: Rely on this property only for data originating from a single RDF graph; o
586
570
  comment: %(The minimal and maximal duration for which the given gr:Offering or gr:License is valid. This is mostly used for offers regarding accommodation, the rental of objects, or software licenses. The duration is specified by attaching an instance of gr:QuantitativeValue. The lower and upper boundaries are specified using the properties gr:hasMinValue and gr:hasMaxValue to that instance. If they are the same, use the gr:hasValue property. The unit of measurement is specified using the property gr:hasUnitOfMeasurement with a string holding a UN/CEFACT code suitable for durations, e.g. MON \(months\), DAY \(days\), HUR \(hours\), or MIN \(minutes\).
587
571
 
588
572
  The difference to the gr:validFrom and gr:validThrough properties is that those specify the absiolute interval during which the gr:Offering or gr:License is valid, while gr:eligibleDuration specifies the acceptable duration of the contract or usage.).freeze,
589
- domain: "_:g2169222340".freeze,
590
573
  label: "eligible duration (0..1)".freeze,
591
574
  range: "gr:QuantitativeValue".freeze,
592
575
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -595,7 +578,6 @@ The difference to the gr:validFrom and gr:validThrough properties is that those
595
578
  comment: %(This property specifies the geo-political region or regions for which the gr:Offering, gr:License, or gr:DeliveryChargeSpecification is valid using the two-character version of ISO 3166-1 \(ISO 3166-1 alpha-2\) for regions or ISO 3166-2 , which breaks down the countries from ISO 3166-1 into administrative subdivisions.
596
579
 
597
580
  Important: Do NOT use 3-letter ISO 3166-1 codes!).freeze,
598
- domain: "_:g2171041180".freeze,
599
581
  label: "eligible regions (0..*)".freeze,
600
582
  range: "xsd:string".freeze,
601
583
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -604,7 +586,6 @@ Important: Do NOT use 3-letter ISO 3166-1 codes!).freeze,
604
586
  comment: %(This property can be used to indicate the transaction volume, in a monetary unit, for which the gr:Offering or gr:PriceSpecification is valid. This is mostly used to specify a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases above a certain amount.
605
587
 
606
588
  The object is a gr:PriceSpecification that uses the properties gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue to indicate the lower and upper boundaries and gr:hasCurrency to indicate the currency using the ISO 4217 standard \(3 characters\).).freeze,
607
- domain: "_:g2172409180".freeze,
608
589
  label: "eligible transaction volume (0..1)".freeze,
609
590
  range: "gr:PriceSpecification".freeze,
610
591
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -616,7 +597,7 @@ The object is a gr:PriceSpecification that uses the properties gr:hasMaxCurrency
616
597
  "owl:inverseOf" => %(gr:equal).freeze,
617
598
  range: "gr:QualitativeValue".freeze,
618
599
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
619
- type: "owl:ObjectProperty".freeze
600
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze, "owl:SymmetricProperty".freeze]
620
601
  property :greater,
621
602
  comment: %(This ordering relation for qualitative values indicates that the subject is greater than the object.).freeze,
622
603
  domain: "gr:QualitativeValue".freeze,
@@ -624,7 +605,7 @@ The object is a gr:PriceSpecification that uses the properties gr:hasMaxCurrency
624
605
  "owl:inverseOf" => %(gr:lesser).freeze,
625
606
  range: "gr:QualitativeValue".freeze,
626
607
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
627
- type: "owl:ObjectProperty".freeze
608
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze]
628
609
  property :greaterOrEqual,
629
610
  comment: %(This ordering relation for qualitative values indicates that the subject is greater than or equal to the object.).freeze,
630
611
  domain: "gr:QualitativeValue".freeze,
@@ -632,10 +613,9 @@ The object is a gr:PriceSpecification that uses the properties gr:hasMaxCurrency
632
613
  "owl:inverseOf" => %(gr:lesserOrEqual).freeze,
633
614
  range: "gr:QualitativeValue".freeze,
634
615
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
635
- type: "owl:ObjectProperty".freeze
616
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze]
636
617
  property :hasBrand,
637
618
  comment: %(This specifies the brand or brands \(gr:Brand\) associated with a gr:ProductOrService, or the brand or brands maintained by a gr:BusinessEntity.).freeze,
638
- domain: "_:g2171584740".freeze,
639
619
  label: "has brand (0..*)".freeze,
640
620
  range: "gr:Brand".freeze,
641
621
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -644,7 +624,6 @@ The object is a gr:PriceSpecification that uses the properties gr:hasMaxCurrency
644
624
  comment: %(This specifies the business function of the gr:Offering, i.e. whether the gr:BusinessEntity is offering to sell, to lease, or to repair the particular type of product. In the case of bundles, it is also possible to attach individual business functions to each gr:TypeAndQuantityNode. The business function of the main gr:Offering determines the business function for all included objects or services, unless a business function attached to a gr:TypeAndQuantityNode overrides it.
645
625
 
646
626
  Note: While it is possible that an entity is offering multiple types of business functions for the same set of objects \(e.g. rental and sales\), this should usually not be stated by attaching multiple business functions to the same gr:Offering, since the gr:UnitPriceSpecification for the varying business functions will typically be very different.).freeze,
647
- domain: "_:g2171902180".freeze,
648
627
  label: "has business function (1..*)".freeze,
649
628
  range: "gr:BusinessFunction".freeze,
650
629
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -668,11 +647,10 @@ Using gr:hasCurrencyValue sets the upper and lower bounds to the same given valu
668
647
  label: "has currency value (0..1)".freeze,
669
648
  range: "xsd:float".freeze,
670
649
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
671
- subPropertyOf: "gr:hasMinCurrencyValue".freeze,
650
+ subPropertyOf: ["gr:hasMinCurrencyValue".freeze, "gr:hasMaxCurrencyValue".freeze],
672
651
  type: "owl:DatatypeProperty".freeze
673
652
  property :hasDUNS,
674
653
  comment: %(The Dun & Bradstreet DUNS number for identifying a gr:BusinessEntity. The Dun & Bradstreet DUNS is a nine-digit number used to identify legal entities \(but usually not branches or locations of logistical importance only\).).freeze,
675
- domain: "_:g2177647120".freeze,
676
654
  label: "has DUNS (0..1)".freeze,
677
655
  range: "xsd:string".freeze,
678
656
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -682,7 +660,6 @@ Using gr:hasCurrencyValue sets the upper and lower bounds to the same given valu
682
660
 
683
661
  Note 1: When using this property for searching by 12-digit UPC codes, you must add a preceeding zero digit.
684
662
  Note 2: As of January 1, 2007, the former ISBN numbers for books etc. have been integrated into the EAN·UCC-13 code. For each old ISBN-10 code, there exists a proper translation into EAN·UCC-13 by adding "978" or "979" as prefix. Since the old ISBN-10 is now deprecated, GoodRelations does not provide a property for ISBNs.).freeze,
685
- domain: "_:g2171255300".freeze,
686
663
  label: "has EAN/UCC-13 (0..*)".freeze,
687
664
  range: "xsd:string".freeze,
688
665
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -691,14 +668,12 @@ Note 2: As of January 1, 2007, the former ISBN numbers for books etc. have been
691
668
  property :hasEligibleQuantity,
692
669
  comment: %(This specifies the interval and unit of measurement of ordering quantities for which the gr:Offering or gr:PriceSpecification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity.
693
670
  Note that if an offering is a bundle, i.e. it consists of more than one unit of a single type of good, or if the unit of measurement for the good is different from unit \(Common Code C62\), then gr:hasEligibleQuantity refers to units of this bundle. In other words, "C62" for "Units or pieces" is usually the appropriate unit of measurement.).freeze,
694
- domain: "_:g2170003320".freeze,
695
671
  label: "has eligible quantity (0..1)".freeze,
696
672
  range: "gr:QuantitativeValue".freeze,
697
673
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
698
674
  type: "owl:ObjectProperty".freeze
699
675
  property :"hasGTIN-14",
700
676
  comment: %(The Global Trade Item Number \(GTIN-14\) of the given gr:ProductOrService or gr:Offering.).freeze,
701
- domain: "_:g2177932320".freeze,
702
677
  label: "has GTIN-14 (0..*)".freeze,
703
678
  range: "xsd:string".freeze,
704
679
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -706,7 +681,6 @@ Note that if an offering is a bundle, i.e. it consists of more than one unit of
706
681
  type: "owl:DatatypeProperty".freeze
707
682
  property :"hasGTIN-8",
708
683
  comment: %(The 8-digit Global Trade Item Number \(GTIN-8\) of the given gr:ProductOrService or gr:Offering, also known as EAN/UCC-8 \(8-digit EAN\).).freeze,
709
- domain: "_:g2171799280".freeze,
710
684
  label: "has GTIN-8 (0..*)".freeze,
711
685
  range: "xsd:string".freeze,
712
686
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -715,7 +689,6 @@ Note that if an offering is a bundle, i.e. it consists of more than one unit of
715
689
  property :hasGlobalLocationNumber,
716
690
  comment: %(The Global Location Number \(GLN, sometimes also referred to as International Location Number or ILN\) of the respective gr:BusinessEntity or gr:Location.
717
691
  The Global Location Number is a thirteen-digit number used to identify parties and physical locations.).freeze,
718
- domain: "_:g2172051400".freeze,
719
692
  label: "has Global Location Number (0..1)".freeze,
720
693
  range: "xsd:string".freeze,
721
694
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -724,7 +697,6 @@ The Global Location Number is a thirteen-digit number used to identify parties a
724
697
  comment: %(The International Standard of Industrial Classification of All Economic Activities \(ISIC\), Revision 4 code for a particular gr:BusinessEntity or gr:Location. See http://unstats.un.org/unsd/cr/registry/isic-4.asp for more information.
725
698
 
726
699
  Note: While ISIC codes are sometimes misused for classifying products or services, they are designed and suited only for classifying business establishments.).freeze,
727
- domain: "_:g2171804800".freeze,
728
700
  label: "has ISIC v4 (0..*)".freeze,
729
701
  range: "xsd:int".freeze,
730
702
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -733,7 +705,6 @@ Note: While ISIC codes are sometimes misused for classifying products or service
733
705
  comment: %(This property specifies the current approximate inventory level for gr:SomeItems. The unit of measurement and the point value or interval are indicated using the attached gr:QuantitativeValueFloat instance.
734
706
 
735
707
  This property can also be attached to a gr:Offering in cases where the included products are not modeled in more detail.).freeze,
736
- domain: "_:g2169238840".freeze,
737
708
  label: "has inventory level (0..1)".freeze,
738
709
  range: "gr:QuantitativeValueFloat".freeze,
739
710
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -746,7 +717,6 @@ Important: Be careful when assuming two products or services instances or offeri
746
717
  Usually, the properties gr:hasEAN_UCC-13 and gr:hasGTIN-14 are much more reliable identifiers, because they are globally unique.
747
718
 
748
719
  See also http://en.wikipedia.org/wiki/Part_number).freeze,
749
- domain: "_:g2171239660".freeze,
750
720
  label: "has MPN (0..*)".freeze,
751
721
  range: "xsd:string".freeze,
752
722
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -756,14 +726,12 @@ See also http://en.wikipedia.org/wiki/Part_number).freeze,
756
726
  comment: %(This states that an actual product instance \(gr:Individual\) or a placeholder instance for multiple, unidentified such instances \(gr:SomeItems\) is one occurence of a particular gr:ProductOrServiceModel.
757
727
 
758
728
  Example: myFordT hasMakeAndModel FordT.).freeze,
759
- domain: "_:g2176928480".freeze,
760
729
  label: "has make and model (0..1)".freeze,
761
730
  range: "gr:ProductOrServiceModel".freeze,
762
731
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
763
732
  type: "owl:ObjectProperty".freeze
764
733
  property :hasManufacturer,
765
734
  comment: %(This object property links a gr:ProductOrService to the gr:BusinessEntity that produces it. Mostly used with gr:ProductOrServiceModel.).freeze,
766
- domain: "_:g2170729700".freeze,
767
735
  label: "has manufacturer (0..1)".freeze,
768
736
  range: "gr:BusinessEntity".freeze,
769
737
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -839,7 +807,6 @@ Using gr:hasCurrencyValue sets the upper and lower bounds to the same given valu
839
807
  See http://www.census.gov/eos/www/naics/ for more details.
840
808
 
841
809
  Note: While NAICS codes are sometimes misused for classifying products or services, they are designed and suited only for classifying business establishments.).freeze,
842
- domain: "_:g2171585140".freeze,
843
810
  label: "has NAICS (0..*)".freeze,
844
811
  range: "xsd:int".freeze,
845
812
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -867,14 +834,12 @@ Note: Use multiple instances of gr:OpeningHoursSpecification for specifying the
867
834
  type: "owl:ObjectProperty".freeze
868
835
  property :hasOpeningHoursSpecification,
869
836
  comment: %(This property links a gr:Location to a gr:OpeningHoursSpecification.).freeze,
870
- domain: "_:g2178177100".freeze,
871
837
  label: "has opening hours specification (0..*)".freeze,
872
838
  range: "gr:OpeningHoursSpecification".freeze,
873
839
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
874
840
  type: "owl:ObjectProperty".freeze
875
841
  property :hasPOS,
876
842
  comment: %(This property states that the respective gr:Location is a point of sale for the respective gr:BusinessEntity. It allows linking those two types of entities without the need for a particular gr:Offering.).freeze,
877
- domain: "_:g2170382320".freeze,
878
843
  label: "has POS (0..*)".freeze,
879
844
  range: "gr:Location".freeze,
880
845
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -895,7 +860,6 @@ Since days of the week are a cycle, this property is not transitive.).freeze,
895
860
  comment: %(This links a gr:Offering to a gr:PriceSpecification or specifications. There can be unit price specifications, payment charge specifications, and delivery charge specifications. For each type, multiple specifications for the same gr:Offering are possible, e.g. for different quantity ranges or for different currencies, or for different combinations of gr:DeliveryMethod and target destinations.
896
861
 
897
862
  Recommended retail prices etc. can be marked by the gr:priceType property of the gr:UnitPriceSpecification.).freeze,
898
- domain: "_:g2171590340".freeze,
899
863
  label: "has price specification (0..*)".freeze,
900
864
  range: "gr:PriceSpecification".freeze,
901
865
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -913,7 +877,6 @@ Important: Be careful when assuming two products or services instances or offeri
913
877
  Usually, the properties gr:hasEAN_UCC-13 and gr:hasGTIN-14 are much more reliable identifiers, because they are globally unique.
914
878
 
915
879
  See also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.).freeze,
916
- domain: "_:g2177144740".freeze,
917
880
  label: "has Stock Keeping Unit (0..*)".freeze,
918
881
  range: "xsd:string".freeze,
919
882
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -921,7 +884,6 @@ See also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.).freeze,
921
884
  type: "owl:DatatypeProperty".freeze
922
885
  property :hasUnitOfMeasurement,
923
886
  comment: %(The unit of measurement for a gr:QuantitativeValue, a gr:UnitPriceSpecification, or a gr:TypeAndQuantityNode given using the UN/CEFACT Common Code \(3 characters\).).freeze,
924
- domain: "_:g2177386160".freeze,
925
887
  label: "has unit of measurement (1..1)".freeze,
926
888
  range: "xsd:string".freeze,
927
889
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -932,7 +894,7 @@ See also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.).freeze,
932
894
  label: "has value (0..1)".freeze,
933
895
  range: "rdfs:Literal".freeze,
934
896
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
935
- subPropertyOf: "gr:hasMaxValue".freeze,
897
+ subPropertyOf: ["gr:hasMaxValue".freeze, "gr:hasMinValue".freeze],
936
898
  type: "owl:DatatypeProperty".freeze
937
899
  property :hasValueFloat,
938
900
  comment: %(This subproperty specifies that the upper and lower limit of the given gr:QuantitativeValueFloat are identical and have the respective float value. It is a shortcut for such cases where a quantitative property is \(at least practically\) a single point value and not an interval.).freeze,
@@ -940,7 +902,7 @@ See also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.).freeze,
940
902
  label: "has value float (0..1)".freeze,
941
903
  range: "xsd:float".freeze,
942
904
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
943
- subPropertyOf: "gr:hasMaxValueFloat".freeze,
905
+ subPropertyOf: ["gr:hasMaxValueFloat".freeze, "gr:hasMinValueFloat".freeze],
944
906
  type: "owl:DatatypeProperty".freeze
945
907
  property :hasValueInteger,
946
908
  comment: %(This subproperty specifies that the upper and lower limit of the given gr:QuantitativeValueInteger are identical and have the respective integer value. It is a shortcut for such cases where a quantitative property is \(at least practically\) a single point value and not an interval.).freeze,
@@ -948,11 +910,10 @@ See also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.).freeze,
948
910
  label: "has value integer (0..1)".freeze,
949
911
  range: "xsd:int".freeze,
950
912
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
951
- subPropertyOf: "gr:hasMinValueInteger".freeze,
913
+ subPropertyOf: ["gr:hasMinValueInteger".freeze, "gr:hasMaxValueInteger".freeze],
952
914
  type: "owl:DatatypeProperty".freeze
953
915
  property :hasWarrantyPromise,
954
916
  comment: %(This specifies the gr:WarrantyPromise made by the gr:BusinessEntity for the given gr:Offering.).freeze,
955
- domain: "_:g2178106840".freeze,
956
917
  label: "has warranty promise (0..*)".freeze,
957
918
  range: "gr:WarrantyPromise".freeze,
958
919
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -967,7 +928,6 @@ See also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.).freeze,
967
928
  property :height,
968
929
  comment: %(The height of the product.
969
930
  Typical unit code\(s\): CMT for centimeters, INH for inches).freeze,
970
- domain: "_:g2170715340".freeze,
971
931
  label: "height (0..1)".freeze,
972
932
  range: "gr:QuantitativeValue".freeze,
973
933
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -989,21 +949,18 @@ When linking to a gr:ProductOrServiceModel, it is equivalent to
989
949
  type: "owl:ObjectProperty".freeze
990
950
  property :includesObject,
991
951
  comment: %(This object property links a gr:Offering to one or multiple gr:TypeAndQuantityNode or nodes that specify the components that are included in the respective offer.).freeze,
992
- domain: "_:g2171440000".freeze,
993
952
  label: "includes object (0..*)".freeze,
994
953
  range: "gr:TypeAndQuantityNode".freeze,
995
954
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
996
955
  type: "owl:ObjectProperty".freeze
997
956
  property :isAccessoryOrSparePartFor,
998
957
  comment: %(This states that a particular gr:ProductOrService is an accessory or spare part for another product or service.).freeze,
999
- domain: "_:g2177883920".freeze,
1000
958
  label: "is accessory or spare part for (0..*)".freeze,
1001
959
  range: "gr:ProductOrService".freeze,
1002
960
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1003
961
  type: "owl:ObjectProperty".freeze
1004
962
  property :isConsumableFor,
1005
963
  comment: %(This states that a particular gr:ProductOrService is a consumable for another product or service.).freeze,
1006
- domain: "_:g2177519020".freeze,
1007
964
  label: "is consumable for (0..*)".freeze,
1008
965
  range: "gr:ProductOrService".freeze,
1009
966
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1019,7 +976,6 @@ DEPRECATED. Use the gr:priceType property instead.).freeze,
1019
976
  type: "owl:DatatypeProperty".freeze
1020
977
  property :isSimilarTo,
1021
978
  comment: %(This states that a given gr:ProductOrService is similar to another product or service. Of course, this is a subjective statement; when interpreting it, the trust in the origin of the statement should be taken into account.).freeze,
1022
- domain: "_:g2156356880".freeze,
1023
979
  label: "is similar to (0..*)".freeze,
1024
980
  range: "gr:ProductOrService".freeze,
1025
981
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1036,7 +992,6 @@ foo:Red_Ford_T_Model gr:isVariantOf foo:Ford_T_Model).freeze,
1036
992
  type: "owl:ObjectProperty".freeze
1037
993
  property :legalName,
1038
994
  comment: %(The legal name of the gr:BusinessEntity.).freeze,
1039
- domain: "_:g2171438660".freeze,
1040
995
  label: "legal name (0..1)".freeze,
1041
996
  range: "rdfs:Literal".freeze,
1042
997
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1048,7 +1003,7 @@ foo:Red_Ford_T_Model gr:isVariantOf foo:Ford_T_Model).freeze,
1048
1003
  "owl:inverseOf" => %(gr:greater).freeze,
1049
1004
  range: "gr:QualitativeValue".freeze,
1050
1005
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1051
- type: "owl:ObjectProperty".freeze
1006
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze]
1052
1007
  property :lesserOrEqual,
1053
1008
  comment: %(This ordering relation for gr:QualitativeValue pairs indicates that the subject is lesser than or equal to the object.).freeze,
1054
1009
  domain: "gr:QualitativeValue".freeze,
@@ -1056,12 +1011,11 @@ foo:Red_Ford_T_Model gr:isVariantOf foo:Ford_T_Model).freeze,
1056
1011
  "owl:inverseOf" => %(gr:greaterOrEqual).freeze,
1057
1012
  range: "gr:QualitativeValue".freeze,
1058
1013
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1059
- type: "owl:ObjectProperty".freeze
1014
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze]
1060
1015
  property :name,
1061
1016
  comment: %(A short text describing the respective resource.
1062
1017
 
1063
1018
  This property is semantically equivalent to dcterms:title and rdfs:label and just meant as a handy shortcut for marking up data.).freeze,
1064
- domain: "_:g2169645460".freeze,
1065
1019
  label: "name (0..1)".freeze,
1066
1020
  range: "rdfs:Literal".freeze,
1067
1021
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1073,10 +1027,9 @@ This property is semantically equivalent to dcterms:title and rdfs:label and jus
1073
1027
  "owl:inverseOf" => %(gr:nonEqual).freeze,
1074
1028
  range: "gr:QualitativeValue".freeze,
1075
1029
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1076
- type: "owl:ObjectProperty".freeze
1030
+ type: ["owl:ObjectProperty".freeze, "owl:SymmetricProperty".freeze]
1077
1031
  property :offers,
1078
1032
  comment: %(This links a gr:BusinessEntity to the offers \(gr:Offering\) it makes. If you want to express interest in receiving offers, use gr:seeks instead.).freeze,
1079
- domain: "_:g2177191740".freeze,
1080
1033
  label: "offers (0..*)".freeze,
1081
1034
  range: "gr:Offering".freeze,
1082
1035
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1111,7 +1064,6 @@ Note 3: If the shop re-opens on the same day of the week or set of days of the w
1111
1064
  Note that the product must be an instance of the class gr:Individual.
1112
1065
 
1113
1066
  This property can also be safely applied to foaf:Agent instances.).freeze,
1114
- domain: "_:g2177729800".freeze,
1115
1067
  label: "owns (0..*)".freeze,
1116
1068
  range: "gr:Individual".freeze,
1117
1069
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1127,7 +1079,7 @@ This relation is transitive.).freeze,
1127
1079
  "owl:inverseOf" => %(gr:successorOf).freeze,
1128
1080
  range: "gr:ProductOrServiceModel".freeze,
1129
1081
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1130
- type: "owl:ObjectProperty".freeze
1082
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze]
1131
1083
  property :priceType,
1132
1084
  comment: %(This attribute can be used to distinguish multiple different price specifications for the same gr:Offering. It supersedes the former gr:isListPrice property. The following values are recommended:
1133
1085
 
@@ -1143,14 +1095,12 @@ INVOICE: The invoice price, mostly used in the car industry - this is the price
1143
1095
  type: "owl:DatatypeProperty".freeze
1144
1096
  property :qualitativeProductOrServiceProperty,
1145
1097
  comment: %(This is the super property of all qualitative properties for products and services. All properties in product or service ontologies for which gr:QualitativeValue instances are specified are subproperties of this property.).freeze,
1146
- domain: "_:g2172588260".freeze,
1147
1098
  label: "qualitative product or service property (0..*)".freeze,
1148
1099
  range: "gr:QualitativeValue".freeze,
1149
1100
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1150
1101
  type: "owl:ObjectProperty".freeze
1151
1102
  property :quantitativeProductOrServiceProperty,
1152
1103
  comment: %(This is the super property of all quantitative properties for products and services. All properties in product or service ontologies that specify quantitative characteristics, for which an interval is at least theoretically an appropriate value, are subproperties of this property.).freeze,
1153
- domain: "_:g2171240280".freeze,
1154
1104
  label: "quantitative product or service property (0..*)".freeze,
1155
1105
  range: "gr:QuantitativeValue".freeze,
1156
1106
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1164,7 +1114,6 @@ In principle, any existing or upcoming vocabulary for Web Services can be used i
1164
1114
  type: "owl:AnnotationProperty".freeze
1165
1115
  property :seeks,
1166
1116
  comment: %(This links a gr:BusinessEntity to gr:Offering nodes that describe what the business entity is interested in \(i.e., the buy side\). If you want to express interest in offering something, use gr:offers instead. Note that this substitutes the former gr:BusinessFunction gr:Buy, which is now deprecated.).freeze,
1167
- domain: "_:g2172426320".freeze,
1168
1117
  label: "seeks (0..*)".freeze,
1169
1118
  range: "gr:Offering".freeze,
1170
1119
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1173,7 +1122,6 @@ In principle, any existing or upcoming vocabulary for Web Services can be used i
1173
1122
  comment: %(The serial number or any alphanumeric identifier of a particular product. Note that serial number are unique only for the same brand or the same model, so you cannot infer from two occurrences of the same serial number that the objects to which they are attached are identical.
1174
1123
 
1175
1124
  This property can also be attached to a gr:Offering in cases where the included products are not modeled in more detail.).freeze,
1176
- domain: "_:g2171936620".freeze,
1177
1125
  label: "serial number (0..*)".freeze,
1178
1126
  range: "xsd:string".freeze,
1179
1127
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1189,10 +1137,9 @@ This relation is transitive.).freeze,
1189
1137
  "owl:inverseOf" => %(gr:predecessorOf).freeze,
1190
1138
  range: "gr:ProductOrServiceModel".freeze,
1191
1139
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1192
- type: "owl:ObjectProperty".freeze
1140
+ type: ["owl:ObjectProperty".freeze, "owl:TransitiveProperty".freeze]
1193
1141
  property :taxID,
1194
1142
  comment: %(The Tax / Fiscal ID of the gr:BusinessEntity, e.g. the TIN in the US or the CIF/NIF in Spain. It is usually assigned by the country of residence).freeze,
1195
- domain: "_:g2172567560".freeze,
1196
1143
  label: "Tax ID (0..1)".freeze,
1197
1144
  range: "xsd:string".freeze,
1198
1145
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1201,7 +1148,6 @@ This relation is transitive.).freeze,
1201
1148
  comment: %(This specifies the gr:ProductOrService that the gr:TypeAndQuantityNode is referring to.).freeze,
1202
1149
  domain: "gr:TypeAndQuantityNode".freeze,
1203
1150
  label: "type of good (1..1)".freeze,
1204
- range: "_:g2177483360".freeze,
1205
1151
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1206
1152
  type: "owl:ObjectProperty".freeze
1207
1153
  property :validFrom,
@@ -1221,7 +1167,6 @@ or
1221
1167
  Note: If multiple contradicting instances of a gr:Offering, gr:PriceSpecification, or gr:OpeningHoursSpecification exist, it is a good heuristics to assume that
1222
1168
  1. Information with validity information for the respective period of time ranks higher than information without validity information.
1223
1169
  2. Among conflicting nodes both having validity information, the one with the shorter validity span ranks higher.).freeze,
1224
- domain: "_:g2170483600".freeze,
1225
1170
  label: "valid from (0..1)".freeze,
1226
1171
  range: "xsd:dateTime".freeze,
1227
1172
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1244,7 +1189,6 @@ Note 1: If multiple contradicting instances of a gr:Offering, gr:PriceSpecificat
1244
1189
  2. Among conflicting nodes both having validity information, the one with the shorter validity span ranks higher.
1245
1190
  Note 2: For Google, attaching a gr:validThrough statement to a gr:UnitPriceSpecification is mandatory.
1246
1191
  ).freeze,
1247
- domain: "_:g2178023560".freeze,
1248
1192
  label: "valid through (0..1)".freeze,
1249
1193
  range: "xsd:dateTime".freeze,
1250
1194
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1260,14 +1204,11 @@ Note: This is a simple representation which may not properly reflect all details
1260
1204
  type: "owl:DatatypeProperty".freeze
1261
1205
  property :valueReference,
1262
1206
  comment: %(The superclass of properties that link a gr:QuantitativeValue or a gr:QualitativeValue to a second gr:QuantitativeValue or a gr:QualitativeValue that provides additional information on the original value. A good modeling practice is to define specializations of this property \(e.g. foo:referenceTemperature\) for your particular domain.).freeze,
1263
- domain: "_:g2170726040".freeze,
1264
1207
  label: "value reference (0..*)".freeze,
1265
- range: "_:g2170826980".freeze,
1266
1208
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
1267
1209
  type: "owl:ObjectProperty".freeze
1268
1210
  property :vatID,
1269
1211
  comment: %(The Value-added Tax ID of the gr:BusinessEntity. See http://en.wikipedia.org/wiki/Value_added_tax_identification_number for details.).freeze,
1270
- domain: "_:g2171091600".freeze,
1271
1212
  label: "VAT ID (0..1)".freeze,
1272
1213
  range: "xsd:string".freeze,
1273
1214
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1275,7 +1216,6 @@ Note: This is a simple representation which may not properly reflect all details
1275
1216
  property :weight,
1276
1217
  comment: %(The weight of the gr:ProductOrService.
1277
1218
  Typical unit code\(s\): GRM for gram, KGM for kilogram, LBR for pound).freeze,
1278
- domain: "_:g2171619540".freeze,
1279
1219
  label: "weight (0..1)".freeze,
1280
1220
  range: "gr:QuantitativeValue".freeze,
1281
1221
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,
@@ -1284,7 +1224,6 @@ Typical unit code\(s\): GRM for gram, KGM for kilogram, LBR for pound).freeze,
1284
1224
  property :width,
1285
1225
  comment: %(The width of the gr:ProductOrService.
1286
1226
  Typical unit code\(s\): CMT for centimeters, INH for inches).freeze,
1287
- domain: "_:g2170432580".freeze,
1288
1227
  label: "width (0..1)".freeze,
1289
1228
  range: "gr:QuantitativeValue".freeze,
1290
1229
  "rdfs:isDefinedBy" => %(http://purl.org/goodrelations/v1).freeze,