@instruments/taxonomy 1.3.1 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -6,6 +6,16 @@ var AUTHORED = {
6
6
  basis: "authored",
7
7
  source: "@instruments/taxonomy - decomposition of a role dictionary in a materials-retrieval system (src-05), 2026-08-27"
8
8
  };
9
+ var AUTHORED_SECTOR = {
10
+ basis: "authored",
11
+ source: "@instruments/taxonomy - umbrella authored over the vendored sector dictionary, against the local `commercial` and `industrial` extension in a materials-retrieval system (src-05), 2026-09-19"
12
+ };
13
+ var MARKETPLACE_SECTOR = {
14
+ basis: "evidenced",
15
+ snapshot: "2026-09-20",
16
+ source: "the industry_sector column in a materials-marketplace catalogue (src-04)"
17
+ };
18
+ var MARKETPLACE_SECTOR_REVIEW = "2026-09-23";
9
19
  var MATERIAL_FAMILY_TERMS = [
10
20
  { label: "Paint", slug: "paint" },
11
21
  {
@@ -41,11 +51,11 @@ var MATERIAL_FAMILY_TERMS = [
41
51
  { label: "Other", slug: "other" }
42
52
  ];
43
53
  var SECTOR_TERMS = [
44
- { label: "Hospitality", slug: "hospitality" },
54
+ { broaderSlug: "commercial", label: "Hospitality", slug: "hospitality" },
45
55
  { label: "Healthcare", slug: "healthcare" },
46
- { label: "Workplace", slug: "workplace" },
56
+ { broaderSlug: "commercial", label: "Workplace", slug: "workplace" },
47
57
  { label: "Residential", slug: "residential" },
48
- { label: "Retail", slug: "retail" },
58
+ { broaderSlug: "commercial", label: "Retail", slug: "retail" },
49
59
  { label: "Education", slug: "education" },
50
60
  { label: "Civic", slug: "civic" },
51
61
  { label: "Mixed-Use", slug: "mixed-use" },
@@ -53,7 +63,104 @@ var SECTOR_TERMS = [
53
63
  label: "Transportation",
54
64
  slug: "transportation"
55
65
  },
56
- { label: "Other", slug: "other" }
66
+ { label: "Other", slug: "other" },
67
+ {
68
+ // AUTHORED. The umbrella a materials-retrieval system had already minted locally, and the term
69
+ // the SPACE axis kept needing words for - `lounge` "in a commercial setting", `commercial
70
+ // kitchen` "rather than a room in a home". Authored here so a consumer asks the canon for it
71
+ // instead of extending the canon privately.
72
+ definition: "A project let or operated as revenue-earning business premises, covering hospitality, workplace, retail and industrial.",
73
+ label: "Commercial",
74
+ note: "Not a synonym for non-residential. Healthcare, education, civic and transportation are institutional or infrastructure and sit outside this term, so the coarse residential-against-everything-else question is still not one term on this axis. A consumer needing that split asks for the residential sector and negates it, which is a consumer's query and not a claim this canon makes.",
75
+ provenance: AUTHORED_SECTOR,
76
+ slug: "commercial"
77
+ },
78
+ {
79
+ // AUTHORED, and a LEAF under the umbrella rather than a peer of it: a plant or a distribution
80
+ // shed is let and run as revenue-earning premises like an office is.
81
+ broaderSlug: "commercial",
82
+ definition: "A project whose premises exist for production, storage or distribution: factories, plants, workshops, warehouses and logistics sheds.",
83
+ label: "Industrial",
84
+ note: "The market, never the idiom. `style.industrial` is the aesthetic a converted mill lends a flat, and the corpus publishes the spelling as ambiguous between the two rather than merging them.",
85
+ provenance: AUTHORED_SECTOR,
86
+ slug: "industrial"
87
+ },
88
+ {
89
+ // EVIDENCED, and a ROOT. The largest sector value the marketplace catalogue carries that had
90
+ // no term here; a consumer had been filing it under `residential`, which is true of independent
91
+ // living and false of memory care.
92
+ definition: "A project housing older adults with services or care on site: independent living, assisted living, memory care and continuing-care communities.",
93
+ introducedAt: MARKETPLACE_SECTOR_REVIEW,
94
+ label: "Senior Living",
95
+ note: "Under neither `residential` nor `healthcare`. Independent living is a home with services and not a care setting; memory care is a care setting and not an ordinary home; so an ISA edge to either parent is true of one end of the market and false of the other. A project that is also plainly one of those carries both terms. A hospital's geriatric ward is healthcare, not this.",
96
+ provenance: MARKETPLACE_SECTOR,
97
+ reviewedAt: MARKETPLACE_SECTOR_REVIEW,
98
+ seenAs: ["Senior Living"],
99
+ slug: "senior-living"
100
+ },
101
+ {
102
+ // EVIDENCED, and the one new term that takes a vendored parent's name for its own ISA edge:
103
+ // every government project is a civic one. The reverse is not true, which is why `civic` is
104
+ // not relabelled: a community centre or a public square is civic and has no public authority
105
+ // for a client.
106
+ broaderSlug: "civic",
107
+ definition: "A project for a public authority's own premises: legislatures, courthouses, town and city halls, government offices, embassies, and police and fire stations.",
108
+ introducedAt: MARKETPLACE_SECTOR_REVIEW,
109
+ label: "Government",
110
+ note: "Beneath `civic`, which also covers public buildings with no authority as client. Defence estate is not named here; nothing in the evidence asked for it. `typology.civic-building` is the building, this is the market, and a council office in a converted warehouse is government whatever the building was.",
111
+ provenance: MARKETPLACE_SECTOR,
112
+ reviewedAt: MARKETPLACE_SECTOR_REVIEW,
113
+ seenAs: ["Government"],
114
+ slug: "government"
115
+ },
116
+ {
117
+ // EVIDENCED, and a ROOT. A consumer had been filing it under `other`.
118
+ definition: "A project whose premises exist for research, development and testing: laboratories, research institutes, cleanrooms and research-and-development buildings.",
119
+ introducedAt: MARKETPLACE_SECTOR_REVIEW,
120
+ label: "Science & Technology",
121
+ note: "Not under `commercial`: a university or state research institute is not let or run as revenue-earning premises. A teaching laboratory in a school is `education` and a hospital's pathology laboratory is `healthcare`; a building that exists for research carries this term whoever owns it, and may carry either of those as well.",
122
+ provenance: MARKETPLACE_SECTOR,
123
+ reviewedAt: MARKETPLACE_SECTOR_REVIEW,
124
+ seenAs: ["Science + Technology"],
125
+ slug: "science-technology"
126
+ },
127
+ {
128
+ // EVIDENCED, and a ROOT rather than a child of `civic`, which is where a consumer had been
129
+ // filing it.
130
+ definition: "A project for keeping, showing or performing culture: museums, galleries, libraries, archives, theatres and concert halls.",
131
+ introducedAt: MARKETPLACE_SECTOR_REVIEW,
132
+ label: "Cultural",
133
+ note: "Not beneath `civic`. A civic museum or a public library is both and carries both terms, but a commercial gallery or a privately run theatre is cultural and not civic, so the ISA edge would be false of part of the market. The building types are `typology.museum`, `typology.gallery`, `typology.library` and `typology.theatre`; this is the market they serve.",
134
+ provenance: MARKETPLACE_SECTOR,
135
+ reviewedAt: MARKETPLACE_SECTOR_REVIEW,
136
+ seenAs: ["Cultural"],
137
+ slug: "cultural"
138
+ },
139
+ {
140
+ // EVIDENCED, and a ROOT. A consumer had been filing it under `other`.
141
+ definition: "A project for sport, fitness and active recreation: stadiums, arenas, sports and leisure centres, gyms, pools and clubhouses.",
142
+ introducedAt: MARKETPLACE_SECTOR_REVIEW,
143
+ label: "Sports & Recreation",
144
+ note: "The market. `application.recreation-sport` is the product-facing claim that a material may be specified for a sports use, and `typology.gym` and `typology.stadium` are the buildings. Not under `commercial`: a municipal leisure centre or a school sports hall is not run as revenue-earning premises. A hotel gym is `hospitality`.",
145
+ provenance: MARKETPLACE_SECTOR,
146
+ reviewedAt: MARKETPLACE_SECTOR_REVIEW,
147
+ seenAs: ["Sports + Recreation"],
148
+ slug: "sports-recreation"
149
+ },
150
+ {
151
+ // EVIDENCED, and beneath the vendored `transportation`, whose vehicle sense the APPLICATION
152
+ // axis already spells out as automotive, aviation and marine. A consumer had been filing it
153
+ // under `other`.
154
+ broaderSlug: "transportation",
155
+ definition: "A project fitting out a vessel: yachts, cruise ships, ferries and other boats, their interiors and exposed decks.",
156
+ introducedAt: MARKETPLACE_SECTOR_REVIEW,
157
+ label: "Marine",
158
+ note: "Beneath `transportation`, which covers the vehicle as well as the station. `application.transportation-marine` is the product-facing claim under the same word, and the corpus publishes the spelling as ambiguous between the two rather than merging them. A cruise ship's hotel decks may carry `hospitality` as well. A waterfront building is not marine: it takes the sector of what it is.",
159
+ provenance: MARKETPLACE_SECTOR,
160
+ reviewedAt: MARKETPLACE_SECTOR_REVIEW,
161
+ seenAs: ["Marine"],
162
+ slug: "marine"
163
+ }
57
164
  ];
58
165
  var APPLICATION_TERMS = [
59
166
  { slug: "wall", label: "Wall" },
@@ -346,6 +453,27 @@ var single = (slug, label, terms, governance) => [
346
453
  // src/axes/construction.ts
347
454
  var SOURCE = "construction vocabulary in a furnishings retailer (src-03)";
348
455
  var SNAPSHOT = "2026-08-25";
456
+ var REVIEW_DATE = "2026-09-11";
457
+ var REVIEW_SOURCE = "everyday-interiors vocabulary review";
458
+ var wikidata = (id, label) => `Wikidata ${id} ${label}, https://www.wikidata.org/wiki/${id}`;
459
+ var reviewed = (slug, label, definition, source, extra = {}) => ({
460
+ definition,
461
+ introducedAt: REVIEW_DATE,
462
+ label,
463
+ provenance: { basis: "referenced", snapshot: REVIEW_DATE, source },
464
+ reviewedAt: REVIEW_DATE,
465
+ slug,
466
+ ...extra
467
+ });
468
+ var authored = (slug, label, definition, extra = {}) => ({
469
+ definition,
470
+ introducedAt: REVIEW_DATE,
471
+ label,
472
+ provenance: { basis: "authored", source: REVIEW_SOURCE },
473
+ reviewedAt: REVIEW_DATE,
474
+ slug,
475
+ ...extra
476
+ });
349
477
  var term = (slug, label, definition) => ({
350
478
  definition,
351
479
  label,
@@ -358,11 +486,28 @@ var CONSTRUCTION_TERMS = [
358
486
  "Encaustic",
359
487
  "Made with colour or decoration integral to the body or inlaid beneath the wearing surface."
360
488
  ),
361
- term(
362
- "engineered-hardwood",
363
- "Engineered hardwood",
364
- "A hardwood wear layer bonded to a dimensionally stable layered core."
489
+ // Beneath `encaustic`: a hydraulically pressed cement tile carries its pigment layer beneath the
490
+ // wearing surface, which is what `encaustic` means here, so it is a narrower construction and
491
+ // not an alternate label. `encaustic cement tile` is a wild form.
492
+ reviewed(
493
+ "cement-tile",
494
+ "Cement tile",
495
+ "A tile of pigmented cement pressed hydraulically and cured without firing, its colour layer integral beneath the wearing surface.",
496
+ wikidata("Q3700458", "cement tile"),
497
+ {
498
+ altLabels: ["hydraulic tile"],
499
+ broaderSlug: "encaustic",
500
+ seenAs: ["encaustic cement tile"]
501
+ }
365
502
  ),
503
+ {
504
+ ...term(
505
+ "engineered-hardwood",
506
+ "Engineered hardwood",
507
+ "A hardwood wear layer bonded to a dimensionally stable layered core."
508
+ ),
509
+ altLabels: ["engineered wood"]
510
+ },
366
511
  term(
367
512
  "handcrafted",
368
513
  "Handcrafted",
@@ -378,31 +523,65 @@ var CONSTRUCTION_TERMS = [
378
523
  "Handwoven",
379
524
  "Woven on a hand-operated loom or by direct manual interlacing."
380
525
  ),
381
- term(
382
- "high-pressure-laminate",
383
- "High-pressure laminate",
384
- "Layers consolidated under high heat and pressure into a decorative sheet."
385
- ),
526
+ {
527
+ ...term(
528
+ "high-pressure-laminate",
529
+ "High-pressure laminate",
530
+ "Layers consolidated under high heat and pressure into a decorative sheet."
531
+ ),
532
+ altLabels: ["HPL"]
533
+ },
386
534
  term(
387
535
  "laminated",
388
536
  "Laminated",
389
537
  "Made by bonding distinct layers into one assembly."
390
538
  ),
539
+ reviewed(
540
+ "tongue-and-groove",
541
+ "Tongue and groove",
542
+ "Boards made with a projecting tongue on one edge and a matching groove on the other so they interlock edge to edge.",
543
+ wikidata("Q1891935", "tongue and groove"),
544
+ { altLabels: ["T&G"] }
545
+ ),
546
+ reviewed(
547
+ "shiplap",
548
+ "Shiplap",
549
+ "Boards made with a rebate on opposite faces of opposite edges so each overlaps its neighbour with a recessed joint.",
550
+ wikidata("Q7498008", "shiplap")
551
+ ),
552
+ // AUTHORED. Wikidata holds only a disambiguation page for `beadboard`.
553
+ authored(
554
+ "beadboard",
555
+ "Beadboard",
556
+ "Lining boards or panels made with narrow vertical planks divided by a rounded bead at each joint, whether solid boards or a routed sheet."
557
+ ),
391
558
  term(
392
559
  "loop-pile",
393
560
  "Loop pile",
394
561
  "A textile floor construction whose yarn loops remain uncut."
395
562
  ),
396
- term(
397
- "luxury-vinyl",
398
- "Luxury vinyl",
399
- "A layered resilient vinyl construction carrying a decorative image and protective wear layer."
400
- ),
563
+ {
564
+ ...term(
565
+ "luxury-vinyl",
566
+ "Luxury vinyl",
567
+ "A layered resilient vinyl construction carrying a decorative image and protective wear layer."
568
+ ),
569
+ altLabels: ["LVT", "luxury vinyl tile", "LVP", "luxury vinyl plank"]
570
+ },
401
571
  term(
402
572
  "non-woven",
403
573
  "Non-woven",
404
574
  "A sheet formed by bonding or entangling fibres without weaving or knitting."
405
575
  ),
576
+ // Felt sits here and not on MATERIAL: felt is a way of making a textile, and every felt is a
577
+ // non-woven, so ISA holds. The fibre is a separate MATERIAL claim.
578
+ reviewed(
579
+ "felt",
580
+ "Felt",
581
+ "A non-woven textile consolidated by matting, condensing and pressing fibres; the fibre is a separate claim.",
582
+ wikidata("Q189964", "felt"),
583
+ { broaderSlug: "non-woven" }
584
+ ),
406
585
  term(
407
586
  "precast-moulded",
408
587
  "Precast or moulded",
@@ -433,30 +612,58 @@ var CONSTRUCTION_TERMS = [
433
612
  "Through body",
434
613
  "Colour and composition continue through the full thickness rather than sitting only on the face."
435
614
  ),
615
+ reviewed(
616
+ "zellige",
617
+ "Zellige",
618
+ "Hand-cut and hand-glazed clay tile in the Moroccan tradition, with the irregular surface and edge that method leaves; it does not name a colour, size or layout.",
619
+ wikidata("Q189046", "zellij"),
620
+ { altLabels: ["zellij", "zillij"] }
621
+ ),
436
622
  term(
437
623
  "woven",
438
624
  "Woven",
439
625
  "Made by interlacing warp and weft or equivalent orthogonal yarn systems."
626
+ ),
627
+ reviewed(
628
+ "velvet",
629
+ "Velvet",
630
+ "A woven pile fabric whose cut pile stands from the ground weave; fibre, pile height and backing remain unspecified.",
631
+ wikidata("Q243519", "velvet")
632
+ ),
633
+ // Lowercase ASCII slug so the phrase resolves without the diacritic; the accented spelling is a
634
+ // wild form rather than the label, so both readings reach one term.
635
+ reviewed(
636
+ "boucle",
637
+ "Boucle",
638
+ "A woven or knitted fabric whose surface is made of looped or knotted fancy yarn; the yarn and the fabric share the name.",
639
+ wikidata("Q776110", "boucl\xE9"),
640
+ { seenAs: ["boucl\xE9"] }
641
+ ),
642
+ reviewed(
643
+ "chenille",
644
+ "Chenille",
645
+ "A fabric woven from chenille yarn, a fuzzy pile yarn cut from a leno-woven strip; fibre and backing remain unspecified.",
646
+ wikidata("Q1070065", "chenille")
440
647
  )
441
648
  ];
442
649
 
443
650
  // src/axes/daylight.ts
444
- var REVIEW_DATE = "2026-09-11";
651
+ var REVIEW_DATE2 = "2026-09-11";
445
652
  var AUTHORED2 = {
446
653
  basis: "authored",
447
654
  source: "@instruments/taxonomy ADR 0006"
448
655
  };
449
656
  var EN_17037 = {
450
657
  basis: "referenced",
451
- snapshot: REVIEW_DATE,
658
+ snapshot: REVIEW_DATE2,
452
659
  source: "EN 17037:2018 Daylight in buildings"
453
660
  };
454
661
  var term2 = (provenance, slug, label, definition, extra = {}) => ({
455
662
  definition,
456
- introducedAt: REVIEW_DATE,
663
+ introducedAt: REVIEW_DATE2,
457
664
  label,
458
665
  provenance,
459
- reviewedAt: REVIEW_DATE,
666
+ reviewedAt: REVIEW_DATE2,
460
667
  slug,
461
668
  ...extra
462
669
  });
@@ -613,7 +820,7 @@ var ELEMENT_FABRIC_TERMS = [
613
820
  slug: "cladding"
614
821
  },
615
822
  {
616
- altLabels: ["paneling", "wainscot"],
823
+ altLabels: ["paneling", "wainscot", "wainscoting"],
617
824
  definition: "A framed timber or board lining applied to a wall face, read as joinery rather than as wall.",
618
825
  external: [aat("300002691", "wainscoting", "narrow")],
619
826
  label: "Panelling",
@@ -1187,6 +1394,27 @@ var RETRIEVAL_SNAPSHOT = "2026-08-27";
1187
1394
  var CORPUS = "the surface_texture column in a materials-marketplace catalogue (src-04)";
1188
1395
  var CORPUS_SNAPSHOT = "2026-08-27";
1189
1396
  var DROPPED = "Restored 2026-08-27. Dropped in normalisation.";
1397
+ var REVIEW_DATE3 = "2026-09-11";
1398
+ var REVIEW_SOURCE2 = "everyday-interiors vocabulary review";
1399
+ var wikidata2 = (id, label) => `Wikidata ${id} ${label}, https://www.wikidata.org/wiki/${id}`;
1400
+ var reviewed2 = (slug, label, definition, source, extra = {}) => ({
1401
+ definition,
1402
+ introducedAt: REVIEW_DATE3,
1403
+ label,
1404
+ provenance: { basis: "referenced", snapshot: REVIEW_DATE3, source },
1405
+ reviewedAt: REVIEW_DATE3,
1406
+ slug,
1407
+ ...extra
1408
+ });
1409
+ var authored2 = (slug, label, definition, extra = {}) => ({
1410
+ definition,
1411
+ introducedAt: REVIEW_DATE3,
1412
+ label,
1413
+ provenance: { basis: "authored", source: REVIEW_SOURCE2 },
1414
+ reviewedAt: REVIEW_DATE3,
1415
+ slug,
1416
+ ...extra
1417
+ });
1190
1418
  var term3 = (slug, label, definition) => ({
1191
1419
  definition,
1192
1420
  label,
@@ -1254,6 +1482,34 @@ var FINISH_TREATMENT_TERMS = [
1254
1482
  "polished",
1255
1483
  "Polished",
1256
1484
  "Mechanically refined to a smooth, reflective surface."
1485
+ ),
1486
+ // AUTHORED. Wikidata's nearest item is `whitewash` (Q378312), the cheaper cousin and not the
1487
+ // pigmented, mottled finish the trade means by limewash.
1488
+ authored2(
1489
+ "limewash",
1490
+ "Limewash",
1491
+ "A thin coat of slaked lime and pigment applied wet and carbonated in place, drying to a soft, mottled matte surface.",
1492
+ { altLabels: ["lime wash"] }
1493
+ ),
1494
+ // AUTHORED. No Wikidata item on the review date.
1495
+ authored2(
1496
+ "microcement",
1497
+ "Microcement",
1498
+ "A thin polymer-modified cementitious coating trowelled over an existing substrate and sealed, read as a continuous surface without joints.",
1499
+ { altLabels: ["micro cement"], seenAs: ["microtopping"] }
1500
+ ),
1501
+ reviewed2(
1502
+ "tadelakt",
1503
+ "Tadelakt",
1504
+ "A lime plaster finish in the Moroccan tradition, polished with a stone and sealed with soap to a waterproof, softly reflective surface.",
1505
+ wikidata2("Q1357903", "tadelakt")
1506
+ ),
1507
+ // AUTHORED. No Wikidata item for `venetian plaster` on the review date.
1508
+ authored2(
1509
+ "venetian-plaster",
1510
+ "Venetian plaster",
1511
+ "A lime-and-marble-dust plaster applied in thin burnished layers to a smooth surface with depth and sheen; it names the treatment, not the plaster material.",
1512
+ { altLabels: ["polished plaster", "marmorino"] }
1257
1513
  )
1258
1514
  ];
1259
1515
  var FINISH_SHEEN_TERMS = [
@@ -1357,6 +1613,18 @@ var FINISH_TEXTURE_TERMS = [
1357
1613
  "Ribbed",
1358
1614
  "Regular parallel relief across the surface."
1359
1615
  ),
1616
+ reviewed2(
1617
+ "fluted",
1618
+ "Fluted",
1619
+ "Regular parallel concave grooves cut or formed into the surface; the flutes are the hollows.",
1620
+ wikidata2("Q99552008", "fluting")
1621
+ ),
1622
+ reviewed2(
1623
+ "reeded",
1624
+ "Reeded",
1625
+ "Regular parallel convex half-round ridges standing from the surface; the reeds are the raised parts, the inverse of fluted.",
1626
+ wikidata2("Q4152515", "reeding")
1627
+ ),
1360
1628
  repaired(
1361
1629
  "embossed",
1362
1630
  "Embossed",
@@ -1406,6 +1674,14 @@ var searchCorpusEvidence = (phrases) => `${SEARCH_CORPUS} (244-query external se
1406
1674
  var SOURCE2 = "format vocabulary in a furnishings retailer (src-03)";
1407
1675
  var SNAPSHOT2 = "2026-08-25";
1408
1676
  var SEARCH_REVIEW_DATE = "2026-08-31";
1677
+ var REVIEW_DATE4 = "2026-09-11";
1678
+ var REVIEW_SOURCE3 = "everyday-interiors vocabulary review";
1679
+ var UNICLASS_WOOD_BLOCKS = {
1680
+ identifier: "Pr_35_93_97_96",
1681
+ label: "Wood blocks",
1682
+ match: "close",
1683
+ scheme: "uniclass"
1684
+ };
1409
1685
  var searchCorpusProvenance = (evidence) => ({
1410
1686
  basis: "evidenced",
1411
1687
  snapshot: SEARCH_CORPUS_SNAPSHOT,
@@ -1420,6 +1696,23 @@ var term4 = (slug, label, definition, extra = {}) => ({
1420
1696
  });
1421
1697
  var FORMAT_TERMS = [
1422
1698
  term4("area-rug", "Area rug", "A bounded loose-laid textile floor covering."),
1699
+ // Beneath `roll`: broadloom is carpet supplied as a wide continuous roll, so every broadloom is
1700
+ // a roll supply and ISA holds. The carpet kind is `product-category.carpet-and-rug`.
1701
+ term4(
1702
+ "broadloom",
1703
+ "Broadloom",
1704
+ "Carpet supplied as a wide continuous roll to be cut and seamed on site, as against modular tiles or a bounded rug.",
1705
+ {
1706
+ broaderSlug: "roll",
1707
+ introducedAt: REVIEW_DATE4,
1708
+ provenance: {
1709
+ basis: "referenced",
1710
+ snapshot: REVIEW_DATE4,
1711
+ source: "Wikidata Q124372242 broadloom, https://www.wikidata.org/wiki/Q124372242"
1712
+ },
1713
+ reviewedAt: REVIEW_DATE4
1714
+ }
1715
+ ),
1423
1716
  term4(
1424
1717
  "hide",
1425
1718
  "Hide",
@@ -1455,6 +1748,26 @@ var FORMAT_TERMS = [
1455
1748
  "Panel",
1456
1749
  "A broad rigid or semi-rigid sheet installed as a discrete unit."
1457
1750
  ),
1751
+ // FORMAT, not layout. Parquet names wood flooring supplied as short blocks or pre-assembled
1752
+ // panels made for geometric laying; the geometry it is laid in (herringbone, basketweave) is an
1753
+ // INSTALLATION-LAYOUT claim held separately. Wikidata's `parquetry` (Q838828) is the layout
1754
+ // sense and is cited for the word's history; Uniclass classifies the supplied unit.
1755
+ term4(
1756
+ "parquet",
1757
+ "Parquet",
1758
+ "Wood flooring supplied as short solid or engineered blocks, or as pre-assembled panels, made to be laid in a geometric arrangement; the arrangement itself is a separate layout claim.",
1759
+ {
1760
+ altLabels: ["parquet flooring", "parquet block"],
1761
+ external: [UNICLASS_WOOD_BLOCKS],
1762
+ introducedAt: REVIEW_DATE4,
1763
+ provenance: {
1764
+ basis: "referenced",
1765
+ snapshot: REVIEW_DATE4,
1766
+ source: "Uniclass Pr_35_93_97_96 Wood blocks, https://uniclass.thenbs.com/taxon/pr_35_93_97; Wikidata Q838828 parquetry, https://www.wikidata.org/wiki/Q838828"
1767
+ },
1768
+ reviewedAt: REVIEW_DATE4
1769
+ }
1770
+ ),
1458
1771
  term4(
1459
1772
  "plank",
1460
1773
  "Plank",
@@ -1486,6 +1799,20 @@ var FORMAT_TERMS = [
1486
1799
  supersededByReference: "format.tile"
1487
1800
  }
1488
1801
  ),
1802
+ // AUTHORED. No Wikidata item for `subway tile` on the review date. Bare `subway` and `metro`
1803
+ // are deliberately not wild forms: alone they name a railway.
1804
+ term4(
1805
+ "subway-tile",
1806
+ "Subway tile",
1807
+ "A rectangular field tile supplied in roughly the 1:2 proportion of early-twentieth-century station tiling, independent of material, colour and the bond it is laid in.",
1808
+ {
1809
+ altLabels: ["metro tile"],
1810
+ broaderSlug: "tile",
1811
+ introducedAt: REVIEW_DATE4,
1812
+ provenance: { basis: "authored", source: REVIEW_SOURCE3 },
1813
+ reviewedAt: REVIEW_DATE4
1814
+ }
1815
+ ),
1489
1816
  term4(
1490
1817
  "veneer",
1491
1818
  "Veneer",
@@ -1504,15 +1831,15 @@ var FORMAT_TERMS = [
1504
1831
  ];
1505
1832
 
1506
1833
  // src/axes/installation-layout.ts
1507
- var REVIEW_DATE2 = "2026-08-31";
1508
- var REVIEW_SOURCE = "@instruments/taxonomy TAX-45 reviewed implementation contract";
1834
+ var REVIEW_DATE5 = "2026-08-31";
1835
+ var REVIEW_SOURCE4 = "@instruments/taxonomy TAX-45 reviewed implementation contract";
1509
1836
  var ZIGZAG_EVIDENCE_SOURCE = "Linear TAX-45 reviewed implementation contract; herringbone and chevron product-language audit in a materials-retrieval system (src-05)";
1510
1837
  var term5 = (slug, label, definition, extra = {}) => ({
1511
1838
  definition,
1512
- introducedAt: REVIEW_DATE2,
1839
+ introducedAt: REVIEW_DATE5,
1513
1840
  label,
1514
- provenance: { basis: "authored", source: REVIEW_SOURCE },
1515
- reviewedAt: REVIEW_DATE2,
1841
+ provenance: { basis: "authored", source: REVIEW_SOURCE4 },
1842
+ reviewedAt: REVIEW_DATE5,
1516
1843
  slug,
1517
1844
  ...extra
1518
1845
  });
@@ -1539,7 +1866,7 @@ var INSTALLATION_LAYOUT_TERMS = [
1539
1866
  {
1540
1867
  provenance: {
1541
1868
  basis: "referenced",
1542
- snapshot: REVIEW_DATE2,
1869
+ snapshot: REVIEW_DATE5,
1543
1870
  source: ZIGZAG_EVIDENCE_SOURCE
1544
1871
  }
1545
1872
  }
@@ -1551,7 +1878,7 @@ var INSTALLATION_LAYOUT_TERMS = [
1551
1878
  {
1552
1879
  provenance: {
1553
1880
  basis: "referenced",
1554
- snapshot: REVIEW_DATE2,
1881
+ snapshot: REVIEW_DATE5,
1555
1882
  source: ZIGZAG_EVIDENCE_SOURCE
1556
1883
  }
1557
1884
  }
@@ -1599,156 +1926,3131 @@ var INSTALLATION_LAYOUT_TERMS = [
1599
1926
  )
1600
1927
  ];
1601
1928
 
1602
- // src/axes/material.ts
1603
- var SOURCE3 = "material vocabularies in a furnishings retailer (src-03) and in-house";
1604
- var SNAPSHOT3 = "2026-08-25";
1605
- var CROSSOVER_SNAPSHOT2 = "2026-08-30";
1606
- var NATURAL_FIBRE_SLUG = "natural-fibre";
1607
- var STONE_SLUG = "stone";
1608
- var STONE_TARGET = "material.stone";
1609
- var WOOD_TARGET = "material.wood";
1610
- var term6 = (slug, label, definition) => ({
1929
+ // src/axes/material-composition.ts
1930
+ var COMPOSITION_REVIEW_DATE = "2026-09-22";
1931
+ var COMPOSITION_SOURCE = "composition dictionary in a materials-retrieval system (src-05)";
1932
+ var IN_HOUSE_DEFINITION = "in-house definition";
1933
+ var compositionTerm = (slug, label, definition, standard, extra = {}, basis = "referenced") => ({
1611
1934
  definition,
1935
+ introducedAt: COMPOSITION_REVIEW_DATE,
1612
1936
  label,
1613
- provenance: { basis: "evidenced", snapshot: SNAPSHOT3, source: SOURCE3 },
1614
- slug
1937
+ provenance: basis === "authored" ? { basis, source: `${COMPOSITION_SOURCE}; ${standard}` } : {
1938
+ basis,
1939
+ snapshot: COMPOSITION_REVIEW_DATE,
1940
+ source: `${COMPOSITION_SOURCE}; ${standard}`
1941
+ },
1942
+ reviewedAt: COMPOSITION_REVIEW_DATE,
1943
+ slug,
1944
+ ...extra
1615
1945
  });
1616
- var crossoverTerm = (slug, label, definition, source, broaderSlug) => ({
1617
- ...broaderSlug === void 0 ? {} : { broaderSlug },
1618
- definition,
1946
+ var authoredTerm = (slug, label, definition, extra = {}) => compositionTerm(
1947
+ slug,
1619
1948
  label,
1620
- provenance: {
1621
- basis: "referenced",
1622
- snapshot: CROSSOVER_SNAPSHOT2,
1623
- source
1624
- },
1625
- slug
1949
+ definition,
1950
+ IN_HOUSE_DEFINITION,
1951
+ extra,
1952
+ "authored"
1953
+ );
1954
+ var reparented = (term12) => ({
1955
+ ...term12,
1956
+ reviewedAt: COMPOSITION_REVIEW_DATE
1626
1957
  });
1627
- var standardCrossoverTerm = (slug, label, definition, source) => ({
1628
- ...crossoverTerm(slug, label, definition, source),
1629
- provenance: {
1630
- basis: "standard",
1631
- snapshot: CROSSOVER_SNAPSHOT2,
1632
- source
1633
- }
1958
+ var externalMapping = (scheme, identifier, label, match = "exact") => ({ identifier, label, match, scheme });
1959
+
1960
+ // src/axes/material-cellulosics.ts
1961
+ var EU_1007_2011 = "eu-1007-2011";
1962
+ var FTC_16CFR303 = "ftc-16cfr303";
1963
+ var ISO_1043_1 = "iso-1043-1";
1964
+ var ISO_2076 = "iso-2076";
1965
+ var MAN_MADE_CELLULOSIC_SLUG = "man-made-cellulosic";
1966
+ var POLYMER_SLUG = "polymer";
1967
+ var EU_ANNEX_I = "Regulation (EU) No 1007/2011 Annex I";
1968
+ var STANDARD_ISO_2076 = "ISO 2076:2021";
1969
+ var STANDARD_FTC = "US FTC 16 CFR 303.7";
1970
+ var same = (scheme, name) => externalMapping(scheme, name, name);
1971
+ var fibreNames = (name) => [
1972
+ same(EU_1007_2011, name),
1973
+ same(FTC_16CFR303, name),
1974
+ same(ISO_2076, name)
1975
+ ];
1976
+ var MATERIAL_CELLULOSICS_TERMS = [
1977
+ compositionTerm(
1978
+ MAN_MADE_CELLULOSIC_SLUG,
1979
+ "Man-made cellulosic",
1980
+ "A fibre family of man-made polymer produced by regenerating or chemically substituting natural cellulose, covering viscose, modal, lyocell, cupro, acetate and triacetate.",
1981
+ STANDARD_ISO_2076,
1982
+ {
1983
+ altLabels: ["Regenerated cellulose", "Cellulosic fibre"],
1984
+ broaderSlug: POLYMER_SLUG,
1985
+ seenAs: ["Cellulosic fiber"]
1986
+ }
1987
+ ),
1988
+ compositionTerm(
1989
+ "acetate",
1990
+ "Acetate",
1991
+ "A man-made cellulosic fibre of cellulose acetate in which between 74 and 92 percent of the hydroxyl groups are acetylated.",
1992
+ `${EU_ANNEX_I} row 19; ${STANDARD_FTC}; ${STANDARD_ISO_2076}`,
1993
+ {
1994
+ altLabels: ["Cellulose acetate"],
1995
+ broaderSlug: MAN_MADE_CELLULOSIC_SLUG,
1996
+ external: [
1997
+ same(EU_1007_2011, "acetate"),
1998
+ externalMapping(FTC_16CFR303, "acetate", "acetate", "broad"),
1999
+ same(ISO_2076, "acetate"),
2000
+ externalMapping(ISO_1043_1, "CA", "cellulose acetate")
2001
+ ]
2002
+ },
2003
+ "standard"
2004
+ ),
2005
+ compositionTerm(
2006
+ "cupro",
2007
+ "Cupro",
2008
+ "A man-made cellulosic fibre of regenerated cellulose produced by the cuprammonium process.",
2009
+ `${EU_ANNEX_I} row 21; ${STANDARD_ISO_2076}`,
2010
+ {
2011
+ altLabels: ["Cuprammonium rayon"],
2012
+ broaderSlug: MAN_MADE_CELLULOSIC_SLUG,
2013
+ external: [same(EU_1007_2011, "cupro"), same(ISO_2076, "cupro")]
2014
+ },
2015
+ "standard"
2016
+ ),
2017
+ compositionTerm(
2018
+ "lyocell",
2019
+ "Lyocell",
2020
+ "A man-made cellulosic fibre of cellulose obtained by dissolving cellulose in an organic solvent and spinning it without forming a cellulose derivative.",
2021
+ `${EU_ANNEX_I} row 33; ${STANDARD_FTC}; ${STANDARD_ISO_2076}`,
2022
+ {
2023
+ broaderSlug: MAN_MADE_CELLULOSIC_SLUG,
2024
+ external: fibreNames("lyocell")
2025
+ },
2026
+ "standard"
2027
+ ),
2028
+ compositionTerm(
2029
+ "modal",
2030
+ "Modal",
2031
+ "A man-made cellulosic fibre of regenerated cellulose produced by a modified viscose process, with higher wet strength and wet modulus than standard viscose.",
2032
+ `${EU_ANNEX_I} row 22; ${STANDARD_ISO_2076}`,
2033
+ {
2034
+ altLabels: ["Modal rayon"],
2035
+ broaderSlug: MAN_MADE_CELLULOSIC_SLUG,
2036
+ external: [same(EU_1007_2011, "modal"), same(ISO_2076, "modal")]
2037
+ },
2038
+ "standard"
2039
+ ),
2040
+ compositionTerm(
2041
+ "triacetate",
2042
+ "Triacetate",
2043
+ "A man-made cellulosic fibre of cellulose acetate in which at least 92 percent of the hydroxyl groups are acetylated.",
2044
+ `${EU_ANNEX_I} row 24; ${STANDARD_FTC}; ${STANDARD_ISO_2076}`,
2045
+ {
2046
+ altLabels: ["Cellulose triacetate"],
2047
+ broaderSlug: MAN_MADE_CELLULOSIC_SLUG,
2048
+ external: [
2049
+ externalMapping(EU_1007_2011, "triacetate", "triacetate"),
2050
+ externalMapping(FTC_16CFR303, "triacetate", "triacetate"),
2051
+ externalMapping(ISO_2076, "triacetate", "triacetate")
2052
+ ]
2053
+ },
2054
+ "standard"
2055
+ ),
2056
+ compositionTerm(
2057
+ "viscose",
2058
+ "Viscose",
2059
+ "A man-made cellulosic fibre of regenerated cellulose produced by the viscose process.",
2060
+ `${EU_ANNEX_I} row 25; ${STANDARD_FTC}; ${STANDARD_ISO_2076}`,
2061
+ {
2062
+ altLabels: ["Viscose rayon"],
2063
+ broaderSlug: MAN_MADE_CELLULOSIC_SLUG,
2064
+ external: [
2065
+ externalMapping(EU_1007_2011, "viscose", "viscose"),
2066
+ externalMapping(FTC_16CFR303, "rayon", "rayon", "broad"),
2067
+ externalMapping(ISO_2076, "viscose", "viscose")
2068
+ ],
2069
+ seenAs: ["Viskose", "Viscosa"]
2070
+ },
2071
+ "standard"
2072
+ )
2073
+ ];
2074
+
2075
+ // src/axes/material-engineered-wood.ts
2076
+ var WOOD_HANDBOOK = "USDA Wood Handbook (2021), chapter 2";
2077
+ var EN_13986 = "EN 13986";
2078
+ var EN_300 = "EN 300:2006";
2079
+ var EN_312 = "EN 312:2010";
2080
+ var EN_316 = "EN 316:2009";
2081
+ var EN_622_5 = "EN 622-5:2009";
2082
+ var EN_14080 = "EN 14080:2013";
2083
+ var EN_16351 = "EN 16351:2021";
2084
+ var EN_14374 = "EN 14374:2004";
2085
+ var ENGINEERED_WOOD_SLUG = "engineered-wood";
2086
+ var MATERIAL_ENGINEERED_WOOD_TERMS = [
2087
+ // Families.
2088
+ compositionTerm(
2089
+ ENGINEERED_WOOD_SLUG,
2090
+ "Engineered wood",
2091
+ "A wood-based panel or structural timber product manufactured by bonding wood elements, such as veneers, strands, particles or fibres, together with adhesive under heat or pressure.",
2092
+ `${EN_13986} (panels); ${EN_14080}, ${EN_16351} and ${EN_14374} (structural timber)`,
2093
+ {
2094
+ altLabels: ["engineered timber", "wood-based panel"],
2095
+ broaderSlug: "wood"
2096
+ }
2097
+ ),
2098
+ compositionTerm(
2099
+ "softwood",
2100
+ "Softwood",
2101
+ "Wood from coniferous (gymnosperm) trees, named as a timber class rather than by hardness or species.",
2102
+ WOOD_HANDBOOK,
2103
+ { broaderSlug: "wood", seenAs: ["soft wood"] }
2104
+ ),
2105
+ // Materials directly under wood.
2106
+ authoredTerm(
2107
+ "wood-flour",
2108
+ "Wood flour",
2109
+ "Finely ground wood particles, produced from processing residues or reclaimed wood, distinguished from wood chips or strands used in panel manufacture by their fine, typically sub-millimetre particle size.",
2110
+ {
2111
+ altLabels: ["wood powder", "wood meal", "wood dust"],
2112
+ broaderSlug: "wood"
2113
+ }
2114
+ ),
2115
+ // Materials under engineered-wood, alphabetical; hdf follows its parent fibreboard.
2116
+ compositionTerm(
2117
+ "clt",
2118
+ "CLT",
2119
+ "A structural timber product manufactured from layers of timber boards stacked and bonded together with the grain of each layer rotated orthogonally to the adjacent layers.",
2120
+ EN_16351,
2121
+ {
2122
+ altLabels: ["cross-laminated timber"],
2123
+ broaderSlug: ENGINEERED_WOOD_SLUG,
2124
+ seenAs: ["cross laminated timber"]
2125
+ }
2126
+ ),
2127
+ compositionTerm(
2128
+ "fibreboard",
2129
+ "Fibreboard",
2130
+ "A wood-based panel manufactured from lignocellulosic fibres bonded by their own adhesion or by an added binder, with or without heat and pressure.",
2131
+ EN_316,
2132
+ {
2133
+ altLabels: ["fiberboard"],
2134
+ broaderSlug: ENGINEERED_WOOD_SLUG,
2135
+ seenAs: ["fibre board", "fiber board"]
2136
+ }
2137
+ ),
2138
+ compositionTerm(
2139
+ "hdf",
2140
+ "HDF",
2141
+ "Dry-process fibreboard with a density of at least 800 kg/m3.",
2142
+ `${EN_316}; ${EN_622_5}`,
2143
+ {
2144
+ altLabels: ["high-density fibreboard", "high-density fiberboard"],
2145
+ broaderSlug: "fibreboard",
2146
+ seenAs: ["high density fibreboard", "high density fiberboard"]
2147
+ }
2148
+ ),
2149
+ compositionTerm(
2150
+ "glulam",
2151
+ "Glulam",
2152
+ "A structural timber product manufactured by bonding laminations of timber together with the grain of the laminations running essentially parallel to the length of the member.",
2153
+ EN_14080,
2154
+ {
2155
+ altLabels: ["glued laminated timber", "glue-laminated timber"],
2156
+ broaderSlug: ENGINEERED_WOOD_SLUG
2157
+ }
2158
+ ),
2159
+ compositionTerm(
2160
+ "lvl",
2161
+ "LVL",
2162
+ "An engineered wood product manufactured by bonding wood veneers together with the grain of all veneers running predominantly parallel to the length of the product.",
2163
+ EN_14374,
2164
+ {
2165
+ altLabels: ["laminated veneer lumber"],
2166
+ broaderSlug: ENGINEERED_WOOD_SLUG
2167
+ }
2168
+ ),
2169
+ compositionTerm(
2170
+ "osb",
2171
+ "OSB",
2172
+ "A wood-based panel manufactured from strands of wood bonded together with adhesive and arranged in oriented layers.",
2173
+ EN_300,
2174
+ {
2175
+ altLabels: ["oriented strand board"],
2176
+ broaderSlug: ENGINEERED_WOOD_SLUG
2177
+ }
2178
+ ),
2179
+ compositionTerm(
2180
+ "particleboard",
2181
+ "Particleboard",
2182
+ "A wood-based panel manufactured by bonding particles of wood together with an adhesive under heat and pressure.",
2183
+ EN_312,
2184
+ {
2185
+ altLabels: ["chipboard"],
2186
+ broaderSlug: ENGINEERED_WOOD_SLUG,
2187
+ seenAs: ["particle board"]
2188
+ }
2189
+ ),
2190
+ // Materials under softwood, alphabetical.
2191
+ compositionTerm(
2192
+ "cedar",
2193
+ "Cedar",
2194
+ "Softwood traded as cedar from the genera Cedrus, Thuja, Chamaecyparis, Calocedrus or Juniperus; Spanish cedar, Cedrela, is a hardwood outside it.",
2195
+ WOOD_HANDBOOK,
2196
+ { broaderSlug: "softwood" }
2197
+ ),
2198
+ compositionTerm(
2199
+ "cypress",
2200
+ "Cypress",
2201
+ "Softwood traded as cypress from bald cypress, Taxodium distichum, in North America or from the true cypresses of the genus Cupressus.",
2202
+ WOOD_HANDBOOK,
2203
+ { broaderSlug: "softwood" }
2204
+ ),
2205
+ compositionTerm(
2206
+ "fir",
2207
+ "Fir",
2208
+ "Softwood timber from trees in the genus Abies, commercially cut across the temperate and montane forests of the Northern Hemisphere; distinct from Douglas-fir, which is not a true fir.",
2209
+ WOOD_HANDBOOK,
2210
+ { broaderSlug: "softwood" }
2211
+ ),
2212
+ compositionTerm(
2213
+ "hemlock",
2214
+ "Hemlock",
2215
+ "Softwood timber from trees in the genus Tsuga, commercially cut across the Pacific Northwest and Appalachian regions of North America.",
2216
+ WOOD_HANDBOOK,
2217
+ { broaderSlug: "softwood" }
2218
+ ),
2219
+ compositionTerm(
2220
+ "larch",
2221
+ "Larch",
2222
+ "Softwood timber from trees in the genus Larix, commercially cut across the northern temperate and boreal forests of North America, Europe and Asia; unusual among softwoods for being deciduous.",
2223
+ WOOD_HANDBOOK,
2224
+ { broaderSlug: "softwood" }
2225
+ ),
2226
+ compositionTerm(
2227
+ "pine",
2228
+ "Pine",
2229
+ "Softwood timber from trees in the genus Pinus, commercially cut across the temperate and boreal forests of the Northern Hemisphere.",
2230
+ WOOD_HANDBOOK,
2231
+ { broaderSlug: "softwood" }
2232
+ ),
2233
+ compositionTerm(
2234
+ "spruce",
2235
+ "Spruce",
2236
+ "Softwood timber from trees in the genus Picea, commercially cut across the northern temperate and boreal forests of North America, Europe and Asia.",
2237
+ WOOD_HANDBOOK,
2238
+ { broaderSlug: "softwood" }
2239
+ ),
2240
+ // Species under softwood, alphabetical.
2241
+ compositionTerm(
2242
+ "douglas-fir",
2243
+ "Douglas fir",
2244
+ "Softwood timber from Pseudotsuga menziesii, commercially cut in the Pacific Northwest of North America; botanically distinct from the true firs of the genus Abies.",
2245
+ WOOD_HANDBOOK,
2246
+ {
2247
+ broaderSlug: "softwood",
2248
+ seenAs: ["Douglas-Fir", "Oregon pine"]
2249
+ }
2250
+ ),
2251
+ compositionTerm(
2252
+ "redwood",
2253
+ "Redwood",
2254
+ "Softwood timber from Sequoia sempervirens, commercially cut along the coastal fog belt of California and southern Oregon.",
2255
+ WOOD_HANDBOOK,
2256
+ { broaderSlug: "softwood" }
2257
+ )
2258
+ ];
2259
+
2260
+ // src/axes/material-everyday.ts
2261
+ var REVIEW_DATE6 = "2026-09-11";
2262
+ var REVIEW_SOURCE5 = "everyday-interiors vocabulary review";
2263
+ var STONE_SLUG = "stone";
2264
+ var STONE_TARGET = "material.stone";
2265
+ var WOOD_HANDBOOK2 = "USDA Wood Handbook, https://research.fs.usda.gov/download/treesearch/37440.pdf";
2266
+ var STONE_VARIETIES = "Natural Stone Institute varieties, https://www.naturalstoneinstitute.org/designprofessionals/varieties/";
2267
+ var wikidata3 = (id, label) => `Wikidata ${id} ${label}, https://www.wikidata.org/wiki/${id}`;
2268
+ var reviewed3 = (slug, label, definition, source, extra = {}) => ({
2269
+ definition,
2270
+ introducedAt: REVIEW_DATE6,
2271
+ label,
2272
+ provenance: { basis: "referenced", snapshot: REVIEW_DATE6, source },
2273
+ reviewedAt: REVIEW_DATE6,
2274
+ slug,
2275
+ ...extra
1634
2276
  });
1635
- var searchCorpusMaterial = (slug, label, definition, broaderSlug, referenceSource) => ({
1636
- broaderSlug,
2277
+ var authored3 = (slug, label, definition, extra = {}) => ({
1637
2278
  definition,
1638
- introducedAt: "2026-08-31",
2279
+ introducedAt: REVIEW_DATE6,
1639
2280
  label,
1640
- provenance: {
1641
- basis: "evidenced",
1642
- snapshot: SEARCH_CORPUS_SNAPSHOT,
1643
- source: `${searchCorpusEvidence(label)}; ${referenceSource}`
1644
- },
1645
- reviewedAt: "2026-08-31",
1646
- slug
2281
+ provenance: { basis: "authored", source: REVIEW_SOURCE5 },
2282
+ reviewedAt: REVIEW_DATE6,
2283
+ slug,
2284
+ ...extra
1647
2285
  });
1648
- var MATERIAL_TERMS = [
1649
- crossoverTerm(
1650
- "brass",
1651
- "Brass",
1652
- "A copper alloy whose principal alloying element is zinc.",
1653
- BRASS_MATERIAL_SOURCE
2286
+ var MATERIAL_EVERYDAY_TERMS = [
2287
+ // Quarried stone by name, each beneath `stone`.
2288
+ reviewed3(
2289
+ "granite",
2290
+ "Granite",
2291
+ "A coarse-grained igneous rock quarried as dimension stone; the commercial name also covers similar-looking hard stones that are not geologically granite.",
2292
+ [
2293
+ wikidata3("Q41177", "granite"),
2294
+ wikidata3("Q3115353", "granite (commercial name)"),
2295
+ STONE_VARIETIES
2296
+ ].join("; "),
2297
+ { broaderSlug: STONE_SLUG }
2298
+ ),
2299
+ reviewed3(
2300
+ "sandstone",
2301
+ "Sandstone",
2302
+ "A sedimentary rock of cemented sand-sized grains worked as a building stone.",
2303
+ [wikidata3("Q13085", "sandstone"), STONE_VARIETIES].join("; "),
2304
+ { broaderSlug: STONE_SLUG }
2305
+ ),
2306
+ reviewed3(
2307
+ "quartzite",
2308
+ "Quartzite",
2309
+ "A hard non-foliated metamorphic rock formed from quartz sandstone, distinct from engineered quartz surfacing.",
2310
+ [wikidata3("Q237883", "quartzite"), STONE_VARIETIES].join("; "),
2311
+ { broaderSlug: STONE_SLUG }
2312
+ ),
2313
+ reviewed3(
2314
+ "basalt",
2315
+ "Basalt",
2316
+ "A dense mafic volcanic rock quarried and worked as a finish.",
2317
+ wikidata3("Q43338", "basalt"),
2318
+ { broaderSlug: STONE_SLUG }
2319
+ ),
2320
+ reviewed3(
2321
+ "soapstone",
2322
+ "Soapstone",
2323
+ "A soft metamorphic rock composed chiefly of the mineral talc, also called steatite, worked as a dense dimension stone.",
2324
+ [wikidata3("Q707896", "soapstone"), STONE_VARIETIES].join("; "),
2325
+ { broaderSlug: STONE_SLUG }
2326
+ ),
2327
+ // Beneath `ceramic` on the same footing as `terracotta`: brick material is a fired clay body,
2328
+ // and MATERIAL names the substance. The masonry UNIT is a format reading this package does not
2329
+ // mint; brick slips and thin brick compose `material.brick` with a FORMAT term.
2330
+ reviewed3(
2331
+ "brick",
2332
+ "Brick",
2333
+ "Fired clay masonry material, named as the substance rather than as the masonry unit, its bond or its colour.",
2334
+ wikidata3("Q40089", "brick"),
2335
+ { broaderSlug: "ceramic" }
2336
+ ),
2337
+ {
2338
+ ...reviewed3(
2339
+ "plaster",
2340
+ "Plaster",
2341
+ "A gypsum-, lime- or cement-based material applied wet and set in place to form a surface.",
2342
+ [
2343
+ wikidata3("Q274988", "plaster"),
2344
+ wikidata3("Q52684119", "plaster (applied preparation)")
2345
+ ].join("; ")
2346
+ ),
2347
+ broaderSlug: "mineral",
2348
+ reviewedAt: COMPOSITION_REVIEW_DATE
2349
+ },
2350
+ {
2351
+ ...reviewed3(
2352
+ "rubber",
2353
+ "Rubber",
2354
+ "A natural or synthetic elastomer that recovers its shape after large deformation.",
2355
+ [
2356
+ wikidata3("Q18113858", "rubber"),
2357
+ wikidata3("Q131877", "natural rubber")
2358
+ ].join("; ")
2359
+ ),
2360
+ broaderSlug: "polymer",
2361
+ reviewedAt: COMPOSITION_REVIEW_DATE
2362
+ },
2363
+ // Metals.
2364
+ {
2365
+ ...reviewed3(
2366
+ "zinc",
2367
+ "Zinc",
2368
+ "The metallic chemical element Zn used as a sheet, casting or coating metal; galvanised steel is a zinc coating and not this material.",
2369
+ wikidata3("Q758", "zinc")
2370
+ ),
2371
+ broaderSlug: "non-ferrous-metal",
2372
+ reviewedAt: COMPOSITION_REVIEW_DATE
2373
+ },
2374
+ reviewed3(
2375
+ "weathering-steel",
2376
+ "Weathering steel",
2377
+ "A steel alloy family that forms a stable rust-coloured oxide layer on exposure; the trade names are not the material.",
2378
+ wikidata3("Q1024124", "weathering steel"),
2379
+ { broaderSlug: "steel", seenAs: ["corten", "Cor-Ten"] }
2380
+ ),
2381
+ // Polymers sold as sheet. `acrylic` was published on 2026-09-11 as PMMA sheet alone; the
2382
+ // hierarchy review of 2026-09-22 widened it to the polymer family, because ISO 2076 and FTC 16
2383
+ // CFR 303 name the fibre "acrylic" and ISO 1043-1 names the sheet PMMA. The sheet is now
2384
+ // `material.pmma` beneath it, and the trade names moved there with it. Recorded in ADR 0007.
2385
+ {
2386
+ broaderSlug: "polymer",
2387
+ definition: "A family of polymers and fibres built predominantly from acrylonitrile, acrylate or methacrylate monomers, covering acrylic and modacrylic fibre, PMMA sheet and acrylic resins.",
2388
+ introducedAt: REVIEW_DATE6,
2389
+ label: "Acrylic",
2390
+ note: "Widened on 2026-09-22 from PMMA sheet alone to the acrylic polymer family; the sheet is now material/pmma beneath it.",
2391
+ provenance: {
2392
+ basis: "referenced",
2393
+ snapshot: COMPOSITION_REVIEW_DATE,
2394
+ source: "the family grouping written here from Encyclopaedia Britannica, acrylic, https://www.britannica.com/science/acrylic; ISO 2076:2021 and US FTC 16 CFR 303.7 (acrylic and modacrylic fibre)"
2395
+ },
2396
+ reviewedAt: COMPOSITION_REVIEW_DATE,
2397
+ slug: "acrylic"
2398
+ },
2399
+ {
2400
+ ...reviewed3(
2401
+ "polycarbonate",
2402
+ "Polycarbonate",
2403
+ "A transparent, impact-resistant thermoplastic polymer family supplied as sheet or moulding.",
2404
+ wikidata3("Q62246", "polycarbonate")
2405
+ ),
2406
+ broaderSlug: "polymer",
2407
+ reviewedAt: COMPOSITION_REVIEW_DATE
2408
+ },
2409
+ {
2410
+ ...reviewed3(
2411
+ "linoleum",
2412
+ "Linoleum",
2413
+ "A resilient sheet or tile material of oxidised linseed oil, resin and filler on a fibre backing; it is not vinyl.",
2414
+ wikidata3("Q108728", "linoleum"),
2415
+ { altLabels: ["lino"] }
2416
+ ),
2417
+ broaderSlug: "composite",
2418
+ reviewedAt: COMPOSITION_REVIEW_DATE
2419
+ },
2420
+ // Wood and wood-based sheet.
2421
+ reviewed3(
2422
+ "hardwood",
2423
+ "Hardwood",
2424
+ "Wood from broadleaved (dicot) trees, named as a timber class rather than by hardness or species.",
2425
+ [wikidata3("Q2266509", "hardwood"), WOOD_HANDBOOK2].join("; "),
2426
+ { broaderSlug: "wood" }
2427
+ ),
2428
+ {
2429
+ ...reviewed3(
2430
+ "plywood",
2431
+ "Plywood",
2432
+ "A manufactured wood panel of cross-laminated veneer sheets.",
2433
+ [
2434
+ wikidata3("Q219803", "plywood"),
2435
+ WOOD_HANDBOOK2,
2436
+ "EN 636:2012+A1:2015"
2437
+ ].join("; ")
2438
+ ),
2439
+ broaderSlug: "engineered-wood",
2440
+ reviewedAt: COMPOSITION_REVIEW_DATE
2441
+ },
2442
+ {
2443
+ ...reviewed3(
2444
+ "mdf",
2445
+ "MDF",
2446
+ "A dry-process fibreboard with a density from 450 to below 800 kg/m3, as EN 316 and EN 622-5 class it.",
2447
+ [
2448
+ wikidata3("Q642231", "medium-density fibreboard"),
2449
+ "EN 316:2009",
2450
+ "EN 622-5:2009"
2451
+ ].join("; "),
2452
+ { altLabels: ["medium-density fibreboard", "medium-density fiberboard"] }
2453
+ ),
2454
+ broaderSlug: "fibreboard",
2455
+ reviewedAt: COMPOSITION_REVIEW_DATE
2456
+ },
2457
+ // The bare word `melamine` names this board first and the resin second; that ordering is an
2458
+ // authored lexical entry in `v1.ts`, since `material.melamine` (the resin) is a concept of its
2459
+ // own from 2026-09-22.
2460
+ {
2461
+ ...reviewed3(
2462
+ "melamine-faced-board",
2463
+ "Melamine-faced board",
2464
+ "A wood-based panel faced with melamine-resin-impregnated paper pressed directly onto it, with no laminate sheet between, as EN 14322 specifies.",
2465
+ [wikidata3("Q20180653", "melamine resin"), "EN 14322:2017"].join("; "),
2466
+ {
2467
+ altLabels: ["melamine-faced chipboard", "melamine board"]
2468
+ }
2469
+ ),
2470
+ broaderSlug: "engineered-wood",
2471
+ reviewedAt: COMPOSITION_REVIEW_DATE
2472
+ },
2473
+ {
2474
+ ...reviewed3(
2475
+ "silk",
2476
+ "Silk",
2477
+ "A natural protein filament fibre produced by silk moth larvae.",
2478
+ wikidata3("Q37681", "silk")
2479
+ ),
2480
+ broaderSlug: "animal-fibre",
2481
+ reviewedAt: COMPOSITION_REVIEW_DATE
2482
+ },
2483
+ {
2484
+ ...reviewed3(
2485
+ "hemp",
2486
+ "Hemp",
2487
+ "A plant bast fibre from Cannabis sativa used as a textile fibre.",
2488
+ wikidata3("Q13414920", "hemp fiber")
2489
+ ),
2490
+ broaderSlug: "plant-fibre",
2491
+ reviewedAt: COMPOSITION_REVIEW_DATE
2492
+ },
2493
+ {
2494
+ ...reviewed3(
2495
+ "mohair",
2496
+ "Mohair",
2497
+ "A natural animal fibre from the Angora goat; it is not the velvet sometimes woven from it.",
2498
+ wikidata3("Q179628", "mohair")
2499
+ ),
2500
+ broaderSlug: "animal-fibre",
2501
+ reviewedAt: COMPOSITION_REVIEW_DATE
2502
+ },
2503
+ // Seagrass in furnishing is a sedge stem, not a fibre and not a marine plant, so it sits beneath
2504
+ // `natural-organic` directly.
2505
+ reviewed3(
2506
+ "seagrass",
2507
+ "Seagrass",
2508
+ "Stems of a sedge of the genus Cyperus grown in flooded fields and woven for matting, distinct from marine seagrass.",
2509
+ "https://retrorenovation.com/2019/05/14/what-are-seagrass-rugs-made-of/",
2510
+ { broaderSlug: "natural-organic", reviewedAt: COMPOSITION_REVIEW_DATE }
2511
+ ),
2512
+ // Rattan is a palm stem, not a fibre, so it sits beneath `palm` and not `natural-fibre`.
2513
+ {
2514
+ ...reviewed3(
2515
+ "rattan",
2516
+ "Rattan",
2517
+ "The solid stem of climbing palms used whole or split as a furniture and weaving material; it is not bamboo and not the cane peeled from it.",
2518
+ wikidata3("Q323021", "rattan")
2519
+ ),
2520
+ broaderSlug: "palm",
2521
+ reviewedAt: COMPOSITION_REVIEW_DATE
2522
+ },
2523
+ // AUTHORED. Cane in furniture is the peeled outer skin of rattan woven as webbing, so it is
2524
+ // related to rattan and not an instance of it; bare `cane` also names bamboo and sugar cane,
2525
+ // which is why the definition pins the interiors reading and the relation is `related-to`.
2526
+ {
2527
+ ...authored3(
2528
+ "cane",
2529
+ "Cane",
2530
+ "The peeled outer bark of rattan woven as open webbing for seats, backs and panels; not the whole stem and not bamboo.",
2531
+ { related: [{ predicate: "related-to", target: "material.rattan" }] }
2532
+ ),
2533
+ broaderSlug: "natural-organic",
2534
+ reviewedAt: COMPOSITION_REVIEW_DATE
2535
+ },
2536
+ // Hides.
2537
+ reparented(
2538
+ reviewed3(
2539
+ "cowhide",
2540
+ "Cowhide",
2541
+ "Cattle hide dressed with the hair retained, or leather from it.",
2542
+ wikidata3("Q12492880", "cowhide"),
2543
+ { broaderSlug: "bovine-hide" }
2544
+ )
1654
2545
  ),
1655
- crossoverTerm(
1656
- "bronze",
1657
- "Bronze",
1658
- "A copper-alloy family historically associated with copper and tin; unmodified bronze does not identify a specific modern composition.",
1659
- CROSSOVER_DEFINITION_SOURCES.bronze
2546
+ {
2547
+ ...reviewed3(
2548
+ "synthetic-leather",
2549
+ "Synthetic leather",
2550
+ "A man-made coated or laminated material made to resemble leather, distinct from leather.",
2551
+ wikidata3("Q1792537", "artificial leather"),
2552
+ {
2553
+ altLabels: ["faux leather", "vegan leather", "artificial leather"],
2554
+ related: [{ predicate: "reads-as", target: "material.leather" }],
2555
+ seenAs: ["leatherette", "pleather"]
2556
+ }
2557
+ ),
2558
+ broaderSlug: "composite",
2559
+ reviewedAt: COMPOSITION_REVIEW_DATE
2560
+ },
2561
+ // Engineered surfacing, beneath `engineered-stone` from 2026-09-22. The bare word `quartz`
2562
+ // names this surfacing first and the mineral second; that ordering is an authored lexical entry
2563
+ // in `v1.ts`, since `material.quartz` (the mineral) is a concept of its own from that date.
2564
+ {
2565
+ ...reviewed3(
2566
+ "engineered-quartz",
2567
+ "Engineered quartz",
2568
+ "A composite surfacing of crushed quartz bound in resin, distinct from quartzite and from the mineral quartz.",
2569
+ wikidata3("Q5377800", "engineered stone"),
2570
+ {
2571
+ altLabels: ["quartz surfacing"],
2572
+ related: [{ predicate: "reads-as", target: STONE_TARGET }]
2573
+ }
2574
+ ),
2575
+ broaderSlug: "engineered-stone",
2576
+ reviewedAt: COMPOSITION_REVIEW_DATE
2577
+ }
2578
+ ];
2579
+
2580
+ // src/axes/material-metals.ts
2581
+ var FERROUS_METAL_SLUG = "ferrous-metal";
2582
+ var NON_FERROUS_METAL_SLUG = "non-ferrous-metal";
2583
+ var COPPER_ALLOY_SLUG = "copper-alloy";
2584
+ var STEEL_SLUG = "steel";
2585
+ var STAINLESS_STEEL_SLUG = "stainless-steel";
2586
+ var ALUMINIUM_SLUG = "aluminium";
2587
+ var ALUMINIUM_ALLOY_SLUG = "aluminium-alloy";
2588
+ var EN_573_3 = "EN 573-3:2019";
2589
+ var UNS_COPPER = "Copper Development Association UNS designations, https://uns.copper.org/";
2590
+ var UNS_NICKEL_SILVERS = "UNS nickel silvers, https://uns.copper.org/wrought/nickel-silvers.php";
2591
+ var CAS_REGISTRY = "CAS Registry";
2592
+ var EN_10088_UNS = "EN 10088-1:2023; UNS";
2593
+ var MATERIAL_METALS_TERMS = [
2594
+ // The class and its two families. No cited standard defines the everyday ferrous/non-ferrous
2595
+ // split at this level of generality, so these three are in-house.
2596
+ authoredTerm(
2597
+ "metal",
2598
+ "Metal",
2599
+ "A chemical element or alloy characterised by metallic bonding, lustre and electrical and thermal conductivity, encompassing both ferrous and non-ferrous forms."
2600
+ ),
2601
+ authoredTerm(
2602
+ FERROUS_METAL_SLUG,
2603
+ "Ferrous metal",
2604
+ "A metal or alloy whose principal constituent by mass is iron, as distinct from a non-ferrous metal.",
2605
+ { altLabels: ["ferrous"], broaderSlug: "metal" }
2606
+ ),
2607
+ authoredTerm(
2608
+ NON_FERROUS_METAL_SLUG,
2609
+ "Non-ferrous metal",
2610
+ "A metal or alloy whose principal constituent by mass is not iron.",
2611
+ {
2612
+ altLabels: ["non-ferrous", "nonferrous metal"],
2613
+ broaderSlug: "metal"
2614
+ }
2615
+ ),
2616
+ // NEW, not in the source dictionary: `copper` in `material.ts` is defined at a minimum 99.3
2617
+ // percent purity and cannot parent an alloy family, so `brass`, `bronze`, `gunmetal` and the new
2618
+ // `nickel-silver` need a family of their own. Added here at the lead session's direction.
2619
+ compositionTerm(
2620
+ COPPER_ALLOY_SLUG,
2621
+ "Copper alloy",
2622
+ "An alloy in which copper is the principal element by mass.",
2623
+ UNS_COPPER,
2624
+ { broaderSlug: NON_FERROUS_METAL_SLUG }
2625
+ ),
2626
+ // NEW, not in the source dictionary: `aluminium` is the element alone, so the wrought grades
2627
+ // need an alloy family to sit beneath, as the copper alloys do.
2628
+ compositionTerm(
2629
+ ALUMINIUM_ALLOY_SLUG,
2630
+ "Aluminium alloy",
2631
+ "An alloy in which aluminium is the principal element by mass, as EN 573-3 designates by four-digit series.",
2632
+ EN_573_3,
2633
+ {
2634
+ broaderSlug: NON_FERROUS_METAL_SLUG,
2635
+ seenAs: ["aluminum alloy"]
2636
+ }
2637
+ ),
2638
+ // Elemental and alloy-family materials, alphabetical by label.
2639
+ compositionTerm(
2640
+ ALUMINIUM_SLUG,
2641
+ "Aluminium",
2642
+ "The metallic chemical element Al, atomic number 13.",
2643
+ CAS_REGISTRY,
2644
+ {
2645
+ altLabels: ["Aluminum"],
2646
+ broaderSlug: NON_FERROUS_METAL_SLUG,
2647
+ external: [externalMapping("cas", "7429-90-5", "Aluminum")]
2648
+ }
2649
+ ),
2650
+ compositionTerm(
2651
+ "carbon-steel",
2652
+ "Carbon steel",
2653
+ "A non-alloy steel, as classified under EN 10020, whose properties derive from carbon content rather than from deliberate alloying additions.",
2654
+ "EN 10020:2000",
2655
+ {
2656
+ altLabels: ["plain carbon steel"],
2657
+ broaderSlug: STEEL_SLUG,
2658
+ seenAs: ["mild steel", "low carbon steel"]
2659
+ }
2660
+ ),
2661
+ compositionTerm(
2662
+ "chromium",
2663
+ "Chromium",
2664
+ "The metallic chemical element Cr, atomic number 24.",
2665
+ CAS_REGISTRY,
2666
+ {
2667
+ broaderSlug: NON_FERROUS_METAL_SLUG,
2668
+ external: [externalMapping("cas", "7440-47-3", "Chromium")]
2669
+ }
2670
+ ),
2671
+ compositionTerm(
2672
+ "galvanised-steel",
2673
+ "Galvanised steel",
2674
+ "Steel coated with a protective layer of zinc, such as by hot-dip galvanising to ISO 1461, distinct from the zinc coating itself.",
2675
+ "ISO 1461:2022",
2676
+ {
2677
+ altLabels: ["hot-dip galvanised steel", "HDG steel"],
2678
+ broaderSlug: STEEL_SLUG,
2679
+ seenAs: ["galvanized steel"]
2680
+ }
2681
+ ),
2682
+ // Bounded to fibre made of metal, so it is an instance of `metal`. A fibre merely coated in or
2683
+ // wrapped with metal is not this concept, which is why the FTC's wider "metallic" is a broad
2684
+ // match.
2685
+ compositionTerm(
2686
+ "metallic-fibre",
2687
+ "Metallic fibre",
2688
+ "A fibre made of metal, drawn or cut from a metal, as the generic name metal fibre covers.",
2689
+ "ISO 2076:2021; Regulation (EU) No 1007/2011 Annex I; US FTC 16 CFR 303.7",
2690
+ {
2691
+ altLabels: ["metal fibre", "metallic yarn"],
2692
+ broaderSlug: "metal",
2693
+ external: [
2694
+ externalMapping("iso-2076", "metal", "metal"),
2695
+ externalMapping("eu-1007-2011", "metal", "metal"),
2696
+ externalMapping("ftc-16cfr303", "metallic", "metallic", "broad")
2697
+ ],
2698
+ seenAs: ["metallic fiber", "metal fiber"]
2699
+ }
2700
+ ),
2701
+ compositionTerm(
2702
+ "nickel-silver",
2703
+ "Nickel silver",
2704
+ "A copper-nickel-zinc alloy in the UNS C73500 to C79999 range, containing no silver.",
2705
+ `ASTM B122/B122M; ${UNS_NICKEL_SILVERS}`,
2706
+ {
2707
+ altLabels: ["German silver", "alpaca silver"],
2708
+ broaderSlug: COPPER_ALLOY_SLUG
2709
+ }
2710
+ ),
2711
+ compositionTerm(
2712
+ "tin",
2713
+ "Tin",
2714
+ "The metallic chemical element Sn, atomic number 50.",
2715
+ CAS_REGISTRY,
2716
+ {
2717
+ broaderSlug: NON_FERROUS_METAL_SLUG,
2718
+ external: [externalMapping("cas", "7440-31-5", "Tin")]
2719
+ }
2720
+ ),
2721
+ compositionTerm(
2722
+ "titanium",
2723
+ "Titanium",
2724
+ "The metallic chemical element Ti, atomic number 22.",
2725
+ CAS_REGISTRY,
2726
+ {
2727
+ broaderSlug: NON_FERROUS_METAL_SLUG,
2728
+ external: [externalMapping("cas", "7440-32-6", "Titanium")]
2729
+ }
2730
+ ),
2731
+ compositionTerm(
2732
+ "zamak",
2733
+ "Zamak",
2734
+ "A zinc casting-alloy family with about four percent aluminium and a little magnesium, with copper in some grades, as EN 12844 designates (ZnAl4, ZnAl4Cu1, ZnAl4Cu3).",
2735
+ "EN 1774; EN 12844; ASTM B86",
2736
+ {
2737
+ altLabels: ["zinc die-cast alloy"],
2738
+ broaderSlug: NON_FERROUS_METAL_SLUG,
2739
+ seenAs: ["Zamac", "zinc alloy"]
2740
+ }
2741
+ ),
2742
+ // Named grades and tempers, alphabetical by label.
2743
+ compositionTerm(
2744
+ "aluminium-6061",
2745
+ "Aluminium 6061",
2746
+ "A heat-treatable aluminium-magnesium-silicon wrought alloy designated 6061 under EN 573-3 and UNS A96061.",
2747
+ `${EN_573_3}; UNS`,
2748
+ {
2749
+ altLabels: ["6061 aluminium", "AA6061"],
2750
+ broaderSlug: ALUMINIUM_ALLOY_SLUG,
2751
+ external: [
2752
+ externalMapping("en", "EN AW-6061", "EN AW-AlMg1SiCu"),
2753
+ externalMapping("uns", "A96061", "A96061")
2754
+ ],
2755
+ seenAs: ["6061 aluminum", "aluminum 6061"]
2756
+ }
2757
+ ),
2758
+ compositionTerm(
2759
+ "aluminium-6063",
2760
+ "Aluminium 6063",
2761
+ "A heat-treatable aluminium-magnesium-silicon wrought alloy designated 6063 under EN 573-3 and UNS A96063, commonly extruded for architectural profiles.",
2762
+ `${EN_573_3}; UNS`,
2763
+ {
2764
+ altLabels: ["6063 aluminium", "AA6063"],
2765
+ broaderSlug: ALUMINIUM_ALLOY_SLUG,
2766
+ external: [
2767
+ externalMapping("en", "EN AW-6063", "EN AW-AlMg0,7Si"),
2768
+ externalMapping("uns", "A96063", "A96063")
2769
+ ],
2770
+ seenAs: ["6063 aluminum", "aluminum 6063"]
2771
+ }
2772
+ ),
2773
+ compositionTerm(
2774
+ "cast-iron",
2775
+ "Cast iron",
2776
+ "An alloy of iron with carbon above two percent by mass, shaped by casting.",
2777
+ "ASTM A644-24",
2778
+ { broaderSlug: FERROUS_METAL_SLUG }
2779
+ ),
2780
+ compositionTerm(
2781
+ "stainless-steel-304",
2782
+ "Stainless steel 304",
2783
+ "An austenitic chromium-nickel stainless steel grade designated UNS S30400 and EN 10088 steel number 1.4301.",
2784
+ EN_10088_UNS,
2785
+ {
2786
+ altLabels: [
2787
+ "304 stainless steel",
2788
+ "type 304 stainless steel",
2789
+ "AISI 304",
2790
+ "SS304",
2791
+ "SS 304"
2792
+ ],
2793
+ broaderSlug: STAINLESS_STEEL_SLUG,
2794
+ external: [
2795
+ externalMapping("en", "1.4301", "X5CrNi18-10"),
2796
+ externalMapping("uns", "S30400", "S30400")
2797
+ ]
2798
+ }
2799
+ ),
2800
+ compositionTerm(
2801
+ "stainless-steel-316",
2802
+ "Stainless steel 316",
2803
+ "An austenitic chromium-nickel-molybdenum stainless steel grade designated UNS S31600 and EN 10088 steel number 1.4401.",
2804
+ EN_10088_UNS,
2805
+ {
2806
+ altLabels: [
2807
+ "316 stainless steel",
2808
+ "type 316 stainless steel",
2809
+ "AISI 316",
2810
+ "SS316",
2811
+ "SS 316"
2812
+ ],
2813
+ broaderSlug: STAINLESS_STEEL_SLUG,
2814
+ external: [
2815
+ externalMapping("en", "1.4401", "X5CrNiMo17-12-2"),
2816
+ externalMapping("uns", "S31600", "S31600")
2817
+ ]
2818
+ }
2819
+ ),
2820
+ compositionTerm(
2821
+ "stainless-steel-316l",
2822
+ "Stainless steel 316L",
2823
+ "A low-carbon variant of 316 austenitic stainless steel, designated UNS S31603 and EN 10088 steel number 1.4404, offering improved resistance to weld-decay corrosion.",
2824
+ EN_10088_UNS,
2825
+ {
2826
+ altLabels: ["316L", "316L stainless steel"],
2827
+ broaderSlug: STAINLESS_STEEL_SLUG,
2828
+ external: [
2829
+ externalMapping("en", "1.4404", "X2CrNiMo17-12-2"),
2830
+ externalMapping("uns", "S31603", "S31603")
2831
+ ]
2832
+ }
2833
+ ),
2834
+ compositionTerm(
2835
+ "stainless-steel-430",
2836
+ "Stainless steel 430",
2837
+ "A ferritic stainless steel grade designated UNS S43000 and EN 10088 steel number 1.4016, with no deliberate nickel addition (0.75 percent maximum).",
2838
+ EN_10088_UNS,
2839
+ {
2840
+ altLabels: ["430 stainless steel"],
2841
+ broaderSlug: STAINLESS_STEEL_SLUG,
2842
+ external: [
2843
+ externalMapping("en", "1.4016", "X6Cr17"),
2844
+ externalMapping("uns", "S43000", "S43000")
2845
+ ]
2846
+ }
2847
+ ),
2848
+ authoredTerm(
2849
+ "wrought-iron",
2850
+ "Wrought iron",
2851
+ "A low-carbon iron-carbon material containing fibrous slag inclusions, worked by hand or mill forging rather than cast; named by its manufacture, not by elemental iron.",
2852
+ { broaderSlug: FERROUS_METAL_SLUG }
2853
+ )
2854
+ ];
2855
+
2856
+ // src/axes/material-mineral-additives.ts
2857
+ var CAS = "CAS Registry";
2858
+ var MINERAL_SLUG = "mineral";
2859
+ var PIGMENT_SLUG = "pigment";
2860
+ var FILLER_SLUG = "filler";
2861
+ var FLAME_RETARDANT_ADDITIVE_SLUG = "flame-retardant-additive";
2862
+ var MINERAL_OXIDE_SLUG = "mineral-oxide";
2863
+ var ISO_18451_1 = "ISO 18451-1:2019";
2864
+ var roleOf = (slug) => ({
2865
+ predicate: "related-to",
2866
+ target: `material.${slug}`
2867
+ });
2868
+ var AS_PIGMENT = roleOf(PIGMENT_SLUG);
2869
+ var AS_FILLER = roleOf(FILLER_SLUG);
2870
+ var AS_FLAME_RETARDANT = roleOf(FLAME_RETARDANT_ADDITIVE_SLUG);
2871
+ var MATERIAL_MINERAL_ADDITIVES_TERMS = [
2872
+ // The three role names. A declared composition uses them when it names the role and not the
2873
+ // substance, so they are leaves beneath `mineral` and never parents: each substance below sits
2874
+ // beneath the chemistry it has and points at its usual role with `related-to`.
2875
+ compositionTerm(
2876
+ FILLER_SLUG,
2877
+ "Filler",
2878
+ "An inorganic particulate substance added to extend a material or modify its properties, named in a composition when the specific filler is not.",
2879
+ ISO_18451_1,
2880
+ { altLabels: ["mineral filler", "extender"], broaderSlug: MINERAL_SLUG }
2881
+ ),
2882
+ compositionTerm(
2883
+ FLAME_RETARDANT_ADDITIVE_SLUG,
2884
+ "Flame retardant additive",
2885
+ "An inorganic substance added to a material to reduce its flammability, named in a composition when the specific additive is not.",
2886
+ "ISO 13943:2023",
2887
+ {
2888
+ altLabels: ["flame retardants", "fire retardant additive"],
2889
+ broaderSlug: MINERAL_SLUG
2890
+ }
2891
+ ),
2892
+ compositionTerm(
2893
+ PIGMENT_SLUG,
2894
+ "Pigment",
2895
+ "An inorganic insoluble particulate substance added to colour a material, named in a composition when the specific pigment is not.",
2896
+ ISO_18451_1,
2897
+ {
2898
+ altLabels: ["colour pigment", "color pigment"],
2899
+ broaderSlug: MINERAL_SLUG
2900
+ }
2901
+ ),
2902
+ // Substances named for a role above, each beneath the chemistry it has.
2903
+ compositionTerm(
2904
+ "carbon-black",
2905
+ "Carbon black",
2906
+ "A finely divided, nearly pure form of elemental carbon produced by the controlled incomplete combustion or thermal decomposition of hydrocarbons, used as a black pigment and reinforcing filler.",
2907
+ CAS,
2908
+ {
2909
+ altLabels: ["furnace black"],
2910
+ broaderSlug: MINERAL_SLUG,
2911
+ external: [externalMapping("cas", "1333-86-4", "Carbon black")],
2912
+ related: [AS_PIGMENT]
2913
+ }
2914
+ ),
2915
+ authoredTerm(
2916
+ "iron-oxide",
2917
+ "Iron oxide",
2918
+ "A collective term for the naturally occurring and synthetic oxide compounds of iron, such as haematite and magnetite, used as red, yellow, brown and black mineral pigments.",
2919
+ {
2920
+ altLabels: ["iron oxide pigment"],
2921
+ broaderSlug: MINERAL_OXIDE_SLUG,
2922
+ related: [AS_PIGMENT]
2923
+ }
2924
+ ),
2925
+ compositionTerm(
2926
+ "titanium-dioxide",
2927
+ "Titanium dioxide",
2928
+ "The chemical compound TiO2 in its pigmentary crystalline forms, rutile and anatase, used as a white pigment for its high refractive index and opacity.",
2929
+ CAS,
2930
+ {
2931
+ altLabels: ["TiO2", "titanium white", "titanium oxide"],
2932
+ broaderSlug: MINERAL_OXIDE_SLUG,
2933
+ external: [externalMapping("cas", "13463-67-7", "Titanium dioxide")],
2934
+ related: [AS_PIGMENT]
2935
+ }
2936
+ ),
2937
+ compositionTerm(
2938
+ "zinc-sulfide",
2939
+ "Zinc sulfide",
2940
+ "The chemical compound ZnS, used as a white pigment and as a host lattice for phosphorescent and fluorescent pigments.",
2941
+ CAS,
2942
+ {
2943
+ altLabels: ["zinc sulphide"],
2944
+ broaderSlug: MINERAL_SLUG,
2945
+ external: [externalMapping("cas", "1314-98-3", "Zinc Sulfide")],
2946
+ related: [AS_PIGMENT]
2947
+ }
2948
+ ),
2949
+ compositionTerm(
2950
+ "barium-sulfate",
2951
+ "Barium sulfate",
2952
+ "The chemical compound BaSO4, occurring naturally as the mineral barytes and produced synthetically, used as a dense, chemically inert mineral filler.",
2953
+ CAS,
2954
+ {
2955
+ altLabels: ["barium sulphate", "barytes", "baryte", "BaSO4"],
2956
+ broaderSlug: MINERAL_SLUG,
2957
+ external: [externalMapping("cas", "7727-43-7", "Barium Sulfate")],
2958
+ related: [AS_FILLER]
2959
+ }
2960
+ ),
2961
+ compositionTerm(
2962
+ "calcium-carbonate",
2963
+ "Calcium carbonate",
2964
+ "The chemical compound CaCO3, ground or precipitated for use as a mineral filler and extender.",
2965
+ CAS,
2966
+ {
2967
+ altLabels: [
2968
+ "CaCO3",
2969
+ "ground calcium carbonate",
2970
+ "precipitated calcium carbonate"
2971
+ ],
2972
+ broaderSlug: MINERAL_SLUG,
2973
+ external: [externalMapping("cas", "471-34-1", "Calcium Carbonate")],
2974
+ related: [AS_FILLER]
2975
+ }
2976
+ ),
2977
+ compositionTerm(
2978
+ "talc",
2979
+ "Talc",
2980
+ "A hydrated magnesium silicate sheet mineral, the softest mineral on the Mohs scale, used as a filler and extender.",
2981
+ CAS,
2982
+ {
2983
+ altLabels: ["talcum"],
2984
+ broaderSlug: MINERAL_SLUG,
2985
+ external: [externalMapping("cas", "14807-96-6", "Talc")],
2986
+ related: [AS_FILLER]
2987
+ }
2988
+ ),
2989
+ // Mineral oxide's own materials, alphabetical by label. `mineral-oxide` itself is defined in
2990
+ // `material-minerals.ts`.
2991
+ compositionTerm(
2992
+ "aluminium-oxide",
2993
+ "Aluminium oxide",
2994
+ "The chemical compound Al2O3, produced from bauxite or occurring naturally as corundum, used as a mineral raw material and abrasive.",
2995
+ CAS,
2996
+ {
2997
+ altLabels: ["alumina", "Al2O3", "aluminum oxide"],
2998
+ broaderSlug: MINERAL_OXIDE_SLUG,
2999
+ external: [externalMapping("cas", "1344-28-1", "Alumina")]
3000
+ }
3001
+ ),
3002
+ compositionTerm(
3003
+ "calcium-oxide",
3004
+ "Calcium oxide",
3005
+ "The chemical compound CaO, produced by calcining calcium carbonate, used as a raw material in cement, lime and glass manufacture.",
3006
+ CAS,
3007
+ {
3008
+ altLabels: ["quicklime", "burnt lime"],
3009
+ broaderSlug: MINERAL_OXIDE_SLUG,
3010
+ external: [externalMapping("cas", "1305-78-8", "Calcium Oxide")]
3011
+ }
3012
+ ),
3013
+ compositionTerm(
3014
+ "magnesium-oxide",
3015
+ "Magnesium oxide",
3016
+ "The chemical compound MgO, produced by calcining magnesium carbonate or hydroxide, used as a raw material and mineral filler.",
3017
+ CAS,
3018
+ {
3019
+ altLabels: ["magnesia"],
3020
+ broaderSlug: MINERAL_OXIDE_SLUG,
3021
+ external: [externalMapping("cas", "1309-48-4", "Magnesium Oxide")]
3022
+ }
3023
+ ),
3024
+ compositionTerm(
3025
+ "aluminium-hydroxide",
3026
+ "Aluminium hydroxide",
3027
+ "The chemical compound Al(OH)3, used as a mineral flame-retardant additive that releases water and absorbs heat as it decomposes.",
3028
+ CAS,
3029
+ {
3030
+ altLabels: [
3031
+ "aluminum hydroxide",
3032
+ "aluminium trihydroxide",
3033
+ "alumina trihydrate",
3034
+ "aluminium trihydrate"
3035
+ ],
3036
+ broaderSlug: MINERAL_SLUG,
3037
+ external: [externalMapping("cas", "21645-51-2", "Aluminum Hydroxide")],
3038
+ related: [AS_FLAME_RETARDANT]
3039
+ }
3040
+ ),
3041
+ compositionTerm(
3042
+ "antimony-trioxide",
3043
+ "Antimony trioxide",
3044
+ "The chemical compound Sb2O3, used as a synergist flame-retardant additive alongside halogenated compounds rather than alone.",
3045
+ CAS,
3046
+ {
3047
+ altLabels: ["antimony oxide", "Sb2O3"],
3048
+ broaderSlug: MINERAL_OXIDE_SLUG,
3049
+ external: [externalMapping("cas", "1309-64-4", "Antimony Trioxide")],
3050
+ related: [AS_FLAME_RETARDANT]
3051
+ }
3052
+ )
3053
+ ];
3054
+
3055
+ // src/axes/material-minerals.ts
3056
+ var EU_ANNEX_I2 = "Regulation (EU) No 1007/2011 Annex I";
3057
+ var STANDARD_FTC_ROW = "US FTC 16 CFR 303.7";
3058
+ var ISO_2076_2021 = "ISO 2076:2021";
3059
+ var CAS2 = "CAS Registry";
3060
+ var ASTM_C242 = "ASTM C242-20";
3061
+ var MINERAL_SLUG2 = "mineral";
3062
+ var SILICA_SLUG = "silica";
3063
+ var GLASS_SLUG = "glass";
3064
+ var CEMENTITIOUS_SLUG = "cementitious";
3065
+ var CERAMIC_SLUG = "ceramic";
3066
+ var SILICON_DIOXIDE_SLUG = "silicon-dioxide";
3067
+ var GYPSUM_SLUG = "gypsum";
3068
+ var MATERIAL_MINERALS_TERMS = [
3069
+ // The class and its new families. No cited standard defines the mineral class at this level of
3070
+ // generality, so it is in-house; `glass` and `cementitious` each have a public terminology
3071
+ // standard, `silica` and `mineral-oxide` do not.
3072
+ authoredTerm(
3073
+ MINERAL_SLUG2,
3074
+ "Mineral",
3075
+ "An inorganic material outside the metal and polymer material classes, encompassing quarried stone, fired ceramic and glass bodies, cementitious binders, elemental and compound minerals, and the particulate substances used as their pigments, fillers and flame-retardant additives.",
3076
+ {
3077
+ altLabels: ["mineral material"],
3078
+ seenAs: ["minerals", "mineral & ceramic", "ceramic & glass"]
3079
+ }
3080
+ ),
3081
+ compositionTerm(
3082
+ CEMENTITIOUS_SLUG,
3083
+ "Cementitious",
3084
+ "A material that sets and develops strength through a chemical reaction with water, together with the binders and materials made from it.",
3085
+ "ASTM C125-24",
3086
+ { altLabels: ["cementitious material"], broaderSlug: MINERAL_SLUG2 }
3087
+ ),
3088
+ compositionTerm(
3089
+ GLASS_SLUG,
3090
+ "Glass",
3091
+ "An inorganic product of fusion cooled to a rigid condition without crystallising, spanning compositions and manufactured forms.",
3092
+ "ASTM C162-05(2015)",
3093
+ { broaderSlug: MINERAL_SLUG2, seenAs: ["vetro"] }
3094
+ ),
3095
+ authoredTerm(
3096
+ "mineral-oxide",
3097
+ "Mineral oxide",
3098
+ "A compound of a metal or metalloid element with oxygen occurring or produced as a mineral substance.",
3099
+ { broaderSlug: MINERAL_SLUG2 }
3100
+ ),
3101
+ authoredTerm(
3102
+ SILICA_SLUG,
3103
+ "Silica",
3104
+ "Silicon dioxide, SiO2, in its crystalline and amorphous forms.",
3105
+ {
3106
+ altLabels: ["silicon dioxide", "SiO2"],
3107
+ broaderSlug: MINERAL_SLUG2,
3108
+ external: [externalMapping("cas", "7631-86-9", "Silica")]
3109
+ }
3110
+ ),
3111
+ // Materials directly beneath `mineral`, alphabetical by label.
3112
+ authoredTerm(
3113
+ "feldspar",
3114
+ "Feldspar",
3115
+ "A group of rock-forming aluminosilicate minerals containing potassium, sodium or calcium, among the most abundant mineral groups in the Earth's crust.",
3116
+ { broaderSlug: MINERAL_SLUG2 }
3117
+ ),
3118
+ compositionTerm(
3119
+ GYPSUM_SLUG,
3120
+ "Gypsum",
3121
+ "Calcium sulfate dihydrate in its natural or synthetic mineral form, the raw material from which gypsum binders and plasters are produced.",
3122
+ "EN 13279-1:2008",
3123
+ { broaderSlug: MINERAL_SLUG2 }
3124
+ ),
3125
+ compositionTerm(
3126
+ "mica",
3127
+ "Mica",
3128
+ "A group of sheet-silicate minerals characterised by perfect basal cleavage into thin, flexible flakes.",
3129
+ CAS2,
3130
+ {
3131
+ broaderSlug: MINERAL_SLUG2,
3132
+ external: [externalMapping("cas", "12001-26-2", "Mica-group minerals")]
3133
+ }
3134
+ ),
3135
+ compositionTerm(
3136
+ "mineral-wool",
3137
+ "Mineral wool",
3138
+ "A synthetic inorganic fibre manufactured by melting rock, slag or glass and forming it into fine fibres, used chiefly as thermal and acoustic insulation.",
3139
+ "EN 13162:2012+A1:2015",
3140
+ {
3141
+ altLabels: [
3142
+ "mineral fibre",
3143
+ "mineral fiber",
3144
+ "stone wool",
3145
+ "rock wool",
3146
+ "slag wool"
3147
+ ],
3148
+ broaderSlug: MINERAL_SLUG2
3149
+ }
3150
+ ),
3151
+ compositionTerm(
3152
+ "silicon",
3153
+ "Silicon",
3154
+ "The metalloid chemical element Si, atomic number 14, in its elemental solid form; compounds such as silicon dioxide are distinct.",
3155
+ CAS2,
3156
+ {
3157
+ altLabels: ["elemental silicon"],
3158
+ broaderSlug: MINERAL_SLUG2,
3159
+ external: [externalMapping("cas", "7440-21-3", "Silicon")]
3160
+ }
3161
+ ),
3162
+ // Sand is bounded by grain size, not by chemistry: a carbonate sand is still sand, so it sits
3163
+ // beneath `mineral` and not beneath `silica`.
3164
+ compositionTerm(
3165
+ "sand",
3166
+ "Sand",
3167
+ "Loose mineral grains between 0.063 and 2 millimetres across, as ISO 14688-1 bounds the sand fraction.",
3168
+ "ISO 14688-1:2017",
3169
+ {
3170
+ broaderSlug: MINERAL_SLUG2,
3171
+ seenAs: ["silica sand", "quartz sand"]
3172
+ }
3173
+ ),
3174
+ // Deprecated on arrival: silica and silicon dioxide name one compound, so the consumer's id
3175
+ // survives here pointing at `silica`.
3176
+ compositionTerm(
3177
+ SILICON_DIOXIDE_SLUG,
3178
+ "Silicon dioxide",
3179
+ "The chemical compound SiO2, the same compound silica names.",
3180
+ CAS2,
3181
+ {
3182
+ altLabels: ["silicon oxide"],
3183
+ note: "Deprecated in favour of silica, which names the same compound.",
3184
+ status: "deprecated",
3185
+ supersededByReference: "material.silica"
3186
+ }
3187
+ ),
3188
+ // Silica's mineral species, alphabetical by label.
3189
+ compositionTerm(
3190
+ "cristobalite",
3191
+ "Cristobalite",
3192
+ "A tetragonal or cubic high-temperature crystalline polymorph of silicon dioxide, distinct from quartz.",
3193
+ CAS2,
3194
+ {
3195
+ broaderSlug: SILICA_SLUG,
3196
+ external: [externalMapping("cas", "14464-46-1", "Cristobalite")]
3197
+ }
3198
+ ),
3199
+ compositionTerm(
3200
+ "quartz",
3201
+ "Quartz",
3202
+ "The trigonal crystalline mineral form of silicon dioxide; the mineral species, not the resin-bound engineered quartz surfacing sold under the same wild-form word.",
3203
+ CAS2,
3204
+ {
3205
+ altLabels: ["quartz crystal"],
3206
+ broaderSlug: SILICA_SLUG,
3207
+ external: [externalMapping("cas", "14808-60-7", "Quartz")]
3208
+ }
3209
+ ),
3210
+ // Beneath `ceramic`, alphabetical by label.
3211
+ compositionTerm(
3212
+ "earthenware",
3213
+ "Earthenware",
3214
+ "A fired ceramic body that remains porous after firing, with water absorption above the threshold that separates it from stoneware and porcelain.",
3215
+ ASTM_C242,
3216
+ { broaderSlug: CERAMIC_SLUG }
3217
+ ),
3218
+ compositionTerm(
3219
+ "sintered-stone",
3220
+ "Sintered stone",
3221
+ "A dense compact slab manufactured by sintering ceramic and mineral raw materials under heat and pressure without a resin binder, distinct from natural stone and from resin-bound engineered surfacing.",
3222
+ "ANSI A137.3-2022",
3223
+ {
3224
+ altLabels: ["sintered stone slab"],
3225
+ broaderSlug: CERAMIC_SLUG
3226
+ }
3227
+ ),
3228
+ compositionTerm(
3229
+ "stoneware",
3230
+ "Stoneware",
3231
+ "A vitreous or semivitreous fired ceramic ware of fine texture made primarily from nonrefractory fire clay, or from clays, fluxes and silica giving similar properties, as ASTM C242 defines.",
3232
+ ASTM_C242,
3233
+ { broaderSlug: CERAMIC_SLUG }
3234
+ ),
3235
+ // Beneath `clay`.
3236
+ compositionTerm(
3237
+ "kaolin",
3238
+ "Kaolin",
3239
+ "A clay rich in the mineral kaolinite, fine-grained and typically white-firing, used as a raw material in ceramic bodies and as a filler and pigment extender.",
3240
+ CAS2,
3241
+ {
3242
+ altLabels: ["china clay"],
3243
+ broaderSlug: "clay",
3244
+ external: [externalMapping("cas", "1332-58-7", "Kaolin")],
3245
+ seenAs: ["kaolinite"]
3246
+ }
3247
+ ),
3248
+ // Glass's own materials, alphabetical by label.
3249
+ compositionTerm(
3250
+ "crystal",
3251
+ "Crystal",
3252
+ "Glass with at least 10 percent by mass of lead, barium, zinc or potassium oxide, singly or together, and a refractive index of at least 1.520, with lead crystal at or above 24 percent lead oxide, as Directive 69/493/EEC classes it.",
3253
+ "Council Directive 69/493/EEC, https://www.legislation.gov.uk/eudr/1969/493/annexes/data.xht",
3254
+ { altLabels: ["crystal glass", "lead crystal"], broaderSlug: GLASS_SLUG }
3255
+ ),
3256
+ compositionTerm(
3257
+ "glass-fibre",
3258
+ "Glass fibre",
3259
+ "A fibre manufactured from glass, given the generic name 'glass' under ISO 2076 and US FTC 16 CFR 303.7 and 'glass fibre' under EU Regulation No 1007/2011 Annex I; textile and reinforcement forms are not distinguished.",
3260
+ `${EU_ANNEX_I2} row 44; ${STANDARD_FTC_ROW}; ${ISO_2076_2021}`,
3261
+ {
3262
+ altLabels: [
3263
+ "glass fiber",
3264
+ "fibreglass",
3265
+ "fiberglass",
3266
+ "fibre glass",
3267
+ "fiber glass"
3268
+ ],
3269
+ broaderSlug: GLASS_SLUG,
3270
+ external: [
3271
+ externalMapping("iso-2076", "glass", "Glass"),
3272
+ externalMapping("eu-1007-2011", "glass fibre", "Glass fibre"),
3273
+ externalMapping("ftc-16cfr303", "glass", "Glass")
3274
+ ],
3275
+ seenAs: ["glass fibers"]
3276
+ },
3277
+ "standard"
3278
+ ),
3279
+ // Cementitious's own material. `terrazzo` is NOT included here: the composition dictionary (src-05) parents it under
3280
+ // `cementitious`, but modern terrazzo is also made with a resin (typically epoxy) binder, so
3281
+ // cementitious is not true of every instance. It is written under `composite` instead, below.
3282
+ compositionTerm(
3283
+ "cement",
3284
+ "Cement",
3285
+ "A hydraulic binder that, mixed with water, forms a paste that sets and hardens through hydration and remains stable once hardened, as classified among the common cements in EN 197-1.",
3286
+ "EN 197-1:2011",
3287
+ { broaderSlug: CEMENTITIOUS_SLUG }
3288
+ ),
3289
+ compositionTerm(
3290
+ "terrazzo",
3291
+ "Terrazzo",
3292
+ "A surfacing of marble, granite, quartz or glass chips set in a cement or resin binder and ground and polished to expose the aggregate, as EN 13748-1 specifies for cement-bound terrazzo tiles.",
3293
+ "EN 13748-1:2004 (cement-bound terrazzo tiles)",
3294
+ {
3295
+ broaderSlug: "composite",
3296
+ related: [{ predicate: "reads-as", target: "material.stone" }]
3297
+ }
3298
+ ),
3299
+ // Beneath `mineral`, not `gypsum`: the board carries a paper facing, so not every part of it is
3300
+ // gypsum.
3301
+ compositionTerm(
3302
+ "plasterboard",
3303
+ "Plasterboard",
3304
+ "A board with a set gypsum core faced on each side with paper, as EN 520 specifies.",
3305
+ "EN 520:2004+A1:2009",
3306
+ {
3307
+ altLabels: ["gypsum board", "drywall", "gypsum plasterboard"],
3308
+ broaderSlug: MINERAL_SLUG2
3309
+ }
3310
+ ),
3311
+ // Plaster's own material. `plaster` itself already exists in `material-everyday.ts` and sits
3312
+ // beneath `mineral`, since a lime plaster sets by carbonation and is not cementitious.
3313
+ compositionTerm(
3314
+ "lime-plaster",
3315
+ "Lime plaster",
3316
+ "A plaster in which lime, rather than gypsum or cement, is the principal binder, traditionally applied in coats and hardening chiefly by carbonation as it cures.",
3317
+ "EN 459-1:2015",
3318
+ { altLabels: ["lime render"], broaderSlug: "plaster" }
3319
+ )
3320
+ ];
3321
+
3322
+ // src/axes/material-natural-organic.ts
3323
+ var NATURAL_FIBRE_SLUG = "natural-fibre";
3324
+ var NATURAL_ORGANIC_SLUG = "natural-organic";
3325
+ var ANIMAL_FIBRE_SLUG = "animal-fibre";
3326
+ var PLANT_FIBRE_SLUG = "plant-fibre";
3327
+ var GRASS_SLUG = "grass";
3328
+ var CAS_REGISTRY2 = "CAS Registry";
3329
+ var ISO_6938 = "ISO 6938:2012";
3330
+ var ISO_4046 = "ISO 4046 series";
3331
+ var EU_1007_2011_ANNEX_I = "Regulation (EU) No 1007/2011 Annex I";
3332
+ var EU_1007_2011_SCHEME = "eu-1007-2011";
3333
+ var MATERIAL_NATURAL_ORGANIC_TERMS = [
3334
+ // The root class, and the four legacy top-level classes the composition dictionary (src-05) retired against it (or, for the
3335
+ // two chemically-defined classes, against the polymer and mineral families a sibling class
3336
+ // writes). Deprecated terms keep a definition of what they used to mean, plus the note.
3337
+ authoredTerm(
3338
+ NATURAL_ORGANIC_SLUG,
3339
+ "Natural organic",
3340
+ "The class of materials derived from a living or once-living plant, animal or fungal organism, as distinct from a mined mineral, a metal or a wholly synthetic material.",
3341
+ {
3342
+ altLabels: ["plant-derived material"]
3343
+ }
3344
+ ),
3345
+ authoredTerm(
3346
+ "animal-material",
3347
+ "Animal material",
3348
+ "A legacy top-level class for materials derived from animals, since split into fibre, hide and other animal-derived families.",
3349
+ {
3350
+ note: "Deprecated in favour of natural-organic, whose animal-fibre family and the existing leather concept now carry the distinctions this class did not make.",
3351
+ status: "deprecated",
3352
+ supersededByReference: "material.natural-organic"
3353
+ }
3354
+ ),
3355
+ authoredTerm(
3356
+ "chemical",
3357
+ "Chemical",
3358
+ "A legacy top-level class for chemically synthesised, non-natural materials that did not distinguish specific polymer families.",
3359
+ {
3360
+ note: "Deprecated in favour of polymer, which classifies synthesised materials by their specific polymer family.",
3361
+ status: "deprecated",
3362
+ supersededByReference: "material.polymer"
3363
+ }
3364
+ ),
3365
+ authoredTerm(
3366
+ "chemical-element",
3367
+ "Chemical element",
3368
+ "A legacy top-level class for materials named directly for an elemental metal or mineral rather than for a compound or alloy.",
3369
+ {
3370
+ note: "Deprecated in favour of metal for the elemental metals; the elemental minerals it held go to material.mineral.",
3371
+ status: "deprecated",
3372
+ supersededByReference: "material.metal"
3373
+ }
3374
+ ),
3375
+ authoredTerm(
3376
+ "plant-material",
3377
+ "Plant material",
3378
+ "A legacy top-level class for materials derived from plants, since split into fibre, cellulose, oil and other plant-derived families.",
3379
+ {
3380
+ note: "Deprecated in favour of natural-organic, whose plant-fibre, cellulose, plant-oil and natural-resin families now carry the distinctions this class did not make.",
3381
+ status: "deprecated",
3382
+ supersededByReference: "material.natural-organic"
3383
+ }
3384
+ ),
3385
+ // Families. `plant-fibre` and `animal-fibre` sit under `natural-fibre`, published in
3386
+ // material.ts, rather than directly under `natural-organic` as the composition dictionary (src-05) has it.
3387
+ compositionTerm(
3388
+ ANIMAL_FIBRE_SLUG,
3389
+ "Animal fibre",
3390
+ "A fibre obtained from an animal source, such as wool, hair or a silk-secreting insect, as distinct from a fibre of plant or synthetic origin.",
3391
+ ISO_6938,
3392
+ {
3393
+ altLabels: ["animal fiber"],
3394
+ broaderSlug: NATURAL_FIBRE_SLUG
3395
+ }
3396
+ ),
3397
+ compositionTerm(
3398
+ "cellulose",
3399
+ "Cellulose",
3400
+ "The structural polysaccharide of linked D-glucose units that forms plant cell walls, and the fibre or pulp material refined from it; regenerated fibres such as viscose are a separate polymer state and excluded.",
3401
+ CAS_REGISTRY2,
3402
+ {
3403
+ altLabels: ["cellulose fibre", "cellulose fiber"],
3404
+ broaderSlug: NATURAL_ORGANIC_SLUG,
3405
+ external: [externalMapping("cas", "9004-34-6", "Cellulose", "exact")]
3406
+ }
3407
+ ),
3408
+ authoredTerm(
3409
+ "natural-resin",
3410
+ "Natural resin",
3411
+ "A solid or semi-solid organic exudate produced by a plant, such as an oleoresin or gum, used without further chemical modification; synthetic and semi-synthetic resins are excluded.",
3412
+ {
3413
+ altLabels: ["plant resin"],
3414
+ broaderSlug: NATURAL_ORGANIC_SLUG
3415
+ }
3416
+ ),
3417
+ compositionTerm(
3418
+ PLANT_FIBRE_SLUG,
3419
+ "Plant fibre",
3420
+ "A fibre obtained directly from a plant source, such as its bast, leaf, seed hair or fruit husk, as distinct from a fibre of animal or synthetic origin.",
3421
+ ISO_6938,
3422
+ {
3423
+ altLabels: ["plant fiber", "vegetable fibre", "vegetable fiber"],
3424
+ broaderSlug: NATURAL_FIBRE_SLUG
3425
+ }
3426
+ ),
3427
+ authoredTerm(
3428
+ "plant-oil",
3429
+ "Plant oil",
3430
+ "A fixed or drying oil expressed or extracted from a plant seed, fruit or nut, as distinct from a mineral or synthetic oil.",
3431
+ {
3432
+ altLabels: ["vegetable oil"],
3433
+ broaderSlug: NATURAL_ORGANIC_SLUG
3434
+ }
3435
+ ),
3436
+ // Plant families by botany: `grass` (Poaceae) holds bamboo, reed and hay, and `palm`
3437
+ // (Arecaceae) holds rattan. None of them is wood.
3438
+ authoredTerm(
3439
+ "grass",
3440
+ "Grass",
3441
+ "Dried or woven stem and leaf material from a grass of the family Poaceae.",
3442
+ {
3443
+ altLabels: ["grass fibre", "grass fiber"],
3444
+ broaderSlug: NATURAL_ORGANIC_SLUG
3445
+ }
3446
+ ),
3447
+ authoredTerm(
3448
+ "palm",
3449
+ "Palm",
3450
+ "Stem or leaf material from a palm (family Arecaceae).",
3451
+ { broaderSlug: NATURAL_ORGANIC_SLUG }
3452
+ ),
3453
+ compositionTerm(
3454
+ "bamboo",
3455
+ "Bamboo",
3456
+ "A woody grass of the subfamily Bambusoideae, used as a solid cane, split strip or laminated material.",
3457
+ "ISO 21625:2020",
3458
+ { broaderSlug: GRASS_SLUG }
3459
+ ),
3460
+ authoredTerm(
3461
+ "hay",
3462
+ "Hay",
3463
+ "Grass cut and dried, used as a decorative, packing or building material.",
3464
+ { broaderSlug: GRASS_SLUG }
3465
+ ),
3466
+ authoredTerm(
3467
+ "reed",
3468
+ "Reed",
3469
+ "The dried stem of a tall wetland grass, most often the common reed Phragmites australis, used whole or split as a thatching, screening or weaving material.",
3470
+ { broaderSlug: GRASS_SLUG }
3471
+ ),
3472
+ authoredTerm(
3473
+ "shell",
3474
+ "Shell",
3475
+ "The hard calcareous exoskeleton of a mollusc, used decoratively or as an inlay and veneer material, including nacreous mother-of-pearl layers.",
3476
+ {
3477
+ altLabels: ["seashell"],
3478
+ broaderSlug: NATURAL_ORGANIC_SLUG,
3479
+ seenAs: ["mother of pearl"]
3480
+ }
3481
+ ),
3482
+ // Plant fibres, each beneath `plant-fibre`. Definitions from Regulation (EU) No 1007/2011 Annex
3483
+ // I; every id_eu_1007_2011 in the source JSON is published as an external mapping.
3484
+ compositionTerm(
3485
+ "abaca",
3486
+ "Abaca",
3487
+ "A leaf fibre obtained from the sheathing leaf of Musa textilis.",
3488
+ `${EU_1007_2011_ANNEX_I} row 10`,
3489
+ {
3490
+ altLabels: ["manila hemp", "Musa textilis"],
3491
+ broaderSlug: PLANT_FIBRE_SLUG,
3492
+ external: [
3493
+ externalMapping(EU_1007_2011_SCHEME, "abaca", "abaca (Manila hemp)")
3494
+ ]
3495
+ },
3496
+ "standard"
3497
+ ),
3498
+ compositionTerm(
3499
+ "coir",
3500
+ "Coir",
3501
+ "A fibre obtained from the fruit husk of the coconut palm, Cocos nucifera.",
3502
+ `${EU_1007_2011_ANNEX_I} row 12`,
3503
+ {
3504
+ altLabels: [
3505
+ "coconut fibre",
3506
+ "coconut fiber",
3507
+ "coco fibre",
3508
+ "coco fiber",
3509
+ "Cocos nucifera"
3510
+ ],
3511
+ broaderSlug: PLANT_FIBRE_SLUG,
3512
+ external: [
3513
+ externalMapping(EU_1007_2011_SCHEME, "coir", "coir (coconut)")
3514
+ ]
3515
+ },
3516
+ "standard"
3517
+ ),
3518
+ compositionTerm(
3519
+ "kapok",
3520
+ "Kapok",
3521
+ "A seed-hair fibre obtained from the fruit of the kapok tree, Ceiba pentandra.",
3522
+ `${EU_1007_2011_ANNEX_I} row 6`,
3523
+ {
3524
+ altLabels: ["Ceiba pentandra"],
3525
+ broaderSlug: PLANT_FIBRE_SLUG,
3526
+ external: [externalMapping(EU_1007_2011_SCHEME, "kapok", "kapok")]
3527
+ },
3528
+ "standard"
3529
+ ),
3530
+ compositionTerm(
3531
+ "ramie",
3532
+ "Ramie",
3533
+ "A bast fibre obtained from Boehmeria nivea or Boehmeria tenacissima.",
3534
+ `${EU_1007_2011_ANNEX_I} row 14`,
3535
+ {
3536
+ altLabels: ["ramie fibre", "ramie fiber", "Boehmeria nivea"],
3537
+ broaderSlug: PLANT_FIBRE_SLUG,
3538
+ external: [externalMapping(EU_1007_2011_SCHEME, "ramie", "ramie")]
3539
+ },
3540
+ "standard"
3541
+ ),
3542
+ // Animal fibres, each beneath `animal-fibre`. Regulation (EU) No 1007/2011 Annex I names alpaca,
3543
+ // camel, cashmere, mohair and angora together in row 2 and horsehair in row 3, so the mapping
3544
+ // identifier is the row number, its label is that row's word for this species, and the row is
3545
+ // broader than any one species in it.
3546
+ compositionTerm(
3547
+ "alpaca",
3548
+ "Alpaca",
3549
+ "Hair from the alpaca, a domesticated South American camelid.",
3550
+ EU_1007_2011_ANNEX_I,
3551
+ {
3552
+ broaderSlug: ANIMAL_FIBRE_SLUG,
3553
+ external: [externalMapping(EU_1007_2011_SCHEME, "2", "alpaca", "broad")]
3554
+ }
3555
+ ),
3556
+ compositionTerm(
3557
+ "angora",
3558
+ "Angora",
3559
+ "Fine hair from the Angora rabbit, distinct from mohair, which is Angora goat hair.",
3560
+ EU_1007_2011_ANNEX_I,
3561
+ {
3562
+ broaderSlug: ANIMAL_FIBRE_SLUG,
3563
+ external: [externalMapping(EU_1007_2011_SCHEME, "2", "angora", "broad")]
3564
+ }
3565
+ ),
3566
+ compositionTerm(
3567
+ "camel-hair",
3568
+ "Camel hair",
3569
+ "Hair from a camel, whether dromedary or Bactrian.",
3570
+ EU_1007_2011_ANNEX_I,
3571
+ {
3572
+ altLabels: ["camel", "camelhair"],
3573
+ broaderSlug: ANIMAL_FIBRE_SLUG,
3574
+ external: [externalMapping(EU_1007_2011_SCHEME, "2", "camel", "broad")]
3575
+ }
3576
+ ),
3577
+ compositionTerm(
3578
+ "cashmere",
3579
+ "Cashmere",
3580
+ "The fine undercoat hair of the cashmere goat, distinct from coarser guard hair and from mohair, which is Angora goat hair.",
3581
+ EU_1007_2011_ANNEX_I,
3582
+ {
3583
+ broaderSlug: ANIMAL_FIBRE_SLUG,
3584
+ external: [
3585
+ externalMapping(EU_1007_2011_SCHEME, "2", "cashmere", "broad")
3586
+ ]
3587
+ }
3588
+ ),
3589
+ compositionTerm(
3590
+ "horsehair",
3591
+ "Horsehair",
3592
+ "Hair from a horse, named with an indication of species under Annex I's general animal-hair fibre category.",
3593
+ EU_1007_2011_ANNEX_I,
3594
+ {
3595
+ altLabels: ["horse hair"],
3596
+ broaderSlug: ANIMAL_FIBRE_SLUG,
3597
+ external: [
3598
+ externalMapping(EU_1007_2011_SCHEME, "3", "horsehair", "close")
3599
+ ]
3600
+ }
3601
+ ),
3602
+ // Cellulose materials.
3603
+ compositionTerm(
3604
+ "wood-pulp",
3605
+ "Wood pulp",
3606
+ "Fibrous cellulose material mechanically or chemically separated from wood, used as a papermaking or moulding feedstock rather than a finished sheet.",
3607
+ ISO_4046,
3608
+ {
3609
+ altLabels: ["pulp", "cellulose pulp"],
3610
+ broaderSlug: "cellulose"
3611
+ }
3612
+ ),
3613
+ // Plant oils, each beneath `plant-oil`. CAS numbers verified against PubChem substance records
3614
+ // on the review date, since CAS Common Chemistry's own API now requires a key this review did
3615
+ // not have.
3616
+ compositionTerm(
3617
+ "linseed-oil",
3618
+ "Linseed oil",
3619
+ "A drying oil expressed from flax seed, Linum usitatissimum, used as a paint, varnish and wood-finishing vehicle and as the binder in linoleum.",
3620
+ CAS_REGISTRY2,
3621
+ {
3622
+ altLabels: ["flaxseed oil"],
3623
+ broaderSlug: "plant-oil",
3624
+ external: [externalMapping("cas", "8001-26-1", "Linseed oil", "exact")]
3625
+ }
3626
+ ),
3627
+ compositionTerm(
3628
+ "soybean-oil",
3629
+ "Soybean oil",
3630
+ "A vegetable oil expressed or extracted from soybean seed, Glycine max.",
3631
+ CAS_REGISTRY2,
3632
+ {
3633
+ altLabels: ["soya bean oil", "soya oil", "soy oil"],
3634
+ broaderSlug: "plant-oil",
3635
+ external: [externalMapping("cas", "8001-22-7", "Soybean oil", "exact")]
3636
+ }
3637
+ ),
3638
+ compositionTerm(
3639
+ "tall-oil",
3640
+ "Tall oil",
3641
+ "A by-product of kraft pulping of pine, a mixture of resin acids and fatty acids.",
3642
+ CAS_REGISTRY2,
3643
+ {
3644
+ altLabels: ["tallol", "crude tall oil"],
3645
+ broaderSlug: NATURAL_ORGANIC_SLUG,
3646
+ external: [externalMapping("cas", "8002-26-4", "Tall oil", "exact")]
3647
+ }
3648
+ ),
3649
+ // Natural resin.
3650
+ compositionTerm(
3651
+ "gum-rosin",
3652
+ "Gum rosin",
3653
+ "The solid resin left after distilling the volatile turpentine oil from pine oleoresin tapped directly from a living tree.",
3654
+ CAS_REGISTRY2,
3655
+ {
3656
+ altLabels: ["rosin", "colophony", "colophonium", "pine rosin"],
3657
+ broaderSlug: "natural-resin",
3658
+ external: [
3659
+ // CAS 8050-09-7 resolves to rosin generically (wood rosin and tall-oil rosin share the
3660
+ // same record); gum rosin is one source of it, so the match is close, not exact.
3661
+ externalMapping("cas", "8050-09-7", "Rosin", "close")
3662
+ ]
3663
+ }
3664
+ ),
3665
+ // Variants under existing published concepts. `bovine-hide` is defined as tanned leather, so it
3666
+ // sits under `leather`; `kraft-paper` sits under `paper`.
3667
+ compositionTerm(
3668
+ "bovine-hide",
3669
+ "Bovine leather",
3670
+ "Leather tanned from the hide of cattle.",
3671
+ "ISO 15115:2019",
3672
+ {
3673
+ altLabels: ["cow leather", "cattle leather"],
3674
+ broaderSlug: "leather",
3675
+ seenAs: ["bovine hide"]
3676
+ }
3677
+ ),
3678
+ compositionTerm(
3679
+ "kraft-paper",
3680
+ "Kraft paper",
3681
+ "Paper made predominantly from kraft, or sulphate, wood pulp, valued for its high tear and burst strength.",
3682
+ ISO_4046,
3683
+ {
3684
+ altLabels: ["kraft"],
3685
+ broaderSlug: "paper"
3686
+ }
3687
+ ),
3688
+ // Composite. `engineered-stone` is the agglomerated-stone family; the already-published
3689
+ // `engineered-quartz` in material-everyday.ts is the quartz-specific member and is being
3690
+ // re-parented under it, so its quartz-only aliases stay on that narrower term, not here.
3691
+ compositionTerm(
3692
+ "engineered-stone",
3693
+ "Engineered stone",
3694
+ "A composite surfacing material of crushed natural mineral aggregate bound with a resin or cement matrix and consolidated under pressure; it is not natural stone.",
3695
+ "EN 14618:2009 and EN 15285:2008",
3696
+ {
3697
+ altLabels: ["agglomerated stone"],
3698
+ broaderSlug: "composite",
3699
+ related: [{ predicate: "reads-as", target: "material.stone" }]
3700
+ }
3701
+ )
3702
+ ];
3703
+
3704
+ // src/axes/material-polymer-additives.ts
3705
+ var CAS3 = "cas";
3706
+ var COATING_MATERIAL_SLUG = "coating-material";
3707
+ var MONOMER_SLUG = "monomer";
3708
+ var PLASTICISER_SLUG = "plasticiser";
3709
+ var STANDARD_CAS = "CAS Registry";
3710
+ var ISO_4618 = "ISO 4618:2023";
3711
+ var MATERIAL_POLYMER_ADDITIVES_TERMS = [
3712
+ compositionTerm(
3713
+ COATING_MATERIAL_SLUG,
3714
+ "Coating material",
3715
+ "A substance in liquid, paste or powder form that, applied to a surface, forms a protective or decorative film, covering paint, lacquer and varnish.",
3716
+ ISO_4618,
3717
+ { seenAs: ["Paints & Coatings"] }
3718
+ ),
3719
+ compositionTerm(
3720
+ MONOMER_SLUG,
3721
+ "Monomer",
3722
+ "A substance consisting of molecules that can each be linked by covalent bonds to one or more like molecules to form a polymer.",
3723
+ "ISO 472:2013"
3724
+ ),
3725
+ compositionTerm(
3726
+ PLASTICISER_SLUG,
3727
+ "Plasticiser",
3728
+ "A substance incorporated in a polymer to increase its flexibility, workability or distensibility.",
3729
+ "ISO 472:2013",
3730
+ { seenAs: ["Plasticizer"] }
3731
+ ),
3732
+ // Materials.
3733
+ compositionTerm(
3734
+ "butyl-acrylate",
3735
+ "Butyl acrylate",
3736
+ "The butyl ester of acrylic acid, a monomer copolymerised in acrylic polymers, coatings and adhesives to impart flexibility.",
3737
+ STANDARD_CAS,
3738
+ {
3739
+ altLabels: ["n-Butyl acrylate"],
3740
+ broaderSlug: MONOMER_SLUG,
3741
+ external: [externalMapping(CAS3, "141-32-2", "Butyl Acrylate")]
3742
+ }
3743
+ ),
3744
+ compositionTerm(
3745
+ "caprolactam",
3746
+ "Caprolactam",
3747
+ "The cyclic amide (lactam) monomer whose ring-opening polymerisation forms nylon 6.",
3748
+ STANDARD_CAS,
3749
+ {
3750
+ broaderSlug: MONOMER_SLUG,
3751
+ external: [externalMapping(CAS3, "105-60-2", "Caprolactam")]
3752
+ }
3753
+ ),
3754
+ compositionTerm(
3755
+ "deht",
3756
+ "DEHT",
3757
+ "A phthalate-free diester plasticiser of terephthalic acid and 2-ethylhexanol, used as a general-purpose alternative to phthalate plasticisers in flexible polyvinyl chloride.",
3758
+ STANDARD_CAS,
3759
+ {
3760
+ altLabels: [
3761
+ "DOTP",
3762
+ "Dioctyl terephthalate",
3763
+ "Bis(2-ethylhexyl) terephthalate"
3764
+ ],
3765
+ broaderSlug: PLASTICISER_SLUG,
3766
+ external: [
3767
+ externalMapping(CAS3, "6422-86-2", "Di-(2-ethylhexyl) terephthalate")
3768
+ ]
3769
+ }
3770
+ ),
3771
+ compositionTerm(
3772
+ "dehp",
3773
+ "DEHP",
3774
+ "A phthalate-ester plasticiser of phthalic acid and 2-ethylhexanol, historically the most widely used general-purpose plasticiser for flexible polyvinyl chloride and now restricted in many applications.",
3775
+ STANDARD_CAS,
3776
+ {
3777
+ altLabels: ["Bis(2-ethylhexyl) phthalate"],
3778
+ broaderSlug: PLASTICISER_SLUG,
3779
+ external: [
3780
+ externalMapping(CAS3, "117-81-7", "Di(2-ethylhexyl) phthalate")
3781
+ ]
3782
+ }
3783
+ ),
3784
+ compositionTerm(
3785
+ "dinch",
3786
+ "DINCH",
3787
+ "A phthalate-free diester plasticiser of cyclohexane-1,2-dicarboxylic acid and isononanol, used in flexible polyvinyl chloride for food-contact and toy applications.",
3788
+ STANDARD_CAS,
3789
+ {
3790
+ altLabels: ["Diisononyl cyclohexane-1,2-dicarboxylate"],
3791
+ broaderSlug: PLASTICISER_SLUG,
3792
+ external: [
3793
+ externalMapping(CAS3, "166412-78-8", "Diisononyl hexahydrophthalate")
3794
+ ]
3795
+ }
3796
+ ),
3797
+ compositionTerm(
3798
+ "epoxidised-soybean-oil",
3799
+ "Epoxidised soybean oil",
3800
+ "A plasticiser and polyvinyl chloride stabiliser produced by epoxidising the unsaturated fatty-acid chains of soybean oil.",
3801
+ STANDARD_CAS,
3802
+ {
3803
+ altLabels: ["ESBO"],
3804
+ broaderSlug: PLASTICISER_SLUG,
3805
+ external: [externalMapping(CAS3, "8013-07-8", "Epoxidized soybean oil")],
3806
+ seenAs: ["Epoxidized soybean oil", "Epoxidised soya bean oil"]
3807
+ }
3808
+ ),
3809
+ compositionTerm(
3810
+ "formaldehyde",
3811
+ "Formaldehyde",
3812
+ "The simplest aldehyde monomer, condensed with phenol, melamine or urea to form phenolic, melamine and urea-formaldehyde resins.",
3813
+ STANDARD_CAS,
3814
+ {
3815
+ altLabels: ["Methanal"],
3816
+ broaderSlug: MONOMER_SLUG,
3817
+ external: [externalMapping(CAS3, "50-00-0", "Formaldehyde")]
3818
+ }
3819
+ ),
3820
+ compositionTerm(
3821
+ "lacquer",
3822
+ "Lacquer",
3823
+ "A fast-drying clear or pigmented coating material, classically nitrocellulose or acrylic drying by solvent evaporation, and also catalysed and urushi lacquers that cure.",
3824
+ ISO_4618,
3825
+ { broaderSlug: COATING_MATERIAL_SLUG, seenAs: ["Laquer"] }
3826
+ ),
3827
+ compositionTerm(
3828
+ "methyl-methacrylate",
3829
+ "Methyl methacrylate",
3830
+ "The methacrylate ester monomer polymerised to form PMMA and copolymerised in other acrylic polymers.",
3831
+ STANDARD_CAS,
3832
+ {
3833
+ broaderSlug: MONOMER_SLUG,
3834
+ external: [externalMapping(CAS3, "80-62-6", "Methyl Methacrylate")]
3835
+ }
3836
+ ),
3837
+ compositionTerm(
3838
+ "paint",
3839
+ "Paint",
3840
+ "A pigmented coating material that dries or cures to an opaque film.",
3841
+ ISO_4618,
3842
+ { broaderSlug: COATING_MATERIAL_SLUG }
3843
+ ),
3844
+ compositionTerm(
3845
+ "styrene",
3846
+ "Styrene",
3847
+ "An aromatic hydrocarbon monomer, vinylbenzene, polymerised to form polystyrene and copolymerised in ABS, SBR and unsaturated polyester resins.",
3848
+ STANDARD_CAS,
3849
+ {
3850
+ altLabels: ["Vinylbenzene"],
3851
+ broaderSlug: MONOMER_SLUG,
3852
+ external: [externalMapping(CAS3, "100-42-5", "Styrene")]
3853
+ }
3854
+ ),
3855
+ compositionTerm(
3856
+ "varnish",
3857
+ "Varnish",
3858
+ "A clear coating material, typically an oil- or resin-based liquid, that dries or cures to a hard transparent protective film without added pigment.",
3859
+ ISO_4618,
3860
+ { broaderSlug: COATING_MATERIAL_SLUG }
3861
+ ),
3862
+ compositionTerm(
3863
+ "vinyl-acetate",
3864
+ "Vinyl acetate",
3865
+ "The ester monomer of acetic acid and vinyl alcohol, polymerised to form polyvinyl acetate and copolymerised with ethylene to form EVA.",
3866
+ STANDARD_CAS,
3867
+ {
3868
+ broaderSlug: MONOMER_SLUG,
3869
+ external: [externalMapping(CAS3, "108-05-4", "Vinyl Acetate")]
3870
+ }
3871
+ ),
3872
+ compositionTerm(
3873
+ "vinyl-chloride",
3874
+ "Vinyl chloride",
3875
+ "The chlorinated ethylene monomer polymerised to form polyvinyl chloride.",
3876
+ STANDARD_CAS,
3877
+ {
3878
+ broaderSlug: MONOMER_SLUG,
3879
+ external: [externalMapping(CAS3, "75-01-4", "Vinyl Chloride")]
3880
+ }
3881
+ ),
3882
+ // Not a coating material: a wax is a substance whatever it is used for. Bounded to plant and
3883
+ // animal origin so it is true subsumption under `natural-organic`; a mineral or synthetic wax is
3884
+ // outside it.
3885
+ authoredTerm(
3886
+ "wax",
3887
+ "Wax",
3888
+ "An ester-based solid of plant or animal origin, plastic at room temperature and melting above about forty degrees Celsius.",
3889
+ { broaderSlug: "natural-organic" }
3890
+ )
3891
+ ];
3892
+
3893
+ // src/axes/material-polymers.ts
3894
+ var EU_ANNEX_I3 = "Regulation (EU) No 1007/2011 Annex I";
3895
+ var EU_1007_20112 = "eu-1007-2011";
3896
+ var FTC_16CFR3032 = "ftc-16cfr303";
3897
+ var ISO_1043_12 = "iso-1043-1";
3898
+ var ISO_1629 = "iso-1629";
3899
+ var ISO_1874_1 = "iso-1874-1";
3900
+ var ISO_20762 = "iso-2076";
3901
+ var STANDARD_ISO_472 = "ISO 472:2013";
3902
+ var STANDARD_ISO_1043_1 = "ISO 1043-1:2011+Amd 1:2016";
3903
+ var STANDARD_ISO_1629_RUBBER = "ISO 1629:2025";
3904
+ var STANDARD_ISO_16396_1 = "ISO 16396-1:2015";
3905
+ var STANDARD_ISO_20762 = "ISO 2076:2021";
3906
+ var STANDARD_FTC2 = "US FTC 16 CFR 303.7";
3907
+ var same2 = (scheme, name) => externalMapping(scheme, name, name);
3908
+ var EU_POLYAMIDE = "polyamide or nylon";
3909
+ var PMMA_NAME = "poly(methyl methacrylate)";
3910
+ var NARROW = "narrow";
3911
+ var BROAD = "broad";
3912
+ var narrowFibreNames = (name) => [
3913
+ externalMapping(EU_1007_20112, name, name, NARROW),
3914
+ externalMapping(FTC_16CFR3032, name, name, NARROW),
3915
+ externalMapping(ISO_20762, name, name, NARROW)
3916
+ ];
3917
+ var fibreNames2 = (name, extra = []) => [
3918
+ same2(EU_1007_20112, name),
3919
+ same2(FTC_16CFR3032, name),
3920
+ same2(ISO_20762, name),
3921
+ ...extra
3922
+ ];
3923
+ var POLYMER_SLUG2 = "polymer";
3924
+ var MATERIAL_POLYMERS_TERMS = [
3925
+ compositionTerm(
3926
+ POLYMER_SLUG2,
3927
+ "Polymer",
3928
+ "A substance whose molecules are built from many repeated monomer units; the class covers the plastics, fibre polymers, rubbers, resins and man-made cellulosics that a declared composition names.",
3929
+ STANDARD_ISO_472
3930
+ ),
3931
+ // Families.
3932
+ compositionTerm(
3933
+ "polyamide",
3934
+ "Polyamide",
3935
+ "A polymer family whose repeat units are linked by amide bonds, covering polyamide fibres such as nylon and aramid and polyamide moulding and engineering plastics.",
3936
+ `${STANDARD_ISO_1043_1}; ${STANDARD_ISO_20762}`,
3937
+ {
3938
+ broaderSlug: POLYMER_SLUG2,
3939
+ external: [
3940
+ externalMapping(EU_1007_20112, EU_POLYAMIDE, EU_POLYAMIDE, NARROW),
3941
+ externalMapping(ISO_1043_12, "PA", "polyamide"),
3942
+ externalMapping(ISO_20762, "polyamide", "polyamide", NARROW)
3943
+ ],
3944
+ seenAs: ["Polyamid", "Poliammide"]
3945
+ }
3946
+ ),
3947
+ compositionTerm(
3948
+ "polyester",
3949
+ "Polyester",
3950
+ "A polymer family whose repeat units are linked by ester bonds, covering polyester fibres, engineering thermoplastics such as PET and PBT, and unsaturated polyester resins.",
3951
+ `${STANDARD_ISO_20762}; ${STANDARD_ISO_1043_1}`,
3952
+ {
3953
+ broaderSlug: POLYMER_SLUG2,
3954
+ external: narrowFibreNames("polyester"),
3955
+ seenAs: ["Poly Ester", "Poliestere", "Poli\xE9ster"]
3956
+ }
3957
+ ),
3958
+ compositionTerm(
3959
+ "polyolefin",
3960
+ "Polyolefin",
3961
+ "A polymer family built from olefin (alkene) monomers, covering polyethylene, polypropylene and the olefin fibres made from them.",
3962
+ `${STANDARD_ISO_472}; ${STANDARD_ISO_1043_1}`,
3963
+ { broaderSlug: POLYMER_SLUG2 }
3964
+ ),
3965
+ compositionTerm(
3966
+ "polyurethane",
3967
+ "Polyurethane",
3968
+ "A polymer family formed by reacting a polyol with an isocyanate to form urethane linkages, covering rigid and flexible foams, elastomers, coatings and elastane fibre.",
3969
+ STANDARD_ISO_1043_1,
3970
+ {
3971
+ broaderSlug: POLYMER_SLUG2,
3972
+ external: [
3973
+ externalMapping(EU_1007_20112, "polyurethane", "polyurethane", NARROW),
3974
+ externalMapping(ISO_1043_12, "PUR", "polyurethane")
3975
+ ],
3976
+ seenAs: ["Poly Urethane", "Polyurethan", "Urethane"]
3977
+ }
3978
+ ),
3979
+ compositionTerm(
3980
+ "resin",
3981
+ "Resin",
3982
+ "A solid, semi-solid or pseudo-solid organic polymer material, often of high molecular weight, used as a binder, coating or cast or moulded solid rather than as a fibre or bulk engineering plastic.",
3983
+ STANDARD_ISO_472,
3984
+ {
3985
+ altLabels: ["Synthetic resin"],
3986
+ broaderSlug: POLYMER_SLUG2
3987
+ }
3988
+ ),
3989
+ // Materials.
3990
+ compositionTerm(
3991
+ "abs",
3992
+ "ABS",
3993
+ "A thermoplastic terpolymer of acrylonitrile, butadiene and styrene monomers.",
3994
+ STANDARD_ISO_1043_1,
3995
+ {
3996
+ altLabels: ["Acrylonitrile butadiene styrene"],
3997
+ broaderSlug: POLYMER_SLUG2,
3998
+ external: [
3999
+ externalMapping(
4000
+ ISO_1043_12,
4001
+ "ABS",
4002
+ "acrylonitrile-butadiene-styrene plastic"
4003
+ )
4004
+ ]
4005
+ }
4006
+ ),
4007
+ compositionTerm(
4008
+ "acrylic-fibre",
4009
+ "Acrylic fibre",
4010
+ "A synthetic fibre composed of linear macromolecules containing at least 85 percent by mass of acrylonitrile units in the chain.",
4011
+ STANDARD_ISO_20762,
4012
+ {
4013
+ altLabels: ["Polyacrylonitrile"],
4014
+ broaderSlug: "acrylic",
4015
+ external: fibreNames2("acrylic", [
4016
+ externalMapping(ISO_1043_12, "PAN", "polyacrylonitrile")
4017
+ ]),
4018
+ seenAs: ["Acrylic fiber"]
4019
+ }
4020
+ ),
4021
+ compositionTerm(
4022
+ "aramid",
4023
+ "Aramid",
4024
+ "A synthetic fibre made from linear macromolecules of aromatic groups linked by amide bonds, with at least 85 percent of the amide linkages attached directly to two aromatic rings.",
4025
+ `${EU_ANNEX_I3} row 31; ${STANDARD_FTC2}; ${STANDARD_ISO_20762}`,
4026
+ {
4027
+ altLabels: ["Aromatic polyamide"],
4028
+ broaderSlug: "polyamide",
4029
+ external: fibreNames2("aramid")
4030
+ },
4031
+ "standard"
4032
+ ),
4033
+ compositionTerm(
4034
+ "elastane",
4035
+ "Elastane",
4036
+ "A fibre composed of at least 85 percent by mass of segmented polyurethane that, when stretched to three times its original length, rapidly reverts substantially to that length on release.",
4037
+ `${EU_ANNEX_I3} row 43; ${STANDARD_FTC2}; ${STANDARD_ISO_20762}`,
4038
+ {
4039
+ altLabels: ["Spandex"],
4040
+ broaderSlug: "polyurethane",
4041
+ external: [
4042
+ externalMapping(EU_1007_20112, "elastane", "elastane"),
4043
+ externalMapping(FTC_16CFR3032, "spandex", "spandex"),
4044
+ externalMapping(ISO_20762, "elastane", "elastane")
4045
+ ],
4046
+ seenAs: ["Elastan", "Elasthane"]
4047
+ },
4048
+ "standard"
4049
+ ),
4050
+ compositionTerm(
4051
+ "epdm",
4052
+ "EPDM",
4053
+ "A synthetic rubber terpolymer of ethylene, propylene and a diene monomer, with the residual unsaturation in a side chain rather than the main chain.",
4054
+ STANDARD_ISO_1629_RUBBER,
4055
+ {
4056
+ altLabels: ["Ethylene propylene diene monomer"],
4057
+ broaderSlug: "rubber",
4058
+ external: [
4059
+ externalMapping(
4060
+ ISO_1629,
4061
+ "EPDM",
4062
+ "terpolymer of ethylene, propylene, and a diene with the residual unsaturated portion of the polymerized diene in the side chain"
4063
+ )
4064
+ ]
4065
+ }
4066
+ ),
4067
+ compositionTerm(
4068
+ "epoxy",
4069
+ "Epoxy",
4070
+ "A thermosetting resin containing epoxide groups that cross-link on curing with a hardener.",
4071
+ `${STANDARD_ISO_1043_1}; ${STANDARD_ISO_472}`,
4072
+ {
4073
+ altLabels: ["Epoxy resin", "Epoxide resin"],
4074
+ broaderSlug: "resin",
4075
+ external: [externalMapping(ISO_1043_12, "EP", "epoxide")]
4076
+ }
4077
+ ),
4078
+ compositionTerm(
4079
+ "eva",
4080
+ "EVA",
4081
+ "A copolymer of ethylene and vinyl acetate monomers, ranging from a flexible thermoplastic to a rubber-like material depending on vinyl acetate content.",
4082
+ STANDARD_ISO_1043_1,
4083
+ {
4084
+ altLabels: ["Ethylene-vinyl acetate"],
4085
+ broaderSlug: POLYMER_SLUG2,
4086
+ external: [
4087
+ externalMapping(ISO_1043_12, "EVAC", "ethylene-(vinyl acetate) plastic")
4088
+ ]
4089
+ }
4090
+ ),
4091
+ compositionTerm(
4092
+ "latex",
4093
+ "Latex",
4094
+ "Natural or synthetic rubber in the form of, or foamed from, an aqueous colloidal dispersion.",
4095
+ STANDARD_ISO_1629_RUBBER,
4096
+ { broaderSlug: "rubber" }
4097
+ ),
4098
+ compositionTerm(
4099
+ "melamine",
4100
+ "Melamine",
4101
+ "A thermosetting resin formed by the condensation of melamine and formaldehyde.",
4102
+ STANDARD_ISO_1043_1,
4103
+ {
4104
+ altLabels: ["Melamine-formaldehyde", "Melamine-formaldehyde resin"],
4105
+ broaderSlug: "resin",
4106
+ external: [
4107
+ externalMapping(EU_1007_20112, "melamine", "melamine", "related"),
4108
+ externalMapping(FTC_16CFR3032, "melamine", "melamine", "related"),
4109
+ externalMapping(ISO_1043_12, "MF", "melamine-formaldehyde resin")
4110
+ ]
4111
+ }
4112
+ ),
4113
+ compositionTerm(
4114
+ "modacrylic",
4115
+ "Modacrylic",
4116
+ "A synthetic fibre composed of linear macromolecules containing at least 50 percent but less than 85 percent by mass of acrylonitrile units, modified with other monomers.",
4117
+ `${EU_ANNEX_I3} row 29; ${STANDARD_FTC2}; ${STANDARD_ISO_20762}`,
4118
+ {
4119
+ broaderSlug: "acrylic",
4120
+ external: [
4121
+ same2(EU_1007_20112, "modacrylic"),
4122
+ externalMapping(FTC_16CFR3032, "modacrylic", "modacrylic", "close"),
4123
+ same2(ISO_20762, "modacrylic")
4124
+ ]
4125
+ },
4126
+ "standard"
4127
+ ),
4128
+ compositionTerm(
4129
+ "natural-rubber",
4130
+ "Natural rubber",
4131
+ "Rubber consisting predominantly of cis-1,4-polyisoprene obtained from the latex of Hevea brasiliensis and related plants.",
4132
+ STANDARD_ISO_1629_RUBBER,
4133
+ {
4134
+ broaderSlug: "rubber",
4135
+ external: [externalMapping(ISO_1629, "NR", "natural rubber")]
4136
+ }
4137
+ ),
4138
+ compositionTerm(
4139
+ "neoprene",
4140
+ "Chloroprene rubber",
4141
+ "A synthetic rubber polymerised from chloroprene (2-chlorobuta-1,3-diene) monomer.",
4142
+ STANDARD_ISO_1629_RUBBER,
4143
+ {
4144
+ altLabels: ["Polychloroprene"],
4145
+ broaderSlug: "rubber",
4146
+ external: [externalMapping(ISO_1629, "CR", "chloroprene rubber")],
4147
+ seenAs: ["Neoprene"]
4148
+ }
4149
+ ),
4150
+ compositionTerm(
4151
+ "nylon",
4152
+ "Nylon",
4153
+ "The common name for aliphatic polyamide, defined by the US FTC generic fibre name as a long-chain synthetic polyamide in which fewer than 85 percent of the amide linkages attach directly to two aromatic rings, distinguishing it from aramid.",
4154
+ STANDARD_FTC2,
4155
+ {
4156
+ broaderSlug: "polyamide",
4157
+ external: [same2(EU_1007_20112, EU_POLYAMIDE), same2(FTC_16CFR3032, "nylon")]
4158
+ }
4159
+ ),
4160
+ compositionTerm(
4161
+ "olefin",
4162
+ "Olefin",
4163
+ "A manufactured fibre whose fibre-forming substance is composed of at least 85 percent by weight of ethylene, propylene or other olefin units.",
4164
+ STANDARD_FTC2,
4165
+ {
4166
+ broaderSlug: "polyolefin",
4167
+ external: [externalMapping(FTC_16CFR3032, "olefin", "olefin")]
4168
+ }
4169
+ ),
4170
+ compositionTerm(
4171
+ "pbt",
4172
+ "PBT",
4173
+ "A thermoplastic polyester formed from 1,4-butanediol and terephthalic acid, used as an engineering plastic.",
4174
+ STANDARD_ISO_1043_1,
4175
+ {
4176
+ altLabels: ["Polybutylene terephthalate"],
4177
+ broaderSlug: "polyester",
4178
+ external: [
4179
+ externalMapping(ISO_1043_12, "PBT", "poly(butylene terephthalate)")
4180
+ ]
4181
+ }
4182
+ ),
4183
+ compositionTerm(
4184
+ "pet",
4185
+ "PET",
4186
+ "A thermoplastic polyester formed from ethylene glycol and terephthalic acid, used as a fibre, film and moulding or bottle-grade plastic.",
4187
+ STANDARD_ISO_1043_1,
4188
+ {
4189
+ altLabels: ["Polyethylene terephthalate", "PETE"],
4190
+ broaderSlug: "polyester",
4191
+ external: [
4192
+ externalMapping(ISO_1043_12, "PET", "poly(ethylene terephthalate)")
4193
+ ]
4194
+ }
4195
+ ),
4196
+ compositionTerm(
4197
+ "phenolic-resin",
4198
+ "Phenolic resin",
4199
+ "A thermosetting resin formed by the condensation of phenol and formaldehyde.",
4200
+ STANDARD_ISO_1043_1,
4201
+ {
4202
+ altLabels: ["Phenolic", "Phenol-formaldehyde"],
4203
+ broaderSlug: "resin",
4204
+ external: [
4205
+ externalMapping(ISO_1043_12, "PF", "phenol-formaldehyde resin")
4206
+ ]
4207
+ }
4208
+ ),
4209
+ compositionTerm(
4210
+ "pla",
4211
+ "PLA",
4212
+ "A thermoplastic polyester derived from the polymerisation of lactic acid, typically from renewable plant starch feedstocks.",
4213
+ STANDARD_ISO_1043_1,
4214
+ {
4215
+ altLabels: ["Polylactic acid", "Polylactide", "Poly(lactic acid)"],
4216
+ broaderSlug: "polyester",
4217
+ external: [
4218
+ externalMapping(EU_1007_20112, "polylactide", "polylactide", NARROW),
4219
+ externalMapping(FTC_16CFR3032, "PLA", "PLA", NARROW),
4220
+ externalMapping(ISO_1043_12, "PLA", "poly(lactic acid)")
4221
+ ]
4222
+ }
4223
+ ),
4224
+ compositionTerm(
4225
+ "pmma",
4226
+ "PMMA",
4227
+ "A transparent thermoplastic polymer of methyl methacrylate monomer.",
4228
+ STANDARD_ISO_1043_1,
4229
+ {
4230
+ altLabels: [PMMA_NAME, "acrylic sheet"],
4231
+ broaderSlug: "acrylic",
4232
+ external: [
4233
+ externalMapping(ISO_1043_12, "PMMA", PMMA_NAME),
4234
+ externalMapping("wikidata", "Q146123", PMMA_NAME)
4235
+ ],
4236
+ seenAs: ["perspex", "plexiglass"]
4237
+ }
4238
+ ),
4239
+ compositionTerm(
4240
+ "polyester-resin",
4241
+ "Polyester resin",
4242
+ "An unsaturated thermosetting polyester resin cured by cross-linking with a vinyl monomer such as styrene.",
4243
+ STANDARD_ISO_1043_1,
4244
+ {
4245
+ altLabels: ["Unsaturated polyester", "UP resin"],
4246
+ broaderSlug: "polyester",
4247
+ external: [
4248
+ externalMapping(ISO_1043_12, "UP", "unsaturated polyester resin")
4249
+ ]
4250
+ }
4251
+ ),
4252
+ compositionTerm(
4253
+ "polyethylene",
4254
+ "Polyethylene",
4255
+ "A thermoplastic polymer of ethylene monomer, ranging from low-density to high-density grades.",
4256
+ STANDARD_ISO_1043_1,
4257
+ {
4258
+ altLabels: ["Polythene"],
4259
+ broaderSlug: "polyolefin",
4260
+ external: [
4261
+ externalMapping(EU_1007_20112, "polyethylene", "polyethylene", NARROW),
4262
+ externalMapping(ISO_1043_12, "PE", "polyethylene"),
4263
+ externalMapping(ISO_20762, "polyethylene", "polyethylene", NARROW)
4264
+ ],
4265
+ seenAs: ["Poly Ethylene"]
4266
+ }
4267
+ ),
4268
+ compositionTerm(
4269
+ "polypropylene",
4270
+ "Polypropylene",
4271
+ "A thermoplastic polymer of propylene monomer, supplied as plastic mouldings, sheet, film and fibre.",
4272
+ STANDARD_ISO_1043_1,
4273
+ {
4274
+ broaderSlug: "polyolefin",
4275
+ external: [
4276
+ externalMapping(EU_1007_20112, "polypropylene", "polypropylene", NARROW),
4277
+ externalMapping(ISO_1043_12, "PP", "polypropylene"),
4278
+ externalMapping(ISO_20762, "polypropylene", "polypropylene", NARROW)
4279
+ ],
4280
+ seenAs: ["Poly Propylene"]
4281
+ }
4282
+ ),
4283
+ // NEW, not in the source dictionary: `vinyl` names the sheet, tile, film and coated-fabric
4284
+ // goods, so the polymer itself needs a concept for them to sit beneath.
4285
+ compositionTerm(
4286
+ "polyvinyl-chloride",
4287
+ "Polyvinyl chloride",
4288
+ "A thermoplastic polymer of vinyl chloride, symbol PVC in ISO 1043-1.",
4289
+ STANDARD_ISO_1043_1,
4290
+ {
4291
+ altLabels: ["PVC", "poly(vinyl chloride)"],
4292
+ broaderSlug: POLYMER_SLUG2,
4293
+ external: [
4294
+ externalMapping(ISO_1043_12, "PVC", "poly(vinyl chloride)"),
4295
+ externalMapping("cas", "9002-86-2", "Poly(vinyl chloride)")
4296
+ ]
4297
+ }
4298
+ ),
4299
+ compositionTerm(
4300
+ "polystyrene",
4301
+ "Polystyrene",
4302
+ "A thermoplastic polymer of styrene monomer.",
4303
+ STANDARD_ISO_1043_1,
4304
+ {
4305
+ broaderSlug: POLYMER_SLUG2,
4306
+ external: [externalMapping(ISO_1043_12, "PS", "polystyrene")],
4307
+ seenAs: ["Poly Styrene"]
4308
+ }
4309
+ ),
4310
+ compositionTerm(
4311
+ "ptfe",
4312
+ "PTFE",
4313
+ "A fluoropolymer of tetrafluoroethylene monomer with high chemical resistance and a very low coefficient of friction.",
4314
+ STANDARD_ISO_1043_1,
4315
+ {
4316
+ altLabels: ["Polytetrafluoroethylene"],
4317
+ broaderSlug: POLYMER_SLUG2,
4318
+ external: [
4319
+ externalMapping(EU_1007_20112, "fluorofibre", "fluorofibre", NARROW),
4320
+ externalMapping(
4321
+ FTC_16CFR3032,
4322
+ "fluoropolymer",
4323
+ "fluoropolymer",
4324
+ "related"
4325
+ ),
4326
+ externalMapping(ISO_1043_12, "PTFE", "polytetrafluoroethylene"),
4327
+ externalMapping(ISO_20762, "fluorofibre", "fluorofibre", NARROW)
4328
+ ]
4329
+ }
4330
+ ),
4331
+ compositionTerm(
4332
+ "ptt",
4333
+ "PTT",
4334
+ "A thermoplastic polyester formed from 1,3-propanediol and terephthalic acid; fibre-grade material with a defined glycol content is recognised by the US FTC as triexta.",
4335
+ `${STANDARD_ISO_1043_1}; ${STANDARD_FTC2}`,
4336
+ {
4337
+ altLabels: ["Polytrimethylene terephthalate", "Triexta"],
4338
+ broaderSlug: "polyester",
4339
+ external: [
4340
+ externalMapping(FTC_16CFR3032, "triexta", "triexta"),
4341
+ externalMapping(ISO_1043_12, "PTT", "poly(trimethylene terephthalate)")
4342
+ ]
4343
+ }
4344
+ ),
4345
+ compositionTerm(
4346
+ "sbr",
4347
+ "Styrene-butadiene rubber",
4348
+ "A synthetic rubber copolymer of styrene and butadiene monomers.",
4349
+ STANDARD_ISO_1629_RUBBER,
4350
+ {
4351
+ broaderSlug: "rubber",
4352
+ external: [externalMapping(ISO_1629, "SBR", "styrene-butadiene rubber")]
4353
+ }
4354
+ ),
4355
+ compositionTerm(
4356
+ "silicone",
4357
+ "Silicone",
4358
+ "A polymer whose backbone consists of alternating silicon and oxygen atoms with organic side groups attached to the silicon.",
4359
+ STANDARD_ISO_1043_1,
4360
+ {
4361
+ broaderSlug: POLYMER_SLUG2,
4362
+ external: [externalMapping(ISO_1043_12, "SI", "silicone plastic")]
4363
+ }
4364
+ ),
4365
+ compositionTerm(
4366
+ "tpu",
4367
+ "TPU",
4368
+ "A thermoplastic elastomer built from alternating hard and soft polyurethane segments, processable by conventional thermoplastic methods.",
4369
+ "ISO 18064:2022",
4370
+ {
4371
+ altLabels: ["Thermoplastic polyurethane"],
4372
+ broaderSlug: "polyurethane"
4373
+ }
4374
+ ),
4375
+ // Variants.
4376
+ compositionTerm(
4377
+ "hdpe",
4378
+ "HDPE",
4379
+ "A high-density grade of polyethylene, typically with a density at or above 0.941 g/cm3 and a predominantly linear molecular structure.",
4380
+ STANDARD_ISO_1043_1,
4381
+ {
4382
+ altLabels: ["High-density polyethylene", "PE-HD"],
4383
+ broaderSlug: "polyethylene",
4384
+ external: [
4385
+ externalMapping(ISO_1043_12, "PE-HD", "polyethylene, high density")
4386
+ ]
4387
+ }
4388
+ ),
4389
+ compositionTerm(
4390
+ "ldpe",
4391
+ "LDPE",
4392
+ "A low-density, branched-chain grade of polyethylene, typically with a density between 0.910 and 0.940 g/cm3.",
4393
+ STANDARD_ISO_1043_1,
4394
+ {
4395
+ altLabels: ["Low-density polyethylene", "PE-LD"],
4396
+ broaderSlug: "polyethylene",
4397
+ external: [
4398
+ externalMapping(ISO_1043_12, "PE-LD", "polyethylene, low density")
4399
+ ]
4400
+ }
4401
+ ),
4402
+ compositionTerm(
4403
+ "nylon-6",
4404
+ "Nylon 6",
4405
+ "A nylon homopolymer formed by the ring-opening polymerisation of caprolactam.",
4406
+ `${STANDARD_ISO_1043_1}; ${STANDARD_ISO_16396_1}`,
4407
+ {
4408
+ altLabels: ["Polyamide 6", "PA 6", "PA6"],
4409
+ broaderSlug: "nylon",
4410
+ external: [
4411
+ externalMapping(FTC_16CFR3032, "nylon", "nylon", BROAD),
4412
+ externalMapping(ISO_1043_12, "PA", "polyamide", BROAD),
4413
+ externalMapping(ISO_1874_1, "PA 6", "polyamide 6"),
4414
+ externalMapping(ISO_20762, "polyamide", "polyamide", BROAD)
4415
+ ],
4416
+ seenAs: ["Type 6 Nylon", "Polyamid 6"]
4417
+ }
4418
+ ),
4419
+ compositionTerm(
4420
+ "nylon-6-6",
4421
+ "Nylon 6,6",
4422
+ "A polyamide made by condensation of hexamethylenediamine and adipic acid.",
4423
+ `${STANDARD_ISO_1043_1}; ${STANDARD_ISO_16396_1}`,
4424
+ {
4425
+ altLabels: ["Polyamide 6,6", "PA 6,6", "PA66"],
4426
+ broaderSlug: "nylon",
4427
+ external: [
4428
+ externalMapping(FTC_16CFR3032, "nylon", "nylon", BROAD),
4429
+ externalMapping(ISO_1043_12, "PA", "polyamide", BROAD),
4430
+ externalMapping(ISO_1874_1, "PA 66", "polyamide 66"),
4431
+ externalMapping(ISO_20762, "polyamide", "polyamide", BROAD)
4432
+ ],
4433
+ seenAs: ["Nylon 66", "Nylon 6.6", "Type 6,6 Nylon"]
4434
+ }
4435
+ )
4436
+ ];
4437
+
4438
+ // src/axes/material-timber-species.ts
4439
+ var WOOD_HANDBOOK3 = "USDA Wood Handbook (2021), chapter 2";
4440
+ var EN_13556 = "EN 13556:2003";
4441
+ var WOOD_HANDBOOK_IMPORTED = "USDA Wood Handbook (2021), chapter 2, imported woods section";
4442
+ var MATERIAL_TIMBER_SPECIES_TERMS = [
4443
+ compositionTerm(
4444
+ "prunus-serotina",
4445
+ "American cherry",
4446
+ "Timber from Prunus serotina, commercially cut across the eastern United States.",
4447
+ WOOD_HANDBOOK3,
4448
+ { altLabels: ["Prunus serotina", "black cherry"], broaderSlug: "cherry" }
4449
+ ),
4450
+ compositionTerm(
4451
+ "juglans-nigra",
4452
+ "Black walnut",
4453
+ "Timber from Juglans nigra, commercially cut across the eastern United States.",
4454
+ WOOD_HANDBOOK3,
4455
+ {
4456
+ altLabels: ["Juglans nigra", "American black walnut", "American walnut"],
4457
+ broaderSlug: "walnut"
4458
+ }
4459
+ ),
4460
+ compositionTerm(
4461
+ "pinus-strobus",
4462
+ "Eastern white pine",
4463
+ "Timber from Pinus strobus, commercially cut across eastern North America.",
4464
+ WOOD_HANDBOOK3,
4465
+ { altLabels: ["Pinus strobus"], broaderSlug: "pine" }
4466
+ ),
4467
+ compositionTerm(
4468
+ "fraxinus-excelsior",
4469
+ "European ash",
4470
+ "Timber from Fraxinus excelsior, commercially cut across Europe.",
4471
+ EN_13556,
4472
+ { altLabels: ["Fraxinus excelsior"], broaderSlug: "ash" }
4473
+ ),
4474
+ compositionTerm(
4475
+ "fagus-sylvatica",
4476
+ "European beech",
4477
+ "Timber from Fagus sylvatica, commercially cut across Europe.",
4478
+ EN_13556,
4479
+ { altLabels: ["Fagus sylvatica"], broaderSlug: "beech" }
4480
+ ),
4481
+ compositionTerm(
4482
+ "larix-decidua",
4483
+ "European larch",
4484
+ "Timber from Larix decidua, commercially cut across the mountain forests of central Europe.",
4485
+ EN_13556,
4486
+ { altLabels: ["Larix decidua"], broaderSlug: "larch" }
4487
+ ),
4488
+ compositionTerm(
4489
+ "quercus-robur",
4490
+ "European oak",
4491
+ "Timber from Quercus robur, commercially cut across Europe.",
4492
+ EN_13556,
4493
+ {
4494
+ altLabels: ["Quercus robur", "English oak", "pedunculate oak"],
4495
+ broaderSlug: "oak"
4496
+ }
4497
+ ),
4498
+ compositionTerm(
4499
+ "juglans-regia",
4500
+ "European walnut",
4501
+ "Timber from Juglans regia, commercially cut across Europe and Central Asia.",
4502
+ EN_13556,
4503
+ {
4504
+ altLabels: ["Juglans regia", "English walnut", "common walnut"],
4505
+ broaderSlug: "walnut"
4506
+ }
4507
+ ),
4508
+ compositionTerm(
4509
+ "acer-saccharum",
4510
+ "Hard maple",
4511
+ "Timber from Acer saccharum, commercially cut across north-eastern North America.",
4512
+ WOOD_HANDBOOK3,
4513
+ {
4514
+ altLabels: ["Acer saccharum", "sugar maple", "rock maple"],
4515
+ broaderSlug: "maple"
4516
+ }
4517
+ ),
4518
+ compositionTerm(
4519
+ "swietenia-macrophylla",
4520
+ "Honduras mahogany",
4521
+ "Timber from Swietenia macrophylla, commercially cut across Central and South America.",
4522
+ WOOD_HANDBOOK_IMPORTED,
4523
+ {
4524
+ altLabels: [
4525
+ "Swietenia macrophylla",
4526
+ "big-leaf mahogany",
4527
+ "bigleaf mahogany"
4528
+ ],
4529
+ broaderSlug: "mahogany"
4530
+ }
4531
+ ),
4532
+ compositionTerm(
4533
+ "eucalyptus-marginata",
4534
+ "Jarrah",
4535
+ "Timber from Eucalyptus marginata, commercially cut in Western Australia.",
4536
+ WOOD_HANDBOOK_IMPORTED,
4537
+ { altLabels: ["Eucalyptus marginata"], broaderSlug: "eucalyptus" }
4538
+ ),
4539
+ compositionTerm(
4540
+ "quercus-mongolica",
4541
+ "Mongolian oak",
4542
+ "Timber from Quercus mongolica, commercially cut across north-east Asia.",
4543
+ EN_13556,
4544
+ { altLabels: ["Quercus mongolica"], broaderSlug: "oak" }
4545
+ ),
4546
+ compositionTerm(
4547
+ "picea-abies",
4548
+ "Norway spruce",
4549
+ "Timber from Picea abies, commercially cut across Europe.",
4550
+ EN_13556,
4551
+ { altLabels: ["Picea abies", "European spruce"], broaderSlug: "spruce" }
4552
+ ),
4553
+ compositionTerm(
4554
+ "carya-illinoinensis",
4555
+ "Pecan",
4556
+ "Timber from Carya illinoinensis, commercially cut across the southern United States.",
4557
+ WOOD_HANDBOOK3,
4558
+ { altLabels: ["Carya illinoinensis"], broaderSlug: "hickory" }
4559
+ ),
4560
+ compositionTerm(
4561
+ "quercus-rubra",
4562
+ "Red oak",
4563
+ "Timber from Quercus rubra, commercially cut across eastern North America.",
4564
+ WOOD_HANDBOOK3,
4565
+ {
4566
+ altLabels: ["Quercus rubra", "American red oak", "northern red oak"],
4567
+ broaderSlug: "oak"
4568
+ }
4569
+ ),
4570
+ compositionTerm(
4571
+ "pinus-sylvestris",
4572
+ "Scots pine",
4573
+ "Timber from Pinus sylvestris, commercially cut across Europe and northern Asia.",
4574
+ EN_13556,
4575
+ {
4576
+ altLabels: ["Pinus sylvestris", "Scotch pine"],
4577
+ broaderSlug: "pine",
4578
+ seenAs: ["European redwood"]
4579
+ }
4580
+ ),
4581
+ compositionTerm(
4582
+ "quercus-petraea",
4583
+ "Sessile oak",
4584
+ "Timber from Quercus petraea, commercially cut across Europe.",
4585
+ EN_13556,
4586
+ { altLabels: ["Quercus petraea"], broaderSlug: "oak" }
4587
+ ),
4588
+ compositionTerm(
4589
+ "thuja-plicata",
4590
+ "Western red cedar",
4591
+ "Timber from Thuja plicata, commercially cut across the Pacific Northwest of North America.",
4592
+ WOOD_HANDBOOK3,
4593
+ { altLabels: ["Thuja plicata"], broaderSlug: "cedar" }
4594
+ ),
4595
+ compositionTerm(
4596
+ "fraxinus-americana",
4597
+ "White ash",
4598
+ "Timber from Fraxinus americana, commercially cut across the eastern United States.",
4599
+ WOOD_HANDBOOK3,
4600
+ {
4601
+ altLabels: ["Fraxinus americana", "American white ash"],
4602
+ broaderSlug: "ash"
4603
+ }
4604
+ ),
4605
+ compositionTerm(
4606
+ "quercus-alba",
4607
+ "American white oak",
4608
+ "Timber from Quercus alba, commercially cut across eastern North America.",
4609
+ WOOD_HANDBOOK3,
4610
+ {
4611
+ altLabels: ["Quercus alba"],
4612
+ broaderSlug: "white-oak"
4613
+ }
4614
+ )
4615
+ ];
4616
+
4617
+ // src/axes/material-timbers.ts
4618
+ var WOOD_HANDBOOK4 = "USDA Wood Handbook (2021), chapter 2";
4619
+ var EN_135562 = "EN 13556:2003";
4620
+ var HARDWOOD_SLUG = "hardwood";
4621
+ var MATERIAL_TIMBERS_TERMS = [
4622
+ // Materials, alphabetical.
4623
+ authoredTerm(
4624
+ "acacia",
4625
+ "Acacia",
4626
+ "Hardwood timber from trees in the genus Acacia, commercially cut in Australia and grown in plantations across South-East Asia and Africa. In European trade the name also denotes Robinia pseudoacacia, which is not an Acacia.",
4627
+ { broaderSlug: HARDWOOD_SLUG }
4628
+ ),
4629
+ compositionTerm(
4630
+ "alder",
4631
+ "Alder",
4632
+ "Hardwood timber from trees in the genus Alnus, commercially cut across the temperate forests of North America and Europe.",
4633
+ WOOD_HANDBOOK4,
4634
+ { broaderSlug: HARDWOOD_SLUG }
4635
+ ),
4636
+ compositionTerm(
4637
+ "ash",
4638
+ "Ash",
4639
+ "Hardwood timber from trees in the genus Fraxinus, commercially cut across the temperate forests of North America and Europe.",
4640
+ WOOD_HANDBOOK4,
4641
+ { broaderSlug: HARDWOOD_SLUG }
4642
+ ),
4643
+ compositionTerm(
4644
+ "aspen",
4645
+ "Aspen",
4646
+ "Hardwood timber from quaking aspen and bigtooth aspen, Populus tremuloides and Populus grandidentata, commercially cut across the northern temperate and boreal forests of North America.",
4647
+ WOOD_HANDBOOK4,
4648
+ { broaderSlug: "poplar" }
4649
+ ),
4650
+ compositionTerm(
4651
+ "basswood",
4652
+ "Basswood",
4653
+ "Hardwood timber from trees in the genus Tilia, commercially cut across the temperate forests of North America and Europe.",
4654
+ WOOD_HANDBOOK4,
4655
+ { broaderSlug: HARDWOOD_SLUG }
4656
+ ),
4657
+ compositionTerm(
4658
+ "beech",
4659
+ "Beech",
4660
+ "Hardwood timber from trees in the genus Fagus, commercially cut across the temperate forests of Europe, North America and East Asia.",
4661
+ WOOD_HANDBOOK4,
4662
+ { broaderSlug: HARDWOOD_SLUG }
4663
+ ),
4664
+ compositionTerm(
4665
+ "birch",
4666
+ "Birch",
4667
+ "Hardwood timber from trees in the genus Betula, commercially cut across the northern temperate and boreal forests of North America, Europe and Asia.",
4668
+ WOOD_HANDBOOK4,
4669
+ { broaderSlug: HARDWOOD_SLUG }
4670
+ ),
4671
+ compositionTerm(
4672
+ "bubinga",
4673
+ "Bubinga",
4674
+ "Hardwood timber from trees in the genus Guibourtia, commercially cut across Central Africa.",
4675
+ EN_135562,
4676
+ { broaderSlug: HARDWOOD_SLUG }
4677
+ ),
4678
+ compositionTerm(
4679
+ "elm",
4680
+ "Elm",
4681
+ "Hardwood timber from trees in the genus Ulmus, commercially cut across the temperate forests of North America, Europe and Asia.",
4682
+ WOOD_HANDBOOK4,
4683
+ { broaderSlug: HARDWOOD_SLUG }
4684
+ ),
4685
+ compositionTerm(
4686
+ "eucalyptus",
4687
+ "Eucalyptus",
4688
+ "Hardwood timber from trees in the genus Eucalyptus, commercially cut in Australia and grown in plantations across South America, Africa and Asia.",
4689
+ EN_135562,
4690
+ { broaderSlug: HARDWOOD_SLUG }
4691
+ ),
4692
+ compositionTerm(
4693
+ "hickory",
4694
+ "Hickory",
4695
+ "Hardwood timber from trees in the genus Carya, commercially cut across the eastern United States.",
4696
+ WOOD_HANDBOOK4,
4697
+ { broaderSlug: HARDWOOD_SLUG }
4698
+ ),
4699
+ compositionTerm(
4700
+ "ipe",
4701
+ "Ipe",
4702
+ "Hardwood timber from trees in the genus Handroanthus, commercially cut across tropical South America.",
4703
+ EN_135562,
4704
+ { broaderSlug: HARDWOOD_SLUG, seenAs: ["Brazilian walnut"] }
4705
+ ),
4706
+ compositionTerm(
4707
+ "maple",
4708
+ "Maple",
4709
+ "Hardwood timber from trees in the genus Acer, commercially cut across the temperate forests of North America, Europe and East Asia.",
4710
+ WOOD_HANDBOOK4,
4711
+ { broaderSlug: HARDWOOD_SLUG }
4712
+ ),
4713
+ compositionTerm(
4714
+ "merbau",
4715
+ "Merbau",
4716
+ "Hardwood timber from trees in the genus Intsia, commercially cut across South-East Asia and the Pacific islands.",
4717
+ EN_135562,
4718
+ { broaderSlug: HARDWOOD_SLUG, seenAs: ["merbeau"] }
4719
+ ),
4720
+ authoredTerm(
4721
+ "mesquite",
4722
+ "Mesquite",
4723
+ "Hardwood timber from trees in the genus Prosopis, commercially cut across the south-western United States and Mexico.",
4724
+ { broaderSlug: HARDWOOD_SLUG }
4725
+ ),
4726
+ compositionTerm(
4727
+ "padauk",
4728
+ "Padauk",
4729
+ "Hardwood timber from trees in the genus Pterocarpus, commercially cut across West and Central Africa.",
4730
+ EN_135562,
4731
+ {
4732
+ altLabels: ["African padauk"],
4733
+ broaderSlug: HARDWOOD_SLUG,
4734
+ seenAs: ["padouk"]
4735
+ }
4736
+ ),
4737
+ authoredTerm(
4738
+ "paulownia",
4739
+ "Paulownia",
4740
+ "Hardwood timber from trees in the genus Paulownia, commercially cut from plantations across East Asia and the south-eastern United States.",
4741
+ { broaderSlug: HARDWOOD_SLUG }
4742
+ ),
4743
+ compositionTerm(
4744
+ "poplar",
4745
+ "Poplar",
4746
+ "Hardwood timber from trees in the genus Populus, commercially cut across the temperate forests of North America, Europe and Asia.",
4747
+ WOOD_HANDBOOK4,
4748
+ { broaderSlug: HARDWOOD_SLUG, seenAs: ["tulip poplar"] }
4749
+ ),
4750
+ compositionTerm(
4751
+ "purpleheart",
4752
+ "Purpleheart",
4753
+ "Hardwood timber from trees in the genus Peltogyne, commercially cut across Central and South America.",
4754
+ EN_135562,
4755
+ { broaderSlug: HARDWOOD_SLUG }
4756
+ ),
4757
+ compositionTerm(
4758
+ "sycamore",
4759
+ "Sycamore",
4760
+ "A timber name applied to two unrelated species by region: Acer pseudoplatanus in Britain and continental Europe, and Platanus occidentalis in North America.",
4761
+ `${EN_135562}; ${WOOD_HANDBOOK4}`,
4762
+ { broaderSlug: HARDWOOD_SLUG }
4763
+ ),
4764
+ // Species, alphabetical.
4765
+ compositionTerm(
4766
+ "afromosia",
4767
+ "Afrormosia",
4768
+ "Hardwood timber from Pericopsis elata, commercially cut across West Africa.",
4769
+ EN_135562,
4770
+ { altLabels: ["Afromosia"], broaderSlug: HARDWOOD_SLUG }
4771
+ ),
4772
+ compositionTerm(
4773
+ "balsa",
4774
+ "Balsa",
4775
+ "Hardwood timber from Ochroma pyramidale, commercially cut in Ecuador and across Central and South America.",
4776
+ EN_135562,
4777
+ { broaderSlug: HARDWOOD_SLUG }
4778
+ ),
4779
+ compositionTerm(
4780
+ "cumaru",
4781
+ "Cumaru",
4782
+ "Hardwood timber from Dipteryx odorata, commercially cut in Brazil and the Guianas.",
4783
+ EN_135562,
4784
+ { broaderSlug: HARDWOOD_SLUG, seenAs: ["Brazilian teak"] }
4785
+ ),
4786
+ compositionTerm(
4787
+ "iroko",
4788
+ "Iroko",
4789
+ "Hardwood timber from Milicia excelsa, commercially cut across West and Central Africa.",
4790
+ EN_135562,
4791
+ { broaderSlug: HARDWOOD_SLUG }
4792
+ ),
4793
+ compositionTerm(
4794
+ "jatoba",
4795
+ "Jatoba",
4796
+ "Hardwood timber from Hymenaea courbaril, commercially cut across Central and South America.",
4797
+ EN_135562,
4798
+ { broaderSlug: HARDWOOD_SLUG, seenAs: ["Brazilian cherry"] }
4799
+ ),
4800
+ compositionTerm(
4801
+ "kempas",
4802
+ "Kempas",
4803
+ "Hardwood timber from Koompassia malaccensis, commercially cut in Malaysia and Indonesia.",
4804
+ EN_135562,
4805
+ { broaderSlug: HARDWOOD_SLUG }
4806
+ ),
4807
+ compositionTerm(
4808
+ "limba",
4809
+ "Limba",
4810
+ "Hardwood timber from Terminalia superba, commercially cut across West and Central Africa.",
4811
+ EN_135562,
4812
+ { altLabels: ["Korina"], broaderSlug: HARDWOOD_SLUG }
4813
+ ),
4814
+ compositionTerm(
4815
+ "rubberwood",
4816
+ "Rubberwood",
4817
+ "Hardwood timber from Hevea brasiliensis, commercially cut from plantations across South-East Asia once latex production has ended.",
4818
+ EN_135562,
4819
+ { broaderSlug: HARDWOOD_SLUG, seenAs: ["rubber wood"] }
4820
+ ),
4821
+ compositionTerm(
4822
+ "sapele",
4823
+ "Sapele",
4824
+ "Hardwood timber from Entandrophragma cylindricum, commercially cut across West and Central Africa.",
4825
+ EN_135562,
4826
+ { broaderSlug: HARDWOOD_SLUG }
4827
+ ),
4828
+ compositionTerm(
4829
+ "wenge",
4830
+ "Wenge",
4831
+ "Hardwood timber from Millettia laurentii, commercially cut in Central Africa.",
4832
+ EN_135562,
4833
+ { broaderSlug: HARDWOOD_SLUG }
4834
+ ),
4835
+ compositionTerm(
4836
+ "zebrawood",
4837
+ "Zebrawood",
4838
+ "Hardwood timber from Microberlinia brazzavillensis, commercially cut in Cameroon, Gabon and the Republic of the Congo.",
4839
+ EN_135562,
4840
+ { altLabels: ["Zebrano"], broaderSlug: HARDWOOD_SLUG }
4841
+ )
4842
+ ];
4843
+
4844
+ // src/axes/material.ts
4845
+ var SOURCE3 = "material vocabularies in a furnishings retailer (src-03) and in-house";
4846
+ var SNAPSHOT3 = "2026-08-25";
4847
+ var CROSSOVER_SNAPSHOT2 = "2026-08-30";
4848
+ var NATURAL_FIBRE_SLUG2 = "natural-fibre";
4849
+ var STONE_SLUG2 = "stone";
4850
+ var HARDWOOD_SLUG2 = "hardwood";
4851
+ var COPPER_ALLOY_SLUG2 = "copper-alloy";
4852
+ var NON_FERROUS_METAL_SLUG2 = "non-ferrous-metal";
4853
+ var NATURAL_ORGANIC_SLUG2 = "natural-organic";
4854
+ var PLANT_FIBRE_SLUG2 = "plant-fibre";
4855
+ var STONE_TARGET2 = "material.stone";
4856
+ var ASTM_C2422 = "ASTM C242-20";
4857
+ var WOOD_TARGET = "material.wood";
4858
+ var term6 = (slug, label, definition) => ({
4859
+ definition,
4860
+ label,
4861
+ provenance: { basis: "evidenced", snapshot: SNAPSHOT3, source: SOURCE3 },
4862
+ slug
4863
+ });
4864
+ var crossoverTerm = (slug, label, definition, source, broaderSlug) => ({
4865
+ ...broaderSlug === void 0 ? {} : { broaderSlug },
4866
+ definition,
4867
+ label,
4868
+ provenance: {
4869
+ basis: "referenced",
4870
+ snapshot: CROSSOVER_SNAPSHOT2,
4871
+ source
4872
+ },
4873
+ slug
4874
+ });
4875
+ var standardCrossoverTerm = (slug, label, definition, source) => ({
4876
+ ...crossoverTerm(slug, label, definition, source),
4877
+ provenance: {
4878
+ basis: "standard",
4879
+ snapshot: CROSSOVER_SNAPSHOT2,
4880
+ source
4881
+ }
4882
+ });
4883
+ var searchCorpusMaterial = (slug, label, definition, broaderSlug, referenceSource) => ({
4884
+ broaderSlug,
4885
+ definition,
4886
+ introducedAt: "2026-08-31",
4887
+ label,
4888
+ provenance: {
4889
+ basis: "evidenced",
4890
+ snapshot: SEARCH_CORPUS_SNAPSHOT,
4891
+ source: `${searchCorpusEvidence(label)}; ${referenceSource}`
4892
+ },
4893
+ reviewedAt: "2026-08-31",
4894
+ slug
4895
+ });
4896
+ var MATERIAL_TERMS = [
4897
+ reparented(
4898
+ crossoverTerm(
4899
+ "brass",
4900
+ "Brass",
4901
+ "A copper alloy whose principal alloying element is zinc.",
4902
+ BRASS_MATERIAL_SOURCE,
4903
+ COPPER_ALLOY_SLUG2
4904
+ )
1660
4905
  ),
1661
- term6(
1662
- "ceramic",
1663
- "Ceramic",
1664
- "A fired inorganic non-metallic body other than porcelain."
4906
+ reparented(
4907
+ crossoverTerm(
4908
+ "bronze",
4909
+ "Bronze",
4910
+ "A copper alloy in which tin is the principal alloying element.",
4911
+ CROSSOVER_DEFINITION_SOURCES.bronze,
4912
+ COPPER_ALLOY_SLUG2
4913
+ )
1665
4914
  ),
4915
+ // `ceramic` was published as a fired body "other than porcelain", the retail contrast. The
4916
+ // hierarchy review of 2026-09-22 widened it to the ISO 13006 and ASTM C242 sense, in which
4917
+ // porcelain is the dense low-absorption class of ceramic and sits beneath it. Recorded in ADR 0007.
4918
+ {
4919
+ ...term6(
4920
+ "ceramic",
4921
+ "Ceramic",
4922
+ "A fired inorganic non-metallic body shaped from clay or other minerals; porcelain, stoneware, earthenware and terracotta are classes of it, told apart by body and water absorption."
4923
+ ),
4924
+ broaderSlug: "mineral",
4925
+ note: "Widened on 2026-09-22 from a fired body other than porcelain to the ISO 13006 and ASTM C242 sense, in which porcelain is a class of ceramic.",
4926
+ provenance: {
4927
+ basis: "referenced",
4928
+ snapshot: COMPOSITION_REVIEW_DATE,
4929
+ source: `ISO 13006:2018; ${ASTM_C2422}`
4930
+ },
4931
+ reviewedAt: COMPOSITION_REVIEW_DATE
4932
+ },
1666
4933
  {
1667
4934
  ...term6(
1668
4935
  "porcelain",
1669
4936
  "Porcelain",
1670
- "A dense, low-porosity fired ceramic body meeting porcelain classification."
4937
+ "A vitrified fired ceramic body with water absorption at or below 0.5 percent, the bound ISO 13006 group BIa and ANSI A137.1 set for porcelain tile."
1671
4938
  ),
4939
+ broaderSlug: "ceramic",
4940
+ provenance: {
4941
+ basis: "referenced",
4942
+ snapshot: COMPOSITION_REVIEW_DATE,
4943
+ source: `ISO 13006:2018 (group BIa); ANSI A137.1; ${ASTM_C2422}`
4944
+ },
1672
4945
  related: [
1673
4946
  { predicate: "reads-as", target: WOOD_TARGET },
1674
4947
  { predicate: "reads-as", target: "material.marble" },
1675
4948
  { predicate: "reads-as", target: "material.concrete" }
1676
- ]
4949
+ ],
4950
+ reviewedAt: COMPOSITION_REVIEW_DATE
1677
4951
  },
1678
4952
  {
1679
4953
  ...term6(
1680
4954
  "composite",
1681
4955
  "Composite",
1682
4956
  "An engineered material whose performance comes from two or more bound constituents."
1683
- ),
1684
- related: [{ predicate: "reads-as", target: STONE_TARGET }]
4957
+ )
1685
4958
  },
1686
- crossoverTerm(
1687
- "copper",
1688
- "Copper",
1689
- "A metal with a designated minimum copper content of 99.3 percent in the UNS wrought-copper designation system.",
1690
- CROSSOVER_DEFINITION_SOURCES.copper
4959
+ reparented(
4960
+ crossoverTerm(
4961
+ "copper",
4962
+ "Copper",
4963
+ "A metal with a designated minimum copper content of 99.3 percent in the UNS wrought-copper designation system.",
4964
+ CROSSOVER_DEFINITION_SOURCES.copper,
4965
+ NON_FERROUS_METAL_SLUG2
4966
+ )
1691
4967
  ),
1692
4968
  {
1693
4969
  ...term6(
1694
4970
  "laminate",
1695
4971
  "Laminate",
1696
- "A layered sheet material consolidated around a decorative or protective face."
4972
+ "A sheet of resin-impregnated paper layers pressed together under heat and pressure, as EN 438 specifies for high-pressure decorative laminate."
1697
4973
  ),
4974
+ broaderSlug: "composite",
4975
+ provenance: {
4976
+ basis: "referenced",
4977
+ snapshot: COMPOSITION_REVIEW_DATE,
4978
+ source: "EN 438-1:2016"
4979
+ },
1698
4980
  related: [
1699
4981
  { predicate: "reads-as", target: WOOD_TARGET },
1700
- { predicate: "reads-as", target: STONE_TARGET }
1701
- ]
4982
+ { predicate: "reads-as", target: STONE_TARGET2 }
4983
+ ],
4984
+ reviewedAt: COMPOSITION_REVIEW_DATE
1702
4985
  },
1703
- term6(
1704
- NATURAL_FIBRE_SLUG,
1705
- "Natural fibre",
1706
- "A material whose visible fibre is plant- or animal-derived."
1707
- ),
1708
- crossoverTerm(
1709
- "nickel",
1710
- "Nickel",
1711
- "The metallic chemical element Ni used in solid metals and alloys; the bare term does not establish alloy, grade, or bulk composition.",
1712
- NICKEL_MATERIAL_SOURCE
1713
- ),
1714
- term6(
1715
- "paper",
1716
- "Paper",
1717
- "A sheet material formed primarily from cellulose fibres."
4986
+ {
4987
+ ...term6(
4988
+ NATURAL_FIBRE_SLUG2,
4989
+ "Natural fibre",
4990
+ "A fibre obtained directly from a plant or animal without chemical regeneration."
4991
+ ),
4992
+ broaderSlug: NATURAL_ORGANIC_SLUG2,
4993
+ reviewedAt: COMPOSITION_REVIEW_DATE
4994
+ },
4995
+ reparented(
4996
+ crossoverTerm(
4997
+ "nickel",
4998
+ "Nickel",
4999
+ "The metallic chemical element Ni.",
5000
+ NICKEL_MATERIAL_SOURCE,
5001
+ NON_FERROUS_METAL_SLUG2
5002
+ )
1718
5003
  ),
5004
+ {
5005
+ ...term6(
5006
+ "paper",
5007
+ "Paper",
5008
+ "A sheet material formed primarily from cellulose fibres."
5009
+ ),
5010
+ broaderSlug: "cellulose",
5011
+ reviewedAt: COMPOSITION_REVIEW_DATE
5012
+ },
1719
5013
  {
1720
5014
  ...term6(
1721
5015
  "solid-surface",
1722
5016
  "Solid surface",
1723
5017
  "A homogeneous or near-homogeneous cast sheet made from resin and mineral filler."
1724
5018
  ),
1725
- related: [{ predicate: "reads-as", target: STONE_TARGET }]
1726
- },
1727
- crossoverTerm(
1728
- "silver",
1729
- "Silver",
1730
- "The metallic chemical element Ag, atomic number 47.",
1731
- CROSSOVER_DEFINITION_SOURCES.silver
5019
+ broaderSlug: "composite",
5020
+ related: [{ predicate: "reads-as", target: STONE_TARGET2 }],
5021
+ reviewedAt: COMPOSITION_REVIEW_DATE
5022
+ },
5023
+ reparented(
5024
+ crossoverTerm(
5025
+ "silver",
5026
+ "Silver",
5027
+ "The metallic chemical element Ag, atomic number 47.",
5028
+ CROSSOVER_DEFINITION_SOURCES.silver,
5029
+ NON_FERROUS_METAL_SLUG2
5030
+ )
1732
5031
  ),
1733
5032
  crossoverTerm(
1734
5033
  "slate",
1735
5034
  "Slate",
1736
- "A commercial dimension-stone group separately specified for use as slate dimension stone.",
5035
+ "A fine-grained foliated metamorphic rock that splits into thin sheets, quarried as dimension stone.",
1737
5036
  CROSSOVER_DEFINITION_SOURCES.slate,
1738
- STONE_SLUG
1739
- ),
1740
- crossoverTerm(
1741
- STONE_SLUG,
1742
- "Stone",
1743
- "Naturally occurring rock quarried and worked for use as a finish or component.",
1744
- CROSSOVER_DEFINITION_SOURCES.stone
5037
+ STONE_SLUG2
5038
+ ),
5039
+ reparented(
5040
+ crossoverTerm(
5041
+ STONE_SLUG2,
5042
+ "Stone",
5043
+ "Naturally occurring rock quarried and worked for use as a finish or component.",
5044
+ CROSSOVER_DEFINITION_SOURCES.stone,
5045
+ "mineral"
5046
+ )
1745
5047
  ),
1746
5048
  crossoverTerm(
1747
5049
  "marble",
1748
5050
  "Marble",
1749
5051
  "A commercial dimension-stone group that includes stone worked and sold as marble, including some dense or partially metamorphosed limestone.",
1750
5052
  CROSSOVER_DEFINITION_SOURCES.marble,
1751
- STONE_SLUG
5053
+ STONE_SLUG2
1752
5054
  ),
1753
5055
  {
1754
5056
  ...crossoverTerm(
@@ -1756,36 +5058,44 @@ var MATERIAL_TERMS = [
1756
5058
  "Limestone",
1757
5059
  "A sedimentary carbonate rock composed principally of calcium carbonate and used as a building stone and industrial mineral.",
1758
5060
  CROSSOVER_DEFINITION_SOURCES.limestone,
1759
- STONE_SLUG
5061
+ STONE_SLUG2
1760
5062
  ),
1761
5063
  introducedAt: "2026-09-01",
1762
5064
  reviewedAt: "2026-09-01"
1763
5065
  },
1764
- crossoverTerm(
1765
- "steel",
1766
- "Steel",
1767
- "An iron-carbon alloy family spanning many grades rather than one uniform product.",
1768
- CROSSOVER_DEFINITION_SOURCES.steel
1769
- ),
1770
- searchCorpusMaterial(
1771
- "stainless-steel",
1772
- "Stainless steel",
1773
- "A corrosion-resistant steel alloy family containing sufficient chromium to form a protective passive layer, named as a bulk material rather than a surface finish or colour.",
1774
- "steel",
1775
- CROSSOVER_DEFINITION_SOURCES.steel
5066
+ reparented(
5067
+ crossoverTerm(
5068
+ "steel",
5069
+ "Steel",
5070
+ "An alloy of iron with carbon at or below two percent by mass, as EN 10020 bounds it.",
5071
+ `${CROSSOVER_DEFINITION_SOURCES.steel}; EN 10020:2000`,
5072
+ "ferrous-metal"
5073
+ )
1776
5074
  ),
5075
+ {
5076
+ ...searchCorpusMaterial(
5077
+ "stainless-steel",
5078
+ "Stainless steel",
5079
+ "A corrosion-resistant steel alloy family containing sufficient chromium to form a protective passive layer, named as a bulk material rather than a surface finish or colour.",
5080
+ "steel",
5081
+ CROSSOVER_DEFINITION_SOURCES.steel
5082
+ ),
5083
+ seenAs: ["stainless"]
5084
+ },
1777
5085
  crossoverTerm(
1778
5086
  "wood",
1779
5087
  "Wood",
1780
5088
  "Lignocellulosic material obtained from the trunk or branches of a tree or shrub.",
1781
5089
  CROSSOVER_DEFINITION_SOURCES.wood
1782
5090
  ),
1783
- crossoverTerm(
1784
- "oak",
1785
- "Oak",
1786
- "Wood from trees in the Quercus genus, including distinct red-oak and white-oak species groups.",
1787
- CROSSOVER_DEFINITION_SOURCES.oak,
1788
- "wood"
5091
+ reparented(
5092
+ crossoverTerm(
5093
+ "oak",
5094
+ "Oak",
5095
+ "Timber from trees of the genus Quercus.",
5096
+ CROSSOVER_DEFINITION_SOURCES.oak,
5097
+ HARDWOOD_SLUG2
5098
+ )
1789
5099
  ),
1790
5100
  searchCorpusMaterial(
1791
5101
  "white-oak",
@@ -1794,12 +5104,14 @@ var MATERIAL_TERMS = [
1794
5104
  "oak",
1795
5105
  CROSSOVER_DEFINITION_SOURCES.oak
1796
5106
  ),
1797
- crossoverTerm(
1798
- "teak",
1799
- "Teak",
1800
- "Wood from Tectona grandis, named as timber rather than as a colour or surface treatment.",
1801
- CROSSOVER_DEFINITION_SOURCES.teak,
1802
- "wood"
5107
+ reparented(
5108
+ crossoverTerm(
5109
+ "teak",
5110
+ "Teak",
5111
+ "Wood from Tectona grandis, named as timber rather than as a colour or surface treatment.",
5112
+ CROSSOVER_DEFINITION_SOURCES.teak,
5113
+ HARDWOOD_SLUG2
5114
+ )
1803
5115
  ),
1804
5116
  {
1805
5117
  ...crossoverTerm(
@@ -1808,177 +5120,240 @@ var MATERIAL_TERMS = [
1808
5120
  "Wood obtained from a tree in the genus Juglans, named as a material rather than as a colour.",
1809
5121
  CROSSOVER_DEFINITION_SOURCES.walnut
1810
5122
  ),
1811
- broaderSlug: "wood"
1812
- },
1813
- crossoverTerm(
1814
- "clay",
1815
- "Clay",
1816
- "A naturally occurring fine-grained earthy material composed largely of clay minerals; the bare term does not mean fired ceramic.",
1817
- CROSSOVER_DEFINITION_SOURCES.clay
1818
- ),
1819
- crossoverTerm(
1820
- "cotton",
1821
- "Cotton",
1822
- "A natural seed-hair textile fibre; the fibre identity does not establish weave, blend, dye, or finish.",
1823
- CROSSOVER_DEFINITION_SOURCES.cotton,
1824
- NATURAL_FIBRE_SLUG
1825
- ),
1826
- standardCrossoverTerm(
1827
- "leather",
1828
- "Leather",
1829
- "Tanned animal hide or skin that retains its fibrous structure; animal, layer, tanning, coating, and finish remain unspecified.",
1830
- CROSSOVER_DEFINITION_SOURCES.leather
5123
+ broaderSlug: HARDWOOD_SLUG2,
5124
+ reviewedAt: COMPOSITION_REVIEW_DATE
5125
+ },
5126
+ reparented(
5127
+ crossoverTerm(
5128
+ "clay",
5129
+ "Clay",
5130
+ "A naturally occurring fine-grained earthy material composed largely of clay minerals, unfired.",
5131
+ CROSSOVER_DEFINITION_SOURCES.clay,
5132
+ "mineral"
5133
+ )
1831
5134
  ),
1832
- crossoverTerm(
1833
- "linen",
1834
- "Linen",
1835
- "A flax-derived yarn or fabric material; fibre, yarn, and finished fabric are distinct forms.",
1836
- CROSSOVER_DEFINITION_SOURCES.linen,
1837
- NATURAL_FIBRE_SLUG
5135
+ reparented(
5136
+ crossoverTerm(
5137
+ "cotton",
5138
+ "Cotton",
5139
+ "A natural seed-hair fibre from the cotton plant, genus Gossypium.",
5140
+ CROSSOVER_DEFINITION_SOURCES.cotton,
5141
+ PLANT_FIBRE_SLUG2
5142
+ )
1838
5143
  ),
1839
- crossoverTerm(
1840
- "jute",
1841
- "Jute",
1842
- "A plant bast fibre used as a textile and industrial fibre; the word does not establish construction, blend, treatment, or colour.",
1843
- CROSSOVER_DEFINITION_SOURCES.jute,
1844
- NATURAL_FIBRE_SLUG
5144
+ {
5145
+ ...standardCrossoverTerm(
5146
+ "leather",
5147
+ "Leather",
5148
+ "Tanned animal hide or skin that retains its fibrous structure.",
5149
+ CROSSOVER_DEFINITION_SOURCES.leather
5150
+ ),
5151
+ broaderSlug: NATURAL_ORGANIC_SLUG2,
5152
+ reviewedAt: COMPOSITION_REVIEW_DATE
5153
+ },
5154
+ reparented(
5155
+ crossoverTerm(
5156
+ "linen",
5157
+ "Linen",
5158
+ "Fibre, yarn or fabric from the bast of flax, Linum usitatissimum.",
5159
+ CROSSOVER_DEFINITION_SOURCES.linen,
5160
+ PLANT_FIBRE_SLUG2
5161
+ )
1845
5162
  ),
1846
- crossoverTerm(
1847
- "sisal",
1848
- "Sisal",
1849
- "A natural leaf fibre, distinct from a floorcovering or other product made from it.",
1850
- CROSSOVER_DEFINITION_SOURCES.sisal,
1851
- NATURAL_FIBRE_SLUG
5163
+ reparented(
5164
+ crossoverTerm(
5165
+ "jute",
5166
+ "Jute",
5167
+ "A plant bast fibre from Corchorus species, used as a textile and industrial fibre.",
5168
+ CROSSOVER_DEFINITION_SOURCES.jute,
5169
+ PLANT_FIBRE_SLUG2
5170
+ )
1852
5171
  ),
1853
- crossoverTerm(
1854
- "cork",
1855
- "Cork",
1856
- "Bark of the cork oak, Quercus suber; natural cork, agglomerate, backing, veneer, and cork-look appearance remain distinct.",
1857
- CROSSOVER_DEFINITION_SOURCES.cork
5172
+ reparented(
5173
+ crossoverTerm(
5174
+ "sisal",
5175
+ "Sisal",
5176
+ "A natural leaf fibre, distinct from a floorcovering or other product made from it.",
5177
+ CROSSOVER_DEFINITION_SOURCES.sisal,
5178
+ PLANT_FIBRE_SLUG2
5179
+ )
1858
5180
  ),
1859
- crossoverTerm(
1860
- "wool",
1861
- "Wool",
1862
- "A natural animal fibre; species, grade, blend, textile construction, and finish remain unspecified.",
1863
- CROSSOVER_DEFINITION_SOURCES.wool,
1864
- NATURAL_FIBRE_SLUG
5181
+ reparented(
5182
+ crossoverTerm(
5183
+ "cork",
5184
+ "Cork",
5185
+ "Bark of the cork oak, Quercus suber, whole or granulated and agglomerated.",
5186
+ CROSSOVER_DEFINITION_SOURCES.cork,
5187
+ NATURAL_ORGANIC_SLUG2
5188
+ )
1865
5189
  ),
1866
- standardCrossoverTerm(
1867
- "suede",
1868
- "Suede",
1869
- "Leather or split leather whose wearing surface is mechanically finished to a velvet-like nap.",
1870
- CROSSOVER_DEFINITION_SOURCES.suede
5190
+ reparented(
5191
+ crossoverTerm(
5192
+ "wool",
5193
+ "Wool",
5194
+ "A natural animal fibre grown as a fleece.",
5195
+ CROSSOVER_DEFINITION_SOURCES.wool,
5196
+ "animal-fibre"
5197
+ )
1871
5198
  ),
1872
- crossoverTerm(
1873
- "concrete",
1874
- "Concrete",
1875
- "A composite of hydraulic cement, aggregates, water, and optional additions; mix, reinforcement, coating, polish, and imitation remain distinct.",
1876
- CROSSOVER_DEFINITION_SOURCES.concrete
5199
+ {
5200
+ ...standardCrossoverTerm(
5201
+ "suede",
5202
+ "Suede",
5203
+ "Leather or split leather whose wearing surface is mechanically finished to a velvet-like nap.",
5204
+ CROSSOVER_DEFINITION_SOURCES.suede
5205
+ ),
5206
+ broaderSlug: "leather",
5207
+ reviewedAt: COMPOSITION_REVIEW_DATE
5208
+ },
5209
+ reparented(
5210
+ crossoverTerm(
5211
+ "concrete",
5212
+ "Concrete",
5213
+ "A hardened mixture of hydraulic cement, aggregate and water.",
5214
+ CROSSOVER_DEFINITION_SOURCES.concrete,
5215
+ "cementitious"
5216
+ )
1877
5217
  ),
1878
- crossoverTerm(
1879
- "mahogany",
1880
- "Mahogany",
1881
- "A commercially named wood represented by more than one botanical group; the bare name does not establish species or construction.",
1882
- CROSSOVER_DEFINITION_SOURCES.mahogany,
1883
- "wood"
5218
+ reparented(
5219
+ crossoverTerm(
5220
+ "mahogany",
5221
+ "Mahogany",
5222
+ "Timber traded as mahogany, drawn from more than one botanical group.",
5223
+ CROSSOVER_DEFINITION_SOURCES.mahogany,
5224
+ HARDWOOD_SLUG2
5225
+ )
1884
5226
  ),
1885
- crossoverTerm(
1886
- "ebony",
1887
- "Ebony",
1888
- "Wood traded under ebony names across Diospyros species; the trade name is not a botanical identity or proof of black colour.",
1889
- CROSSOVER_DEFINITION_SOURCES.ebony,
1890
- "wood"
5227
+ reparented(
5228
+ crossoverTerm(
5229
+ "ebony",
5230
+ "Ebony",
5231
+ "Timber of the genus Diospyros traded as ebony.",
5232
+ CROSSOVER_DEFINITION_SOURCES.ebony,
5233
+ HARDWOOD_SLUG2
5234
+ )
1891
5235
  ),
1892
- crossoverTerm(
1893
- "cherry",
1894
- "Cherry",
1895
- "A timber reading that includes black cherry, Prunus serotina, in the North American trade; the common name alone does not establish species.",
1896
- CROSSOVER_DEFINITION_SOURCES.cherry,
1897
- "wood"
5236
+ reparented(
5237
+ crossoverTerm(
5238
+ "cherry",
5239
+ "Cherry",
5240
+ "Timber from trees of the genus Prunus.",
5241
+ CROSSOVER_DEFINITION_SOURCES.cherry,
5242
+ HARDWOOD_SLUG2
5243
+ )
1898
5244
  ),
1899
- crossoverTerm(
1900
- "chestnut",
1901
- "Chestnut",
1902
- "A timber reading that includes American chestnut, Castanea dentata; the common name does not establish species or construction.",
1903
- CROSSOVER_DEFINITION_SOURCES.chestnut,
1904
- "wood"
5245
+ reparented(
5246
+ crossoverTerm(
5247
+ "chestnut",
5248
+ "Chestnut",
5249
+ "Timber from trees of the genus Castanea, such as sweet chestnut, Castanea sativa.",
5250
+ CROSSOVER_DEFINITION_SOURCES.chestnut,
5251
+ HARDWOOD_SLUG2
5252
+ )
1905
5253
  ),
1906
- crossoverTerm(
1907
- "rosewood",
1908
- "Rosewood",
1909
- "A trade-name wood reading spanning distinct Dalbergia timbers; species and trade substitution require separate evidence.",
1910
- CROSSOVER_DEFINITION_SOURCES.rosewood,
1911
- "wood"
5254
+ reparented(
5255
+ crossoverTerm(
5256
+ "rosewood",
5257
+ "Rosewood",
5258
+ "Timber from trees of the genus Dalbergia.",
5259
+ CROSSOVER_DEFINITION_SOURCES.rosewood,
5260
+ HARDWOOD_SLUG2
5261
+ )
1912
5262
  ),
1913
- crossoverTerm(
1914
- "gold",
1915
- "Gold",
1916
- "The metallic chemical element Au; solid metal, alloy, leaf, plating, coating, and gold-coloured appearance are not interchangeable.",
1917
- CROSSOVER_DEFINITION_SOURCES.gold
5263
+ reparented(
5264
+ crossoverTerm(
5265
+ "gold",
5266
+ "Gold",
5267
+ "The metallic chemical element Au.",
5268
+ CROSSOVER_DEFINITION_SOURCES.gold,
5269
+ NON_FERROUS_METAL_SLUG2
5270
+ )
1918
5271
  ),
1919
- crossoverTerm(
1920
- "pewter",
1921
- "Pewter",
1922
- "A tin-alloy family with historically variable lead, antimony, and copper content; the bare term does not identify a finish.",
1923
- CROSSOVER_DEFINITION_SOURCES.pewter
5272
+ reparented(
5273
+ crossoverTerm(
5274
+ "pewter",
5275
+ "Pewter",
5276
+ "A tin alloy with small, historically variable additions of lead, antimony or copper.",
5277
+ CROSSOVER_DEFINITION_SOURCES.pewter,
5278
+ NON_FERROUS_METAL_SLUG2
5279
+ )
1924
5280
  ),
1925
- crossoverTerm(
1926
- "iron",
1927
- "Iron",
1928
- "The metallic chemical element Fe; bare usage may instead denote cast iron, wrought iron, steel, oxide, or an iron-look finish.",
1929
- CROSSOVER_DEFINITION_SOURCES.iron
5281
+ reparented(
5282
+ crossoverTerm(
5283
+ "iron",
5284
+ "Iron",
5285
+ "The metallic chemical element Fe.",
5286
+ CROSSOVER_DEFINITION_SOURCES.iron,
5287
+ "ferrous-metal"
5288
+ )
1930
5289
  ),
1931
- crossoverTerm(
1932
- "gunmetal",
1933
- "Gunmetal",
1934
- "A copper-tin-zinc casting-alloy family with grade-dependent composition.",
1935
- CROSSOVER_DEFINITION_SOURCES.gunmetal
5290
+ reparented(
5291
+ crossoverTerm(
5292
+ "gunmetal",
5293
+ "Gunmetal",
5294
+ "A copper-tin-zinc casting-alloy family with grade-dependent composition.",
5295
+ CROSSOVER_DEFINITION_SOURCES.gunmetal,
5296
+ COPPER_ALLOY_SLUG2
5297
+ )
1936
5298
  ),
1937
- crossoverTerm(
1938
- "platinum",
1939
- "Platinum",
1940
- "A platinum-group metal; solid metal, alloy, plating, and platinum-coloured appearance require separate evidence.",
1941
- CROSSOVER_DEFINITION_SOURCES.platinum
5299
+ reparented(
5300
+ crossoverTerm(
5301
+ "platinum",
5302
+ "Platinum",
5303
+ "The metallic chemical element Pt.",
5304
+ CROSSOVER_DEFINITION_SOURCES.platinum,
5305
+ NON_FERROUS_METAL_SLUG2
5306
+ )
1942
5307
  ),
1943
5308
  crossoverTerm(
1944
5309
  "onyx",
1945
5310
  "Onyx",
1946
- "A commercial architectural stone, commonly translucent and distinct from commercial marble; the name does not settle every mineralogical use.",
5311
+ "A commercial architectural stone, commonly translucent and banded, distinct from commercial marble.",
1947
5312
  CROSSOVER_DEFINITION_SOURCES.onyx,
1948
- STONE_SLUG
1949
- ),
1950
- crossoverTerm(
1951
- "travertine",
1952
- "Travertine",
1953
- "A named natural dimension-stone material; quarry, grade, fill, cut, and surface treatment remain unspecified.",
1954
- CROSSOVER_DEFINITION_SOURCES.travertine,
1955
- STONE_SLUG
5313
+ STONE_SLUG2
5314
+ ),
5315
+ reparented(
5316
+ crossoverTerm(
5317
+ "travertine",
5318
+ "Travertine",
5319
+ "A banded sedimentary limestone deposited from spring water.",
5320
+ CROSSOVER_DEFINITION_SOURCES.travertine,
5321
+ "limestone"
5322
+ )
1956
5323
  ),
1957
5324
  crossoverTerm(
1958
5325
  "alabaster",
1959
5326
  "Alabaster",
1960
5327
  "A fine-grained, often translucent gypsum used as decorative stone; historical oriental alabaster can denote carbonate stone.",
1961
5328
  CROSSOVER_DEFINITION_SOURCES.alabaster,
1962
- STONE_SLUG
1963
- ),
1964
- crossoverTerm(
1965
- "jade",
1966
- "Jade",
1967
- "An umbrella gem-material term for nephrite, jadeite, and, under defined conditions, green omphacite; it is not one mineral.",
1968
- CROSSOVER_DEFINITION_SOURCES.jade
5329
+ STONE_SLUG2
5330
+ ),
5331
+ reparented(
5332
+ crossoverTerm(
5333
+ "jade",
5334
+ "Jade",
5335
+ "An umbrella gem-material term for nephrite, jadeite, and, under defined conditions, green omphacite; it is not one mineral.",
5336
+ CROSSOVER_DEFINITION_SOURCES.jade,
5337
+ "mineral"
5338
+ )
1969
5339
  ),
1970
- crossoverTerm(
1971
- "obsidian",
1972
- "Obsidian",
1973
- "Naturally occurring dense volcanic glass, usually rhyolitic and typically but not necessarily black.",
1974
- CROSSOVER_DEFINITION_SOURCES.obsidian
5340
+ reparented(
5341
+ crossoverTerm(
5342
+ "obsidian",
5343
+ "Obsidian",
5344
+ "Naturally occurring dense volcanic glass, usually rhyolitic and typically but not necessarily black.",
5345
+ CROSSOVER_DEFINITION_SOURCES.obsidian,
5346
+ "mineral"
5347
+ )
1975
5348
  ),
1976
- crossoverTerm(
1977
- "terracotta",
1978
- "Terracotta",
1979
- "A coarse porous fired-clay material; raw clay, fired body, glaze, object type, and colour remain distinct.",
1980
- CROSSOVER_DEFINITION_SOURCES.terracotta,
1981
- "ceramic"
5349
+ reparented(
5350
+ crossoverTerm(
5351
+ "terracotta",
5352
+ "Terracotta",
5353
+ "A coarse porous earthenware of fired clay.",
5354
+ `${CROSSOVER_DEFINITION_SOURCES.terracotta}; ${ASTM_C2422}`,
5355
+ "earthenware"
5356
+ )
1982
5357
  ),
1983
5358
  crossoverTerm(
1984
5359
  "denim",
@@ -1990,14 +5365,27 @@ var MATERIAL_TERMS = [
1990
5365
  ...term6(
1991
5366
  "vinyl",
1992
5367
  "Vinyl",
1993
- "A resilient material system whose principal polymer is polyvinyl chloride."
5368
+ "A sheet, tile, film or coated-fabric material whose principal polymer is polyvinyl chloride."
1994
5369
  ),
5370
+ broaderSlug: "polyvinyl-chloride",
1995
5371
  related: [
1996
5372
  { predicate: "reads-as", target: WOOD_TARGET },
1997
- { predicate: "reads-as", target: STONE_TARGET },
5373
+ { predicate: "reads-as", target: STONE_TARGET2 },
1998
5374
  { predicate: "reads-as", target: "material.concrete" }
1999
- ]
2000
- }
5375
+ ],
5376
+ reviewedAt: COMPOSITION_REVIEW_DATE
5377
+ },
5378
+ ...MATERIAL_EVERYDAY_TERMS,
5379
+ ...MATERIAL_POLYMERS_TERMS,
5380
+ ...MATERIAL_CELLULOSICS_TERMS,
5381
+ ...MATERIAL_POLYMER_ADDITIVES_TERMS,
5382
+ ...MATERIAL_MINERALS_TERMS,
5383
+ ...MATERIAL_MINERAL_ADDITIVES_TERMS,
5384
+ ...MATERIAL_METALS_TERMS,
5385
+ ...MATERIAL_NATURAL_ORGANIC_TERMS,
5386
+ ...MATERIAL_TIMBERS_TERMS,
5387
+ ...MATERIAL_TIMBER_SPECIES_TERMS,
5388
+ ...MATERIAL_ENGINEERED_WOOD_TERMS
2001
5389
  ];
2002
5390
 
2003
5391
  // src/axes/mood.ts
@@ -2331,6 +5719,8 @@ var RETRIEVAL_REGULARITY = "ms_pattern_regularity, a dictionary in a materials-r
2331
5719
  var RETRIEVAL_DIRECTIONALITY = "ms_directionality, a dictionary in a materials-retrieval system (src-05)";
2332
5720
  var GEOMETRY_REVIEW_DATE = "2026-08-31";
2333
5721
  var GEOMETRY_SOURCE = "Linear TAX-45 reviewed implementation contract";
5722
+ var REVIEW_DATE7 = "2026-09-11";
5723
+ var REVIEW_SOURCE6 = "everyday-interiors vocabulary review";
2334
5724
  var GEOMETRY_EVIDENCE_SOURCE = "Linear TAX-45 reviewed implementation contract; herringbone and chevron product-language audit in a materials-retrieval system (src-05)";
2335
5725
  var term7 = (slug, label, definition, extra = {}) => ({
2336
5726
  definition,
@@ -2473,6 +5863,18 @@ var PATTERN_TYPE_TERMS = [
2473
5863
  "Plaid or check",
2474
5864
  "An orthogonal repeat of crossing bands or alternating squares."
2475
5865
  ),
5866
+ // AUTHORED. Wikidata's `checkerboard` (Q460711) is the game board the motif is named after,
5867
+ // not a definition of the motif. Type only: a checkerboard of tiles is
5868
+ // installation-layout.stack-bond plus this motif, so no layout reading is added.
5869
+ {
5870
+ altLabels: ["chequerboard", "checkerboard pattern"],
5871
+ definition: "A grid repeat of alternating squares in two contrasting tones, whether printed, woven or formed by the units themselves.",
5872
+ introducedAt: REVIEW_DATE7,
5873
+ label: "Checkerboard",
5874
+ provenance: { basis: "authored", source: REVIEW_SOURCE6 },
5875
+ reviewedAt: REVIEW_DATE7,
5876
+ slug: "checkerboard"
5877
+ },
2476
5878
  term7(
2477
5879
  "scenic",
2478
5880
  "Scenic",
@@ -3094,6 +6496,15 @@ var ESTATE_SNAPSHOT2 = "2026-08-25";
3094
6496
  var CORPUS2 = "the us_hierarchy_category_v2 level-2 rollup in a materials-marketplace catalogue (src-04)";
3095
6497
  var CORPUS_SNAPSHOT2 = "2026-08-27";
3096
6498
  var SEARCH_REVIEW_DATE2 = "2026-08-31";
6499
+ var REVIEW_DATE8 = "2026-09-11";
6500
+ var REVIEW_SOURCE7 = "everyday-interiors vocabulary review";
6501
+ var REVIEW_WALK = "uniclass.thenbs.com/taxon, Pr table walked from Pr_20 to Pr_40 with Pr_25_71, Pr_35_31, Pr_35_57, Pr_35_90, Pr_35_93 and Pr_40_50 expanded";
6502
+ var searchedUniclassOnReview = (query) => ({
6503
+ date: REVIEW_DATE8,
6504
+ query,
6505
+ scheme: "uniclass",
6506
+ via: REVIEW_WALK
6507
+ });
3097
6508
  var term8 = (slug, label, definition, extra = {}) => ({
3098
6509
  definition,
3099
6510
  label,
@@ -3179,6 +6590,27 @@ var PRODUCT_CATEGORY_TERMS = [
3179
6590
  ]
3180
6591
  }
3181
6592
  ),
6593
+ // Narrower than `wallcovering`, not an altLabel of it: wallcovering also covers vinyl and
6594
+ // textile roll goods and rigid panels nobody calls wallpaper, and a buyer asks for wallpaper by
6595
+ // that word without naming paper as the substance. The Uniclass title was read verbatim.
6596
+ term8(
6597
+ "wallpaper",
6598
+ "Wallpaper",
6599
+ "A decorative roll wallcovering hung in drops and pasted to the wall, whatever its face material; not a panel, a paint or a textile hung on a track.",
6600
+ {
6601
+ broaderSlug: "wallcovering",
6602
+ external: [
6603
+ uniclass2(
6604
+ "Pr_35_57_22",
6605
+ "Decorative papers and roll coverings",
6606
+ "close"
6607
+ )
6608
+ ],
6609
+ introducedAt: REVIEW_DATE8,
6610
+ provenance: { basis: "authored", source: REVIEW_SOURCE7 },
6611
+ reviewedAt: REVIEW_DATE8
6612
+ }
6613
+ ),
3182
6614
  fromCorpus(
3183
6615
  "luminaire",
3184
6616
  "Luminaire",
@@ -3426,6 +6858,44 @@ var PRODUCT_CATEGORY_TERMS = [
3426
6858
  )
3427
6859
  ]
3428
6860
  }
6861
+ ),
6862
+ term8(
6863
+ "window-blind",
6864
+ "Window blind",
6865
+ "A product fitted to a window opening to control light and privacy by rolling, folding or tilting, independent of its material and operation.",
6866
+ {
6867
+ altLabels: ["blind", "roller blind", "venetian blind", "roman blind"],
6868
+ introducedAt: REVIEW_DATE8,
6869
+ provenance: {
6870
+ basis: "referenced",
6871
+ snapshot: REVIEW_DATE8,
6872
+ source: "Wikidata Q321046 window blind, https://www.wikidata.org/wiki/Q321046"
6873
+ },
6874
+ reviewedAt: REVIEW_DATE8,
6875
+ searchedWithout: [
6876
+ searchedUniclassOnReview(
6877
+ "blind, window blind, roller blind, window covering, window treatment"
6878
+ )
6879
+ ]
6880
+ }
6881
+ ),
6882
+ // Distinct from `application.pool-decking`, a suitability claim about a poolside; this is the
6883
+ // KIND of thing bought, whatever it is made of and wherever it is laid.
6884
+ term8(
6885
+ "decking",
6886
+ "Decking",
6887
+ "A board or tile product supplied to form an external raised walking surface, independent of whether it is timber, composite or stone and of where it is laid.",
6888
+ {
6889
+ altLabels: ["deck board", "decking board"],
6890
+ introducedAt: REVIEW_DATE8,
6891
+ provenance: { basis: "authored", source: REVIEW_SOURCE7 },
6892
+ reviewedAt: REVIEW_DATE8,
6893
+ searchedWithout: [
6894
+ searchedUniclassOnReview(
6895
+ "decking, deck board, decking board, deck tile"
6896
+ )
6897
+ ]
6898
+ }
3429
6899
  )
3430
6900
  ];
3431
6901
 
@@ -3492,12 +6962,12 @@ var REQUIREMENT_TERMS = [
3492
6962
  ];
3493
6963
 
3494
6964
  // src/axes/season.ts
3495
- var REVIEW_DATE3 = "2026-09-11";
6965
+ var REVIEW_DATE9 = "2026-09-11";
3496
6966
  var AUTHORED5 = {
3497
6967
  basis: "authored",
3498
6968
  source: "@instruments/taxonomy ADR 0006"
3499
6969
  };
3500
- var wikidata = (identifier, label) => ({
6970
+ var wikidata4 = (identifier, label) => ({
3501
6971
  identifier,
3502
6972
  label,
3503
6973
  match: "exact",
@@ -3505,10 +6975,10 @@ var wikidata = (identifier, label) => ({
3505
6975
  });
3506
6976
  var term10 = (slug, label, definition, extra) => ({
3507
6977
  definition,
3508
- introducedAt: REVIEW_DATE3,
6978
+ introducedAt: REVIEW_DATE9,
3509
6979
  label,
3510
6980
  provenance: AUTHORED5,
3511
- reviewedAt: REVIEW_DATE3,
6981
+ reviewedAt: REVIEW_DATE9,
3512
6982
  slug,
3513
6983
  ...extra
3514
6984
  });
@@ -3517,25 +6987,25 @@ var SEASON_TERMS = [
3517
6987
  "spring",
3518
6988
  "Spring",
3519
6989
  "The temperate season between winter and summer, when the days lengthen.",
3520
- { external: [wikidata("Q1312", "spring")] }
6990
+ { external: [wikidata4("Q1312", "spring")] }
3521
6991
  ),
3522
6992
  term10(
3523
6993
  "summer",
3524
6994
  "Summer",
3525
6995
  "The temperate season between spring and autumn, when the days are longest.",
3526
- { external: [wikidata("Q1313", "summer")] }
6996
+ { external: [wikidata4("Q1313", "summer")] }
3527
6997
  ),
3528
6998
  term10(
3529
6999
  "autumn",
3530
7000
  "Autumn",
3531
7001
  "The temperate season between summer and winter, when the days shorten.",
3532
- { altLabels: ["fall"], external: [wikidata("Q1314", "autumn")] }
7002
+ { altLabels: ["fall"], external: [wikidata4("Q1314", "autumn")] }
3533
7003
  ),
3534
7004
  term10(
3535
7005
  "winter",
3536
7006
  "Winter",
3537
7007
  "The temperate season between autumn and spring, when the days are shortest.",
3538
- { external: [wikidata("Q1311", "winter")] }
7008
+ { external: [wikidata4("Q1311", "winter")] }
3539
7009
  )
3540
7010
  ];
3541
7011
 
@@ -5390,6 +8860,7 @@ var TRADITION = "tradition";
5390
8860
  var AAT_ENDPOINT = "vocab.getty.edu/sparql";
5391
8861
  var SCHEME_SNAPSHOT2 = "2026-08-18";
5392
8862
  var SCHEME_CORPUS2 = "room schemes in a furnishings retailer (src-03)";
8863
+ var REVIEW_DATE10 = "2026-09-11";
5393
8864
  var aat3 = (slug, label, match) => ({
5394
8865
  identifier: slug,
5395
8866
  label,
@@ -5701,6 +9172,34 @@ var STYLE_TERMS = [
5701
9172
  slug: "wabi-sabi",
5702
9173
  styleKind: TRADITION
5703
9174
  },
9175
+ // Defined by the blend, so it is neither parent; the anchor in style-anchors.ts names neither.
9176
+ {
9177
+ definition: "A market idiom fusing Japanese restraint with Nordic domestic warmth: low, pared-back forms, natural materials left plain, muted earth tones, and an accepted patina.",
9178
+ external: [
9179
+ {
9180
+ identifier: "Q106092136",
9181
+ label: "Japandi",
9182
+ match: "exact",
9183
+ scheme: "wikidata"
9184
+ }
9185
+ ],
9186
+ introducedAt: REVIEW_DATE10,
9187
+ label: "Japandi",
9188
+ provenance: {
9189
+ basis: "referenced",
9190
+ snapshot: REVIEW_DATE10,
9191
+ source: "Wikidata Q106092136 Japandi, https://www.wikidata.org/wiki/Q106092136"
9192
+ },
9193
+ related: [
9194
+ { predicate: "blend-of", target: "style.minimalism" },
9195
+ { predicate: "blend-of", target: "style.wabi-sabi" },
9196
+ { predicate: "evokes", target: "place.region.japanese" },
9197
+ { predicate: "evokes", target: "place.region.nordic" }
9198
+ ],
9199
+ reviewedAt: REVIEW_DATE10,
9200
+ slug: "japandi",
9201
+ styleKind: MARKET_IDIOM
9202
+ },
5704
9203
  {
5705
9204
  altLabels: ["boho"],
5706
9205
  definition: "Layered, collected and informal, drawing pattern and object from many cultures without resolving them into one scheme.",
@@ -6279,15 +9778,15 @@ var TYPOLOGY_TERMS = [
6279
9778
  ];
6280
9779
 
6281
9780
  // src/axes/unit-shape.ts
6282
- var REVIEW_DATE4 = "2026-08-31";
6283
- var REVIEW_SOURCE2 = "@instruments/taxonomy TAX-45 reviewed implementation contract";
9781
+ var REVIEW_DATE11 = "2026-08-31";
9782
+ var REVIEW_SOURCE8 = "@instruments/taxonomy TAX-45 reviewed implementation contract";
6284
9783
  var PICKET_SOURCE = "Linear TAX-45 reviewed implementation contract; picket product fixture in a materials-retrieval system (src-05)";
6285
9784
  var term11 = (slug, label, definition, extra = {}) => ({
6286
9785
  definition,
6287
- introducedAt: REVIEW_DATE4,
9786
+ introducedAt: REVIEW_DATE11,
6288
9787
  label,
6289
- provenance: { basis: "authored", source: REVIEW_SOURCE2 },
6290
- reviewedAt: REVIEW_DATE4,
9788
+ provenance: { basis: "authored", source: REVIEW_SOURCE8 },
9789
+ reviewedAt: REVIEW_DATE11,
6291
9790
  slug,
6292
9791
  ...extra
6293
9792
  });
@@ -6341,7 +9840,7 @@ var UNIT_SHAPE_TERMS = [
6341
9840
  {
6342
9841
  provenance: {
6343
9842
  basis: "referenced",
6344
- snapshot: REVIEW_DATE4,
9843
+ snapshot: REVIEW_DATE11,
6345
9844
  source: PICKET_SOURCE
6346
9845
  }
6347
9846
  }
@@ -7297,6 +10796,9 @@ var STYLE_ANCHORS = {
7297
10796
  industrial: [
7298
10797
  "Industrial interior with exposed brick walls, steel beams, concrete floors, factory windows, metal shelving, Edison bulbs, leather furniture, raw surfaces, converted warehouse or loft space, utilitarian aesthetic"
7299
10798
  ],
10799
+ japandi: [
10800
+ "Japandi interior with low platform furniture in pale oak and black-stained ash, paper and linen shades, a single ceramic vessel on a plain shelf, walls in warm off-white lime, floors in light timber, and every surface left with its natural grain and no pattern"
10801
+ ],
7300
10802
  maximalism: [
7301
10803
  "Bold maximalist interior with rich colours, statement art, mixed patterns, velvet upholstery, lacquered surfaces, decorative objects, gallery walls, patterned rugs, brass accents, eclectic furniture mixing periods and styles"
7302
10804
  ],
@@ -7700,8 +11202,8 @@ var resolveReference = (reference) => INDEX.byKey.get(canonicalKey(reference));
7700
11202
 
7701
11203
  // src/v1.ts
7702
11204
  var TAXONOMY_BASE_URI = "https://taxonomy.materialinstruments.com";
7703
- var TAXONOMY_SNAPSHOT = "2026-09-11";
7704
- var TAXONOMY_VERSION = "1.3.1";
11205
+ var TAXONOMY_SNAPSHOT = "2026-09-23";
11206
+ var TAXONOMY_VERSION = "1.7.0";
7705
11207
  var PUBLISHED_V1_BASELINE = "2026-08-30";
7706
11208
  var TAX45_REVIEW_SNAPSHOT = "2026-08-31";
7707
11209
  var LIMESTONE_INTRODUCED = "2026-09-01";
@@ -7984,6 +11486,57 @@ var WALNUT_COLOUR = {
7984
11486
  ...colorScope("brown-grayish-walnut", NAMED_COLOR_REFERENCE_KIND),
7985
11487
  role: "secondary"
7986
11488
  };
11489
+ var ordered = (path, role) => ({
11490
+ authority: "taxonomy",
11491
+ role,
11492
+ uri: `${TAXONOMY_BASE_URI}/id/${path}`
11493
+ });
11494
+ var ENGINEERED_QUARTZ_SURFACING = ordered(
11495
+ "material/engineered-quartz",
11496
+ "primary"
11497
+ );
11498
+ var QUARTZ_MINERAL = ordered("material/quartz", "secondary");
11499
+ var MELAMINE_BOARD = ordered("material/melamine-faced-board", "primary");
11500
+ var MELAMINE_RESIN = ordered("material/melamine", "secondary");
11501
+ var HIERARCHY_REVIEW_DATE = "2026-09-22";
11502
+ var ORDERED_READING_EVIDENCE = "stored material values in a materials-retrieval system (src-05)";
11503
+ var HIERARCHY_REVIEW_LIFECYCLE = {
11504
+ introducedAt: HIERARCHY_REVIEW_DATE,
11505
+ reviewedAt: HIERARCHY_REVIEW_DATE,
11506
+ status: "active"
11507
+ };
11508
+ var AMBIGUITY_GOVERNANCE = "Taxonomy preserves the governed readings without assigning a default, role, contextual preference, or consumer route.";
11509
+ var REVIEW_DATE12 = "2026-09-11";
11510
+ var REVIEW_LIFECYCLE = {
11511
+ introducedAt: REVIEW_DATE12,
11512
+ reviewedAt: REVIEW_DATE12,
11513
+ status: "active"
11514
+ };
11515
+ var REVIEW_SOURCE9 = "everyday-interiors vocabulary review";
11516
+ var COLORSCOPE_INSTALLED = "@instruments/colorscope 7.6.0 data/reference/v1/taxonomy.json";
11517
+ var reviewedTaxonomy = (path) => ({
11518
+ authority: "taxonomy",
11519
+ uri: `${TAXONOMY_BASE_URI}/id/${path}`
11520
+ });
11521
+ var referencedCrossover = (phrase, taxonomyPath, colorScopeIdentifier, explanation, definitionSource, introducedAt = HIERARCHY_REVIEW_DATE, additionalReadings = []) => ({
11522
+ explanation,
11523
+ governance: lexicalGovernance(
11524
+ AMBIGUITY_GOVERNANCE,
11525
+ {
11526
+ basis: "referenced",
11527
+ snapshot: HIERARCHY_REVIEW_DATE,
11528
+ source: `${definitionSource}; ${COLORSCOPE_INSTALLED} concept ${colorScopeIdentifier}`
11529
+ },
11530
+ { introducedAt, reviewedAt: HIERARCHY_REVIEW_DATE, status: "active" }
11531
+ ),
11532
+ outcome: "ambiguous",
11533
+ phrase,
11534
+ readings: [
11535
+ reviewedTaxonomy(taxonomyPath),
11536
+ colorScope(colorScopeIdentifier, NAMED_COLOR_REFERENCE_KIND),
11537
+ ...additionalReadings
11538
+ ]
11539
+ });
7987
11540
  var crossoverAmbiguity = (phrase, taxonomyUri, colorScopeIdentifier, explanation, source, additionalTaxonomyUris = []) => ({
7988
11541
  explanation,
7989
11542
  governance: lexicalGovernance(
@@ -8025,7 +11578,7 @@ var crossoverTaxonomyAmbiguity = (phrase, readings, explanation, source, snapsho
8025
11578
  return {
8026
11579
  explanation,
8027
11580
  governance: lexicalGovernance(
8028
- "Taxonomy preserves the governed readings without assigning a default, role, contextual preference, or consumer route.",
11581
+ AMBIGUITY_GOVERNANCE,
8029
11582
  {
8030
11583
  basis,
8031
11584
  snapshot,
@@ -8295,6 +11848,133 @@ var AUTHORED_LEXICAL_ENTRIES = [
8295
11848
  "Terracotta can name a fired-clay material or a ColorScope named colour; firing and composition do not establish orange appearance.",
8296
11849
  crossoverSource("terracotta")
8297
11850
  ),
11851
+ {
11852
+ explanation: "Brick can name fired clay masonry material or a ColorScope named colour; the material need not be red and the colour is not a substance.",
11853
+ governance: lexicalGovernance(
11854
+ AMBIGUITY_GOVERNANCE,
11855
+ {
11856
+ basis: "referenced",
11857
+ snapshot: REVIEW_DATE12,
11858
+ source: `Wikidata Q40089 brick, https://www.wikidata.org/wiki/Q40089; ${COLORSCOPE_INSTALLED} concept red-mid-brick`
11859
+ },
11860
+ REVIEW_LIFECYCLE
11861
+ ),
11862
+ outcome: "ambiguous",
11863
+ phrase: "brick",
11864
+ readings: [
11865
+ reviewedTaxonomy("material/brick"),
11866
+ colorScope("red-mid-brick", NAMED_COLOR_REFERENCE_KIND)
11867
+ ]
11868
+ },
11869
+ // Colour-material crossovers found by comparing every material label with the installed
11870
+ // ColorScope names on 2026-09-22. No retrieval evidence orders either reading, so each keeps
11871
+ // both without a default or a role, as brick does.
11872
+ referencedCrossover(
11873
+ "porcelain",
11874
+ "material/porcelain",
11875
+ "white-off-porcelain",
11876
+ "Porcelain can name a vitrified ceramic body or a ColorScope named colour; the colour does not establish the body.",
11877
+ "ISO 13006:2018; ANSI A137.1",
11878
+ PUBLISHED_V1_BASELINE
11879
+ ),
11880
+ referencedCrossover(
11881
+ "sand",
11882
+ "material/sand",
11883
+ "beige-muted-sand",
11884
+ "Sand can name loose mineral grains, a ColorScope named colour, or the beige colour family ColorScope lists it under; none implies another.",
11885
+ "ISO 14688-1:2017",
11886
+ PUBLISHED_V1_BASELINE,
11887
+ [colorScope("beige", COLOR_FAMILY_REFERENCE_KIND)]
11888
+ ),
11889
+ referencedCrossover(
11890
+ "camel",
11891
+ "material/camel-hair",
11892
+ "beige-cream-camel",
11893
+ "Camel can name hair from a camel or a ColorScope named colour; the fibre need not be that colour.",
11894
+ "Regulation (EU) No 1007/2011 Annex I row 2"
11895
+ ),
11896
+ referencedCrossover(
11897
+ "ash",
11898
+ "material/ash",
11899
+ "gray-light-ash-gray",
11900
+ "Ash can name timber of the genus Fraxinus or an alias of the ColorScope named colour Ash Gray; neither reading implies the other.",
11901
+ "USDA Wood Handbook (2021), chapter 2"
11902
+ ),
11903
+ referencedCrossover(
11904
+ "eucalyptus",
11905
+ "material/eucalyptus",
11906
+ "green-grayish-eucalyptus",
11907
+ "Eucalyptus can name timber of the genus Eucalyptus or a ColorScope named colour; neither reading implies the other.",
11908
+ "EN 13556:2003"
11909
+ ),
11910
+ referencedCrossover(
11911
+ "pine",
11912
+ "material/pine",
11913
+ "green-deep-pine",
11914
+ "Pine can name timber of the genus Pinus or a ColorScope named colour; neither reading implies the other.",
11915
+ "USDA Wood Handbook (2021), chapter 2"
11916
+ ),
11917
+ // Quartz and melamine each name two materials in one word, and the trade uses the word for one
11918
+ // of them first: `quartz` is the engineered surfacing before the mineral, `melamine` the faced
11919
+ // board before the resin. Both readings are on the material axis, so the ordering is a default
11920
+ // and a role, never a colour-or-material context. Decided 2026-09-22 and recorded in ADR 0007.
11921
+ //
11922
+ // The evidence, read from the consumer's stored material values on 2026-09-22 and kept here
11923
+ // because a count is not ours to publish: of 1,490 stored quartz rows, 801 sat on large-format
11924
+ // slab, 102 on solid surface and 98 on natural stone; of 2,816 stored melamine rows, 2,650 sat on
11925
+ // laminate surface.
11926
+ {
11927
+ defaultTarget: ENGINEERED_QUARTZ_SURFACING,
11928
+ explanation: "Quartz can name the engineered quartz surfacing sold for worktops or the mineral silicon dioxide; the trade means the surfacing first, and neither is a child of the other.",
11929
+ governance: lexicalGovernance(
11930
+ "The two readings are deliberately separate; the default records trade usage and does not merge the concepts.",
11931
+ {
11932
+ basis: "evidenced",
11933
+ snapshot: HIERARCHY_REVIEW_DATE,
11934
+ source: `${ORDERED_READING_EVIDENCE}, quartz rows by product type; EN 14618 and EN 15285 (agglomerated stone); CAS 14808-60-7 (quartz)`
11935
+ },
11936
+ HIERARCHY_REVIEW_LIFECYCLE
11937
+ ),
11938
+ outcome: "ambiguous",
11939
+ phrase: "quartz",
11940
+ readings: [ENGINEERED_QUARTZ_SURFACING, QUARTZ_MINERAL]
11941
+ },
11942
+ {
11943
+ defaultTarget: MELAMINE_BOARD,
11944
+ explanation: "Melamine can name melamine-faced board, the panel, or melamine-formaldehyde resin, the polymer its facing is made of; joinery and retail mean the board first.",
11945
+ governance: lexicalGovernance(
11946
+ "The two readings are deliberately separate; the default records trade usage and does not merge the concepts.",
11947
+ {
11948
+ basis: "evidenced",
11949
+ snapshot: HIERARCHY_REVIEW_DATE,
11950
+ source: `${ORDERED_READING_EVIDENCE}, melamine rows by product type; EN 14322 (melamine faced boards); ISO 1043-1 MF (melamine-formaldehyde resin)`
11951
+ },
11952
+ HIERARCHY_REVIEW_LIFECYCLE
11953
+ ),
11954
+ outcome: "ambiguous",
11955
+ phrase: "melamine",
11956
+ readings: [MELAMINE_BOARD, MELAMINE_RESIN]
11957
+ },
11958
+ // Plaster: one governed material reading here. ColorScope separately lists `plaster` as an
11959
+ // alias of its Light Taupe tone band, and a tone band has no reference kind in this corpus, so
11960
+ // the colour reading cannot be a target without inventing one. The mosaic precedent applies:
11961
+ // publish the domain reading and say that consumers must union the external colour alias. If a
11962
+ // tone-band reference kind is added, rewrite this as an ambiguity.
11963
+ {
11964
+ explanation: "Plaster has one governed material reading in this corpus. ColorScope separately lists plaster as an alias of its Light Taupe tone band; consumers must union that external colour reading with this one rather than let either shadow the other.",
11965
+ governance: lexicalGovernance(
11966
+ "Taxonomy records the referenced material reading without assigning a consumer route; the ColorScope tone-band alias has no reference kind in this corpus and is declared rather than minted.",
11967
+ {
11968
+ basis: "referenced",
11969
+ snapshot: REVIEW_DATE12,
11970
+ source: `Wikidata Q274988 plaster, https://www.wikidata.org/wiki/Q274988; ${COLORSCOPE_INSTALLED} tone band taupe-light alias plaster`
11971
+ },
11972
+ REVIEW_LIFECYCLE
11973
+ ),
11974
+ outcome: "equivalent",
11975
+ phrase: "plaster",
11976
+ target: reviewedTaxonomy("material/plaster")
11977
+ },
8298
11978
  crossoverEquivalent(
8299
11979
  "cotton",
8300
11980
  `${TAXONOMY_BASE_URI}/id/material/cotton`,
@@ -8413,6 +12093,35 @@ var AUTHORED_LEXICAL_ENTRIES = [
8413
12093
  phrase: "walnut",
8414
12094
  readings: [WALNUT_MATERIAL, WALNUT_COLOUR]
8415
12095
  },
12096
+ // `application.wall-backsplash` is vendored in `dictionaries.ts`, whose tests deep-equal the
12097
+ // authoring tuples, so the British spelling is an authored equivalent rather than an altLabel.
12098
+ {
12099
+ explanation: "Splashback is the British name for the wall surface behind a worktop, basin or hob; it is the same application as backsplash and names no material.",
12100
+ governance: lexicalGovernance(
12101
+ "Taxonomy records the equivalent regional spelling without assigning a consumer route.",
12102
+ { basis: "authored", source: REVIEW_SOURCE9 },
12103
+ REVIEW_LIFECYCLE
12104
+ ),
12105
+ outcome: "equivalent",
12106
+ phrase: "splashback",
12107
+ target: reviewedTaxonomy("application/wall-backsplash")
12108
+ },
12109
+ // Benchtop takes the same three readings `countertop` resolves to by inference.
12110
+ {
12111
+ explanation: "Benchtop is the Australian and New Zealand name for a countertop or worktop; like those words it can name the application, the installed joinery element, or the purchasable product, and the word settles none of them.",
12112
+ governance: lexicalGovernance(
12113
+ AMBIGUITY_GOVERNANCE,
12114
+ { basis: "authored", source: REVIEW_SOURCE9 },
12115
+ REVIEW_LIFECYCLE
12116
+ ),
12117
+ outcome: "ambiguous",
12118
+ phrase: "benchtop",
12119
+ readings: [
12120
+ reviewedTaxonomy("application/countertop"),
12121
+ reviewedTaxonomy("element/worktop"),
12122
+ reviewedTaxonomy("product-category/countertop")
12123
+ ]
12124
+ },
8416
12125
  {
8417
12126
  explanation: "The phrase makes an environmental performance claim that needs product evidence, not a terminology-only mapping.",
8418
12127
  governance: lexicalGovernance(
@@ -8475,7 +12184,7 @@ var inferredLifecycle = (readings) => {
8475
12184
  };
8476
12185
  };
8477
12186
  var inferredLexicalEntries = () => {
8478
- const authored = new Set(
12187
+ const authored4 = new Set(
8479
12188
  AUTHORED_LEXICAL_ENTRIES.map((entry) => entry.phrase)
8480
12189
  );
8481
12190
  const targetsByPhrase = /* @__PURE__ */ new Map();
@@ -8494,7 +12203,7 @@ var inferredLexicalEntries = () => {
8494
12203
  targetsByPhrase.set(phrase, readings);
8495
12204
  }
8496
12205
  }
8497
- return [...targetsByPhrase].filter(([phrase]) => !authored.has(phrase)).map(([phrase, readings]) => {
12206
+ return [...targetsByPhrase].filter(([phrase]) => !authored4.has(phrase)).map(([phrase, readings]) => {
8498
12207
  const [first, second, ...rest] = readings;
8499
12208
  if (first === void 0) {
8500
12209
  throw new Error(`Lexical phrase "${phrase}" has no reading.`);