rdf 1.1.0p4 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +6 -14
- data/README +33 -33
- data/VERSION +1 -1
- data/lib/rdf.rb +60 -12
- data/lib/rdf/cli.rb +7 -1
- data/lib/rdf/cli/vocab-loader.rb +240 -0
- data/lib/rdf/format.rb +2 -2
- data/lib/rdf/mixin/enumerable.rb +12 -4
- data/lib/rdf/mixin/queryable.rb +13 -13
- data/lib/rdf/model/graph.rb +5 -4
- data/lib/rdf/model/list.rb +15 -4
- data/lib/rdf/model/literal.rb +2 -1
- data/lib/rdf/model/statement.rb +10 -1
- data/lib/rdf/model/term.rb +8 -0
- data/lib/rdf/model/uri.rb +107 -2
- data/lib/rdf/model/value.rb +8 -0
- data/lib/rdf/ntriples/reader.rb +5 -4
- data/lib/rdf/query.rb +47 -12
- data/lib/rdf/query/solutions.rb +29 -29
- data/lib/rdf/reader.rb +13 -3
- data/lib/rdf/repository.rb +1 -0
- data/lib/rdf/util/file.rb +86 -6
- data/lib/rdf/vocab.rb +158 -58
- data/lib/rdf/vocab/cc.rb +28 -11
- data/lib/rdf/vocab/cert.rb +127 -9
- data/lib/rdf/vocab/dc.rb +242 -60
- data/lib/rdf/vocab/dc11.rb +42 -20
- data/lib/rdf/vocab/doap.rb +121 -42
- data/lib/rdf/vocab/exif.rb +540 -165
- data/lib/rdf/vocab/foaf.rb +353 -66
- data/lib/rdf/vocab/geo.rb +40 -10
- data/lib/rdf/vocab/gr.rb +1094 -0
- data/lib/rdf/vocab/http.rb +81 -23
- data/lib/rdf/vocab/ical.rb +361 -0
- data/lib/rdf/vocab/ma.rb +281 -69
- data/lib/rdf/vocab/og.rb +98 -0
- data/lib/rdf/vocab/owl.rb +226 -56
- data/lib/rdf/vocab/prov.rb +489 -0
- data/lib/rdf/vocab/rdfs.rb +38 -14
- data/lib/rdf/vocab/rsa.rb +25 -9
- data/lib/rdf/vocab/rss.rb +29 -11
- data/lib/rdf/vocab/schema.rb +3729 -647
- data/lib/rdf/vocab/sioc.rb +224 -89
- data/lib/rdf/vocab/skos.rb +141 -33
- data/lib/rdf/vocab/skosxl.rb +43 -0
- data/lib/rdf/vocab/v.rb +154 -0
- data/lib/rdf/vocab/vcard.rb +337 -0
- data/lib/rdf/vocab/void.rb +142 -0
- data/lib/rdf/vocab/wdrs.rb +129 -0
- data/lib/rdf/vocab/wot.rb +52 -18
- data/lib/rdf/vocab/xhtml.rb +3 -6
- data/lib/rdf/vocab/xhv.rb +239 -0
- data/lib/rdf/writer.rb +3 -3
- metadata +81 -14
data/lib/rdf/vocab/gr.rb
ADDED
@@ -0,0 +1,1094 @@
|
|
1
|
+
# This file generated automatically using vocab-fetch from http://www.heppnetz.de/ontologies/goodrelations/v1.owl
|
2
|
+
require 'rdf'
|
3
|
+
module RDF
|
4
|
+
class GR < StrictVocabulary("http://purl.org/goodrelations/v1#")
|
5
|
+
|
6
|
+
# Class definitions
|
7
|
+
property :ActualProductOrServiceInstance, :label => 'Actual product or service instance (DEPRECATED)', :comment =>
|
8
|
+
%(DEPRECATED - This class is superseded by gr:Individual.
|
9
|
+
Replace all occurrences of gr:ActualProductOrServiceInstance
|
10
|
+
by gr:Individual, if possible.)
|
11
|
+
property :Brand, :label => 'Brand', :comment =>
|
12
|
+
%(A brand is the identity of a specific product, service, or
|
13
|
+
business. Use foaf:logo for attaching a brand logo and gr:name
|
14
|
+
or rdfs:label for attaching the brand name. \(Source:
|
15
|
+
Wikipedia, the free encyclopedia, see
|
16
|
+
http://en.wikipedia.org/wiki/Brand\))
|
17
|
+
property :BusinessEntity, :label => 'Business entity', :comment =>
|
18
|
+
%(An instance of this class represents the legal agent making
|
19
|
+
\(or seeking\) a particular offering. This can be a legal body
|
20
|
+
or a person. A business entity has at least a primary mailing
|
21
|
+
address and contact details. For this, typical address
|
22
|
+
standards \(vCard\) and location data \(geo, WGS84\) can be
|
23
|
+
attached. Note that the location of the business entity is not
|
24
|
+
necessarily the location from which the product or service is
|
25
|
+
being available \(e.g. the branch or store\). Use gr:Location
|
26
|
+
for stores and branches. Example: Siemens Austria AG,
|
27
|
+
Volkswagen Ltd., Peter Miller's Cell phone Shop LLC
|
28
|
+
Compatibility with schema.org: This class is equivalent to the
|
29
|
+
union of http://schema.org/Person and
|
30
|
+
http://schema.org/Organization.)
|
31
|
+
property :BusinessEntityType, :label => 'Business entity type', :comment =>
|
32
|
+
%(A business entity type is a conceptual entity representing the
|
33
|
+
legal form, the size, the main line of business, the position
|
34
|
+
in the value chain, or any combination thereof, of a
|
35
|
+
gr:BusinessEntity. From the ontological point of view,
|
36
|
+
business entity types are mostly roles that a business entity
|
37
|
+
has in the market. Business entity types are important for
|
38
|
+
specifying eligible customers, since a gr:Offering is often
|
39
|
+
valid only for business entities of a certain size, legal
|
40
|
+
structure, or role in the value chain. Examples: Consumers,
|
41
|
+
Retailers, Wholesalers, or Public Institutions)
|
42
|
+
property :BusinessFunction, :label => 'Business function', :comment =>
|
43
|
+
%(The business function specifies the type of activity or access
|
44
|
+
\(i.e., the bundle of rights\) offered by the
|
45
|
+
gr:BusinessEntity on the gr:ProductOrService through the
|
46
|
+
gr:Offering. Typical are sell, rental or lease, maintenance or
|
47
|
+
repair, manufacture / produce, recycle / dispose, engineering
|
48
|
+
/ construction, or installation. Licenses and other
|
49
|
+
proprietary specifications of access rights are also instances
|
50
|
+
of this class. Examples: A particular offering made by Miller
|
51
|
+
Rentals Ltd. says that they \(1\) sell Volkswagen Golf
|
52
|
+
convertibles, \(2\) lease out a particular Ford pick-up truck,
|
53
|
+
and \(3\) dispose car wrecks of any make and model.)
|
54
|
+
property :DayOfWeek, :label => 'Day of week', :comment =>
|
55
|
+
%(The day of the week, used to specify to which day the opening
|
56
|
+
hours of a gr:OpeningHoursSpecification refer. Examples:
|
57
|
+
Monday, Tuesday, Wednesday,...)
|
58
|
+
property :DeliveryChargeSpecification, :label => 'Delivery charge specification', :comment =>
|
59
|
+
%(A delivery charge specification is a conceptual entity that
|
60
|
+
specifies the additional costs asked for the delivery of a
|
61
|
+
given gr:Offering using a particular gr:DeliveryMethod by the
|
62
|
+
respective gr:BusinessEntity. A delivery charge specification
|
63
|
+
is characterized by \(1\) a monetary amount per order,
|
64
|
+
specified as a literal value of type float in combination with
|
65
|
+
a currency, \(2\) the delivery method, \(3\) the target
|
66
|
+
country or region, and \(4\) whether this charge includes
|
67
|
+
local sales taxes, namely VAT. A gr:Offering may be linked to
|
68
|
+
multiple gr:DeliveryChargeSpecification nodes that specify
|
69
|
+
alternative charges for disjoint combinations of target
|
70
|
+
countries or regions, and delivery methods. Examples: Delivery
|
71
|
+
by direct download is free of charge worldwide, delivery by
|
72
|
+
UPS to Germany is 10 Euros per order, delivery by mail within
|
73
|
+
the US is 5 Euros per order. The total amount of this charge
|
74
|
+
is specified as a float value of the gr:hasCurrencyValue
|
75
|
+
property. The currency is specified via the gr:hasCurrency
|
76
|
+
datatype property. Whether the price includes VAT or not is
|
77
|
+
indicated by the gr:valueAddedTaxIncluded property. The
|
78
|
+
gr:DeliveryMethod to which this charge applies is specified
|
79
|
+
using the gr:appliesToDeliveryMethod object property. The
|
80
|
+
region or regions to which this charge applies is specified
|
81
|
+
using the gr:eligibleRegions property, which uses ISO 3166-1
|
82
|
+
and ISO 3166-2 codes. If the price can only be given as a
|
83
|
+
range, use gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue
|
84
|
+
for the upper and lower bounds. Important: When querying for
|
85
|
+
the price, always use gr:hasMaxCurrencyValue and
|
86
|
+
gr:hasMinCurrencyValue.)
|
87
|
+
property :DeliveryMethod, :label => 'Delivery method', :comment =>
|
88
|
+
%(A delivery method is a standardized procedure for transferring
|
89
|
+
the product or service to the destination of fulfilment chosen
|
90
|
+
by the customer. Delivery methods are characterized by the
|
91
|
+
means of transportation used, and by the organization or group
|
92
|
+
that is the contracting party for the sending
|
93
|
+
gr:BusinessEntity \(this is important, since the contracted
|
94
|
+
party may subcontract the fulfilment to smaller, regional
|
95
|
+
businesses\). Examples: Delivery by mail, delivery by direct
|
96
|
+
download, delivery by UPS)
|
97
|
+
property :DeliveryModeParcelService, :label => 'Delivery mode parcel service', :comment =>
|
98
|
+
%(A private parcel service as the delivery mode available for a
|
99
|
+
certain offering. Examples: UPS, DHL)
|
100
|
+
property :Individual, :label => 'Individual', :comment =>
|
101
|
+
%(A gr:Individual is an actual product or service instance,
|
102
|
+
i.e., a single identifiable object or action that creates some
|
103
|
+
increase in utility \(in the economic sense\) for the
|
104
|
+
individual possessing or using this very object \(product\) or
|
105
|
+
for the individual in whose favor this very action is being
|
106
|
+
taken \(service\). Products or services are types of goods in
|
107
|
+
the economic sense. For an overview of goods and commodities
|
108
|
+
in economics, see Milgate \(1987\). Examples: MyThinkpad T60,
|
109
|
+
the pint of beer standing in front of me, my Volkswagen Golf,
|
110
|
+
the haircut that I received or will be receiving at a given
|
111
|
+
date and time. Note 1: In many cases, product or service
|
112
|
+
instances are not explicitly exposed on the Web but only
|
113
|
+
claimed to exist \(i.e. existentially quantified\). In this
|
114
|
+
case, use gr:SomeItems. Note 2: This class is the new, shorter
|
115
|
+
form of the former gr:ActualProductOrServiceInstance.
|
116
|
+
Compatibility with schema.org: This class is a subclass of
|
117
|
+
http://schema.org/Product.)
|
118
|
+
property :License, :label => 'License', :comment =>
|
119
|
+
%(A license is the specification of a bundle of rights that
|
120
|
+
determines the type of activity or access offered by the
|
121
|
+
gr:BusinessEntity on the gr:ProductOrService through the
|
122
|
+
gr:Offering. Licenses can be standardized \(e.g. LPGL,
|
123
|
+
Creative Commons, ...\), vendor-specific, or individually
|
124
|
+
defined for a single offer or product. Whether there is a fee
|
125
|
+
for obtaining the license is specified using the
|
126
|
+
gr:UnitPriceSpecification attached to the gr:Offering. Use
|
127
|
+
foaf:page for linking to a document containing the license,
|
128
|
+
e.g. in PDF or HTML.)
|
129
|
+
property :Location, :label => 'Location', :comment =>
|
130
|
+
%(A location is a point or area of interest from which a
|
131
|
+
particular product or service is available, e.g. a store, a
|
132
|
+
bus stop, a gas station, or a ticket booth. The difference to
|
133
|
+
gr:BusinessEntity is that the gr:BusinessEntity is the legal
|
134
|
+
entity \(e.g. a person or corporation\) making the offer,
|
135
|
+
while gr:Location is the store, office, or place. A chain
|
136
|
+
restaurant will e.g. have one legal entity but multiple
|
137
|
+
restaurant locations. Locations are characterized by an
|
138
|
+
address or geographical position and a set of opening hour
|
139
|
+
specifications for various days of the week. Example: A rental
|
140
|
+
car company may offer the Business Function Lease Out of cars
|
141
|
+
from two locations, one in Fort Myers, Florida, and one in
|
142
|
+
Boston, Massachussetts. Both stations are open 7:00 - 23:00
|
143
|
+
Mondays through Saturdays. Note: Typical address standards
|
144
|
+
\(vcard\) and location data \(geo, WGC84\) should be attached
|
145
|
+
to a gr:Location node. Since there already exist established
|
146
|
+
vocabularies for this, the GoodRelations ontology does not
|
147
|
+
provide respective attributes. Instead, the use of respective
|
148
|
+
vocabularies is recommended. However, the
|
149
|
+
gr:hasGlobalLocationNumber property is provided for linking to
|
150
|
+
public identifiers for business locations. Compatibility with
|
151
|
+
schema.org: This class is equivalent to
|
152
|
+
http://schema.org/Place.)
|
153
|
+
property :LocationOfSalesOrServiceProvisioning, :label => 'Location of sales or service provisioning (DEPRECATED)', :comment =>
|
154
|
+
%(DEPRECATED - This class is superseded by gr:Location. Replace
|
155
|
+
all occurrences of gr:LocationOfSalesOrServiceProvisioning by
|
156
|
+
gr:Location, if possible.)
|
157
|
+
property :"N-Ary-Relations", :label => 'N-ary relations (DEPRECATED)', :comment =>
|
158
|
+
%(This is the superclass for all classes that are placeholders
|
159
|
+
for n-ary relations, which OWL cannot represent. DEPRECATED.
|
160
|
+
Do not use this class in data or queries.)
|
161
|
+
property :Offering, :label => 'Offering', :comment =>
|
162
|
+
%(An offering represents the public, not necessarily binding,
|
163
|
+
not necessarily exclusive, announcement by a gr:BusinessEntity
|
164
|
+
to provide \(or seek\) a certain gr:BusinessFunction for a
|
165
|
+
certain gr:ProductOrService to a specified target audience. An
|
166
|
+
offering is specified by the type of product or service or
|
167
|
+
bundle it refers to, what business function is being offered
|
168
|
+
\(sales, rental, ...\), and a set of commercial properties. It
|
169
|
+
can either refer to \(1\) a clearly specified instance
|
170
|
+
\(gr:Individual\), \(2\) to a set of anonymous instances of a
|
171
|
+
given type \(gr:SomeItems\), \(3\) a product model
|
172
|
+
specification \(gr:ProductOrServiceModel\), see also section
|
173
|
+
3.3.3 of the GoodRelations Technical Report. An offering may
|
174
|
+
be constrained in terms of the eligible type of business
|
175
|
+
partner, countries, quantities, and other commercial
|
176
|
+
properties. The definition of the commercial properties, the
|
177
|
+
type of product offered, and the business function are
|
178
|
+
explained in other parts of this vocabulary in more detail.
|
179
|
+
Example: Peter Miller offers to repair TV sets made by
|
180
|
+
Siemens, Volkswagen Innsbruck sells a particular instance of a
|
181
|
+
Volkswagen Golf at $10,000. Compatibility with schema.org:
|
182
|
+
This class is a superclass to http://schema.org/Offer, since
|
183
|
+
gr:Offering can also represent demand.)
|
184
|
+
property :OpeningHoursSpecification, :label => 'Opening hours specification', :comment =>
|
185
|
+
%(This is a conceptual entity that holds together all
|
186
|
+
information about the opening hours on a given day
|
187
|
+
\(gr:DayOfWeek\).)
|
188
|
+
property :PaymentChargeSpecification, :label => 'Payment charge specification', :comment =>
|
189
|
+
%(A payment charge specification is a conceptual entity that
|
190
|
+
specifies the additional costs asked for settling the payment
|
191
|
+
after accepting a given gr:Offering using a particular
|
192
|
+
gr:PaymentMethod. A payment charge specification is
|
193
|
+
characterized by \(1\) a monetary amount per order specified
|
194
|
+
as a literal value of type float in combination with a
|
195
|
+
Currency, \(2\) the payment method, and \(3\) a whether this
|
196
|
+
charge includes local sales taxes, namely VAT. A gr:Offering
|
197
|
+
may be linked to multiple payment charge specifications that
|
198
|
+
specify alternative charges for various payment methods.
|
199
|
+
Examples: Payment by VISA or Mastercard costs a fee of 3 Euros
|
200
|
+
including VAT, payment by bank transfer in advance is free of
|
201
|
+
charge. The total amount of this surcharge is specified as a
|
202
|
+
float value of the gr:hasCurrencyValue property. The currency
|
203
|
+
is specified via the gr:hasCurrency datatype property. Whether
|
204
|
+
the price includes VAT or not is indicated by the
|
205
|
+
gr:valueAddedTaxIncluded datatype property. The
|
206
|
+
gr:PaymentMethod to which this charge applies is specified
|
207
|
+
using the gr:appliesToPaymentMethod object property. If the
|
208
|
+
price can only be given as a range, use gr:hasMaxCurrencyValue
|
209
|
+
and gr:hasMinCurrencyValue for the upper and lower bounds.
|
210
|
+
Important: When querying for the price, always use
|
211
|
+
gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue.)
|
212
|
+
property :PaymentMethod, :label => 'Payment method', :comment =>
|
213
|
+
%(A payment method is a standardized procedure for transferring
|
214
|
+
the monetary amount for a purchase. Payment methods are
|
215
|
+
characterized by the legal and technical structures used, and
|
216
|
+
by the organization or group carrying out the transaction.
|
217
|
+
This element is mostly used for specifying the types of
|
218
|
+
payment accepted by a gr:BusinessEntity. Examples: VISA,
|
219
|
+
MasterCard, Diners, cash, or bank transfer in advance.)
|
220
|
+
property :PaymentMethodCreditCard, :label => 'Payment method credit card', :comment =>
|
221
|
+
%(The subclass of gr:PaymentMethod represents all variants and
|
222
|
+
brands of credit or debit cards as a standardized procedure
|
223
|
+
for transferring the monetary amount for a purchase. It is
|
224
|
+
mostly used for specifying the types of payment accepted by a
|
225
|
+
gr:Business Entity. Examples: VISA, MasterCard, or American
|
226
|
+
Express.)
|
227
|
+
property :PriceSpecification, :label => 'Price specification', :comment =>
|
228
|
+
%(The superclass of all price specifications.)
|
229
|
+
property :ProductOrService, :label => 'Product or service', :comment =>
|
230
|
+
%(The superclass of all classes describing products or services
|
231
|
+
types, either by nature or purpose. Examples for such
|
232
|
+
subclasses are "TV set", "vacuum cleaner", etc. An instance of
|
233
|
+
this class can be either an actual product or service
|
234
|
+
\(gr:Individual\), a placeholder instance for unknown
|
235
|
+
instances of a mass-produced commodity \(gr:SomeItems\), or a
|
236
|
+
model / prototype specification \(gr:ProductOrServiceModel\).
|
237
|
+
When in doubt, use gr:SomeItems. Examples: a\) MyCellphone123,
|
238
|
+
i.e. my personal, tangible cell phone \(gr:Individual\) b\)
|
239
|
+
Siemens1234, i.e. the Siemens cell phone make and model 1234
|
240
|
+
\(gr:ProductOrServiceModel\) c\) dummyCellPhone123 as a
|
241
|
+
placeholder for actual instances of a certain kind of cell
|
242
|
+
phones \(gr:SomeItems\) Note: Your first choice for
|
243
|
+
specializations of gr:ProductOrService should be
|
244
|
+
http://www.productontology.org. Compatibility with schema.org:
|
245
|
+
This class is \(approximately\) equivalent to
|
246
|
+
http://schema.org/Product.)
|
247
|
+
property :ProductOrServiceModel, :label => 'Product or service model', :comment =>
|
248
|
+
%(A product or service model is a intangible entity that
|
249
|
+
specifies some characteristics of a group of similar, usually
|
250
|
+
mass-produced products, in the sense of a prototype. In case
|
251
|
+
of mass-produced products, there exists a relation
|
252
|
+
gr:hasMakeAndModel between the actual product or service
|
253
|
+
\(gr:Individual or gr:SomeItems\) and the prototype
|
254
|
+
\(gr:ProductOrServiceModel\). GoodRelations treats product or
|
255
|
+
service models as "prototypes" instead of a completely
|
256
|
+
separate kind of entities, because this allows using the same
|
257
|
+
domain-specific properties \(e.g. gr:weight\) for describing
|
258
|
+
makes and models and for describing actual products. Examples:
|
259
|
+
Ford T, Volkswagen Golf, Sony Ericsson W123 cell phone Note:
|
260
|
+
An actual product or service \(gr:Individual\) by default
|
261
|
+
shares the features of its model \(e.g. the weight\). However,
|
262
|
+
this requires non-standard reasoning. See
|
263
|
+
http://wiki.goodrelations-vocabulary.org/Axioms for respective
|
264
|
+
rule sets. Compatibility with schema.org: This class is
|
265
|
+
\(approximately\) a subclass of http://schema.org/Product.)
|
266
|
+
property :ProductOrServicesSomeInstancesPlaceholder, :label => 'Product or services some instances placeholder (DEPRECATED)', :comment =>
|
267
|
+
%(DEPRECATED - This class is superseded by gr:SomeItems. Replace
|
268
|
+
all occurrences of
|
269
|
+
gr:ProductOrServicesSomeInstancesPlaceholder by gr:SomeItems,
|
270
|
+
if possible.)
|
271
|
+
property :QualitativeValue, :label => 'Qualitative value', :comment =>
|
272
|
+
%(A qualitative value is a predefined value for a product
|
273
|
+
characteristic. Examples: the color "green" or the power cord
|
274
|
+
plug type "US"; the garment sizes "S", "M", "L", and "XL".
|
275
|
+
Note: Value sets are supported by creating subclasses of this
|
276
|
+
class. Ordinal relations between values \(gr:greater,
|
277
|
+
gr:lesser, ...\) are provided directly by GoodRelations.
|
278
|
+
Compatibility with schema.org: This class is equivalent to
|
279
|
+
http://schema.org/Enumeration.)
|
280
|
+
property :QuantitativeValue, :label => 'Quantitative value', :comment =>
|
281
|
+
%(A quantitative value is a numerical interval that represents
|
282
|
+
the range of a certain gr:quantitativeProductOrServiceProperty
|
283
|
+
in terms of the lower and upper bounds for a particular
|
284
|
+
gr:ProductOrService. It is to be interpreted in combination
|
285
|
+
with the respective unit of measurement. Most quantitative
|
286
|
+
values are intervals even if they are in practice often
|
287
|
+
treated as a single point value. Example: a weight between 10
|
288
|
+
and 25 kilogramms, a length between 10 and 15 milimeters.
|
289
|
+
Compatibility with schema.org: This class is equivalent to
|
290
|
+
http://schema.org/Quantity.)
|
291
|
+
property :QuantitativeValueFloat, :label => 'Quantitative value float', :comment =>
|
292
|
+
%(An instance of this class is an actual float value for a
|
293
|
+
quantitative property of a product. This instance is usually
|
294
|
+
characterized by a minimal value, a maximal value, and a unit
|
295
|
+
of measurement. Examples: The intervals "between 10.0 and 25.4
|
296
|
+
kilogramms" or "10.2 and 15.5 milimeters". Compatibility with
|
297
|
+
schema.org: This class is a subclass of
|
298
|
+
http://schema.org/Quantity.)
|
299
|
+
property :QuantitativeValueInteger, :label => 'Quantitative value integer', :comment =>
|
300
|
+
%(An instance of this class is an actual integer value for a
|
301
|
+
quantitative property of a product. This instance is usually
|
302
|
+
characterized by a minimal value, a maximal value, and a unit
|
303
|
+
of measurement. Example: A seating capacity between 1 and 8
|
304
|
+
persons. Note: Users must keep in mind that ranges in here
|
305
|
+
mean that ALL possible values in this interval are covered.
|
306
|
+
\(Sometimes, the actual commitment may be less than that: "We
|
307
|
+
sell cars from 2 - 12 seats" does often not really mean that
|
308
|
+
they have cars with 2,3,4,...12 seats.\). Someone renting out
|
309
|
+
two types of rowing boats, one that fits for 1 or 2 people,
|
310
|
+
and another that must be operated by 4 people cannot claim to
|
311
|
+
rent boats with a seating capacity between 1 and 4 people. He
|
312
|
+
or she is offering two boat types for 1-2 and 4 persons.
|
313
|
+
Compatibility with schema.org: This class is a subclass of
|
314
|
+
http://schema.org/Quantity.)
|
315
|
+
property :SomeItems, :label => 'Some items', :comment =>
|
316
|
+
%(A placeholder instance for unknown instances of a
|
317
|
+
mass-produced commodity. This is used as a computationally
|
318
|
+
cheap work-around for such instances that are not individually
|
319
|
+
exposed on the Web but just stated to exist \(i.e., which are
|
320
|
+
existentially quantified\). Example: An instance of this class
|
321
|
+
can represent an anonymous set of green Siemens1234 phones. It
|
322
|
+
is different from the gr:ProductOrServiceModel Siemens1234,
|
323
|
+
since this refers to the make and model, and it is different
|
324
|
+
from a particular instance of this make and model \(e.g. my
|
325
|
+
individual phone\) since the latter can be sold only once.
|
326
|
+
Note: This class is the new, shorter form of the former
|
327
|
+
gr:ProductOrServicesSomeInstancesPlaceholder. Compatibility
|
328
|
+
with schema.org: This class is \(approximately\) a subclass of
|
329
|
+
http://schema.org/Product.)
|
330
|
+
property :TypeAndQuantityNode, :label => 'Type and quantity node', :comment =>
|
331
|
+
%(This class collates all the information about a
|
332
|
+
gr:ProductOrService included in a bundle. If a gr:Offering
|
333
|
+
contains just one item, you can directly link from the
|
334
|
+
gr:Offering to the gr:ProductOrService using gr:includes. If
|
335
|
+
the offering contains multiple items, use an instance of this
|
336
|
+
class for each component to indicate the quantity, unit of
|
337
|
+
measurement, and type of product, and link from the
|
338
|
+
gr:Offering via gr:includesObject. Example: An offering may
|
339
|
+
include of 100g of Butter and 1 kg of potatoes, or 1 cell
|
340
|
+
phone and 2 headsets.)
|
341
|
+
property :UnitPriceSpecification, :label => 'Unit price specification', :comment =>
|
342
|
+
%(A unit price specification is a conceptual entity that
|
343
|
+
specifies the price asked for a given gr:Offering by the
|
344
|
+
respective gr:Business Entity. An offering may be linked to
|
345
|
+
multiple unit price specifications that specify alternative
|
346
|
+
prices for non-overlapping sets of conditions \(e.g.
|
347
|
+
quantities or sales regions\) or with differing validity
|
348
|
+
periods. A unit price specification is characterized by \(1\)
|
349
|
+
the lower and upper limits and the unit of measurement of the
|
350
|
+
eligible quantity, \(2\) by a monetary amount per unit of the
|
351
|
+
product or service, and \(3\) whether this prices includes
|
352
|
+
local sales taxes, namely VAT. Example: The price, including
|
353
|
+
VAT, for 1 kg of a given material is 5 Euros per kg for 0 - 5
|
354
|
+
kg and 4 Euros for quantities above 5 kg. The eligible
|
355
|
+
quantity interval for a given price is specified using the
|
356
|
+
object property gr:hasEligibleQuantity, which points to an
|
357
|
+
instance of gr:QuantitativeValue. The currency is specified
|
358
|
+
using the gr:hasCurrency property, which points to an ISO 4217
|
359
|
+
currency code. The unit of measurement for the eligible
|
360
|
+
quantity is specified using the gr:hasUnitOfMeasurement
|
361
|
+
datatype property, which points to an UN/CEFACT Common Code
|
362
|
+
\(3 characters\). In most cases, the appropriate unit of
|
363
|
+
measurement is the UN/CEFACT Common Code "C62" for "Unit or
|
364
|
+
piece", since a gr:Offering is defined by the quantity and
|
365
|
+
unit of measurement of all items included \(e.g. "1 kg of
|
366
|
+
bananas plus a 2 kg of apples"\). As long at the offering
|
367
|
+
consists of only one item, it is also possible to use an unit
|
368
|
+
of measurement of choice for specifying the price per unit.
|
369
|
+
For bundles, however, only "C62" for "Unit or piece" is a
|
370
|
+
valid unit of measurement. You can assume that the price is
|
371
|
+
given per unit or piece if there is no gr:hasUnitOfMeasurement
|
372
|
+
property attached to the price. Whether VAT and sales taxes
|
373
|
+
are included in this price is specified using the property
|
374
|
+
gr:valueAddedTaxIncluded \(xsd:boolean\). The price per unit
|
375
|
+
of measurement is specified as a float value of the
|
376
|
+
gr:hasCurrencyValue property. The currency is specified via
|
377
|
+
the gr:hasCurrency datatype property. Whether the price
|
378
|
+
includes VAT or not is indicated by the
|
379
|
+
gr:valueAddedTaxIncluded datatype property. The property
|
380
|
+
priceType can be used to indicate that the price is a retail
|
381
|
+
price recommendation only \(i.e. a list price\). If the price
|
382
|
+
can only be given as a range, use gr:hasMaxCurrencyValue and
|
383
|
+
gr:hasMinCurrencyValue for the upper and lower bounds.
|
384
|
+
Important: When querying for the price, always use
|
385
|
+
gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue. Note 1: Due
|
386
|
+
to the complexity of pricing scenarios in various industries,
|
387
|
+
it may be necessary to create extensions of this fundamental
|
388
|
+
model of price specifications. Such can be done easily by
|
389
|
+
importing and refining the GoodRelations ontology. Note 2: For
|
390
|
+
Google, attaching a gr:validThrough statement to a
|
391
|
+
gr:UnitPriceSpecification is mandatory.)
|
392
|
+
property :WarrantyPromise, :label => 'Warranty promise', :comment =>
|
393
|
+
%(This is a conceptual entity that holds together all aspects of
|
394
|
+
the n-ary relation gr:hasWarrantyPromise. A Warranty promise
|
395
|
+
is an entity representing the duration and scope of services
|
396
|
+
that will be provided to a customer free of charge in case of
|
397
|
+
a defect or malfunction of the gr:ProductOrService. A warranty
|
398
|
+
promise is characterized by its temporal duration \(usually
|
399
|
+
starting with the date of purchase\) and its gr:WarrantyScope.
|
400
|
+
The warranty scope represents the types of services provided
|
401
|
+
\(e.g. labor and parts, just parts\) of the warranty included
|
402
|
+
in an gr:Offering. The actual services may be provided by the
|
403
|
+
gr:BusinessEntity making the offering, by the manufacturer of
|
404
|
+
the product, or by a third party. There may be multiple
|
405
|
+
warranty promises associated with a particular offering, which
|
406
|
+
differ in duration and scope \(e.g. pick-up service during the
|
407
|
+
first 12 months, just parts and labor for 36 months\).
|
408
|
+
Examples: 12 months parts and labor, 36 months parts)
|
409
|
+
property :WarrantyScope, :label => 'Warranty scope', :comment =>
|
410
|
+
%(The warranty scope represents types of services that will be
|
411
|
+
provided free of charge by the vendor or manufacturer in the
|
412
|
+
case of a defect \(e.g. labor and parts, just parts\), as part
|
413
|
+
of the warranty included in an gr:Offering. The actual
|
414
|
+
services may be provided by the gr:BusinessEntity making the
|
415
|
+
offering, by the manufacturer of the product, or by a third
|
416
|
+
party. Examples: Parts and Labor, Parts)
|
417
|
+
|
418
|
+
# Property definitions
|
419
|
+
property :taxID, :label => 'Tax ID (0..1)', :comment =>
|
420
|
+
%(The Tax / Fiscal ID of the gr:BusinessEntity, e.g. the TIN in
|
421
|
+
the US or the CIF/NIF in Spain. It is usually assigned by the
|
422
|
+
country of residence)
|
423
|
+
property :vatID, :label => 'VAT ID (0..1)', :comment =>
|
424
|
+
%(The Value-added Tax ID of the gr:BusinessEntity. See
|
425
|
+
http://en.wikipedia.org/wiki/Value_added_tax_identification_number
|
426
|
+
for details.)
|
427
|
+
property :amountOfThisGood, :label => 'amount of this good (1..1)', :comment =>
|
428
|
+
%(This property specifies the quantity of the goods included in
|
429
|
+
the gr:Offering via this gr:TypeAndQuantityNode. The quantity
|
430
|
+
is given in the unit of measurement attached to the
|
431
|
+
gr:TypeAndQuantityNode.)
|
432
|
+
property :availabilityEnds, :label => 'availability ends (0..1)', :comment =>
|
433
|
+
%(This property specifies the end of the availability of the
|
434
|
+
gr:ProductOrService included in the gr:Offering. The
|
435
|
+
difference to the properties gr:validFrom and gr:validThrough
|
436
|
+
is that those specify the period of time during which the
|
437
|
+
offer is valid and can be accepted. Example: I offer to lease
|
438
|
+
my boat for the period of August 1 - August 31, 2010, but you
|
439
|
+
must accept by offer no later than July 15. A time-zone should
|
440
|
+
be specified. For a time in GMT/UTC, simply add a "Z"
|
441
|
+
following the time: 2008-05-30T09:30:10Z. Alternatively, you
|
442
|
+
can specify an offset from the UTC time by adding a positive
|
443
|
+
or negative time following the time: 2008-05-30T09:30:10-09:00
|
444
|
+
or 2008-05-30T09:30:10+09:00. Note: There is another property
|
445
|
+
gr:availableAtOrFrom, which is used to indicate the
|
446
|
+
gr:Location \(e.g. store or shop\) from which the goods would
|
447
|
+
be available.)
|
448
|
+
property :availabilityStarts, :label => 'availability starts (0..1)', :comment =>
|
449
|
+
%(This property specifies the beginning of the availability of
|
450
|
+
the gr:ProductOrService included in the gr:Offering. The
|
451
|
+
difference to the properties gr:validFrom and gr:validThrough
|
452
|
+
is that those specify the period of time during which the
|
453
|
+
offer is valid and can be accepted. Example: I offer to lease
|
454
|
+
my boat for the period of August 1 - August 31, 2010, but you
|
455
|
+
must accept by offer no later than July 15. A time-zone should
|
456
|
+
be specified. For a time in GMT/UTC, simply add a "Z"
|
457
|
+
following the time: 2008-05-30T09:30:10Z. Alternatively, you
|
458
|
+
can specify an offset from the UTC time by adding a positive
|
459
|
+
or negative time following the time: 2008-05-30T09:30:10-09:00
|
460
|
+
or 2008-05-30T09:30:10+09:00. Note: There is another property
|
461
|
+
gr:availableAtOrFrom, which is used to indicate the
|
462
|
+
gr:Location \(e.g. store or shop\) from which the goods would
|
463
|
+
be available.)
|
464
|
+
property :billingIncrement, :label => 'billing increment (0..1)', :comment =>
|
465
|
+
%(This property specifies the minimal quantity and rounding
|
466
|
+
increment that will be the basis for the billing. The unit of
|
467
|
+
measurement is specified by the UN/CEFACT code attached to the
|
468
|
+
gr:UnitPriceSpecification via the gr:hasUnitOfMeasurement
|
469
|
+
property. Examples: - The price for gasoline is 4 USD per
|
470
|
+
gallon at the pump, but you will be charged in units of 0.1
|
471
|
+
gallons. - The price for legal consulting is 100 USD per hour,
|
472
|
+
but you will be charged in units of 15 minutes. This property
|
473
|
+
makes sense only for instances of gr:Offering that include not
|
474
|
+
more than one type of good or service.)
|
475
|
+
property :category, :label => 'category (0..*)', :comment =>
|
476
|
+
%(The name of a category to which this gr:ProductOrService,
|
477
|
+
gr:Offering, gr:BusinessEntity, or gr:Location belongs. Note
|
478
|
+
1: For products, it is better to add an rdf:type statement
|
479
|
+
referring to a GoodRelations-compliant ontology for vertical
|
480
|
+
industries instead, but if you just have a short text label,
|
481
|
+
gr:category is simpler. Note 2: You can use greater signs or
|
482
|
+
slashes to informally indicate a category hierarchy, e.g.
|
483
|
+
"restaurants/asian_restaurants" or "cables > usb_cables")
|
484
|
+
property :closes, :label => 'closes (1..1)', :comment =>
|
485
|
+
%(The closing hour of the gr:Location on the given gr:DayOfWeek.
|
486
|
+
If no time-zone suffix is included, the time is given in the
|
487
|
+
local time valid at the gr:Location. For a time in GMT/UTC,
|
488
|
+
simply add a "Z" following the time: 09:30:10Z. Alternatively,
|
489
|
+
you can specify an offset from the UTC time by adding a
|
490
|
+
positive or negative time following the time: 09:30:10-09:00
|
491
|
+
09:30:10+09:00. Note 1: Use 00:00:00 for the first second of
|
492
|
+
the respective day and 23:59:59 for the last second of that
|
493
|
+
day. Note 2: If a store opens at 17:00 on Saturdays and closes
|
494
|
+
at 03:00:00 a.m. next morning, use two instances of this
|
495
|
+
class, one with 17:00:00 - 23:59:59 for Saturday and another
|
496
|
+
one with 00:00:00 - 03:00:00 for Sunday. Note 3: If the shop
|
497
|
+
re-opens on the same day of the week or set of days of the
|
498
|
+
week, you must create a second instance of
|
499
|
+
gr:OpeningHoursSpecification.)
|
500
|
+
property :color, :label => 'color (0..1)', :comment =>
|
501
|
+
%(The color of the product.)
|
502
|
+
property :condition, :label => 'condition (0..1)', :comment =>
|
503
|
+
%(A textual description of the condition of the product or
|
504
|
+
service, or the products or services included in the offer
|
505
|
+
\(when attached to a gr:Offering\))
|
506
|
+
property :datatypeProductOrServiceProperty, :label => 'datatype product or service property (0..*)', :comment =>
|
507
|
+
%(This property is the super property for all pure datatype
|
508
|
+
properties that can be used to describe a gr:ProductOrService.
|
509
|
+
In products and services ontologies, only such properties that
|
510
|
+
are no quantitative properties and that have no predefined
|
511
|
+
gr:QualitativeValue instances are subproperties of this
|
512
|
+
property. In practice, this refers to a few integer properties
|
513
|
+
for which the integer value represents qualitative aspects,
|
514
|
+
for string datatypes \(as long as no predefined values
|
515
|
+
exist\), for boolean datatype properties, and for dates and
|
516
|
+
times.)
|
517
|
+
property :description, :label => 'description (0..1)', :comment =>
|
518
|
+
%(A short textual description of the resource. This property is
|
519
|
+
semantically equivalent to rdfs:comment and just meant as a
|
520
|
+
handy shortcut for marking up data.)
|
521
|
+
property :durationOfWarrantyInMonths, :label => 'duration of warranty in months (0..1)', :comment =>
|
522
|
+
%(This property specifies the duration of the gr:WarrantyPromise
|
523
|
+
in months.)
|
524
|
+
property :eligibleRegions, :label => 'eligible regions (0..*)', :comment =>
|
525
|
+
%(This property specifies the geo-political region or regions
|
526
|
+
for which the gr:Offering, gr:License, or
|
527
|
+
gr:DeliveryChargeSpecification is valid using the
|
528
|
+
two-character version of ISO 3166-1 \(ISO 3166-1 alpha-2\) for
|
529
|
+
regions or ISO 3166-2 , which breaks down the countries from
|
530
|
+
ISO 3166-1 into administrative subdivisions. Important: Do NOT
|
531
|
+
use 3-letter ISO 3166-1 codes!)
|
532
|
+
property :hasDUNS, :label => 'has DUNS (0..1)', :comment =>
|
533
|
+
%(The Dun & Bradstreet DUNS number for identifying a
|
534
|
+
gr:BusinessEntity. The Dun & Bradstreet DUNS is a nine-digit
|
535
|
+
number used to identify legal entities \(but usually not
|
536
|
+
branches or locations of logistical importance only\).)
|
537
|
+
property :"hasGTIN-14", :label => 'has GTIN-14 (0..*)', :comment =>
|
538
|
+
%(The Global Trade Item Number \(GTIN-14\) of the given
|
539
|
+
gr:ProductOrService or gr:Offering.)
|
540
|
+
property :"hasGTIN-8", :label => 'has GTIN-8 (0..*)', :comment =>
|
541
|
+
%(The 8-digit Global Trade Item Number \(GTIN-8\) of the given
|
542
|
+
gr:ProductOrService or gr:Offering, also known as EAN/UCC-8
|
543
|
+
\(8-digit EAN\).)
|
544
|
+
property :hasGlobalLocationNumber, :label => 'has Global Location Number (0..1)', :comment =>
|
545
|
+
%(The Global Location Number \(GLN, sometimes also referred to
|
546
|
+
as International Location Number or ILN\) of the respective
|
547
|
+
gr:BusinessEntity or gr:Location. The Global Location Number
|
548
|
+
is a thirteen-digit number used to identify parties and
|
549
|
+
physical locations.)
|
550
|
+
property :hasISICv4, :label => 'has ISIC v4 (0..*)', :comment =>
|
551
|
+
%(The International Standard of Industrial Classification of All
|
552
|
+
Economic Activities \(ISIC\), Revision 4 code for a particular
|
553
|
+
gr:BusinessEntity or gr:Location. See
|
554
|
+
http://unstats.un.org/unsd/cr/registry/isic-4.asp for more
|
555
|
+
information. Note: While ISIC codes are sometimes misused for
|
556
|
+
classifying products or services, they are designed and suited
|
557
|
+
only for classifying business establishments.)
|
558
|
+
property :hasMPN, :label => 'has MPN (0..*)', :comment =>
|
559
|
+
%(The Manufacturer Part Number or MPN is a unique identifier for
|
560
|
+
a product, service, or bundle from the perspective of a
|
561
|
+
particular manufacturer. MPNs can be assigned to products or
|
562
|
+
product datasheets, or bundles. Accordingly, the domain of
|
563
|
+
this property is the union of gr:ProductOrService \(the common
|
564
|
+
superclass of goods and datasheets\), and gr:Offering.
|
565
|
+
Important: Be careful when assuming two products or services
|
566
|
+
instances or offering instances to be identical based on the
|
567
|
+
MPN. Since MPNs are unique only for the same
|
568
|
+
gr:BusinessEntity, this holds only when the two MPN values
|
569
|
+
refer to the same gr:BusinessEntity. Such can be done by
|
570
|
+
taking into account the provenance of the data. Usually, the
|
571
|
+
properties gr:hasEAN_UCC-13 and gr:hasGTIN-14 are much more
|
572
|
+
reliable identifiers, because they are globally unique. See
|
573
|
+
also http://en.wikipedia.org/wiki/Part_number)
|
574
|
+
property :hasNAICS, :label => 'has NAICS (0..*)', :comment =>
|
575
|
+
%(The North American Industry Classification System \(NAICS\)
|
576
|
+
code for a particular gr:BusinessEntity. See
|
577
|
+
http://www.census.gov/eos/www/naics/ for more details. Note:
|
578
|
+
While NAICS codes are sometimes misused for classifying
|
579
|
+
products or services, they are designed and suited only for
|
580
|
+
classifying business establishments.)
|
581
|
+
property :hasStockKeepingUnit, :label => 'has Stock Keeping Unit (0..*)', :comment =>
|
582
|
+
%(The Stock Keeping Unit, or SKU is a unique identifier for a
|
583
|
+
product, service, or bundle from the perspective of a
|
584
|
+
particular supplier, i.e. SKUs are mostly assigned and
|
585
|
+
serialized at the merchant level. Examples of SKUs are the
|
586
|
+
ordering or parts numbers used by a particular Web shop or
|
587
|
+
catalog. Consequently, the domain of gr:hasStockKeepingUnit is
|
588
|
+
the union of the classes gr:Offering and gr:ProductOrService.
|
589
|
+
If attached to a gr:Offering, the SKU will usually reflect a
|
590
|
+
merchant-specific identifier, i.e. one valid only for that
|
591
|
+
particular retailer or shop. If attached to a
|
592
|
+
gr:ProductOrServiceModel, the SKU can reflect either the
|
593
|
+
identifier used by the merchant or the part number used by the
|
594
|
+
official manufacturer of that part. For the latter, gr:hasMPN
|
595
|
+
is a better choice. Important: Be careful when assuming two
|
596
|
+
products or services instances or offering instances to be
|
597
|
+
identical based on the SKU. Since SKUs are unique only for the
|
598
|
+
same gr:BusinessEntity, this can be assumed only when you are
|
599
|
+
sure that the two SKU values refer to the same business
|
600
|
+
entity. Such can be done by taking into account the provenance
|
601
|
+
of the data. As long as instances of gr:Offering are
|
602
|
+
concerned, you can also check that the offerings are being
|
603
|
+
offered by the same gr:Business Entity. Usually, the
|
604
|
+
properties gr:hasEAN_UCC-13 and gr:hasGTIN-14 are much more
|
605
|
+
reliable identifiers, because they are globally unique. See
|
606
|
+
also http://en.wikipedia.org/wiki/Stock_Keeping_Unit.)
|
607
|
+
property :hasCurrency, :label => 'has currency (1..1)', :comment =>
|
608
|
+
%(The currency for all prices in the gr:PriceSpecification given
|
609
|
+
using the ISO 4217 standard \(3 characters\).)
|
610
|
+
property :hasCurrencyValue, :label => 'has currency value (0..1)', :comment =>
|
611
|
+
%(This property specifies the amount of money for a price per
|
612
|
+
unit, shipping charges, or payment charges. The currency and
|
613
|
+
other relevant details are attached to the respective
|
614
|
+
gr:PriceSpecification etc. For a gr:UnitPriceSpecification,
|
615
|
+
this is the price for one unit or bundle \(as specified in the
|
616
|
+
unit of measurement of the unit price specification\) of the
|
617
|
+
respective gr:ProductOrService. For a
|
618
|
+
gr:DeliveryChargeSpecification or a
|
619
|
+
gr:PaymentChargeSpecification, it is the price per delivery or
|
620
|
+
payment. GoodRelations also supports giving price information
|
621
|
+
as intervals only. If this is needed, use
|
622
|
+
gr:hasMaxCurrencyValue for the upper bound and
|
623
|
+
gr:hasMinCurrencyValue for the lower bound. Using
|
624
|
+
gr:hasCurrencyValue sets the upper and lower bounds to the
|
625
|
+
same given value, i.e., x gr:hasCurrencyValue y implies x
|
626
|
+
gr:hasMinCurrencyValue y, x gr:hasMaxCurrencyValue y.)
|
627
|
+
property :hasMaxCurrencyValue, :label => 'has max currency value (1..1)', :comment =>
|
628
|
+
%(This property specifies the UPPER BOUND of the amount of money
|
629
|
+
for a price RANGE per unit, shipping charges, or payment
|
630
|
+
charges. The currency and other relevant details are attached
|
631
|
+
to the respective gr:PriceSpecification etc. For a
|
632
|
+
gr:UnitPriceSpecification, this is the UPPER BOUND for the
|
633
|
+
price for one unit or bundle \(as specified in the unit of
|
634
|
+
measurement of the unit price specification\) of the
|
635
|
+
respective gr:ProductOrService. For a
|
636
|
+
gr:DeliveryChargeSpecification or a
|
637
|
+
gr:PaymentChargeSpecification, it is the UPPER BOUND of the
|
638
|
+
price per delivery or payment. Using gr:hasCurrencyValue sets
|
639
|
+
the upper and lower bounds to the same given value, i.e., x
|
640
|
+
gr:hasCurrencyValue y implies x gr:hasMinCurrencyValue y, x
|
641
|
+
gr:hasMaxCurrencyValue y.)
|
642
|
+
property :hasMaxValue, :label => 'has max value (0..1)', :comment =>
|
643
|
+
%(This property captures the upper limit of a
|
644
|
+
gr:QuantitativeValue instance.)
|
645
|
+
property :hasMaxValueFloat, :label => 'has max value float (1..1)', :comment =>
|
646
|
+
%(This property captures the upper limit of a
|
647
|
+
gr:QuantitativeValueFloat instance.)
|
648
|
+
property :hasMaxValueInteger, :label => 'has max value integer (1..1)', :comment =>
|
649
|
+
%(This property captures the upper limit of a
|
650
|
+
gr:QuantitativeValueInteger instance.)
|
651
|
+
property :hasMinCurrencyValue, :label => 'has min currency value (1..1)', :comment =>
|
652
|
+
%(This property specifies the LOWER BOUND of the amount of money
|
653
|
+
for a price RANGE per unit, shipping charges, or payment
|
654
|
+
charges. The currency and other relevant details are attached
|
655
|
+
to the respective gr:PriceSpecification etc. For a
|
656
|
+
gr:UnitPriceSpecification, this is the LOWER BOUND for the
|
657
|
+
price for one unit or bundle \(as specified in the unit of
|
658
|
+
measurement of the unit price specification\) of the
|
659
|
+
respective gr:ProductOrService. For a
|
660
|
+
gr:DeliveryChargeSpecification or a
|
661
|
+
gr:PaymentChargeSpecification, it is the LOWER BOUND of the
|
662
|
+
price per delivery or payment. Using gr:hasCurrencyValue sets
|
663
|
+
the upper and lower bounds to the same given value, i.e., x
|
664
|
+
gr:hasCurrencyValue y implies x gr:hasMinCurrencyValue y, x
|
665
|
+
gr:hasMaxCurrencyValue y.)
|
666
|
+
property :hasMinValue, :label => 'has min value (0..1)', :comment =>
|
667
|
+
%(This property captures the lower limit of a
|
668
|
+
gr:QuantitativeValue instance.)
|
669
|
+
property :hasMinValueFloat, :label => 'has min value float (1..1)', :comment =>
|
670
|
+
%(This property captures the lower limit of a
|
671
|
+
gr:QuantitativeValueFloat instance.)
|
672
|
+
property :hasMinValueInteger, :label => 'has min value integer (1..1)', :comment =>
|
673
|
+
%(This property captures the lower limit of a
|
674
|
+
gr:QuantitativeValueInteger instance.)
|
675
|
+
property :hasUnitOfMeasurement, :label => 'has unit of measurement (1..1)', :comment =>
|
676
|
+
%(The unit of measurement for a gr:QuantitativeValue, a
|
677
|
+
gr:UnitPriceSpecification, or a gr:TypeAndQuantityNode given
|
678
|
+
using the UN/CEFACT Common Code \(3 characters\).)
|
679
|
+
property :hasValue, :label => 'has value (0..1)', :comment =>
|
680
|
+
%(This subproperty specifies that the upper and lower limit of
|
681
|
+
the given gr:QuantitativeValue are identical and have the
|
682
|
+
respective value. It is a shortcut for such cases where a
|
683
|
+
quantitative property is \(at least practically\) a single
|
684
|
+
point value and not an interval.)
|
685
|
+
property :hasValueFloat, :label => 'has value float (0..1)', :comment =>
|
686
|
+
%(This subproperty specifies that the upper and lower limit of
|
687
|
+
the given gr:QuantitativeValueFloat are identical and have the
|
688
|
+
respective float value. It is a shortcut for such cases where
|
689
|
+
a quantitative property is \(at least practically\) a single
|
690
|
+
point value and not an interval.)
|
691
|
+
property :hasValueInteger, :label => 'has value integer (0..1)', :comment =>
|
692
|
+
%(This subproperty specifies that the upper and lower limit of
|
693
|
+
the given gr:QuantitativeValueInteger are identical and have
|
694
|
+
the respective integer value. It is a shortcut for such cases
|
695
|
+
where a quantitative property is \(at least practically\) a
|
696
|
+
single point value and not an interval.)
|
697
|
+
property :isListPrice, :label => 'is list price (DEPRECATED)', :comment =>
|
698
|
+
%(This boolean attribute indicates whether a
|
699
|
+
gr:UnitPriceSpecification is a list price \(usually a vendor
|
700
|
+
recommendation\) or not. "true" indicates it is a list price,
|
701
|
+
"false" indicates it is not. DEPRECATED. Use the gr:priceType
|
702
|
+
property instead.)
|
703
|
+
property :legalName, :label => 'legal name (0..1)', :comment =>
|
704
|
+
%(The legal name of the gr:BusinessEntity.)
|
705
|
+
property :name, :label => 'name (0..1)', :comment =>
|
706
|
+
%(A short text describing the respective resource. This property
|
707
|
+
is semantically equivalent to dcterms:title and rdfs:label and
|
708
|
+
just meant as a handy shortcut for marking up data.)
|
709
|
+
property :opens, :label => 'opens (1..1)', :comment =>
|
710
|
+
%(The opening hour of the gr:Location on the given gr:DayOfWeek.
|
711
|
+
If no time-zone suffix is included, the time is given in the
|
712
|
+
local time valid at the gr:Location. For a time in GMT/UTC,
|
713
|
+
simply add a "Z" following the time: 09:30:10Z. Alternatively,
|
714
|
+
you can specify an offset from the UTC time by adding a
|
715
|
+
positive or negative time following the time: 09:30:10-09:00
|
716
|
+
or 09:30:10+09:00. Note 1: Use 00:00:00 for the first second
|
717
|
+
of the respective day and 23:59:59 for the last second of that
|
718
|
+
day. Note 2: If a store opens at 17:00 on Saturdays and closes
|
719
|
+
at 03:00:00 a.m. next morning, use 17:00:00 - 23:59:59 for
|
720
|
+
Saturday and 00:00:00 - 03:00:00 for Sunday. Note 3: If the
|
721
|
+
shop re-opens on the same day of the week or set of days of
|
722
|
+
the week, you must create a second instance of
|
723
|
+
gr:OpeningHoursSpecification.)
|
724
|
+
property :priceType, :label => 'price type (0..1)', :comment =>
|
725
|
+
%(This attribute can be used to distinguish multiple different
|
726
|
+
price specifications for the same gr:Offering. It supersedes
|
727
|
+
the former gr:isListPrice property. The following values are
|
728
|
+
recommended: The absence of this property marks the actual
|
729
|
+
sales price. SRP: "suggested retail price" - applicable for
|
730
|
+
all sorts of a non-binding retail price recommendations, e.g.
|
731
|
+
such published by the manufacturer or the distributor. This
|
732
|
+
value replaces the former gr:isListPrice property. INVOICE:
|
733
|
+
The invoice price, mostly used in the car industry - this is
|
734
|
+
the price a dealer pays to the manufacturer, excluding rebates
|
735
|
+
and charges.)
|
736
|
+
property :serialNumber, :label => 'serial number (0..*)', :comment =>
|
737
|
+
%(The serial number or any alphanumeric identifier of a
|
738
|
+
particular product. Note that serial number are unique only
|
739
|
+
for the same brand or the same model, so you cannot infer from
|
740
|
+
two occurrences of the same serial number that the objects to
|
741
|
+
which they are attached are identical. This property can also
|
742
|
+
be attached to a gr:Offering in cases where the included
|
743
|
+
products are not modeled in more detail.)
|
744
|
+
property :validFrom, :label => 'valid from (0..1)', :comment =>
|
745
|
+
%(This property specifies the beginning of the validity of the
|
746
|
+
gr:Offering, gr:PriceSpecification, gr:License, or
|
747
|
+
gr:OpeningHoursSpecification. A time-zone should be specified.
|
748
|
+
For a time in GMT/UTC, simply add a "Z" following the time:
|
749
|
+
2008-05-30T09:30:10Z. Alternatively, you can specify an offset
|
750
|
+
from the UTC time by adding a positive or negative time
|
751
|
+
following the time: 2008-05-30T09:30:10-09:00 or
|
752
|
+
2008-05-30T09:30:10+09:00. Note: If multiple contradicting
|
753
|
+
instances of a gr:Offering, gr:PriceSpecification, or
|
754
|
+
gr:OpeningHoursSpecification exist, it is a good heuristics to
|
755
|
+
assume that 1. Information with validity information for the
|
756
|
+
respective period of time ranks higher than information
|
757
|
+
without validity information. 2. Among conflicting nodes both
|
758
|
+
having validity information, the one with the shorter validity
|
759
|
+
span ranks higher.)
|
760
|
+
property :validThrough, :label => 'valid through (0..1)', :comment =>
|
761
|
+
%(This property specifies the end of the validity of the
|
762
|
+
gr:Offering, gr:PriceSpecification, gr:License, or
|
763
|
+
gr:OpeningHoursSpecification. A time-zone should be specified.
|
764
|
+
For a time in GMT/UTC, simply add a "Z" following the time:
|
765
|
+
2008-05-30T09:30:10Z. Alternatively, you can specify an offset
|
766
|
+
from the UTC time by adding a positive or negative time
|
767
|
+
following the time: 2008-05-30T09:30:10-09:00 or
|
768
|
+
2008-05-30T09:30:10+09:00. Note 1: If multiple contradicting
|
769
|
+
instances of a gr:Offering, gr:PriceSpecification, or
|
770
|
+
gr:OpeningHoursSpecification exist, it is a good heuristics to
|
771
|
+
assume that 1. Information with validity information for the
|
772
|
+
respective period of time ranks higher than information
|
773
|
+
without validity information. 2. Among conflicting nodes both
|
774
|
+
having validity information, the one with the shorter validity
|
775
|
+
span ranks higher. Note 2: For Google, attaching a
|
776
|
+
gr:validThrough statement to a gr:UnitPriceSpecification is
|
777
|
+
mandatory.)
|
778
|
+
property :valueAddedTaxIncluded, :label => 'value added tax included (0..1)', :comment =>
|
779
|
+
%(This property specifies whether the applicable value-added tax
|
780
|
+
\(VAT\) is included in the price of the gr:PriceSpecification
|
781
|
+
or not. Note: This is a simple representation which may not
|
782
|
+
properly reflect all details of local taxation.)
|
783
|
+
property :acceptedPaymentMethods, :label => 'accepted payment methods (0..*)', :comment =>
|
784
|
+
%(The gr:PaymentMethod or methods accepted by the
|
785
|
+
gr:BusinessEntity for the given gr:Offering.)
|
786
|
+
property :addOn, :label => 'add-on (0..*)', :comment =>
|
787
|
+
%(This property points from a gr:Offering to additional
|
788
|
+
offerings that can only be obtained in combination with the
|
789
|
+
first offering. This can be used to model supplements and
|
790
|
+
extensions that are available for a surcharge. Any
|
791
|
+
gr:PriceSpecification attached to the secondary offering is to
|
792
|
+
be understood as an additional charge.)
|
793
|
+
property :advanceBookingRequirement, :label => 'advance booking requirement (0..1)', :comment =>
|
794
|
+
%(The minimal and maximal amount of time that is required
|
795
|
+
between accepting the gr:Offering and the actual usage of the
|
796
|
+
resource or service. This is mostly relevant for offers
|
797
|
+
regarding hotel rooms, the rental of objects, or the
|
798
|
+
provisioning of services. The duration is specified relatively
|
799
|
+
to the beginning of the usage of the contracted object. It is
|
800
|
+
represented by attaching an instance of the class
|
801
|
+
gr:QuantitativeValueInteger. The lower and upper boundaries
|
802
|
+
are specified using the properties gr:hasMinValueInteger and
|
803
|
+
gr:hasMaxValueInteger to that instance. The unit of
|
804
|
+
measurement is specified using the property
|
805
|
+
gr:hasUnitOfMeasurement with a string holding a UN/CEFACT code
|
806
|
+
suitable for durations, e.g. MON \(months\), DAY \(days\), HUR
|
807
|
+
\(hours\), or MIN \(minutes\). The difference to the
|
808
|
+
gr:validFrom and gr:validThrough properties is that those
|
809
|
+
specify the interval during which the gr:Offering is valid,
|
810
|
+
while gr:advanceBookingRequirement specifies the acceptable
|
811
|
+
relative amount of time between accepting the offer and the
|
812
|
+
fulfilment or usage.)
|
813
|
+
property :appliesToDeliveryMethod, :label => 'applies to delivery method (0..*)', :comment =>
|
814
|
+
%(This property specifies the gr:DeliveryMethod to which the
|
815
|
+
gr:DeliveryChargeSpecification applies.)
|
816
|
+
property :appliesToPaymentMethod, :label => 'applies to payment method (1..*)', :comment =>
|
817
|
+
%(This property specifies the gr:PaymentMethod to which the
|
818
|
+
gr:PaymentChargeSpecification applies.)
|
819
|
+
property :availableAtOrFrom, :label => 'available at or from (0..*)', :comment =>
|
820
|
+
%(This states that a particular gr:Offering is available at or
|
821
|
+
from the given gr:Location \(e.g. shop or branch\).)
|
822
|
+
property :availableDeliveryMethods, :label => 'available delivery methods (0..*)', :comment =>
|
823
|
+
%(This specifies the gr:DeliveryMethod or methods available for
|
824
|
+
a given gr:Offering.)
|
825
|
+
property :deliveryLeadTime, :label => 'delivery lead time (0..1)', :comment =>
|
826
|
+
%(This property can be used to indicate the promised delay
|
827
|
+
between the receipt of the order and the goods leaving the
|
828
|
+
warehouse. The duration is specified by attaching an instance
|
829
|
+
of gr:QuantitativeValueInteger. The lower and upper boundaries
|
830
|
+
are specified using the properties gr:hasMinValueInteger and
|
831
|
+
gr:hasMaxValueInteger to that instance. A point value can be
|
832
|
+
modeled with the gr:hasValueInteger property. The unit of
|
833
|
+
measurement is specified using the property
|
834
|
+
gr:hasUnitOfMeasurement with a string holding a UN/CEFACT code
|
835
|
+
suitable for durations, e.g. MON \(months\), DAY \(days\), HUR
|
836
|
+
\(hours\), or MIN \(minutes\).)
|
837
|
+
property :depth, :label => 'depth (0..1)', :comment =>
|
838
|
+
%(The depth of the product. Typical unit code\(s\): CMT for
|
839
|
+
centimeters, INH for inches)
|
840
|
+
property :eligibleCustomerTypes, :label => 'eligible customer types (0..*)', :comment =>
|
841
|
+
%(The types of customers \(gr:BusinessEntityType\) for which the
|
842
|
+
given gr:Offering is valid.)
|
843
|
+
property :eligibleDuration, :label => 'eligible duration (0..1)', :comment =>
|
844
|
+
%(The minimal and maximal duration for which the given
|
845
|
+
gr:Offering or gr:License is valid. This is mostly used for
|
846
|
+
offers regarding accommodation, the rental of objects, or
|
847
|
+
software licenses. The duration is specified by attaching an
|
848
|
+
instance of gr:QuantitativeValue. The lower and upper
|
849
|
+
boundaries are specified using the properties gr:hasMinValue
|
850
|
+
and gr:hasMaxValue to that instance. If they are the same, use
|
851
|
+
the gr:hasValue property. The unit of measurement is specified
|
852
|
+
using the property gr:hasUnitOfMeasurement with a string
|
853
|
+
holding a UN/CEFACT code suitable for durations, e.g. MON
|
854
|
+
\(months\), DAY \(days\), HUR \(hours\), or MIN \(minutes\).
|
855
|
+
The difference to the gr:validFrom and gr:validThrough
|
856
|
+
properties is that those specify the absiolute interval during
|
857
|
+
which the gr:Offering or gr:License is valid, while
|
858
|
+
gr:eligibleDuration specifies the acceptable duration of the
|
859
|
+
contract or usage.)
|
860
|
+
property :eligibleTransactionVolume, :label => 'eligible transaction volume (0..1)', :comment =>
|
861
|
+
%(This property can be used to indicate the transaction volume,
|
862
|
+
in a monetary unit, for which the gr:Offering or
|
863
|
+
gr:PriceSpecification is valid. This is mostly used to specify
|
864
|
+
a minimal purchasing volume, to express free shipping above a
|
865
|
+
certain order volume, or to limit the acceptance of credit
|
866
|
+
cards to purchases above a certain amount. The object is a
|
867
|
+
gr:PriceSpecification that uses the properties
|
868
|
+
gr:hasMaxCurrencyValue and gr:hasMinCurrencyValue to indicate
|
869
|
+
the lower and upper boundaries and gr:hasCurrency to indicate
|
870
|
+
the currency using the ISO 4217 standard \(3 characters\).)
|
871
|
+
property :equal, :label => 'equal (0..*)', :comment =>
|
872
|
+
%(This ordering relation for qualitative values indicates that
|
873
|
+
the subject is equal to the object.)
|
874
|
+
property :greater, :label => 'greater (0..*)', :comment =>
|
875
|
+
%(This ordering relation for qualitative values indicates that
|
876
|
+
the subject is greater than the object.)
|
877
|
+
property :greaterOrEqual, :label => 'greater or equal (0..*)', :comment =>
|
878
|
+
%(This ordering relation for qualitative values indicates that
|
879
|
+
the subject is greater than or equal to the object.)
|
880
|
+
property :hasPOS, :label => 'has POS (0..*)', :comment =>
|
881
|
+
%(This property states that the respective gr:Location is a
|
882
|
+
point of sale for the respective gr:BusinessEntity. It allows
|
883
|
+
linking those two types of entities without the need for a
|
884
|
+
particular gr:Offering.)
|
885
|
+
property :hasBrand, :label => 'has brand (0..*)', :comment =>
|
886
|
+
%(This specifies the brand or brands \(gr:Brand\) associated
|
887
|
+
with a gr:ProductOrService, or the brand or brands maintained
|
888
|
+
by a gr:BusinessEntity.)
|
889
|
+
property :hasBusinessFunction, :label => 'has business function (1..*)', :comment =>
|
890
|
+
%(This specifies the business function of the gr:Offering, i.e.
|
891
|
+
whether the gr:BusinessEntity is offering to sell, to lease,
|
892
|
+
or to repair the particular type of product. In the case of
|
893
|
+
bundles, it is also possible to attach individual business
|
894
|
+
functions to each gr:TypeAndQuantityNode. The business
|
895
|
+
function of the main gr:Offering determines the business
|
896
|
+
function for all included objects or services, unless a
|
897
|
+
business function attached to a gr:TypeAndQuantityNode
|
898
|
+
overrides it. Note: While it is possible that an entity is
|
899
|
+
offering multiple types of business functions for the same set
|
900
|
+
of objects \(e.g. rental and sales\), this should usually not
|
901
|
+
be stated by attaching multiple business functions to the same
|
902
|
+
gr:Offering, since the gr:UnitPriceSpecification for the
|
903
|
+
varying business functions will typically be very different.)
|
904
|
+
property :hasEligibleQuantity, :label => 'has eligible quantity (0..1)', :comment =>
|
905
|
+
%(This specifies the interval and unit of measurement of
|
906
|
+
ordering quantities for which the gr:Offering or
|
907
|
+
gr:PriceSpecification is valid. This allows e.g. specifying
|
908
|
+
that a certain freight charge is valid only for a certain
|
909
|
+
quantity. Note that if an offering is a bundle, i.e. it
|
910
|
+
consists of more than one unit of a single type of good, or if
|
911
|
+
the unit of measurement for the good is different from unit
|
912
|
+
\(Common Code C62\), then gr:hasEligibleQuantity refers to
|
913
|
+
units of this bundle. In other words, "C62" for "Units or
|
914
|
+
pieces" is usually the appropriate unit of measurement.)
|
915
|
+
property :hasInventoryLevel, :label => 'has inventory level (0..1)', :comment =>
|
916
|
+
%(This property specifies the current approximate inventory
|
917
|
+
level for gr:SomeItems. The unit of measurement and the point
|
918
|
+
value or interval are indicated using the attached
|
919
|
+
gr:QuantitativeValueFloat instance. This property can also be
|
920
|
+
attached to a gr:Offering in cases where the included products
|
921
|
+
are not modeled in more detail.)
|
922
|
+
property :hasMakeAndModel, :label => 'has make and model (0..1)', :comment =>
|
923
|
+
%(This states that an actual product instance \(gr:Individual\)
|
924
|
+
or a placeholder instance for multiple, unidentified such
|
925
|
+
instances \(gr:SomeItems\) is one occurence of a particular
|
926
|
+
gr:ProductOrServiceModel. Example: myFordT hasMakeAndModel
|
927
|
+
FordT.)
|
928
|
+
property :hasManufacturer, :label => 'has manufacturer (0..1)', :comment =>
|
929
|
+
%(This object property links a gr:ProductOrService to the
|
930
|
+
gr:BusinessEntity that produces it. Mostly used with
|
931
|
+
gr:ProductOrServiceModel.)
|
932
|
+
property :hasNext, :label => 'has next (0..1)', :comment =>
|
933
|
+
%(This ordering relation for gr:DayOfWeek indicates that the
|
934
|
+
subject is directly followed by the object. Example: Monday
|
935
|
+
hasNext Tuesday Since days of the week are a cycle, this
|
936
|
+
property is not transitive.)
|
937
|
+
property :hasOpeningHoursDayOfWeek, :label => 'has opening hours day of week (1..*)', :comment =>
|
938
|
+
%(This specifies the gr:DayOfWeek to which the
|
939
|
+
gr:OpeningHoursSpecification is related. Note: Use multiple
|
940
|
+
instances of gr:OpeningHoursSpecification for specifying the
|
941
|
+
opening hours for multiple days if the opening hours differ.)
|
942
|
+
property :hasOpeningHoursSpecification, :label => 'has opening hours specification (0..*)', :comment =>
|
943
|
+
%(This property links a gr:Location to a
|
944
|
+
gr:OpeningHoursSpecification.)
|
945
|
+
property :hasPrevious, :label => 'has previous (0..1)', :comment =>
|
946
|
+
%(This ordering relation for gr:DayOfWeek indicates that the
|
947
|
+
subject is directly preceeded by the object. Example: Tuesday
|
948
|
+
hasPrevious Monday Since days of the week are a cycle, this
|
949
|
+
property is not transitive.)
|
950
|
+
property :hasPriceSpecification, :label => 'has price specification (0..*)', :comment =>
|
951
|
+
%(This links a gr:Offering to a gr:PriceSpecification or
|
952
|
+
specifications. There can be unit price specifications,
|
953
|
+
payment charge specifications, and delivery charge
|
954
|
+
specifications. For each type, multiple specifications for the
|
955
|
+
same gr:Offering are possible, e.g. for different quantity
|
956
|
+
ranges or for different currencies, or for different
|
957
|
+
combinations of gr:DeliveryMethod and target destinations.
|
958
|
+
Recommended retail prices etc. can be marked by the
|
959
|
+
gr:priceType property of the gr:UnitPriceSpecification.)
|
960
|
+
property :hasWarrantyPromise, :label => 'has warranty promise (0..*)', :comment =>
|
961
|
+
%(This specifies the gr:WarrantyPromise made by the
|
962
|
+
gr:BusinessEntity for the given gr:Offering.)
|
963
|
+
property :hasWarrantyScope, :label => 'has warranty scope (0..1)', :comment =>
|
964
|
+
%(This states the gr:WarrantyScope of a given
|
965
|
+
gr:WarrantyPromise.)
|
966
|
+
property :height, :label => 'height (0..1)', :comment =>
|
967
|
+
%(The height of the product. Typical unit code\(s\): CMT for
|
968
|
+
centimeters, INH for inches)
|
969
|
+
property :includes, :label => 'includes (0..1)', :comment =>
|
970
|
+
%(This object property is a shortcut for the original
|
971
|
+
gr:includesObject property for the common case of having
|
972
|
+
exactly one single gr:ProductOrService instance included in an
|
973
|
+
Offering. When linking to an instance of gr:SomeItems or
|
974
|
+
gr:Individual, it is equivalent to using a
|
975
|
+
gr:TypeAndQuantityNode with
|
976
|
+
gr:hasUnitOfMeasurement="C62"^^xsd:string and
|
977
|
+
gr:amountOfThisGood="1.0"^^xsd:float for that good. When
|
978
|
+
linking to a gr:ProductOrServiceModel, it is equivalent to 1.
|
979
|
+
defining an blank node for a gr:SomeItems 2. linking that
|
980
|
+
blank node via gr:hasMakeAndModel to the
|
981
|
+
gr:ProductOrServiceModel, and 3. linking from the gr:Offering
|
982
|
+
to that blank node using another blank node of type
|
983
|
+
gr:TypeAndQuantityNode with
|
984
|
+
gr:hasUnitOfMeasurement="C62"^^xsd:string and
|
985
|
+
gr:amountOfThisGood="1.0"^^xsd:float for that good.)
|
986
|
+
property :includesObject, :label => 'includes object (0..*)', :comment =>
|
987
|
+
%(This object property links a gr:Offering to one or multiple
|
988
|
+
gr:TypeAndQuantityNode or nodes that specify the components
|
989
|
+
that are included in the respective offer.)
|
990
|
+
property :isAccessoryOrSparePartFor, :label => 'is accessory or spare part for (0..*)', :comment =>
|
991
|
+
%(This states that a particular gr:ProductOrService is an
|
992
|
+
accessory or spare part for another product or service.)
|
993
|
+
property :isConsumableFor, :label => 'is consumable for (0..*)', :comment =>
|
994
|
+
%(This states that a particular gr:ProductOrService is a
|
995
|
+
consumable for another product or service.)
|
996
|
+
property :isSimilarTo, :label => 'is similar to (0..*)', :comment =>
|
997
|
+
%(This states that a given gr:ProductOrService is similar to
|
998
|
+
another product or service. Of course, this is a subjective
|
999
|
+
statement; when interpreting it, the trust in the origin of
|
1000
|
+
the statement should be taken into account.)
|
1001
|
+
property :isVariantOf, :label => 'is variant of (0..1)', :comment =>
|
1002
|
+
%(This states that a particular gr:ProductOrServiceModel is a
|
1003
|
+
variant of another product or service model. It is pretty safe
|
1004
|
+
to infer that the variant inherits all
|
1005
|
+
gr:quantitativeProductOrServiceProperty,
|
1006
|
+
gr:qualitativeProductOrServiceProperty, and
|
1007
|
+
gr:datatypeProductOrServiceProperty values that are defined
|
1008
|
+
for the first gr:ProductOrServiceModel. Example:
|
1009
|
+
foo:Red_Ford_T_Model gr:isVariantOf foo:Ford_T_Model)
|
1010
|
+
property :lesser, :label => 'lesser (0..*)', :comment =>
|
1011
|
+
%(This ordering relation for gr:QualitativeValue pairs indicates
|
1012
|
+
that the subject is lesser than the object.)
|
1013
|
+
property :lesserOrEqual, :label => 'lesser or equal (0..*)', :comment =>
|
1014
|
+
%(This ordering relation for gr:QualitativeValue pairs indicates
|
1015
|
+
that the subject is lesser than or equal to the object.)
|
1016
|
+
property :nonEqual, :label => 'non equal (0..*)', :comment =>
|
1017
|
+
%(This ordering relation for gr:QualitativeValue pairs indicates
|
1018
|
+
that the subject is not equal to the object.)
|
1019
|
+
property :offers, :label => 'offers (0..*)', :comment =>
|
1020
|
+
%(This links a gr:BusinessEntity to the offers \(gr:Offering\)
|
1021
|
+
it makes. If you want to express interest in receiving offers,
|
1022
|
+
use gr:seeks instead.)
|
1023
|
+
property :owns, :label => 'owns (0..*)', :comment =>
|
1024
|
+
%(This property indicates that a particular person or business
|
1025
|
+
owns a particular product. It can be used to expose the
|
1026
|
+
products in one's posession in order to empower recommender
|
1027
|
+
systems to suggest matching offers. Note that the product must
|
1028
|
+
be an instance of the class gr:Individual. This property can
|
1029
|
+
also be safely applied to foaf:Agent instances.)
|
1030
|
+
property :predecessorOf, :label => 'predecessor of (0..*)', :comment =>
|
1031
|
+
%(This property indicates that the subject is a previous, often
|
1032
|
+
discontinued variant of the gr:ProductOrServiceModel used as
|
1033
|
+
the object. Example: Golf III predecessorOf Golf IV This
|
1034
|
+
relation is transitive.)
|
1035
|
+
property :qualitativeProductOrServiceProperty, :label => 'qualitative product or service property (0..*)', :comment =>
|
1036
|
+
%(This is the super property of all qualitative properties for
|
1037
|
+
products and services. All properties in product or service
|
1038
|
+
ontologies for which gr:QualitativeValue instances are
|
1039
|
+
specified are subproperties of this property.)
|
1040
|
+
property :quantitativeProductOrServiceProperty, :label => 'quantitative product or service property (0..*)', :comment =>
|
1041
|
+
%(This is the super property of all quantitative properties for
|
1042
|
+
products and services. All properties in product or service
|
1043
|
+
ontologies that specify quantitative characteristics, for
|
1044
|
+
which an interval is at least theoretically an appropriate
|
1045
|
+
value, are subproperties of this property.)
|
1046
|
+
property :seeks, :label => 'seeks (0..*)', :comment =>
|
1047
|
+
%(This links a gr:BusinessEntity to gr:Offering nodes that
|
1048
|
+
describe what the business entity is interested in \(i.e., the
|
1049
|
+
buy side\). If you want to express interest in offering
|
1050
|
+
something, use gr:offers instead. Note that this substitutes
|
1051
|
+
the former gr:BusinessFunction gr:Buy, which is now
|
1052
|
+
deprecated.)
|
1053
|
+
property :successorOf, :label => 'successor of (0..*)', :comment =>
|
1054
|
+
%(This property indicates that the subject is a newer, often
|
1055
|
+
updated or improved variant of the gr:ProductOrServiceModel
|
1056
|
+
used as the object. Example: Golf III successorOf Golf II This
|
1057
|
+
relation is transitive.)
|
1058
|
+
property :typeOfGood, :label => 'type of good (1..1)', :comment =>
|
1059
|
+
%(This specifies the gr:ProductOrService that the
|
1060
|
+
gr:TypeAndQuantityNode is referring to.)
|
1061
|
+
property :valueReference, :label => 'value reference (0..*)', :comment =>
|
1062
|
+
%(The superclass of properties that link a gr:QuantitativeValue
|
1063
|
+
or a gr:QualitativeValue to a second gr:QuantitativeValue or a
|
1064
|
+
gr:QualitativeValue that provides additional information on
|
1065
|
+
the original value. A good modeling practice is to define
|
1066
|
+
specializations of this property \(e.g.
|
1067
|
+
foo:referenceTemperature\) for your particular domain.)
|
1068
|
+
property :weight, :label => 'weight (0..1)', :comment =>
|
1069
|
+
%(The weight of the gr:ProductOrService. Typical unit code\(s\):
|
1070
|
+
GRM for gram, KGM for kilogram, LBR for pound)
|
1071
|
+
property :width, :label => 'width (0..1)', :comment =>
|
1072
|
+
%(The width of the gr:ProductOrService. Typical unit code\(s\):
|
1073
|
+
CMT for centimeters, INH for inches)
|
1074
|
+
property :displayPosition, :label => 'display position (0..1)', :comment =>
|
1075
|
+
%(The position at which the option or element should be listed
|
1076
|
+
in a menu or user dialog, lower numbers come first. The main
|
1077
|
+
usage of this property are the days of the week
|
1078
|
+
\(gr:DayOfWeek\), but it is also possible to apply it e.g. to
|
1079
|
+
product features or any other conceptual element. Note: Rely
|
1080
|
+
on this property only for data originating from a single RDF
|
1081
|
+
graph; otherwise, unpredictable results are possible.)
|
1082
|
+
property :relatedWebService, :label => 'related Web Service (0..*)', :comment =>
|
1083
|
+
%(The URI of a SOAP or REST Web Service from which additional
|
1084
|
+
information about the gr:BusinessEntity, gr:Offering,
|
1085
|
+
gr:PriceSpecification, or gr:ProductOrService, or any other
|
1086
|
+
element, can be obtained. The recommended range is xsd:anyURI
|
1087
|
+
i.e., the URI of a SOAP or REST Web Service. In principle, any
|
1088
|
+
existing or upcoming vocabulary for Web Services can be used
|
1089
|
+
in combination with GoodRelations, because the association
|
1090
|
+
between \(a\) the service description and \(b\) the
|
1091
|
+
GoodRelations description can be found via the Web Service URI
|
1092
|
+
value used with this gr:relatedWebService property.)
|
1093
|
+
end
|
1094
|
+
end
|