@tracepass/dpp-schemas 1.10.6 → 1.10.7

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.
package/README.md CHANGED
@@ -40,7 +40,7 @@ this repository contains.
40
40
  ## What's in here
41
41
 
42
42
  Thirteen JSON files, one per product category. **987 fields in total. 65 are required by
43
- a law that creates a passport; 223 are anticipated under a rule that has not yet been adopted.**
43
+ a law that creates a passport; 176 are anticipated under a rule that has not yet been adopted.**
44
44
  Every other legal duty (on the product, the label, a safety data sheet, a document) is
45
45
  recorded per field in `regulationRef.obligations` instead of being marked required.
46
46
 
@@ -80,6 +80,19 @@ flows through a delegated act adopted under its Article 4. No product-group dele
80
80
  has been adopted. Fields expected under a future act carry `validation.anticipated`
81
81
  rather than `required`, with the CELEX of the instrument expected to impose them.
82
82
 
83
+ **`anticipated` needs a concrete basis.** Either an act in force requires the data but when
84
+ or how it applies waits on a further act that isn't adopted, so there's no fixed date (the
85
+ battery carbon-footprint fields waiting on their delegated act); or the Commission has
86
+ scheduled an act for the product group. An act in force that compels the data from a fixed
87
+ date, even a future one, makes the field `required` (the battery, detergents and toy
88
+ passports). The ESPR working plan COM(2025) 187 schedules textiles, furniture, tyres,
89
+ mattresses, iron and steel, aluminium, and horizontal requirements for electrical and
90
+ electronic equipment. Where a group is covered only by horizontal acts for specific aspects (electronics:
91
+ repairability, recycled content and recyclability), only the passport mechanics and fields
92
+ within those aspects are anticipated. That ESPR *could* reach a product doesn't qualify. The working plan
93
+ leaves detergents, paints and lubricants out, so those templates carry no ESPR-anticipated
94
+ fields; their passport duties come from their own acts, where one exists.
95
+
83
96
  **An obligation does not always apply uniformly across a category.** Where the governing
84
97
  instrument distinguishes sub-categories, the field carries `validation.requiredBy` — a map
85
98
  from sub-category to `required`, `conditional`, or `notApplicable`. Battery uses the
package/index.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "categories": 13,
10
10
  "fields": 987,
11
11
  "requiredFields": 65,
12
- "anticipatedFields": 223
12
+ "anticipatedFields": 176
13
13
  },
