schema_org-rb 0.1.0 → 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.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +5 -6
  4. data/lib/schema_org/generated_vocabulary.rb +9 -0
  5. data/lib/schema_org/mixins/action.rb +1 -1
  6. data/lib/schema_org/mixins/api_reference.rb +1 -1
  7. data/lib/schema_org/mixins/artery.rb +1 -1
  8. data/lib/schema_org/mixins/blog.rb +1 -1
  9. data/lib/schema_org/mixins/brand.rb +1 -1
  10. data/lib/schema_org/mixins/broadcast_service.rb +1 -1
  11. data/lib/schema_org/mixins/buy_action.rb +3 -1
  12. data/lib/schema_org/mixins/choose_action.rb +1 -1
  13. data/lib/schema_org/mixins/clip.rb +3 -3
  14. data/lib/schema_org/mixins/communicate_action.rb +1 -1
  15. data/lib/schema_org/mixins/contact_point.rb +2 -2
  16. data/lib/schema_org/mixins/creative_work.rb +11 -11
  17. data/lib/schema_org/mixins/creative_work_season.rb +4 -4
  18. data/lib/schema_org/mixins/dataset.rb +3 -1
  19. data/lib/schema_org/mixins/declaration_of_conformity.rb +16 -0
  20. data/lib/schema_org/mixins/delivery_charge_specification.rb +1 -1
  21. data/lib/schema_org/mixins/demand.rb +5 -3
  22. data/lib/schema_org/mixins/digital_product_passport.rb +16 -0
  23. data/lib/schema_org/mixins/drug.rb +1 -1
  24. data/lib/schema_org/mixins/educational_occupational_program.rb +1 -1
  25. data/lib/schema_org/mixins/entry_point.rb +1 -1
  26. data/lib/schema_org/mixins/environmental_product_declaration.rb +16 -0
  27. data/lib/schema_org/mixins/episode.rb +3 -3
  28. data/lib/schema_org/mixins/event.rb +9 -9
  29. data/lib/schema_org/mixins/exercise_action.rb +1 -1
  30. data/lib/schema_org/mixins/financial_incentive.rb +2 -2
  31. data/lib/schema_org/mixins/flight.rb +3 -1
  32. data/lib/schema_org/mixins/food_establishment.rb +1 -1
  33. data/lib/schema_org/mixins/health_insurance_plan.rb +1 -1
  34. data/lib/schema_org/mixins/how_to.rb +1 -1
  35. data/lib/schema_org/mixins/inform_action.rb +1 -1
  36. data/lib/schema_org/mixins/invite_action.rb +1 -1
  37. data/lib/schema_org/mixins/invoice.rb +3 -3
  38. data/lib/schema_org/mixins/job_posting.rb +2 -2
  39. data/lib/schema_org/mixins/join_action.rb +1 -1
  40. data/lib/schema_org/mixins/leave_action.rb +1 -1
  41. data/lib/schema_org/mixins/link_role.rb +1 -1
  42. data/lib/schema_org/mixins/lodging_business.rb +1 -1
  43. data/lib/schema_org/mixins/media_object.rb +1 -1
  44. data/lib/schema_org/mixins/merchant_return_policy.rb +2 -2
  45. data/lib/schema_org/mixins/merchant_return_policy_seasonal_override.rb +1 -1
  46. data/lib/schema_org/mixins/monetary_amount.rb +4 -4
  47. data/lib/schema_org/mixins/movie.rb +2 -2
  48. data/lib/schema_org/mixins/movie_series.rb +2 -2
  49. data/lib/schema_org/mixins/music_group.rb +2 -2
  50. data/lib/schema_org/mixins/music_playlist.rb +1 -1
  51. data/lib/schema_org/mixins/offer.rb +47 -5
  52. data/lib/schema_org/mixins/offer_shipping_details.rb +22 -0
  53. data/lib/schema_org/mixins/order.rb +5 -3
  54. data/lib/schema_org/mixins/organization.rb +34 -12
  55. data/lib/schema_org/mixins/parcel_delivery.rb +1 -1
  56. data/lib/schema_org/mixins/person.rb +6 -6
  57. data/lib/schema_org/mixins/place.rb +8 -6
  58. data/lib/schema_org/mixins/play_action.rb +2 -2
  59. data/lib/schema_org/mixins/podcast_series.rb +1 -1
  60. data/lib/schema_org/mixins/product.rb +164 -4
  61. data/lib/schema_org/mixins/product_group.rb +4 -4
  62. data/lib/schema_org/mixins/program_membership.rb +3 -1
  63. data/lib/schema_org/mixins/pronounceable_text.rb +1 -1
  64. data/lib/schema_org/mixins/property_value.rb +24 -4
  65. data/lib/schema_org/mixins/quantitative_value.rb +4 -4
  66. data/lib/schema_org/mixins/radio_series.rb +5 -5
  67. data/lib/schema_org/mixins/recipe.rb +1 -1
  68. data/lib/schema_org/mixins/reservation.rb +2 -2
  69. data/lib/schema_org/mixins/role.rb +1 -1
  70. data/lib/schema_org/mixins/service.rb +8 -8
  71. data/lib/schema_org/mixins/shipping_rate_settings.rb +20 -0
  72. data/lib/schema_org/mixins/software_application.rb +3 -3
  73. data/lib/schema_org/mixins/software_source_code.rb +2 -2
  74. data/lib/schema_org/mixins/trip.rb +1 -1
  75. data/lib/schema_org/mixins/tv_series.rb +5 -5
  76. data/lib/schema_org/mixins/update_action.rb +1 -1
  77. data/lib/schema_org/mixins/video_game.rb +2 -2
  78. data/lib/schema_org/mixins/video_game_series.rb +5 -5
  79. data/lib/schema_org/mixins/video_object.rb +2 -2
  80. data/lib/schema_org/mixins/visual_artwork.rb +1 -1
  81. data/lib/schema_org/mixins/web_page.rb +2 -2
  82. data/lib/schema_org/mixins/write_action.rb +1 -1
  83. data/lib/schema_org/schema_version.rb +1 -1
  84. data/lib/schema_org/types/declaration_of_conformity.rb +35 -0
  85. data/lib/schema_org/types/digital_product_passport.rb +35 -0
  86. data/lib/schema_org/types/environmental_product_declaration.rb +35 -0
  87. data/lib/schema_org/types/interaction_counter.rb +9 -0
  88. data/lib/schema_org/types/it_nonprofit_type.rb +8 -2
  89. data/lib/schema_org/types/medical_specialty.rb +3 -1
  90. data/lib/schema_org/types/price_type_enumeration.rb +2 -1
  91. data/lib/schema_org/version.rb +1 -1
  92. data/sig/schema_org.rbs +1646 -204
  93. metadata +8 -2
