@bsv/dpp-profiles 0.3.0-beta.1 → 0.3.0-beta.2

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.
@@ -0,0 +1,2888 @@
1
+ {
2
+ "manifestVersion": "2",
3
+ "kind": "industry",
4
+ "baseline": "native-baseline@2",
5
+ "roles": [
6
+ "passport-writer",
7
+ "attestation-issuer",
8
+ "registry",
9
+ "passport-reader"
10
+ ],
11
+ "schemaDialect": "https://json-schema.org/draft/2020-12/schema",
12
+ "accessPolicyRef": "spec/record-model.md#7-the-owner-tier-binding",
13
+ "accessTiers": [
14
+ {
15
+ "id": "public",
16
+ "description": "Anyone with the identifier.",
17
+ "storage": "on-chain public payload"
18
+ },
19
+ {
20
+ "id": "owner",
21
+ "description": "The current holder, travelling with possession rather than with an authorisation.",
22
+ "storage": "off-chain encrypted"
23
+ },
24
+ {
25
+ "id": "legitimate",
26
+ "description": "Persons with a legitimate interest, the Batteries Regulation Article 77(2) group generalised.",
27
+ "storage": "off-chain encrypted"
28
+ },
29
+ {
30
+ "id": "authority",
31
+ "description": "Notified bodies, market surveillance and other authorities.",
32
+ "storage": "off-chain encrypted"
33
+ }
34
+ ],
35
+ "extends": null,
36
+ "id": "textile",
37
+ "version": 4,
38
+ "profile": "textile@4",
39
+ "status": "draft",
40
+ "title": "Textile passport",
41
+ "description": "An explicit draft successor to textile@3 correcting the distinction between existing fibre-labelling duties, consumer-claim rules, application fields and future textile passport requirements. Component composition is assessed under Article 11. The revision does not establish full product qualification or a completed standards assessment; historical profile bytes remain unchanged.",
42
+ "regulatoryLine": "Mapped to existing textile labelling and consumer-information sources, with textile-specific ESPR passport requirements still anticipated and source/application assessments explicit.",
43
+ "applicability": {
44
+ "categories": [
45
+ {
46
+ "value": "apparel",
47
+ "label": "Clothing"
48
+ },
49
+ {
50
+ "value": "footwear",
51
+ "label": "Footwear"
52
+ },
53
+ {
54
+ "value": "home",
55
+ "label": "Home textile"
56
+ },
57
+ {
58
+ "value": "accessory",
59
+ "label": "Accessory"
60
+ }
61
+ ],
62
+ "categoryKey": "category",
63
+ "jurisdictions": [
64
+ "EU"
65
+ ],
66
+ "statements": [
67
+ {
68
+ "text": "Regulation (EU) 1007/2011 on textile fibre names and labelling is in force and is the source of the fibre composition and animal-origin declarations.",
69
+ "status": "enacted",
70
+ "source": "eu-1007-2011"
71
+ },
72
+ {
73
+ "text": "The ESPR delegated act for textiles has not been adopted; fields whose permitted form waits on it say so and state no list or pattern.",
74
+ "status": "anticipated",
75
+ "source": "eu-espr"
76
+ },
77
+ {
78
+ "text": "The Commission's textile and apparel product passport page, retrieved 6 September 2026, gives the textile delegated act an indicative adoption in the fourth quarter of 2027; every ESPR parameter field is anticipated until it is adopted, and its permitted form is not guessed.",
79
+ "status": "anticipated",
80
+ "source": "ec-textile-apparel-page"
81
+ },
82
+ {
83
+ "text": "This profile's alignment with the draft data requirements is under review.",
84
+ "status": "needs-review"
85
+ },
86
+ {
87
+ "text": "Existing labelling and consumer-claim rules do not prescribe every application field. Component composition follows Article 11 of Regulation (EU) 1007/2011. Consumer-directive measures apply from 27 September 2026 subject to national transposition and their specific conditions.",
88
+ "status": "enacted",
89
+ "source": "eu-2024-825",
90
+ "effectiveDate": "2026-09-27"
91
+ }
92
+ ]
93
+ },
94
+ "schemaUri": "generated/payload-schema/textile@4.public.schema.json",
95
+ "schemaDigest": "b6d4e29dabcd54e2d748ddfbef5192d00beca6521a239cec274fdad7f9ab2a2d",
96
+ "restrictedSchemaUri": "generated/payload-schema/textile@4.restricted.schema.json",
97
+ "restrictedSchemaDigest": "335811f7845bee8a5c4e975080655aeaff9e8ea286a7de2ee5140cc89e9b5881",
98
+ "contextRefs": [],
99
+ "stamps": [
100
+ {
101
+ "key": "notice",
102
+ "description": "The sample marker a demonstration record carries first; never product data.",
103
+ "valueType": "text"
104
+ },
105
+ {
106
+ "key": "profile",
107
+ "description": "The profile identifier the payload declares.",
108
+ "valueType": "id",
109
+ "const": "textile"
110
+ },
111
+ {
112
+ "key": "profile_version",
113
+ "description": "The profile version the payload declares; a reader decodes under it and never under a newer one.",
114
+ "valueType": "integer",
115
+ "const": 4
116
+ },
117
+ {
118
+ "key": "object_did",
119
+ "description": "An optional physical-object DID carried in the public payload; carrying it does not implement physical binding.",
120
+ "valueType": "id"
121
+ },
122
+ {
123
+ "key": "dataCarrier",
124
+ "description": "The data-carrier identifier (chip UID) the lookup service indexes beside the passport identifier.",
125
+ "valueType": "id"
126
+ }
127
+ ],
128
+ "fields": [
129
+ {
130
+ "key": "name",
131
+ "pointer": "/name",
132
+ "label": "Product name",
133
+ "valueType": "text",
134
+ "cardinality": "one",
135
+ "granularity": "model",
136
+ "provenance": {
137
+ "capture": "form",
138
+ "prose": true,
139
+ "onLabel": true
140
+ },
141
+ "accessTier": "public",
142
+ "obligation": "required",
143
+ "legalBasis": "ESPR framework Articles 4 and 9 and Annex III; textile-specific passport requirement anticipated",
144
+ "applicability": {
145
+ "rule": "always"
146
+ },
147
+ "requirement": {
148
+ "status": "anticipated",
149
+ "source": "eu-espr",
150
+ "clause": "Annex III(a)",
151
+ "note": "The framework does not by itself make this particular textile passport field mandatory. Its sector-specific requirement and granularity await the applicable delegated act; other product obligations need separate review."
152
+ },
153
+ "supersedes": "name",
154
+ "group": "identification",
155
+ "note": "The name the brand sells it under, written by a person for a person."
156
+ },
157
+ {
158
+ "key": "category",
159
+ "pointer": "/category",
160
+ "label": "Kind of product",
161
+ "valueType": "enum",
162
+ "codeList": {
163
+ "closed": false,
164
+ "options": [
165
+ {
166
+ "value": "apparel",
167
+ "label": "Clothing"
168
+ },
169
+ {
170
+ "value": "footwear",
171
+ "label": "Footwear"
172
+ },
173
+ {
174
+ "value": "home",
175
+ "label": "Home textile"
176
+ },
177
+ {
178
+ "value": "accessory",
179
+ "label": "Accessory"
180
+ }
181
+ ]
182
+ },
183
+ "cardinality": "one",
184
+ "granularity": "model",
185
+ "provenance": {
186
+ "capture": "form"
187
+ },
188
+ "accessTier": "public",
189
+ "obligation": "required",
190
+ "legalBasis": "ESPR framework Articles 4 and 9 and Annex III; textile-specific passport requirement anticipated",
191
+ "applicability": {
192
+ "rule": "always"
193
+ },
194
+ "requirement": {
195
+ "status": "anticipated",
196
+ "source": "eu-espr",
197
+ "clause": "Article 4",
198
+ "note": "The framework does not by itself make this particular textile passport field mandatory. Its sector-specific requirement and granularity await the applicable delegated act; other product obligations need separate review."
199
+ },
200
+ "group": "identification",
201
+ "note": "Open: ESPR scope for textiles is set by the delegated act, so a closed list would be our guess wearing the regulation’s clothes."
202
+ },
203
+ {
204
+ "key": "modelIdentifier",
205
+ "pointer": "/modelIdentifier",
206
+ "label": "Model or style reference",
207
+ "valueType": "id",
208
+ "constraints": {
209
+ "maxLength": 64
210
+ },
211
+ "cardinality": "one",
212
+ "granularity": "model",
213
+ "provenance": {
214
+ "capture": "form"
215
+ },
216
+ "accessTier": "public",
217
+ "obligation": "required",
218
+ "legalBasis": "ESPR framework Articles 4 and 9 and Annex III; textile-specific passport requirement anticipated",
219
+ "applicability": {
220
+ "rule": "always"
221
+ },
222
+ "requirement": {
223
+ "status": "anticipated",
224
+ "source": "eu-espr",
225
+ "clause": "Annex III(b)",
226
+ "note": "The framework does not by itself make this particular textile passport field mandatory. Its sector-specific requirement and granularity await the applicable delegated act; other product obligations need separate review."
227
+ },
228
+ "group": "identification"
229
+ },
230
+ {
231
+ "key": "batch",
232
+ "pointer": "/batch",
233
+ "label": "Batch",
234
+ "valueType": "id",
235
+ "constraints": {
236
+ "maxLength": 64
237
+ },
238
+ "cardinality": "one",
239
+ "granularity": "batch",
240
+ "provenance": {
241
+ "capture": "form"
242
+ },
243
+ "accessTier": "public",
244
+ "obligation": "required",
245
+ "legalBasis": "ESPR framework Articles 4 and 9 and Annex III; textile-specific passport requirement anticipated",
246
+ "applicability": {
247
+ "rule": "always"
248
+ },
249
+ "requirement": {
250
+ "status": "anticipated",
251
+ "source": "eu-espr",
252
+ "clause": "Annex III(b); Regulation (EU) 1007/2011",
253
+ "note": "The framework does not by itself make this particular textile passport field mandatory. Its sector-specific requirement and granularity await the applicable delegated act; other product obligations need separate review."
254
+ },
255
+ "supersedes": "batch",
256
+ "group": "identification"
257
+ },
258
+ {
259
+ "key": "gtin",
260
+ "pointer": "/gtin",
261
+ "label": "Article number (GTIN)",
262
+ "valueType": "id",
263
+ "constraints": {
264
+ "pattern": "^\\d{8}$|^\\d{12,14}$",
265
+ "patternHint": "8, 12, 13 or 14 digits"
266
+ },
267
+ "cardinality": "one",
268
+ "granularity": "model",
269
+ "provenance": {
270
+ "capture": "form"
271
+ },
272
+ "accessTier": "public",
273
+ "obligation": "recommended",
274
+ "legalBasis": "ESPR Annex III(c): commodity and trade item codes where they exist",
275
+ "applicability": {
276
+ "rule": "always"
277
+ },
278
+ "requirement": {
279
+ "status": "anticipated",
280
+ "source": "eu-espr",
281
+ "clause": "Annex III(c)",
282
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
283
+ },
284
+ "group": "identification"
285
+ },
286
+ {
287
+ "key": "manufacturer",
288
+ "pointer": "/manufacturer",
289
+ "label": "Brand name",
290
+ "valueType": "text",
291
+ "cardinality": "one",
292
+ "granularity": "model",
293
+ "provenance": {
294
+ "capture": "brand",
295
+ "prose": true,
296
+ "onLabel": true
297
+ },
298
+ "accessTier": "public",
299
+ "obligation": "required",
300
+ "legalBasis": "Application field; Article 15 allocates labelling responsibilities; it does not establish this standalone passport brand-name field. Identify the responsible manufacturer separately.",
301
+ "applicability": {
302
+ "rule": "always"
303
+ },
304
+ "requirement": {
305
+ "status": "none",
306
+ "source": "profile addition",
307
+ "note": "Article 15 allocates labelling responsibilities; it does not establish this standalone passport brand-name field. Identify the responsible manufacturer separately."
308
+ },
309
+ "supersedes": "manufacturer",
310
+ "group": "identification",
311
+ "note": "Article 15 allocates labelling responsibilities; it does not establish this standalone passport brand-name field. Identify the responsible manufacturer separately."
312
+ },
313
+ {
314
+ "key": "manufacturerContact",
315
+ "pointer": "/manufacturerContact",
316
+ "label": "Brand contact",
317
+ "valueType": "text",
318
+ "cardinality": "one",
319
+ "granularity": "model",
320
+ "provenance": {
321
+ "capture": "brand",
322
+ "prose": true
323
+ },
324
+ "accessTier": "public",
325
+ "obligation": "required",
326
+ "legalBasis": "ESPR framework Articles 4 and 9 and Annex III; textile-specific passport requirement anticipated",
327
+ "applicability": {
328
+ "rule": "always"
329
+ },
330
+ "requirement": {
331
+ "status": "anticipated",
332
+ "source": "eu-espr",
333
+ "clause": "Annex III(e)",
334
+ "note": "The framework does not by itself make this particular textile passport field mandatory. Its sector-specific requirement and granularity await the applicable delegated act; other product obligations need separate review."
335
+ },
336
+ "supersedes": "manufacturerContact",
337
+ "group": "identification",
338
+ "note": "An email, a postal address or a page. Constraining it to one shape would exclude the others."
339
+ },
340
+ {
341
+ "key": "operatorId",
342
+ "pointer": "/operatorId",
343
+ "label": "EU operator identifier",
344
+ "valueType": "id",
345
+ "cardinality": "one",
346
+ "granularity": "model",
347
+ "provenance": {
348
+ "capture": "deferred"
349
+ },
350
+ "accessTier": "public",
351
+ "obligation": "recommended",
352
+ "legalBasis": "ESPR Annex III(e)",
353
+ "applicability": {
354
+ "rule": "always"
355
+ },
356
+ "requirement": {
357
+ "status": "anticipated",
358
+ "source": "eu-espr",
359
+ "clause": "Annex III(e)",
360
+ "note": "waits on the implementing act on unique operator identifiers"
361
+ },
362
+ "awaitingAct": "the ESPR implementing act on unique operator identifiers",
363
+ "group": "identification",
364
+ "note": "Declared and not captured: the identifier scheme does not exist yet, so an empty box would invite a made-up value."
365
+ },
366
+ {
367
+ "key": "manufacturingPlace",
368
+ "pointer": "/manufacturingPlace",
369
+ "label": "Where it was made",
370
+ "valueType": "record",
371
+ "cardinality": "one",
372
+ "granularity": "model",
373
+ "provenance": {
374
+ "capture": "form"
375
+ },
376
+ "accessTier": "public",
377
+ "obligation": "required",
378
+ "legalBasis": "Application field; Article 16 of Regulation (EU) 1007/2011 concerns presentation and language of fibre information; it does not establish this origin field. Other origin obligations require their own assessment.",
379
+ "applicability": {
380
+ "rule": "always"
381
+ },
382
+ "requirement": {
383
+ "status": "none",
384
+ "source": "profile addition",
385
+ "note": "Article 16 of Regulation (EU) 1007/2011 concerns presentation and language of fibre information; it does not establish this origin field. Other origin obligations require their own assessment."
386
+ },
387
+ "supersedes": "origin",
388
+ "group": "identification",
389
+ "parts": [
390
+ {
391
+ "key": "city",
392
+ "label": "Town or city",
393
+ "valueType": "text",
394
+ "required": true
395
+ },
396
+ {
397
+ "key": "country",
398
+ "label": "Country",
399
+ "valueType": "country",
400
+ "constraints": {
401
+ "pattern": "^[A-Z]{2}$",
402
+ "patternHint": "a two-letter country code"
403
+ },
404
+ "required": true
405
+ }
406
+ ],
407
+ "note": "Article 16 of Regulation (EU) 1007/2011 concerns presentation and language of fibre information; it does not establish this origin field. Other origin obligations require their own assessment."
408
+ },
409
+ {
410
+ "key": "made",
411
+ "pointer": "/made",
412
+ "label": "Made",
413
+ "valueType": "monthYear",
414
+ "cardinality": "one",
415
+ "granularity": "batch",
416
+ "provenance": {
417
+ "capture": "form"
418
+ },
419
+ "accessTier": "public",
420
+ "obligation": "recommended",
421
+ "legalBasis": "ESPR Annex I(a): a durability claim is meaningless without a start date",
422
+ "applicability": {
423
+ "rule": "always"
424
+ },
425
+ "requirement": {
426
+ "status": "anticipated",
427
+ "source": "eu-espr",
428
+ "clause": "Annex I(a)",
429
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
430
+ },
431
+ "group": "identification",
432
+ "precision": "month"
433
+ },
434
+ {
435
+ "key": "colour",
436
+ "pointer": "/colour",
437
+ "label": "Colour",
438
+ "valueType": "text",
439
+ "constraints": {
440
+ "maxLength": 60
441
+ },
442
+ "cardinality": "one",
443
+ "granularity": "model",
444
+ "provenance": {
445
+ "capture": "form",
446
+ "prose": true
447
+ },
448
+ "accessTier": "public",
449
+ "obligation": "recommended",
450
+ "legalBasis": "Nothing requires this. It identifies the item to the person holding it.",
451
+ "applicability": {
452
+ "rule": "always"
453
+ },
454
+ "requirement": {
455
+ "status": "none",
456
+ "source": "profile addition",
457
+ "note": "nothing requires this"
458
+ },
459
+ "group": "identification",
460
+ "note": "Brands name colours, and the name is part of the product."
461
+ },
462
+ {
463
+ "key": "size",
464
+ "pointer": "/size",
465
+ "label": "Size",
466
+ "valueType": "text",
467
+ "constraints": {
468
+ "maxLength": 32
469
+ },
470
+ "cardinality": "one",
471
+ "granularity": "item",
472
+ "provenance": {
473
+ "capture": "form",
474
+ "prose": true
475
+ },
476
+ "accessTier": "public",
477
+ "obligation": "recommended",
478
+ "legalBasis": "Nothing requires this. It is what makes a passport match the garment in hand.",
479
+ "applicability": {
480
+ "rule": "always"
481
+ },
482
+ "requirement": {
483
+ "status": "none",
484
+ "source": "profile addition",
485
+ "note": "nothing requires this"
486
+ },
487
+ "group": "identification",
488
+ "note": "Size systems differ by market and by brand; a closed list would be wrong somewhere."
489
+ },
490
+ {
491
+ "key": "weight",
492
+ "pointer": "/weight",
493
+ "label": "Weight",
494
+ "valueType": "decimal",
495
+ "unit": "g",
496
+ "constraints": {
497
+ "minimum": 1,
498
+ "maximum": 50000,
499
+ "step": 1
500
+ },
501
+ "cardinality": "one",
502
+ "granularity": "model",
503
+ "provenance": {
504
+ "capture": "form"
505
+ },
506
+ "accessTier": "public",
507
+ "obligation": "recommended",
508
+ "legalBasis": "ESPR Annex I(l): resource use, and the basis of every per-mass figure below",
509
+ "applicability": {
510
+ "rule": "always"
511
+ },
512
+ "requirement": {
513
+ "status": "anticipated",
514
+ "source": "eu-espr",
515
+ "clause": "Annex I(l)",
516
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
517
+ },
518
+ "group": "identification"
519
+ },
520
+ {
521
+ "key": "fibres",
522
+ "pointer": "/fibres",
523
+ "label": "Fibre composition",
524
+ "valueType": "record",
525
+ "cardinality": "many",
526
+ "granularity": "model",
527
+ "provenance": {
528
+ "capture": "form",
529
+ "onLabel": true
530
+ },
531
+ "accessTier": "public",
532
+ "obligation": "required",
533
+ "legalBasis": "Reg. (EU) 1007/2011 Art. 5, 9 and 14: binding today, by weight, in descending order",
534
+ "applicability": {
535
+ "rule": "always"
536
+ },
537
+ "requirement": {
538
+ "status": "enacted",
539
+ "source": "eu-1007-2011",
540
+ "clause": "Articles 5, 9 and 14"
541
+ },
542
+ "supersedes": "fibres",
543
+ "group": "composition",
544
+ "parts": [
545
+ {
546
+ "key": "fibre",
547
+ "label": "Fibre",
548
+ "valueType": "enum",
549
+ "codeList": {
550
+ "closed": false,
551
+ "options": [
552
+ {
553
+ "value": "wool",
554
+ "label": "Wool"
555
+ },
556
+ {
557
+ "value": "cotton",
558
+ "label": "Cotton"
559
+ },
560
+ {
561
+ "value": "linen",
562
+ "label": "Linen (flax)"
563
+ },
564
+ {
565
+ "value": "silk",
566
+ "label": "Silk"
567
+ },
568
+ {
569
+ "value": "hemp",
570
+ "label": "Hemp"
571
+ },
572
+ {
573
+ "value": "cashmere",
574
+ "label": "Cashmere"
575
+ },
576
+ {
577
+ "value": "mohair",
578
+ "label": "Mohair"
579
+ },
580
+ {
581
+ "value": "alpaca",
582
+ "label": "Alpaca"
583
+ },
584
+ {
585
+ "value": "viscose",
586
+ "label": "Viscose"
587
+ },
588
+ {
589
+ "value": "lyocell",
590
+ "label": "Lyocell"
591
+ },
592
+ {
593
+ "value": "modal",
594
+ "label": "Modal"
595
+ },
596
+ {
597
+ "value": "cupro",
598
+ "label": "Cupro"
599
+ },
600
+ {
601
+ "value": "acetate",
602
+ "label": "Acetate"
603
+ },
604
+ {
605
+ "value": "polyester",
606
+ "label": "Polyester"
607
+ },
608
+ {
609
+ "value": "polyamide",
610
+ "label": "Polyamide (nylon)"
611
+ },
612
+ {
613
+ "value": "elastane",
614
+ "label": "Elastane"
615
+ },
616
+ {
617
+ "value": "acrylic",
618
+ "label": "Acrylic"
619
+ },
620
+ {
621
+ "value": "polypropylene",
622
+ "label": "Polypropylene"
623
+ }
624
+ ]
625
+ },
626
+ "required": true
627
+ },
628
+ {
629
+ "key": "percent",
630
+ "label": "Share by weight",
631
+ "valueType": "percent",
632
+ "unit": "%",
633
+ "constraints": {
634
+ "minimum": 0,
635
+ "maximum": 100
636
+ },
637
+ "required": true
638
+ },
639
+ {
640
+ "key": "source",
641
+ "label": "Source",
642
+ "valueType": "enum",
643
+ "codeList": {
644
+ "closed": true,
645
+ "options": [
646
+ {
647
+ "value": "preConsumer",
648
+ "label": "Pre-consumer recycled"
649
+ },
650
+ {
651
+ "value": "postConsumer",
652
+ "label": "Post-consumer recycled"
653
+ },
654
+ {
655
+ "value": "virgin",
656
+ "label": "Virgin"
657
+ }
658
+ ]
659
+ }
660
+ }
661
+ ],
662
+ "note": "Whole-product composition does not replace component declarations required by Article 11. Assess fibre names, permitted descriptions, calculation basis and labelling separately."
663
+ },
664
+ {
665
+ "key": "nonTextileParts",
666
+ "pointer": "/nonTextileParts",
667
+ "label": "Non-textile parts of animal origin",
668
+ "valueType": "text",
669
+ "constraints": {
670
+ "maxLength": 200
671
+ },
672
+ "cardinality": "one",
673
+ "granularity": "model",
674
+ "provenance": {
675
+ "capture": "form",
676
+ "prose": true,
677
+ "onLabel": true
678
+ },
679
+ "accessTier": "public",
680
+ "obligation": "required",
681
+ "legalBasis": "Reg. (EU) 1007/2011 Art. 12: mandatory where such parts are present",
682
+ "applicability": {
683
+ "rule": "needs-review",
684
+ "condition": "the product contains non-textile parts of animal origin"
685
+ },
686
+ "requirement": {
687
+ "status": "enacted",
688
+ "source": "eu-1007-2011",
689
+ "clause": "Article 12",
690
+ "note": "mandatory where non-textile parts of animal origin are present; the applicability stays needs-review"
691
+ },
692
+ "group": "composition",
693
+ "note": "The regulation asks for a phrase, not a code: \"contains non-textile parts of animal origin\"."
694
+ },
695
+ {
696
+ "key": "recycledContent",
697
+ "pointer": "/recycledContent",
698
+ "label": "Recycled content",
699
+ "valueType": "percent",
700
+ "unit": "%",
701
+ "constraints": {
702
+ "minimum": 0,
703
+ "maximum": 100
704
+ },
705
+ "cardinality": "one",
706
+ "granularity": "model",
707
+ "provenance": {
708
+ "capture": "form"
709
+ },
710
+ "accessTier": "public",
711
+ "obligation": "recommended",
712
+ "legalBasis": "ESPR Annex I(g): recycled content is a named parameter; the threshold waits on the act",
713
+ "applicability": {
714
+ "rule": "always"
715
+ },
716
+ "requirement": {
717
+ "status": "anticipated",
718
+ "source": "eu-espr",
719
+ "clause": "Annex I(g)",
720
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
721
+ },
722
+ "supersedes": "recycled",
723
+ "group": "composition"
724
+ },
725
+ {
726
+ "key": "biobasedContent",
727
+ "pointer": "/biobasedContent",
728
+ "label": "Bio-based content",
729
+ "valueType": "percent",
730
+ "unit": "%",
731
+ "constraints": {
732
+ "minimum": 0,
733
+ "maximum": 100
734
+ },
735
+ "cardinality": "one",
736
+ "granularity": "model",
737
+ "provenance": {
738
+ "capture": "form"
739
+ },
740
+ "accessTier": "public",
741
+ "obligation": "optional",
742
+ "legalBasis": "Nothing requires this. Declared where a brand can substantiate it.",
743
+ "applicability": {
744
+ "rule": "always"
745
+ },
746
+ "requirement": {
747
+ "status": "none",
748
+ "source": "profile addition",
749
+ "note": "nothing requires this"
750
+ },
751
+ "group": "composition"
752
+ },
753
+ {
754
+ "key": "trims",
755
+ "pointer": "/trims",
756
+ "label": "Trims and hardware",
757
+ "valueType": "record",
758
+ "cardinality": "many",
759
+ "granularity": "model",
760
+ "provenance": {
761
+ "capture": "form"
762
+ },
763
+ "accessTier": "public",
764
+ "obligation": "recommended",
765
+ "legalBasis": "ESPR Annex I(d) and (n): what separates for repair, and what separates for recycling",
766
+ "applicability": {
767
+ "rule": "always"
768
+ },
769
+ "requirement": {
770
+ "status": "anticipated",
771
+ "source": "eu-espr",
772
+ "clause": "Annex I(d); Annex I(n)",
773
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
774
+ },
775
+ "group": "composition",
776
+ "parts": [
777
+ {
778
+ "key": "part",
779
+ "label": "Part",
780
+ "valueType": "text",
781
+ "required": true
782
+ },
783
+ {
784
+ "key": "material",
785
+ "label": "Material",
786
+ "valueType": "text",
787
+ "required": true
788
+ },
789
+ {
790
+ "key": "origin",
791
+ "label": "Country",
792
+ "valueType": "country",
793
+ "constraints": {
794
+ "pattern": "^[A-Z]{2}$",
795
+ "patternHint": "a two-letter country code"
796
+ }
797
+ }
798
+ ]
799
+ },
800
+ {
801
+ "key": "substancesOfConcern",
802
+ "pointer": "/substancesOfConcern",
803
+ "label": "Substances of concern",
804
+ "valueType": "record",
805
+ "cardinality": "many",
806
+ "granularity": "model",
807
+ "provenance": {
808
+ "capture": "form"
809
+ },
810
+ "accessTier": "public",
811
+ "obligation": "required",
812
+ "legalBasis": "ESPR Art. 7(5): substances of concern must be traceable through the passport",
813
+ "applicability": {
814
+ "rule": "needs-review",
815
+ "condition": "a substance of concern is present above the threshold the act will set"
816
+ },
817
+ "requirement": {
818
+ "status": "anticipated",
819
+ "source": "eu-espr",
820
+ "clause": "Article 7(5)",
821
+ "note": "the threshold the delegated act will set is not adopted; the applicability stays needs-review"
822
+ },
823
+ "supersedes": "substances",
824
+ "group": "substances",
825
+ "parts": [
826
+ {
827
+ "key": "substance",
828
+ "label": "Substance",
829
+ "valueType": "text",
830
+ "required": true
831
+ },
832
+ {
833
+ "key": "casNumber",
834
+ "label": "CAS number",
835
+ "valueType": "text",
836
+ "constraints": {
837
+ "pattern": "^\\d{2,7}-\\d{2}-\\d$",
838
+ "patternHint": "a CAS registry number, e.g. 7440-48-4"
839
+ }
840
+ },
841
+ {
842
+ "key": "concentration",
843
+ "label": "Concentration",
844
+ "valueType": "percent",
845
+ "unit": "%",
846
+ "constraints": {
847
+ "minimum": 0,
848
+ "maximum": 100
849
+ }
850
+ },
851
+ {
852
+ "key": "location",
853
+ "label": "Where in the product",
854
+ "valueType": "text"
855
+ }
856
+ ]
857
+ },
858
+ {
859
+ "key": "substanceStatement",
860
+ "pointer": "/substanceStatement",
861
+ "label": "What that means for you",
862
+ "valueType": "text",
863
+ "constraints": {
864
+ "maxLength": 400
865
+ },
866
+ "cardinality": "one",
867
+ "granularity": "model",
868
+ "provenance": {
869
+ "capture": "form",
870
+ "prose": true
871
+ },
872
+ "accessTier": "public",
873
+ "obligation": "recommended",
874
+ "legalBasis": "ESPR Art. 9(2)(b): passport information shall be complete and comprehensible",
875
+ "applicability": {
876
+ "rule": "always"
877
+ },
878
+ "requirement": {
879
+ "status": "anticipated",
880
+ "source": "eu-espr",
881
+ "clause": "Article 9(2)(b)",
882
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
883
+ },
884
+ "group": "substances",
885
+ "note": "A list of CAS numbers tells a consumer nothing. This is the sentence that does."
886
+ },
887
+ {
888
+ "key": "chemicalCompliance",
889
+ "pointer": "/chemicalCompliance",
890
+ "label": "Chemical compliance evidence",
891
+ "valueType": "document",
892
+ "cardinality": "one",
893
+ "granularity": "model",
894
+ "provenance": {
895
+ "capture": "form"
896
+ },
897
+ "accessTier": "legitimate",
898
+ "obligation": "recommended",
899
+ "legalBasis": "Application field; This field carries supporting evidence by application choice. REACH Article 33 communication duties need a separate substance, threshold and recipient assessment; an evidence document is not that assessment.",
900
+ "applicability": {
901
+ "rule": "always"
902
+ },
903
+ "requirement": {
904
+ "status": "none",
905
+ "source": "profile addition",
906
+ "note": "This field carries supporting evidence by application choice. REACH Article 33 communication duties need a separate substance, threshold and recipient assessment; an evidence document is not that assessment."
907
+ },
908
+ "group": "substances",
909
+ "note": "This field carries supporting evidence by application choice. REACH Article 33 communication duties need a separate substance, threshold and recipient assessment; an evidence document is not that assessment."
910
+ },
911
+ {
912
+ "key": "microplasticRelease",
913
+ "pointer": "/microplasticRelease",
914
+ "label": "Microplastic release",
915
+ "valueType": "text",
916
+ "cardinality": "one",
917
+ "granularity": "model",
918
+ "provenance": {
919
+ "capture": "form",
920
+ "prose": true
921
+ },
922
+ "accessTier": "public",
923
+ "obligation": "optional",
924
+ "legalBasis": "ESPR Annex I(k); the method is not yet fixed",
925
+ "applicability": {
926
+ "rule": "always"
927
+ },
928
+ "requirement": {
929
+ "status": "anticipated",
930
+ "source": "eu-espr",
931
+ "clause": "Annex I(k)",
932
+ "note": "the harmonised test method for microfibre release is not fixed"
933
+ },
934
+ "awaitingAct": "the harmonised test method for microfibre release",
935
+ "group": "substances",
936
+ "note": "No measurement method is harmonised, so a number here would be incomparable with anyone else’s."
937
+ },
938
+ {
939
+ "key": "care",
940
+ "pointer": "/care",
941
+ "label": "Care",
942
+ "valueType": "multi",
943
+ "codeList": {
944
+ "closed": true,
945
+ "options": [
946
+ {
947
+ "value": "wash30",
948
+ "label": "Machine wash at 30 °C"
949
+ },
950
+ {
951
+ "value": "wash40",
952
+ "label": "Machine wash at 40 °C"
953
+ },
954
+ {
955
+ "value": "wash60",
956
+ "label": "Machine wash at 60 °C"
957
+ },
958
+ {
959
+ "value": "handWash",
960
+ "label": "Hand wash only"
961
+ },
962
+ {
963
+ "value": "noWash",
964
+ "label": "Do not wash"
965
+ },
966
+ {
967
+ "value": "noBleach",
968
+ "label": "Do not bleach"
969
+ },
970
+ {
971
+ "value": "tumbleLow",
972
+ "label": "Tumble dry low"
973
+ },
974
+ {
975
+ "value": "noTumble",
976
+ "label": "Do not tumble dry"
977
+ },
978
+ {
979
+ "value": "ironLow",
980
+ "label": "Iron low"
981
+ },
982
+ {
983
+ "value": "ironMedium",
984
+ "label": "Iron medium"
985
+ },
986
+ {
987
+ "value": "noIron",
988
+ "label": "Do not iron"
989
+ },
990
+ {
991
+ "value": "dryClean",
992
+ "label": "Professional dry clean"
993
+ },
994
+ {
995
+ "value": "noDryClean",
996
+ "label": "Do not dry clean"
997
+ }
998
+ ]
999
+ },
1000
+ "cardinality": "one",
1001
+ "granularity": "model",
1002
+ "provenance": {
1003
+ "capture": "form",
1004
+ "onLabel": true
1005
+ },
1006
+ "accessTier": "public",
1007
+ "obligation": "required",
1008
+ "legalBasis": "Application field; The cited consumer-information directive does not mandate this fixed care-code list. ISO care-symbol use and applicable labelling requirements need separate assessment.",
1009
+ "applicability": {
1010
+ "rule": "always"
1011
+ },
1012
+ "requirement": {
1013
+ "status": "none",
1014
+ "source": "profile addition",
1015
+ "note": "The cited consumer-information directive does not mandate this fixed care-code list. ISO care-symbol use and applicable labelling requirements need separate assessment."
1016
+ },
1017
+ "supersedes": "care",
1018
+ "group": "durability",
1019
+ "note": "The cited consumer-information directive does not mandate this fixed care-code list. ISO care-symbol use and applicable labelling requirements need separate assessment."
1020
+ },
1021
+ {
1022
+ "key": "careNote",
1023
+ "pointer": "/careNote",
1024
+ "label": "How to make it last",
1025
+ "valueType": "text",
1026
+ "constraints": {
1027
+ "maxLength": 400
1028
+ },
1029
+ "cardinality": "one",
1030
+ "granularity": "model",
1031
+ "provenance": {
1032
+ "capture": "form",
1033
+ "prose": true
1034
+ },
1035
+ "accessTier": "public",
1036
+ "obligation": "recommended",
1037
+ "legalBasis": "ESPR Annex I(a): extending lifetime is the parameter; this is how",
1038
+ "applicability": {
1039
+ "rule": "always"
1040
+ },
1041
+ "requirement": {
1042
+ "status": "anticipated",
1043
+ "source": "eu-espr",
1044
+ "clause": "Annex I(a)",
1045
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1046
+ },
1047
+ "group": "durability",
1048
+ "note": "The advice a maker would give in person, which no symbol carries."
1049
+ },
1050
+ {
1051
+ "key": "expectedLifetime",
1052
+ "pointer": "/expectedLifetime",
1053
+ "label": "Expected lifetime",
1054
+ "valueType": "integer",
1055
+ "unit": "years",
1056
+ "constraints": {
1057
+ "minimum": 1,
1058
+ "maximum": 100,
1059
+ "step": 1
1060
+ },
1061
+ "cardinality": "one",
1062
+ "granularity": "model",
1063
+ "provenance": {
1064
+ "capture": "form"
1065
+ },
1066
+ "accessTier": "public",
1067
+ "obligation": "recommended",
1068
+ "legalBasis": "Application field; No universal lifetime-in-years passport field is established by the cited consumer-information provision. Any voluntary durability claim still needs substantiation.",
1069
+ "applicability": {
1070
+ "rule": "always"
1071
+ },
1072
+ "requirement": {
1073
+ "status": "none",
1074
+ "source": "profile addition",
1075
+ "note": "No universal lifetime-in-years passport field is established by the cited consumer-information provision. Any voluntary durability claim still needs substantiation."
1076
+ },
1077
+ "group": "durability",
1078
+ "note": "No universal lifetime-in-years passport field is established by the cited consumer-information provision. Any voluntary durability claim still needs substantiation."
1079
+ },
1080
+ {
1081
+ "key": "washCycles",
1082
+ "pointer": "/washCycles",
1083
+ "label": "Tested to",
1084
+ "valueType": "integer",
1085
+ "unit": "wash cycles",
1086
+ "constraints": {
1087
+ "minimum": 1,
1088
+ "maximum": 1000,
1089
+ "step": 1
1090
+ },
1091
+ "cardinality": "one",
1092
+ "granularity": "model",
1093
+ "provenance": {
1094
+ "capture": "form"
1095
+ },
1096
+ "accessTier": "public",
1097
+ "obligation": "recommended",
1098
+ "legalBasis": "ESPR Annex I(b) reliability, tested per ISO 6330 domestic washing procedures",
1099
+ "applicability": {
1100
+ "rule": "always"
1101
+ },
1102
+ "requirement": {
1103
+ "status": "anticipated",
1104
+ "source": "eu-espr",
1105
+ "clause": "Annex I(b)",
1106
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1107
+ },
1108
+ "group": "durability"
1109
+ },
1110
+ {
1111
+ "key": "colourFastness",
1112
+ "pointer": "/colourFastness",
1113
+ "label": "Colour fastness",
1114
+ "valueType": "decimal",
1115
+ "unit": "grade",
1116
+ "constraints": {
1117
+ "minimum": 1,
1118
+ "maximum": 5,
1119
+ "step": 0.5
1120
+ },
1121
+ "cardinality": "one",
1122
+ "granularity": "model",
1123
+ "provenance": {
1124
+ "capture": "form"
1125
+ },
1126
+ "accessTier": "public",
1127
+ "obligation": "recommended",
1128
+ "legalBasis": "ESPR Annex I(b), graded 1-5 per the ISO 105 series",
1129
+ "applicability": {
1130
+ "rule": "always"
1131
+ },
1132
+ "requirement": {
1133
+ "status": "anticipated",
1134
+ "source": "eu-espr",
1135
+ "clause": "Annex I(b)",
1136
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1137
+ },
1138
+ "group": "durability"
1139
+ },
1140
+ {
1141
+ "key": "dimensionalStability",
1142
+ "pointer": "/dimensionalStability",
1143
+ "label": "Dimensional change after washing",
1144
+ "valueType": "decimal",
1145
+ "unit": "%",
1146
+ "constraints": {
1147
+ "minimum": -20,
1148
+ "maximum": 20,
1149
+ "step": 0.5
1150
+ },
1151
+ "cardinality": "one",
1152
+ "granularity": "model",
1153
+ "provenance": {
1154
+ "capture": "form"
1155
+ },
1156
+ "accessTier": "public",
1157
+ "obligation": "recommended",
1158
+ "legalBasis": "ESPR Annex I(b), measured per ISO 5077",
1159
+ "applicability": {
1160
+ "rule": "always"
1161
+ },
1162
+ "requirement": {
1163
+ "status": "anticipated",
1164
+ "source": "eu-espr",
1165
+ "clause": "Annex I(b)",
1166
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1167
+ },
1168
+ "group": "durability"
1169
+ },
1170
+ {
1171
+ "key": "pillingResistance",
1172
+ "pointer": "/pillingResistance",
1173
+ "label": "Pilling resistance",
1174
+ "valueType": "decimal",
1175
+ "unit": "grade",
1176
+ "constraints": {
1177
+ "minimum": 1,
1178
+ "maximum": 5,
1179
+ "step": 0.5
1180
+ },
1181
+ "cardinality": "one",
1182
+ "granularity": "model",
1183
+ "provenance": {
1184
+ "capture": "form"
1185
+ },
1186
+ "accessTier": "public",
1187
+ "obligation": "recommended",
1188
+ "legalBasis": "ESPR Annex I(b), graded 1-5 per ISO 12945",
1189
+ "applicability": {
1190
+ "rule": "always"
1191
+ },
1192
+ "requirement": {
1193
+ "status": "anticipated",
1194
+ "source": "eu-espr",
1195
+ "clause": "Annex I(b)",
1196
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1197
+ },
1198
+ "group": "durability"
1199
+ },
1200
+ {
1201
+ "key": "guarantee",
1202
+ "pointer": "/guarantee",
1203
+ "label": "Guarantee",
1204
+ "valueType": "integer",
1205
+ "unit": "months",
1206
+ "constraints": {
1207
+ "minimum": 0,
1208
+ "maximum": 600,
1209
+ "step": 1
1210
+ },
1211
+ "cardinality": "one",
1212
+ "granularity": "model",
1213
+ "provenance": {
1214
+ "capture": "form"
1215
+ },
1216
+ "accessTier": "public",
1217
+ "obligation": "recommended",
1218
+ "legalBasis": "Dir. (EU) 2024/825: a commercial guarantee of durability must state its term",
1219
+ "applicability": {
1220
+ "rule": "all",
1221
+ "rules": [
1222
+ {
1223
+ "rule": "effective",
1224
+ "from": "2026-09-27"
1225
+ },
1226
+ {
1227
+ "rule": "unresolved",
1228
+ "reason": "Assess whether the particular commercial guarantee and consumer transaction meet the applicable information conditions.",
1229
+ "source": "eu-2024-825"
1230
+ }
1231
+ ]
1232
+ },
1233
+ "requirement": {
1234
+ "status": "enacted",
1235
+ "source": "eu-2024-825",
1236
+ "clause": "Articles 2 and 4",
1237
+ "effectiveDate": "2026-09-27",
1238
+ "note": "Conditional consumer-information rules for a producer commercial guarantee of durability; not a duty to offer a guarantee. Assess the offer, duration, available information and national transposition."
1239
+ },
1240
+ "supersedes": "warranty",
1241
+ "group": "durability"
1242
+ },
1243
+ {
1244
+ "key": "repairability",
1245
+ "pointer": "/repairability",
1246
+ "label": "Repairability",
1247
+ "valueType": "text",
1248
+ "constraints": {
1249
+ "maxLength": 300
1250
+ },
1251
+ "cardinality": "one",
1252
+ "granularity": "model",
1253
+ "provenance": {
1254
+ "capture": "form",
1255
+ "prose": true
1256
+ },
1257
+ "accessTier": "public",
1258
+ "obligation": "recommended",
1259
+ "legalBasis": "ESPR Annex I(c) and Art. 7(2)(b)(iii)",
1260
+ "applicability": {
1261
+ "rule": "always"
1262
+ },
1263
+ "requirement": {
1264
+ "status": "anticipated",
1265
+ "source": "eu-espr",
1266
+ "clause": "Annex I(c); Article 7(2)(b)(iii)",
1267
+ "note": "waits on the delegated act on repairability scoring for textiles; no score is mandated"
1268
+ },
1269
+ "awaitingAct": "the ESPR delegated act on repairability scoring for textiles",
1270
+ "group": "repair",
1271
+ "note": "The scoring class is not fixed, so a letter or a number here would be invented."
1272
+ },
1273
+ {
1274
+ "key": "spareParts",
1275
+ "pointer": "/spareParts",
1276
+ "label": "Spare parts",
1277
+ "valueType": "text",
1278
+ "constraints": {
1279
+ "maxLength": 300
1280
+ },
1281
+ "cardinality": "one",
1282
+ "granularity": "model",
1283
+ "provenance": {
1284
+ "capture": "form",
1285
+ "prose": true
1286
+ },
1287
+ "accessTier": "public",
1288
+ "obligation": "recommended",
1289
+ "legalBasis": "ESPR Annex I(d): availability of spare parts is a named parameter",
1290
+ "applicability": {
1291
+ "rule": "always"
1292
+ },
1293
+ "requirement": {
1294
+ "status": "anticipated",
1295
+ "source": "eu-espr",
1296
+ "clause": "Annex I(d)",
1297
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1298
+ },
1299
+ "group": "repair",
1300
+ "note": "Which parts, and for how long. A yes/no would hide the part that matters."
1301
+ },
1302
+ {
1303
+ "key": "repairInstructions",
1304
+ "pointer": "/repairInstructions",
1305
+ "label": "Repair instructions",
1306
+ "valueType": "document",
1307
+ "cardinality": "one",
1308
+ "granularity": "model",
1309
+ "provenance": {
1310
+ "capture": "form"
1311
+ },
1312
+ "accessTier": "public",
1313
+ "obligation": "recommended",
1314
+ "legalBasis": "ESPR Annex I(e): access to repair information",
1315
+ "applicability": {
1316
+ "rule": "always"
1317
+ },
1318
+ "requirement": {
1319
+ "status": "anticipated",
1320
+ "source": "eu-espr",
1321
+ "clause": "Annex I(e)",
1322
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1323
+ },
1324
+ "group": "repair"
1325
+ },
1326
+ {
1327
+ "key": "repairServices",
1328
+ "pointer": "/repairServices",
1329
+ "label": "Where to get it repaired",
1330
+ "valueType": "url",
1331
+ "cardinality": "one",
1332
+ "granularity": "model",
1333
+ "provenance": {
1334
+ "capture": "form"
1335
+ },
1336
+ "accessTier": "public",
1337
+ "obligation": "recommended",
1338
+ "legalBasis": "Dir. (EU) 2024/825 recital 22: repair should be the visible option",
1339
+ "applicability": {
1340
+ "rule": "always"
1341
+ },
1342
+ "requirement": {
1343
+ "status": "needs-review",
1344
+ "source": "eu-2024-825",
1345
+ "clause": "recital 22",
1346
+ "note": "the basis is a recital, not an article; no article confirmed"
1347
+ },
1348
+ "group": "repair"
1349
+ },
1350
+ {
1351
+ "key": "carbonFootprint",
1352
+ "pointer": "/carbonFootprint",
1353
+ "label": "Carbon footprint",
1354
+ "valueType": "decimal",
1355
+ "unit": "kg CO₂e",
1356
+ "constraints": {
1357
+ "minimum": 0,
1358
+ "maximum": 10000,
1359
+ "step": 0.01
1360
+ },
1361
+ "cardinality": "one",
1362
+ "granularity": "model",
1363
+ "provenance": {
1364
+ "capture": "form"
1365
+ },
1366
+ "accessTier": "public",
1367
+ "obligation": "recommended",
1368
+ "legalBasis": "ESPR Annex I(m), computed per the Apparel and Footwear PEFCR",
1369
+ "applicability": {
1370
+ "rule": "always"
1371
+ },
1372
+ "requirement": {
1373
+ "status": "anticipated",
1374
+ "source": "eu-espr",
1375
+ "clause": "Annex I(m)",
1376
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1377
+ },
1378
+ "group": "footprint"
1379
+ },
1380
+ {
1381
+ "key": "carbonFootprintStudy",
1382
+ "pointer": "/carbonFootprintStudy",
1383
+ "label": "The study behind the figure",
1384
+ "valueType": "document",
1385
+ "cardinality": "one",
1386
+ "granularity": "model",
1387
+ "provenance": {
1388
+ "capture": "form"
1389
+ },
1390
+ "accessTier": "public",
1391
+ "obligation": "recommended",
1392
+ "legalBasis": "ESPR Art. 9(2)(b): a figure a reader cannot check is not information",
1393
+ "applicability": {
1394
+ "rule": "always"
1395
+ },
1396
+ "requirement": {
1397
+ "status": "anticipated",
1398
+ "source": "eu-espr",
1399
+ "clause": "Article 9(2)(b)",
1400
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1401
+ },
1402
+ "group": "footprint"
1403
+ },
1404
+ {
1405
+ "key": "footprintClass",
1406
+ "pointer": "/footprintClass",
1407
+ "label": "Environmental footprint class",
1408
+ "valueType": "text",
1409
+ "constraints": {
1410
+ "maxLength": 80
1411
+ },
1412
+ "cardinality": "one",
1413
+ "granularity": "model",
1414
+ "provenance": {
1415
+ "capture": "deferred",
1416
+ "prose": true
1417
+ },
1418
+ "accessTier": "public",
1419
+ "obligation": "recommended",
1420
+ "legalBasis": "ESPR Art. 7(4)",
1421
+ "applicability": {
1422
+ "rule": "always"
1423
+ },
1424
+ "requirement": {
1425
+ "status": "anticipated",
1426
+ "source": "eu-espr",
1427
+ "clause": "Article 7(4)",
1428
+ "note": "waits on the delegated act setting performance classes for textiles"
1429
+ },
1430
+ "awaitingAct": "the ESPR delegated act setting performance classes for textiles",
1431
+ "group": "footprint",
1432
+ "note": "The class format is not set. Naming one would publish our guess as a grade."
1433
+ },
1434
+ {
1435
+ "key": "waterUse",
1436
+ "pointer": "/waterUse",
1437
+ "label": "Water use",
1438
+ "valueType": "decimal",
1439
+ "unit": "m³",
1440
+ "constraints": {
1441
+ "minimum": 0,
1442
+ "maximum": 100000,
1443
+ "step": 0.1
1444
+ },
1445
+ "cardinality": "one",
1446
+ "granularity": "model",
1447
+ "provenance": {
1448
+ "capture": "form"
1449
+ },
1450
+ "accessTier": "public",
1451
+ "obligation": "optional",
1452
+ "legalBasis": "ESPR Annex I(l): resource use. Declared where a brand has measured it.",
1453
+ "applicability": {
1454
+ "rule": "always"
1455
+ },
1456
+ "requirement": {
1457
+ "status": "anticipated",
1458
+ "source": "eu-espr",
1459
+ "clause": "Annex I(l)",
1460
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1461
+ },
1462
+ "group": "footprint"
1463
+ },
1464
+ {
1465
+ "key": "collection",
1466
+ "pointer": "/collection",
1467
+ "label": "Where to return it",
1468
+ "valueType": "text",
1469
+ "constraints": {
1470
+ "maxLength": 400
1471
+ },
1472
+ "cardinality": "one",
1473
+ "granularity": "model",
1474
+ "provenance": {
1475
+ "capture": "form",
1476
+ "prose": true
1477
+ },
1478
+ "accessTier": "public",
1479
+ "obligation": "required",
1480
+ "legalBasis": "Application field; The separate-collection duty on Member States does not itself mandate this individual passport instruction field.",
1481
+ "applicability": {
1482
+ "rule": "always"
1483
+ },
1484
+ "requirement": {
1485
+ "status": "none",
1486
+ "source": "profile addition",
1487
+ "note": "The separate-collection duty on Member States does not itself mandate this individual passport instruction field."
1488
+ },
1489
+ "supersedes": "endOfLife",
1490
+ "group": "endOfLife",
1491
+ "note": "The separate-collection duty on Member States does not itself mandate this individual passport instruction field."
1492
+ },
1493
+ {
1494
+ "key": "recyclability",
1495
+ "pointer": "/recyclability",
1496
+ "label": "How it can be recycled",
1497
+ "valueType": "text",
1498
+ "constraints": {
1499
+ "maxLength": 400
1500
+ },
1501
+ "cardinality": "one",
1502
+ "granularity": "model",
1503
+ "provenance": {
1504
+ "capture": "form",
1505
+ "prose": true
1506
+ },
1507
+ "accessTier": "public",
1508
+ "obligation": "recommended",
1509
+ "legalBasis": "ESPR Annex I(n): expected generation of waste materials",
1510
+ "applicability": {
1511
+ "rule": "always"
1512
+ },
1513
+ "requirement": {
1514
+ "status": "anticipated",
1515
+ "source": "eu-espr",
1516
+ "clause": "Annex I(n)",
1517
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1518
+ },
1519
+ "group": "endOfLife",
1520
+ "note": "What a recycler can actually do with it, which no percentage conveys."
1521
+ },
1522
+ {
1523
+ "key": "separability",
1524
+ "pointer": "/separability",
1525
+ "label": "What comes apart",
1526
+ "valueType": "text",
1527
+ "constraints": {
1528
+ "maxLength": 300
1529
+ },
1530
+ "cardinality": "one",
1531
+ "granularity": "model",
1532
+ "provenance": {
1533
+ "capture": "form",
1534
+ "prose": true
1535
+ },
1536
+ "accessTier": "legitimate",
1537
+ "obligation": "recommended",
1538
+ "legalBasis": "ESPR Annex I(h) and (i): ease of disassembly, for reuse and recycling",
1539
+ "applicability": {
1540
+ "rule": "always"
1541
+ },
1542
+ "requirement": {
1543
+ "status": "anticipated",
1544
+ "source": "eu-espr",
1545
+ "clause": "Annex I(h); Annex I(i)",
1546
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1547
+ },
1548
+ "group": "endOfLife",
1549
+ "note": "Which components separate, and how. The sentence a dismantler needs."
1550
+ },
1551
+ {
1552
+ "key": "eprRegistration",
1553
+ "pointer": "/eprRegistration",
1554
+ "label": "Producer responsibility registration",
1555
+ "valueType": "id",
1556
+ "constraints": {
1557
+ "maxLength": 64
1558
+ },
1559
+ "cardinality": "one",
1560
+ "granularity": "model",
1561
+ "provenance": {
1562
+ "capture": "brand"
1563
+ },
1564
+ "accessTier": "authority",
1565
+ "obligation": "recommended",
1566
+ "legalBasis": "Waste Framework Directive textile EPR: the producer register number",
1567
+ "applicability": {
1568
+ "rule": "always"
1569
+ },
1570
+ "requirement": {
1571
+ "status": "anticipated",
1572
+ "source": "eu-2008-98",
1573
+ "clause": "textile extended producer responsibility as amended",
1574
+ "note": "the amending directive is in force and the producer registration obligations apply from the dates it sets; no application date is recorded here"
1575
+ },
1576
+ "group": "endOfLife"
1577
+ },
1578
+ {
1579
+ "key": "supplyChain",
1580
+ "pointer": "/supplyChain",
1581
+ "label": "Supply chain",
1582
+ "valueType": "record",
1583
+ "cardinality": "many",
1584
+ "granularity": "model",
1585
+ "provenance": {
1586
+ "capture": "form"
1587
+ },
1588
+ "accessTier": "public",
1589
+ "obligation": "recommended",
1590
+ "legalBasis": "ESPR Annex III(f): unique facility identifiers, at the stages that have them",
1591
+ "applicability": {
1592
+ "rule": "always"
1593
+ },
1594
+ "requirement": {
1595
+ "status": "anticipated",
1596
+ "source": "eu-espr",
1597
+ "clause": "Annex III(f)",
1598
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1599
+ },
1600
+ "group": "supply",
1601
+ "parts": [
1602
+ {
1603
+ "key": "stage",
1604
+ "label": "Stage",
1605
+ "valueType": "enum",
1606
+ "codeList": {
1607
+ "closed": true,
1608
+ "options": [
1609
+ {
1610
+ "value": "fibre",
1611
+ "label": "Fibre production"
1612
+ },
1613
+ {
1614
+ "value": "spinning",
1615
+ "label": "Spinning"
1616
+ },
1617
+ {
1618
+ "value": "weaving",
1619
+ "label": "Weaving or knitting"
1620
+ },
1621
+ {
1622
+ "value": "dyeing",
1623
+ "label": "Dyeing and finishing"
1624
+ },
1625
+ {
1626
+ "value": "assembly",
1627
+ "label": "Cutting and assembly"
1628
+ }
1629
+ ]
1630
+ },
1631
+ "required": true
1632
+ },
1633
+ {
1634
+ "key": "country",
1635
+ "label": "Country",
1636
+ "valueType": "country",
1637
+ "constraints": {
1638
+ "pattern": "^[A-Z]{2}$",
1639
+ "patternHint": "a two-letter country code"
1640
+ },
1641
+ "required": true
1642
+ },
1643
+ {
1644
+ "key": "facility",
1645
+ "label": "Facility",
1646
+ "valueType": "text"
1647
+ }
1648
+ ]
1649
+ },
1650
+ {
1651
+ "key": "certifications",
1652
+ "pointer": "/certifications",
1653
+ "label": "Independent certification",
1654
+ "valueType": "multi",
1655
+ "codeList": {
1656
+ "closed": false,
1657
+ "options": [
1658
+ {
1659
+ "value": "gots",
1660
+ "label": "GOTS"
1661
+ },
1662
+ {
1663
+ "value": "oekoTex100",
1664
+ "label": "OEKO-TEX Standard 100"
1665
+ },
1666
+ {
1667
+ "value": "grs",
1668
+ "label": "Global Recycled Standard"
1669
+ },
1670
+ {
1671
+ "value": "rws",
1672
+ "label": "Responsible Wool Standard"
1673
+ },
1674
+ {
1675
+ "value": "euEcolabel",
1676
+ "label": "EU Ecolabel"
1677
+ },
1678
+ {
1679
+ "value": "cradleToCradle",
1680
+ "label": "Cradle to Cradle"
1681
+ },
1682
+ {
1683
+ "value": "bluesign",
1684
+ "label": "bluesign"
1685
+ }
1686
+ ]
1687
+ },
1688
+ "cardinality": "one",
1689
+ "granularity": "model",
1690
+ "provenance": {
1691
+ "capture": "form"
1692
+ },
1693
+ "accessTier": "public",
1694
+ "obligation": "recommended",
1695
+ "legalBasis": "Directive (EU) 2024/825 Article 1(4) and Annex point (1), inserting point 2a in Annex I to Directive 2005/29/EC; application under Article 4",
1696
+ "applicability": {
1697
+ "rule": "all",
1698
+ "rules": [
1699
+ {
1700
+ "rule": "effective",
1701
+ "from": "2026-09-27"
1702
+ },
1703
+ {
1704
+ "rule": "unresolved",
1705
+ "reason": "Assess the sustainability label, its certification or public-authority basis, and applicable national measures.",
1706
+ "source": "eu-2024-825"
1707
+ }
1708
+ ]
1709
+ },
1710
+ "requirement": {
1711
+ "status": "enacted",
1712
+ "source": "eu-2024-825",
1713
+ "clause": "Article 1(4) and Annex point (1); Article 4",
1714
+ "effectiveDate": "2026-09-27",
1715
+ "note": "Rules on sustainability labels allow a certification scheme or establishment by public authorities. They do not require every textile to obtain certification. National transposition and the particular claim need assessment."
1716
+ },
1717
+ "group": "supply",
1718
+ "note": "Open: a closed list of schemes would read as an endorsement of exactly those."
1719
+ },
1720
+ {
1721
+ "key": "dueDiligence",
1722
+ "pointer": "/dueDiligence",
1723
+ "label": "Due diligence report",
1724
+ "valueType": "document",
1725
+ "cardinality": "one",
1726
+ "granularity": "model",
1727
+ "provenance": {
1728
+ "capture": "form"
1729
+ },
1730
+ "accessTier": "legitimate",
1731
+ "obligation": "recommended",
1732
+ "legalBasis": "Dir. (EU) 2024/1760 corporate sustainability due diligence, where in scope",
1733
+ "applicability": {
1734
+ "rule": "always"
1735
+ },
1736
+ "requirement": {
1737
+ "status": "anticipated",
1738
+ "source": "eu-2024-1760",
1739
+ "clause": "Directive (EU) 2024/1760",
1740
+ "note": "in force with deferred application dates; not recorded here as settled"
1741
+ },
1742
+ "group": "supply"
1743
+ },
1744
+ {
1745
+ "key": "provenance",
1746
+ "pointer": "/provenance",
1747
+ "label": "Provenance",
1748
+ "valueType": "text",
1749
+ "constraints": {
1750
+ "maxLength": 600
1751
+ },
1752
+ "cardinality": "one",
1753
+ "granularity": "item",
1754
+ "provenance": {
1755
+ "capture": "form",
1756
+ "prose": true
1757
+ },
1758
+ "accessTier": "owner",
1759
+ "obligation": "optional",
1760
+ "legalBasis": "Nothing requires this. It is the owner tier the selective-disclosure demo turns on.",
1761
+ "applicability": {
1762
+ "rule": "always"
1763
+ },
1764
+ "requirement": {
1765
+ "status": "none",
1766
+ "source": "profile addition",
1767
+ "note": "nothing requires this; the owner tier"
1768
+ },
1769
+ "supersedes": "provenance",
1770
+ "group": "owner",
1771
+ "note": "The story of this particular item, which is prose by definition."
1772
+ },
1773
+ {
1774
+ "key": "purchase",
1775
+ "pointer": "/purchase",
1776
+ "label": "Purchased",
1777
+ "valueType": "text",
1778
+ "constraints": {
1779
+ "maxLength": 200
1780
+ },
1781
+ "cardinality": "one",
1782
+ "granularity": "item",
1783
+ "provenance": {
1784
+ "capture": "event",
1785
+ "dynamic": true,
1786
+ "prose": true
1787
+ },
1788
+ "accessTier": "owner",
1789
+ "obligation": "optional",
1790
+ "legalBasis": "Nothing requires this. It is what makes the record theirs.",
1791
+ "applicability": {
1792
+ "rule": "always"
1793
+ },
1794
+ "requirement": {
1795
+ "status": "none",
1796
+ "source": "profile addition",
1797
+ "note": "nothing requires this; the owner tier"
1798
+ },
1799
+ "group": "owner",
1800
+ "note": "Where and when, as the owner would write it."
1801
+ },
1802
+ {
1803
+ "key": "personalisation",
1804
+ "pointer": "/personalisation",
1805
+ "label": "Alterations and fit",
1806
+ "valueType": "text",
1807
+ "constraints": {
1808
+ "maxLength": 300
1809
+ },
1810
+ "cardinality": "one",
1811
+ "granularity": "item",
1812
+ "provenance": {
1813
+ "capture": "event",
1814
+ "dynamic": true,
1815
+ "prose": true
1816
+ },
1817
+ "accessTier": "owner",
1818
+ "obligation": "optional",
1819
+ "legalBasis": "Nothing requires this. An altered garment is a different garment to its owner.",
1820
+ "applicability": {
1821
+ "rule": "always"
1822
+ },
1823
+ "requirement": {
1824
+ "status": "none",
1825
+ "source": "profile addition",
1826
+ "note": "nothing requires this; the owner tier"
1827
+ },
1828
+ "supersedes": "personalisation",
1829
+ "group": "owner",
1830
+ "note": "Sleeve lengths and hems, in the tailor’s words."
1831
+ },
1832
+ {
1833
+ "key": "warrantyRegistration",
1834
+ "pointer": "/warrantyRegistration",
1835
+ "label": "Guarantee registration",
1836
+ "valueType": "id",
1837
+ "constraints": {
1838
+ "maxLength": 64
1839
+ },
1840
+ "cardinality": "one",
1841
+ "granularity": "item",
1842
+ "provenance": {
1843
+ "capture": "form"
1844
+ },
1845
+ "accessTier": "owner",
1846
+ "obligation": "optional",
1847
+ "legalBasis": "Nothing requires this. It saves the owner keeping a receipt.",
1848
+ "applicability": {
1849
+ "rule": "always"
1850
+ },
1851
+ "requirement": {
1852
+ "status": "none",
1853
+ "source": "profile addition",
1854
+ "note": "nothing requires this; the owner tier"
1855
+ },
1856
+ "group": "owner"
1857
+ },
1858
+ {
1859
+ "key": "components",
1860
+ "pointer": "/components",
1861
+ "label": "Components",
1862
+ "valueType": "record",
1863
+ "cardinality": "many",
1864
+ "granularity": "model",
1865
+ "provenance": {
1866
+ "capture": "form"
1867
+ },
1868
+ "accessTier": "public",
1869
+ "obligation": "recommended",
1870
+ "legalBasis": "ESPR Annex III and Annex I: composition and evidence at the level of the component the delegated act may name",
1871
+ "applicability": {
1872
+ "rule": "always"
1873
+ },
1874
+ "requirement": {
1875
+ "status": "anticipated",
1876
+ "source": "eu-espr",
1877
+ "clause": "Annex III; Annex I",
1878
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
1879
+ },
1880
+ "group": "composition",
1881
+ "parts": [
1882
+ {
1883
+ "key": "component",
1884
+ "label": "Component",
1885
+ "valueType": "text",
1886
+ "required": true
1887
+ },
1888
+ {
1889
+ "key": "role",
1890
+ "label": "Role",
1891
+ "valueType": "enum",
1892
+ "codeList": {
1893
+ "closed": false,
1894
+ "options": [
1895
+ {
1896
+ "value": "shell",
1897
+ "label": "Shell"
1898
+ },
1899
+ {
1900
+ "value": "lining",
1901
+ "label": "Lining"
1902
+ },
1903
+ {
1904
+ "value": "insulation",
1905
+ "label": "Insulation or padding"
1906
+ },
1907
+ {
1908
+ "value": "trim",
1909
+ "label": "Trim"
1910
+ },
1911
+ {
1912
+ "value": "fastening",
1913
+ "label": "Fastening"
1914
+ },
1915
+ {
1916
+ "value": "label",
1917
+ "label": "Label"
1918
+ },
1919
+ {
1920
+ "value": "other",
1921
+ "label": "Other"
1922
+ }
1923
+ ]
1924
+ }
1925
+ },
1926
+ {
1927
+ "key": "massShare",
1928
+ "label": "Share of product mass",
1929
+ "valueType": "percent",
1930
+ "unit": "%",
1931
+ "constraints": {
1932
+ "minimum": 0,
1933
+ "maximum": 100
1934
+ }
1935
+ }
1936
+ ],
1937
+ "scope": "component",
1938
+ "componentScoped": true,
1939
+ "note": "One entry per component of the product, named once here and referenced by componentFibres, substancesOfConcern.location and certificationEvidence.subject.componentRef."
1940
+ },
1941
+ {
1942
+ "key": "componentFibres",
1943
+ "pointer": "/componentFibres",
1944
+ "label": "Fibre composition per component",
1945
+ "valueType": "record",
1946
+ "cardinality": "many",
1947
+ "granularity": "model",
1948
+ "provenance": {
1949
+ "capture": "form"
1950
+ },
1951
+ "accessTier": "public",
1952
+ "obligation": "required",
1953
+ "legalBasis": "Regulation (EU) 1007/2011 Article 11, read with Articles 5, 9, 14 and 16",
1954
+ "applicability": {
1955
+ "rule": "unresolved",
1956
+ "reason": "Assess whether the product has textile components with different fibre contents and the Article 11 exceptions. A non-main-lining component below 30% by weight can qualify for the exception; a main lining cannot use that exception.",
1957
+ "source": "eu-1007-2011"
1958
+ },
1959
+ "requirement": {
1960
+ "status": "enacted",
1961
+ "source": "eu-1007-2011",
1962
+ "clause": "Article 11",
1963
+ "note": "Multi-component labelling is an existing duty, subject to Article 11 conditions and exceptions. This is a data representation, not a replacement for physical labelling."
1964
+ },
1965
+ "group": "composition",
1966
+ "parts": [
1967
+ {
1968
+ "key": "component",
1969
+ "label": "Component",
1970
+ "valueType": "text",
1971
+ "required": true
1972
+ },
1973
+ {
1974
+ "key": "fibre",
1975
+ "label": "Fibre",
1976
+ "valueType": "enum",
1977
+ "codeList": {
1978
+ "closed": false,
1979
+ "options": [
1980
+ {
1981
+ "value": "wool",
1982
+ "label": "Wool"
1983
+ },
1984
+ {
1985
+ "value": "cotton",
1986
+ "label": "Cotton"
1987
+ },
1988
+ {
1989
+ "value": "linen",
1990
+ "label": "Linen (flax)"
1991
+ },
1992
+ {
1993
+ "value": "silk",
1994
+ "label": "Silk"
1995
+ },
1996
+ {
1997
+ "value": "hemp",
1998
+ "label": "Hemp"
1999
+ },
2000
+ {
2001
+ "value": "cashmere",
2002
+ "label": "Cashmere"
2003
+ },
2004
+ {
2005
+ "value": "mohair",
2006
+ "label": "Mohair"
2007
+ },
2008
+ {
2009
+ "value": "alpaca",
2010
+ "label": "Alpaca"
2011
+ },
2012
+ {
2013
+ "value": "viscose",
2014
+ "label": "Viscose"
2015
+ },
2016
+ {
2017
+ "value": "lyocell",
2018
+ "label": "Lyocell"
2019
+ },
2020
+ {
2021
+ "value": "modal",
2022
+ "label": "Modal"
2023
+ },
2024
+ {
2025
+ "value": "cupro",
2026
+ "label": "Cupro"
2027
+ },
2028
+ {
2029
+ "value": "acetate",
2030
+ "label": "Acetate"
2031
+ },
2032
+ {
2033
+ "value": "polyester",
2034
+ "label": "Polyester"
2035
+ },
2036
+ {
2037
+ "value": "polyamide",
2038
+ "label": "Polyamide (nylon)"
2039
+ },
2040
+ {
2041
+ "value": "elastane",
2042
+ "label": "Elastane"
2043
+ },
2044
+ {
2045
+ "value": "acrylic",
2046
+ "label": "Acrylic"
2047
+ },
2048
+ {
2049
+ "value": "polypropylene",
2050
+ "label": "Polypropylene"
2051
+ }
2052
+ ]
2053
+ },
2054
+ "required": true
2055
+ },
2056
+ {
2057
+ "key": "percent",
2058
+ "label": "Share by weight of the component",
2059
+ "valueType": "percent",
2060
+ "unit": "%",
2061
+ "constraints": {
2062
+ "minimum": 0,
2063
+ "maximum": 100
2064
+ },
2065
+ "required": true
2066
+ },
2067
+ {
2068
+ "key": "source",
2069
+ "label": "Source",
2070
+ "valueType": "enum",
2071
+ "codeList": {
2072
+ "closed": true,
2073
+ "options": [
2074
+ {
2075
+ "value": "preConsumer",
2076
+ "label": "Pre-consumer recycled"
2077
+ },
2078
+ {
2079
+ "value": "postConsumer",
2080
+ "label": "Post-consumer recycled"
2081
+ },
2082
+ {
2083
+ "value": "virgin",
2084
+ "label": "Virgin"
2085
+ }
2086
+ ]
2087
+ }
2088
+ }
2089
+ ],
2090
+ "scope": "component",
2091
+ "componentScoped": true,
2092
+ "note": "Evaluate composition for each relevant component. A whole-product average cannot replace a required component declaration. Retain evidence for any exception and the applicable fibre naming and language rules."
2093
+ },
2094
+ {
2095
+ "key": "recycledContentAssessment",
2096
+ "pointer": "/recycledContentAssessment",
2097
+ "label": "Recycled content, assessed",
2098
+ "valueType": "measurement",
2099
+ "unit": "%",
2100
+ "cardinality": "one",
2101
+ "granularity": "model",
2102
+ "provenance": {
2103
+ "capture": "form"
2104
+ },
2105
+ "accessTier": "public",
2106
+ "obligation": "optional",
2107
+ "legalBasis": "ESPR Annex I(g): recycled content with its method, basis and boundary",
2108
+ "applicability": {
2109
+ "rule": "always"
2110
+ },
2111
+ "requirement": {
2112
+ "status": "anticipated",
2113
+ "source": "eu-espr",
2114
+ "clause": "Annex I(g)",
2115
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
2116
+ },
2117
+ "group": "composition",
2118
+ "note": "The measurement shape keeps a physical recycled share apart from a mass-balance claim through its basis and method; recycledContent stays the declared scalar."
2119
+ },
2120
+ {
2121
+ "key": "certificationEvidence",
2122
+ "pointer": "/certificationEvidence",
2123
+ "label": "Certification evidence",
2124
+ "valueType": "certification",
2125
+ "cardinality": "many",
2126
+ "granularity": "model",
2127
+ "provenance": {
2128
+ "capture": "form"
2129
+ },
2130
+ "accessTier": "public",
2131
+ "obligation": "optional",
2132
+ "legalBasis": "Directive (EU) 2024/825 Article 1(4) and Annex point (1), inserting point 2a in Annex I to Directive 2005/29/EC; application under Article 4",
2133
+ "applicability": {
2134
+ "rule": "all",
2135
+ "rules": [
2136
+ {
2137
+ "rule": "effective",
2138
+ "from": "2026-09-27"
2139
+ },
2140
+ {
2141
+ "rule": "unresolved",
2142
+ "reason": "Assess the sustainability label, its certification or public-authority basis, and applicable national measures.",
2143
+ "source": "eu-2024-825"
2144
+ }
2145
+ ]
2146
+ },
2147
+ "requirement": {
2148
+ "status": "enacted",
2149
+ "source": "eu-2024-825",
2150
+ "clause": "Article 1(4) and Annex point (1); Article 4",
2151
+ "effectiveDate": "2026-09-27",
2152
+ "note": "Rules on sustainability labels allow a certification scheme or establishment by public authorities. They do not require every textile to obtain certification. National transposition and the particular claim need assessment."
2153
+ },
2154
+ "group": "supply"
2155
+ },
2156
+ {
2157
+ "key": "relatedDocuments",
2158
+ "pointer": "/relatedDocuments",
2159
+ "label": "Related documents",
2160
+ "valueType": "relatedDocument",
2161
+ "cardinality": "many",
2162
+ "granularity": "model",
2163
+ "provenance": {
2164
+ "capture": "form"
2165
+ },
2166
+ "accessTier": "public",
2167
+ "obligation": "optional",
2168
+ "legalBasis": "none: documents a value points at, with their access policy and, where retained, their digest",
2169
+ "applicability": {
2170
+ "rule": "always"
2171
+ },
2172
+ "requirement": {
2173
+ "status": "none",
2174
+ "source": "profile addition",
2175
+ "note": "a document reference is a pointer, not a commitment to content, unless the bytes were retained"
2176
+ },
2177
+ "group": "identification"
2178
+ },
2179
+ {
2180
+ "key": "microfibreReleaseAssessment",
2181
+ "pointer": "/microfibreReleaseAssessment",
2182
+ "label": "Microfibre release, assessed",
2183
+ "valueType": "measurement",
2184
+ "cardinality": "one",
2185
+ "granularity": "model",
2186
+ "provenance": {
2187
+ "capture": "form"
2188
+ },
2189
+ "accessTier": "public",
2190
+ "obligation": "optional",
2191
+ "legalBasis": "ESPR Annex I(k): microplastic and microfibre release, by a named method",
2192
+ "applicability": {
2193
+ "rule": "always"
2194
+ },
2195
+ "requirement": {
2196
+ "status": "anticipated",
2197
+ "source": "eu-espr",
2198
+ "clause": "Annex I(k)",
2199
+ "note": "no harmonised method is fixed; the measurement names the method it was made by and claims no more"
2200
+ },
2201
+ "group": "substances"
2202
+ },
2203
+ {
2204
+ "key": "repairabilityAssessment",
2205
+ "pointer": "/repairabilityAssessment",
2206
+ "label": "Repairability, assessed",
2207
+ "valueType": "measurement",
2208
+ "cardinality": "one",
2209
+ "granularity": "model",
2210
+ "provenance": {
2211
+ "capture": "form"
2212
+ },
2213
+ "accessTier": "public",
2214
+ "obligation": "optional",
2215
+ "legalBasis": "ESPR Annex I(c) and Art. 7(2)(b)(iii): a repairability assessment under a named method",
2216
+ "applicability": {
2217
+ "rule": "always"
2218
+ },
2219
+ "requirement": {
2220
+ "status": "anticipated",
2221
+ "source": "eu-espr",
2222
+ "clause": "Annex I(c); Article 7(2)(b)(iii)",
2223
+ "note": "waits on the delegated act on repairability scoring; the assessment names its method and no universal score is mandated"
2224
+ },
2225
+ "group": "repair"
2226
+ },
2227
+ {
2228
+ "key": "warrantyTerms",
2229
+ "pointer": "/warrantyTerms",
2230
+ "label": "Commercial guarantee terms",
2231
+ "valueType": "warrantyTerms",
2232
+ "cardinality": "one",
2233
+ "granularity": "model",
2234
+ "provenance": {
2235
+ "capture": "form"
2236
+ },
2237
+ "accessTier": "public",
2238
+ "obligation": "optional",
2239
+ "legalBasis": "Dir. (EU) 2024/825: a commercial guarantee of durability states its term and what it counts from",
2240
+ "applicability": {
2241
+ "rule": "all",
2242
+ "rules": [
2243
+ {
2244
+ "rule": "effective",
2245
+ "from": "2026-09-27"
2246
+ },
2247
+ {
2248
+ "rule": "unresolved",
2249
+ "reason": "Assess whether the particular commercial guarantee and consumer transaction meet the applicable information conditions.",
2250
+ "source": "eu-2024-825"
2251
+ }
2252
+ ]
2253
+ },
2254
+ "requirement": {
2255
+ "status": "enacted",
2256
+ "source": "eu-2024-825",
2257
+ "clause": "Articles 2 and 4",
2258
+ "note": "Conditional consumer-information rules for a producer commercial guarantee of durability; not a duty to offer a guarantee. Assess the offer, duration, available information and national transposition.",
2259
+ "effectiveDate": "2026-09-27"
2260
+ },
2261
+ "group": "durability"
2262
+ },
2263
+ {
2264
+ "key": "careNoteLocalised",
2265
+ "pointer": "/careNoteLocalised",
2266
+ "label": "Care note, by language",
2267
+ "valueType": "localisedText",
2268
+ "cardinality": "one",
2269
+ "granularity": "model",
2270
+ "provenance": {
2271
+ "capture": "form"
2272
+ },
2273
+ "accessTier": "public",
2274
+ "obligation": "optional",
2275
+ "legalBasis": "ESPR Annex I(a): care information as the maker supplied it in each language",
2276
+ "applicability": {
2277
+ "rule": "always"
2278
+ },
2279
+ "requirement": {
2280
+ "status": "anticipated",
2281
+ "source": "eu-espr",
2282
+ "clause": "Annex I(a)",
2283
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
2284
+ },
2285
+ "group": "durability",
2286
+ "note": "careNote stays the default-language text; a reader selects the exact language, then the base language, then the default, and never rewrites a value."
2287
+ },
2288
+ {
2289
+ "key": "substanceStatementLocalised",
2290
+ "pointer": "/substanceStatementLocalised",
2291
+ "label": "Substance statement, by language",
2292
+ "valueType": "localisedText",
2293
+ "cardinality": "one",
2294
+ "granularity": "model",
2295
+ "provenance": {
2296
+ "capture": "form"
2297
+ },
2298
+ "accessTier": "public",
2299
+ "obligation": "optional",
2300
+ "legalBasis": "ESPR Art. 9(2)(b): the substance statement in each language it was supplied in",
2301
+ "applicability": {
2302
+ "rule": "always"
2303
+ },
2304
+ "requirement": {
2305
+ "status": "anticipated",
2306
+ "source": "eu-espr",
2307
+ "clause": "Article 9(2)(b)",
2308
+ "note": "the ESPR delegated act for textiles is not adopted; the Commission's textile and apparel page gives it an indicative adoption in the fourth quarter of 2027"
2309
+ },
2310
+ "group": "substances"
2311
+ },
2312
+ {
2313
+ "key": "inapplicableFields",
2314
+ "pointer": "/inapplicableFields",
2315
+ "label": "Declared inapplicable fields",
2316
+ "valueType": "record",
2317
+ "cardinality": "many",
2318
+ "granularity": "model",
2319
+ "provenance": {
2320
+ "capture": "form"
2321
+ },
2322
+ "accessTier": "public",
2323
+ "obligation": "optional",
2324
+ "legalBasis": "none: the profile's own declaration by which a record says that a conditional field does not apply to it, with the reason",
2325
+ "applicability": {
2326
+ "rule": "always"
2327
+ },
2328
+ "requirement": {
2329
+ "status": "none",
2330
+ "source": "profile addition",
2331
+ "note": "a declaration is how a missing conditional value stops being unresolved; it never makes a required enacted field optional"
2332
+ },
2333
+ "group": "declarations",
2334
+ "parts": [
2335
+ {
2336
+ "key": "field",
2337
+ "label": "Field key",
2338
+ "valueType": "text",
2339
+ "required": true
2340
+ },
2341
+ {
2342
+ "key": "reason",
2343
+ "label": "Reason",
2344
+ "valueType": "text",
2345
+ "required": true
2346
+ },
2347
+ {
2348
+ "key": "declaredBy",
2349
+ "label": "Declared by",
2350
+ "valueType": "text"
2351
+ }
2352
+ ],
2353
+ "note": "A declaration is an assertion by the declaring party under the record's authorisation; it is shown beside the field it concerns and is never read as the field's value."
2354
+ }
2355
+ ],
2356
+ "eventMappings": [
2357
+ {
2358
+ "nativeOperation": "ACTIVATE",
2359
+ "eventType": "Origin",
2360
+ "externalEvent": "manufacture or commissioning",
2361
+ "requires": "manufacturing or commissioning evidence naming the facility, time and responsible party; the native ACTIVATE alone records only that a passport was opened",
2362
+ "withoutEvidence": "insufficient-data"
2363
+ },
2364
+ {
2365
+ "nativeOperation": "SOLD",
2366
+ "eventType": "Transfer",
2367
+ "externalEvent": "physical move or change of custody",
2368
+ "requires": "actual source and destination movement or custody evidence; a change of token control is not a shipment",
2369
+ "withoutEvidence": "insufficient-data"
2370
+ },
2371
+ {
2372
+ "nativeOperation": "RESOLD",
2373
+ "eventType": "Transfer",
2374
+ "externalEvent": "physical move or change of custody",
2375
+ "requires": "actual source and destination movement or custody evidence",
2376
+ "withoutEvidence": "insufficient-data"
2377
+ },
2378
+ {
2379
+ "nativeOperation": "TRANSFER",
2380
+ "eventType": "Transfer",
2381
+ "externalEvent": "change of custody",
2382
+ "requires": "custody evidence beyond the token transfer; the transfer of token control alone establishes neither physical movement nor legal title",
2383
+ "withoutEvidence": "insufficient-data"
2384
+ },
2385
+ {
2386
+ "nativeOperation": "REPAIRED",
2387
+ "eventType": "Transformation",
2388
+ "externalEvent": "modification (repair)",
2389
+ "requires": "repair evidence naming what was done, by whom and when",
2390
+ "withoutEvidence": "insufficient-data"
2391
+ },
2392
+ {
2393
+ "nativeOperation": "EDIT",
2394
+ "eventType": "Transformation",
2395
+ "externalEvent": "metadata revision",
2396
+ "requires": "nothing physical: an EDIT is a native metadata operation and maps to a record revision, not a physical transformation",
2397
+ "withoutEvidence": "transformed"
2398
+ },
2399
+ {
2400
+ "nativeOperation": "RECYCLED",
2401
+ "eventType": "Disposition",
2402
+ "externalEvent": "disposition, or a process creating new products or materials",
2403
+ "requires": "recycling evidence distinguishing disposition of this item from a process whose outputs carry new identities",
2404
+ "withoutEvidence": "insufficient-data"
2405
+ }
2406
+ ],
2407
+ "sourceRefs": [
2408
+ {
2409
+ "id": "eu-espr",
2410
+ "name": "Regulation (EU) 2024/1781 (ESPR): Art. 4 and Annex I for the product parameters, Art. 9 and Annex III for passport contents, Art. 7(5) for substances of concern",
2411
+ "use": "The framework regulation the profile is aligned with.",
2412
+ "reference": "https://eur-lex.europa.eu/eli/reg/2024/1781/oj"
2413
+ },
2414
+ {
2415
+ "id": "ec-textile-apparel-page",
2416
+ "name": "European Commission, textile and apparel digital product passport page, retrieved 6 September 2026 (SHA-256 c40001fdab9a33f65353e11678e64e736f3209a9dbb04625cef24d12135683b0)",
2417
+ "reference": "https://single-market-economy.ec.europa.eu/single-market/digital-product-passport/textile-apparel_en",
2418
+ "use": "The status and indicative timing of the textile delegated act; informative, not an instrument."
2419
+ },
2420
+ {
2421
+ "id": "reach-1907-2006",
2422
+ "name": "Regulation (EC) 1907/2006 (REACH), Article 33: information on substances of very high concern in articles",
2423
+ "use": "Conditional substance information duties; chemicalCompliance is supporting evidence, not proof of those duties."
2424
+ },
2425
+ {
2426
+ "id": "eu-2024-1760",
2427
+ "name": "Directive (EU) 2024/1760 on corporate sustainability due diligence",
2428
+ "use": "The basis of dueDiligence; in force with deferred application dates."
2429
+ },
2430
+ {
2431
+ "id": "eu-1007-2011",
2432
+ "name": "Regulation (EU) 1007/2011 on textile fibre names and labelling: binding today, and the source of the fibre composition and animal-origin declarations",
2433
+ "use": "Binding labelling law.",
2434
+ "reference": "https://eur-lex.europa.eu/eli/reg/2011/1007/2018-02-15/eng"
2435
+ },
2436
+ {
2437
+ "id": "eu-2024-825",
2438
+ "name": "Directive (EU) 2024/825 on empowering consumers: durability and reparability claims",
2439
+ "use": "Durability and reparability claims.",
2440
+ "reference": "https://eur-lex.europa.eu/eli/dir/2024/825/oj"
2441
+ },
2442
+ {
2443
+ "id": "eu-2008-98",
2444
+ "name": "Directive 2008/98/EC as amended: textile extended producer responsibility and separate collection",
2445
+ "use": "End of life."
2446
+ },
2447
+ {
2448
+ "id": "iso-test-methods",
2449
+ "name": "ISO 3758, ISO 5077, ISO 6330, ISO 12945 and the ISO 105 series, for the test methods the performance values are measured by",
2450
+ "licensedText": true,
2451
+ "use": "Cited by number; no table reproduced."
2452
+ },
2453
+ {
2454
+ "id": "iso3166",
2455
+ "name": "ISO 3166-1 alpha-2",
2456
+ "reference": "ISO 3166-1",
2457
+ "use": "Every value typed country. Officially assigned codes only; user-assigned and exceptionally-reserved codes are excluded so a passport cannot name a place no register resolves.",
2458
+ "fields": [
2459
+ "manufacturingPlace.country",
2460
+ "supplyChain.country",
2461
+ "trims.origin"
2462
+ ]
2463
+ }
2464
+ ],
2465
+ "groups": [
2466
+ {
2467
+ "id": "identification",
2468
+ "title": "Identification"
2469
+ },
2470
+ {
2471
+ "id": "composition",
2472
+ "title": "What it is made of"
2473
+ },
2474
+ {
2475
+ "id": "substances",
2476
+ "title": "Substances of concern"
2477
+ },
2478
+ {
2479
+ "id": "durability",
2480
+ "title": "Durability and care"
2481
+ },
2482
+ {
2483
+ "id": "repair",
2484
+ "title": "Repair and reuse"
2485
+ },
2486
+ {
2487
+ "id": "footprint",
2488
+ "title": "Environmental footprint"
2489
+ },
2490
+ {
2491
+ "id": "endOfLife",
2492
+ "title": "End of life"
2493
+ },
2494
+ {
2495
+ "id": "supply",
2496
+ "title": "Supply chain"
2497
+ },
2498
+ {
2499
+ "id": "owner",
2500
+ "title": "Private to you"
2501
+ },
2502
+ {
2503
+ "id": "declarations",
2504
+ "title": "Declarations"
2505
+ }
2506
+ ],
2507
+ "identity": {
2508
+ "passportIdentifier": "A GS1 Digital Link URI carrying the GTIN under application identifier 01 and the serial under 21 (spec/record-model.md section 3); the enduring identifier never changes across the chain.",
2509
+ "granularities": [
2510
+ "batch",
2511
+ "item",
2512
+ "model"
2513
+ ],
2514
+ "modelIdentifier": "modelIdentifier",
2515
+ "batchIdentifier": "batch",
2516
+ "parentRelations": [
2517
+ {
2518
+ "child": "batch",
2519
+ "parent": "model"
2520
+ }
2521
+ ]
2522
+ },
2523
+ "succession": {
2524
+ "of": "textile@3",
2525
+ "migration": [
2526
+ {
2527
+ "from": "name",
2528
+ "to": "name",
2529
+ "outcome": "relabelled",
2530
+ "note": "Changed legalBasis, requirement. The name the brand sells it under, written by a person for a person."
2531
+ },
2532
+ {
2533
+ "from": "category",
2534
+ "to": "category",
2535
+ "outcome": "relabelled",
2536
+ "note": "Changed legalBasis, requirement. Open: ESPR scope for textiles is set by the delegated act, so a closed list would be our guess wearing the regulation’s clothes."
2537
+ },
2538
+ {
2539
+ "from": "modelIdentifier",
2540
+ "to": "modelIdentifier",
2541
+ "outcome": "relabelled",
2542
+ "note": "Changed legalBasis, requirement. Review the new definition and applicability before creating a successor state."
2543
+ },
2544
+ {
2545
+ "from": "batch",
2546
+ "to": "batch",
2547
+ "outcome": "relabelled",
2548
+ "note": "Changed legalBasis, requirement. Review the new definition and applicability before creating a successor state."
2549
+ },
2550
+ {
2551
+ "from": "gtin",
2552
+ "to": "gtin",
2553
+ "outcome": "unchanged",
2554
+ "note": "Unchanged from the predecessor."
2555
+ },
2556
+ {
2557
+ "from": "manufacturer",
2558
+ "to": "manufacturer",
2559
+ "outcome": "relabelled",
2560
+ "note": "Changed legalBasis, note, requirement. Article 15 allocates labelling responsibilities; it does not establish this standalone passport brand-name field. Identify the responsible manufacturer separately."
2561
+ },
2562
+ {
2563
+ "from": "manufacturerContact",
2564
+ "to": "manufacturerContact",
2565
+ "outcome": "relabelled",
2566
+ "note": "Changed legalBasis, requirement. An email, a postal address or a page. Constraining it to one shape would exclude the others."
2567
+ },
2568
+ {
2569
+ "from": "operatorId",
2570
+ "to": "operatorId",
2571
+ "outcome": "unchanged",
2572
+ "note": "Unchanged from the predecessor."
2573
+ },
2574
+ {
2575
+ "from": "manufacturingPlace",
2576
+ "to": "manufacturingPlace",
2577
+ "outcome": "relabelled",
2578
+ "note": "Changed legalBasis, note, requirement. Article 16 of Regulation (EU) 1007/2011 concerns presentation and language of fibre information; it does not establish this origin field. Other origin obligations require their own assessment."
2579
+ },
2580
+ {
2581
+ "from": "made",
2582
+ "to": "made",
2583
+ "outcome": "unchanged",
2584
+ "note": "Unchanged from the predecessor."
2585
+ },
2586
+ {
2587
+ "from": "colour",
2588
+ "to": "colour",
2589
+ "outcome": "unchanged",
2590
+ "note": "Unchanged from the predecessor."
2591
+ },
2592
+ {
2593
+ "from": "size",
2594
+ "to": "size",
2595
+ "outcome": "unchanged",
2596
+ "note": "Unchanged from the predecessor."
2597
+ },
2598
+ {
2599
+ "from": "weight",
2600
+ "to": "weight",
2601
+ "outcome": "unchanged",
2602
+ "note": "Unchanged from the predecessor."
2603
+ },
2604
+ {
2605
+ "from": "fibres",
2606
+ "to": "fibres",
2607
+ "outcome": "relabelled",
2608
+ "note": "Changed note. Whole-product composition does not replace component declarations required by Article 11. Assess fibre names, permitted descriptions, calculation basis and labelling separately."
2609
+ },
2610
+ {
2611
+ "from": "nonTextileParts",
2612
+ "to": "nonTextileParts",
2613
+ "outcome": "unchanged",
2614
+ "note": "Unchanged from the predecessor."
2615
+ },
2616
+ {
2617
+ "from": "recycledContent",
2618
+ "to": "recycledContent",
2619
+ "outcome": "unchanged",
2620
+ "note": "Unchanged from the predecessor."
2621
+ },
2622
+ {
2623
+ "from": "biobasedContent",
2624
+ "to": "biobasedContent",
2625
+ "outcome": "unchanged",
2626
+ "note": "Unchanged from the predecessor."
2627
+ },
2628
+ {
2629
+ "from": "trims",
2630
+ "to": "trims",
2631
+ "outcome": "unchanged",
2632
+ "note": "Unchanged from the predecessor."
2633
+ },
2634
+ {
2635
+ "from": "substancesOfConcern",
2636
+ "to": "substancesOfConcern",
2637
+ "outcome": "unchanged",
2638
+ "note": "Unchanged from the predecessor."
2639
+ },
2640
+ {
2641
+ "from": "substanceStatement",
2642
+ "to": "substanceStatement",
2643
+ "outcome": "unchanged",
2644
+ "note": "Unchanged from the predecessor."
2645
+ },
2646
+ {
2647
+ "from": "chemicalCompliance",
2648
+ "to": "chemicalCompliance",
2649
+ "outcome": "relabelled",
2650
+ "note": "Changed legalBasis, note, requirement. This field carries supporting evidence by application choice. REACH Article 33 communication duties need a separate substance, threshold and recipient assessment; an evidence document is not that assessment."
2651
+ },
2652
+ {
2653
+ "from": "microplasticRelease",
2654
+ "to": "microplasticRelease",
2655
+ "outcome": "unchanged",
2656
+ "note": "Unchanged from the predecessor."
2657
+ },
2658
+ {
2659
+ "from": "care",
2660
+ "to": "care",
2661
+ "outcome": "relabelled",
2662
+ "note": "Changed legalBasis, note, requirement. The cited consumer-information directive does not mandate this fixed care-code list. ISO care-symbol use and applicable labelling requirements need separate assessment."
2663
+ },
2664
+ {
2665
+ "from": "careNote",
2666
+ "to": "careNote",
2667
+ "outcome": "unchanged",
2668
+ "note": "Unchanged from the predecessor."
2669
+ },
2670
+ {
2671
+ "from": "expectedLifetime",
2672
+ "to": "expectedLifetime",
2673
+ "outcome": "relabelled",
2674
+ "note": "Changed legalBasis, note, requirement. No universal lifetime-in-years passport field is established by the cited consumer-information provision. Any voluntary durability claim still needs substantiation."
2675
+ },
2676
+ {
2677
+ "from": "washCycles",
2678
+ "to": "washCycles",
2679
+ "outcome": "unchanged",
2680
+ "note": "Unchanged from the predecessor."
2681
+ },
2682
+ {
2683
+ "from": "colourFastness",
2684
+ "to": "colourFastness",
2685
+ "outcome": "unchanged",
2686
+ "note": "Unchanged from the predecessor."
2687
+ },
2688
+ {
2689
+ "from": "dimensionalStability",
2690
+ "to": "dimensionalStability",
2691
+ "outcome": "unchanged",
2692
+ "note": "Unchanged from the predecessor."
2693
+ },
2694
+ {
2695
+ "from": "pillingResistance",
2696
+ "to": "pillingResistance",
2697
+ "outcome": "unchanged",
2698
+ "note": "Unchanged from the predecessor."
2699
+ },
2700
+ {
2701
+ "from": "guarantee",
2702
+ "to": "guarantee",
2703
+ "outcome": "relabelled",
2704
+ "note": "Changed applicability, requirement. Review the new definition and applicability before creating a successor state."
2705
+ },
2706
+ {
2707
+ "from": "repairability",
2708
+ "to": "repairability",
2709
+ "outcome": "unchanged",
2710
+ "note": "Unchanged from the predecessor."
2711
+ },
2712
+ {
2713
+ "from": "spareParts",
2714
+ "to": "spareParts",
2715
+ "outcome": "unchanged",
2716
+ "note": "Unchanged from the predecessor."
2717
+ },
2718
+ {
2719
+ "from": "repairInstructions",
2720
+ "to": "repairInstructions",
2721
+ "outcome": "unchanged",
2722
+ "note": "Unchanged from the predecessor."
2723
+ },
2724
+ {
2725
+ "from": "repairServices",
2726
+ "to": "repairServices",
2727
+ "outcome": "unchanged",
2728
+ "note": "Unchanged from the predecessor."
2729
+ },
2730
+ {
2731
+ "from": "carbonFootprint",
2732
+ "to": "carbonFootprint",
2733
+ "outcome": "unchanged",
2734
+ "note": "Unchanged from the predecessor."
2735
+ },
2736
+ {
2737
+ "from": "carbonFootprintStudy",
2738
+ "to": "carbonFootprintStudy",
2739
+ "outcome": "unchanged",
2740
+ "note": "Unchanged from the predecessor."
2741
+ },
2742
+ {
2743
+ "from": "footprintClass",
2744
+ "to": "footprintClass",
2745
+ "outcome": "unchanged",
2746
+ "note": "Unchanged from the predecessor."
2747
+ },
2748
+ {
2749
+ "from": "waterUse",
2750
+ "to": "waterUse",
2751
+ "outcome": "unchanged",
2752
+ "note": "Unchanged from the predecessor."
2753
+ },
2754
+ {
2755
+ "from": "collection",
2756
+ "to": "collection",
2757
+ "outcome": "relabelled",
2758
+ "note": "Changed legalBasis, note, requirement. The separate-collection duty on Member States does not itself mandate this individual passport instruction field."
2759
+ },
2760
+ {
2761
+ "from": "recyclability",
2762
+ "to": "recyclability",
2763
+ "outcome": "unchanged",
2764
+ "note": "Unchanged from the predecessor."
2765
+ },
2766
+ {
2767
+ "from": "separability",
2768
+ "to": "separability",
2769
+ "outcome": "unchanged",
2770
+ "note": "Unchanged from the predecessor."
2771
+ },
2772
+ {
2773
+ "from": "eprRegistration",
2774
+ "to": "eprRegistration",
2775
+ "outcome": "unchanged",
2776
+ "note": "Unchanged from the predecessor."
2777
+ },
2778
+ {
2779
+ "from": "supplyChain",
2780
+ "to": "supplyChain",
2781
+ "outcome": "unchanged",
2782
+ "note": "Unchanged from the predecessor."
2783
+ },
2784
+ {
2785
+ "from": "certifications",
2786
+ "to": "certifications",
2787
+ "outcome": "relabelled",
2788
+ "note": "Changed applicability, legalBasis, requirement. Open: a closed list of schemes would read as an endorsement of exactly those."
2789
+ },
2790
+ {
2791
+ "from": "dueDiligence",
2792
+ "to": "dueDiligence",
2793
+ "outcome": "unchanged",
2794
+ "note": "Unchanged from the predecessor."
2795
+ },
2796
+ {
2797
+ "from": "provenance",
2798
+ "to": "provenance",
2799
+ "outcome": "unchanged",
2800
+ "note": "Unchanged from the predecessor."
2801
+ },
2802
+ {
2803
+ "from": "purchase",
2804
+ "to": "purchase",
2805
+ "outcome": "unchanged",
2806
+ "note": "Unchanged from the predecessor."
2807
+ },
2808
+ {
2809
+ "from": "personalisation",
2810
+ "to": "personalisation",
2811
+ "outcome": "unchanged",
2812
+ "note": "Unchanged from the predecessor."
2813
+ },
2814
+ {
2815
+ "from": "warrantyRegistration",
2816
+ "to": "warrantyRegistration",
2817
+ "outcome": "unchanged",
2818
+ "note": "Unchanged from the predecessor."
2819
+ },
2820
+ {
2821
+ "from": "components",
2822
+ "to": "components",
2823
+ "outcome": "unchanged",
2824
+ "note": "Unchanged from the predecessor."
2825
+ },
2826
+ {
2827
+ "from": "componentFibres",
2828
+ "to": "componentFibres",
2829
+ "outcome": "relabelled",
2830
+ "note": "Changed applicability, legalBasis, note, obligation, requirement. Evaluate composition for each relevant component. A whole-product average cannot replace a required component declaration. Retain evidence for any exception and the applicable fibre naming and language rules."
2831
+ },
2832
+ {
2833
+ "from": "recycledContentAssessment",
2834
+ "to": "recycledContentAssessment",
2835
+ "outcome": "unchanged",
2836
+ "note": "Unchanged from the predecessor."
2837
+ },
2838
+ {
2839
+ "from": "certificationEvidence",
2840
+ "to": "certificationEvidence",
2841
+ "outcome": "relabelled",
2842
+ "note": "Changed applicability, legalBasis, requirement. Review the new definition and applicability before creating a successor state."
2843
+ },
2844
+ {
2845
+ "from": "relatedDocuments",
2846
+ "to": "relatedDocuments",
2847
+ "outcome": "unchanged",
2848
+ "note": "Unchanged from the predecessor."
2849
+ },
2850
+ {
2851
+ "from": "microfibreReleaseAssessment",
2852
+ "to": "microfibreReleaseAssessment",
2853
+ "outcome": "unchanged",
2854
+ "note": "Unchanged from the predecessor."
2855
+ },
2856
+ {
2857
+ "from": "repairabilityAssessment",
2858
+ "to": "repairabilityAssessment",
2859
+ "outcome": "unchanged",
2860
+ "note": "Unchanged from the predecessor."
2861
+ },
2862
+ {
2863
+ "from": "warrantyTerms",
2864
+ "to": "warrantyTerms",
2865
+ "outcome": "relabelled",
2866
+ "note": "Changed applicability, requirement. Review the new definition and applicability before creating a successor state."
2867
+ },
2868
+ {
2869
+ "from": "careNoteLocalised",
2870
+ "to": "careNoteLocalised",
2871
+ "outcome": "unchanged",
2872
+ "note": "Unchanged from the predecessor."
2873
+ },
2874
+ {
2875
+ "from": "substanceStatementLocalised",
2876
+ "to": "substanceStatementLocalised",
2877
+ "outcome": "unchanged",
2878
+ "note": "Unchanged from the predecessor."
2879
+ },
2880
+ {
2881
+ "from": "inapplicableFields",
2882
+ "to": "inapplicableFields",
2883
+ "outcome": "unchanged",
2884
+ "note": "Unchanged from the predecessor."
2885
+ }
2886
+ ]
2887
+ }
2888
+ }