schema_org-rb 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d09eb68ef0515e2dd30630caff23b1b669b800942a7fcf83b76995060a6a891d
4
- data.tar.gz: 7542fa1970e78c435122a03df880e546bb9eb2d2fde721708c6776a8a482135f
3
+ metadata.gz: 7fc7c0d8e2629c6384399e2a39c56f8bd7f296190f1398e318458f86bf5f2cab
4
+ data.tar.gz: 746f023ae2a0f91e4532df88ba3e6a96d5a0646001e08cb8fbd953714448010b
5
5
  SHA512:
6
- metadata.gz: fd114ebe53da1ad9a12781339e654a0da6b3224625313a1182cb5cb117825c61a99eb6c6a33e04bee3054a3c52ad098a2258a1d1f7f3a0d52eab9969a9f2f897
7
- data.tar.gz: 476991ff43d096911e0c0fdee5a595553b859f67ee78d486f28b5664f794d4a8f7518f87204e99d0c066b1a3541b2f5c31947840bad906a188cf17437643a7db
6
+ metadata.gz: 287a629624d9fb13756633ee6c5bf31c72713a0c3eda97534e3f98fded239b83e1b69538b0d8c93f7c7f003c4e0d414ce747f6c890a5ad2ca89ad7df0df55247
7
+ data.tar.gz: 199cab15237812274b85e27fef0c694bcd15e2e2fb5ae436bba2fe54deddd79fb1a22366439116bfa927b71c05ffd26b45393a894615768d60fc89383f7c293b
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.2.0] - 2026-09-16
4
+
5
+ - Update the generated vocabulary from Schema.org v30.0 to v30.1.
6
+
3
7
  ## [0.1.1] - 2026-08-31
4
8
 
5
9
  - Preserve all reverse supersession predecessors in metadata and generated documentation.
data/README.md CHANGED
@@ -1,15 +1,14 @@
1
1
  # schema_org-rb
2
2
 