@@ -28,7 +28,7 @@ module SchemaOrg
28
28
  external_ranges: [].freeze,
29
29
  inverse_of: nil,
30
30
  superseded_by: nil,
31
- supersedes: "actors"
31
+ supersedes: ["actors"].freeze
32
32
  }.freeze,
33
33
  aggregate_rating: {
34
34
  schema_name: "aggregateRating",
@@ -48,7 +48,7 @@ module SchemaOrg
48
48
  external_ranges: [].freeze,
49
49
  inverse_of: nil,
50
50
  superseded_by: nil,
51
- supersedes: "attendees"
51
+ supersedes: ["attendees"].freeze
52
52
  }.freeze,
53
53
  attendees: {
54
54
  schema_name: "attendees",
@@ -68,7 +68,7 @@ module SchemaOrg
68
68
  external_ranges: [].freeze,
69
69
  inverse_of: nil,
70
70
  superseded_by: nil,
71
- supersedes: "serviceAudience"
71
+ supersedes: ["serviceAudience"].freeze
72
72
  }.freeze,
73
73
  composer: {
74
74
  schema_name: "composer",
@@ -98,7 +98,7 @@ module SchemaOrg
98
98
  external_ranges: [].freeze,
99
99
  inverse_of: nil,
100
100
  superseded_by: nil,
101
- supersedes: "directors"
101
+ supersedes: ["directors"].freeze
102
102
  }.freeze,
