@instruments/taxonomy 1.14.0 → 2.0.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/README.md +4 -4
- package/dist/assessment-policy.d.ts +47 -0
- package/dist/authoring.d.ts +1 -1
- package/dist/axes/axis.d.ts +2 -2
- package/dist/axes/space.d.ts +1 -1
- package/dist/axes/tier.d.ts +1 -1
- package/dist/canonicalisation.d.ts +1 -1
- package/dist/crossover-sources.d.ts +1 -1
- package/dist/crosswalks/mapping.d.ts +1 -1
- package/dist/estate/concepts.d.ts +4 -4
- package/dist/estate/decomposition.d.ts +1 -1
- package/dist/estate/residue-report.d.ts +1 -1
- package/dist/estate/sources.d.ts +4 -4
- package/dist/index.d.ts +2 -1
- package/dist/index.js +456 -278
- package/dist/match.d.ts +1 -1
- package/dist/term.d.ts +3 -3
- package/dist/v1.d.ts +21 -19
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
// src/assessment-policy.ts
|
|
2
|
+
import { createHash as createHash2 } from "crypto";
|
|
3
|
+
|
|
1
4
|
// src/v1.ts
|
|
2
5
|
import { createHash } from "crypto";
|
|
3
6
|
|
|
@@ -535,7 +538,7 @@ var CONSTRUCTION_TERMS = [
|
|
|
535
538
|
term(
|
|
536
539
|
"encaustic",
|
|
537
540
|
"Encaustic",
|
|
538
|
-
"Made with
|
|
541
|
+
"Made with color or decoration integral to the body or inlaid beneath the wearing surface."
|
|
539
542
|
),
|
|
540
543
|
// Beneath `encaustic`: a hydraulically pressed cement tile carries its pigment layer beneath the
|
|
541
544
|
// wearing surface, which is what `encaustic` means here, so it is a narrower construction and
|
|
@@ -543,7 +546,7 @@ var CONSTRUCTION_TERMS = [
|
|
|
543
546
|
reviewed(
|
|
544
547
|
"cement-tile",
|
|
545
548
|
"Cement tile",
|
|
546
|
-
"A tile of pigmented cement pressed hydraulically and cured without firing, its
|
|
549
|
+
"A tile of pigmented cement pressed hydraulically and cured without firing, its color layer integral beneath the wearing surface.",
|
|
547
550
|
wikidata("Q3700458", "cement tile"),
|
|
548
551
|
{
|
|
549
552
|
altLabels: ["hydraulic tile"],
|
|
@@ -661,12 +664,12 @@ var CONSTRUCTION_TERMS = [
|
|
|
661
664
|
term(
|
|
662
665
|
"through-body",
|
|
663
666
|
"Through body",
|
|
664
|
-
"
|
|
667
|
+
"Color and composition continue through the full thickness rather than sitting only on the face."
|
|
665
668
|
),
|
|
666
669
|
reviewed(
|
|
667
670
|
"zellige",
|
|
668
671
|
"Zellige",
|
|
669
|
-
"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
|
|
672
|
+
"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 color, size or layout.",
|
|
670
673
|
wikidata("Q189046", "zellij"),
|
|
671
674
|
{ altLabels: ["zellij", "zillij"] }
|
|
672
675
|
),
|
|
@@ -682,7 +685,7 @@ var CONSTRUCTION_TERMS = [
|
|
|
682
685
|
wikidata("Q243519", "velvet")
|
|
683
686
|
),
|
|
684
687
|
// Lowercase ASCII slug so the phrase resolves without the diacritic; the accented spelling is a
|
|
685
|
-
// wild form rather than the label, so both
|
|
688
|
+
// wild form rather than the label, so both meanings reach one term.
|
|
686
689
|
reviewed(
|
|
687
690
|
"boucle",
|
|
688
691
|
"Boucle",
|
|
@@ -730,7 +733,7 @@ var CONSTRUCTION_TERMS = [
|
|
|
730
733
|
reviewedTax57(
|
|
731
734
|
"tweed",
|
|
732
735
|
"Tweed",
|
|
733
|
-
"A rough-surfaced woven fabric made from mixed-
|
|
736
|
+
"A rough-surfaced woven fabric made from mixed-color yarns, traditionally wool.",
|
|
734
737
|
wikidata("Q40601", "tweed"),
|
|
735
738
|
{ broaderSlug: "woven" }
|
|
736
739
|
),
|
|
@@ -1436,7 +1439,7 @@ var ELEMENT_TERMS = [
|
|
|
1436
1439
|
];
|
|
1437
1440
|
|
|
1438
1441
|
// src/crossover-sources.ts
|
|
1439
|
-
var RETRIEVAL_LEXICON_SOURCE = "
|
|
1442
|
+
var RETRIEVAL_LEXICON_SOURCE = "color-material lexicon in a materials-retrieval system (src-05)";
|
|
1440
1443
|
var COLORSCOPE_CROSSOVER_SOURCE = "materialinstruments/colorscope@5feb29b267a7954c135976ede8039f37121afd27:packages/core/data/reference/v1/taxonomy.json";
|
|
1441
1444
|
var BRASS_MATERIAL_SOURCE = "https://archive.copper.org/applications/industrial/DesignGuide/terms.php";
|
|
1442
1445
|
var BRASS_FINISH_SOURCE = "https://nickelinstitute.org/media/lxxh1zwr/2023-nickelplatinghandbooka5_printablepdf.pdf section 5";
|
|
@@ -1718,7 +1721,7 @@ var FINISH_TREATMENT_TERMS = [
|
|
|
1718
1721
|
mg2435(
|
|
1719
1722
|
"antiqued",
|
|
1720
1723
|
"Antiqued",
|
|
1721
|
-
"Deliberately finished to give a new surface the look of age, by wear,
|
|
1724
|
+
"Deliberately finished to give a new surface the look of age, by wear, color change or patination; the term names the result, not one process.",
|
|
1722
1725
|
{
|
|
1723
1726
|
note: "Widened 2026-10-02: the definition no longer lists the processes, and covers any means of giving the look of age."
|
|
1724
1727
|
}
|
|
@@ -1889,7 +1892,7 @@ var FINISH_TEXTURE_TERMS = [
|
|
|
1889
1892
|
repaired(
|
|
1890
1893
|
"velvety",
|
|
1891
1894
|
"Velvety",
|
|
1892
|
-
"A dense short pile
|
|
1895
|
+
"A dense short pile meaning soft and light-absorbing.",
|
|
1893
1896
|
"occasional",
|
|
1894
1897
|
DROPPED
|
|
1895
1898
|
),
|
|
@@ -2087,7 +2090,7 @@ var FORMAT_TERMS = [
|
|
|
2087
2090
|
term4(
|
|
2088
2091
|
"subway-tile",
|
|
2089
2092
|
"Subway tile",
|
|
2090
|
-
"A rectangular field tile supplied in roughly the 1:2 proportion of early-twentieth-century station tiling, independent of material,
|
|
2093
|
+
"A rectangular field tile supplied in roughly the 1:2 proportion of early-twentieth-century station tiling, independent of material, color and the bond it is laid in.",
|
|
2091
2094
|
{
|
|
2092
2095
|
altLabels: ["metro tile"],
|
|
2093
2096
|
broaderSlug: "tile",
|
|
@@ -2650,12 +2653,12 @@ var MATERIAL_EVERYDAY_TERMS = [
|
|
|
2650
2653
|
{ broaderSlug: STONE_SLUG }
|
|
2651
2654
|
),
|
|
2652
2655
|
// Beneath `ceramic` on the same footing as `terracotta`: brick material is a fired clay body,
|
|
2653
|
-
// and MATERIAL names the substance. The masonry UNIT is a format
|
|
2656
|
+
// and MATERIAL names the substance. The masonry UNIT is a format meaning this package does not
|
|
2654
2657
|
// mint; brick slips and thin brick compose `material.brick` with a FORMAT term.
|
|
2655
2658
|
reviewed3(
|
|
2656
2659
|
"brick",
|
|
2657
2660
|
"Brick",
|
|
2658
|
-
"Fired clay masonry material, named as the substance rather than as the masonry unit, its bond or its
|
|
2661
|
+
"Fired clay masonry material, named as the substance rather than as the masonry unit, its bond or its color.",
|
|
2659
2662
|
wikidata3("Q40089", "brick"),
|
|
2660
2663
|
{ broaderSlug: "ceramic" }
|
|
2661
2664
|
),
|
|
@@ -2699,7 +2702,7 @@ var MATERIAL_EVERYDAY_TERMS = [
|
|
|
2699
2702
|
reviewed3(
|
|
2700
2703
|
"weathering-steel",
|
|
2701
2704
|
"Weathering steel",
|
|
2702
|
-
"A steel alloy family that forms a stable rust-
|
|
2705
|
+
"A steel alloy family that forms a stable rust-colored oxide layer on exposure; the trade names are not the material.",
|
|
2703
2706
|
wikidata3("Q1024124", "weathering steel"),
|
|
2704
2707
|
{ broaderSlug: "steel", seenAs: ["corten", "Cor-Ten"] }
|
|
2705
2708
|
),
|
|
@@ -2847,7 +2850,7 @@ var MATERIAL_EVERYDAY_TERMS = [
|
|
|
2847
2850
|
},
|
|
2848
2851
|
// AUTHORED. Cane in furniture is the peeled outer skin of rattan woven as webbing, so it is
|
|
2849
2852
|
// related to rattan and not an instance of it; bare `cane` also names bamboo and sugar cane,
|
|
2850
|
-
// which is why the definition pins the interiors
|
|
2853
|
+
// which is why the definition pins the interiors meaning and the relation is `related-to`.
|
|
2851
2854
|
{
|
|
2852
2855
|
...authored3(
|
|
2853
2856
|
"cane",
|
|
@@ -3217,10 +3220,10 @@ var MATERIAL_MINERAL_ADDITIVES_TERMS = [
|
|
|
3217
3220
|
compositionTerm(
|
|
3218
3221
|
PIGMENT_SLUG,
|
|
3219
3222
|
"Pigment",
|
|
3220
|
-
"An inorganic insoluble particulate substance added to
|
|
3223
|
+
"An inorganic insoluble particulate substance added to color a material, named in a composition when the specific pigment is not.",
|
|
3221
3224
|
ISO_18451_1,
|
|
3222
3225
|
{
|
|
3223
|
-
altLabels: ["
|
|
3226
|
+
altLabels: ["color pigment", "color pigment"],
|
|
3224
3227
|
broaderSlug: MINERAL_SLUG
|
|
3225
3228
|
}
|
|
3226
3229
|
),
|
|
@@ -5517,7 +5520,7 @@ var MATERIAL_TERMS = [
|
|
|
5517
5520
|
...searchCorpusMaterial(
|
|
5518
5521
|
"stainless-steel",
|
|
5519
5522
|
"Stainless steel",
|
|
5520
|
-
"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
|
|
5523
|
+
"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 color.",
|
|
5521
5524
|
"steel",
|
|
5522
5525
|
CROSSOVER_DEFINITION_SOURCES.steel
|
|
5523
5526
|
),
|
|
@@ -5541,7 +5544,7 @@ var MATERIAL_TERMS = [
|
|
|
5541
5544
|
searchCorpusMaterial(
|
|
5542
5545
|
"white-oak",
|
|
5543
5546
|
"White oak",
|
|
5544
|
-
"Timber from the white-oak species group within the genus Quercus, named as a wood material rather than a
|
|
5547
|
+
"Timber from the white-oak species group within the genus Quercus, named as a wood material rather than a color or surface finish.",
|
|
5545
5548
|
"oak",
|
|
5546
5549
|
CROSSOVER_DEFINITION_SOURCES.oak
|
|
5547
5550
|
),
|
|
@@ -5549,7 +5552,7 @@ var MATERIAL_TERMS = [
|
|
|
5549
5552
|
crossoverTerm(
|
|
5550
5553
|
"teak",
|
|
5551
5554
|
"Teak",
|
|
5552
|
-
"Wood from Tectona grandis, named as timber rather than as a
|
|
5555
|
+
"Wood from Tectona grandis, named as timber rather than as a color or surface treatment.",
|
|
5553
5556
|
CROSSOVER_DEFINITION_SOURCES.teak,
|
|
5554
5557
|
HARDWOOD_SLUG2
|
|
5555
5558
|
)
|
|
@@ -5558,7 +5561,7 @@ var MATERIAL_TERMS = [
|
|
|
5558
5561
|
...crossoverTerm(
|
|
5559
5562
|
"walnut",
|
|
5560
5563
|
"Walnut",
|
|
5561
|
-
"Wood obtained from a tree in the genus Juglans, named as a material rather than as a
|
|
5564
|
+
"Wood obtained from a tree in the genus Juglans, named as a material rather than as a color.",
|
|
5562
5565
|
CROSSOVER_DEFINITION_SOURCES.walnut
|
|
5563
5566
|
),
|
|
5564
5567
|
broaderSlug: HARDWOOD_SLUG2,
|
|
@@ -5869,7 +5872,7 @@ var MOOD_TERMS = [
|
|
|
5869
5872
|
slug: "soft"
|
|
5870
5873
|
},
|
|
5871
5874
|
{
|
|
5872
|
-
definition: "Sharp edges and clean contrast; the opposite
|
|
5875
|
+
definition: "Sharp edges and clean contrast; the opposite meaning to soft.",
|
|
5873
5876
|
label: "Crisp",
|
|
5874
5877
|
provenance: { basis: "vendored", snapshot: SNAPSHOT4, source: MS_MOOD },
|
|
5875
5878
|
slug: "crisp"
|
|
@@ -6061,12 +6064,12 @@ var PALETTE_HUE_TERMS = [
|
|
|
6061
6064
|
}));
|
|
6062
6065
|
var PALETTE_TEMPERATURE_TERMS = [
|
|
6063
6066
|
{
|
|
6064
|
-
definition: "Dominant
|
|
6067
|
+
definition: "Dominant color casts to the warm side of the OKLab warmth axis.",
|
|
6065
6068
|
label: "Warm",
|
|
6066
6069
|
slug: "warm"
|
|
6067
6070
|
},
|
|
6068
6071
|
{
|
|
6069
|
-
definition: "Dominant
|
|
6072
|
+
definition: "Dominant color casts to the cool side of the OKLab warmth axis.",
|
|
6070
6073
|
label: "Cool",
|
|
6071
6074
|
slug: "cool"
|
|
6072
6075
|
},
|
|
@@ -6087,14 +6090,14 @@ var PALETTE_TEMPERATURE_TERMS = [
|
|
|
6087
6090
|
var PALETTE_CHARACTER_TERMS = [
|
|
6088
6091
|
{
|
|
6089
6092
|
canonicalAuthority: colorScopeAuthority("vibrant", PALETTE_MOOD),
|
|
6090
|
-
definition: "High chroma;
|
|
6093
|
+
definition: "High chroma; color is the loudest thing in the scheme.",
|
|
6091
6094
|
label: "Vibrant",
|
|
6092
6095
|
provenance: { basis: "vendored", snapshot: SNAPSHOT5, source: COLOUR_MOOD },
|
|
6093
6096
|
slug: "vibrant"
|
|
6094
6097
|
},
|
|
6095
6098
|
{
|
|
6096
6099
|
canonicalAuthority: colorScopeAuthority("muted", PALETTE_MOOD),
|
|
6097
|
-
definition: "Chroma held low by design, with the
|
|
6100
|
+
definition: "Chroma held low by design, with the colors still fully present.",
|
|
6098
6101
|
label: "Muted",
|
|
6099
6102
|
provenance: { basis: "vendored", snapshot: SNAPSHOT5, source: COLOUR_MOOD },
|
|
6100
6103
|
slug: "muted"
|
|
@@ -6136,7 +6139,7 @@ var PALETTE_CHARACTER_TERMS = [
|
|
|
6136
6139
|
},
|
|
6137
6140
|
{
|
|
6138
6141
|
canonicalAuthority: colorScopeAuthority("monochrome", PALETTE_MOOD),
|
|
6139
|
-
definition: "One hue, or none; the scheme varies by lightness rather than by
|
|
6142
|
+
definition: "One hue, or none; the scheme varies by lightness rather than by color.",
|
|
6140
6143
|
label: "Monochrome",
|
|
6141
6144
|
provenance: { basis: "vendored", snapshot: SNAPSHOT5, source: COLOUR_MOOD },
|
|
6142
6145
|
slug: "monochrome"
|
|
@@ -6147,13 +6150,13 @@ var PALETTE_CHARACTER_TERMS = [
|
|
|
6147
6150
|
definition: "Many hues held together deliberately.",
|
|
6148
6151
|
label: "Polychrome",
|
|
6149
6152
|
provenance: { basis: "vendored", snapshot: SNAPSHOT5, source: COLOUR_MOOD },
|
|
6150
|
-
seenAs: ["
|
|
6153
|
+
seenAs: ["colorful"],
|
|
6151
6154
|
slug: "colorful"
|
|
6152
6155
|
},
|
|
6153
6156
|
{
|
|
6154
6157
|
altLabels: ["jewel-toned"],
|
|
6155
6158
|
canonicalAuthority: colorScopeAuthority("saturated", "chroma-level"),
|
|
6156
|
-
definition: "Deep and fully-loaded
|
|
6159
|
+
definition: "Deep and fully-loaded color, jewel-toned rather than bright. Vibrant is loud; saturated is rich, and a dark saturated scheme is ordinary while a dark vibrant one is not.",
|
|
6157
6160
|
label: "Saturated",
|
|
6158
6161
|
note: "NOT authored here, and the second time this file made that claim. It was written as authored because colorscope's PaletteMood was checked and its COLOR_CHROMA_LEVELS was not - and the chroma scale is muted, soft, vivid, SATURATED. The same failure as `mid`, in the same file, found by an adversarial pass rather than by the check that should have caught it.",
|
|
6159
6162
|
provenance: {
|
|
@@ -6229,7 +6232,7 @@ var PATTERN_FIGURE_TERMS = [
|
|
|
6229
6232
|
pimTerm(
|
|
6230
6233
|
"cloudy",
|
|
6231
6234
|
"Cloudy",
|
|
6232
|
-
"Soft, diffuse variation in tone with no distinct veins or edges,
|
|
6235
|
+
"Soft, diffuse variation in tone with no distinct veins or edges, meaning as drifting cloud.",
|
|
6233
6236
|
PIM_FIGURE_SOURCE
|
|
6234
6237
|
),
|
|
6235
6238
|
pimTerm(
|
|
@@ -6441,11 +6444,11 @@ var PATTERN_TYPE_TERMS = [
|
|
|
6441
6444
|
// concept rather than a second correct name for it, so it is `seenAs`, not an alt label.
|
|
6442
6445
|
{ seenAs: ["floral"] }
|
|
6443
6446
|
),
|
|
6444
|
-
// Heather in the trade names the same mixed-
|
|
6447
|
+
// Heather in the trade names the same mixed-color-yarn effect Wikidata records; melange, marled
|
|
6445
6448
|
// and heathered are its correct names, none more canonical than another.
|
|
6446
6449
|
{
|
|
6447
6450
|
altLabels: ["heathered", "marled"],
|
|
6448
|
-
definition: "A mixed-
|
|
6451
|
+
definition: "A mixed-color yarn effect that gives the surface a flecked, uneven tone rather than one solid color.",
|
|
6449
6452
|
introducedAt: TAX57_DATE3,
|
|
6450
6453
|
label: "Melange",
|
|
6451
6454
|
provenance: {
|
|
@@ -6485,7 +6488,7 @@ var PATTERN_TYPE_TERMS = [
|
|
|
6485
6488
|
term7(
|
|
6486
6489
|
"herringbone-chevron",
|
|
6487
6490
|
"Herringbone or chevron",
|
|
6488
|
-
"A legacy combined
|
|
6491
|
+
"A legacy combined meaning for directional zigzags formed by angled units or marks.",
|
|
6489
6492
|
{
|
|
6490
6493
|
introducedAt: "2026-08-30",
|
|
6491
6494
|
note: "Deprecated by the Linear TAX-45 reviewed implementation contract because one combined identity could not distinguish broken herringbone from continuous chevron motifs. Zigzag preserves the non-specific historical meaning; use the narrower herringbone or chevron concept when evidence supports it.",
|
|
@@ -6571,7 +6574,7 @@ var PATTERN_TYPE_TERMS = [
|
|
|
6571
6574
|
),
|
|
6572
6575
|
// AUTHORED. Wikidata's `checkerboard` (Q460711) is the game board the motif is named after,
|
|
6573
6576
|
// not a definition of the motif. Type only: a checkerboard of tiles is
|
|
6574
|
-
// installation-layout.stack-bond plus this motif, so no layout
|
|
6577
|
+
// installation-layout.stack-bond plus this motif, so no layout meaning is added.
|
|
6575
6578
|
{
|
|
6576
6579
|
altLabels: ["chequerboard", "checkerboard pattern"],
|
|
6577
6580
|
definition: "A grid repeat of alternating squares in two contrasting tones, whether printed, woven or formed by the units themselves.",
|
|
@@ -6595,17 +6598,17 @@ var PATTERN_TYPE_TERMS = [
|
|
|
6595
6598
|
term7(
|
|
6596
6599
|
"gradient",
|
|
6597
6600
|
"Gradient",
|
|
6598
|
-
"A continuous or stepped transition in tone,
|
|
6601
|
+
"A continuous or stepped transition in tone, color or mark density."
|
|
6599
6602
|
),
|
|
6600
6603
|
term7(
|
|
6601
6604
|
"texture",
|
|
6602
6605
|
"Texture",
|
|
6603
|
-
"A non-representational repeat whose principal
|
|
6606
|
+
"A non-representational repeat whose principal meaning is tactile or relief-like."
|
|
6604
6607
|
),
|
|
6605
6608
|
term7(
|
|
6606
6609
|
"toile",
|
|
6607
6610
|
"Toile",
|
|
6608
|
-
"A fine-line pastoral or narrative pictorial repeat, usually in one
|
|
6611
|
+
"A fine-line pastoral or narrative pictorial repeat, usually in one color."
|
|
6609
6612
|
),
|
|
6610
6613
|
term7(
|
|
6611
6614
|
"character",
|
|
@@ -6700,7 +6703,7 @@ var PATTERN_DENSITY_TERMS = [
|
|
|
6700
6703
|
RETRIEVAL_DENSITY,
|
|
6701
6704
|
"dense",
|
|
6702
6705
|
"Dense",
|
|
6703
|
-
"Motif covering the field, with no ground
|
|
6706
|
+
"Motif covering the field, with no ground meaning as ground.",
|
|
6704
6707
|
6
|
|
6705
6708
|
)
|
|
6706
6709
|
];
|
|
@@ -6737,7 +6740,7 @@ var PATTERN_REGULARITY_TERMS = [
|
|
|
6737
6740
|
RETRIEVAL_REGULARITY,
|
|
6738
6741
|
"organic",
|
|
6739
6742
|
"Organic",
|
|
6740
|
-
"Variation
|
|
6743
|
+
"Variation meaning as grown or formed rather than composed.",
|
|
6741
6744
|
5
|
|
6742
6745
|
)
|
|
6743
6746
|
];
|
|
@@ -6996,7 +6999,7 @@ var PLACE_REGION_TERMS = [
|
|
|
6996
6999
|
},
|
|
6997
7000
|
{
|
|
6998
7001
|
broaderSlug: "mediterranean",
|
|
6999
|
-
definition: "The central-Italian
|
|
7002
|
+
definition: "The central-Italian meaning of the Mediterranean idiom: stone, ochre render, cypress.",
|
|
7000
7003
|
label: "Tuscan",
|
|
7001
7004
|
provenance: { basis: "authored", source: ADR2 },
|
|
7002
7005
|
slug: "tuscan"
|
|
@@ -7044,7 +7047,7 @@ var PLACE_REGION_TERMS = [
|
|
|
7044
7047
|
},
|
|
7045
7048
|
{
|
|
7046
7049
|
broaderSlug: "english-country",
|
|
7047
|
-
definition: "The oolitic-limestone
|
|
7050
|
+
definition: "The oolitic-limestone meaning of the English country idiom: honey stone, steep stone-slate roofs, mullioned windows, low ceilings.",
|
|
7048
7051
|
label: "Cotswolds",
|
|
7049
7052
|
provenance: { basis: "authored", source: ADR2 },
|
|
7050
7053
|
slug: "cotswolds"
|
|
@@ -7057,7 +7060,7 @@ var PLACE_REGION_TERMS = [
|
|
|
7057
7060
|
slug: "french-provincial"
|
|
7058
7061
|
},
|
|
7059
7062
|
{
|
|
7060
|
-
definition: "Saturated pigment on mass walls, volcanic stone, deep shade, and
|
|
7063
|
+
definition: "Saturated pigment on mass walls, volcanic stone, deep shade, and color used architecturally rather than decoratively.",
|
|
7061
7064
|
label: "Mexican",
|
|
7062
7065
|
provenance: { basis: "authored", source: ADR2 },
|
|
7063
7066
|
slug: "mexican"
|
|
@@ -8538,7 +8541,7 @@ var GATHERING_SPACES = [
|
|
|
8538
8541
|
},
|
|
8539
8542
|
{
|
|
8540
8543
|
broaderSlug: "lounge",
|
|
8541
|
-
definition: "The soft-seated end of a library or learning space, where
|
|
8544
|
+
definition: "The soft-seated end of a library or learning space, where meaning happens off a chair rather than at a table; the tabled part of the same room is `reading_room`.",
|
|
8542
8545
|
label: "Library Lounge",
|
|
8543
8546
|
provenance: PROGRAM_SPACES,
|
|
8544
8547
|
slug: "library-lounge"
|
|
@@ -9117,7 +9120,7 @@ var SANITARY_SPACES = [
|
|
|
9117
9120
|
definition: "A small volume holding a lavatory and a basin and nothing else; add a bath or a shower and it becomes `bathroom`.",
|
|
9118
9121
|
external: [aat2("300081124", "lavatories (rooms)", "exact")],
|
|
9119
9122
|
label: "Cloakroom / WC",
|
|
9120
|
-
note: "Deliberately not a kind of `bathroom`. In American usage a WC is a bathroom and the edge would be clean; in British usage it is not, and the whole point of the term is the absence of bathing provision. Since the difference is exactly what a specifier needs to see, the two terms sit side by side rather than one inside the other. `cloakroom` was an carried as another name here in the 0.2 draft and is now a term of its own for the coat room, on Getty's
|
|
9123
|
+
note: "Deliberately not a kind of `bathroom`. In American usage a WC is a bathroom and the edge would be clean; in British usage it is not, and the whole point of the term is the absence of bathing provision. Since the difference is exactly what a specifier needs to see, the two terms sit side by side rather than one inside the other. `cloakroom` was an carried as another name here in the 0.2 draft and is now a term of its own for the coat room, on Getty's meaning; the British domestic sense meaning this room moves to Seen in the wild, where observed but non-canonical labels belong. The label is left alone so the published id keeps its name.",
|
|
9121
9124
|
provenance: MS_ROOM_PROGRAM,
|
|
9122
9125
|
seenAs: ["downstairs loo", "half bath", "cloakroom", "powder_room"],
|
|
9123
9126
|
slug: "wc"
|
|
@@ -9360,7 +9363,7 @@ var SLEEPING_SPACES = [
|
|
|
9360
9363
|
definition: "A let sleeping volume in a hotel, taken together with its ensuite: the guest's whole private territory rather than the bed alone.",
|
|
9361
9364
|
external: [aat2("300248355", "guest rooms", "related")],
|
|
9362
9365
|
label: "Hotel Room",
|
|
9363
|
-
// DOWNGRADED from `close` on 2026-08-21 after
|
|
9366
|
+
// DOWNGRADED from `close` on 2026-08-21 after meaning AAT's scope note, which reads: "Rooms in
|
|
9364
9367
|
// DWELLINGS set aside or otherwise intended for temporary use by guests and usually not
|
|
9365
9368
|
// regularly used by household members." That is a domestic spare room, not a let hotel bedroom,
|
|
9366
9369
|
// and `close` would have asserted they substitute for one another in retrieval. AAT has no term
|
|
@@ -9512,7 +9515,7 @@ var WORKING_SPACES = [
|
|
|
9512
9515
|
{
|
|
9513
9516
|
altLabels: ["home office"],
|
|
9514
9517
|
broaderSlug: "workspace",
|
|
9515
|
-
definition: "A domestic volume given over to desk work,
|
|
9518
|
+
definition: "A domestic volume given over to desk work, meaning or household administration.",
|
|
9516
9519
|
external: [
|
|
9517
9520
|
aat2("300081781", "studies (rooms)", "exact"),
|
|
9518
9521
|
aat2("300180734", "home offices (workspaces)", "close")
|
|
@@ -9673,7 +9676,7 @@ var STYLE_TERMS = [
|
|
|
9673
9676
|
{
|
|
9674
9677
|
altLabels: ["mcm"],
|
|
9675
9678
|
broaderSlug: "modernism",
|
|
9676
|
-
definition: "The postwar domestic
|
|
9679
|
+
definition: "The postwar domestic meaning of modernism: organic curves, teak and walnut, tapered legs, warm rather than austere.",
|
|
9677
9680
|
external: [aat3("300343610", "Mid-Century Modernist", "exact")],
|
|
9678
9681
|
label: "Mid-Century Modern",
|
|
9679
9682
|
note: "Style, not period. A reproduction built in 2024 is `style.mid-century-modern` in the `period.contemporary` period, which is why the two axes cannot be one.",
|
|
@@ -9799,7 +9802,7 @@ var STYLE_TERMS = [
|
|
|
9799
9802
|
},
|
|
9800
9803
|
// Zero hits on all three. AAT has no maximalism concept in any domain.
|
|
9801
9804
|
{
|
|
9802
|
-
definition: "Deliberate accumulation: pattern on pattern,
|
|
9805
|
+
definition: "Deliberate accumulation: pattern on pattern, color on color, more held together on purpose rather than by accident.",
|
|
9803
9806
|
label: "Maximalism",
|
|
9804
9807
|
provenance: {
|
|
9805
9808
|
basis: "evidenced",
|
|
@@ -10019,7 +10022,7 @@ var STYLE_TERMS = [
|
|
|
10019
10022
|
styleKind: MOVEMENT
|
|
10020
10023
|
},
|
|
10021
10024
|
{
|
|
10022
|
-
definition: "Geometric order and typological clarity taken as first principles, especially the Italian interwar and Tendenza
|
|
10025
|
+
definition: "Geometric order and typological clarity taken as first principles, especially the Italian interwar and Tendenza meanings.",
|
|
10023
10026
|
external: [aat3("300457776", "Rationalist (style and movement)", "exact")],
|
|
10024
10027
|
label: "Rationalism",
|
|
10025
10028
|
provenance: {
|
|
@@ -10424,7 +10427,7 @@ var TYPOLOGY_TERMS = [
|
|
|
10424
10427
|
slug: "museum"
|
|
10425
10428
|
},
|
|
10426
10429
|
{
|
|
10427
|
-
definition: "Premises holding a collection for
|
|
10430
|
+
definition: "Premises holding a collection for meaning and lending, planned around both dense storage and long uninterrupted occupation of the meaning floor.",
|
|
10428
10431
|
label: "Library",
|
|
10429
10432
|
provenance: PROJECTS_PLATFORM,
|
|
10430
10433
|
slug: "library"
|
|
@@ -10659,10 +10662,10 @@ var MOOD_ANCHORS = {
|
|
|
10659
10662
|
"Interior stripped to a bare floor and unadorned walls, a single hard seat, no textile anywhere, fixings and joints left visible, and every horizontal surface empty"
|
|
10660
10663
|
],
|
|
10661
10664
|
calm: [
|
|
10662
|
-
"Interior holding very few objects, widely spaced, one continuous wall
|
|
10665
|
+
"Interior holding very few objects, widely spaced, one continuous wall color running uninterrupted, storage closed and flush, and light arriving evenly with no bright spot anywhere in the frame"
|
|
10663
10666
|
],
|
|
10664
10667
|
crisp: [
|
|
10665
|
-
"Interior where every junction is held on a shadow line, arrises square and unsoftened, flat matt
|
|
10668
|
+
"Interior where every junction is held on a shadow line, arrises square and unsoftened, flat matt color meeting flat matt color without a transition, and shadows falling with a hard boundary from a single source"
|
|
10666
10669
|
],
|
|
10667
10670
|
domestic: [
|
|
10668
10671
|
"Interior with a book left face-down, a mug and a plate still on the table, shoes by the door, a cable running across the floor to a socket, and cushions pushed out of shape by use"
|
|
@@ -10686,7 +10689,7 @@ var MOOD_ANCHORS = {
|
|
|
10686
10689
|
"Interior at low overall light level with deeply saturated dark walls absorbing what light there is, small pools thrown by table lamps, and the ceiling lost in shadow above"
|
|
10687
10690
|
],
|
|
10688
10691
|
playful: [
|
|
10689
|
-
"Interior with strong
|
|
10692
|
+
"Interior with strong color applied to a structural element, a form that serves no function, seats that deliberately do not match, and objects arranged to make a visual joke"
|
|
10690
10693
|
],
|
|
10691
10694
|
"quiet-luxury": [
|
|
10692
10695
|
// A MAGNET IN ITS FIRST DRAFT, and worth recording why. It listed figured stone, grain-matched
|
|
@@ -10735,7 +10738,7 @@ var PERIOD_ANCHORS = {
|
|
|
10735
10738
|
"Interior with a curved metal casement set into rendered wall, a tiled fireplace surround, a picture rail in a semi-detached plan, and parquet laid in block"
|
|
10736
10739
|
],
|
|
10737
10740
|
"late-century": [
|
|
10738
|
-
"Interior in a converted industrial shell with services run exposed overhead, structural steel left visible and painted, and applied classical quotation set against it in strong flat
|
|
10741
|
+
"Interior in a converted industrial shell with services run exposed overhead, structural steel left visible and painted, and applied classical quotation set against it in strong flat color"
|
|
10739
10742
|
],
|
|
10740
10743
|
medieval: [
|
|
10741
10744
|
"Interior carried on load-bearing masonry and an irregular timber frame, openings small against the mass of wall, a stone floor worn hollow, and the roof structure open to view"
|
|
@@ -10773,7 +10776,7 @@ var PLACE_ANCHORS = {
|
|
|
10773
10776
|
"Bleached and salt-worn timber, blue worked against white, rattan and rope, and light arriving upward off water"
|
|
10774
10777
|
],
|
|
10775
10778
|
cotswolds: [
|
|
10776
|
-
"Honey-
|
|
10779
|
+
"Honey-colored oolitic limestone laid in courses, mullioned windows with leaded lights, a steep roof in graded stone slate, and beamed ceilings low enough to duck under"
|
|
10777
10780
|
],
|
|
10778
10781
|
desert: [
|
|
10779
10782
|
"Thermal mass with few and small openings placed away from the sun, earth-toned ground running to the building with no planted break, and shadow used as the only relief"
|
|
@@ -10825,7 +10828,7 @@ var PLACE_ANCHORS = {
|
|
|
10825
10828
|
"Ochre render over rubble stone, cypress standing against the skyline, large-format terracotta tile underfoot, and chestnut beams carrying the floor above"
|
|
10826
10829
|
],
|
|
10827
10830
|
urban: [
|
|
10828
|
-
"Continuous street frontage with a party wall to each side, the building
|
|
10831
|
+
"Continuous street frontage with a party wall to each side, the building meaning as one of an unbroken run, and the pavement immediately at the door"
|
|
10829
10832
|
],
|
|
10830
10833
|
waterfront: [
|
|
10831
10834
|
// WRITTEN TIGHT ON PURPOSE. The first draft said only "water at the window", and a bare query
|
|
@@ -11114,7 +11117,7 @@ var GATHERING_ANCHORS = {
|
|
|
11114
11117
|
"A pool or table-tennis table taking the centre with clearance walked around it, cues racked on the wall, a scoreboard, and low bench seating pushed back to the edges"
|
|
11115
11118
|
],
|
|
11116
11119
|
"library-lounge": [
|
|
11117
|
-
"The soft end of a public library: strangers
|
|
11120
|
+
"The soft end of a public library: strangers meaning in facing armchairs, a periodicals rack, a returns trolley parked at the edge of the carpet, and shelving running away behind the seating"
|
|
11118
11121
|
],
|
|
11119
11122
|
"living-room": [
|
|
11120
11123
|
"A sofa and armchairs turned toward a fireplace or a window, a coffee table between them with books and a remote on it, a large rug anchoring the group and lamps at the corners"
|
|
@@ -11428,7 +11431,7 @@ var SLEEPING_ANCHORS = {
|
|
|
11428
11431
|
"A bed made up flat and unslept-in, empty hanging space in the wardrobe, a folded towel set out at the foot, a bedside carafe, and nothing personal on any surface"
|
|
11429
11432
|
],
|
|
11430
11433
|
"hotel-room": [
|
|
11431
|
-
"A made bed with a runner across the foot, matched side tables and
|
|
11434
|
+
"A made bed with a runner across the foot, matched side tables and meaning lights either side, a luggage bench, a folder and a card key on the desk, blackout curtains drawn back"
|
|
11432
11435
|
],
|
|
11433
11436
|
nursery: [
|
|
11434
11437
|
"A cot with a mobile turning above it, a changing surface with a stack of folded muslins, soft flooring, low open baskets of toys, and a blackout blind at the window"
|
|
@@ -11545,7 +11548,7 @@ var STYLE_ANCHORS = {
|
|
|
11545
11548
|
"Brutalist interior with board-marked in-situ concrete left as struck, heavy monolithic massing, deep window reveals, exposed services, raw unfinished surfaces treated as the finish"
|
|
11546
11549
|
],
|
|
11547
11550
|
constructivism: [
|
|
11548
|
-
"Constructivist interior with dynamic diagonal composition, exposed structural drama, primary
|
|
11551
|
+
"Constructivist interior with dynamic diagonal composition, exposed structural drama, primary color on structural members, industrial glazing, early Soviet avant-garde geometry"
|
|
11549
11552
|
],
|
|
11550
11553
|
contemporary: [
|
|
11551
11554
|
"Contemporary interior with clean unornamented lines, flush cabinetry, large-format tile, neutral palette with a single accent, recessed lighting, current rather than period-referencing"
|
|
@@ -11572,7 +11575,7 @@ var STYLE_ANCHORS = {
|
|
|
11572
11575
|
"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"
|
|
11573
11576
|
],
|
|
11574
11577
|
maximalism: [
|
|
11575
|
-
"Bold maximalist interior with rich
|
|
11578
|
+
"Bold maximalist interior with rich colors, statement art, mixed patterns, velvet upholstery, lacquered surfaces, decorative objects, gallery walls, patterned rugs, brass accents, eclectic furniture mixing periods and styles"
|
|
11576
11579
|
],
|
|
11577
11580
|
"mid-century-modern": [
|
|
11578
11581
|
"Mid-century modern interior with teak and walnut furniture, Eames chairs, organic curves, warm wood panelling, terrazzo floors, statement pendant lights, Scandinavian influence, bold geometric textiles, open shelving, vintage design classics"
|
|
@@ -11594,7 +11597,7 @@ var STYLE_ANCHORS = {
|
|
|
11594
11597
|
"Parametric interior with continuously varied surfaces, ruled geometry, seamless composite panelling, no repeated module, form generated by rule rather than composed element by element"
|
|
11595
11598
|
],
|
|
11596
11599
|
postmodernism: [
|
|
11597
|
-
"Postmodern interior with historical quotation used knowingly, oversized classical mouldings in unexpected
|
|
11600
|
+
"Postmodern interior with historical quotation used knowingly, oversized classical mouldings in unexpected color, laminate and terrazzo, split pediments, ornament readmitted as commentary"
|
|
11598
11601
|
],
|
|
11599
11602
|
rationalism: [
|
|
11600
11603
|
"Rationalist interior with strict geometric order, typological clarity, travertine and plaster, repeated square openings, Italian interwar and Tendenza discipline"
|
|
@@ -11607,7 +11610,7 @@ var STYLE_ANCHORS = {
|
|
|
11607
11610
|
"Classic tailored interior with panelled walls, restrained mouldings, symmetrical furniture arrangement, quiet pattern, nothing improvised"
|
|
11608
11611
|
],
|
|
11609
11612
|
transitional: [
|
|
11610
|
-
"Transitional interior with period silhouettes stripped of ornament, a shaker-fronted kitchen in a flat
|
|
11613
|
+
"Transitional interior with period silhouettes stripped of ornament, a shaker-fronted kitchen in a flat color, classical proportion in contemporary materials, the deliberate midpoint between traditional and contemporary"
|
|
11611
11614
|
],
|
|
11612
11615
|
vernacular: [
|
|
11613
11616
|
"Vernacular building made from what the place supplies, local stone or timber, roof pitch set by the local weather, details carried by regional trade practice rather than by drawing"
|
|
@@ -11880,7 +11883,7 @@ var AXES = [
|
|
|
11880
11883
|
{ label: "Character", slug: "character", terms: PALETTE_CHARACTER_TERMS }
|
|
11881
11884
|
],
|
|
11882
11885
|
label: "Palette",
|
|
11883
|
-
question: "What
|
|
11886
|
+
question: "What color is it?",
|
|
11884
11887
|
slug: "palette",
|
|
11885
11888
|
status: "authored"
|
|
11886
11889
|
},
|
|
@@ -11896,7 +11899,7 @@ var AXES = [
|
|
|
11896
11899
|
status: "authored"
|
|
11897
11900
|
},
|
|
11898
11901
|
{
|
|
11899
|
-
boundary: "Daylight is the natural light a space receives and the direction it comes from. Aspect is compass-literal and says nothing about the sun: which side is bright depends on the hemisphere, and that consequence is a separate claim on Light. It is not Palette, which is the
|
|
11902
|
+
boundary: "Daylight is the natural light a space receives and the direction it comes from. Aspect is compass-literal and says nothing about the sun: which side is bright depends on the hemisphere, and that consequence is a separate claim on Light. It is not Palette, which is the color of what is in the room rather than the light falling on it; not Mood, where airy and moody are outcomes a scheme achieves rather than conditions a room has; not Element, which holds the windows, rooflights and luminaires themselves, and artificial lighting is never recorded here; and not Place, which says where a building stands rather than which way a room looks.",
|
|
11900
11903
|
facets: [
|
|
11901
11904
|
{
|
|
11902
11905
|
governance: TAX48_AUTHORED_GOVERNANCE,
|
|
@@ -11918,7 +11921,7 @@ var AXES = [
|
|
|
11918
11921
|
status: "authored"
|
|
11919
11922
|
},
|
|
11920
11923
|
{
|
|
11921
|
-
boundary: "Season is the time of year a scheme is designed for or evokes, reached by `evokes` like Place and Period are. It is not Period, which is a date range a season never has; not Palette, which carries the
|
|
11924
|
+
boundary: "Season is the time of year a scheme is designed for or evokes, reached by `evokes` like Place and Period are. It is not Period, which is a date range a season never has; not Palette, which carries the colors a seasonal scheme happens to choose; and not Daylight, which records the light a room receives rather than the calendar a scheme refers to.",
|
|
11922
11925
|
facets: single("season", "Season", SEASON_TERMS, TAX48_AUTHORED_GOVERNANCE),
|
|
11923
11926
|
governance: TAX48_AUTHORED_GOVERNANCE,
|
|
11924
11927
|
label: "Season",
|
|
@@ -11961,7 +11964,7 @@ var AXES = [
|
|
|
11961
11964
|
status: "declared"
|
|
11962
11965
|
},
|
|
11963
11966
|
{
|
|
11964
|
-
boundary: "How much is going on on the surface: pattern incidence, applied ornament, layering, and the restraint-to-maximalism range. It is not PALETTE, which carries how
|
|
11967
|
+
boundary: "How much is going on on the surface: pattern incidence, applied ornament, layering, and the restraint-to-maximalism range. It is not PALETTE, which carries how color behaves rather than how much incident there is, and it is not STYLE, though several style terms are largely density claims wearing an idiom's name.",
|
|
11965
11968
|
facets: [],
|
|
11966
11969
|
gap: "Identified after the fact, by the axis critique of 21 August 2026, and it is the one real gap that review found. The source vocabularies keep asking this question and no axis here answers it: a rendering pipeline's `patterned`, a materials-retrieval system's `playful_graphic` and `decorative_traditional`, a furnishings retailer's `Eclectic`, and an editorial image library's `Modern Maximalism` against `Warm Minimalism` - a pair that differs chiefly on density and barely on anything else. The materials-retrieval system already carries `ms_pattern_density` at MATERIAL scale, which is the obvious seed, but the room-scale question is not the same one: a room of quiet materials can still be dense with incident. Until this exists, `maximalism` is filed as a style, which flatters it.",
|
|
11967
11970
|
label: "Density",
|
|
@@ -12014,7 +12017,7 @@ var resolveReference = (reference) => INDEX.byKey.get(canonicalKey(reference));
|
|
|
12014
12017
|
// src/v1.ts
|
|
12015
12018
|
var TAXONOMY_BASE_URI = "https://taxonomy.materialinstruments.com";
|
|
12016
12019
|
var TAXONOMY_SNAPSHOT = "2026-10-02";
|
|
12017
|
-
var TAXONOMY_VERSION = "
|
|
12020
|
+
var TAXONOMY_VERSION = "2.0.0";
|
|
12018
12021
|
var PUBLISHED_V1_BASELINE = "2026-08-30";
|
|
12019
12022
|
var TAX45_REVIEW_SNAPSHOT = "2026-08-31";
|
|
12020
12023
|
var LIMESTONE_INTRODUCED = "2026-09-01";
|
|
@@ -12291,16 +12294,16 @@ var colorScope = (identifier, referenceKind) => ({
|
|
|
12291
12294
|
});
|
|
12292
12295
|
var WALNUT_MATERIAL = {
|
|
12293
12296
|
authority: "taxonomy",
|
|
12294
|
-
|
|
12297
|
+
meaningPriority: "primary",
|
|
12295
12298
|
uri: `${TAXONOMY_BASE_URI}/id/material/walnut`
|
|
12296
12299
|
};
|
|
12297
12300
|
var WALNUT_COLOUR = {
|
|
12298
12301
|
...colorScope("walnut", NAMED_COLOR_REFERENCE_KIND),
|
|
12299
|
-
|
|
12302
|
+
meaningPriority: "secondary"
|
|
12300
12303
|
};
|
|
12301
|
-
var ordered = (path,
|
|
12304
|
+
var ordered = (path, meaningPriority) => ({
|
|
12302
12305
|
authority: "taxonomy",
|
|
12303
|
-
|
|
12306
|
+
meaningPriority,
|
|
12304
12307
|
uri: `${TAXONOMY_BASE_URI}/id/${path}`
|
|
12305
12308
|
});
|
|
12306
12309
|
var ENGINEERED_QUARTZ_SURFACING = ordered(
|
|
@@ -12311,14 +12314,14 @@ var QUARTZ_MINERAL = ordered("material/quartz", "secondary");
|
|
|
12311
12314
|
var MELAMINE_BOARD = ordered("material/melamine-faced-board", "primary");
|
|
12312
12315
|
var MELAMINE_RESIN = ordered("material/melamine", "secondary");
|
|
12313
12316
|
var HIERARCHY_REVIEW_DATE = "2026-09-22";
|
|
12314
|
-
var
|
|
12317
|
+
var MEANING_PRIORITY_EVIDENCE = "stored material values in a materials-retrieval system (src-05)";
|
|
12315
12318
|
var HIERARCHY_REVIEW_LIFECYCLE = {
|
|
12316
12319
|
introducedAt: HIERARCHY_REVIEW_DATE,
|
|
12317
12320
|
reviewedAt: HIERARCHY_REVIEW_DATE,
|
|
12318
12321
|
status: "active"
|
|
12319
12322
|
};
|
|
12320
|
-
var AMBIGUITY_GOVERNANCE = "Taxonomy preserves the governed
|
|
12321
|
-
var
|
|
12323
|
+
var AMBIGUITY_GOVERNANCE = "Taxonomy preserves the governed meanings without assigning a default, meaning priority, contextual preference, or consumer route.";
|
|
12324
|
+
var MEANING_PRIORITY_GOVERNANCE = "The two meanings are deliberately separate; the default records trade usage and does not merge the concepts.";
|
|
12322
12325
|
var TAX_1_9_0_DATE = "2026-09-27";
|
|
12323
12326
|
var TAXONOMY_SNAPSHOT_LIFECYCLE = {
|
|
12324
12327
|
introducedAt: TAX_1_9_0_DATE,
|
|
@@ -12351,7 +12354,7 @@ var reviewedTaxonomy = (path) => ({
|
|
|
12351
12354
|
authority: "taxonomy",
|
|
12352
12355
|
uri: `${TAXONOMY_BASE_URI}/id/${path}`
|
|
12353
12356
|
});
|
|
12354
|
-
var referencedCrossover = (phrase, taxonomyPath, colorScopeIdentifier, explanation, definitionSource, introducedAt = HIERARCHY_REVIEW_DATE,
|
|
12357
|
+
var referencedCrossover = (phrase, taxonomyPath, colorScopeIdentifier, explanation, definitionSource, introducedAt = HIERARCHY_REVIEW_DATE, additionalMeanings = []) => ({
|
|
12355
12358
|
explanation,
|
|
12356
12359
|
governance: lexicalGovernance(
|
|
12357
12360
|
AMBIGUITY_GOVERNANCE,
|
|
@@ -12362,16 +12365,16 @@ var referencedCrossover = (phrase, taxonomyPath, colorScopeIdentifier, explanati
|
|
|
12362
12365
|
},
|
|
12363
12366
|
{ introducedAt, reviewedAt: HIERARCHY_REVIEW_DATE, status: "active" }
|
|
12364
12367
|
),
|
|
12365
|
-
|
|
12366
|
-
phrase,
|
|
12367
|
-
readings: [
|
|
12368
|
+
meanings: [
|
|
12368
12369
|
reviewedTaxonomy(taxonomyPath),
|
|
12369
12370
|
colorScope(colorScopeIdentifier, NAMED_COLOR_REFERENCE_KIND),
|
|
12370
|
-
...
|
|
12371
|
-
]
|
|
12371
|
+
...additionalMeanings
|
|
12372
|
+
],
|
|
12373
|
+
outcome: "ambiguous",
|
|
12374
|
+
phrase
|
|
12372
12375
|
});
|
|
12373
12376
|
var WOOD_HANDBOOK5 = "USDA Wood Handbook (2021), chapter 2";
|
|
12374
|
-
var colorscope940Crossover = (phrase, taxonomyPath, colorScopeIdentifier, explanation, definitionSource,
|
|
12377
|
+
var colorscope940Crossover = (phrase, taxonomyPath, colorScopeIdentifier, explanation, definitionSource, additionalMeanings = []) => ({
|
|
12375
12378
|
explanation,
|
|
12376
12379
|
governance: lexicalGovernance(
|
|
12377
12380
|
AMBIGUITY_GOVERNANCE,
|
|
@@ -12386,39 +12389,39 @@ var colorscope940Crossover = (phrase, taxonomyPath, colorScopeIdentifier, explan
|
|
|
12386
12389
|
status: "active"
|
|
12387
12390
|
}
|
|
12388
12391
|
),
|
|
12389
|
-
|
|
12390
|
-
phrase,
|
|
12391
|
-
readings: [
|
|
12392
|
+
meanings: [
|
|
12392
12393
|
reviewedTaxonomy(taxonomyPath),
|
|
12393
12394
|
colorScope(colorScopeIdentifier, NAMED_COLOR_REFERENCE_KIND),
|
|
12394
|
-
...
|
|
12395
|
-
]
|
|
12395
|
+
...additionalMeanings
|
|
12396
|
+
],
|
|
12397
|
+
outcome: "ambiguous",
|
|
12398
|
+
phrase
|
|
12396
12399
|
});
|
|
12397
12400
|
var crossoverAmbiguity = (phrase, taxonomyUri, colorScopeIdentifier, explanation, source, additionalTaxonomyUris = []) => ({
|
|
12398
12401
|
explanation,
|
|
12399
12402
|
governance: lexicalGovernance(
|
|
12400
|
-
"Taxonomy preserves the evidenced
|
|
12403
|
+
"Taxonomy preserves the evidenced meanings without assigning a default, meaning priority, contextual preference, or consumer route.",
|
|
12401
12404
|
{
|
|
12402
12405
|
basis: "evidenced",
|
|
12403
12406
|
snapshot: PUBLISHED_V1_BASELINE,
|
|
12404
12407
|
source
|
|
12405
12408
|
}
|
|
12406
12409
|
),
|
|
12407
|
-
|
|
12408
|
-
phrase,
|
|
12409
|
-
readings: [
|
|
12410
|
+
meanings: [
|
|
12410
12411
|
{ authority: "taxonomy", uri: taxonomyUri },
|
|
12411
12412
|
colorScope(colorScopeIdentifier, NAMED_COLOR_REFERENCE_KIND),
|
|
12412
12413
|
...additionalTaxonomyUris.map((uri) => ({
|
|
12413
12414
|
authority: "taxonomy",
|
|
12414
12415
|
uri
|
|
12415
12416
|
}))
|
|
12416
|
-
]
|
|
12417
|
+
],
|
|
12418
|
+
outcome: "ambiguous",
|
|
12419
|
+
phrase
|
|
12417
12420
|
});
|
|
12418
12421
|
var crossoverEquivalent = (phrase, taxonomyUri, explanation, source, snapshot = PUBLISHED_V1_BASELINE, lifecycle = lifecycleFor()) => ({
|
|
12419
12422
|
explanation,
|
|
12420
12423
|
governance: lexicalGovernance(
|
|
12421
|
-
"Taxonomy records the evidenced material
|
|
12424
|
+
"Taxonomy records the evidenced material meaning without assigning a consumer route.",
|
|
12422
12425
|
{
|
|
12423
12426
|
basis: "evidenced",
|
|
12424
12427
|
snapshot,
|
|
@@ -12430,8 +12433,8 @@ var crossoverEquivalent = (phrase, taxonomyUri, explanation, source, snapshot =
|
|
|
12430
12433
|
phrase,
|
|
12431
12434
|
target: { authority: "taxonomy", uri: taxonomyUri }
|
|
12432
12435
|
});
|
|
12433
|
-
var crossoverTaxonomyAmbiguity = (phrase,
|
|
12434
|
-
const [first, second] =
|
|
12436
|
+
var crossoverTaxonomyAmbiguity = (phrase, meanings, explanation, source, snapshot = PUBLISHED_V1_BASELINE, lifecycle = lifecycleFor(), basis = "evidenced") => {
|
|
12437
|
+
const [first, second] = meanings;
|
|
12435
12438
|
return {
|
|
12436
12439
|
explanation,
|
|
12437
12440
|
governance: lexicalGovernance(
|
|
@@ -12443,22 +12446,45 @@ var crossoverTaxonomyAmbiguity = (phrase, readings, explanation, source, snapsho
|
|
|
12443
12446
|
},
|
|
12444
12447
|
lifecycle
|
|
12445
12448
|
),
|
|
12446
|
-
|
|
12447
|
-
phrase,
|
|
12448
|
-
readings: [
|
|
12449
|
+
meanings: [
|
|
12449
12450
|
{ authority: "taxonomy", uri: first },
|
|
12450
12451
|
{ authority: "taxonomy", uri: second }
|
|
12451
|
-
]
|
|
12452
|
+
],
|
|
12453
|
+
outcome: "ambiguous",
|
|
12454
|
+
phrase
|
|
12452
12455
|
};
|
|
12453
12456
|
};
|
|
12454
|
-
var
|
|
12457
|
+
var MG2620_LEXICAL_REVIEW_DATE = "2026-10-10";
|
|
12458
|
+
var AUTHORED_PHRASE_ENTRIES = [
|
|
12459
|
+
{
|
|
12460
|
+
explanation: "Matt is the British-English spelling of matte for surface sheen. Qualifiers such as semi-matt and full-matt retain their own meanings; this entry does not strip them.",
|
|
12461
|
+
governance: lexicalGovernance(
|
|
12462
|
+
"Primary supplier usage supports spelling equivalence, not a measured gloss threshold or a consumer proposal rate.",
|
|
12463
|
+
{
|
|
12464
|
+
basis: "referenced",
|
|
12465
|
+
snapshot: MG2620_LEXICAL_REVIEW_DATE,
|
|
12466
|
+
source: "MG-2620 lexical review; Marazzi matt surface finish, https://www.marazzigroup.com/blog/are-glossy-or-matt-coverings-better-for-your-bathroom-we-explain-the-benefits-and-differences-and-provide-useful-tips/; Tikkurila matt/Matte finish usage, https://tikkurila.com/how-choose-right-paint-your-interior-walls-and-ceilings"
|
|
12467
|
+
},
|
|
12468
|
+
{
|
|
12469
|
+
introducedAt: MG2620_LEXICAL_REVIEW_DATE,
|
|
12470
|
+
reviewedAt: MG2620_LEXICAL_REVIEW_DATE,
|
|
12471
|
+
status: "active"
|
|
12472
|
+
}
|
|
12473
|
+
),
|
|
12474
|
+
outcome: "equivalent",
|
|
12475
|
+
phrase: "matt",
|
|
12476
|
+
target: {
|
|
12477
|
+
authority: "taxonomy",
|
|
12478
|
+
uri: `${TAXONOMY_BASE_URI}/id/finish/sheen/matte`
|
|
12479
|
+
}
|
|
12480
|
+
},
|
|
12455
12481
|
crossoverTaxonomyAmbiguity(
|
|
12456
12482
|
"herringbone or chevron",
|
|
12457
12483
|
[
|
|
12458
12484
|
`${TAXONOMY_BASE_URI}/id/pattern/type/herringbone`,
|
|
12459
12485
|
`${TAXONOMY_BASE_URI}/id/pattern/type/chevron`
|
|
12460
12486
|
],
|
|
12461
|
-
"The former combined pattern label names two distinct motif
|
|
12487
|
+
"The former combined pattern label names two distinct motif meanings. It does not identify an installation layout or physical unit shape without separate evidence.",
|
|
12462
12488
|
"Linear TAX-45 reviewed implementation contract",
|
|
12463
12489
|
TAX45_REVIEW_SNAPSHOT,
|
|
12464
12490
|
{
|
|
@@ -12474,7 +12500,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12474
12500
|
`${TAXONOMY_BASE_URI}/id/pattern/type/herringbone`,
|
|
12475
12501
|
`${TAXONOMY_BASE_URI}/id/pattern/type/chevron`
|
|
12476
12502
|
],
|
|
12477
|
-
"The furnishings retailer's compound phrase did not record which of the two distinct motif
|
|
12503
|
+
"The furnishings retailer's compound phrase did not record which of the two distinct motif meanings was intended.",
|
|
12478
12504
|
`${RETAIL_PATTERN_SOURCE}, reconciled by Linear TAX-45`,
|
|
12479
12505
|
TAX45_REVIEW_SNAPSHOT,
|
|
12480
12506
|
{
|
|
@@ -12490,7 +12516,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12490
12516
|
`${TAXONOMY_BASE_URI}/id/product-category/mosaic-tile`,
|
|
12491
12517
|
`${TAXONOMY_BASE_URI}/id/format/mosaic`
|
|
12492
12518
|
],
|
|
12493
|
-
"Mosaic can name a purchasable mosaic-tile product or the small-piece supply format; it is neither inherently a pattern nor a substance. Consumers must union any exact ColorScope named-paint
|
|
12519
|
+
"Mosaic can name a purchasable mosaic-tile product or the small-piece supply format; it is neither inherently a pattern nor a substance. Consumers must union any exact ColorScope named-paint meaning with these domain meanings rather than let an exact Taxonomy phrase shadow the external identity.",
|
|
12494
12520
|
`${searchCorpusEvidence("mosaic")}; Uniclass Pr_35_93_96_53 Mosaic tiles; consumer authority-union boundary reviewed 2026-08-31`,
|
|
12495
12521
|
SEARCH_CORPUS_SNAPSHOT,
|
|
12496
12522
|
{
|
|
@@ -12500,9 +12526,9 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12500
12526
|
}
|
|
12501
12527
|
),
|
|
12502
12528
|
{
|
|
12503
|
-
explanation: "Blue is a ColorScope
|
|
12529
|
+
explanation: "Blue is a ColorScope color-family meaning; Taxonomy references that authority rather than minting a rival color identity.",
|
|
12504
12530
|
governance: lexicalGovernance(
|
|
12505
|
-
"The ColorScope family is the single governed
|
|
12531
|
+
"The ColorScope family is the single governed meaning of the unqualified color word.",
|
|
12506
12532
|
{
|
|
12507
12533
|
basis: "vendored",
|
|
12508
12534
|
snapshot: PUBLISHED_V1_BASELINE,
|
|
@@ -12517,14 +12543,14 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12517
12543
|
"alabaster",
|
|
12518
12544
|
`${TAXONOMY_BASE_URI}/id/material/alabaster`,
|
|
12519
12545
|
"alabaster",
|
|
12520
|
-
"Alabaster can name decorative gypsum stone or the ColorScope named
|
|
12521
|
-
`${crossoverSource("alabaster")}; @instruments/colorscope 9.4.0 id "alabaster", family cream, matching the retired "cream-soft-cream-white"
|
|
12546
|
+
"Alabaster can name decorative gypsum stone or the ColorScope named color Alabaster; neither meaning establishes the other.",
|
|
12547
|
+
`${crossoverSource("alabaster")}; @instruments/colorscope 9.4.0 id "alabaster", family cream, matching the retired "cream-soft-cream-white" meaning's cream family`
|
|
12522
12548
|
),
|
|
12523
12549
|
crossoverAmbiguity(
|
|
12524
12550
|
"brass",
|
|
12525
12551
|
`${TAXONOMY_BASE_URI}/id/material/brass`,
|
|
12526
12552
|
"brass",
|
|
12527
|
-
"Brass can name a copper-zinc alloy, an exposed applied brass finish, or a ColorScope named
|
|
12553
|
+
"Brass can name a copper-zinc alloy, an exposed applied brass finish, or a ColorScope named color; none establishes either of the others.",
|
|
12528
12554
|
crossoverSource("brass"),
|
|
12529
12555
|
[`${TAXONOMY_BASE_URI}/id/finish/treatment/brass`]
|
|
12530
12556
|
),
|
|
@@ -12532,105 +12558,105 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12532
12558
|
"bronze",
|
|
12533
12559
|
`${TAXONOMY_BASE_URI}/id/material/bronze`,
|
|
12534
12560
|
"bronze",
|
|
12535
|
-
"Bronze can name a copper-alloy family or a ColorScope named
|
|
12561
|
+
"Bronze can name a copper-alloy family or a ColorScope named color; the unmodified word does not identify a specific composition.",
|
|
12536
12562
|
crossoverSource("bronze")
|
|
12537
12563
|
),
|
|
12538
12564
|
crossoverAmbiguity(
|
|
12539
12565
|
"chrome",
|
|
12540
12566
|
`${TAXONOMY_BASE_URI}/id/finish/treatment/chrome`,
|
|
12541
12567
|
"chrome",
|
|
12542
|
-
"Chrome can name a metallic chromium coating or a ColorScope named
|
|
12568
|
+
"Chrome can name a metallic chromium coating or a ColorScope named color; it is not silently normalized to chromium as a material.",
|
|
12543
12569
|
crossoverSource("chrome")
|
|
12544
12570
|
),
|
|
12545
12571
|
crossoverAmbiguity(
|
|
12546
12572
|
"cherry",
|
|
12547
12573
|
`${TAXONOMY_BASE_URI}/id/material/cherry`,
|
|
12548
12574
|
"cherry",
|
|
12549
|
-
"Cherry can name timber or the ColorScope named
|
|
12550
|
-
`${crossoverSource("cherry")}; @instruments/colorscope 9.4.0 id "cherry", family red, matching the retired "red-warm-cherry-red"
|
|
12575
|
+
"Cherry can name timber or the ColorScope named color Cherry; the common name does not prove species or color.",
|
|
12576
|
+
`${crossoverSource("cherry")}; @instruments/colorscope 9.4.0 id "cherry", family red, matching the retired "red-warm-cherry-red" meaning's red family`
|
|
12551
12577
|
),
|
|
12552
12578
|
crossoverAmbiguity(
|
|
12553
12579
|
"chestnut",
|
|
12554
12580
|
`${TAXONOMY_BASE_URI}/id/material/chestnut`,
|
|
12555
12581
|
"chestnut",
|
|
12556
|
-
"Chestnut can name timber or a ColorScope named
|
|
12582
|
+
"Chestnut can name timber or a ColorScope named color; neither meaning proves species, construction, or appearance.",
|
|
12557
12583
|
crossoverSource("chestnut")
|
|
12558
12584
|
),
|
|
12559
12585
|
crossoverAmbiguity(
|
|
12560
12586
|
"clay",
|
|
12561
12587
|
`${TAXONOMY_BASE_URI}/id/material/clay`,
|
|
12562
12588
|
"clay",
|
|
12563
|
-
"Clay can name a fine-grained earthy material or a ColorScope named
|
|
12589
|
+
"Clay can name a fine-grained earthy material or a ColorScope named color; the word alone proves neither firing nor appearance.",
|
|
12564
12590
|
crossoverSource("clay")
|
|
12565
12591
|
),
|
|
12566
12592
|
crossoverAmbiguity(
|
|
12567
12593
|
"copper",
|
|
12568
12594
|
`${TAXONOMY_BASE_URI}/id/material/copper`,
|
|
12569
12595
|
"copper",
|
|
12570
|
-
"Copper can name a metal or a ColorScope named
|
|
12596
|
+
"Copper can name a metal or a ColorScope named color; color resemblance does not establish copper content.",
|
|
12571
12597
|
crossoverSource("copper")
|
|
12572
12598
|
),
|
|
12573
12599
|
crossoverAmbiguity(
|
|
12574
12600
|
"denim",
|
|
12575
12601
|
`${TAXONOMY_BASE_URI}/id/material/denim`,
|
|
12576
12602
|
"denim",
|
|
12577
|
-
"Denim can name a woven fabric construction or a ColorScope named
|
|
12603
|
+
"Denim can name a woven fabric construction or a ColorScope named color; denim need not be blue.",
|
|
12578
12604
|
crossoverSource("denim")
|
|
12579
12605
|
),
|
|
12580
12606
|
crossoverAmbiguity(
|
|
12581
12607
|
"ebony",
|
|
12582
12608
|
`${TAXONOMY_BASE_URI}/id/material/ebony`,
|
|
12583
12609
|
"ebony",
|
|
12584
|
-
"Ebony can name traded timber or a ColorScope named
|
|
12610
|
+
"Ebony can name traded timber or a ColorScope named color; the trade name does not prove botanical identity or black color.",
|
|
12585
12611
|
crossoverSource("ebony")
|
|
12586
12612
|
),
|
|
12587
12613
|
crossoverAmbiguity(
|
|
12588
12614
|
"gold",
|
|
12589
12615
|
`${TAXONOMY_BASE_URI}/id/material/gold`,
|
|
12590
12616
|
"gold",
|
|
12591
|
-
"Gold can name the metallic element or a ColorScope named
|
|
12617
|
+
"Gold can name the metallic element or a ColorScope named color; appearance does not establish composition or coating.",
|
|
12592
12618
|
crossoverSource("gold")
|
|
12593
12619
|
),
|
|
12594
12620
|
crossoverAmbiguity(
|
|
12595
12621
|
"gunmetal",
|
|
12596
12622
|
`${TAXONOMY_BASE_URI}/id/material/gunmetal`,
|
|
12597
12623
|
"gunmetal",
|
|
12598
|
-
"Gunmetal can name a casting-alloy family or a ColorScope named
|
|
12624
|
+
"Gunmetal can name a casting-alloy family or a ColorScope named color; grade and appearance remain separate claims.",
|
|
12599
12625
|
crossoverSource("gunmetal")
|
|
12600
12626
|
),
|
|
12601
12627
|
crossoverAmbiguity(
|
|
12602
12628
|
"iron",
|
|
12603
12629
|
`${TAXONOMY_BASE_URI}/id/material/iron`,
|
|
12604
12630
|
"iron",
|
|
12605
|
-
"Iron can name the metallic element or a ColorScope named
|
|
12631
|
+
"Iron can name the metallic element or a ColorScope named color; the bare word does not settle material form or appearance.",
|
|
12606
12632
|
crossoverSource("iron")
|
|
12607
12633
|
),
|
|
12608
12634
|
crossoverAmbiguity(
|
|
12609
12635
|
"jade",
|
|
12610
12636
|
`${TAXONOMY_BASE_URI}/id/material/jade`,
|
|
12611
12637
|
"jade",
|
|
12612
|
-
"Jade can name an umbrella gem material or a ColorScope named
|
|
12638
|
+
"Jade can name an umbrella gem material or a ColorScope named color; jade is not one mineral and need not be green.",
|
|
12613
12639
|
crossoverSource("jade")
|
|
12614
12640
|
),
|
|
12615
12641
|
crossoverAmbiguity(
|
|
12616
12642
|
"linen",
|
|
12617
12643
|
`${TAXONOMY_BASE_URI}/id/material/linen`,
|
|
12618
12644
|
"linen",
|
|
12619
|
-
"Linen can name a flax-derived material or a ColorScope named
|
|
12645
|
+
"Linen can name a flax-derived material or a ColorScope named color; color does not establish fibre composition.",
|
|
12620
12646
|
crossoverSource("linen")
|
|
12621
12647
|
),
|
|
12622
12648
|
crossoverAmbiguity(
|
|
12623
12649
|
"mahogany",
|
|
12624
12650
|
`${TAXONOMY_BASE_URI}/id/material/mahogany`,
|
|
12625
12651
|
"mahogany",
|
|
12626
|
-
"Mahogany can name commercially grouped timber or a ColorScope named
|
|
12652
|
+
"Mahogany can name commercially grouped timber or a ColorScope named color; neither meaning proves species or appearance.",
|
|
12627
12653
|
crossoverSource("mahogany")
|
|
12628
12654
|
),
|
|
12629
12655
|
crossoverAmbiguity(
|
|
12630
12656
|
"nickel",
|
|
12631
12657
|
`${TAXONOMY_BASE_URI}/id/material/nickel`,
|
|
12632
12658
|
"nickel",
|
|
12633
|
-
"Nickel can name a bulk metallic material, an electrodeposited finish, or a ColorScope named
|
|
12659
|
+
"Nickel can name a bulk metallic material, an electrodeposited finish, or a ColorScope named color; the bare word does not select among them.",
|
|
12634
12660
|
crossoverSource("nickel"),
|
|
12635
12661
|
[`${TAXONOMY_BASE_URI}/id/finish/treatment/nickel`]
|
|
12636
12662
|
),
|
|
@@ -12638,63 +12664,63 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12638
12664
|
"obsidian",
|
|
12639
12665
|
`${TAXONOMY_BASE_URI}/id/material/obsidian`,
|
|
12640
12666
|
"obsidian",
|
|
12641
|
-
"Obsidian can name volcanic glass or a ColorScope named
|
|
12667
|
+
"Obsidian can name volcanic glass or a ColorScope named color; the material is not necessarily black.",
|
|
12642
12668
|
crossoverSource("obsidian")
|
|
12643
12669
|
),
|
|
12644
12670
|
crossoverAmbiguity(
|
|
12645
12671
|
"onyx",
|
|
12646
12672
|
`${TAXONOMY_BASE_URI}/id/material/onyx`,
|
|
12647
12673
|
"onyx",
|
|
12648
|
-
"Onyx can name commercial architectural stone or a ColorScope named
|
|
12674
|
+
"Onyx can name commercial architectural stone or a ColorScope named color; architectural onyx is not necessarily black.",
|
|
12649
12675
|
crossoverSource("onyx")
|
|
12650
12676
|
),
|
|
12651
12677
|
crossoverAmbiguity(
|
|
12652
12678
|
"pewter",
|
|
12653
12679
|
`${TAXONOMY_BASE_URI}/id/material/pewter`,
|
|
12654
12680
|
"pewter",
|
|
12655
|
-
"Pewter can name a variable tin-alloy family or a ColorScope named
|
|
12681
|
+
"Pewter can name a variable tin-alloy family or a ColorScope named color; composition and appearance remain separate.",
|
|
12656
12682
|
crossoverSource("pewter")
|
|
12657
12683
|
),
|
|
12658
12684
|
crossoverAmbiguity(
|
|
12659
12685
|
"platinum",
|
|
12660
12686
|
`${TAXONOMY_BASE_URI}/id/material/platinum`,
|
|
12661
12687
|
"platinum",
|
|
12662
|
-
"Platinum can name a metal or a ColorScope named
|
|
12688
|
+
"Platinum can name a metal or a ColorScope named color; solid metal, plating, and appearance require separate evidence.",
|
|
12663
12689
|
crossoverSource("platinum")
|
|
12664
12690
|
),
|
|
12665
12691
|
crossoverAmbiguity(
|
|
12666
12692
|
"rosewood",
|
|
12667
12693
|
`${TAXONOMY_BASE_URI}/id/material/rosewood`,
|
|
12668
12694
|
"rosewood",
|
|
12669
|
-
"Rosewood can name traded timber or a ColorScope named
|
|
12695
|
+
"Rosewood can name traded timber or a ColorScope named color; species and appearance remain separate claims.",
|
|
12670
12696
|
crossoverSource("rosewood")
|
|
12671
12697
|
),
|
|
12672
12698
|
crossoverAmbiguity(
|
|
12673
12699
|
"silver",
|
|
12674
12700
|
`${TAXONOMY_BASE_URI}/id/material/silver`,
|
|
12675
12701
|
"silver",
|
|
12676
|
-
"Silver can name the metallic element or a ColorScope named
|
|
12702
|
+
"Silver can name the metallic element or a ColorScope named color; appearance does not establish elemental silver.",
|
|
12677
12703
|
crossoverSource("silver")
|
|
12678
12704
|
),
|
|
12679
12705
|
crossoverAmbiguity(
|
|
12680
12706
|
"slate",
|
|
12681
12707
|
`${TAXONOMY_BASE_URI}/id/material/slate`,
|
|
12682
12708
|
"slate-gray",
|
|
12683
|
-
"Slate can name dimension stone or the ColorScope named
|
|
12684
|
-
`${crossoverSource("slate")}; @instruments/colorscope 9.4.0 offers "slate-blue" (family blue) and "slate-gray" (family gray); "slate-gray" decided, matching the retired "gray-muted-slate"
|
|
12709
|
+
"Slate can name dimension stone or the ColorScope named color Slate Gray; neither meaning implies the other.",
|
|
12710
|
+
`${crossoverSource("slate")}; @instruments/colorscope 9.4.0 offers "slate-blue" (family blue) and "slate-gray" (family gray); "slate-gray" decided, matching the retired "gray-muted-slate" meaning's gray family`
|
|
12685
12711
|
),
|
|
12686
12712
|
crossoverAmbiguity(
|
|
12687
12713
|
"steel",
|
|
12688
12714
|
`${TAXONOMY_BASE_URI}/id/material/steel`,
|
|
12689
12715
|
"steel",
|
|
12690
|
-
"Steel can name an iron-carbon alloy family or a ColorScope named
|
|
12716
|
+
"Steel can name an iron-carbon alloy family or a ColorScope named color; appearance does not identify a steel grade.",
|
|
12691
12717
|
crossoverSource("steel")
|
|
12692
12718
|
),
|
|
12693
12719
|
crossoverAmbiguity(
|
|
12694
12720
|
"stone",
|
|
12695
12721
|
`${TAXONOMY_BASE_URI}/id/material/stone`,
|
|
12696
12722
|
"stone",
|
|
12697
|
-
"Stone can name a specific building material, a retrieval-oriented material family, or a ColorScope named
|
|
12723
|
+
"Stone can name a specific building material, a retrieval-oriented material family, or a ColorScope named color; none is a consumer route.",
|
|
12698
12724
|
crossoverSource("stone"),
|
|
12699
12725
|
[`${TAXONOMY_BASE_URI}/id/material-family/stone`]
|
|
12700
12726
|
),
|
|
@@ -12702,11 +12728,11 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12702
12728
|
"terracotta",
|
|
12703
12729
|
`${TAXONOMY_BASE_URI}/id/material/terracotta`,
|
|
12704
12730
|
"terracotta",
|
|
12705
|
-
"Terracotta can name a fired-clay material or a ColorScope named
|
|
12731
|
+
"Terracotta can name a fired-clay material or a ColorScope named color; firing and composition do not establish orange appearance.",
|
|
12706
12732
|
crossoverSource("terracotta")
|
|
12707
12733
|
),
|
|
12708
12734
|
{
|
|
12709
|
-
explanation: "Brick can name fired clay masonry material or a ColorScope named
|
|
12735
|
+
explanation: "Brick can name fired clay masonry material or a ColorScope named color; the material need not be red and the color is not a substance.",
|
|
12710
12736
|
governance: lexicalGovernance(
|
|
12711
12737
|
AMBIGUITY_GOVERNANCE,
|
|
12712
12738
|
{
|
|
@@ -12716,21 +12742,21 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12716
12742
|
},
|
|
12717
12743
|
REVIEW_LIFECYCLE
|
|
12718
12744
|
),
|
|
12719
|
-
|
|
12720
|
-
phrase: "brick",
|
|
12721
|
-
readings: [
|
|
12745
|
+
meanings: [
|
|
12722
12746
|
reviewedTaxonomy("material/brick"),
|
|
12723
12747
|
colorScope("brick", NAMED_COLOR_REFERENCE_KIND)
|
|
12724
|
-
]
|
|
12748
|
+
],
|
|
12749
|
+
outcome: "ambiguous",
|
|
12750
|
+
phrase: "brick"
|
|
12725
12751
|
},
|
|
12726
|
-
//
|
|
12727
|
-
// ColorScope names on 2026-09-22. No retrieval evidence orders either
|
|
12728
|
-
// both without a default or a
|
|
12752
|
+
// Color-material crossovers found by comparing every material label with the installed
|
|
12753
|
+
// ColorScope names on 2026-09-22. No retrieval evidence orders either meaning, so each keeps
|
|
12754
|
+
// both without a default or a meaningPriority, as brick does.
|
|
12729
12755
|
referencedCrossover(
|
|
12730
12756
|
"porcelain",
|
|
12731
12757
|
"material/porcelain",
|
|
12732
12758
|
"porcelain",
|
|
12733
|
-
"Porcelain can name a vitrified ceramic body or a ColorScope named
|
|
12759
|
+
"Porcelain can name a vitrified ceramic body or a ColorScope named color; the color does not establish the body.",
|
|
12734
12760
|
"ISO 13006:2018; ANSI A137.1",
|
|
12735
12761
|
PUBLISHED_V1_BASELINE
|
|
12736
12762
|
),
|
|
@@ -12738,7 +12764,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12738
12764
|
"sand",
|
|
12739
12765
|
"material/sand",
|
|
12740
12766
|
"sand",
|
|
12741
|
-
"Sand can name loose mineral grains, a ColorScope named
|
|
12767
|
+
"Sand can name loose mineral grains, a ColorScope named color, or the beige color family ColorScope lists it under; none implies another.",
|
|
12742
12768
|
"ISO 14688-1:2017",
|
|
12743
12769
|
PUBLISHED_V1_BASELINE,
|
|
12744
12770
|
[colorScope("beige", COLOR_FAMILY_REFERENCE_KIND)]
|
|
@@ -12747,223 +12773,223 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12747
12773
|
"camel",
|
|
12748
12774
|
"material/camel-hair",
|
|
12749
12775
|
"camel",
|
|
12750
|
-
"Camel can name hair from a camel or a ColorScope named
|
|
12776
|
+
"Camel can name hair from a camel or a ColorScope named color; the fibre need not be that color.",
|
|
12751
12777
|
"Regulation (EU) No 1007/2011 Annex I row 2"
|
|
12752
12778
|
),
|
|
12753
12779
|
referencedCrossover(
|
|
12754
12780
|
"ash",
|
|
12755
12781
|
"material/ash",
|
|
12756
12782
|
"ash",
|
|
12757
|
-
"Ash can name timber of the genus Fraxinus or the ColorScope named
|
|
12758
|
-
`USDA Wood Handbook (2021), chapter 2; @instruments/colorscope 9.4.0 id "ash", family gray, matching the retired "gray-light-ash-gray"
|
|
12783
|
+
"Ash can name timber of the genus Fraxinus or the ColorScope named color Ash; neither meaning implies the other.",
|
|
12784
|
+
`USDA Wood Handbook (2021), chapter 2; @instruments/colorscope 9.4.0 id "ash", family gray, matching the retired "gray-light-ash-gray" meaning's gray family`
|
|
12759
12785
|
),
|
|
12760
12786
|
referencedCrossover(
|
|
12761
12787
|
"eucalyptus",
|
|
12762
12788
|
"material/eucalyptus",
|
|
12763
12789
|
"eucalyptus",
|
|
12764
|
-
"Eucalyptus can name timber of the genus Eucalyptus or a ColorScope named
|
|
12790
|
+
"Eucalyptus can name timber of the genus Eucalyptus or a ColorScope named color; neither meaning implies the other.",
|
|
12765
12791
|
"EN 13556:2003"
|
|
12766
12792
|
),
|
|
12767
12793
|
referencedCrossover(
|
|
12768
12794
|
"pine",
|
|
12769
12795
|
"material/pine",
|
|
12770
12796
|
"pine-green",
|
|
12771
|
-
"Pine can name timber of the genus Pinus or the ColorScope named
|
|
12772
|
-
`USDA Wood Handbook (2021), chapter 2; @instruments/colorscope 9.4.0 has no flat "pine" id, so id "pine-green" (family green), matching the retired "green-deep-pine"
|
|
12797
|
+
"Pine can name timber of the genus Pinus or the ColorScope named color Pine Green; neither meaning implies the other.",
|
|
12798
|
+
`USDA Wood Handbook (2021), chapter 2; @instruments/colorscope 9.4.0 has no flat "pine" id, so id "pine-green" (family green), matching the retired "green-deep-pine" meaning's green family`
|
|
12773
12799
|
),
|
|
12774
12800
|
// ColorScope 9.4.0 crossovers, found by re-running the 2026-09-22 comparison against the
|
|
12775
12801
|
// installed 9.4.0 release. `chromium` reads against ColorScope's own alias, not a separate
|
|
12776
|
-
//
|
|
12777
|
-
// with `chrome`'s identity, not with a
|
|
12778
|
-
// `chrome` itself, whose two taxonomy
|
|
12802
|
+
// color: 9.4.0's `chrome` color carries the alias "Chromium", so the material label collides
|
|
12803
|
+
// with `chrome`'s identity, not with a color named `chromium`. It is a different phrase from
|
|
12804
|
+
// `chrome` itself, whose two taxonomy meanings (a finish and a material) are unrelated to
|
|
12779
12805
|
// `material/chromium`.
|
|
12780
12806
|
colorscope940Crossover(
|
|
12781
12807
|
"granite",
|
|
12782
12808
|
"material/granite",
|
|
12783
12809
|
"granite",
|
|
12784
|
-
"Granite can name the quarried igneous rock or the ColorScope named
|
|
12810
|
+
"Granite can name the quarried igneous rock or the ColorScope named color Granite; neither meaning implies the other.",
|
|
12785
12811
|
"Wikidata Q41177 granite, https://www.wikidata.org/wiki/Q41177"
|
|
12786
12812
|
),
|
|
12787
12813
|
colorscope940Crossover(
|
|
12788
12814
|
"sandstone",
|
|
12789
12815
|
"material/sandstone",
|
|
12790
12816
|
"sandstone",
|
|
12791
|
-
"Sandstone can name the quarried sedimentary rock or the ColorScope named
|
|
12817
|
+
"Sandstone can name the quarried sedimentary rock or the ColorScope named color Sandstone; neither meaning implies the other.",
|
|
12792
12818
|
"Wikidata Q13085 sandstone, https://www.wikidata.org/wiki/Q13085"
|
|
12793
12819
|
),
|
|
12794
12820
|
colorscope940Crossover(
|
|
12795
12821
|
"basalt",
|
|
12796
12822
|
"material/basalt",
|
|
12797
12823
|
"basalt",
|
|
12798
|
-
"Basalt can name the quarried volcanic rock or the ColorScope named
|
|
12824
|
+
"Basalt can name the quarried volcanic rock or the ColorScope named color Basalt; neither meaning implies the other.",
|
|
12799
12825
|
"Wikidata Q43338 basalt, https://www.wikidata.org/wiki/Q43338"
|
|
12800
12826
|
),
|
|
12801
12827
|
colorscope940Crossover(
|
|
12802
12828
|
"soapstone",
|
|
12803
12829
|
"material/soapstone",
|
|
12804
12830
|
"soapstone",
|
|
12805
|
-
"Soapstone can name the quarried talc-rich rock or the ColorScope named
|
|
12831
|
+
"Soapstone can name the quarried talc-rich rock or the ColorScope named color Soapstone; neither meaning implies the other.",
|
|
12806
12832
|
"Wikidata Q707896 soapstone, https://www.wikidata.org/wiki/Q707896"
|
|
12807
12833
|
),
|
|
12808
12834
|
colorscope940Crossover(
|
|
12809
12835
|
"hemp",
|
|
12810
12836
|
"material/hemp",
|
|
12811
12837
|
"hemp",
|
|
12812
|
-
"Hemp can name the Cannabis sativa bast fibre or the ColorScope named
|
|
12838
|
+
"Hemp can name the Cannabis sativa bast fibre or the ColorScope named color Hemp; neither meaning implies the other.",
|
|
12813
12839
|
"Wikidata Q13414920 hemp fiber, https://www.wikidata.org/wiki/Q13414920"
|
|
12814
12840
|
),
|
|
12815
12841
|
colorscope940Crossover(
|
|
12816
12842
|
"rattan",
|
|
12817
12843
|
"material/rattan",
|
|
12818
12844
|
"rattan",
|
|
12819
|
-
"Rattan can name the climbing-palm stem material or the ColorScope named
|
|
12845
|
+
"Rattan can name the climbing-palm stem material or the ColorScope named color Rattan; neither meaning implies the other.",
|
|
12820
12846
|
"Wikidata Q323021 rattan, https://www.wikidata.org/wiki/Q323021"
|
|
12821
12847
|
),
|
|
12822
12848
|
colorscope940Crossover(
|
|
12823
12849
|
"gypsum",
|
|
12824
12850
|
"material/gypsum",
|
|
12825
12851
|
"gypsum",
|
|
12826
|
-
"Gypsum can name the mineral calcium sulfate dihydrate or the ColorScope named
|
|
12852
|
+
"Gypsum can name the mineral calcium sulfate dihydrate or the ColorScope named color Gypsum; neither meaning implies the other.",
|
|
12827
12853
|
"EN 13279-1:2008"
|
|
12828
12854
|
),
|
|
12829
12855
|
colorscope940Crossover(
|
|
12830
12856
|
"cement",
|
|
12831
12857
|
"material/cement",
|
|
12832
12858
|
"cement",
|
|
12833
|
-
"Cement can name the hydraulic binder or the ColorScope named
|
|
12859
|
+
"Cement can name the hydraulic binder or the ColorScope named color Cement; neither meaning implies the other.",
|
|
12834
12860
|
"EN 197-1:2011"
|
|
12835
12861
|
),
|
|
12836
12862
|
colorscope940Crossover(
|
|
12837
12863
|
"carbon black",
|
|
12838
12864
|
"material/carbon-black",
|
|
12839
12865
|
"carbon-black",
|
|
12840
|
-
"Carbon black can name the pigment and reinforcing filler or the ColorScope named
|
|
12866
|
+
"Carbon black can name the pigment and reinforcing filler or the ColorScope named color Carbon Black; neither meaning implies the other.",
|
|
12841
12867
|
"CAS Registry 1333-86-4"
|
|
12842
12868
|
),
|
|
12843
12869
|
colorscope940Crossover(
|
|
12844
12870
|
"titanium white",
|
|
12845
12871
|
"material/titanium-dioxide",
|
|
12846
12872
|
"titanium-white",
|
|
12847
|
-
"Titanium white can name the titanium dioxide pigment or the ColorScope named
|
|
12873
|
+
"Titanium white can name the titanium dioxide pigment or the ColorScope named color Titanium White; neither meaning implies the other.",
|
|
12848
12874
|
"CAS Registry 13463-67-7"
|
|
12849
12875
|
),
|
|
12850
12876
|
colorscope940Crossover(
|
|
12851
12877
|
"chromium",
|
|
12852
12878
|
"material/chromium",
|
|
12853
12879
|
"chrome",
|
|
12854
|
-
'Chromium can name the metallic element or the ColorScope named
|
|
12880
|
+
'Chromium can name the metallic element or the ColorScope named color Chrome, of which "Chromium" is an alias; neither meaning implies the other.',
|
|
12855
12881
|
"CAS Registry 7440-47-3"
|
|
12856
12882
|
),
|
|
12857
12883
|
// `shell` and `seashell` are one material term (`material/shell`) with two label forms, and
|
|
12858
|
-
// 9.4.0 gives each its own, different
|
|
12859
|
-
// the separate
|
|
12860
|
-
// different
|
|
12884
|
+
// 9.4.0 gives each its own, different color: `shell` collides with Shell Pink, `seashell` with
|
|
12885
|
+
// the separate color Seashell. Two phrases, not one, because the two labels now resolve to two
|
|
12886
|
+
// different colors.
|
|
12861
12887
|
colorscope940Crossover(
|
|
12862
12888
|
"shell",
|
|
12863
12889
|
"material/shell",
|
|
12864
12890
|
"shell-pink",
|
|
12865
|
-
"Shell can name the mollusc-shell material or the ColorScope named
|
|
12891
|
+
"Shell can name the mollusc-shell material or the ColorScope named color Shell Pink; neither meaning implies the other.",
|
|
12866
12892
|
"Wikidata Q213096 seashell, https://www.wikidata.org/wiki/Q213096"
|
|
12867
12893
|
),
|
|
12868
12894
|
colorscope940Crossover(
|
|
12869
12895
|
"seashell",
|
|
12870
12896
|
"material/shell",
|
|
12871
12897
|
"seashell",
|
|
12872
|
-
"Seashell can name the mollusc-shell material or the ColorScope named
|
|
12898
|
+
"Seashell can name the mollusc-shell material or the ColorScope named color Seashell; neither meaning implies the other.",
|
|
12873
12899
|
"Wikidata Q213096 seashell, https://www.wikidata.org/wiki/Q213096"
|
|
12874
12900
|
),
|
|
12875
12901
|
colorscope940Crossover(
|
|
12876
12902
|
"cashmere",
|
|
12877
12903
|
"material/cashmere",
|
|
12878
12904
|
"cashmere",
|
|
12879
|
-
"Cashmere can name the goat-hair fibre or the ColorScope named
|
|
12905
|
+
"Cashmere can name the goat-hair fibre or the ColorScope named color Cashmere; neither meaning implies the other.",
|
|
12880
12906
|
"Regulation (EU) No 1007/2011 Annex I row 2"
|
|
12881
12907
|
),
|
|
12882
12908
|
colorscope940Crossover(
|
|
12883
12909
|
"hickory",
|
|
12884
12910
|
"material/hickory",
|
|
12885
12911
|
"hickory",
|
|
12886
|
-
"Hickory can name timber of the genus Carya or the ColorScope named
|
|
12912
|
+
"Hickory can name timber of the genus Carya or the ColorScope named color Hickory; neither meaning implies the other.",
|
|
12887
12913
|
WOOD_HANDBOOK5
|
|
12888
12914
|
),
|
|
12889
12915
|
colorscope940Crossover(
|
|
12890
12916
|
"pear",
|
|
12891
12917
|
"material/pear",
|
|
12892
12918
|
"pear",
|
|
12893
|
-
"Pear can name timber of Pyrus communis or the ColorScope named
|
|
12919
|
+
"Pear can name timber of Pyrus communis or the ColorScope named color Pear; neither meaning implies the other.",
|
|
12894
12920
|
WOOD_HANDBOOK5
|
|
12895
12921
|
),
|
|
12896
12922
|
colorscope940Crossover(
|
|
12897
12923
|
"pecan",
|
|
12898
12924
|
"material/carya-illinoinensis",
|
|
12899
12925
|
"pecan",
|
|
12900
|
-
"Pecan can name timber of Carya illinoinensis or the ColorScope named
|
|
12926
|
+
"Pecan can name timber of Carya illinoinensis or the ColorScope named color Pecan; neither meaning implies the other.",
|
|
12901
12927
|
WOOD_HANDBOOK5
|
|
12902
12928
|
),
|
|
12903
12929
|
colorscope940Crossover(
|
|
12904
12930
|
"cedar",
|
|
12905
12931
|
"material/cedar",
|
|
12906
12932
|
"cedar",
|
|
12907
|
-
"Cedar can name softwood traded as cedar or the ColorScope named
|
|
12933
|
+
"Cedar can name softwood traded as cedar or the ColorScope named color Cedar; neither meaning implies the other.",
|
|
12908
12934
|
WOOD_HANDBOOK5
|
|
12909
12935
|
),
|
|
12910
12936
|
colorscope940Crossover(
|
|
12911
12937
|
"redwood",
|
|
12912
12938
|
"material/redwood",
|
|
12913
12939
|
"redwood",
|
|
12914
|
-
"Redwood can name timber of Sequoia sempervirens or the ColorScope named
|
|
12940
|
+
"Redwood can name timber of Sequoia sempervirens or the ColorScope named color Redwood; neither meaning implies the other.",
|
|
12915
12941
|
WOOD_HANDBOOK5
|
|
12916
12942
|
),
|
|
12917
12943
|
// Quartz and melamine each name two materials in one word, and the trade uses the word for one
|
|
12918
12944
|
// of them first: `quartz` is the engineered surfacing before the mineral, `melamine` the faced
|
|
12919
|
-
// board before the resin. Both
|
|
12920
|
-
// and a
|
|
12945
|
+
// board before the resin. Both meanings are on the material axis, so the ordering is a default
|
|
12946
|
+
// and a meaningPriority, never a color-or-material context. Decided 2026-09-22 and recorded in ADR 0007.
|
|
12921
12947
|
//
|
|
12922
12948
|
// The evidence, read from the consumer's stored material values on 2026-09-22 and kept here
|
|
12923
12949
|
// because a count is not ours to publish: of 1,490 stored quartz rows, 801 sat on large-format
|
|
12924
12950
|
// slab, 102 on solid surface and 98 on natural stone; of 2,816 stored melamine rows, 2,650 sat on
|
|
12925
12951
|
// laminate surface.
|
|
12926
12952
|
{
|
|
12927
|
-
|
|
12953
|
+
defaultMeaning: ENGINEERED_QUARTZ_SURFACING,
|
|
12928
12954
|
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.",
|
|
12929
12955
|
governance: lexicalGovernance(
|
|
12930
|
-
|
|
12956
|
+
MEANING_PRIORITY_GOVERNANCE,
|
|
12931
12957
|
{
|
|
12932
12958
|
basis: "evidenced",
|
|
12933
12959
|
snapshot: HIERARCHY_REVIEW_DATE,
|
|
12934
|
-
source: `${
|
|
12960
|
+
source: `${MEANING_PRIORITY_EVIDENCE}, quartz rows by product type; EN 14618 and EN 15285 (agglomerated stone); CAS 14808-60-7 (quartz)`
|
|
12935
12961
|
},
|
|
12936
12962
|
HIERARCHY_REVIEW_LIFECYCLE
|
|
12937
12963
|
),
|
|
12964
|
+
meanings: [ENGINEERED_QUARTZ_SURFACING, QUARTZ_MINERAL],
|
|
12938
12965
|
outcome: "ambiguous",
|
|
12939
|
-
phrase: "quartz"
|
|
12940
|
-
readings: [ENGINEERED_QUARTZ_SURFACING, QUARTZ_MINERAL]
|
|
12966
|
+
phrase: "quartz"
|
|
12941
12967
|
},
|
|
12942
12968
|
{
|
|
12943
|
-
|
|
12969
|
+
defaultMeaning: MELAMINE_BOARD,
|
|
12944
12970
|
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.",
|
|
12945
12971
|
governance: lexicalGovernance(
|
|
12946
|
-
|
|
12972
|
+
MEANING_PRIORITY_GOVERNANCE,
|
|
12947
12973
|
{
|
|
12948
12974
|
basis: "evidenced",
|
|
12949
12975
|
snapshot: HIERARCHY_REVIEW_DATE,
|
|
12950
|
-
source: `${
|
|
12976
|
+
source: `${MEANING_PRIORITY_EVIDENCE}, melamine rows by product type; EN 14322 (melamine faced boards); ISO 1043-1 MF (melamine-formaldehyde resin)`
|
|
12951
12977
|
},
|
|
12952
12978
|
HIERARCHY_REVIEW_LIFECYCLE
|
|
12953
12979
|
),
|
|
12980
|
+
meanings: [MELAMINE_BOARD, MELAMINE_RESIN],
|
|
12954
12981
|
outcome: "ambiguous",
|
|
12955
|
-
phrase: "melamine"
|
|
12956
|
-
readings: [MELAMINE_BOARD, MELAMINE_RESIN]
|
|
12982
|
+
phrase: "melamine"
|
|
12957
12983
|
},
|
|
12958
|
-
// Plaster: one governed material
|
|
12984
|
+
// Plaster: one governed material meaning here. ColorScope separately lists `plaster` as an
|
|
12959
12985
|
// alias of its Light Taupe tone band, and a tone band has no reference kind in this corpus, so
|
|
12960
|
-
// the
|
|
12961
|
-
// publish the domain
|
|
12986
|
+
// the color meaning cannot be a target without inventing one. The mosaic precedent applies:
|
|
12987
|
+
// publish the domain meaning and say that consumers must union the external color alias. If a
|
|
12962
12988
|
// tone-band reference kind is added, rewrite this as an ambiguity.
|
|
12963
12989
|
{
|
|
12964
|
-
explanation: "Plaster has one governed material
|
|
12990
|
+
explanation: "Plaster has one governed material meaning in this corpus. ColorScope separately lists plaster as an alias of its Light Taupe tone band; consumers must union that external color meaning with this one rather than let either shadow the other.",
|
|
12965
12991
|
governance: lexicalGovernance(
|
|
12966
|
-
"Taxonomy records the referenced material
|
|
12992
|
+
"Taxonomy records the referenced material meaning without assigning a consumer route; the ColorScope tone-band alias has no reference kind in this corpus and is declared rather than minted.",
|
|
12967
12993
|
{
|
|
12968
12994
|
basis: "referenced",
|
|
12969
12995
|
snapshot: REVIEW_DATE12,
|
|
@@ -12979,7 +13005,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12979
13005
|
"cotton",
|
|
12980
13006
|
`${TAXONOMY_BASE_URI}/id/material/cotton`,
|
|
12981
13007
|
"cotton",
|
|
12982
|
-
"Cotton can name the plant fibre or the ColorScope named
|
|
13008
|
+
"Cotton can name the plant fibre or the ColorScope named color Cotton; fibre identity does not establish weave, blend, dye, or finish, and neither meaning implies the other.",
|
|
12983
13009
|
crossoverSource("cotton")
|
|
12984
13010
|
),
|
|
12985
13011
|
crossoverTaxonomyAmbiguity(
|
|
@@ -12988,7 +13014,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12988
13014
|
`${TAXONOMY_BASE_URI}/id/material-family/leather`,
|
|
12989
13015
|
`${TAXONOMY_BASE_URI}/id/material/leather`
|
|
12990
13016
|
],
|
|
12991
|
-
"Leather names both a retrieval-oriented material family and a specific hide-derived material; neither
|
|
13017
|
+
"Leather names both a retrieval-oriented material family and a specific hide-derived material; neither meaning establishes animal, layer, tanning, coating, or finish, and ColorScope 7.3 has no exact named-color identity.",
|
|
12992
13018
|
crossoverSource("leather")
|
|
12993
13019
|
),
|
|
12994
13020
|
crossoverTaxonomyAmbiguity(
|
|
@@ -12997,46 +13023,46 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
12997
13023
|
`${TAXONOMY_BASE_URI}/id/material-family/wood`,
|
|
12998
13024
|
`${TAXONOMY_BASE_URI}/id/material/wood`
|
|
12999
13025
|
],
|
|
13000
|
-
"Wood names both a retrieval-oriented material family and a specific lignocellulosic material; neither
|
|
13026
|
+
"Wood names both a retrieval-oriented material family and a specific lignocellulosic material; neither meaning establishes species, construction, stain, oil, or coating, and ColorScope 7.3 has no exact named-color identity.",
|
|
13001
13027
|
crossoverSource("wood")
|
|
13002
13028
|
),
|
|
13003
13029
|
crossoverAmbiguity(
|
|
13004
13030
|
"jute",
|
|
13005
13031
|
`${TAXONOMY_BASE_URI}/id/material/jute`,
|
|
13006
13032
|
"jute",
|
|
13007
|
-
"Jute can name the plant bast fibre or the ColorScope named
|
|
13033
|
+
"Jute can name the plant bast fibre or the ColorScope named color Jute; construction, blend, treatment, and color remain unspecified, and neither meaning implies the other.",
|
|
13008
13034
|
crossoverSource("jute")
|
|
13009
13035
|
),
|
|
13010
13036
|
crossoverAmbiguity(
|
|
13011
13037
|
"sisal",
|
|
13012
13038
|
`${TAXONOMY_BASE_URI}/id/material/sisal`,
|
|
13013
13039
|
"sisal",
|
|
13014
|
-
"Sisal can name the plant fibre or the ColorScope named
|
|
13040
|
+
"Sisal can name the plant fibre or the ColorScope named color Sisal; fibre and products made from it remain distinct, and neither meaning implies the other.",
|
|
13015
13041
|
crossoverSource("sisal")
|
|
13016
13042
|
),
|
|
13017
13043
|
crossoverEquivalent(
|
|
13018
13044
|
"cork",
|
|
13019
13045
|
`${TAXONOMY_BASE_URI}/id/material/cork`,
|
|
13020
|
-
"Cork has one governed material
|
|
13046
|
+
"Cork has one governed material meaning in this corpus; natural cork, agglomerate, backing, veneer, and cork-look appearance remain distinct, and ColorScope 7.3 has no exact named-color identity.",
|
|
13021
13047
|
crossoverSource("cork")
|
|
13022
13048
|
),
|
|
13023
13049
|
crossoverEquivalent(
|
|
13024
13050
|
"wool",
|
|
13025
13051
|
`${TAXONOMY_BASE_URI}/id/material/wool`,
|
|
13026
|
-
"Wool has one governed material
|
|
13052
|
+
"Wool has one governed material meaning in this corpus; species, grade, blend, construction, and finish remain unspecified, and ColorScope 7.3 has no exact named-color identity.",
|
|
13027
13053
|
crossoverSource("wool")
|
|
13028
13054
|
),
|
|
13029
13055
|
crossoverEquivalent(
|
|
13030
13056
|
"suede",
|
|
13031
13057
|
`${TAXONOMY_BASE_URI}/id/material/suede`,
|
|
13032
|
-
"Suede has one governed leather-material
|
|
13058
|
+
"Suede has one governed leather-material meaning in this corpus; it does not establish a suede-look finish on another substrate, and ColorScope 7.3 has no exact named-color identity.",
|
|
13033
13059
|
crossoverSource("suede")
|
|
13034
13060
|
),
|
|
13035
13061
|
crossoverAmbiguity(
|
|
13036
13062
|
"concrete",
|
|
13037
13063
|
`${TAXONOMY_BASE_URI}/id/material-family/concrete`,
|
|
13038
13064
|
"concrete",
|
|
13039
|
-
"Concrete names both a retrieval-oriented material family and a specific cement-and-aggregate composite, or the ColorScope named
|
|
13065
|
+
"Concrete names both a retrieval-oriented material family and a specific cement-and-aggregate composite, or the ColorScope named color Concrete; neither meaning establishes mix, reinforcement, coating, polish, or imitation, and none implies another.",
|
|
13040
13066
|
crossoverSource("concrete"),
|
|
13041
13067
|
[`${TAXONOMY_BASE_URI}/id/material/concrete`]
|
|
13042
13068
|
),
|
|
@@ -13044,22 +13070,22 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13044
13070
|
"travertine",
|
|
13045
13071
|
`${TAXONOMY_BASE_URI}/id/material/travertine`,
|
|
13046
13072
|
"travertine",
|
|
13047
|
-
"Travertine can name the dimension stone or the ColorScope named
|
|
13073
|
+
"Travertine can name the dimension stone or the ColorScope named color Travertine; quarry, grade, fill, cut, and surface treatment remain unspecified, and neither meaning implies the other.",
|
|
13048
13074
|
crossoverSource("travertine")
|
|
13049
13075
|
),
|
|
13050
13076
|
crossoverEquivalent(
|
|
13051
13077
|
"marble",
|
|
13052
13078
|
`${TAXONOMY_BASE_URI}/id/material/marble`,
|
|
13053
|
-
"Marble has one governed commercial dimension-stone
|
|
13079
|
+
"Marble has one governed commercial dimension-stone meaning in this corpus; its scientific and commercial boundaries remain explicit, and ColorScope 7.3 has no exact named-color identity.",
|
|
13054
13080
|
crossoverSource("marble")
|
|
13055
13081
|
),
|
|
13056
13082
|
{
|
|
13057
13083
|
// Written inline rather than through `crossoverAmbiguity`, which stamps a fixed evidenced
|
|
13058
13084
|
// snapshot: limestone was introduced later than the rest of this batch (2026-09-01, ADR-dated)
|
|
13059
|
-
// and keeps that date now that ColorScope 9.4.0 gives it a
|
|
13060
|
-
explanation: "Limestone can name the carbonate stone or the ColorScope named
|
|
13085
|
+
// and keeps that date now that ColorScope 9.4.0 gives it a color meaning too.
|
|
13086
|
+
explanation: "Limestone can name the carbonate stone or the ColorScope named color Limestone; formation, quarry, grade, cut, finish, and similarly named paint identities remain separate, and neither meaning implies the other.",
|
|
13061
13087
|
governance: lexicalGovernance(
|
|
13062
|
-
"Taxonomy preserves the evidenced
|
|
13088
|
+
"Taxonomy preserves the evidenced meanings without assigning a default, meaning priority, contextual preference, or consumer route.",
|
|
13063
13089
|
{
|
|
13064
13090
|
basis: "evidenced",
|
|
13065
13091
|
snapshot: LIMESTONE_INTRODUCED,
|
|
@@ -13071,48 +13097,48 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13071
13097
|
status: "active"
|
|
13072
13098
|
}
|
|
13073
13099
|
),
|
|
13074
|
-
|
|
13075
|
-
phrase: "limestone",
|
|
13076
|
-
readings: [
|
|
13100
|
+
meanings: [
|
|
13077
13101
|
{
|
|
13078
13102
|
authority: "taxonomy",
|
|
13079
13103
|
uri: `${TAXONOMY_BASE_URI}/id/material/limestone`
|
|
13080
13104
|
},
|
|
13081
13105
|
colorScope("limestone", NAMED_COLOR_REFERENCE_KIND)
|
|
13082
|
-
]
|
|
13106
|
+
],
|
|
13107
|
+
outcome: "ambiguous",
|
|
13108
|
+
phrase: "limestone"
|
|
13083
13109
|
},
|
|
13084
13110
|
crossoverAmbiguity(
|
|
13085
13111
|
"oak",
|
|
13086
13112
|
`${TAXONOMY_BASE_URI}/id/material/oak`,
|
|
13087
13113
|
"oak",
|
|
13088
|
-
"Oak can name the timber species group or the ColorScope named
|
|
13114
|
+
"Oak can name the timber species group or the ColorScope named color Oak; species group, cut, stain, coating, and appearance remain distinct, and neither meaning implies the other.",
|
|
13089
13115
|
crossoverSource("oak")
|
|
13090
13116
|
),
|
|
13091
13117
|
crossoverAmbiguity(
|
|
13092
13118
|
"teak",
|
|
13093
13119
|
`${TAXONOMY_BASE_URI}/id/material/teak`,
|
|
13094
13120
|
"teak",
|
|
13095
|
-
"Teak can name the timber or the ColorScope named
|
|
13121
|
+
"Teak can name the timber or the ColorScope named color Teak; timber, finish, and color remain distinct, and neither meaning implies the other.",
|
|
13096
13122
|
crossoverSource("teak")
|
|
13097
13123
|
),
|
|
13098
13124
|
{
|
|
13099
13125
|
contextualPreferences: [
|
|
13100
13126
|
{ context: "material", target: WALNUT_MATERIAL },
|
|
13101
|
-
{ context: "
|
|
13127
|
+
{ context: "color", target: WALNUT_COLOUR }
|
|
13102
13128
|
],
|
|
13103
|
-
|
|
13104
|
-
explanation: "Walnut can name wood from Juglans trees or a brown
|
|
13129
|
+
defaultMeaning: WALNUT_MATERIAL,
|
|
13130
|
+
explanation: "Walnut can name wood from Juglans trees or a brown color meaning. Neither meaning is a child of the other.",
|
|
13105
13131
|
governance: lexicalGovernance(
|
|
13106
|
-
"The two
|
|
13132
|
+
"The two meanings are deliberately separate and context may select only the preference declared here.",
|
|
13107
13133
|
{
|
|
13108
13134
|
basis: "evidenced",
|
|
13109
13135
|
snapshot: PUBLISHED_V1_BASELINE,
|
|
13110
13136
|
source: crossoverSource("walnut")
|
|
13111
13137
|
}
|
|
13112
13138
|
),
|
|
13139
|
+
meanings: [WALNUT_MATERIAL, WALNUT_COLOUR],
|
|
13113
13140
|
outcome: "ambiguous",
|
|
13114
|
-
phrase: "walnut"
|
|
13115
|
-
readings: [WALNUT_MATERIAL, WALNUT_COLOUR]
|
|
13141
|
+
phrase: "walnut"
|
|
13116
13142
|
},
|
|
13117
13143
|
// `application.wall-backsplash` is vendored in `dictionaries.ts`, whose tests deep-equal the
|
|
13118
13144
|
// authoring tuples, so the British spelling is an authored equivalent rather than an altLabel.
|
|
@@ -13127,7 +13153,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13127
13153
|
phrase: "splashback",
|
|
13128
13154
|
target: reviewedTaxonomy("application/wall-backsplash")
|
|
13129
13155
|
},
|
|
13130
|
-
// Benchtop takes the same three
|
|
13156
|
+
// Benchtop takes the same three meanings `countertop` resolves to by inference.
|
|
13131
13157
|
{
|
|
13132
13158
|
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.",
|
|
13133
13159
|
governance: lexicalGovernance(
|
|
@@ -13135,50 +13161,50 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13135
13161
|
{ basis: "authored", source: REVIEW_SOURCE9 },
|
|
13136
13162
|
REVIEW_LIFECYCLE
|
|
13137
13163
|
),
|
|
13138
|
-
|
|
13139
|
-
phrase: "benchtop",
|
|
13140
|
-
readings: [
|
|
13164
|
+
meanings: [
|
|
13141
13165
|
reviewedTaxonomy("application/countertop"),
|
|
13142
13166
|
reviewedTaxonomy("element/worktop"),
|
|
13143
13167
|
reviewedTaxonomy("product-category/countertop")
|
|
13144
|
-
]
|
|
13168
|
+
],
|
|
13169
|
+
outcome: "ambiguous",
|
|
13170
|
+
phrase: "benchtop"
|
|
13145
13171
|
},
|
|
13146
13172
|
// TAX-57 unit-shape compounds. Each names two governed shapes in one phrase, which the current
|
|
13147
|
-
// lexical contract cannot express as a single multi-target
|
|
13173
|
+
// lexical contract cannot express as a single multi-target meaning, so the alternatives are kept
|
|
13148
13174
|
// as an explicit ambiguity or, where one alternative is already an alt label of the other, an
|
|
13149
13175
|
// equivalent - never a silently chosen shape. "round & oval" is an equivalent of the broad
|
|
13150
13176
|
// `round-or-oval` term, which says exactly that a unit is round or oval without choosing (ADR 0012).
|
|
13151
13177
|
{
|
|
13152
|
-
|
|
13178
|
+
defaultMeaning: {
|
|
13153
13179
|
authority: "taxonomy",
|
|
13154
|
-
|
|
13180
|
+
meaningPriority: "primary",
|
|
13155
13181
|
uri: `${TAXONOMY_BASE_URI}/id/unit-shape/arabesque`
|
|
13156
13182
|
},
|
|
13157
13183
|
explanation: "Arabesque can name the taxonomy's bilaterally organised ornamental unit shape or, in Material Bank PIM usage, the star and cross units of a Moroccan tile assortment; the bare word does not settle which.",
|
|
13158
13184
|
governance: lexicalGovernance(
|
|
13159
|
-
"The default records the taxonomy's own governed shape; the PIM-evidenced star and cross
|
|
13185
|
+
"The default records the taxonomy's own governed shape; the PIM-evidenced star and cross meanings are recorded as secondary rather than merged into one multi-concept meaning.",
|
|
13160
13186
|
{ basis: "evidenced", snapshot: TAX57_DATE4, source: TAX57_SHAPE_SOURCE },
|
|
13161
13187
|
TAX57_LIFECYCLE
|
|
13162
13188
|
),
|
|
13163
|
-
|
|
13164
|
-
phrase: "arabesque",
|
|
13165
|
-
readings: [
|
|
13189
|
+
meanings: [
|
|
13166
13190
|
{
|
|
13167
13191
|
authority: "taxonomy",
|
|
13168
|
-
|
|
13192
|
+
meaningPriority: "primary",
|
|
13169
13193
|
uri: `${TAXONOMY_BASE_URI}/id/unit-shape/arabesque`
|
|
13170
13194
|
},
|
|
13171
13195
|
{
|
|
13172
13196
|
authority: "taxonomy",
|
|
13173
|
-
|
|
13197
|
+
meaningPriority: "secondary",
|
|
13174
13198
|
uri: `${TAXONOMY_BASE_URI}/id/unit-shape/star`
|
|
13175
13199
|
},
|
|
13176
13200
|
{
|
|
13177
13201
|
authority: "taxonomy",
|
|
13178
|
-
|
|
13202
|
+
meaningPriority: "secondary",
|
|
13179
13203
|
uri: `${TAXONOMY_BASE_URI}/id/unit-shape/cross`
|
|
13180
13204
|
}
|
|
13181
|
-
]
|
|
13205
|
+
],
|
|
13206
|
+
outcome: "ambiguous",
|
|
13207
|
+
phrase: "arabesque"
|
|
13182
13208
|
},
|
|
13183
13209
|
...["round & oval", "round and oval"].map(
|
|
13184
13210
|
(phrase) => ({
|
|
@@ -13221,9 +13247,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13221
13247
|
{ basis: "evidenced", snapshot: TAX57_DATE4, source: TAX57_SHAPE_SOURCE },
|
|
13222
13248
|
TAX57_LIFECYCLE
|
|
13223
13249
|
),
|
|
13224
|
-
|
|
13225
|
-
phrase: "parallelogram & chevron",
|
|
13226
|
-
readings: [
|
|
13250
|
+
meanings: [
|
|
13227
13251
|
{
|
|
13228
13252
|
authority: "taxonomy",
|
|
13229
13253
|
uri: `${TAXONOMY_BASE_URI}/id/unit-shape/parallelogram`
|
|
@@ -13232,44 +13256,46 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13232
13256
|
authority: "taxonomy",
|
|
13233
13257
|
uri: `${TAXONOMY_BASE_URI}/id/unit-shape/chevron`
|
|
13234
13258
|
}
|
|
13235
|
-
]
|
|
13259
|
+
],
|
|
13260
|
+
outcome: "ambiguous",
|
|
13261
|
+
phrase: "parallelogram & chevron"
|
|
13236
13262
|
},
|
|
13237
|
-
// TAX-57 ordered
|
|
13263
|
+
// TAX-57 ordered meaning. Paint and tile brands use "velvet" as a finish name for a soft-touch,
|
|
13238
13264
|
// light-absorbing surface; the trade means the woven cut-pile construction first.
|
|
13239
13265
|
{
|
|
13240
|
-
|
|
13266
|
+
defaultMeaning: {
|
|
13241
13267
|
authority: "taxonomy",
|
|
13242
|
-
|
|
13268
|
+
meaningPriority: "primary",
|
|
13243
13269
|
uri: `${TAXONOMY_BASE_URI}/id/construction/velvet`
|
|
13244
13270
|
},
|
|
13245
|
-
explanation: "Velvet can name the woven cut-pile construction or a finish name paint and tile
|
|
13271
|
+
explanation: "Velvet can name the woven cut-pile construction or a finish name paint and tile brands use for a soft-touch surface; the trade means the construction first.",
|
|
13246
13272
|
governance: lexicalGovernance(
|
|
13247
|
-
|
|
13273
|
+
MEANING_PRIORITY_GOVERNANCE,
|
|
13248
13274
|
{ basis: "authored", source: TAX57_REVIEW_SOURCE },
|
|
13249
13275
|
TAX57_LIFECYCLE
|
|
13250
13276
|
),
|
|
13251
|
-
|
|
13252
|
-
phrase: "velvet",
|
|
13253
|
-
readings: [
|
|
13277
|
+
meanings: [
|
|
13254
13278
|
{
|
|
13255
13279
|
authority: "taxonomy",
|
|
13256
|
-
|
|
13280
|
+
meaningPriority: "primary",
|
|
13257
13281
|
uri: `${TAXONOMY_BASE_URI}/id/construction/velvet`
|
|
13258
13282
|
},
|
|
13259
13283
|
{
|
|
13260
13284
|
authority: "taxonomy",
|
|
13261
|
-
|
|
13285
|
+
meaningPriority: "secondary",
|
|
13262
13286
|
uri: `${TAXONOMY_BASE_URI}/id/finish/texture/velvety`
|
|
13263
13287
|
}
|
|
13264
|
-
]
|
|
13288
|
+
],
|
|
13289
|
+
outcome: "ambiguous",
|
|
13290
|
+
phrase: "velvet"
|
|
13265
13291
|
},
|
|
13266
13292
|
// Two observed source spellings on the product-category axis that the inferred
|
|
13267
|
-
//
|
|
13268
|
-
// catalogue; the seenAs evidence stays on the term, and only the
|
|
13293
|
+
// meanings promoted to customer equivalents. Each is a department label in one
|
|
13294
|
+
// catalogue; the seenAs evidence stays on the term, and only the meaning is declined.
|
|
13269
13295
|
{
|
|
13270
13296
|
explanation: "Fittings is a catalogue department label for tapware in one source. As a request it names light fittings, electrical fittings and bathroom fittings just as readily, so it identifies no single product category.",
|
|
13271
13297
|
governance: lexicalGovernance(
|
|
13272
|
-
"A source department label is crosswalk evidence, not a customer
|
|
13298
|
+
"A source department label is crosswalk evidence, not a customer meaning of one concept.",
|
|
13273
13299
|
{ basis: "authored", source: "MaterialGraph MG-2226 category review" },
|
|
13274
13300
|
TAXONOMY_SNAPSHOT_LIFECYCLE
|
|
13275
13301
|
),
|
|
@@ -13280,7 +13306,7 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13280
13306
|
{
|
|
13281
13307
|
explanation: "Electrical is a catalogue department label for wiring accessories in one source. As a request it names a trade that also covers back boxes, cable management and lighting, so it identifies no single product category.",
|
|
13282
13308
|
governance: lexicalGovernance(
|
|
13283
|
-
"A source department label is crosswalk evidence, not a customer
|
|
13309
|
+
"A source department label is crosswalk evidence, not a customer meaning of one concept.",
|
|
13284
13310
|
{ basis: "authored", source: "MaterialGraph MG-2226 category review" },
|
|
13285
13311
|
TAXONOMY_SNAPSHOT_LIFECYCLE
|
|
13286
13312
|
),
|
|
@@ -13288,12 +13314,12 @@ var AUTHORED_LEXICAL_ENTRIES = [
|
|
|
13288
13314
|
phrase: "electrical",
|
|
13289
13315
|
reason: "Names a trade, not a kind of product."
|
|
13290
13316
|
},
|
|
13291
|
-
// Two more declined
|
|
13317
|
+
// Two more declined meanings, added alongside `cladding` for the same reason `fittings` and
|
|
13292
13318
|
// `electrical` were declined: each phrase spans more than the one product category it might name.
|
|
13293
13319
|
{
|
|
13294
13320
|
explanation: "Wall cladding also names interior stone and tile cladding, so as a request it does not settle between the exterior product category and an interior surface finish.",
|
|
13295
13321
|
governance: lexicalGovernance(
|
|
13296
|
-
"A compound phrase spanning an exterior product category and an interior finish is not one customer
|
|
13322
|
+
"A compound phrase spanning an exterior product category and an interior finish is not one customer meaning.",
|
|
13297
13323
|
{
|
|
13298
13324
|
basis: "authored",
|
|
13299
13325
|
source: "@instruments/taxonomy 1.9.0 vocabulary review"
|
|
@@ -13352,15 +13378,15 @@ var lexicalPhrases = (term12) => [term12.slug, term12.label, ...term12.altLabels
|
|
|
13352
13378
|
(phrase, index, phrases) => phrase.length > 0 && phrases.indexOf(phrase) === index
|
|
13353
13379
|
);
|
|
13354
13380
|
var targetKey = (target) => target.authority === "taxonomy" ? `taxonomy:${target.uri}` : `colorscope:${target.referenceKind}:${target.identifier}`;
|
|
13355
|
-
var inferredLifecycle = (
|
|
13356
|
-
const terms =
|
|
13381
|
+
var inferredLifecycle = (meanings) => {
|
|
13382
|
+
const terms = meanings.flatMap((meaning) => meaning.terms);
|
|
13357
13383
|
const lifecycles = terms.map((term12) => lifecycleFor(term12));
|
|
13358
13384
|
const [introducedAt] = terms.map((term12) => term12.introducedAt ?? PUBLISHED_V1_BASELINE).toSorted(compareText);
|
|
13359
13385
|
const reviewedAt = terms.map(
|
|
13360
13386
|
(term12) => term12.reviewedAt ?? term12.introducedAt ?? PUBLISHED_V1_BASELINE
|
|
13361
13387
|
).toSorted(compareText).at(-1);
|
|
13362
13388
|
if (introducedAt === void 0 || reviewedAt === void 0) {
|
|
13363
|
-
throw new Error("Inferred lexical
|
|
13389
|
+
throw new Error("Inferred lexical meaning has no source term lifecycle.");
|
|
13364
13390
|
}
|
|
13365
13391
|
const deprecated = lifecycles.every(
|
|
13366
13392
|
(lifecycle) => lifecycle.status === "deprecated"
|
|
@@ -13381,35 +13407,35 @@ var inferredLifecycle = (readings) => {
|
|
|
13381
13407
|
};
|
|
13382
13408
|
var inferredLexicalEntries = () => {
|
|
13383
13409
|
const authored4 = new Set(
|
|
13384
|
-
|
|
13410
|
+
AUTHORED_PHRASE_ENTRIES.map((entry) => entry.phrase)
|
|
13385
13411
|
);
|
|
13386
13412
|
const targetsByPhrase = /* @__PURE__ */ new Map();
|
|
13387
13413
|
for (const location of AUTHORING_LOCATIONS) {
|
|
13388
13414
|
const target = targetForLocation(location);
|
|
13389
13415
|
for (const phrase of lexicalPhrases(location.term)) {
|
|
13390
|
-
const
|
|
13391
|
-
const existing =
|
|
13416
|
+
const meanings = targetsByPhrase.get(phrase) ?? [];
|
|
13417
|
+
const existing = meanings.find(
|
|
13392
13418
|
(candidate) => targetKey(candidate.target) === targetKey(target)
|
|
13393
13419
|
);
|
|
13394
13420
|
if (existing === void 0) {
|
|
13395
|
-
|
|
13421
|
+
meanings.push({ target, terms: [location.term] });
|
|
13396
13422
|
} else {
|
|
13397
13423
|
existing.terms.push(location.term);
|
|
13398
13424
|
}
|
|
13399
|
-
targetsByPhrase.set(phrase,
|
|
13425
|
+
targetsByPhrase.set(phrase, meanings);
|
|
13400
13426
|
}
|
|
13401
13427
|
}
|
|
13402
|
-
return [...targetsByPhrase].filter(([phrase]) => !authored4.has(phrase)).map(([phrase,
|
|
13403
|
-
const [first, second, ...rest] =
|
|
13428
|
+
return [...targetsByPhrase].filter(([phrase]) => !authored4.has(phrase)).map(([phrase, meanings]) => {
|
|
13429
|
+
const [first, second, ...rest] = meanings;
|
|
13404
13430
|
if (first === void 0) {
|
|
13405
|
-
throw new Error(`Lexical phrase "${phrase}" has no
|
|
13431
|
+
throw new Error(`Lexical phrase "${phrase}" has no meaning.`);
|
|
13406
13432
|
}
|
|
13407
|
-
const lifecycle = inferredLifecycle(
|
|
13433
|
+
const lifecycle = inferredLifecycle(meanings);
|
|
13408
13434
|
if (second === void 0) {
|
|
13409
13435
|
return {
|
|
13410
|
-
explanation: `The published spelling \u201C${phrase}\u201D has one governed
|
|
13436
|
+
explanation: `The published spelling \u201C${phrase}\u201D has one governed meaning.`,
|
|
13411
13437
|
governance: lexicalGovernance(
|
|
13412
|
-
"The
|
|
13438
|
+
"The meaning is derived from a canonical label, slug, alternate label, or observed source spelling.",
|
|
13413
13439
|
{
|
|
13414
13440
|
basis: "evidenced",
|
|
13415
13441
|
snapshot: lifecycle.reviewedAt,
|
|
@@ -13425,7 +13451,7 @@ var inferredLexicalEntries = () => {
|
|
|
13425
13451
|
return {
|
|
13426
13452
|
explanation: `The published spelling \u201C${phrase}\u201D names more than one governed concept.`,
|
|
13427
13453
|
governance: lexicalGovernance(
|
|
13428
|
-
"No context-independent primary
|
|
13454
|
+
"No context-independent primary meaning has been governed.",
|
|
13429
13455
|
{
|
|
13430
13456
|
basis: "evidenced",
|
|
13431
13457
|
snapshot: lifecycle.reviewedAt,
|
|
@@ -13433,37 +13459,189 @@ var inferredLexicalEntries = () => {
|
|
|
13433
13459
|
},
|
|
13434
13460
|
lifecycle
|
|
13435
13461
|
),
|
|
13436
|
-
|
|
13437
|
-
phrase,
|
|
13438
|
-
readings: [
|
|
13462
|
+
meanings: [
|
|
13439
13463
|
first.target,
|
|
13440
13464
|
second.target,
|
|
13441
13465
|
...rest.map(({ target }) => target)
|
|
13442
|
-
]
|
|
13466
|
+
],
|
|
13467
|
+
outcome: "ambiguous",
|
|
13468
|
+
phrase
|
|
13443
13469
|
};
|
|
13444
13470
|
});
|
|
13445
13471
|
};
|
|
13446
|
-
var
|
|
13447
|
-
...
|
|
13472
|
+
var PHRASE_ENTRIES = [
|
|
13473
|
+
...AUTHORED_PHRASE_ENTRIES,
|
|
13448
13474
|
...inferredLexicalEntries()
|
|
13449
13475
|
].toSorted((left, right) => compareText(left.phrase, right.phrase));
|
|
13450
13476
|
var revisionOf = (value) => `sha256:${createHash("sha256").update(JSON.stringify(value)).digest("hex")}`;
|
|
13451
13477
|
var TAXONOMY_CORPUS_REVISION = revisionOf({
|
|
13452
13478
|
graph: KNOWLEDGE_GRAPH,
|
|
13453
|
-
|
|
13479
|
+
phraseEntries: PHRASE_ENTRIES
|
|
13454
13480
|
});
|
|
13455
13481
|
var TAXONOMY_CORPUS_METADATA = {
|
|
13456
13482
|
edgeCount: KNOWLEDGE_GRAPH.edges.length,
|
|
13457
|
-
lexicalEntryCount: LEXICAL_ENTRIES.length,
|
|
13458
13483
|
nodeCount: KNOWLEDGE_GRAPH.nodes.length,
|
|
13484
|
+
phraseEntryCount: PHRASE_ENTRIES.length,
|
|
13459
13485
|
revision: TAXONOMY_CORPUS_REVISION,
|
|
13460
13486
|
snapshot: TAXONOMY_SNAPSHOT,
|
|
13461
13487
|
version: TAXONOMY_VERSION
|
|
13462
13488
|
};
|
|
13489
|
+
|
|
13490
|
+
// src/assessment-policy.ts
|
|
13491
|
+
var PHOTO_CANDIDATE_PATHS = [
|
|
13492
|
+
"finish/texture/fluted",
|
|
13493
|
+
"finish/texture/heavily-reliefed",
|
|
13494
|
+
"finish/texture/reeded",
|
|
13495
|
+
"finish/texture/ribbed",
|
|
13496
|
+
"finish/texture/textured",
|
|
13497
|
+
"pattern/density/busy",
|
|
13498
|
+
"pattern/density/dense",
|
|
13499
|
+
"pattern/density/light",
|
|
13500
|
+
"pattern/density/moderate",
|
|
13501
|
+
"pattern/density/sparse",
|
|
13502
|
+
"pattern/density/unpatterned",
|
|
13503
|
+
"pattern/directionality/bi-directional",
|
|
13504
|
+
"pattern/directionality/linear",
|
|
13505
|
+
"pattern/directionality/low",
|
|
13506
|
+
"pattern/directionality/non-directional",
|
|
13507
|
+
"pattern/directionality/radial",
|
|
13508
|
+
"pattern/directionality/strong-linear",
|
|
13509
|
+
"pattern/regularity/irregular",
|
|
13510
|
+
"pattern/regularity/ordered",
|
|
13511
|
+
"pattern/regularity/organic",
|
|
13512
|
+
"pattern/regularity/relaxed",
|
|
13513
|
+
"pattern/regularity/uniform",
|
|
13514
|
+
"pattern/type/abstract-graphic",
|
|
13515
|
+
"pattern/type/abstract-organic",
|
|
13516
|
+
"pattern/type/animal-print",
|
|
13517
|
+
"pattern/type/botanical",
|
|
13518
|
+
"pattern/type/character",
|
|
13519
|
+
"pattern/type/checkerboard",
|
|
13520
|
+
"pattern/type/chevron",
|
|
13521
|
+
"pattern/type/crocodile",
|
|
13522
|
+
"pattern/type/damask",
|
|
13523
|
+
"pattern/type/geometric",
|
|
13524
|
+
"pattern/type/gradient",
|
|
13525
|
+
"pattern/type/herringbone",
|
|
13526
|
+
"pattern/type/leopard",
|
|
13527
|
+
"pattern/type/lizard",
|
|
13528
|
+
"pattern/type/marbleised",
|
|
13529
|
+
"pattern/type/natural-motif",
|
|
13530
|
+
"pattern/type/novelty",
|
|
13531
|
+
"pattern/type/ostrich",
|
|
13532
|
+
"pattern/type/paisley",
|
|
13533
|
+
"pattern/type/plaid-check",
|
|
13534
|
+
"pattern/type/plain",
|
|
13535
|
+
"pattern/type/scenic",
|
|
13536
|
+
"pattern/type/snakeskin",
|
|
13537
|
+
"pattern/type/strie",
|
|
13538
|
+
"pattern/type/stripe",
|
|
13539
|
+
"pattern/type/texture",
|
|
13540
|
+
"pattern/type/toile",
|
|
13541
|
+
"pattern/type/zebra",
|
|
13542
|
+
"pattern/type/zigzag"
|
|
13543
|
+
];
|
|
13544
|
+
var photoUris = new Set(
|
|
13545
|
+
PHOTO_CANDIDATE_PATHS.map((path) => `${TAXONOMY_BASE_URI}/id/${path}`)
|
|
13546
|
+
);
|
|
13547
|
+
var requirementsFor = (concept) => {
|
|
13548
|
+
if (photoUris.has(concept.uri)) {
|
|
13549
|
+
return [
|
|
13550
|
+
"Assess only the supplied material region and visible canonical meaning.",
|
|
13551
|
+
"Sufficient native detail and field extent; unavailable evidence is unknown.",
|
|
13552
|
+
"A detail-view decision does not automatically describe the overview.",
|
|
13553
|
+
"Appearance never proves composition, manufacturing process or product identity."
|
|
13554
|
+
];
|
|
13555
|
+
}
|
|
13556
|
+
if (concept.facet.endsWith("/pattern/figure")) {
|
|
13557
|
+
return [
|
|
13558
|
+
"Retain catalogue evidence under ADR 0008; image confirmation is not admitted."
|
|
13559
|
+
];
|
|
13560
|
+
}
|
|
13561
|
+
if (concept.facet.endsWith("/pattern/scale")) {
|
|
13562
|
+
return [
|
|
13563
|
+
"Physical extent or repeat measurement; pixel size alone is insufficient."
|
|
13564
|
+
];
|
|
13565
|
+
}
|
|
13566
|
+
if (concept.facet.endsWith("/finish/sheen")) {
|
|
13567
|
+
return [
|
|
13568
|
+
"Specified illumination and viewing angles; an arbitrary photo is insufficient."
|
|
13569
|
+
];
|
|
13570
|
+
}
|
|
13571
|
+
if (concept.axis.endsWith("/installation-layout")) {
|
|
13572
|
+
return [
|
|
13573
|
+
"An installed assembly with actual unit boundaries, not an isolated unit or printed resemblance."
|
|
13574
|
+
];
|
|
13575
|
+
}
|
|
13576
|
+
return [];
|
|
13577
|
+
};
|
|
13578
|
+
var routeFor = (concept) => {
|
|
13579
|
+
if (photoUris.has(concept.uri)) {
|
|
13580
|
+
return "photo-candidate";
|
|
13581
|
+
}
|
|
13582
|
+
if (concept.axis.endsWith("/axis/palette")) {
|
|
13583
|
+
return "external-authority";
|
|
13584
|
+
}
|
|
13585
|
+
if (concept.facet.endsWith("/pattern/figure")) {
|
|
13586
|
+
return "catalogue-only";
|
|
13587
|
+
}
|
|
13588
|
+
if (concept.facet.endsWith("/pattern/scale") || concept.facet.endsWith("/finish/sheen") || concept.axis.endsWith("/installation-layout")) {
|
|
13589
|
+
return "capture-conditional";
|
|
13590
|
+
}
|
|
13591
|
+
if (["material", "material-family", "construction", "product-category"].some(
|
|
13592
|
+
(axis) => concept.axis.endsWith(`/axis/${axis}`)
|
|
13593
|
+
) || concept.facet.endsWith("/finish/treatment")) {
|
|
13594
|
+
return "catalogue-only";
|
|
13595
|
+
}
|
|
13596
|
+
if (["style", "mood", "period"].some(
|
|
13597
|
+
(axis) => concept.axis.endsWith(`/axis/${axis}`)
|
|
13598
|
+
)) {
|
|
13599
|
+
return "context-required";
|
|
13600
|
+
}
|
|
13601
|
+
return "unreviewed";
|
|
13602
|
+
};
|
|
13603
|
+
var CONCEPT_ASSESSMENT_POLICIES = KNOWLEDGE_GRAPH.nodes.filter(
|
|
13604
|
+
(node) => node.kind === "concept" && node.lifecycle.status === "active"
|
|
13605
|
+
).map((concept) => ({
|
|
13606
|
+
conceptUri: concept.uri,
|
|
13607
|
+
evidenceRoute: routeFor(concept),
|
|
13608
|
+
materialApplicability: {
|
|
13609
|
+
reason: "Category scope has not received a complete evidence-backed cross-surface review.",
|
|
13610
|
+
status: "unreviewed"
|
|
13611
|
+
},
|
|
13612
|
+
references: [concept.uri],
|
|
13613
|
+
requirements: requirementsFor(concept)
|
|
13614
|
+
}));
|
|
13615
|
+
var ASSESSMENT_AUTHORITY_REFERENCES = [
|
|
13616
|
+
{
|
|
13617
|
+
role: "appearance-terminology",
|
|
13618
|
+
url: "https://store.astm.org/e0284-25.html"
|
|
13619
|
+
},
|
|
13620
|
+
{ role: "property-measurement", url: "https://store.astm.org/d0523-25.html" },
|
|
13621
|
+
{ role: "construction-classification", url: "https://uniclass.thenbs.com/" },
|
|
13622
|
+
{
|
|
13623
|
+
role: "construction-classification",
|
|
13624
|
+
url: "https://www.csiresources.org/standards/overview"
|
|
13625
|
+
},
|
|
13626
|
+
{
|
|
13627
|
+
role: "controlled-vocabulary",
|
|
13628
|
+
url: "https://www.getty.edu/research/tools/vocabularies/aat/about.html"
|
|
13629
|
+
}
|
|
13630
|
+
];
|
|
13631
|
+
var ASSESSMENT_POLICY_REVISION = `sha256:${createHash2("sha256").update(
|
|
13632
|
+
JSON.stringify({
|
|
13633
|
+
authorities: ASSESSMENT_AUTHORITY_REFERENCES,
|
|
13634
|
+
policies: CONCEPT_ASSESSMENT_POLICIES,
|
|
13635
|
+
taxonomyRevision: TAXONOMY_CORPUS_REVISION
|
|
13636
|
+
})
|
|
13637
|
+
).digest("hex")}`;
|
|
13463
13638
|
export {
|
|
13639
|
+
ASSESSMENT_AUTHORITY_REFERENCES,
|
|
13640
|
+
ASSESSMENT_POLICY_REVISION,
|
|
13464
13641
|
COLOR_SCOPE_REFERENCE_KINDS,
|
|
13642
|
+
CONCEPT_ASSESSMENT_POLICIES,
|
|
13465
13643
|
KNOWLEDGE_GRAPH,
|
|
13466
|
-
|
|
13644
|
+
PHRASE_ENTRIES,
|
|
13467
13645
|
TAXONOMY_BASE_URI,
|
|
13468
13646
|
TAXONOMY_CORPUS_METADATA,
|
|
13469
13647
|
TAXONOMY_CORPUS_REVISION,
|