3
- `schema_org-rb` provides generated Ruby descriptors for the Schema.org vocabulary. The gem version is `0.1.0`; the checked-in vocabulary version is exposed as `SchemaOrg::SCHEMA_VERSION`.
3
+ [![Gem Version](https://badge.fury.io/rb/schema_org-rb.svg)](https://badge.fury.io/rb/schema_org-rb)
4
+ [![Release](https://github.com/ilkecan/schema_org-rb/actions/workflows/release.yml/badge.svg)](https://github.com/ilkecan/schema_org-rb/actions/workflows/release.yml)
5
+
6
+ `schema_org-rb` provides generated Ruby descriptors for the Schema.org vocabulary. The checked-in vocabulary version is exposed as `SchemaOrg::SCHEMA_VERSION`.
4
7
 
5
8
  ## Installation
6
9
 
7
10
  ```ruby
8
- gem "schema_org-rb", "0.1.0"
9
- ```
10
-
11
- ```sh
12
- gem install schema_org-rb -v 0.1.0
11
+ gem "schema_org-rb", "0.2.0"
13
12
  ```
14
13
 
15
14
  ## Supported Ruby versions
@@ -218,6 +218,7 @@ module SchemaOrg
218
218
  "DayOfWeek" => "DayOfWeek",
219
219
  "DaySpa" => "DaySpa",
220
220
  "DeactivateAction" => "DeactivateAction",
221
+ "DeclarationOfConformity" => "DeclarationOfConformity",
221
222
  "DefenceEstablishment" => "DefenceEstablishment",
222
223
  "DefinedRegion" => "DefinedRegion",
223
224
  "DefinedTerm" => "DefinedTerm",
@@ -240,6 +241,7 @@ module SchemaOrg
240
241
  "DigitalDocumentPermission" => "DigitalDocumentPermission",
241
242
  "DigitalDocumentPermissionType" => "DigitalDocumentPermissionType",
242
243
  "DigitalPlatformEnumeration" => "DigitalPlatformEnumeration",
244
+ "DigitalProductPassport" => "DigitalProductPassport",
243
245
  "DisagreeAction" => "DisagreeAction",
244
246
  "DiscoverAction" => "DiscoverAction",
245
247
  "DiscussionForumPosting" => "DiscussionForumPosting",
@@ -290,6 +292,7 @@ module SchemaOrg
290
292
  "EntertainmentBusiness" => "EntertainmentBusiness",
291
293
  "EntryPoint" => "EntryPoint",
292
294
  "Enumeration" => "Enumeration",
295
+ "EnvironmentalProductDeclaration" => "EnvironmentalProductDeclaration",
293
296
  "Episode" => "Episode",
294
297
  "Error" => "Error",
295
298
  "Event" => "Event",
@@ -1156,6 +1159,7 @@ module SchemaOrg
1156
1159
  "DayOfWeek" => "DayOfWeek",
1157
1160
  "DaySpa" => "DaySpa",
1158
1161
  "DeactivateAction" => "DeactivateAction",
1162
+ "DeclarationOfConformity" => "DeclarationOfConformity",
1159
1163
  "DefenceEstablishment" => "DefenceEstablishment",
1160
1164
  "DefinedRegion" => "DefinedRegion",
1161
1165
  "DefinedTerm" => "DefinedTerm",
@@ -1178,6 +1182,7 @@ module SchemaOrg
1178
1182
  "DigitalDocumentPermission" => "DigitalDocumentPermission",
1179
1183
  "DigitalDocumentPermissionType" => "DigitalDocumentPermissionType",
1180
1184
  "DigitalPlatformEnumeration" => "DigitalPlatformEnumeration",
1185
+ "DigitalProductPassport" => "DigitalProductPassport",
1181
1186
  "DisagreeAction" => "DisagreeAction",
1182
1187
  "DiscoverAction" => "DiscoverAction",
1183
1188
  "DiscussionForumPosting" => "DiscussionForumPosting",
@@ -1228,6 +1233,7 @@ module SchemaOrg
1228
1233
  "EntertainmentBusiness" => "EntertainmentBusiness",
1229
1234
  "EntryPoint" => "EntryPoint",
1230
1235
  "Enumeration" => "Enumeration",
1236
+ "EnvironmentalProductDeclaration" => "EnvironmentalProductDeclaration",
1231
1237
  "Episode" => "Episode",
1232
1238
  "Error" => "Error",
1233
1239
  "Event" => "Event",
@@ -2095,6 +2101,7 @@ module SchemaOrg
2095
2101
  "day_spa" => "DaySpa",
2096
2102
  "de_nonprofit_type" => "DENonprofitType",
2097
2103
  "deactivate_action" => "DeactivateAction",
2104
+ "declaration_of_conformity" => "DeclarationOfConformity",
2098
2105
  "defence_establishment" => "DefenceEstablishment",
2099
2106
  "defined_region" => "DefinedRegion",
2100
2107
  "defined_term" => "DefinedTerm",
@@ -2117,6 +2124,7 @@ module SchemaOrg
2117
2124
  "digital_document_permission" => "DigitalDocumentPermission",
2118
2125
  "digital_document_permission_type" => "DigitalDocumentPermissionType",
2119
2126
  "digital_platform_enumeration" => "DigitalPlatformEnumeration",
2127
+ "digital_product_passport" => "DigitalProductPassport",
2120
2128
  "disagree_action" => "DisagreeAction",
2121
2129
  "discover_action" => "DiscoverAction",
2122
2130
  "discussion_forum_posting" => "DiscussionForumPosting",
@@ -2166,6 +2174,7 @@ module SchemaOrg
2166
2174
  "entertainment_business" => "EntertainmentBusiness",
2167
2175
  "entry_point" => "EntryPoint",
2168
2176
  "enumeration" => "Enumeration",
2177
+ "environmental_product_declaration" => "EnvironmentalProductDeclaration",
2169
2178
  "episode" => "Episode",
2170
2179
  "error" => "Error",
2171
2180
  "eu_energy_efficiency_enumeration" => "EUEnergyEfficiencyEnumeration",
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated Ruby code is licensed under MIT.
4
+ # Schema.org descriptions in comments and metadata are licensed under CC BY-SA 3.0.
5
+ # See LICENSE-SCHEMA-ORG.txt.
6
+ module SchemaOrg
7
+ module Mixins
8
+ module DeclarationOfConformity
9
+ include Certification
10
+
11
+ def self.schema_property_definitions
12
+ {}.freeze
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated Ruby code is licensed under MIT.
4
+ # Schema.org descriptions in comments and metadata are licensed under CC BY-SA 3.0.
5
+ # See LICENSE-SCHEMA-ORG.txt.
6
+ module SchemaOrg
7
+ module Mixins
8
+ module DigitalProductPassport
9
+ include Certification
10
+
11
+ def self.schema_property_definitions
12
+ {}.freeze
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated Ruby code is licensed under MIT.
4
+ # Schema.org descriptions in comments and metadata are licensed under CC BY-SA 3.0.
5
+ # See LICENSE-SCHEMA-ORG.txt.
6
+ module SchemaOrg
7
+ module Mixins
8
+ module EnvironmentalProductDeclaration
9
+ include Certification
10
+
11
+ def self.schema_property_definitions
12
+ {}.freeze
13
+ end
14
+ end
15
+ end
16
+ end
@@ -63,8 +63,8 @@ module SchemaOrg
63
63
  value: {
64
64
  schema_name: "value",
65
65
  schema_url: "https://schema.org/value",
66
- comment_lines: ["The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\\n\\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.\\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator."].freeze,
67
- ranges: ["Boolean", "Number", "StructuredValue", "Text"].freeze,
66
+ comment_lines: ["The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\\n\\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', 'StructuredValue' or 'QualitativeValue'.\\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator."].freeze,
67
+ ranges: ["Boolean", "Number", "QualitativeValue", "StructuredValue", "Text"].freeze,
68
68
  external_ranges: [].freeze,
69
69
  inverse_of: nil,
70
70
  superseded_by: nil,
@@ -123,12 +123,12 @@ module SchemaOrg
123
123
  write_property(:valid_through, value)
124
124
  end
125
125
 
126
- # The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\n\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
126
+ # The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\n\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', 'StructuredValue' or 'QualitativeValue'.\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
127
127
  def value
128
128
  read_property(:value)
129
129
  end
130
130
 
131
- # The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\n\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
131
+ # The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.\n\n* For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.\n* For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', 'StructuredValue' or 'QualitativeValue'.\n* Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.\n* Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
132
132
  def value=(value)
133
133
  write_property(:value, value)
134
134
  end
@@ -280,6 +280,16 @@ module SchemaOrg
280
280
  superseded_by: nil,
281
281
  supersedes: nil
282
282
  }.freeze,
283
+ has_digital_product_passport: {
284
+ schema_name: "hasDigitalProductPassport",
285
+ schema_url: "https://schema.org/hasDigitalProductPassport",
286
+ comment_lines: ["A link to a Digital Product Passport (DPP) or a digital record detailing the lifecycle, sustainability, and compliance data for this product or offer. This may be a direct URL, a GS1 Digital Link URI, or a nested DigitalProductPassport object. Note: This property is aligned with the IANA 'dpp' link relation and the GS1 Web Vocabulary 'dpp' link type."].freeze,
287
+ ranges: ["DigitalProductPassport", "URL"].freeze,
288
+ external_ranges: [].freeze,
289
+ inverse_of: nil,
290
+ superseded_by: nil,
291
+ supersedes: nil
292
+ }.freeze,
283
293
  has_gs1_digital_link: {
284
294
  schema_name: "hasGS1DigitalLink",
285
295
  schema_url: "https://schema.org/hasGS1DigitalLink",
@@ -370,6 +380,16 @@ module SchemaOrg
370
380
  superseded_by: nil,
371
381
  supersedes: nil
372
382
  }.freeze,
383
+ item_popularity: {
384
+ schema_name: "itemPopularity",
385
+ schema_url: "https://schema.org/itemPopularity",
386
+ comment_lines: ["A measure of the relative popularity or sales rank of the offer within a marketplace, catalog, or platform (e.g. a platform-specific bestseller ranking or sales rank). This property is intended for platform-level or catalog-wide comparative rankings rather than self-asserted promotional claims."].freeze,
387
+ ranges: ["Number", "QuantitativeValue"].freeze,
388
+ external_ranges: [].freeze,
389
+ inverse_of: nil,
390
+ superseded_by: nil,
391
+ supersedes: nil
392
+ }.freeze,
373
393
  lease_length: {
374
394
  schema_name: "leaseLength",
375
395
  schema_url: "https://schema.org/leaseLength",
@@ -845,6 +865,16 @@ module SchemaOrg
845
865
  write_property(:has_adult_consideration, value)
846
866
  end
847
867
 
868
+ # A link to a Digital Product Passport (DPP) or a digital record detailing the lifecycle, sustainability, and compliance data for this product or offer. This may be a direct URL, a GS1 Digital Link URI, or a nested DigitalProductPassport object. Note: This property is aligned with the IANA 'dpp' link relation and the GS1 Web Vocabulary 'dpp' link type.
869
+ def has_digital_product_passport
870
+ read_property(:has_digital_product_passport)
871
+ end
872
+
873
+ # A link to a Digital Product Passport (DPP) or a digital record detailing the lifecycle, sustainability, and compliance data for this product or offer. This may be a direct URL, a GS1 Digital Link URI, or a nested DigitalProductPassport object. Note: This property is aligned with the IANA 'dpp' link relation and the GS1 Web Vocabulary 'dpp' link type.
874
+ def has_digital_product_passport=(value)
875
+ write_property(:has_digital_product_passport, value)
876
+ end
877
+
848
878
  # The <a href="https://www.gs1.org/standards/gs1-digital-link">GS1 digital link</a> associated with the object. This URL should conform to the particular requirements of digital links. The link should only contain the Application Identifiers (AIs) that are relevant for the entity being annotated, for instance a [[Product]] or an [[Organization]], and for the correct granularity. In particular, for products:<ul><li>A Digital Link that contains a serial number (AI <code>21</code>) should only be present on instances of [[IndividualProduct]]</li><li>A Digital Link that contains a lot number (AI <code>10</code>) should be annotated as [[SomeProducts]] if only products from that lot are sold, or [[IndividualProduct]] if there is only a specific product.</li><li>A Digital Link that contains a global model number (AI <code>8013</code>) should be attached to a [[Product]] or a [[ProductModel]].</li></ul> Other item types should be adapted similarly.
849
879
  def has_gs1_digital_link
850
880
  read_property(:has_gs1_digital_link)
@@ -939,6 +969,16 @@ module SchemaOrg
939
969
  write_property(:item_offered, value)
940
970
  end
941
971
 
972
+ # A measure of the relative popularity or sales rank of the offer within a marketplace, catalog, or platform (e.g. a platform-specific bestseller ranking or sales rank). This property is intended for platform-level or catalog-wide comparative rankings rather than self-asserted promotional claims.
973
+ def item_popularity
974
+ read_property(:item_popularity)
975
+ end
976
+
977
+ # A measure of the relative popularity or sales rank of the offer within a marketplace, catalog, or platform (e.g. a platform-specific bestseller ranking or sales rank). This property is intended for platform-level or catalog-wide comparative rankings rather than self-asserted promotional claims.
978
+ def item_popularity=(value)
979
+ write_property(:item_popularity, value)
980
+ end
981
+
942
982
  # Length of the lease for some [[Accommodation]], either particular to some [[Offer]] or in some cases intrinsic to the property.
943
983
  def lease_length
944
984
  read_property(:lease_length)
@@ -60,6 +60,16 @@ module SchemaOrg
60
60
  superseded_by: nil,
61
61
  supersedes: nil
62
62
  }.freeze,
63
+ provider: {
64
+ schema_name: "provider",
65
+ schema_url: "https://schema.org/provider",
66
+ comment_lines: ["The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller."].freeze,
67
+ ranges: ["Organization", "Person"].freeze,
68
+ external_ranges: [].freeze,
69
+ inverse_of: nil,
70
+ superseded_by: nil,
71
+ supersedes: ["carrier"].freeze
72
+ }.freeze,
63
73
  shipping_destination: {
64
74
  schema_name: "shippingDestination",
65
75
  schema_url: "https://schema.org/shippingDestination",
@@ -203,6 +213,18 @@ module SchemaOrg
203
213
  write_property(:height, value)
204
214
  end
205
215
 
216
+ # The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller.
217
+ # Supersedes `carrier`.
218
+ def provider
219
+ read_property(:provider)
220
+ end
221
+
222
+ # The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller.
223
+ # Supersedes `carrier`.
224
+ def provider=(value)
225
+ write_property(:provider, value)
226
+ end
227
+
206
228
  # indicates (possibly multiple) shipping destinations. These can be defined in several ways, e.g. postalCode ranges.
207
229
  def shipping_destination
208
230
  read_property(:shipping_destination)
@@ -80,6 +80,16 @@ module SchemaOrg
80
80
  superseded_by: nil,
81
81
  supersedes: ["serviceArea"].freeze
82
82
  }.freeze,
83
+ authorized_representative: {
84
+ schema_name: "authorizedRepresentative",
85
+ schema_url: "https://schema.org/authorizedRepresentative",
86
+ comment_lines: ["An organization or person officially appointed to act on behalf of the manufacturer in a specific region or context."].freeze,
87
+ ranges: ["Organization", "Person"].freeze,
88
+ external_ranges: [].freeze,
89
+ inverse_of: nil,
90
+ superseded_by: nil,
91
+ supersedes: nil
92
+ }.freeze,
83
93
  award: {
84
94
  schema_name: "award",
85
95
  schema_url: "https://schema.org/award",
@@ -857,6 +867,16 @@ module SchemaOrg
857
867
  write_property(:area_served, value)
858
868
  end
859
869
 
870
+ # An organization or person officially appointed to act on behalf of the manufacturer in a specific region or context.
871
+ def authorized_representative
872
+ read_property(:authorized_representative)
873
+ end
874
+
875
+ # An organization or person officially appointed to act on behalf of the manufacturer in a specific region or context.
876
+ def authorized_representative=(value)
877
+ write_property(:authorized_representative, value)
878
+ end
879
+
860
880
  # An award won by or for this item.
861
881
  # Supersedes `awards`.
862
882
  def award
@@ -50,6 +50,16 @@ module SchemaOrg
50
50
  superseded_by: nil,
51
51
  supersedes: ["serviceAudience"].freeze
52
52
  }.freeze,
53
+ authorized_representative: {
54
+ schema_name: "authorizedRepresentative",
55
+ schema_url: "https://schema.org/authorizedRepresentative",
56
+ comment_lines: ["An organization or person officially appointed to act on behalf of the manufacturer in a specific region or context."].freeze,
57
+ ranges: ["Organization", "Person"].freeze,
58
+ external_ranges: [].freeze,
59
+ inverse_of: nil,
60
+ superseded_by: nil,
61
+ supersedes: nil
62
+ }.freeze,
53
63
  award: {
54
64
  schema_name: "award",
55
65
  schema_url: "https://schema.org/award",
@@ -110,6 +120,16 @@ module SchemaOrg
110
120
  superseded_by: nil,
111
121
  supersedes: nil
112
122
  }.freeze,
123
+ consumer_notice: {
124
+ schema_name: "consumerNotice",
125
+ schema_url: "https://schema.org/consumerNotice",
126
+ comment_lines: ["A consumer notice, such as a safety warning or mandatory information, related to the product."].freeze,
127
+ ranges: ["Text", "TextObject", "URL", "WebContent"].freeze,
128
+ external_ranges: [].freeze,
129
+ inverse_of: nil,
130
+ superseded_by: nil,
131
+ supersedes: nil
132
+ }.freeze,
113
133
  country_of_assembly: {
114
134
  schema_name: "countryOfAssembly",
115
135
  schema_url: "https://schema.org/countryOfAssembly",
@@ -240,6 +260,16 @@ module SchemaOrg
240
260
  superseded_by: nil,
241
261
  supersedes: nil
242
262
  }.freeze,
263
+ has_digital_product_passport: {
264
+ schema_name: "hasDigitalProductPassport",
265
+ schema_url: "https://schema.org/hasDigitalProductPassport",
266
+ comment_lines: ["A link to a Digital Product Passport (DPP) or a digital record detailing the lifecycle, sustainability, and compliance data for this product or offer. This may be a direct URL, a GS1 Digital Link URI, or a nested DigitalProductPassport object. Note: This property is aligned with the IANA 'dpp' link relation and the GS1 Web Vocabulary 'dpp' link type."].freeze,
267
+ ranges: ["DigitalProductPassport", "URL"].freeze,
268
+ external_ranges: [].freeze,
269
+ inverse_of: nil,
270
+ superseded_by: nil,
271
+ supersedes: nil
272
+ }.freeze,
243
273
  has_energy_consumption_details: {
244
274
  schema_name: "hasEnergyConsumptionDetails",
245
275
  schema_url: "https://schema.org/hasEnergyConsumptionDetails",
@@ -300,6 +330,16 @@ module SchemaOrg
300
330
  superseded_by: nil,
301
331
  supersedes: nil
302
332
  }.freeze,
333
+ importer: {
334
+ schema_name: "importer",
335
+ schema_url: "https://schema.org/importer",
336
+ comment_lines: ["An organization or person who imports the product into a specific market or region."].freeze,
337
+ ranges: ["Organization", "Person"].freeze,
338
+ external_ranges: [].freeze,
339
+ inverse_of: nil,
340
+ superseded_by: nil,
341
+ supersedes: nil
342
+ }.freeze,
303
343
  in_product_group_with_id: {
304
344
  schema_name: "inProductGroupWithID",
305
345
  schema_url: "https://schema.org/inProductGroupWithID",
@@ -340,6 +380,16 @@ module SchemaOrg
340
380
  superseded_by: nil,
341
381
  supersedes: nil
342
382
  }.freeze,
383
+ is_often_bought_with: {
384
+ schema_name: "isOftenBoughtWith",
385
+ schema_url: "https://schema.org/isOftenBoughtWith",
386
+ comment_lines: ["Indicates a product that is often bought with the described product."].freeze,
387
+ ranges: ["Product"].freeze,
388
+ external_ranges: [].freeze,
389
+ inverse_of: nil,
390
+ superseded_by: nil,
391
+ supersedes: nil
392
+ }.freeze,
343
393
  is_related_to: {
344
394
  schema_name: "isRelatedTo",
345
395
  schema_url: "https://schema.org/isRelatedTo",
@@ -530,6 +580,16 @@ module SchemaOrg
530
580
  superseded_by: nil,
531
581
  supersedes: nil
532
582
  }.freeze,
583
+ recycled_content_percentage: {
584
+ schema_name: "recycledContentPercentage",
585
+ schema_url: "https://schema.org/recycledContentPercentage",
586
+ comment_lines: ["The percentage of recycled material in the product."].freeze,
587
+ ranges: ["Number"].freeze,
588
+ external_ranges: [].freeze,
589
+ inverse_of: nil,
590
+ superseded_by: nil,
591
+ supersedes: nil
592
+ }.freeze,
533
593
  release_date: {
534
594
  schema_name: "releaseDate",
535
595
  schema_url: "https://schema.org/releaseDate",
@@ -590,6 +650,26 @@ module SchemaOrg
590
650
  superseded_by: nil,
591
651
  supersedes: nil
592
652
  }.freeze,
653
+ specification: {
654
+ schema_name: "specification",
655
+ schema_url: "https://schema.org/specification",
656
+ comment_lines: ["A specification of the product, often grouped by a section header/name. This is a cleaner alternative to additionalProperty for strict retail product specifications."].freeze,
657
+ ranges: ["PropertyValue"].freeze,
658
+ external_ranges: [].freeze,
659
+ inverse_of: nil,
660
+ superseded_by: nil,
661
+ supersedes: nil
662
+ }.freeze,
663
+ substance_of_concern: {
664
+ schema_name: "substanceOfConcern",
665
+ schema_url: "https://schema.org/substanceOfConcern",
666
+ comment_lines: ["A substance of concern (SoC) contained within the product, typically based on regulatory lists like REACH or RoHS."].freeze,
667
+ ranges: ["ChemicalSubstance", "DefinedTerm", "Text", "URL"].freeze,
668
+ external_ranges: [].freeze,
669
+ inverse_of: nil,
670
+ superseded_by: nil,
671
+ supersedes: nil
672
+ }.freeze,
593
673
  weight: {
594
674
  schema_name: "weight",
595
675
  schema_url: "https://schema.org/weight",
@@ -661,6 +741,16 @@ module SchemaOrg
661
741
  write_property(:audience, value)
662
742
  end
663
743
 
744
+ # An organization or person officially appointed to act on behalf of the manufacturer in a specific region or context.
745
+ def authorized_representative
746
+ read_property(:authorized_representative)
747
+ end
748
+
749
+ # An organization or person officially appointed to act on behalf of the manufacturer in a specific region or context.
750
+ def authorized_representative=(value)
751
+ write_property(:authorized_representative, value)
752
+ end
753
+
664
754
  # An award won by or for this item.
665
755
  # Supersedes `awards`.
666
756
  def award
@@ -725,6 +815,16 @@ module SchemaOrg
725
815
  write_property(:color_swatch, value)
726
816
  end
727
817
 
818
+ # A consumer notice, such as a safety warning or mandatory information, related to the product.
819
+ def consumer_notice
820
+ read_property(:consumer_notice)
821
+ end
822
+
823
+ # A consumer notice, such as a safety warning or mandatory information, related to the product.
824
+ def consumer_notice=(value)
825
+ write_property(:consumer_notice, value)
826
+ end
827
+
728
828
  # The place where the product was assembled.
729
829
  def country_of_assembly
730
830
  read_property(:country_of_assembly)
@@ -879,6 +979,16 @@ module SchemaOrg
879
979
  write_property(:has_certification, value)
880
980
  end
881
981
 
982
+ # A link to a Digital Product Passport (DPP) or a digital record detailing the lifecycle, sustainability, and compliance data for this product or offer. This may be a direct URL, a GS1 Digital Link URI, or a nested DigitalProductPassport object. Note: This property is aligned with the IANA 'dpp' link relation and the GS1 Web Vocabulary 'dpp' link type.
983
+ def has_digital_product_passport
984
+ read_property(:has_digital_product_passport)
985
+ end
986
+
987
+ # A link to a Digital Product Passport (DPP) or a digital record detailing the lifecycle, sustainability, and compliance data for this product or offer. This may be a direct URL, a GS1 Digital Link URI, or a nested DigitalProductPassport object. Note: This property is aligned with the IANA 'dpp' link relation and the GS1 Web Vocabulary 'dpp' link type.
988
+ def has_digital_product_passport=(value)
989
+ write_property(:has_digital_product_passport, value)
990
+ end
991
+
882
992
  # Defines the energy efficiency Category (also known as "class" or "rating") for a product according to an international energy efficiency standard.
883
993
  def has_energy_consumption_details
884
994
  read_property(:has_energy_consumption_details)
@@ -943,6 +1053,16 @@ module SchemaOrg
943
1053
  write_property(:height, value)
944
1054
  end
945
1055
 
1056
+ # An organization or person who imports the product into a specific market or region.
1057
+ def importer
1058
+ read_property(:importer)
1059
+ end
1060
+
1061
+ # An organization or person who imports the product into a specific market or region.
1062
+ def importer=(value)
1063
+ write_property(:importer, value)
1064
+ end
1065
+
946
1066
  # Indicates the [[productGroupID]] for a [[ProductGroup]] that this product [[isVariantOf]].
947
1067
  def in_product_group_with_id
948
1068
  read_property(:in_product_group_with_id)
@@ -983,6 +1103,16 @@ module SchemaOrg
983
1103
  write_property(:is_family_friendly, value)
984
1104
  end
985
1105
 
1106
+ # Indicates a product that is often bought with the described product.
1107
+ def is_often_bought_with
1108
+ read_property(:is_often_bought_with)
1109
+ end
1110
+
1111
+ # Indicates a product that is often bought with the described product.
1112
+ def is_often_bought_with=(value)
1113
+ write_property(:is_often_bought_with, value)
1114
+ end
1115
+
986
1116
  # A pointer to another, somehow related product (or multiple products).
987
1117
  def is_related_to
988
1118
  read_property(:is_related_to)
@@ -1199,6 +1329,16 @@ module SchemaOrg
1199
1329
  write_property(:purchase_date, value)
1200
1330
  end
1201
1331
 
1332
+ # The percentage of recycled material in the product.
1333
+ def recycled_content_percentage
1334
+ read_property(:recycled_content_percentage)
1335
+ end
1336
+
1337
+ # The percentage of recycled material in the product.
1338
+ def recycled_content_percentage=(value)
1339
+ write_property(:recycled_content_percentage, value)
1340
+ end
1341
+
1202
1342
  # The release date of a product or product model. This can be used to distinguish the exact variant of a product.
1203
1343
  def release_date
1204
1344
  read_property(:release_date)
@@ -1263,6 +1403,26 @@ module SchemaOrg
1263
1403
  write_property(:slogan, value)
1264
1404
  end
1265
1405
 
1406
+ # A specification of the product, often grouped by a section header/name. This is a cleaner alternative to additionalProperty for strict retail product specifications.
1407
+ def specification
1408
+ read_property(:specification)
1409
+ end
1410
+
1411
+ # A specification of the product, often grouped by a section header/name. This is a cleaner alternative to additionalProperty for strict retail product specifications.
1412
+ def specification=(value)
1413
+ write_property(:specification, value)
1414
+ end
1415
+
1416
+ # A substance of concern (SoC) contained within the product, typically based on regulatory lists like REACH or RoHS.
1417
+ def substance_of_concern
1418
+ read_property(:substance_of_concern)
1419
+ end
1420
+
1421
+ # A substance of concern (SoC) contained within the product, typically based on regulatory lists like REACH or RoHS.
1422
+ def substance_of_concern=(value)
1423
+ write_property(:substance_of_concern, value)
1424
+ end
1425
+
1266
1426
  # The weight of the product or person.
1267
1427
  def weight
1268
1428
  read_property(:weight)
@@ -33,8 +33,8 @@ module SchemaOrg
33
33
  varies_by: {
34
34
  schema_name: "variesBy",
35
35
  schema_url: "https://schema.org/variesBy",
36
- comment_lines: ["Indicates the property or properties by which the variants in a [[ProductGroup]] vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. \"color\"; terms defined elsewhere can be referenced with their URIs."].freeze,
37
- ranges: ["DefinedTerm", "Text"].freeze,
36
+ comment_lines: ["Indicates the property or properties by which the variants in a [[ProductGroup]] vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. \"color\"; terms defined elsewhere can be referenced with their URIs. Variant properties can be provided using [[PropertyValue]] instead of plain [[Text]], to allow specification of the values available for a variant property."].freeze,
37
+ ranges: ["DefinedTerm", "PropertyValue", "Text"].freeze,
38
38
  external_ranges: [].freeze,
39
39
  inverse_of: nil,
40
40
  superseded_by: nil,
@@ -65,12 +65,12 @@ module SchemaOrg
65
65
  write_property(:product_group_id, value)
66
66
  end
67
67
 
68
- # Indicates the property or properties by which the variants in a [[ProductGroup]] vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. "color"; terms defined elsewhere can be referenced with their URIs.
68
+ # Indicates the property or properties by which the variants in a [[ProductGroup]] vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. "color"; terms defined elsewhere can be referenced with their URIs. Variant properties can be provided using [[PropertyValue]] instead of plain [[Text]], to allow specification of the values available for a variant property.
69
69
  def varies_by
70
70
  read_property(:varies_by)
71
71
  end
72
72
 
73
- # Indicates the property or properties by which the variants in a [[ProductGroup]] vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. "color"; terms defined elsewhere can be referenced with their URIs.
73
+ # Indicates the property or properties by which the variants in a [[ProductGroup]] vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. "color"; terms defined elsewhere can be referenced with their URIs. Variant properties can be provided using [[PropertyValue]] instead of plain [[Text]], to allow specification of the values available for a variant property.
74
74
  def varies_by=(value)
75
75
  write_property(:varies_by, value)
76
76
  end