103
103
  door_time: {
104
104
  schema_name: "doorTime",
@@ -208,7 +208,7 @@ module SchemaOrg
208
208
  external_ranges: [].freeze,
209
209
  inverse_of: nil,
210
210
  superseded_by: nil,
211
- supersedes: "language"
211
+ supersedes: ["language"].freeze
212
212
  }.freeze,
213
213
  is_accessible_for_free: {
214
214
  schema_name: "isAccessibleForFree",
@@ -218,7 +218,7 @@ module SchemaOrg
218
218
  external_ranges: [].freeze,
219
219
  inverse_of: nil,
220
220
  superseded_by: nil,
221
- supersedes: "free"
221
+ supersedes: ["free"].freeze
222
222
  }.freeze,
223
223
  keywords: {
224
224
  schema_name: "keywords",
@@ -298,7 +298,7 @@ module SchemaOrg
298
298
  external_ranges: [].freeze,
299
299
  inverse_of: nil,
300
300
  superseded_by: nil,
301
- supersedes: "performers"
301
+ supersedes: ["performers"].freeze
302
302
  }.freeze,
303
303
  performers: {
304
304
  schema_name: "performers",
@@ -348,7 +348,7 @@ module SchemaOrg
348
348
  external_ranges: [].freeze,
349
349
  inverse_of: nil,
350
350
  superseded_by: nil,
351
- supersedes: "reviews"
351
+ supersedes: ["reviews"].freeze
352
352
  }.freeze,
353
353
  sponsor: {
354
354
  schema_name: "sponsor",
@@ -378,7 +378,7 @@ module SchemaOrg
378
378
  external_ranges: [].freeze,
379
379
  inverse_of: "superEvent",
380
380
  superseded_by: nil,
381
- supersedes: "subEvents"
381
+ supersedes: ["subEvents"].freeze
382
382
  }.freeze,
383
383
  sub_events: {
384
384
  schema_name: "subEvents",
@@ -48,7 +48,7 @@ module SchemaOrg
48
48
  external_ranges: [].freeze,
49
49
  inverse_of: nil,
50
50
  superseded_by: nil,
51
- supersedes: "course"
51
+ supersedes: ["course"].freeze
52
52
  }.freeze,
53
53
  exercise_plan: {
54
54
  schema_name: "exercisePlan",
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "serviceArea"
21
+ supersedes: ["serviceArea"].freeze
22
22
  }.freeze,
23
23
  eligible_with_supplier: {
24
24
  schema_name: "eligibleWithSupplier",
@@ -88,7 +88,7 @@ module SchemaOrg
88
88
  external_ranges: [].freeze,
89
89
  inverse_of: nil,
90
90
  superseded_by: nil,
91
- supersedes: "carrier"
91
+ supersedes: ["carrier"].freeze
92
92
  }.freeze,
93
93
  publisher: {
94
94
  schema_name: "publisher",
@@ -148,7 +148,7 @@ module SchemaOrg
148
148
  external_ranges: [].freeze,
149
149
  inverse_of: nil,
150
150
  superseded_by: nil,
151
- supersedes: "vendor"
151
+ supersedes: ["merchant", "vendor"].freeze
152
152
  }.freeze,
153
153
  web_checkin_time: {
154
154
  schema_name: "webCheckinTime",
@@ -296,12 +296,14 @@ module SchemaOrg
296
296
  end
297
297
 
298
298
  # An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider.
299
+ # Supersedes `merchant`.
299
300
  # Supersedes `vendor`.
300
301
  def seller
301
302
  read_property(:seller)
302
303
  end
303
304
 
304
305
  # An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider.
306
+ # Supersedes `merchant`.
305
307
  # Supersedes `vendor`.
306
308
  def seller=(value)
307
309
  write_property(:seller, value)
@@ -28,7 +28,7 @@ module SchemaOrg
28
28
  external_ranges: [].freeze,
29
29
  inverse_of: nil,
30
30
  superseded_by: nil,
31
- supersedes: "menu"
31
+ supersedes: ["menu"].freeze
32
32
  }.freeze,