14
14
  "categories": [
15
15
  {
@@ -19,7 +19,7 @@
19
19
  "version": 5,
20
20
  "fieldCount": 120,
21
21
  "requiredFieldCount": 38,
22
- "anticipatedFieldCount": 16,
22
+ "anticipatedFieldCount": 15,
23
23
  "regulation": {
24
24
  "name": "EU Battery Regulation",
25
25
  "number": "(EU) 2023/1542",
@@ -53,7 +53,7 @@
53
53
  "version": 1,
54
54
  "fieldCount": 76,
55
55
  "requiredFieldCount": 12,
56
- "anticipatedFieldCount": 10,
56
+ "anticipatedFieldCount": 4,
57
57
  "regulation": {
58
58
  "name": "Detergents Regulation",
59
59
  "number": "(EU) 2026/405",
@@ -69,7 +69,7 @@
69
69
  "version": 2,
70
70
  "fieldCount": 160,
71
71
  "requiredFieldCount": 0,
72
- "anticipatedFieldCount": 19,
72
+ "anticipatedFieldCount": 13,
73
73
  "regulation": {
74
74
  "name": "EU ESPR - Electronics",
75
75
  "number": "(EU) 2024/1781",
@@ -87,7 +87,7 @@
87
87
  "version": 2,
88
88
  "fieldCount": 42,
89
89
  "requiredFieldCount": 0,
90
- "anticipatedFieldCount": 6,
90
+ "anticipatedFieldCount": 3,
91
91
  "regulation": {
92
92
  "name": "EU ESPR - FMCG",
93
93
  "number": "(EU) 2024/1781",
@@ -123,7 +123,7 @@
123
123
  "version": 2,
124
124
  "fieldCount": 53,
125
125
  "requiredFieldCount": 0,
126
- "anticipatedFieldCount": 10,
126
+ "anticipatedFieldCount": 0,
127
127
  "regulation": {
128
128
  "name": "EU ESPR - Jewelry",
129
129
  "number": "(EU) 2024/1781",
@@ -141,7 +141,7 @@
141
141
  "version": 2,
142
142
  "fieldCount": 64,
143
143
  "requiredFieldCount": 0,
144
- "anticipatedFieldCount": 29,
144
+ "anticipatedFieldCount": 28,
145
145
  "regulation": {
146
146
  "name": "Packaging and Packaging Waste Regulation",
147
147
  "number": "(EU) 2025/40",
@@ -159,7 +159,7 @@
159
159
  "version": 1,
160
160
  "fieldCount": 65,
161
161
  "requiredFieldCount": 0,
162
- "anticipatedFieldCount": 12,
162
+ "anticipatedFieldCount": 0,
163
163
  "regulation": {
164
164
  "name": "Decopaint Directive",
165
165
  "number": "2004/42/EC",
@@ -175,7 +175,7 @@
175
175
  "version": 2,
176
176
  "fieldCount": 84,
177
177
  "requiredFieldCount": 0,
178
- "anticipatedFieldCount": 27,
178
+ "anticipatedFieldCount": 26,
179
179
  "regulation": {
180
180
  "name": "EU ESPR - Iron, Steel & Aluminium",
181
181
  "number": "(EU) 2024/1781",
@@ -211,7 +211,7 @@
211
211
  "version": 2,
212
212
  "fieldCount": 42,
213
213
  "requiredFieldCount": 15,
214
- "anticipatedFieldCount": 7,
214
+ "anticipatedFieldCount": 0,
215
215
  "regulation": {
216
216
  "name": "Toy Safety Regulation",
217
217
  "number": "(EU) 2025/2509",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tracepass/dpp-schemas",
3
- "version": "1.10.6",
3
+ "version": "1.10.7",
4
4
  "description": "Machine-readable field specifications for EU Digital Product Passports (ESPR) — 13 product categories, 987 fields, each traced to the article of EU law that mandates it. Pure JSON, no dependencies.",
5
5
  "keywords": [
6
6
  "digital-product-passport",
package/schema.json CHANGED
@@ -414,11 +414,11 @@
414
414
  },
415
415
  "anticipated": {
416
416
  "type": "boolean",
417
- "description": "A named future instrument is expected to require this data, and none in force does. Does not block publishing. Never set alongside `required: true`."
417
+ "description": "A named future instrument is expected to require this data, and none in force does. Expected means one of two things: (1) an act IN FORCE requires the data, but when or how it applies waits on a further act (a delegated or implementing act) that has not been adopted, so there is no fixed date (an act in force that compels the data from a fixed date, even a future one, makes the field `required`); or (2) the Commission has SCHEDULED an act covering this product group, in the ESPR working plan or by a legal deadline in a regulation. That an empowering framework such as ESPR could in principle reach the product does not qualify. Does not block publishing. Never set alongside `required: true`."
418
418
  },
419
419
  "anticipatedUnder": {
420
420
  "type": "string",
421
- "description": "CELEX id of the instrument expected to impose it, e.g. \"32024R1781\"."
421
+ "description": "CELEX id of the instrument expected to impose it: the adopted act in case (1), or the empowering instrument whose scheduled act will (e.g. \"32024R1781\" for a product group in the ESPR working plan) in case (2)."
422
422
  },
423
423
  "anticipatedNote": {
424
424
  "type": "string",
@@ -2417,7 +2417,8 @@
2417
2417
  "maxLength": 2048,
2418
2418
  "pattern": null,
2419
2419
  "anticipated": true,
2420
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
2420
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
2421
+ "anticipatedUnder": "32023R1542"
2421
2422
  },
2422
2423
  "category": "labels_markings",
2423
2424
  "categoryLabel": {
@@ -2449,9 +2450,9 @@
2449
2450
  "sortOrder": 17,
2450
2451
  "defaultAccessLevel": "public",
2451
2452
  "regulationRef": {
2452
- "article": "Battery Regulation Art. 7(3)",
2453
+ "article": "Battery Regulation Art. 7(2)",
2453
2454
  "instrument": "32023R1542",
2454
- "provision": "Art. 7(3)",
2455
+ "provision": "Art. 7(2)",
2455
2456
  "kind": "legislation",
2456
2457
  "description": "Art. 7(1) requires a carbon footprint declaration and Annex XIII 1(c) carries that information into the passport, but the declaration's format and the calculation methodology come from a delegated act that is not adopted. The label form in particular does not yet exist to be produced."
2457
2458
  },
@@ -3035,7 +3036,8 @@
3035
3036
  "maxLength": null,
3036
3037
  "pattern": null,
3037
3038
  "anticipated": true,
3038
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3039
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3040
+ "anticipatedUnder": "32023R1542"
3039
3041
  },
3040
3042
  "category": "carbon_footprint",
3041
3043
  "categoryLabel": {
@@ -3153,7 +3155,8 @@
3153
3155
  "maxLength": null,
3154
3156
  "pattern": null,
3155
3157
  "anticipated": true,
3156
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3158
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3159
+ "anticipatedUnder": "32023R1542"
3157
3160
  },
3158
3161
  "category": "carbon_footprint",
3159
3162
  "categoryLabel": {
@@ -3270,7 +3273,8 @@
3270
3273
  "maxLength": null,
3271
3274
  "pattern": null,
3272
3275
  "anticipated": true,
3273
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3276
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3277
+ "anticipatedUnder": "32023R1542"
3274
3278
  },
3275
3279
  "category": "carbon_footprint",
3276
3280
  "categoryLabel": {
@@ -3386,7 +3390,8 @@
3386
3390
  "maxLength": null,
3387
3391
  "pattern": null,
3388
3392
  "anticipated": true,
3389
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3393
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3394
+ "anticipatedUnder": "32023R1542"
3390
3395
  },
3391
3396
  "category": "carbon_footprint",
3392
3397
  "categoryLabel": {
@@ -3503,7 +3508,8 @@
3503
3508
  "maxLength": null,
3504
3509
  "pattern": null,
3505
3510
  "anticipated": true,
3506
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3511
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3512
+ "anticipatedUnder": "32023R1542"
3507
3513
  },
3508
3514
  "category": "carbon_footprint",
3509
3515
  "categoryLabel": {
@@ -3824,7 +3830,8 @@
3824
3830
  "maxLength": null,
3825
3831
  "pattern": null,
3826
3832
  "anticipated": true,
3827
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3833
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3834
+ "anticipatedUnder": "32023R1542"
3828
3835
  },
3829
3836
  "category": "carbon_footprint",
3830
3837
  "categoryLabel": {
@@ -3942,7 +3949,8 @@
3942
3949
  "maxLength": 2048,
3943
3950
  "pattern": "^https?://.*$",
3944
3951
  "anticipated": true,
3945
- "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted."
3952
+ "anticipatedNote": "Carbon footprint declaration format pending the implementing act (DP 17/18). Required when the implementing act is adopted.",
3953
+ "anticipatedUnder": "32023R1542"
3946
3954
  },
3947
3955
  "category": "carbon_footprint",
3948
3956
  "categoryLabel": {
@@ -3974,11 +3982,11 @@
3974
3982
  "sortOrder": 28,
3975
3983
  "defaultAccessLevel": "public",
3976
3984
  "regulationRef": {
3977
- "article": "Battery Regulation Art. 7(1)",
3985
+ "article": "Battery Regulation Art. 7(1)(g)",
3978
3986
  "instrument": "32023R1542",
3979
- "provision": "Art. 7(1)",
3987
+ "provision": "Art. 7(1)(g)",
3980
3988
  "kind": "legislation",
3981
- "description": "The supporting study is the evidence behind the Art. 7(1) declaration rather than a declared Annex XIII item. Publishing a link is voluntary transparency."
3989
+ "description": "Art. 7(1)(g) puts a web link to the public version of the study supporting the carbon footprint values into the carbon footprint declaration, which Annex XIII 1(c) carries into the passport; the declaration's methodology and format await acts that are not adopted."
3982
3990
  },
3983
3991
  "aiHints": {
3984
3992
  "alternateNames": [
@@ -4058,7 +4066,8 @@
4058
4066
  "maxLength": 2048,
4059
4067
  "pattern": "^https?://.*$",
4060
4068
  "anticipated": true,
4061
- "anticipatedNote": "DG GROW guidance v2.0 (15 Aug 2026), DP 19: not to be filled/displayed as of February 2027; required from August 2027 as provided in Art. 48(1) (due-diligence obligations postponed by Regulation (EU) 2025/1561)."
4069
+ "anticipatedNote": "DG GROW guidance v2.0 (15 Aug 2026), DP 19: not to be filled/displayed as of February 2027; required from August 2027 as provided in Art. 48(1) (due-diligence obligations postponed by Regulation (EU) 2025/1561).",
4070
+ "anticipatedUnder": "32023R1542"
4062
4071
  },
4063
4072
  "category": "supply_chain",
4064
4073
  "categoryLabel": {
@@ -4095,7 +4104,7 @@
4095
4104
  "instrument": "32023R1542",
4096
4105
  "provision": "Annex XIII 1(d)",
4097
4106
  "kind": "legislation",
4098
- "description": "Annex XIII 1(d) makes the Art. 52(3) due diligence report passport content, so this is genuine passport data — but Art. 52 applies from 18 Aug 2027 and the report is due in the passport from Aug 2028, later than the passport itself."
4107
+ "description": "Annex XIII 1(d) makes the Art. 52(3) due diligence report passport content, so this is genuine passport data — but the due diligence obligations apply from 18 Aug 2027 (Art. 48(1) as amended by Reg. (EU) 2025/1561), and the Commission's data-points guidance v2.0 (DP 19) puts the report in the passport from Aug 2028, later than the passport itself."
4099
4108
  },
4100
4109
  "aiHints": {
4101
4110
  "alternateNames": [
@@ -4173,9 +4182,7 @@
4173
4182
  "max": null,
4174
4183
  "minLength": null,
4175
4184
  "maxLength": 2048,
4176
- "pattern": "^https?://.*$",
4177
- "anticipated": true,
4178
- "anticipatedNote": "DG GROW guidance v2.0 (15 Aug 2026), DP 19: not to be filled/displayed as of February 2027; required from August 2027 as provided in Art. 48(1) (due-diligence obligations postponed by Regulation (EU) 2025/1561)."
4185
+ "pattern": "^https?://.*$"
4179
4186
  },
4180
4187
  "category": "supply_chain",
4181
4188
  "categoryLabel": {
@@ -4291,7 +4298,8 @@
4291
4298
  "maxLength": 2048,
4292
4299
  "pattern": "^https?://.*$",
4293
4300
  "anticipated": true,
4294
- "anticipatedNote": "DG GROW guidance v2.0 (15 Aug 2026), DP 19: not to be filled/displayed as of February 2027; required from August 2027 as provided in Art. 48(1) (due-diligence obligations postponed by Regulation (EU) 2025/1561)."
4301
+ "anticipatedNote": "DG GROW guidance v2.0 (15 Aug 2026), DP 19: not to be filled/displayed as of February 2027; required from August 2027 as provided in Art. 48(1) (due-diligence obligations postponed by Regulation (EU) 2025/1561).",
4302
+ "anticipatedUnder": "32023R1542"
4295
4303
  },
4296
4304
  "category": "supply_chain",
4297
4305
  "categoryLabel": {
@@ -5289,7 +5297,8 @@
5289
5297
  "maxLength": null,
5290
5298
  "pattern": null,
5291
5299
  "anticipated": true,
5292
- "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies."
5300
+ "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies.",
5301
+ "anticipatedUnder": "32023R1542"
5293
5302
  },
5294
5303
  "category": "end_of_life",
5295
5304
  "categoryLabel": {
@@ -5405,7 +5414,8 @@
5405
5414
  "maxLength": null,
5406
5415
  "pattern": null,
5407
5416
  "anticipated": true,
5408
- "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies."
5417
+ "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies.",
5418
+ "anticipatedUnder": "32023R1542"
5409
5419
  },
5410
5420
  "category": "end_of_life",
5411
5421
  "categoryLabel": {
@@ -5521,7 +5531,8 @@
5521
5531
  "maxLength": null,
5522
5532
  "pattern": null,
5523
5533
  "anticipated": true,
5524
- "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies."
5534
+ "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies.",
5535
+ "anticipatedUnder": "32023R1542"
5525
5536
  },
5526
5537
  "category": "end_of_life",
5527
5538
  "categoryLabel": {
@@ -5637,7 +5648,8 @@
5637
5648
  "maxLength": null,
5638
5649
  "pattern": null,
5639
5650
  "anticipated": true,
5640
- "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies."
5651
+ "anticipatedNote": "DG GROW guidance 'Digital Batteries Passport - data points by category' v2.0 (15 Aug 2026), DP 20-23: not to be filled/displayed as of February 2027; to be applied in line with Art. 8 and the relevant delegated act (recycled-content calculation/verification methodology, not adopted). Required when that act applies.",
5652
+ "anticipatedUnder": "32023R1542"
5641
5653
  },
5642
5654
  "category": "end_of_life",
5643
5655
  "categoryLabel": {
@@ -6617,7 +6629,8 @@
6617
6629
  "maxLength": 2048,
6618
6630
  "pattern": "^https?://.*$",
6619
6631
  "anticipated": true,
6620
- "anticipatedNote": "Evidence for the Annex XIII 1(e) recycled-content shares, which guidance v2.0 (DP 20-23) says are not to be filled/displayed as of February 2027 pending the Art. 8 delegated act. Required when those shares become required."
6632
+ "anticipatedNote": "Evidence for the Annex XIII 1(e) recycled-content shares, which guidance v2.0 (DP 20-23) says are not to be filled/displayed as of February 2027 pending the Art. 8 delegated act. Required when those shares become required.",
6633
+ "anticipatedUnder": "32023R1542"
6621
6634
  },
6622
6635
  "category": "end_of_life",
6623
6636
  "categoryLabel": {