@instruments/taxonomy 2.7.0 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/axes/axis.d.ts +1 -1
- package/dist/axes/external-search.d.ts +4 -0
- package/dist/axes/mg2620-axes.d.ts +6 -0
- package/dist/axes/mg2620-finish.d.ts +10 -0
- package/dist/axes/mg2620-format.d.ts +3 -0
- package/dist/axes/mg2620-shared.d.ts +9 -0
- package/dist/axes/mg2620-style.d.ts +2 -0
- package/dist/axes/mg2620-terms.d.ts +21 -0
- package/dist/index.js +996 -18
- package/dist/v1.d.ts +2 -2
- package/package.json +1 -1
package/dist/axes/axis.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Term } from "../term.js";
|
|
2
|
-
export declare const AXIS_SLUGS: readonly ["material-family", "product-category", "material", "pattern", "finish", "format", "unit-shape", "installation-layout", "construction", "requirement", "certification", "intervention", "sector", "application", "space", "element", "typology", "style", "period", "mood", "palette", "place", "daylight", "season", "time-of-day", "tier", "procurement", "strategy", "form", "density"];
|
|
2
|
+
export declare const AXIS_SLUGS: readonly ["material-family", "product-category", "material", "pattern", "finish", "character", "light-transmission", "format", "unit-shape", "product-shape", "installation-layout", "construction", "requirement", "certification", "intervention", "sector", "application", "space", "element", "typology", "style", "period", "mood", "palette", "place", "daylight", "season", "time-of-day", "tier", "procurement", "strategy", "form", "density"];
|
|
3
3
|
export type AxisSlug = (typeof AXIS_SLUGS)[number];
|
|
4
4
|
export interface AxisGovernance {
|
|
5
5
|
introducedAt: string;
|
|
@@ -6,6 +6,10 @@ export declare const SEARCHED_ON_TAX66 = "2026-10-22";
|
|
|
6
6
|
export declare const SEARCHED_ON_TAX66_COVERAGE = "2026-10-23";
|
|
7
7
|
/** The day the TAX-66 vocabulary-gap searches ran: materials, certifications, interventions and time of day. */
|
|
8
8
|
export declare const SEARCHED_ON_TAX66_GAPS = "2026-10-23";
|
|
9
|
+
/** The day the MG-2620 searches ran: the finish, format, style and new-axis terms MaterialGraph asked for. */
|
|
10
|
+
export declare const SEARCHED_ON_MG2620 = "2026-10-23";
|
|
11
|
+
/** Getty's legacy AAT full-text search, used when the SPARQL endpoint is down. */
|
|
12
|
+
export declare const GETTY_VOW_SEARCH = "https://www.getty.edu/vow/AATServlet";
|
|
9
13
|
/** The Wikidata entity search API, paced at one request a second. */
|
|
10
14
|
export declare const WIKIDATA_SEARCH = "https://www.wikidata.org/w/api.php?action=wbsearchentities";
|
|
11
15
|
/** Getty's SPARQL endpoint, queried for AAT preferred labels and scope notes. */
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Axis } from "./axis.js";
|
|
2
|
+
export declare const CHARACTER_AXIS: Axis;
|
|
3
|
+
export declare const LIGHT_TRANSMISSION_AXIS: Axis;
|
|
4
|
+
export declare const PRODUCT_SHAPE_AXIS: Axis;
|
|
5
|
+
/** Character and light transmission, which sit beside Finish: how a surface reads, and what passes through it. */
|
|
6
|
+
export declare const SURFACE_READING_AXES: readonly Axis[];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Term } from "../term.js";
|
|
2
|
+
import type { AxisFacet } from "./axis.js";
|
|
3
|
+
/** Added to Finish's treatment facet. */
|
|
4
|
+
export declare const MG2620_TREATMENT_TERMS: readonly Term[];
|
|
5
|
+
/** Finish's metallic-tone facet: the metal a surface reads as. Unordered. */
|
|
6
|
+
export declare const METALLIC_TONE_TERMS: readonly Term[];
|
|
7
|
+
/** Finish's edge facet: how the edge of a unit was finished or profiled. Unordered. */
|
|
8
|
+
export declare const EDGE_TERMS: readonly Term[];
|
|
9
|
+
/** The two facets MG-2620 added to Finish, in the order Finish lists them. */
|
|
10
|
+
export declare const MG2620_FINISH_FACETS: readonly AxisFacet[];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { SearchedWithout, Term, TermProvenance } from "../term.js";
|
|
2
|
+
import type { AxisGovernance } from "./axis.js";
|
|
3
|
+
export declare const MG2620_DATE = "2026-10-23";
|
|
4
|
+
/** Written here for MG-2620; the mappings carry the outside view where one exists. */
|
|
5
|
+
export declare const MG2620_PROVENANCE: TermProvenance;
|
|
6
|
+
export declare const MG2620_LIFECYCLE: AxisGovernance;
|
|
7
|
+
export declare const mg2620Term: (slug: string, label: string, definition: string, extra?: Partial<Term>) => Term;
|
|
8
|
+
export declare const mg2620SearchedAat: (query: string) => SearchedWithout;
|
|
9
|
+
export declare const mg2620SearchedWikidata: (query: string) => SearchedWithout;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Term } from "../term.js";
|
|
2
|
+
/** How much a material is described as drawing the eye. */
|
|
3
|
+
export declare const CHARACTER_EXPRESSION_TERMS: readonly Term[];
|
|
4
|
+
/** How precisely a material is described as made. */
|
|
5
|
+
export declare const CHARACTER_MAKING_TERMS: readonly Term[];
|
|
6
|
+
/** The setting a material is described as suited to. */
|
|
7
|
+
export declare const CHARACTER_REGISTER_TERMS: readonly Term[];
|
|
8
|
+
/** Whether a material is described as looking natural or manufactured. */
|
|
9
|
+
export declare const CHARACTER_ORIGIN_LOOK_TERMS: readonly Term[];
|
|
10
|
+
/** How a material is described as feeling to the touch. */
|
|
11
|
+
export declare const CHARACTER_FEEL_TERMS: readonly Term[];
|
|
12
|
+
/** The lines an object is drawn in. */
|
|
13
|
+
export declare const PRODUCT_SHAPE_OUTLINE_TERMS: readonly Term[];
|
|
14
|
+
/** Whether an object follows regular figures. */
|
|
15
|
+
export declare const PRODUCT_SHAPE_REGULARITY_TERMS: readonly Term[];
|
|
16
|
+
/** How an object is proportioned. */
|
|
17
|
+
export declare const PRODUCT_SHAPE_PROPORTION_TERMS: readonly Term[];
|
|
18
|
+
/** How light passes through, in the optical sense. */
|
|
19
|
+
export declare const LIGHT_TRANSMISSION_TERMS: readonly Term[];
|
|
20
|
+
/** A window covering's light-control class, as sold. */
|
|
21
|
+
export declare const LIGHT_CONTROL_TERMS: readonly Term[];
|
package/dist/index.js
CHANGED
|
@@ -7,8 +7,11 @@ import { createHash } from "crypto";
|
|
|
7
7
|
// src/axes/external-search.ts
|
|
8
8
|
var SEARCHED_ON = "2026-10-21";
|
|
9
9
|
var SEARCHED_ON_TAX66 = "2026-10-22";
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var OCTOBER_23 = "2026-10-23";
|
|
11
|
+
var SEARCHED_ON_TAX66_COVERAGE = OCTOBER_23;
|
|
12
|
+
var SEARCHED_ON_TAX66_GAPS = OCTOBER_23;
|
|
13
|
+
var SEARCHED_ON_MG2620 = OCTOBER_23;
|
|
14
|
+
var GETTY_VOW_SEARCH = "https://www.getty.edu/vow/AATServlet";
|
|
12
15
|
var WIKIDATA_SEARCH = "https://www.wikidata.org/w/api.php?action=wbsearchentities";
|
|
13
16
|
var GETTY_SPARQL = "https://vocab.getty.edu/sparql";
|
|
14
17
|
var UNICLASS_SEARCH = "https://uniclass.thenbs.com/search";
|
|
@@ -3770,6 +3773,361 @@ var FINISH_TEXTURE_TERMS = [
|
|
|
3770
3773
|
}
|
|
3771
3774
|
];
|
|
3772
3775
|
|
|
3776
|
+
// src/axes/mg2620-shared.ts
|
|
3777
|
+
var MG2620_DATE = SEARCHED_ON_MG2620;
|
|
3778
|
+
var MG2620_PROVENANCE = {
|
|
3779
|
+
basis: "authored",
|
|
3780
|
+
source: "Linear MG-2620 MaterialGraph vocabulary request"
|
|
3781
|
+
};
|
|
3782
|
+
var MG2620_LIFECYCLE = {
|
|
3783
|
+
introducedAt: MG2620_DATE,
|
|
3784
|
+
provenance: MG2620_PROVENANCE,
|
|
3785
|
+
reviewedAt: MG2620_DATE
|
|
3786
|
+
};
|
|
3787
|
+
var mg2620Term = (slug, label, definition, extra = {}) => ({
|
|
3788
|
+
definition,
|
|
3789
|
+
label,
|
|
3790
|
+
slug,
|
|
3791
|
+
...MG2620_LIFECYCLE,
|
|
3792
|
+
...extra
|
|
3793
|
+
});
|
|
3794
|
+
var mg2620SearchedAat = (query) => ({
|
|
3795
|
+
date: MG2620_DATE,
|
|
3796
|
+
query,
|
|
3797
|
+
scheme: "aat",
|
|
3798
|
+
via: `${GETTY_VOW_SEARCH}; record pages read, because ${GETTY_SPARQL} was degraded (HTTP 499) on the day`
|
|
3799
|
+
});
|
|
3800
|
+
var mg2620SearchedWikidata = (query) => ({
|
|
3801
|
+
date: MG2620_DATE,
|
|
3802
|
+
query,
|
|
3803
|
+
scheme: "wikidata",
|
|
3804
|
+
via: `${WIKIDATA_SEARCH}&language=en&format=json; labels and descriptions read`
|
|
3805
|
+
});
|
|
3806
|
+
|
|
3807
|
+
// src/axes/mg2620-finish.ts
|
|
3808
|
+
var related = (...targets) => targets.map((target) => ({ predicate: "related-to", target }));
|
|
3809
|
+
var MG2620_TREATMENT_TERMS = [
|
|
3810
|
+
mg2620Term(
|
|
3811
|
+
"sawn",
|
|
3812
|
+
"Sawn",
|
|
3813
|
+
"Left as it comes from the saw, with the faint parallel or arcing marks of the blade and no further dressing.",
|
|
3814
|
+
{
|
|
3815
|
+
altLabels: ["sawn finish", "saw-cut", "rough sawn"],
|
|
3816
|
+
searchedWithout: [
|
|
3817
|
+
mg2620SearchedAat("sawn finish | sawn"),
|
|
3818
|
+
mg2620SearchedWikidata("sawn finish stone")
|
|
3819
|
+
]
|
|
3820
|
+
}
|
|
3821
|
+
),
|
|
3822
|
+
mg2620Term(
|
|
3823
|
+
"riven",
|
|
3824
|
+
"Riven",
|
|
3825
|
+
"Split along the stone's natural bedding plane and left with the uneven, layered face the split produces; not sawn and not machine-split.",
|
|
3826
|
+
{
|
|
3827
|
+
altLabels: ["natural cleft", "cleft"],
|
|
3828
|
+
related: related(
|
|
3829
|
+
"finish.treatment.split-face",
|
|
3830
|
+
"finish.texture.textured"
|
|
3831
|
+
),
|
|
3832
|
+
searchedWithout: [
|
|
3833
|
+
mg2620SearchedAat("riven | cleft | natural cleft"),
|
|
3834
|
+
mg2620SearchedWikidata("riven stone | cleft stone")
|
|
3835
|
+
]
|
|
3836
|
+
}
|
|
3837
|
+
),
|
|
3838
|
+
mg2620Term(
|
|
3839
|
+
"rock-faced",
|
|
3840
|
+
"Rock-faced",
|
|
3841
|
+
"Dressed with a pitching tool so the face projects as a rough, rock-like mass inside a straight arris.",
|
|
3842
|
+
{
|
|
3843
|
+
altLabels: ["pitch-faced", "pitched face", "quarry-faced"],
|
|
3844
|
+
related: related(
|
|
3845
|
+
"finish.treatment.split-face",
|
|
3846
|
+
"finish.texture.textured"
|
|
3847
|
+
),
|
|
3848
|
+
searchedWithout: [
|
|
3849
|
+
mg2620SearchedAat("rock-faced | rockfaced | pitch-faced | pitch faced"),
|
|
3850
|
+
mg2620SearchedWikidata("rock-faced stone | pitch-faced")
|
|
3851
|
+
]
|
|
3852
|
+
}
|
|
3853
|
+
),
|
|
3854
|
+
mg2620Term(
|
|
3855
|
+
"acid-washed",
|
|
3856
|
+
"Acid-washed",
|
|
3857
|
+
"Treated with acid to soften saw marks and etch the face to a muted, faintly textured surface that keeps the stone's natural character.",
|
|
3858
|
+
{
|
|
3859
|
+
altLabels: ["acid washed", "acid-etched"],
|
|
3860
|
+
searchedWithout: [
|
|
3861
|
+
mg2620SearchedAat("acid-washed | acid etched | etching"),
|
|
3862
|
+
mg2620SearchedWikidata("acid washed stone")
|
|
3863
|
+
]
|
|
3864
|
+
}
|
|
3865
|
+
),
|
|
3866
|
+
mg2620Term(
|
|
3867
|
+
"wire-brushed",
|
|
3868
|
+
"Wire-brushed",
|
|
3869
|
+
"Brushed with wire to remove the softer grain of timber, leaving the harder grain standing in relief.",
|
|
3870
|
+
{
|
|
3871
|
+
altLabels: ["wire brushed"],
|
|
3872
|
+
external: [
|
|
3873
|
+
mapping("aat", "300438802", "brushing (general process)", "broad")
|
|
3874
|
+
],
|
|
3875
|
+
related: related("finish.texture.grained", "finish.texture.textured"),
|
|
3876
|
+
searchedWithout: [
|
|
3877
|
+
mg2620SearchedWikidata("wire brushed wood | wire brushing")
|
|
3878
|
+
]
|
|
3879
|
+
}
|
|
3880
|
+
),
|
|
3881
|
+
mg2620Term(
|
|
3882
|
+
"hand-scraped",
|
|
3883
|
+
"Hand-scraped",
|
|
3884
|
+
"Worked with a curved blade so the face carries shallow, irregular scallops across its width, by hand or by a machine imitating it.",
|
|
3885
|
+
{
|
|
3886
|
+
altLabels: ["hand scraped", "scraped"],
|
|
3887
|
+
external: [mapping("aat", "300053711", "scraping", "broad")],
|
|
3888
|
+
related: related(
|
|
3889
|
+
"finish.treatment.distressed",
|
|
3890
|
+
"finish.texture.textured"
|
|
3891
|
+
),
|
|
3892
|
+
searchedWithout: [mg2620SearchedWikidata("hand-scraped flooring")]
|
|
3893
|
+
}
|
|
3894
|
+
),
|
|
3895
|
+
mg2620Term(
|
|
3896
|
+
"fumed",
|
|
3897
|
+
"Fumed",
|
|
3898
|
+
"Darkened by exposing tannin-rich timber, usually oak, to ammonia fumes, which colour the wood through rather than staining its face.",
|
|
3899
|
+
{
|
|
3900
|
+
altLabels: ["ammonia fumed", "smoked"],
|
|
3901
|
+
searchedWithout: [
|
|
3902
|
+
mg2620SearchedAat("fumed oak | fuming | ammonia"),
|
|
3903
|
+
mg2620SearchedWikidata("fumed oak | fuming wood ammonia")
|
|
3904
|
+
]
|
|
3905
|
+
}
|
|
3906
|
+
),
|
|
3907
|
+
mg2620Term(
|
|
3908
|
+
"cerused",
|
|
3909
|
+
"Cerused",
|
|
3910
|
+
"Open-grained timber, usually oak, with the grain opened and filled with a white or pale paste or wax so it stands out against the wood.",
|
|
3911
|
+
{
|
|
3912
|
+
altLabels: ["limed", "pickled", "liming"],
|
|
3913
|
+
external: [
|
|
3914
|
+
mapping("aat", "300053862", "pickling (woodworking)", "related")
|
|
3915
|
+
],
|
|
3916
|
+
searchedWithout: [
|
|
3917
|
+
mg2620SearchedWikidata(
|
|
3918
|
+
"cerused wood | cerusing | limed oak | liming wood | wood pickling"
|
|
3919
|
+
)
|
|
3920
|
+
]
|
|
3921
|
+
}
|
|
3922
|
+
)
|
|
3923
|
+
];
|
|
3924
|
+
var METALLIC_TONE_TERMS = [
|
|
3925
|
+
mg2620Term(
|
|
3926
|
+
"silver",
|
|
3927
|
+
"Silver",
|
|
3928
|
+
"A light, neutral to cool grey-white metallic look, bright or satin, as chrome, stainless steel and aluminium read; it says nothing about the material or how the surface was made.",
|
|
3929
|
+
{
|
|
3930
|
+
external: [
|
|
3931
|
+
mapping("aat", "300311368", "silver (color)", "close"),
|
|
3932
|
+
mapping("wikidata", "Q317802", "silver", "close")
|
|
3933
|
+
]
|
|
3934
|
+
}
|
|
3935
|
+
),
|
|
3936
|
+
mg2620Term(
|
|
3937
|
+
"gold",
|
|
3938
|
+
"Gold",
|
|
3939
|
+
"A saturated, warm yellow metallic look, light to mid in value; it says nothing about the material or how the surface was made.",
|
|
3940
|
+
{
|
|
3941
|
+
external: [
|
|
3942
|
+
mapping("aat", "300311191", "gold (color)", "close"),
|
|
3943
|
+
mapping("wikidata", "Q208045", "gold", "close")
|
|
3944
|
+
]
|
|
3945
|
+
}
|
|
3946
|
+
),
|
|
3947
|
+
mg2620Term(
|
|
3948
|
+
"champagne",
|
|
3949
|
+
"Champagne",
|
|
3950
|
+
"A pale, muted gold metallic look leaning towards beige; it says nothing about the material or how the surface was made.",
|
|
3951
|
+
{
|
|
3952
|
+
altLabels: ["champagne bronze", "champagne gold"],
|
|
3953
|
+
external: [mapping("wikidata", "Q5069879", "champagne", "close")],
|
|
3954
|
+
searchedWithout: [
|
|
3955
|
+
mg2620SearchedAat("champagne | champagne color | champagne colour")
|
|
3956
|
+
]
|
|
3957
|
+
}
|
|
3958
|
+
),
|
|
3959
|
+
mg2620Term(
|
|
3960
|
+
"brass-tone",
|
|
3961
|
+
"Brass",
|
|
3962
|
+
"A yellow metallic look with a slightly brown or green cast, less saturated than gold; it says nothing about the material or how the surface was made.",
|
|
3963
|
+
{
|
|
3964
|
+
related: related("material.brass", "finish.treatment.brass"),
|
|
3965
|
+
searchedWithout: [
|
|
3966
|
+
mg2620SearchedAat("brass | brass color | brass (color)"),
|
|
3967
|
+
mg2620SearchedWikidata(
|
|
3968
|
+
"brass color | brass colour | brass (colour) | yellow brass color"
|
|
3969
|
+
)
|
|
3970
|
+
]
|
|
3971
|
+
}
|
|
3972
|
+
),
|
|
3973
|
+
mg2620Term(
|
|
3974
|
+
"rose-gold",
|
|
3975
|
+
"Rose gold",
|
|
3976
|
+
"A gold metallic look with a pink to red cast; it says nothing about the material or how the surface was made.",
|
|
3977
|
+
{
|
|
3978
|
+
altLabels: ["pink gold"],
|
|
3979
|
+
external: [mapping("wikidata", "Q100135995", "rose gold", "close")],
|
|
3980
|
+
searchedWithout: [mg2620SearchedAat("rose gold | rose | pink gold")]
|
|
3981
|
+
}
|
|
3982
|
+
),
|
|
3983
|
+
mg2620Term(
|
|
3984
|
+
"copper",
|
|
3985
|
+
"Copper",
|
|
3986
|
+
"An orange-red to reddish-brown metallic look; it says nothing about the material or how the surface was made.",
|
|
3987
|
+
{
|
|
3988
|
+
external: [
|
|
3989
|
+
mapping("aat", "300311190", "copper (color)", "close"),
|
|
3990
|
+
mapping("wikidata", "Q2722041", "copper", "close")
|
|
3991
|
+
]
|
|
3992
|
+
}
|
|
3993
|
+
),
|
|
3994
|
+
mg2620Term(
|
|
3995
|
+
"bronze",
|
|
3996
|
+
"Bronze",
|
|
3997
|
+
"A warm brown metallic look, mid to dark, reaching near black-brown in oil-rubbed bronze; it says nothing about the material or how the surface was made.",
|
|
3998
|
+
{
|
|
3999
|
+
altLabels: ["oil-rubbed bronze", "antique bronze"],
|
|
4000
|
+
external: [
|
|
4001
|
+
mapping("aat", "300311355", "bronze (color)", "close"),
|
|
4002
|
+
mapping("wikidata", "Q2778382", "bronze", "close")
|
|
4003
|
+
]
|
|
4004
|
+
}
|
|
4005
|
+
),
|
|
4006
|
+
mg2620Term(
|
|
4007
|
+
"gunmetal",
|
|
4008
|
+
"Gunmetal",
|
|
4009
|
+
"A dark grey metallic look with a cool cast, darker than pewter and lighter than black; it says nothing about the material or how the surface was made.",
|
|
4010
|
+
{
|
|
4011
|
+
altLabels: ["graphite", "dark zinc", "antique iron"],
|
|
4012
|
+
external: [mapping("wikidata", "Q130307360", "gunmetal", "close")],
|
|
4013
|
+
searchedWithout: [
|
|
4014
|
+
mg2620SearchedAat("gunmetal | gun metal | steel gray | pewter")
|
|
4015
|
+
]
|
|
4016
|
+
}
|
|
4017
|
+
),
|
|
4018
|
+
mg2620Term(
|
|
4019
|
+
"black",
|
|
4020
|
+
"Black",
|
|
4021
|
+
"A near-black metallic look, satin to bright; it says nothing about the material or how the surface was made. A flat black coating with no metal look is not this tone.",
|
|
4022
|
+
{
|
|
4023
|
+
altLabels: ["black chrome", "black nickel"],
|
|
4024
|
+
searchedWithout: [
|
|
4025
|
+
mg2620SearchedAat("matte black | black (color) | matte"),
|
|
4026
|
+
mg2620SearchedWikidata("matte black")
|
|
4027
|
+
]
|
|
4028
|
+
}
|
|
4029
|
+
)
|
|
4030
|
+
];
|
|
4031
|
+
var EDGE_TERMS = [
|
|
4032
|
+
mg2620Term(
|
|
4033
|
+
"rectified",
|
|
4034
|
+
"Rectified",
|
|
4035
|
+
"Ground on every edge after firing or cutting so each unit is dimensionally exact and the units can be laid with a narrow joint.",
|
|
4036
|
+
{
|
|
4037
|
+
altLabels: ["rectified edge"],
|
|
4038
|
+
searchedWithout: [
|
|
4039
|
+
mg2620SearchedAat("rectified"),
|
|
4040
|
+
mg2620SearchedWikidata("rectified tile | rectified porcelain")
|
|
4041
|
+
]
|
|
4042
|
+
}
|
|
4043
|
+
),
|
|
4044
|
+
mg2620Term(
|
|
4045
|
+
"pressed",
|
|
4046
|
+
"Pressed",
|
|
4047
|
+
"Left with the edge it had as it came from the press or kiln, slightly softened and less exact than a rectified edge.",
|
|
4048
|
+
{
|
|
4049
|
+
altLabels: ["pressed edge", "cushion edge", "non-rectified"],
|
|
4050
|
+
searchedWithout: [
|
|
4051
|
+
mg2620SearchedAat("pressed edge | cushion edge | cushion"),
|
|
4052
|
+
mg2620SearchedWikidata("pressed edge tile | cushion edge")
|
|
4053
|
+
]
|
|
4054
|
+
}
|
|
4055
|
+
),
|
|
4056
|
+
mg2620Term(
|
|
4057
|
+
"square",
|
|
4058
|
+
"Square",
|
|
4059
|
+
"A sharp edge meeting the face at a right angle, so neighbouring units form a flush, continuous surface.",
|
|
4060
|
+
{
|
|
4061
|
+
altLabels: ["square edge"],
|
|
4062
|
+
searchedWithout: [
|
|
4063
|
+
mg2620SearchedAat("square edge"),
|
|
4064
|
+
mg2620SearchedWikidata("square edge")
|
|
4065
|
+
]
|
|
4066
|
+
}
|
|
4067
|
+
),
|
|
4068
|
+
mg2620Term(
|
|
4069
|
+
"eased",
|
|
4070
|
+
"Eased",
|
|
4071
|
+
"A square edge with its arris lightly rounded or sanded off, so the joint shows as a faint line.",
|
|
4072
|
+
{
|
|
4073
|
+
altLabels: ["eased edge", "softened edge", "softened"],
|
|
4074
|
+
searchedWithout: [
|
|
4075
|
+
mg2620SearchedAat("eased edge | arris"),
|
|
4076
|
+
mg2620SearchedWikidata("eased edge | arris")
|
|
4077
|
+
]
|
|
4078
|
+
}
|
|
4079
|
+
),
|
|
4080
|
+
mg2620Term(
|
|
4081
|
+
"bevelled",
|
|
4082
|
+
"Bevelled",
|
|
4083
|
+
"An edge cut back at an angle so neighbouring units meet in a visible V-groove.",
|
|
4084
|
+
{
|
|
4085
|
+
altLabels: [
|
|
4086
|
+
"beveled",
|
|
4087
|
+
"bevel",
|
|
4088
|
+
"chamfered",
|
|
4089
|
+
"chamfer",
|
|
4090
|
+
"4-sided bevel",
|
|
4091
|
+
"four-sided bevel"
|
|
4092
|
+
],
|
|
4093
|
+
external: [
|
|
4094
|
+
mapping("aat", "300053102", "beveling", "related"),
|
|
4095
|
+
mapping("wikidata", "Q1903785", "bevel", "close"),
|
|
4096
|
+
mapping("wikidata", "Q1397389", "chamfer", "close")
|
|
4097
|
+
]
|
|
4098
|
+
}
|
|
4099
|
+
),
|
|
4100
|
+
mg2620Term(
|
|
4101
|
+
"micro-bevelled",
|
|
4102
|
+
"Micro-bevelled",
|
|
4103
|
+
"A bevel so small that the joint reads as a fine line rather than a groove.",
|
|
4104
|
+
{
|
|
4105
|
+
altLabels: ["micro-beveled", "micro bevel", "microbevel"],
|
|
4106
|
+
broaderSlug: "bevelled",
|
|
4107
|
+
external: [
|
|
4108
|
+
mapping("aat", "300053102", "beveling", "related"),
|
|
4109
|
+
mapping("wikidata", "Q1903785", "bevel", "broad")
|
|
4110
|
+
]
|
|
4111
|
+
}
|
|
4112
|
+
)
|
|
4113
|
+
];
|
|
4114
|
+
var MG2620_FINISH_FACETS = [
|
|
4115
|
+
{
|
|
4116
|
+
governance: MG2620_LIFECYCLE,
|
|
4117
|
+
holds: "several",
|
|
4118
|
+
label: "Metallic tone",
|
|
4119
|
+
slug: "metallic-tone",
|
|
4120
|
+
terms: METALLIC_TONE_TERMS
|
|
4121
|
+
},
|
|
4122
|
+
{
|
|
4123
|
+
governance: MG2620_LIFECYCLE,
|
|
4124
|
+
holds: "several",
|
|
4125
|
+
label: "Edge",
|
|
4126
|
+
slug: "edge",
|
|
4127
|
+
terms: EDGE_TERMS
|
|
4128
|
+
}
|
|
4129
|
+
];
|
|
4130
|
+
|
|
3773
4131
|
// src/axes/finish.ts
|
|
3774
4132
|
var TEXTURED_TARGET = "finish.texture.textured";
|
|
3775
4133
|
var TUMBLE_FINISHING = "tumble finishing";
|
|
@@ -4102,9 +4460,12 @@ var FINISH_TREATMENT_TERMS = [
|
|
|
4102
4460
|
"Antiqued",
|
|
4103
4461
|
"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.",
|
|
4104
4462
|
{
|
|
4463
|
+
altLabels: ["aged"],
|
|
4105
4464
|
note: "Widened 2026-10-02: the definition no longer lists the processes, and covers any means of giving the look of age."
|
|
4106
4465
|
}
|
|
4107
4466
|
),
|
|
4467
|
+
// MG-2620, 2026-10-23: AAT's antiquing is the process this result names, read on its record page.
|
|
4468
|
+
external: [mapping("aat", "300053800", "antiquing", "close")],
|
|
4108
4469
|
searchedWithout: [searchedUniclass3("antiquing")]
|
|
4109
4470
|
},
|
|
4110
4471
|
{
|
|
@@ -4143,7 +4504,8 @@ var FINISH_TREATMENT_TERMS = [
|
|
|
4143
4504
|
mapping("wikidata", "Q445063", POWDER_COATING, "close")
|
|
4144
4505
|
]
|
|
4145
4506
|
}
|
|
4146
|
-
)
|
|
4507
|
+
),
|
|
4508
|
+
...MG2620_TREATMENT_TERMS
|
|
4147
4509
|
];
|
|
4148
4510
|
var FINISH_SHEEN_TERMS = [
|
|
4149
4511
|
{
|
|
@@ -4272,6 +4634,157 @@ var SEARCH_CORPUS_SNAPSHOT = "2026-07-31";
|
|
|
4272
4634
|
var SEARCH_CORPUS = "a search benchmark in a materials-retrieval system (src-05)";
|
|
4273
4635
|
var searchCorpusEvidence = (phrases) => `${SEARCH_CORPUS} (244-query external search corpus; phrase and admission evidence: ${phrases}; canonical boundary authored by Taxonomy)`;
|
|
4274
4636
|
|
|
4637
|
+
// src/axes/mg2620-format.ts
|
|
4638
|
+
var related2 = (...targets) => targets.map((target) => ({ predicate: "related-to", target }));
|
|
4639
|
+
var MG2620_FORMAT_TERMS = [
|
|
4640
|
+
mg2620Term(
|
|
4641
|
+
"trim-tile",
|
|
4642
|
+
"Trim tile",
|
|
4643
|
+
"A shaped tile supplied to finish an installation rather than to fill it, at an edge, a corner, a base or a band, as against the field tile laid across the surface.",
|
|
4644
|
+
{
|
|
4645
|
+
altLabels: ["trim piece", "trim unit", "tile trim"],
|
|
4646
|
+
broaderSlug: "tile",
|
|
4647
|
+
external: [
|
|
4648
|
+
mapping("wikidata", "Q138307700", "edge protection profile", "related")
|
|
4649
|
+
],
|
|
4650
|
+
searchedWithout: [mg2620SearchedAat("trim tile | tile trim | trim")]
|
|
4651
|
+
}
|
|
4652
|
+
),
|
|
4653
|
+
mg2620Term(
|
|
4654
|
+
"bullnose",
|
|
4655
|
+
"Bullnose",
|
|
4656
|
+
"A trim tile with one edge, or two adjacent edges, rounded and finished to close an exposed end of a tiled surface.",
|
|
4657
|
+
{
|
|
4658
|
+
altLabels: [
|
|
4659
|
+
"round edge",
|
|
4660
|
+
"bullnose tile",
|
|
4661
|
+
"double bullnose",
|
|
4662
|
+
"surface bullnose"
|
|
4663
|
+
],
|
|
4664
|
+
broaderSlug: "trim-tile",
|
|
4665
|
+
external: [
|
|
4666
|
+
mapping("aat", "300010470", "bullnose brick", "related"),
|
|
4667
|
+
mapping("wikidata", "Q4996969", "Bullnose", "close")
|
|
4668
|
+
]
|
|
4669
|
+
}
|
|
4670
|
+
),
|
|
4671
|
+
mg2620Term(
|
|
4672
|
+
"cove",
|
|
4673
|
+
"Cove",
|
|
4674
|
+
"A trim tile with a concave curve along one edge, used where floor meets wall or to turn an inside corner without a sharp joint.",
|
|
4675
|
+
{
|
|
4676
|
+
altLabels: ["cove tile", "coving tile"],
|
|
4677
|
+
broaderSlug: "trim-tile",
|
|
4678
|
+
external: [mapping("aat", "300003513", "cavetto moldings", "related")],
|
|
4679
|
+
searchedWithout: [
|
|
4680
|
+
mg2620SearchedWikidata("cove tile | cove molding | coving")
|
|
4681
|
+
]
|
|
4682
|
+
}
|
|
4683
|
+
),
|
|
4684
|
+
mg2620Term(
|
|
4685
|
+
"cove-base",
|
|
4686
|
+
"Cove base",
|
|
4687
|
+
"A trim tile laid as the single course above a floor, curved concave where it meets the floor and finished along its top, so the junction can be cleaned.",
|
|
4688
|
+
{
|
|
4689
|
+
altLabels: [
|
|
4690
|
+
"sanitary cove",
|
|
4691
|
+
"sanitary base",
|
|
4692
|
+
"tile base",
|
|
4693
|
+
"cove skirting"
|
|
4694
|
+
],
|
|
4695
|
+
broaderSlug: "trim-tile",
|
|
4696
|
+
external: [
|
|
4697
|
+
mapping("aat", "300002681", "baseboards", "broad"),
|
|
4698
|
+
mapping("wikidata", "Q1630557", "baseboard", "broad")
|
|
4699
|
+
],
|
|
4700
|
+
related: related2("element.skirting")
|
|
4701
|
+
}
|
|
4702
|
+
),
|
|
4703
|
+
mg2620Term(
|
|
4704
|
+
"quarter-round",
|
|
4705
|
+
"Quarter round",
|
|
4706
|
+
"A narrow trim tile whose section is a quarter of a circle, used to finish an internal angle or an edge.",
|
|
4707
|
+
{
|
|
4708
|
+
altLabels: ["quadrant", "quarter-round trim"],
|
|
4709
|
+
broaderSlug: "trim-tile",
|
|
4710
|
+
external: [
|
|
4711
|
+
mapping("aat", "300003546", "quarter rounds", "close"),
|
|
4712
|
+
mapping("wikidata", "Q7269270", "quarter round", "close")
|
|
4713
|
+
]
|
|
4714
|
+
}
|
|
4715
|
+
),
|
|
4716
|
+
mg2620Term(
|
|
4717
|
+
"liner",
|
|
4718
|
+
"Liner",
|
|
4719
|
+
"A narrow decorative strip tile laid as a band or border within or around a field.",
|
|
4720
|
+
{
|
|
4721
|
+
altLabels: ["listello", "listel", "border tile", "liner tile"],
|
|
4722
|
+
broaderSlug: "trim-tile",
|
|
4723
|
+
external: [mapping("aat", "300003526", "fillets (moldings)", "related")],
|
|
4724
|
+
searchedWithout: [mg2620SearchedWikidata("listello | tile liner")]
|
|
4725
|
+
}
|
|
4726
|
+
),
|
|
4727
|
+
mg2620Term(
|
|
4728
|
+
"pencil-liner",
|
|
4729
|
+
"Pencil liner",
|
|
4730
|
+
"A very slender, rounded liner about a pencil's width, laid as a fine line between areas of tile.",
|
|
4731
|
+
{
|
|
4732
|
+
altLabels: ["pencil tile", "pencil trim"],
|
|
4733
|
+
broaderSlug: "liner",
|
|
4734
|
+
searchedWithout: [
|
|
4735
|
+
mg2620SearchedAat("pencil"),
|
|
4736
|
+
mg2620SearchedWikidata("pencil liner tile")
|
|
4737
|
+
]
|
|
4738
|
+
}
|
|
4739
|
+
),
|
|
4740
|
+
mg2620Term(
|
|
4741
|
+
"jolly",
|
|
4742
|
+
"Jolly",
|
|
4743
|
+
"A narrow, straight ceramic trim tile with a square face and an angled back, finishing a raw tile edge or an outside corner without rounding it.",
|
|
4744
|
+
{
|
|
4745
|
+
altLabels: ["jolly trim tile", "jolly edge"],
|
|
4746
|
+
broaderSlug: "trim-tile",
|
|
4747
|
+
external: [
|
|
4748
|
+
mapping("wikidata", "Q138307700", "edge protection profile", "broad")
|
|
4749
|
+
],
|
|
4750
|
+
note: "The metal edge profile sold under the same name is a different product, not a tile, and is not this term.",
|
|
4751
|
+
searchedWithout: [mg2620SearchedAat("jolly")]
|
|
4752
|
+
}
|
|
4753
|
+
),
|
|
4754
|
+
mg2620Term(
|
|
4755
|
+
"gauged-porcelain-tile",
|
|
4756
|
+
"Gauged porcelain tile",
|
|
4757
|
+
"A porcelain tile made to a specified thin gauge, from about 3.5 to 6.5 mm as ANSI A137.3 sets it out; the claim is the thickness, not the size.",
|
|
4758
|
+
{
|
|
4759
|
+
altLabels: ["gauged tile", "gauged porcelain", "thin porcelain tile"],
|
|
4760
|
+
broaderSlug: "tile",
|
|
4761
|
+
external: [
|
|
4762
|
+
mapping("aat", "300010678", "ceramic tile", "broad"),
|
|
4763
|
+
mapping("wikidata", "Q55654686", "ceramic tile", "broad")
|
|
4764
|
+
]
|
|
4765
|
+
}
|
|
4766
|
+
),
|
|
4767
|
+
mg2620Term(
|
|
4768
|
+
"gauged-porcelain-panel",
|
|
4769
|
+
"Gauged porcelain panel",
|
|
4770
|
+
"A gauged porcelain tile of one square metre or more in face area, supplied as a panel or slab.",
|
|
4771
|
+
{
|
|
4772
|
+
altLabels: [
|
|
4773
|
+
"gauged porcelain slab",
|
|
4774
|
+
"porcelain panel",
|
|
4775
|
+
"porcelain slab",
|
|
4776
|
+
"thin porcelain panel"
|
|
4777
|
+
],
|
|
4778
|
+
broaderSlug: "gauged-porcelain-tile",
|
|
4779
|
+
related: related2("format.slab"),
|
|
4780
|
+
searchedWithout: [
|
|
4781
|
+
mg2620SearchedAat("porcelain | slab"),
|
|
4782
|
+
mg2620SearchedWikidata("porcelain slab | porcelain stoneware")
|
|
4783
|
+
]
|
|
4784
|
+
}
|
|
4785
|
+
)
|
|
4786
|
+
];
|
|
4787
|
+
|
|
4275
4788
|
// src/axes/format.ts
|
|
4276
4789
|
var SOURCE2 = "format vocabulary in a furnishings retailer (src-03)";
|
|
4277
4790
|
var SNAPSHOT2 = "2026-08-25";
|
|
@@ -4552,7 +5065,8 @@ var FORMAT_TERMS = [
|
|
|
4552
5065
|
),
|
|
4553
5066
|
broaderSlug: "plank",
|
|
4554
5067
|
searchedWithout: [searchedUniclass3("wide plank flooring")]
|
|
4555
|
-
}
|
|
5068
|
+
},
|
|
5069
|
+
...MG2620_FORMAT_TERMS
|
|
4556
5070
|
];
|
|
4557
5071
|
|
|
4558
5072
|
// src/axes/certification.ts
|
|
@@ -11468,6 +11982,423 @@ var MATERIAL_TERMS = [
|
|
|
11468
11982
|
...MATERIAL_ENGINEERED_WOOD_TERMS
|
|
11469
11983
|
];
|
|
11470
11984
|
|
|
11985
|
+
// src/axes/mg2620-terms.ts
|
|
11986
|
+
var related3 = (...targets) => targets.map((target) => ({ predicate: "related-to", target }));
|
|
11987
|
+
var CHARACTER_EXPRESSION_TERMS = [
|
|
11988
|
+
mg2620Term(
|
|
11989
|
+
"quiet",
|
|
11990
|
+
"Quiet",
|
|
11991
|
+
"Described as reading with almost no incident: an even surface, little contrast and no visible pattern.",
|
|
11992
|
+
{
|
|
11993
|
+
searchedWithout: [
|
|
11994
|
+
mg2620SearchedAat("quiet"),
|
|
11995
|
+
mg2620SearchedWikidata("quiet design")
|
|
11996
|
+
]
|
|
11997
|
+
}
|
|
11998
|
+
),
|
|
11999
|
+
mg2620Term(
|
|
12000
|
+
"restrained",
|
|
12001
|
+
"Restrained",
|
|
12002
|
+
"Described as carrying texture or pattern that is held back: visible up close, muted at a distance.",
|
|
12003
|
+
{
|
|
12004
|
+
searchedWithout: [
|
|
12005
|
+
mg2620SearchedAat("restrained | restraint"),
|
|
12006
|
+
mg2620SearchedWikidata("restrained design")
|
|
12007
|
+
]
|
|
12008
|
+
}
|
|
12009
|
+
),
|
|
12010
|
+
mg2620Term(
|
|
12011
|
+
"expressive",
|
|
12012
|
+
"Expressive",
|
|
12013
|
+
"Described as carrying pattern, figure or texture that is meant to be noticed.",
|
|
12014
|
+
{
|
|
12015
|
+
searchedWithout: [
|
|
12016
|
+
mg2620SearchedAat("expressive"),
|
|
12017
|
+
mg2620SearchedWikidata("expressive")
|
|
12018
|
+
]
|
|
12019
|
+
}
|
|
12020
|
+
),
|
|
12021
|
+
mg2620Term(
|
|
12022
|
+
"bold",
|
|
12023
|
+
"Bold",
|
|
12024
|
+
"Described as dominating at first glance through strong contrast, saturated colour or large-scale pattern.",
|
|
12025
|
+
{
|
|
12026
|
+
searchedWithout: [
|
|
12027
|
+
mg2620SearchedAat("bold"),
|
|
12028
|
+
mg2620SearchedWikidata("bold design")
|
|
12029
|
+
]
|
|
12030
|
+
}
|
|
12031
|
+
)
|
|
12032
|
+
];
|
|
12033
|
+
var CHARACTER_MAKING_TERMS = [
|
|
12034
|
+
mg2620Term(
|
|
12035
|
+
"refined",
|
|
12036
|
+
"Refined",
|
|
12037
|
+
"Described as precisely made: crisp edges, an even face and no marks of hand or tool.",
|
|
12038
|
+
{
|
|
12039
|
+
searchedWithout: [
|
|
12040
|
+
mg2620SearchedAat("refined | refinement"),
|
|
12041
|
+
mg2620SearchedWikidata("refined")
|
|
12042
|
+
]
|
|
12043
|
+
}
|
|
12044
|
+
),
|
|
12045
|
+
mg2620Term(
|
|
12046
|
+
"crafted",
|
|
12047
|
+
"Crafted",
|
|
12048
|
+
"Described as showing the hand that made it: tool marks, hand-applied texture or slight irregularity within a controlled piece.",
|
|
12049
|
+
{
|
|
12050
|
+
altLabels: ["handcrafted", "hand-crafted"],
|
|
12051
|
+
external: [
|
|
12052
|
+
mapping("aat", "300191818", "handmade", "related"),
|
|
12053
|
+
mapping("wikidata", "Q877729", "handicraft", "related")
|
|
12054
|
+
]
|
|
12055
|
+
}
|
|
12056
|
+
),
|
|
12057
|
+
mg2620Term(
|
|
12058
|
+
"rustic",
|
|
12059
|
+
"Rustic",
|
|
12060
|
+
"Described as roughly made or roughly finished: irregular faces, softened or broken edges and strong variation from piece to piece. The material's reading, not the style.",
|
|
12061
|
+
{
|
|
12062
|
+
external: [mapping("aat", "300310541", "rustic (style)", "related")],
|
|
12063
|
+
related: related3("style.rustic"),
|
|
12064
|
+
searchedWithout: [mg2620SearchedWikidata("rustic")]
|
|
12065
|
+
}
|
|
12066
|
+
)
|
|
12067
|
+
];
|
|
12068
|
+
var CHARACTER_REGISTER_TERMS = [
|
|
12069
|
+
mg2620Term(
|
|
12070
|
+
"formal",
|
|
12071
|
+
"Formal",
|
|
12072
|
+
"Described as suited to formal settings: composed, symmetrical, polished or ornamented.",
|
|
12073
|
+
{
|
|
12074
|
+
searchedWithout: [
|
|
12075
|
+
mg2620SearchedAat("formal"),
|
|
12076
|
+
mg2620SearchedWikidata("formal style interior")
|
|
12077
|
+
]
|
|
12078
|
+
}
|
|
12079
|
+
),
|
|
12080
|
+
mg2620Term(
|
|
12081
|
+
"casual",
|
|
12082
|
+
"Casual",
|
|
12083
|
+
"Described as suited to relaxed settings: soft-edged, matte, irregular or informal in arrangement.",
|
|
12084
|
+
{
|
|
12085
|
+
searchedWithout: [
|
|
12086
|
+
mg2620SearchedAat("casual"),
|
|
12087
|
+
mg2620SearchedWikidata("casual style")
|
|
12088
|
+
]
|
|
12089
|
+
}
|
|
12090
|
+
)
|
|
12091
|
+
];
|
|
12092
|
+
var CHARACTER_ORIGIN_LOOK_TERMS = [
|
|
12093
|
+
mg2620Term(
|
|
12094
|
+
"natural",
|
|
12095
|
+
"Natural",
|
|
12096
|
+
"Described as looking natural: the non-repeating grain, veining or fibre of an organic or geological source. A claim about the look, never about composition; a printed laminate can look natural.",
|
|
12097
|
+
{
|
|
12098
|
+
altLabels: ["natural-looking"],
|
|
12099
|
+
external: [
|
|
12100
|
+
mapping("aat", "300219527", "natural", "related"),
|
|
12101
|
+
mapping("wikidata", "Q2451477", "natural material", "related")
|
|
12102
|
+
]
|
|
12103
|
+
}
|
|
12104
|
+
),
|
|
12105
|
+
mg2620Term(
|
|
12106
|
+
"synthetic",
|
|
12107
|
+
"Synthetic",
|
|
12108
|
+
"Described as looking manufactured: an exact repeat, an even colour no natural source gives, or a flawless sheen. A claim about the look, never about composition.",
|
|
12109
|
+
{
|
|
12110
|
+
altLabels: ["synthetic-looking", "man-made look"],
|
|
12111
|
+
external: [
|
|
12112
|
+
mapping("aat", "300218678", "synthetic", "related"),
|
|
12113
|
+
mapping("wikidata", "Q3300022", "synthetic material", "related")
|
|
12114
|
+
]
|
|
12115
|
+
}
|
|
12116
|
+
)
|
|
12117
|
+
];
|
|
12118
|
+
var CHARACTER_FEEL_TERMS = [
|
|
12119
|
+
mg2620Term(
|
|
12120
|
+
"soft",
|
|
12121
|
+
"Soft",
|
|
12122
|
+
"Described as soft to the touch: yielding, with pile, nap or give.",
|
|
12123
|
+
{
|
|
12124
|
+
external: [mapping("wikidata", "Q12894628", "softness", "related")],
|
|
12125
|
+
searchedWithout: [mg2620SearchedAat("soft | softness | tactile")]
|
|
12126
|
+
}
|
|
12127
|
+
),
|
|
12128
|
+
mg2620Term(
|
|
12129
|
+
"hard",
|
|
12130
|
+
"Hard",
|
|
12131
|
+
"Described as hard to the touch: rigid and unyielding under the hand.",
|
|
12132
|
+
{
|
|
12133
|
+
external: [
|
|
12134
|
+
mapping("aat", "300072602", "hardness", "related"),
|
|
12135
|
+
mapping("wikidata", "Q3236003", "hardness", "related")
|
|
12136
|
+
]
|
|
12137
|
+
}
|
|
12138
|
+
)
|
|
12139
|
+
];
|
|
12140
|
+
var PRODUCT_SHAPE_OUTLINE_TERMS = [
|
|
12141
|
+
mg2620Term(
|
|
12142
|
+
"rectilinear",
|
|
12143
|
+
"Rectilinear",
|
|
12144
|
+
"Drawn in straight lines that meet mostly at right angles.",
|
|
12145
|
+
{
|
|
12146
|
+
altLabels: ["straight-lined"],
|
|
12147
|
+
searchedWithout: [
|
|
12148
|
+
mg2620SearchedAat("rectilinear | rectangular | straight"),
|
|
12149
|
+
mg2620SearchedWikidata("rectilinear")
|
|
12150
|
+
]
|
|
12151
|
+
}
|
|
12152
|
+
),
|
|
12153
|
+
mg2620Term(
|
|
12154
|
+
"curved",
|
|
12155
|
+
"Curved",
|
|
12156
|
+
"Drawn mainly in smooth curves, with no sharp angles.",
|
|
12157
|
+
{
|
|
12158
|
+
altLabels: ["curvilinear", "rounded"],
|
|
12159
|
+
external: [
|
|
12160
|
+
mapping("aat", "300154222", "curvilinear (shape)", "close"),
|
|
12161
|
+
mapping("wikidata", "Q107426401", "curvilinear", "close")
|
|
12162
|
+
]
|
|
12163
|
+
}
|
|
12164
|
+
),
|
|
12165
|
+
mg2620Term(
|
|
12166
|
+
"faceted",
|
|
12167
|
+
"Faceted",
|
|
12168
|
+
"Made of flat planes meeting at angles other than a right angle, as a cut stone is.",
|
|
12169
|
+
{
|
|
12170
|
+
external: [
|
|
12171
|
+
mapping("aat", "300236211", "faceting", "related"),
|
|
12172
|
+
mapping("wikidata", "Q99578669", "facet cutting", "related")
|
|
12173
|
+
]
|
|
12174
|
+
}
|
|
12175
|
+
)
|
|
12176
|
+
];
|
|
12177
|
+
var PRODUCT_SHAPE_REGULARITY_TERMS = [
|
|
12178
|
+
mg2620Term(
|
|
12179
|
+
"geometric",
|
|
12180
|
+
"Geometric",
|
|
12181
|
+
"Built from regular, recognisable figures: circle, square, triangle, polygon, sphere or cube.",
|
|
12182
|
+
{
|
|
12183
|
+
external: [
|
|
12184
|
+
mapping("aat", "300263819", "geometric shape", "close"),
|
|
12185
|
+
mapping("wikidata", "Q815741", "geometric shape", "broad")
|
|
12186
|
+
]
|
|
12187
|
+
}
|
|
12188
|
+
),
|
|
12189
|
+
mg2620Term(
|
|
12190
|
+
"organic",
|
|
12191
|
+
"Organic",
|
|
12192
|
+
"Irregular, asymmetric and free, following no regular figure, as a pebble or a growing thing does.",
|
|
12193
|
+
{
|
|
12194
|
+
altLabels: ["biomorphic", "freeform"],
|
|
12195
|
+
external: [
|
|
12196
|
+
mapping("aat", "300069065", "biomorphic abstraction", "related"),
|
|
12197
|
+
mapping("wikidata", "Q864599", "Biomorphism", "related")
|
|
12198
|
+
]
|
|
12199
|
+
}
|
|
12200
|
+
)
|
|
12201
|
+
];
|
|
12202
|
+
var PRODUCT_SHAPE_PROPORTION_TERMS = [
|
|
12203
|
+
mg2620Term(
|
|
12204
|
+
"linear",
|
|
12205
|
+
"Linear",
|
|
12206
|
+
"Much longer in one direction than in the others, so it reads as a line.",
|
|
12207
|
+
{
|
|
12208
|
+
altLabels: ["elongated"],
|
|
12209
|
+
external: [mapping("aat", "300234452", "linear forms", "related")],
|
|
12210
|
+
searchedWithout: [mg2620SearchedWikidata("linear shape")]
|
|
12211
|
+
}
|
|
12212
|
+
),
|
|
12213
|
+
mg2620Term(
|
|
12214
|
+
"slender",
|
|
12215
|
+
"Slender",
|
|
12216
|
+
"Thin in section for its height or length, so it reads as light and fine.",
|
|
12217
|
+
{
|
|
12218
|
+
altLabels: ["slim", "slim profile"],
|
|
12219
|
+
searchedWithout: [
|
|
12220
|
+
mg2620SearchedAat("slender | slim | attenuated"),
|
|
12221
|
+
mg2620SearchedWikidata("slender | slank")
|
|
12222
|
+
]
|
|
12223
|
+
}
|
|
12224
|
+
)
|
|
12225
|
+
];
|
|
12226
|
+
var LIGHT_TRANSMISSION_TERMS = [
|
|
12227
|
+
mg2620Term(
|
|
12228
|
+
"transparent",
|
|
12229
|
+
"Transparent",
|
|
12230
|
+
"Lets light through with little scattering, so objects behind it are seen clearly.",
|
|
12231
|
+
{
|
|
12232
|
+
external: [
|
|
12233
|
+
mapping("aat", "300056220", "transparency (optical property)", "close"),
|
|
12234
|
+
mapping("wikidata", "Q487623", "transparency", "close")
|
|
12235
|
+
]
|
|
12236
|
+
}
|
|
12237
|
+
),
|
|
12238
|
+
mg2620Term(
|
|
12239
|
+
"translucent",
|
|
12240
|
+
"Translucent",
|
|
12241
|
+
"Lets light through but scatters it, so objects behind it are seen indistinctly or only as shapes.",
|
|
12242
|
+
{
|
|
12243
|
+
altLabels: ["semi-transparent", "frosted", "diffusing"],
|
|
12244
|
+
external: [
|
|
12245
|
+
mapping("aat", "300056219", "translucency", "close"),
|
|
12246
|
+
mapping("wikidata", "Q1259897", "translucency", "close")
|
|
12247
|
+
]
|
|
12248
|
+
}
|
|
12249
|
+
),
|
|
12250
|
+
mg2620Term("opaque", "Opaque", "Lets no apparent light through.", {
|
|
12251
|
+
external: [
|
|
12252
|
+
mapping("aat", "300056216", "opacity", "close"),
|
|
12253
|
+
mapping("wikidata", "Q691914", "opacity", "close")
|
|
12254
|
+
]
|
|
12255
|
+
})
|
|
12256
|
+
];
|
|
12257
|
+
var LIGHT_CONTROL_TERMS = [
|
|
12258
|
+
mg2620Term(
|
|
12259
|
+
"sheer",
|
|
12260
|
+
"Sheer",
|
|
12261
|
+
"A window covering light enough to see shapes through, giving daytime privacy only.",
|
|
12262
|
+
{
|
|
12263
|
+
altLabels: ["sheers", "voile"],
|
|
12264
|
+
external: [
|
|
12265
|
+
mapping("aat", "300203990", "sheer curtains", "close"),
|
|
12266
|
+
mapping("wikidata", "Q7492502", "sheer fabric", "close")
|
|
12267
|
+
],
|
|
12268
|
+
related: related3("light-transmission.transmission.translucent")
|
|
12269
|
+
}
|
|
12270
|
+
),
|
|
12271
|
+
mg2620Term(
|
|
12272
|
+
"room-darkening",
|
|
12273
|
+
"Room-darkening",
|
|
12274
|
+
"A window covering that blocks most of the light through the fabric, leaving the room dim with some light at the edges.",
|
|
12275
|
+
{
|
|
12276
|
+
altLabels: ["room darkening", "dim-out"],
|
|
12277
|
+
searchedWithout: [
|
|
12278
|
+
mg2620SearchedAat("room-darkening | darkening"),
|
|
12279
|
+
mg2620SearchedWikidata("room darkening")
|
|
12280
|
+
]
|
|
12281
|
+
}
|
|
12282
|
+
),
|
|
12283
|
+
mg2620Term(
|
|
12284
|
+
"blackout",
|
|
12285
|
+
"Blackout",
|
|
12286
|
+
"A window covering made, by its weave, lining or coating, to stop light passing through the fabric itself.",
|
|
12287
|
+
{
|
|
12288
|
+
altLabels: ["black-out", "blackout lining"],
|
|
12289
|
+
external: [mapping("wikidata", "Q4923213", "blackout", "close")],
|
|
12290
|
+
related: related3("light-transmission.transmission.opaque"),
|
|
12291
|
+
searchedWithout: [mg2620SearchedAat("blackout | curtain")]
|
|
12292
|
+
}
|
|
12293
|
+
)
|
|
12294
|
+
];
|
|
12295
|
+
|
|
12296
|
+
// src/axes/mg2620-axes.ts
|
|
12297
|
+
var CHARACTER_AXIS = {
|
|
12298
|
+
boundary: "Character is how a material or product is described as reading, as a listing or a search states it: its expression, its making, its register, whether it looks natural or manufactured, and whether it is soft or hard to the touch. Every value is a stated claim and never a judgement taken from a photograph. It is not Mood, which is how a room reads: a material can be expressive in a calm room. It is not Style, not Finish, which is how the surface was produced, and not Material: a natural look says nothing about composition.",
|
|
12299
|
+
facets: [
|
|
12300
|
+
{
|
|
12301
|
+
governance: MG2620_LIFECYCLE,
|
|
12302
|
+
holds: "one",
|
|
12303
|
+
label: "Expression",
|
|
12304
|
+
slug: "expression",
|
|
12305
|
+
terms: CHARACTER_EXPRESSION_TERMS
|
|
12306
|
+
},
|
|
12307
|
+
{
|
|
12308
|
+
governance: MG2620_LIFECYCLE,
|
|
12309
|
+
holds: "one",
|
|
12310
|
+
label: "Making",
|
|
12311
|
+
slug: "making",
|
|
12312
|
+
terms: CHARACTER_MAKING_TERMS
|
|
12313
|
+
},
|
|
12314
|
+
{
|
|
12315
|
+
governance: MG2620_LIFECYCLE,
|
|
12316
|
+
holds: "one",
|
|
12317
|
+
label: "Register",
|
|
12318
|
+
slug: "register",
|
|
12319
|
+
terms: CHARACTER_REGISTER_TERMS
|
|
12320
|
+
},
|
|
12321
|
+
{
|
|
12322
|
+
governance: MG2620_LIFECYCLE,
|
|
12323
|
+
holds: "one",
|
|
12324
|
+
label: "Origin look",
|
|
12325
|
+
slug: "origin-look",
|
|
12326
|
+
terms: CHARACTER_ORIGIN_LOOK_TERMS
|
|
12327
|
+
},
|
|
12328
|
+
{
|
|
12329
|
+
governance: MG2620_LIFECYCLE,
|
|
12330
|
+
holds: "one",
|
|
12331
|
+
label: "Feel",
|
|
12332
|
+
slug: "feel",
|
|
12333
|
+
terms: CHARACTER_FEEL_TERMS
|
|
12334
|
+
}
|
|
12335
|
+
],
|
|
12336
|
+
governance: MG2620_LIFECYCLE,
|
|
12337
|
+
label: "Character",
|
|
12338
|
+
question: "How is it described as reading?",
|
|
12339
|
+
slug: "character",
|
|
12340
|
+
status: "authored"
|
|
12341
|
+
};
|
|
12342
|
+
var LIGHT_TRANSMISSION_AXIS = {
|
|
12343
|
+
boundary: "Light transmission is how light passes through a material or product: whether objects can be seen through it, and for window coverings the light-control class they are sold under. It is not Daylight, which is the light a room receives; not Finish sheen, which is how much a surface reflects; and not Material. The light-control classes are supplier usage, set from catalogue data and never from a photograph, and an openness percentage is a measured value, not a term.",
|
|
12344
|
+
facets: [
|
|
12345
|
+
{
|
|
12346
|
+
governance: MG2620_LIFECYCLE,
|
|
12347
|
+
holds: "one",
|
|
12348
|
+
label: "Transmission",
|
|
12349
|
+
slug: "transmission",
|
|
12350
|
+
terms: LIGHT_TRANSMISSION_TERMS
|
|
12351
|
+
},
|
|
12352
|
+
{
|
|
12353
|
+
governance: MG2620_LIFECYCLE,
|
|
12354
|
+
holds: "several",
|
|
12355
|
+
label: "Light control",
|
|
12356
|
+
slug: "light-control",
|
|
12357
|
+
terms: LIGHT_CONTROL_TERMS
|
|
12358
|
+
}
|
|
12359
|
+
],
|
|
12360
|
+
governance: MG2620_LIFECYCLE,
|
|
12361
|
+
label: "Light transmission",
|
|
12362
|
+
question: "How does light pass through it?",
|
|
12363
|
+
slug: "light-transmission",
|
|
12364
|
+
status: "authored"
|
|
12365
|
+
};
|
|
12366
|
+
var PRODUCT_SHAPE_AXIS = {
|
|
12367
|
+
boundary: "Product shape is the overall shape of a three-dimensional object: the lines it is drawn in, whether it follows regular figures, and how it is proportioned. It is not Unit shape, which names the flat outline of one tile, paver or panel laid among others; not Form, which asks what move a building makes; not Pattern, which is what a surface carries; and not Finish texture, where fluting and ribbing are relief.",
|
|
12368
|
+
facets: [
|
|
12369
|
+
{
|
|
12370
|
+
governance: MG2620_LIFECYCLE,
|
|
12371
|
+
holds: "several",
|
|
12372
|
+
label: "Outline",
|
|
12373
|
+
slug: "outline",
|
|
12374
|
+
terms: PRODUCT_SHAPE_OUTLINE_TERMS
|
|
12375
|
+
},
|
|
12376
|
+
{
|
|
12377
|
+
governance: MG2620_LIFECYCLE,
|
|
12378
|
+
holds: "one",
|
|
12379
|
+
label: "Regularity",
|
|
12380
|
+
slug: "regularity",
|
|
12381
|
+
terms: PRODUCT_SHAPE_REGULARITY_TERMS
|
|
12382
|
+
},
|
|
12383
|
+
{
|
|
12384
|
+
governance: MG2620_LIFECYCLE,
|
|
12385
|
+
holds: "several",
|
|
12386
|
+
label: "Proportion",
|
|
12387
|
+
slug: "proportion",
|
|
12388
|
+
terms: PRODUCT_SHAPE_PROPORTION_TERMS
|
|
12389
|
+
}
|
|
12390
|
+
],
|
|
12391
|
+
governance: MG2620_LIFECYCLE,
|
|
12392
|
+
label: "Product shape",
|
|
12393
|
+
question: "What shape is the object?",
|
|
12394
|
+
slug: "product-shape",
|
|
12395
|
+
status: "authored"
|
|
12396
|
+
};
|
|
12397
|
+
var SURFACE_READING_AXES = [
|
|
12398
|
+
CHARACTER_AXIS,
|
|
12399
|
+
LIGHT_TRANSMISSION_AXIS
|
|
12400
|
+
];
|
|
12401
|
+
|
|
11471
12402
|
// src/axes/mood.ts
|
|
11472
12403
|
var SNAPSHOT4 = "2026-08-21";
|
|
11473
12404
|
var MS_MOOD = "ms_mood, a mood dictionary in a materials-retrieval system (src-05)";
|
|
@@ -18239,6 +19170,43 @@ var relatedTo15 = (target) => ({
|
|
|
18239
19170
|
target
|
|
18240
19171
|
});
|
|
18241
19172
|
|
|
19173
|
+
// src/axes/mg2620-style.ts
|
|
19174
|
+
var MARKET_IDIOM = "market-idiom";
|
|
19175
|
+
var MG2620_STYLE_TERMS = [
|
|
19176
|
+
mg2620Term(
|
|
19177
|
+
"coastal",
|
|
19178
|
+
"Coastal",
|
|
19179
|
+
"A market idiom drawn from houses by the sea: white and sand-coloured walls, pale or whitewashed timber, natural fibres such as rattan, jute and sea grass, slipcovered linen seating, and the sea's blues as accents.",
|
|
19180
|
+
{
|
|
19181
|
+
altLabels: ["coastal style", "beach house style"],
|
|
19182
|
+
related: [evokes("place.landscape.coastal")],
|
|
19183
|
+
searchedWithout: [
|
|
19184
|
+
mg2620SearchedAat("coastal | seaside | beach"),
|
|
19185
|
+
mg2620SearchedWikidata(
|
|
19186
|
+
"coastal style | coastal interior design | beach house style | coastal grandmother"
|
|
19187
|
+
)
|
|
19188
|
+
],
|
|
19189
|
+
styleKind: MARKET_IDIOM
|
|
19190
|
+
}
|
|
19191
|
+
),
|
|
19192
|
+
mg2620Term(
|
|
19193
|
+
"modern-farmhouse",
|
|
19194
|
+
"Modern farmhouse",
|
|
19195
|
+
"A market idiom that takes the farmhouse as its reference and reduces it to a repeatable set: white or neutral walls, shiplap or board-and-batten panelling, white Shaker cabinetry, an apron sink, black metal fittings, wide plank floors and exposed beams, with old pieces mixed in.",
|
|
19196
|
+
{
|
|
19197
|
+
altLabels: ["modern farmhouse style"],
|
|
19198
|
+
external: [mapping("aat", "300310545", "country (style)", "related")],
|
|
19199
|
+
related: [evokes("typology.farmhouse"), relatedTo15("style.rustic")],
|
|
19200
|
+
searchedWithout: [
|
|
19201
|
+
mg2620SearchedWikidata(
|
|
19202
|
+
"modern farmhouse | modern farmhouse architecture"
|
|
19203
|
+
)
|
|
19204
|
+
],
|
|
19205
|
+
styleKind: MARKET_IDIOM
|
|
19206
|
+
}
|
|
19207
|
+
)
|
|
19208
|
+
];
|
|
19209
|
+
|
|
18242
19210
|
// src/axes/style-architectural.ts
|
|
18243
19211
|
var LATE_CENTURY = "period.late-century";
|
|
18244
19212
|
var STYLE_ARCHITECTURAL_TERMS = [
|
|
@@ -18394,7 +19362,7 @@ var STYLE_ARCHITECTURAL_TERMS = [
|
|
|
18394
19362
|
|
|
18395
19363
|
// src/axes/style.ts
|
|
18396
19364
|
var ESTATE3 = "all five estate repos";
|
|
18397
|
-
var
|
|
19365
|
+
var MARKET_IDIOM2 = "market-idiom";
|
|
18398
19366
|
var TRADITION = "tradition";
|
|
18399
19367
|
var SCHEME_SNAPSHOT2 = "2026-08-18";
|
|
18400
19368
|
var SCHEME_CORPUS2 = "room schemes in a furnishings retailer (src-03)";
|
|
@@ -18509,7 +19477,7 @@ var STYLE_TERMS = [
|
|
|
18509
19477
|
}
|
|
18510
19478
|
],
|
|
18511
19479
|
slug: "contemporary",
|
|
18512
|
-
styleKind:
|
|
19480
|
+
styleKind: MARKET_IDIOM2,
|
|
18513
19481
|
usage: {
|
|
18514
19482
|
band: "dominant",
|
|
18515
19483
|
corpus: SCHEME_CORPUS2,
|
|
@@ -18628,7 +19596,7 @@ var STYLE_TERMS = [
|
|
|
18628
19596
|
related: [{ predicate: "evokes", target: "typology.warehouse" }],
|
|
18629
19597
|
seenAs: ["Industrial & Raw", "industrial_refined"],
|
|
18630
19598
|
slug: "industrial",
|
|
18631
|
-
styleKind:
|
|
19599
|
+
styleKind: MARKET_IDIOM2
|
|
18632
19600
|
},
|
|
18633
19601
|
{
|
|
18634
19602
|
definition: "Mass concrete left as struck, monumental massing, the construction method visible as the finish.",
|
|
@@ -18677,7 +19645,7 @@ var STYLE_TERMS = [
|
|
|
18677
19645
|
],
|
|
18678
19646
|
seenAs: ["Modern Maximalism"],
|
|
18679
19647
|
slug: "maximalism",
|
|
18680
|
-
styleKind:
|
|
19648
|
+
styleKind: MARKET_IDIOM2
|
|
18681
19649
|
},
|
|
18682
19650
|
{
|
|
18683
19651
|
definition: "Periods and idioms mixed by intent, with the mixing itself as the method. Distinct from maximalism, which is about quantity rather than provenance.",
|
|
@@ -18698,7 +19666,7 @@ var STYLE_TERMS = [
|
|
|
18698
19666
|
},
|
|
18699
19667
|
related: [relatedTo15("style.maximalism")],
|
|
18700
19668
|
slug: "eclectic",
|
|
18701
|
-
styleKind:
|
|
19669
|
+
styleKind: MARKET_IDIOM2,
|
|
18702
19670
|
usage: {
|
|
18703
19671
|
band: "common",
|
|
18704
19672
|
corpus: SCHEME_CORPUS2,
|
|
@@ -18729,7 +19697,7 @@ var STYLE_TERMS = [
|
|
|
18729
19697
|
}
|
|
18730
19698
|
],
|
|
18731
19699
|
slug: "transitional",
|
|
18732
|
-
styleKind:
|
|
19700
|
+
styleKind: MARKET_IDIOM2,
|
|
18733
19701
|
usage: {
|
|
18734
19702
|
band: "common",
|
|
18735
19703
|
corpus: SCHEME_CORPUS2,
|
|
@@ -18868,7 +19836,7 @@ var STYLE_TERMS = [
|
|
|
18868
19836
|
}
|
|
18869
19837
|
],
|
|
18870
19838
|
slug: "japandi",
|
|
18871
|
-
styleKind:
|
|
19839
|
+
styleKind: MARKET_IDIOM2
|
|
18872
19840
|
},
|
|
18873
19841
|
{
|
|
18874
19842
|
altLabels: ["boho"],
|
|
@@ -18877,8 +19845,9 @@ var STYLE_TERMS = [
|
|
|
18877
19845
|
label: "Bohemian",
|
|
18878
19846
|
provenance: { basis: "authored", source: "@instruments/taxonomy ADR 0001" },
|
|
18879
19847
|
slug: "bohemian",
|
|
18880
|
-
styleKind:
|
|
19848
|
+
styleKind: MARKET_IDIOM2
|
|
18881
19849
|
},
|
|
19850
|
+
...MG2620_STYLE_TERMS,
|
|
18882
19851
|
...STYLE_ARCHITECTURAL_TERMS
|
|
18883
19852
|
];
|
|
18884
19853
|
|
|
@@ -20781,6 +21750,9 @@ var STYLE_ANCHORS = {
|
|
|
20781
21750
|
brutalism: [
|
|
20782
21751
|
"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"
|
|
20783
21752
|
],
|
|
21753
|
+
coastal: [
|
|
21754
|
+
"Coastal interior in white and sand with sea-blue accents, whitewashed timber boards, rattan and sea-grass furniture, jute rugs, slipcovered linen sofas, sheer curtains lifting in an open window, and the light of a house by the water"
|
|
21755
|
+
],
|
|
20784
21756
|
constructivism: [
|
|
20785
21757
|
"Constructivist interior with dynamic diagonal composition, exposed structural drama, primary color on structural members, industrial glazing, early Soviet avant-garde geometry"
|
|
20786
21758
|
],
|
|
@@ -20818,6 +21790,9 @@ var STYLE_ANCHORS = {
|
|
|
20818
21790
|
"Minimalist interior defined by what has been taken out: unbroken wall planes, no skirting or trim, concealed frames and fixings, storage vanished into flush joinery, empty surface treated as a material rather than as space left over",
|
|
20819
21791
|
"Minimal room holding very few objects at deliberate distances, one seat and one low table and nothing else, a wide undecorated floor, a single work on a long blank wall, light and shadow doing what pattern does elsewhere"
|
|
20820
21792
|
],
|
|
21793
|
+
"modern-farmhouse": [
|
|
21794
|
+
"Modern farmhouse kitchen with white shiplap walls, white Shaker cabinets, a deep apron-front sink, matte black metal pendants and hardware, open shelving, wide pale plank floors and a reclaimed beam overhead"
|
|
21795
|
+
],
|
|
20821
21796
|
modernism: [
|
|
20822
21797
|
"Modernist interior with the plan running free beneath its frame, columns standing clear of the walls they no longer carry, a window banding horizontally across a facade holding no load, volumes cantilevered out over open ground, ornament argued out of the building rather than simply left off"
|
|
20823
21798
|
],
|
|
@@ -20962,7 +21937,7 @@ var AXES = [
|
|
|
20962
21937
|
status: "authored"
|
|
20963
21938
|
},
|
|
20964
21939
|
{
|
|
20965
|
-
boundary: "Finish is the deliberately produced state of the exposed surface. It is not material, pattern or construction: polished stone and matte stone share material while differing here.
|
|
21940
|
+
boundary: "Finish is the deliberately produced state of the exposed surface. It is not material, pattern or construction: polished stone and matte stone share material while differing here. Separate facets, because a flat list put treatment beside sheen and could not say honed matte. Metallic tone is the metal a surface reads as, and never says what it is made of or names a colour family, which ColorScope owns. Edge is how a unit's edge was finished or profiled.",
|
|
20966
21941
|
facets: [
|
|
20967
21942
|
{
|
|
20968
21943
|
holds: "several",
|
|
@@ -20981,13 +21956,15 @@ var AXES = [
|
|
|
20981
21956
|
label: "Texture",
|
|
20982
21957
|
slug: "texture",
|
|
20983
21958
|
terms: FINISH_TEXTURE_TERMS
|
|
20984
|
-
}
|
|
21959
|
+
},
|
|
21960
|
+
...MG2620_FINISH_FACETS
|
|
20985
21961
|
],
|
|
20986
21962
|
label: "Finish",
|
|
20987
21963
|
question: "How is the exposed surface finished?",
|
|
20988
21964
|
slug: "finish",
|
|
20989
21965
|
status: "authored"
|
|
20990
21966
|
},
|
|
21967
|
+
...SURFACE_READING_AXES,
|
|
20991
21968
|
{
|
|
20992
21969
|
boundary: "Format is the physical unit or delivery form supplied. It does not say what the product is made of, the visible outline of one unit, or how units are arranged after installation. A mounted mosaic remains a format even when its discrete units also support a layout assertion.",
|
|
20993
21970
|
facets: single("format", "Format", FORMAT_TERMS),
|
|
@@ -21011,6 +21988,7 @@ var AXES = [
|
|
|
21011
21988
|
slug: "unit-shape",
|
|
21012
21989
|
status: "authored"
|
|
21013
21990
|
},
|
|
21991
|
+
PRODUCT_SHAPE_AXIS,
|
|
21014
21992
|
{
|
|
21015
21993
|
boundary: "Installation layout is the persistent spatial relationship among discrete physical units or real joints in the finished surface. Printed or faux joints, woven motifs, terrazzo aggregate, monolithic surfaces and diagonal scene orientation do not establish it. Pattern may use the same trade word but asserts a visible motif, not physical arrangement.",
|
|
21016
21994
|
facets: single(
|
|
@@ -21203,7 +22181,7 @@ var AXES = [
|
|
|
21203
22181
|
{
|
|
21204
22182
|
boundary: "A formal move is a building-scale geometric decision: a cantilever, a courtyard, a sawtooth roof. It is not the visible outline of a supplied unit, a product profile, an idiom or a mood.",
|
|
21205
22183
|
facets: [],
|
|
21206
|
-
gap: "Identified by the crosswalk-residue test (TAX-14) from an architecture-projects platform's Sculptural value. That platform's own FORMAL_MOVE_EXAMPLES is the obvious starting point. Not yet authored. A materials-retrieval system's ms_shape was considered as a seed on 2026-08-27 and REJECTED: its twelve terms (linear, fluted, channelled, blocky, slender, faceted, gridded, organic) describe a product's own profile, while this axis asks what geometric move a building makes. Seeding it here would put two questions on one axis, which is the defect every boundary in ADR 0001 exists to prevent. Part of ms_shape is also texture-adjacent - fluted and channelled are relief, and finish.texture already carries ribbed - so it needs decomposing before it seeds anything, not adopting whole.",
|
|
22184
|
+
gap: "Identified by the crosswalk-residue test (TAX-14) from an architecture-projects platform's Sculptural value. That platform's own FORMAL_MOVE_EXAMPLES is the obvious starting point. Not yet authored. A materials-retrieval system's ms_shape was considered as a seed on 2026-08-27 and REJECTED: its twelve terms (linear, fluted, channelled, blocky, slender, faceted, gridded, organic) describe a product's own profile, while this axis asks what geometric move a building makes. Seeding it here would put two questions on one axis, which is the defect every boundary in ADR 0001 exists to prevent. Part of ms_shape is also texture-adjacent - fluted and channelled are relief, and finish.texture already carries ribbed - so it needs decomposing before it seeds anything, not adopting whole. Since MG-2620 those words live in Product shape.",
|
|
21207
22185
|
label: "Form",
|
|
21208
22186
|
question: "What geometric move does it make?",
|
|
21209
22187
|
slug: "form",
|
|
@@ -21245,7 +22223,7 @@ var resolveReference = (reference) => INDEX.byKey.get(canonicalKey(reference));
|
|
|
21245
22223
|
// src/v1.ts
|
|
21246
22224
|
var TAXONOMY_BASE_URI = "https://taxonomy.materialinstruments.com";
|
|
21247
22225
|
var TAXONOMY_SNAPSHOT = "2026-10-02";
|
|
21248
|
-
var TAXONOMY_VERSION = "2.
|
|
22226
|
+
var TAXONOMY_VERSION = "2.8.0";
|
|
21249
22227
|
var PUBLISHED_V1_BASELINE = "2026-08-30";
|
|
21250
22228
|
var TAX45_REVIEW_SNAPSHOT = "2026-08-31";
|
|
21251
22229
|
var LIMESTONE_INTRODUCED = "2026-09-01";
|
|
@@ -21467,7 +22445,7 @@ var addSemanticEdges = (assembly) => {
|
|
|
21467
22445
|
if (from === void 0) {
|
|
21468
22446
|
continue;
|
|
21469
22447
|
}
|
|
21470
|
-
const { broaderSlug, related } = location.term;
|
|
22448
|
+
const { broaderSlug, related: related4 } = location.term;
|
|
21471
22449
|
if (broaderSlug !== void 0) {
|
|
21472
22450
|
const to = assembly.conceptByAxisAndTerm.get(
|
|
21473
22451
|
`${location.axisSlug}.${broaderSlug}`
|
|
@@ -21479,7 +22457,7 @@ var addSemanticEdges = (assembly) => {
|
|
|
21479
22457
|
);
|
|
21480
22458
|
}
|
|
21481
22459
|
}
|
|
21482
|
-
for (const relation of
|
|
22460
|
+
for (const relation of related4 ?? []) {
|
|
21483
22461
|
const resolved = resolveReference(relation.target);
|
|
21484
22462
|
const to = resolved === void 0 ? void 0 : assembly.conceptByQualifiedSlug.get(resolved.qualifiedReference);
|
|
21485
22463
|
if (to === void 0) {
|
package/dist/v1.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { ElementPlacement, ExternalMapping, ExternalScheme, PeriodSpan, Rel
|
|
|
3
3
|
export type { FacetHolds } from "./axes/index.js";
|
|
4
4
|
export declare const TAXONOMY_BASE_URI: "https://taxonomy.materialinstruments.com";
|
|
5
5
|
export declare const TAXONOMY_SNAPSHOT: "2026-10-02";
|
|
6
|
-
export declare const TAXONOMY_VERSION: "2.
|
|
6
|
+
export declare const TAXONOMY_VERSION: "2.8.0";
|
|
7
7
|
export declare const COLORSCOPE_BASE_URI: "https://colorscope.materialinstruments.com";
|
|
8
8
|
export type CanonicalConceptUri = `${typeof TAXONOMY_BASE_URI}/id/${string}`;
|
|
9
9
|
/** ColorScope's permanent URI for a concept it owns. */
|
|
@@ -160,5 +160,5 @@ export declare const TAXONOMY_CORPUS_METADATA: {
|
|
|
160
160
|
readonly phraseEntryCount: number;
|
|
161
161
|
readonly revision: string;
|
|
162
162
|
readonly snapshot: "2026-10-02";
|
|
163
|
-
readonly version: "2.
|
|
163
|
+
readonly version: "2.8.0";
|
|
164
164
|
};
|
package/package.json
CHANGED