33
33
  menu: {
34
34
  schema_name: "menu",
@@ -28,7 +28,7 @@ module SchemaOrg
28
28
  external_ranges: [].freeze,
29
29
  inverse_of: nil,
30
30
  superseded_by: nil,
31
- supersedes: "contactPoints"
31
+ supersedes: ["contactPoints"].freeze
32
32
  }.freeze,
33
33
  health_plan_drug_option: {
34
34
  schema_name: "healthPlanDrugOption",
@@ -48,7 +48,7 @@ module SchemaOrg
48
48
  external_ranges: [].freeze,
49
49
  inverse_of: nil,
50
50
  superseded_by: nil,
51
- supersedes: "steps"
51
+ supersedes: ["steps"].freeze
52
52
  }.freeze,
53
53
  steps: {
54
54
  schema_name: "steps",
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "events"
21
+ supersedes: ["events"].freeze
22
22
  }.freeze
23
23
  }.freeze
24
24
  end
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "events"
21
+ supersedes: ["events"].freeze
22
22
  }.freeze
23
23
  }.freeze
24
24
  end
@@ -38,7 +38,7 @@ module SchemaOrg
38
38
  external_ranges: [].freeze,
39
39
  inverse_of: nil,
40
40
  superseded_by: nil,
41
- supersedes: "bookingAgent"
41
+ supersedes: ["bookingAgent"].freeze
42
42
  }.freeze,
43
43
  category: {
44
44
  schema_name: "category",
@@ -98,7 +98,7 @@ module SchemaOrg
98
98
  external_ranges: [].freeze,
99
99
  inverse_of: nil,
100
100
  superseded_by: nil,
101
- supersedes: "paymentDue"
101
+ supersedes: ["paymentDue"].freeze
102
102
  }.freeze,
103
103
  payment_method: {
104
104
  schema_name: "paymentMethod",
@@ -138,7 +138,7 @@ module SchemaOrg
138
138
  external_ranges: [].freeze,
139
139
  inverse_of: nil,
140
140
  superseded_by: nil,
141
- supersedes: "carrier"
141
+ supersedes: ["carrier"].freeze
142
142
  }.freeze,
143
143
  references_order: {
144
144
  schema_name: "referencesOrder",
@@ -168,7 +168,7 @@ module SchemaOrg
168
168
  external_ranges: [].freeze,
169
169
  inverse_of: nil,
170
170
  superseded_by: nil,
171
- supersedes: "incentives"
171
+ supersedes: ["incentives"].freeze
172
172
  }.freeze,
173
173
  incentives: {
174
174
  schema_name: "incentives",
@@ -198,7 +198,7 @@ module SchemaOrg
198
198
  external_ranges: [].freeze,
199
199
  inverse_of: nil,
200
200
  superseded_by: nil,
201
- supersedes: "benefits"
201
+ supersedes: ["benefits"].freeze
202
202
  }.freeze,
203
203
  job_duration: {
204
204
  schema_name: "jobDuration",
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "events"
21
+ supersedes: ["events"].freeze
22
22
  }.freeze
23
23
  }.freeze
24
24
  end
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "events"
21
+ supersedes: ["events"].freeze
22
22
  }.freeze
23
23
  }.freeze
24
24
  end
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "language"
21
+ supersedes: ["language"].freeze
22
22
  }.freeze,
23
23
  link_relationship: {
24
24
  schema_name: "linkRelationship",
@@ -28,7 +28,7 @@ module SchemaOrg
28
28
  external_ranges: [].freeze,
29
29
  inverse_of: nil,
30
30
  superseded_by: nil,
31
- supersedes: "serviceAudience"
31
+ supersedes: ["serviceAudience"].freeze
32
32
  }.freeze,
33
33
  available_language: {
34
34
  schema_name: "availableLanguage",
@@ -88,7 +88,7 @@ module SchemaOrg
88
88
  external_ranges: [].freeze,
89
89
  inverse_of: nil,
90
90
  superseded_by: nil,
91
- supersedes: "fileFormat"
91
+ supersedes: ["fileFormat"].freeze
92
92
  }.freeze,
93
93
  end_time: {
94
94
  schema_name: "endTime",
@@ -118,7 +118,7 @@ module SchemaOrg
118
118
  external_ranges: [].freeze,
119
119
  inverse_of: nil,
120
120
  superseded_by: nil,
121
- supersedes: "productReturnDays"
121
+ supersedes: ["productReturnDays"].freeze
122
122
  }.freeze,
123
123
  merchant_return_link: {
124
124
  schema_name: "merchantReturnLink",
@@ -128,7 +128,7 @@ module SchemaOrg
128
128
  external_ranges: [].freeze,
129
129
  inverse_of: nil,
130
130
  superseded_by: nil,
131
- supersedes: "productReturnLink"
131
+ supersedes: ["productReturnLink"].freeze
132
132
  }.freeze,
133
133
  refund_type: {
134
134
  schema_name: "refundType",
@@ -28,7 +28,7 @@ module SchemaOrg
28
28
  external_ranges: [].freeze,
29
29
  inverse_of: nil,
30
30
  superseded_by: nil,
31
- supersedes: "productReturnDays"
31
+ supersedes: ["productReturnDays"].freeze
32
32
  }.freeze,
33
33
  refund_type: {
34
34
  schema_name: "refundType",
@@ -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
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "actors"
21
+ supersedes: ["actors"].freeze
22
22
  }.freeze,
23
23
  actors: {
24
24
  schema_name: "actors",
@@ -48,7 +48,7 @@ module SchemaOrg
48
48
  external_ranges: [].freeze,
49
49
  inverse_of: nil,
50
50
  superseded_by: nil,
51
- supersedes: "directors"
51
+ supersedes: ["directors"].freeze
52
52
  }.freeze,
53
53
  directors: {
54
54
  schema_name: "directors",
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "actors"
21
+ supersedes: ["actors"].freeze
22
22
  }.freeze,
23
23
  actors: {
24
24
  schema_name: "actors",
@@ -38,7 +38,7 @@ module SchemaOrg
38
38
  external_ranges: [].freeze,
39
39
  inverse_of: nil,
40
40
  superseded_by: nil,
41
- supersedes: "directors"
41
+ supersedes: ["directors"].freeze
42
42
  }.freeze,
43
43
  directors: {
44
44
  schema_name: "directors",
@@ -18,7 +18,7 @@ module SchemaOrg
18
18
  external_ranges: [].freeze,
19
19
  inverse_of: nil,
20
20
  superseded_by: nil,
21
- supersedes: "albums"
21
+ supersedes: ["albums"].freeze
22
22
  }.freeze,
23
23
  albums: {
24
24
  schema_name: "albums",
@@ -58,7 +58,7 @@ module SchemaOrg
58
58
  external_ranges: [].freeze,
59
59
  inverse_of: nil,
60
60
  superseded_by: nil,
61
- supersedes: "tracks"
61
+ supersedes: ["tracks"].freeze
62
62
  }.freeze,
63
63
  tracks: {
64
64
  schema_name: "tracks",
@@ -28,7 +28,7 @@ module SchemaOrg
28
28
  external_ranges: [].freeze,
29
29
  inverse_of: nil,
30
30
  superseded_by: nil,
31
- supersedes: "tracks"
31
+ supersedes: ["tracks"].freeze
32
32
  }.freeze,
33
33
  tracks: {
34
34
  schema_name: "tracks",
@@ -68,7 +68,7 @@ module SchemaOrg
68
68
  external_ranges: [].freeze,
69
69
  inverse_of: nil,
70
70
  superseded_by: nil,
71
- supersedes: "serviceArea"
71
+ supersedes: ["serviceArea"].freeze
72
72
  }.freeze,
73
73
  asin: {
74
74
  schema_name: "asin",
@@ -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",
@@ -308,7 +318,7 @@ module SchemaOrg
308
318
  external_ranges: [].freeze,
309
319
  inverse_of: nil,
310
320
  superseded_by: nil,
311
- supersedes: "hasProductReturnPolicy"
321
+ supersedes: ["hasProductReturnPolicy"].freeze
312
322
  }.freeze,
313
323
  includes_object: {
314
324
  schema_name: "includesObject",
@@ -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",
@@ -458,7 +478,7 @@ module SchemaOrg
458
478
  external_ranges: [].freeze,
459
479
  inverse_of: nil,
460
480
  superseded_by: nil,
461
- supersedes: "reviews"
481
+ supersedes: ["reviews"].freeze
462
482
  }.freeze,
463
483
  reviews: {
464
484
  schema_name: "reviews",
@@ -478,7 +498,7 @@ module SchemaOrg
478
498
  external_ranges: [].freeze,
479
499
  inverse_of: nil,
480
500
  superseded_by: nil,
481
- supersedes: "vendor"
501
+ supersedes: ["merchant", "vendor"].freeze
482
502
  }.freeze,
483
503
  serial_number: {
484
504
  schema_name: "serialNumber",
@@ -548,7 +568,7 @@ module SchemaOrg
548
568
  external_ranges: [].freeze,
549
569
  inverse_of: nil,
550
570
  superseded_by: nil,
551
- supersedes: "warrantyPromise"
571
+ supersedes: ["warrantyPromise"].freeze
552
572
  }.freeze
553
573
  }.freeze
554
574
  end
@@ -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)
@@ -1050,12 +1090,14 @@ module SchemaOrg
1050
1090
  end
1051
1091
 
1052
1092
  # An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider.
1093
+ # Supersedes `merchant`.
1053
1094
  # Supersedes `vendor`.
1054
1095
  def seller
1055
1096
  read_property(:seller)
1056
1097
  end
1057
1098
 
1058
1099
  # An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider.
1100
+ # Supersedes `merchant`.
1059
1101
  # Supersedes `vendor`.
1060
1102
  def seller=(value)
1061
1103
  write_property(:seller, value)
@@ -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)
@@ -38,7 +38,7 @@ module SchemaOrg
38
38
  external_ranges: [].freeze,
39
39
  inverse_of: nil,
40
40
  superseded_by: nil,
41
- supersedes: "bookingAgent"
41
+ supersedes: ["bookingAgent"].freeze
42
42
  }.freeze,
43
43
  confirmation_number: {
44
44
  schema_name: "confirmationNumber",
@@ -188,7 +188,7 @@ module SchemaOrg
188
188
  external_ranges: [].freeze,
189
189
  inverse_of: nil,
190
190
  superseded_by: nil,
191
- supersedes: "paymentDue"
191
+ supersedes: ["paymentDue"].freeze
192
192
  }.freeze,
193
193
  payment_method: {
194
194
  schema_name: "paymentMethod",
@@ -228,7 +228,7 @@ module SchemaOrg
228
228
  external_ranges: [].freeze,
229
229
  inverse_of: nil,
230
230
  superseded_by: nil,
231
- supersedes: "vendor"
231
+ supersedes: ["merchant", "vendor"].freeze
232
232
  }.freeze
233
233
  }.freeze
234
234
  end
@@ -452,12 +452,14 @@ module SchemaOrg
452
452
  end
453
453
 
454
454
  # An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider.
455
+ # Supersedes `merchant`.
455
456
  # Supersedes `vendor`.
456
457
  def seller
457
458
  read_property(:seller)
458
459
  end
459
460
 
460
461
  # An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider.
462
+ # Supersedes `merchant`.
461
463
  # Supersedes `vendor`.
462
464
  def seller=(value)
463
465
  write_property(:seller, value)