ochre-sdk 1.3.6 → 1.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -134,14 +134,14 @@ const result = await fetchWebsite("uchicago-node", { languages });
134
134
 
135
135
  ## Language Codes
136
136
 
137
- OCHRE publishes ISO 639-2/B language codes, the Library of Congress MARC convention, and every language the SDK reads or accepts uses them: the bibliographic code wherever ISO 639-2 has one (`per` for Persian, not ISO 639-3 `fas`; `fre`, `chi`, `ger`), the ISO 639-3 identifier where it has none (`yua`, `lzh`), and a few codes of its own for transliterations and vocabularies (`ota-xlt`, `rel`), some of which collide with unrelated ISO 639-3 languages. Requests in any other code are rejected, with the OCHRE code to use when one exists.
137
+ OCHRE publishes ISO 639-2 language codes in their bibliographic (B) form, the Library of Congress MARC convention, and every language the SDK reads or accepts uses them: `per` for Persian, not ISO 639-3 `fas`, and likewise `fre`, `chi` and `ger`. There are three exceptions: the ISO 639-3 identifier where ISO 639-2 has no code (`yua`, `lzh`), the terminology (T) form for Dutch (`nld`, not `dut`), and a few codes of OCHRE's own for transliterations and vocabularies (`ota-xlt`, `rel`), some of which collide with unrelated ISO 639-3 languages. Requests in any other code are rejected, with the OCHRE code to use when one exists.
138
138
 
139
- `OCHRE_LANGUAGES` maps every code OCHRE publishes to its name, what it tags (a `language`, a `transliteration`, a `vocabulary` or `non-linguistic` content), its ISO 639-3 identifier and the BCP 47 tag to give `Intl` or an HTML `lang` attribute. Either standard is `null` when none fits.
139
+ `OCHRE_LANGUAGES` maps every code OCHRE publishes to its name, what it tags (a `language`, a `transliteration`, a `vocabulary` or `non-linguistic` content), the standard the code itself is taken from (`iso639-2b`, or one of the exceptions: `iso639-3`, `iso639-2t` or `ochre`), its ISO 639-3 identifier and the BCP 47 tag to give `Intl` or an HTML `lang` attribute. Either standard is `null` when none fits.
140
140
 
141
141
  ```ts
142
142
  import { getOchreLanguage, getOchreLanguageCode } from "ochre-sdk";
143
143
 
144
- getOchreLanguage("per"); // { name: "Persian", kind: "language", iso639_3: "fas", bcp47: "fa" }
144
+ getOchreLanguage("per"); // { name: "Persian", kind: "language", standard: "iso639-2b", iso639_3: "fas", bcp47: "fa" }
145
145
  getOchreLanguage("ota-xlt")?.bcp47; // "ota-Latn-t-ota-arab"
146
146
  getOchreLanguageCode("fas"); // "per"
147
147
  ```
package/dist/index.d.mts CHANGED
@@ -15,6 +15,6 @@ import { fetchWebsiteMetadata } from "./fetchers/website-metadata.mjs";
15
15
  import { fetchWebsite } from "./fetchers/website.mjs";
16
16
  import { PropertyOptions, PropertySelector, getLeafPropertyValues, getProperty, getPropertyValue, getPropertyValues, getUniqueProperties, getUniquePropertyVariableLabels, isPropertyMatchingFilter, normalizePropertyVariableLabel } from "./getters.mjs";
17
17
  import { flattenItemProperties } from "./helpers.mjs";
18
- import { OCHRE_LANGUAGES, OchreLanguage, OchreLanguageCode, OchreLanguageKind, getOchreLanguage, getOchreLanguageCode, isOchreLanguageCode } from "./languages.mjs";
18
+ import { OCHRE_LANGUAGES, OchreLanguage, OchreLanguageCode, OchreLanguageKind, OchreLanguageStandard, getOchreLanguage, getOchreLanguageCode, isOchreLanguageCode } from "./languages.mjs";
19
19
  import { defineLanguages } from "./parsers/languages.mjs";
20
- export { type AccordionWebBlock, type AnyBibliography, type AnyConcept, type AnyItem, type AnyPeriod, type AnyPerson, type AnyPropertyValue, type AnyPropertyVariable, type AnyResource, type AnySet, type AnySpatialUnit, type AnyText, type AnyTree, type BaseItem, type BaseItemLink, type BelongsTo, type Bibliography, type BibliographyEntryInfo, type BibliographyItemLink, type BibliographySourceDocument, type Concept, type ConceptItemLink, type ContainedItemCategory, type ContainedItemCategoryFromOption, type ContainedItemCategoryOption, type Context, type ContextItem, type ContextItemCategory, type ContextNode, type ContextTree, type ContextTreeFilterLevel, type ContextTreeFilterVariant, type ContextTreeLevel, type ContextTreeLevelItem, type Coordinates, type CoordinatesSource, DEFAULT_PAGE_SIZE, type DictionaryUnitItemLink, type EmbeddedBibliography, type EmbeddedConcept, type EmbeddedItem, type EmbeddedPeriod, type EmbeddedPerson, type EmbeddedPropertyValue, type EmbeddedPropertyVariable, type EmbeddedResource, type EmbeddedSet, type EmbeddedSpatialUnit, type EmbeddedText, type EmbeddedTree, type Event, type Gallery, type Heading, type HeadingItemCategory, type Identification, type Image, type ImageMap, type ImageMapArea, type Interpretation, type Item, type ItemCategory, type ItemCategoryFromOption, type ItemCategoryOption, type ItemCategoryWithEmbeddedItems, type ItemContainerCategory, type ItemLink, type ItemLinkCategory, type ItemLinks, type ItemPayloadKind, type ItemProperty, type ItemWithoutEmbeddedItems, type LanguageCodes, type License, type Metadata, type MultilingualOptions, MultilingualString, type MultilingualStringEntries, type MultilingualStringEntry, type MultilingualStringInput, type MultilingualStringJSON, type MultilingualStringObject, type MultilingualStringText, type Note, OCHRE_LANGUAGES, type Observation, type OchreLanguage, type OchreLanguageCode, type OchreLanguageKind, type OcrString, type Period, type PeriodItemLink, type Person, type PersonItemLink, type Property, type PropertyLike, type PropertyOptions, type PropertyRelation, type PropertySelector, type PropertyValue, type PropertyValueContent, type PropertyValueDataType, type PropertyValueItemLink, type PropertyValueQueryItem, type PropertyVariable, type PropertyVariableItemLink, type ProtectedWebsite, type Query, type QueryGroup, type QueryLeaf, type QueryablePropertyValueDataType, type RecursiveItemCategory, type Resource, type ResourceItemLink, type ResponsiveStyles, type Scope, type Section, type Set, type SetAttributeValueQueryItem, type SetBibliography, type SetConcept, type SetItem, type SetItemCategory, type SetItemLink, type SetItemLocation, type SetItemProperty, type SetItemSimplifiedProperty, type SetItemsSort, type SetItemsSortDirection, type SetPeriod, type SetResource, type SetSpatialUnit, type SetStyle, type SetStyleProperty, type SetTree, type SimplifiedProperty, type SpatialUnit, type SpatialUnitItemLink, type Style, type StylesheetCategory, type StylesheetItem, type Text, type TextItemLink, type TopLevelItem, type Tree, type TreeItemCategory, type TreeItemLink, type WebAccordionItem, type WebBlock, type WebBlockByLayout, type WebBlockItem, type WebBlockLayout, type WebElement, type WebElementComponent, type WebElementComponentName, type WebElementComponentOf, type WebElementOf, type WebIiifViewer, type WebImage, type WebLoadingVariant, type WebOptions, type WebRelationVariant, type WebSectionDisplay, type WebSectionVariant, type WebSidebar, type WebTitle, type Webpage, type Website, type WebsiteMetadata, type WebsitePrivacy, type WebsitePropertyQuery, type WebsitePropertyQueryNode, type WebsiteSegment, type WebsiteType, defineLanguages, fetchGallery, fetchItem, fetchItemChildren, fetchItemLinks, fetchItemOcrData, fetchSetItemLocations, fetchSetItems, fetchSetPropertyValues, fetchTreeItems, fetchWebsite, fetchWebsiteMetadata, flattenItemProperties, getLeafPropertyValues, getOchreLanguage, getOchreLanguageCode, getProperty, getPropertyValue, getPropertyValues, getUniqueProperties, getUniquePropertyVariableLabels, isOchreLanguageCode, isPropertyMatchingFilter, normalizePropertyVariableLabel };
20
+ export { type AccordionWebBlock, type AnyBibliography, type AnyConcept, type AnyItem, type AnyPeriod, type AnyPerson, type AnyPropertyValue, type AnyPropertyVariable, type AnyResource, type AnySet, type AnySpatialUnit, type AnyText, type AnyTree, type BaseItem, type BaseItemLink, type BelongsTo, type Bibliography, type BibliographyEntryInfo, type BibliographyItemLink, type BibliographySourceDocument, type Concept, type ConceptItemLink, type ContainedItemCategory, type ContainedItemCategoryFromOption, type ContainedItemCategoryOption, type Context, type ContextItem, type ContextItemCategory, type ContextNode, type ContextTree, type ContextTreeFilterLevel, type ContextTreeFilterVariant, type ContextTreeLevel, type ContextTreeLevelItem, type Coordinates, type CoordinatesSource, DEFAULT_PAGE_SIZE, type DictionaryUnitItemLink, type EmbeddedBibliography, type EmbeddedConcept, type EmbeddedItem, type EmbeddedPeriod, type EmbeddedPerson, type EmbeddedPropertyValue, type EmbeddedPropertyVariable, type EmbeddedResource, type EmbeddedSet, type EmbeddedSpatialUnit, type EmbeddedText, type EmbeddedTree, type Event, type Gallery, type Heading, type HeadingItemCategory, type Identification, type Image, type ImageMap, type ImageMapArea, type Interpretation, type Item, type ItemCategory, type ItemCategoryFromOption, type ItemCategoryOption, type ItemCategoryWithEmbeddedItems, type ItemContainerCategory, type ItemLink, type ItemLinkCategory, type ItemLinks, type ItemPayloadKind, type ItemProperty, type ItemWithoutEmbeddedItems, type LanguageCodes, type License, type Metadata, type MultilingualOptions, MultilingualString, type MultilingualStringEntries, type MultilingualStringEntry, type MultilingualStringInput, type MultilingualStringJSON, type MultilingualStringObject, type MultilingualStringText, type Note, OCHRE_LANGUAGES, type Observation, type OchreLanguage, type OchreLanguageCode, type OchreLanguageKind, type OchreLanguageStandard, type OcrString, type Period, type PeriodItemLink, type Person, type PersonItemLink, type Property, type PropertyLike, type PropertyOptions, type PropertyRelation, type PropertySelector, type PropertyValue, type PropertyValueContent, type PropertyValueDataType, type PropertyValueItemLink, type PropertyValueQueryItem, type PropertyVariable, type PropertyVariableItemLink, type ProtectedWebsite, type Query, type QueryGroup, type QueryLeaf, type QueryablePropertyValueDataType, type RecursiveItemCategory, type Resource, type ResourceItemLink, type ResponsiveStyles, type Scope, type Section, type Set, type SetAttributeValueQueryItem, type SetBibliography, type SetConcept, type SetItem, type SetItemCategory, type SetItemLink, type SetItemLocation, type SetItemProperty, type SetItemSimplifiedProperty, type SetItemsSort, type SetItemsSortDirection, type SetPeriod, type SetResource, type SetSpatialUnit, type SetStyle, type SetStyleProperty, type SetTree, type SimplifiedProperty, type SpatialUnit, type SpatialUnitItemLink, type Style, type StylesheetCategory, type StylesheetItem, type Text, type TextItemLink, type TopLevelItem, type Tree, type TreeItemCategory, type TreeItemLink, type WebAccordionItem, type WebBlock, type WebBlockByLayout, type WebBlockItem, type WebBlockLayout, type WebElement, type WebElementComponent, type WebElementComponentName, type WebElementComponentOf, type WebElementOf, type WebIiifViewer, type WebImage, type WebLoadingVariant, type WebOptions, type WebRelationVariant, type WebSectionDisplay, type WebSectionVariant, type WebSidebar, type WebTitle, type Webpage, type Website, type WebsiteMetadata, type WebsitePrivacy, type WebsitePropertyQuery, type WebsitePropertyQueryNode, type WebsiteSegment, type WebsiteType, defineLanguages, fetchGallery, fetchItem, fetchItemChildren, fetchItemLinks, fetchItemOcrData, fetchSetItemLocations, fetchSetItems, fetchSetPropertyValues, fetchTreeItems, fetchWebsite, fetchWebsiteMetadata, flattenItemProperties, getLeafPropertyValues, getOchreLanguage, getOchreLanguageCode, getProperty, getPropertyValue, getPropertyValues, getUniqueProperties, getUniquePropertyVariableLabels, isOchreLanguageCode, isPropertyMatchingFilter, normalizePropertyVariableLabel };
@@ -9,6 +9,17 @@
9
9
  * labels that are not in any language
10
10
  */
11
11
  export type OchreLanguageKind = "language" | "transliteration" | "vocabulary" | "non-linguistic";
12
+ /**
13
+ * The standard an OCHRE language code is taken from
14
+ *
15
+ * - `iso639-2b`: the bibliographic ISO 639-2 code, which is OCHRE's rule
16
+ * - `iso639-2t`: the terminology ISO 639-2 code, which OCHRE uses for Dutch
17
+ * - `iso639-3`: the ISO 639-3 identifier, for languages ISO 639-2 has no
18
+ * code for
19
+ * - `ochre`: a code of OCHRE's own, which may collide with an unrelated
20
+ * ISO 639-3 language (`rel` is OCHRE's relator vocabulary, ISO's Rendille)
21
+ */
22
+ export type OchreLanguageStandard = "iso639-2b" | "iso639-2t" | "iso639-3" | "ochre";
12
23
  /**
13
24
  * A language code OCHRE publishes, with the standard codes it stands for
14
25
  */
@@ -21,6 +32,10 @@ export type OchreLanguage = {
21
32
  * What the code tags
22
33
  */
23
34
  kind: OchreLanguageKind;
35
+ /**
36
+ * The standard the OCHRE code itself is taken from
37
+ */
38
+ standard: OchreLanguageStandard;
24
39
  /**
25
40
  * The ISO 639-3 identifier of the language, or null when the code tags
26
41
  * no language, or a language ISO 639-3 does not code
@@ -36,522 +51,601 @@ export type OchreLanguage = {
36
51
  * Every language code OCHRE publishes, mapped to the ISO 639-3 and BCP 47
37
52
  * codes it stands for
38
53
  *
39
- * OCHRE publishes ISO 639-2/B codes, the Library of Congress MARC
40
- * convention: the bibliographic code wherever ISO 639-2 has one (`per`,
41
- * not ISO 639-3 `fas`), the ISO 639-3 identifier where it has none
42
- * (`yua`), and a few codes of its own (`ota-xlt`, `rel`), some of which
43
- * collide with unrelated ISO 639-3 languages. Key everything by these codes,
44
- * because they are what OCHRE serves, and convert through this table when a
45
- * standard code is needed.
54
+ * OCHRE publishes ISO 639-2 codes in their bibliographic (B) form, the
55
+ * Library of Congress MARC convention (`per`, not ISO 639-3 `fas`), with
56
+ * three exceptions: the ISO 639-3 identifier where ISO 639-2 has no code
57
+ * (`yua`), the terminology (T) form for Dutch (`nld`, not `dut`), and codes
58
+ * of its own for transliterations and vocabularies (`ota-xlt`, `rel`), some
59
+ * of which collide with unrelated ISO 639-3 languages. Key everything by
60
+ * these codes, because they are what OCHRE serves, and convert through this
61
+ * table when a standard code is needed.
46
62
  */
47
63
  export declare const OCHRE_LANGUAGES: {
48
64
  readonly akk: {
49
65
  readonly name: "Akkadian";
50
66
  readonly kind: "language";
67
+ readonly standard: "iso639-2b";
51
68
  readonly iso639_3: "akk";
52
69
  readonly bcp47: "akk";
53
70
  };
54
71
  readonly xno: {
55
72
  readonly name: "Anglo-Norman";
56
73
  readonly kind: "language";
74
+ readonly standard: "iso639-3";
57
75
  readonly iso639_3: "xno";
58
76
  readonly bcp47: "xno";
59
77
  };
60
78
  readonly ara: {
61
79
  readonly name: "Arabic";
62
80
  readonly kind: "language";
81
+ readonly standard: "iso639-2b";
63
82
  readonly iso639_3: "ara";
64
83
  readonly bcp47: "ar";
65
84
  };
66
85
  readonly arc: {
67
86
  readonly name: "Aramaic";
68
87
  readonly kind: "language";
88
+ readonly standard: "iso639-2b";
69
89
  readonly iso639_3: "arc";
70
90
  readonly bcp47: "arc";
71
91
  };
72
92
  readonly arm: {
73
93
  readonly name: "Armenian";
74
94
  readonly kind: "language";
95
+ readonly standard: "iso639-2b";
75
96
  readonly iso639_3: "hye";
76
97
  readonly bcp47: "hy";
77
98
  };
78
99
  readonly bel: {
79
100
  readonly name: "Belarusian";
80
101
  readonly kind: "language";
102
+ readonly standard: "iso639-2b";
81
103
  readonly iso639_3: "bel";
82
104
  readonly bcp47: "be";
83
105
  };
84
106
  readonly ben: {
85
107
  readonly name: "Bengali";
86
108
  readonly kind: "language";
109
+ readonly standard: "iso639-2b";
87
110
  readonly iso639_3: "ben";
88
111
  readonly bcp47: "bn";
89
112
  };
90
113
  readonly btc: {
91
114
  readonly name: "Betacode";
92
115
  readonly kind: "vocabulary";
116
+ readonly standard: "ochre";
93
117
  readonly iso639_3: null;
94
118
  readonly bcp47: "grc-Latn-x-betacode";
95
119
  };
96
120
  readonly bos: {
97
121
  readonly name: "Bosnian";
98
122
  readonly kind: "language";
123
+ readonly standard: "iso639-2b";
99
124
  readonly iso639_3: "bos";
100
125
  readonly bcp47: "bs";
101
126
  };
102
127
  readonly bul: {
103
128
  readonly name: "Bulgarian";
104
129
  readonly kind: "language";
130
+ readonly standard: "iso639-2b";
105
131
  readonly iso639_3: "bul";
106
132
  readonly bcp47: "bg";
107
133
  };
108
134
  readonly cnn: {
109
135
  readonly name: "Canaanite";
110
136
  readonly kind: "language";
137
+ readonly standard: "ochre";
111
138
  readonly iso639_3: null;
112
139
  readonly bcp47: null;
113
140
  };
114
141
  readonly yue: {
115
142
  readonly name: "Cantonese";
116
143
  readonly kind: "language";
144
+ readonly standard: "iso639-3";
117
145
  readonly iso639_3: "yue";
118
146
  readonly bcp47: "yue";
119
147
  };
120
148
  readonly cat: {
121
149
  readonly name: "Catalan";
122
150
  readonly kind: "language";
151
+ readonly standard: "iso639-2b";
123
152
  readonly iso639_3: "cat";
124
153
  readonly bcp47: "ca";
125
154
  };
126
155
  readonly chi: {
127
156
  readonly name: "Chinese";
128
157
  readonly kind: "language";
158
+ readonly standard: "iso639-2b";
129
159
  readonly iso639_3: "zho";
130
160
  readonly bcp47: "zh";
131
161
  };
132
162
  readonly chu: {
133
163
  readonly name: "Church Slavonic";
134
164
  readonly kind: "language";
165
+ readonly standard: "iso639-2b";
135
166
  readonly iso639_3: "chu";
136
167
  readonly bcp47: "cu";
137
168
  };
138
169
  readonly lzh: {
139
170
  readonly name: "Classical Chinese";
140
171
  readonly kind: "language";
172
+ readonly standard: "iso639-3";
141
173
  readonly iso639_3: "lzh";
142
174
  readonly bcp47: "lzh";
143
175
  };
144
176
  readonly cop: {
145
177
  readonly name: "Coptic";
146
178
  readonly kind: "language";
179
+ readonly standard: "iso639-2b";
147
180
  readonly iso639_3: "cop";
148
181
  readonly bcp47: "cop";
149
182
  };
150
183
  readonly hrv: {
151
184
  readonly name: "Croatian";
152
185
  readonly kind: "language";
186
+ readonly standard: "iso639-2b";
153
187
  readonly iso639_3: "hrv";
154
188
  readonly bcp47: "hr";
155
189
  };
156
190
  readonly cze: {
157
191
  readonly name: "Czech";
158
192
  readonly kind: "language";
193
+ readonly standard: "iso639-2b";
159
194
  readonly iso639_3: "ces";
160
195
  readonly bcp47: "cs";
161
196
  };
162
197
  readonly egyd: {
163
198
  readonly name: "Demotic";
164
199
  readonly kind: "language";
200
+ readonly standard: "ochre";
165
201
  readonly iso639_3: "egy";
166
202
  readonly bcp47: "egy-Egyd";
167
203
  };
168
204
  readonly nld: {
169
205
  readonly name: "Dutch";
170
206
  readonly kind: "language";
207
+ readonly standard: "iso639-2t";
171
208
  readonly iso639_3: "nld";
172
209
  readonly bcp47: "nl";
173
210
  };
174
211
  readonly dum: {
175
212
  readonly name: "Dutch (Middle)";
176
213
  readonly kind: "language";
214
+ readonly standard: "iso639-2b";
177
215
  readonly iso639_3: "dum";
178
216
  readonly bcp47: "dum";
179
217
  };
180
218
  readonly egy: {
181
219
  readonly name: "Egyptian";
182
220
  readonly kind: "language";
221
+ readonly standard: "iso639-2b";
183
222
  readonly iso639_3: "egy";
184
223
  readonly bcp47: "egy";
185
224
  };
186
225
  readonly elx: {
187
226
  readonly name: "Elamite";
188
227
  readonly kind: "language";
228
+ readonly standard: "iso639-2b";
189
229
  readonly iso639_3: "elx";
190
230
  readonly bcp47: "elx";
191
231
  };
192
232
  readonly eng: {
193
233
  readonly name: "English";
194
234
  readonly kind: "language";
235
+ readonly standard: "iso639-2b";
195
236
  readonly iso639_3: "eng";
196
237
  readonly bcp47: "en";
197
238
  };
198
239
  readonly enm: {
199
240
  readonly name: "English (Middle)";
200
241
  readonly kind: "language";
242
+ readonly standard: "iso639-2b";
201
243
  readonly iso639_3: "enm";
202
244
  readonly bcp47: "enm";
203
245
  };
204
246
  readonly ecy: {
205
247
  readonly name: "Eteocypriot";
206
248
  readonly kind: "language";
249
+ readonly standard: "iso639-3";
207
250
  readonly iso639_3: "ecy";
208
251
  readonly bcp47: "ecy";
209
252
  };
210
253
  readonly fre: {
211
254
  readonly name: "French";
212
255
  readonly kind: "language";
256
+ readonly standard: "iso639-2b";
213
257
  readonly iso639_3: "fra";
214
258
  readonly bcp47: "fr";
215
259
  };
216
260
  readonly frm: {
217
261
  readonly name: "French (Middle)";
218
262
  readonly kind: "language";
263
+ readonly standard: "iso639-2b";
219
264
  readonly iso639_3: "frm";
220
265
  readonly bcp47: "frm";
221
266
  };
222
267
  readonly fro: {
223
268
  readonly name: "French (Old)";
224
269
  readonly kind: "language";
270
+ readonly standard: "iso639-2b";
225
271
  readonly iso639_3: "fro";
226
272
  readonly bcp47: "fro";
227
273
  };
228
274
  readonly geo: {
229
275
  readonly name: "Georgian";
230
276
  readonly kind: "language";
277
+ readonly standard: "iso639-2b";
231
278
  readonly iso639_3: "kat";
232
279
  readonly bcp47: "ka";
233
280
  };
234
281
  readonly ger: {
235
282
  readonly name: "German";
236
283
  readonly kind: "language";
284
+ readonly standard: "iso639-2b";
237
285
  readonly iso639_3: "deu";
238
286
  readonly bcp47: "de";
239
287
  };
240
288
  readonly nds: {
241
289
  readonly name: "German (Low)";
242
290
  readonly kind: "language";
291
+ readonly standard: "iso639-2b";
243
292
  readonly iso639_3: "nds";
244
293
  readonly bcp47: "nds";
245
294
  };
246
295
  readonly gmh: {
247
296
  readonly name: "German (Middle High)";
248
297
  readonly kind: "language";
298
+ readonly standard: "iso639-2b";
249
299
  readonly iso639_3: "gmh";
250
300
  readonly bcp47: "gmh";
251
301
  };
252
302
  readonly goh: {
253
303
  readonly name: "German (Old High)";
254
304
  readonly kind: "language";
305
+ readonly standard: "iso639-2b";
255
306
  readonly iso639_3: "goh";
256
307
  readonly bcp47: "goh";
257
308
  };
258
309
  readonly grc: {
259
310
  readonly name: "Greek";
260
311
  readonly kind: "language";
312
+ readonly standard: "iso639-2b";
261
313
  readonly iso639_3: "grc";
262
314
  readonly bcp47: "grc";
263
315
  };
264
316
  readonly guj: {
265
317
  readonly name: "Gujarati";
266
318
  readonly kind: "language";
319
+ readonly standard: "iso639-2b";
267
320
  readonly iso639_3: "guj";
268
321
  readonly bcp47: "gu";
269
322
  };
270
- readonly "zh-Latn-pinyin": {
323
+ readonly pinyin: {
271
324
  readonly name: "Hanyu Pinyin";
272
325
  readonly kind: "transliteration";
326
+ readonly standard: "ochre";
273
327
  readonly iso639_3: "cmn";
274
328
  readonly bcp47: "zh-Latn-pinyin";
275
329
  };
276
330
  readonly htt: {
277
331
  readonly name: "Hattian";
278
332
  readonly kind: "language";
333
+ readonly standard: "ochre";
279
334
  readonly iso639_3: "xht";
280
335
  readonly bcp47: "xht";
281
336
  };
282
337
  readonly heb: {
283
338
  readonly name: "Hebrew";
284
339
  readonly kind: "language";
340
+ readonly standard: "iso639-2b";
285
341
  readonly iso639_3: "heb";
286
342
  readonly bcp47: "he";
287
343
  };
288
344
  readonly hin: {
289
345
  readonly name: "Hindi";
290
346
  readonly kind: "language";
347
+ readonly standard: "iso639-2b";
291
348
  readonly iso639_3: "hin";
292
349
  readonly bcp47: "hi";
293
350
  };
294
351
  readonly hit: {
295
352
  readonly name: "Hittite";
296
353
  readonly kind: "language";
354
+ readonly standard: "iso639-2b";
297
355
  readonly iso639_3: "hit";
298
356
  readonly bcp47: "hit";
299
357
  };
300
358
  readonly xhu: {
301
359
  readonly name: "Hurrian";
302
360
  readonly kind: "language";
361
+ readonly standard: "iso639-3";
303
362
  readonly iso639_3: "xhu";
304
363
  readonly bcp47: "xhu";
305
364
  };
306
365
  readonly ita: {
307
366
  readonly name: "Italian";
308
367
  readonly kind: "language";
368
+ readonly standard: "iso639-2b";
309
369
  readonly iso639_3: "ita";
310
370
  readonly bcp47: "it";
311
371
  };
312
372
  readonly jpn: {
313
373
  readonly name: "Japanese";
314
374
  readonly kind: "language";
375
+ readonly standard: "iso639-2b";
315
376
  readonly iso639_3: "jpn";
316
377
  readonly bcp47: "ja";
317
378
  };
318
379
  readonly "jpn-xlt": {
319
380
  readonly name: "Japanese XLit";
320
381
  readonly kind: "transliteration";
382
+ readonly standard: "ochre";
321
383
  readonly iso639_3: "jpn";
322
384
  readonly bcp47: "ja-Latn-t-ja";
323
385
  };
324
386
  readonly kaz: {
325
387
  readonly name: "Kazakh";
326
388
  readonly kind: "language";
389
+ readonly standard: "iso639-2b";
327
390
  readonly iso639_3: "kaz";
328
391
  readonly bcp47: "kk";
329
392
  };
330
393
  readonly kor: {
331
394
  readonly name: "Korean";
332
395
  readonly kind: "language";
396
+ readonly standard: "iso639-2b";
333
397
  readonly iso639_3: "kor";
334
398
  readonly bcp47: "ko";
335
399
  };
336
- readonly lmc: {
337
- readonly name: "Late Middle Chinese";
338
- readonly kind: "language";
339
- readonly iso639_3: "ltc";
340
- readonly bcp47: "ltc";
341
- };
342
400
  readonly lat: {
343
401
  readonly name: "Latin";
344
402
  readonly kind: "language";
403
+ readonly standard: "iso639-2b";
345
404
  readonly iso639_3: "lat";
346
405
  readonly bcp47: "la";
347
406
  };
348
407
  readonly xlt: {
349
408
  readonly name: "Latin XLit";
350
409
  readonly kind: "transliteration";
410
+ readonly standard: "ochre";
351
411
  readonly iso639_3: null;
352
412
  readonly bcp47: "und-Latn";
353
413
  };
354
414
  readonly luw: {
355
415
  readonly name: "Luwian";
356
416
  readonly kind: "language";
417
+ readonly standard: "ochre";
357
418
  readonly iso639_3: null;
358
419
  readonly bcp47: null;
359
420
  };
360
421
  readonly cmn: {
361
422
  readonly name: "Mandarin";
362
423
  readonly kind: "language";
424
+ readonly standard: "iso639-3";
363
425
  readonly iso639_3: "cmn";
364
426
  readonly bcp47: "cmn";
365
427
  };
366
428
  readonly mar: {
367
429
  readonly name: "Marathi";
368
430
  readonly kind: "language";
431
+ readonly standard: "iso639-2b";
369
432
  readonly iso639_3: "mar";
370
433
  readonly bcp47: "mr";
371
434
  };
372
435
  readonly met: {
373
436
  readonly name: "Metrical";
374
437
  readonly kind: "vocabulary";
438
+ readonly standard: "ochre";
375
439
  readonly iso639_3: null;
376
440
  readonly bcp47: null;
377
441
  };
378
442
  readonly zxx: {
379
443
  readonly name: "No linguistic content";
380
444
  readonly kind: "non-linguistic";
445
+ readonly standard: "iso639-2b";
381
446
  readonly iso639_3: "zxx";
382
447
  readonly bcp47: "zxx";
383
448
  };
384
449
  readonly och: {
385
450
  readonly name: "Old Chinese";
386
451
  readonly kind: "language";
452
+ readonly standard: "iso639-3";
387
453
  readonly iso639_3: "och";
388
454
  readonly bcp47: "och";
389
455
  };
390
456
  readonly peo: {
391
457
  readonly name: "Old Persian";
392
458
  readonly kind: "language";
459
+ readonly standard: "iso639-2b";
393
460
  readonly iso639_3: "peo";
394
461
  readonly bcp47: "peo";
395
462
  };
396
463
  readonly ota: {
397
464
  readonly name: "Ottoman Turkish";
398
465
  readonly kind: "language";
466
+ readonly standard: "iso639-2b";
399
467
  readonly iso639_3: "ota";
400
468
  readonly bcp47: "ota";
401
469
  };
402
470
  readonly "ota-xlt": {
403
471
  readonly name: "Ottoman Turkish XLit";
404
472
  readonly kind: "transliteration";
473
+ readonly standard: "ochre";
405
474
  readonly iso639_3: "ota";
406
475
  readonly bcp47: "ota-Latn-t-ota-arab";
407
476
  };
408
477
  readonly pla: {
409
478
  readonly name: "Palaic";
410
479
  readonly kind: "language";
480
+ readonly standard: "ochre";
411
481
  readonly iso639_3: "plq";
412
482
  readonly bcp47: "plq";
413
483
  };
414
484
  readonly per: {
415
485
  readonly name: "Persian";
416
486
  readonly kind: "language";
487
+ readonly standard: "iso639-2b";
417
488
  readonly iso639_3: "fas";
418
489
  readonly bcp47: "fa";
419
490
  };
420
491
  readonly phn: {
421
492
  readonly name: "Phoenician";
422
493
  readonly kind: "language";
494
+ readonly standard: "iso639-2b";
423
495
  readonly iso639_3: "phn";
424
496
  readonly bcp47: "phn";
425
497
  };
426
498
  readonly xpg: {
427
499
  readonly name: "Phrygian";
428
500
  readonly kind: "language";
501
+ readonly standard: "iso639-3";
429
502
  readonly iso639_3: "xpg";
430
503
  readonly bcp47: "xpg";
431
504
  };
432
505
  readonly pol: {
433
506
  readonly name: "Polish";
434
507
  readonly kind: "language";
508
+ readonly standard: "iso639-2b";
435
509
  readonly iso639_3: "pol";
436
510
  readonly bcp47: "pl";
437
511
  };
438
512
  readonly por: {
439
513
  readonly name: "Portuguese";
440
514
  readonly kind: "language";
515
+ readonly standard: "iso639-2b";
441
516
  readonly iso639_3: "por";
442
517
  readonly bcp47: "pt";
443
518
  };
444
519
  readonly pro: {
445
520
  readonly name: "Pronunciation";
446
521
  readonly kind: "vocabulary";
522
+ readonly standard: "iso639-2b";
447
523
  readonly iso639_3: null;
448
524
  readonly bcp47: null;
449
525
  };
450
526
  readonly rel: {
451
527
  readonly name: "Relator";
452
528
  readonly kind: "vocabulary";
529
+ readonly standard: "ochre";
453
530
  readonly iso639_3: null;
454
531
  readonly bcp47: "zxx";
455
532
  };
456
533
  readonly rus: {
457
534
  readonly name: "Russian";
458
535
  readonly kind: "language";
536
+ readonly standard: "iso639-2b";
459
537
  readonly iso639_3: "rus";
460
538
  readonly bcp47: "ru";
461
539
  };
462
540
  readonly san: {
463
541
  readonly name: "Sanskrit";
464
542
  readonly kind: "language";
543
+ readonly standard: "iso639-2b";
465
544
  readonly iso639_3: "san";
466
545
  readonly bcp47: "sa";
467
546
  };
468
547
  readonly srp: {
469
548
  readonly name: "Serbian";
470
549
  readonly kind: "language";
550
+ readonly standard: "iso639-2b";
471
551
  readonly iso639_3: "srp";
472
552
  readonly bcp47: "sr";
473
553
  };
474
554
  readonly spa: {
475
555
  readonly name: "Spanish";
476
556
  readonly kind: "language";
557
+ readonly standard: "iso639-2b";
477
558
  readonly iso639_3: "spa";
478
559
  readonly bcp47: "es";
479
560
  };
480
561
  readonly sux: {
481
562
  readonly name: "Sumerian";
482
563
  readonly kind: "language";
564
+ readonly standard: "iso639-2b";
483
565
  readonly iso639_3: "sux";
484
566
  readonly bcp47: "sux";
485
567
  };
486
568
  readonly sup: {
487
569
  readonly name: "Supplemental";
488
570
  readonly kind: "vocabulary";
571
+ readonly standard: "ochre";
489
572
  readonly iso639_3: null;
490
573
  readonly bcp47: null;
491
574
  };
492
575
  readonly syc: {
493
576
  readonly name: "Syriac";
494
577
  readonly kind: "language";
578
+ readonly standard: "iso639-2b";
495
579
  readonly iso639_3: "syc";
496
580
  readonly bcp47: "syc";
497
581
  };
498
582
  readonly tei: {
499
583
  readonly name: "TEI";
500
584
  readonly kind: "vocabulary";
585
+ readonly standard: "ochre";
501
586
  readonly iso639_3: null;
502
587
  readonly bcp47: null;
503
588
  };
504
589
  readonly tur: {
505
590
  readonly name: "Turkish";
506
591
  readonly kind: "language";
592
+ readonly standard: "iso639-2b";
507
593
  readonly iso639_3: "tur";
508
594
  readonly bcp47: "tr";
509
595
  };
510
596
  readonly uga: {
511
597
  readonly name: "Ugaritic";
512
598
  readonly kind: "language";
599
+ readonly standard: "iso639-2b";
513
600
  readonly iso639_3: "uga";
514
601
  readonly bcp47: "uga";
515
602
  };
516
603
  readonly ukr: {
517
604
  readonly name: "Ukrainian";
518
605
  readonly kind: "language";
606
+ readonly standard: "iso639-2b";
519
607
  readonly iso639_3: "ukr";
520
608
  readonly bcp47: "uk";
521
609
  };
522
610
  readonly urd: {
523
611
  readonly name: "Urdu";
524
612
  readonly kind: "language";
613
+ readonly standard: "iso639-2b";
525
614
  readonly iso639_3: "urd";
526
615
  readonly bcp47: "ur";
527
616
  };
528
617
  readonly uzb: {
529
618
  readonly name: "Uzbek";
530
619
  readonly kind: "language";
620
+ readonly standard: "iso639-2b";
531
621
  readonly iso639_3: "uzb";
532
622
  readonly bcp47: "uz";
533
623
  };
534
624
  readonly var: {
535
625
  readonly name: "Variation";
536
626
  readonly kind: "vocabulary";
627
+ readonly standard: "ochre";
537
628
  readonly iso639_3: null;
538
629
  readonly bcp47: null;
539
630
  };
540
631
  readonly was: {
541
632
  readonly name: "Washo";
542
633
  readonly kind: "language";
634
+ readonly standard: "iso639-2b";
543
635
  readonly iso639_3: "was";
544
636
  readonly bcp47: "was";
545
637
  };
546
638
  readonly yid: {
547
639
  readonly name: "Yiddish";
548
640
  readonly kind: "language";
641
+ readonly standard: "iso639-2b";
549
642
  readonly iso639_3: "yid";
550
643
  readonly bcp47: "yi";
551
644
  };
552
645
  readonly yua: {
553
646
  readonly name: "Yucatec Maya";
554
647
  readonly kind: "language";
648
+ readonly standard: "iso639-3";
555
649
  readonly iso639_3: "yua";
556
650
  readonly bcp47: "yua";
557
651
  };
@@ -3,522 +3,601 @@
3
3
  * Every language code OCHRE publishes, mapped to the ISO 639-3 and BCP 47
4
4
  * codes it stands for
5
5
  *
6
- * OCHRE publishes ISO 639-2/B codes, the Library of Congress MARC
7
- * convention: the bibliographic code wherever ISO 639-2 has one (`per`,
8
- * not ISO 639-3 `fas`), the ISO 639-3 identifier where it has none
9
- * (`yua`), and a few codes of its own (`ota-xlt`, `rel`), some of which
10
- * collide with unrelated ISO 639-3 languages. Key everything by these codes,
11
- * because they are what OCHRE serves, and convert through this table when a
12
- * standard code is needed.
6
+ * OCHRE publishes ISO 639-2 codes in their bibliographic (B) form, the
7
+ * Library of Congress MARC convention (`per`, not ISO 639-3 `fas`), with
8
+ * three exceptions: the ISO 639-3 identifier where ISO 639-2 has no code
9
+ * (`yua`), the terminology (T) form for Dutch (`nld`, not `dut`), and codes
10
+ * of its own for transliterations and vocabularies (`ota-xlt`, `rel`), some
11
+ * of which collide with unrelated ISO 639-3 languages. Key everything by
12
+ * these codes, because they are what OCHRE serves, and convert through this
13
+ * table when a standard code is needed.
13
14
  */
14
15
  const OCHRE_LANGUAGES = {
15
16
  akk: {
16
17
  name: "Akkadian",
17
18
  kind: "language",
19
+ standard: "iso639-2b",
18
20
  iso639_3: "akk",
19
21
  bcp47: "akk"
20
22
  },
21
23
  xno: {
22
24
  name: "Anglo-Norman",
23
25
  kind: "language",
26
+ standard: "iso639-3",
24
27
  iso639_3: "xno",
25
28
  bcp47: "xno"
26
29
  },
27
30
  ara: {
28
31
  name: "Arabic",
29
32
  kind: "language",
33
+ standard: "iso639-2b",
30
34
  iso639_3: "ara",
31
35
  bcp47: "ar"
32
36
  },
33
37
  arc: {
34
38
  name: "Aramaic",
35
39
  kind: "language",
40
+ standard: "iso639-2b",
36
41
  iso639_3: "arc",
37
42
  bcp47: "arc"
38
43
  },
39
44
  arm: {
40
45
  name: "Armenian",
41
46
  kind: "language",
47
+ standard: "iso639-2b",
42
48
  iso639_3: "hye",
43
49
  bcp47: "hy"
44
50
  },
45
51
  bel: {
46
52
  name: "Belarusian",
47
53
  kind: "language",
54
+ standard: "iso639-2b",
48
55
  iso639_3: "bel",
49
56
  bcp47: "be"
50
57
  },
51
58
  ben: {
52
59
  name: "Bengali",
53
60
  kind: "language",
61
+ standard: "iso639-2b",
54
62
  iso639_3: "ben",
55
63
  bcp47: "bn"
56
64
  },
57
65
  btc: {
58
66
  name: "Betacode",
59
67
  kind: "vocabulary",
68
+ standard: "ochre",
60
69
  iso639_3: null,
61
70
  bcp47: "grc-Latn-x-betacode"
62
71
  },
63
72
  bos: {
64
73
  name: "Bosnian",
65
74
  kind: "language",
75
+ standard: "iso639-2b",
66
76
  iso639_3: "bos",
67
77
  bcp47: "bs"
68
78
  },
69
79
  bul: {
70
80
  name: "Bulgarian",
71
81
  kind: "language",
82
+ standard: "iso639-2b",
72
83
  iso639_3: "bul",
73
84
  bcp47: "bg"
74
85
  },
75
86
  cnn: {
76
87
  name: "Canaanite",
77
88
  kind: "language",
89
+ standard: "ochre",
78
90
  iso639_3: null,
79
91
  bcp47: null
80
92
  },
81
93
  yue: {
82
94
  name: "Cantonese",
83
95
  kind: "language",
96
+ standard: "iso639-3",
84
97
  iso639_3: "yue",
85
98
  bcp47: "yue"
86
99
  },
87
100
  cat: {
88
101
  name: "Catalan",
89
102
  kind: "language",
103
+ standard: "iso639-2b",
90
104
  iso639_3: "cat",
91
105
  bcp47: "ca"
92
106
  },
93
107
  chi: {
94
108
  name: "Chinese",
95
109
  kind: "language",
110
+ standard: "iso639-2b",
96
111
  iso639_3: "zho",
97
112
  bcp47: "zh"
98
113
  },
99
114
  chu: {
100
115
  name: "Church Slavonic",
101
116
  kind: "language",
117
+ standard: "iso639-2b",
102
118
  iso639_3: "chu",
103
119
  bcp47: "cu"
104
120
  },
105
121
  lzh: {
106
122
  name: "Classical Chinese",
107
123
  kind: "language",
124
+ standard: "iso639-3",
108
125
  iso639_3: "lzh",
109
126
  bcp47: "lzh"
110
127
  },
111
128
  cop: {
112
129
  name: "Coptic",
113
130
  kind: "language",
131
+ standard: "iso639-2b",
114
132
  iso639_3: "cop",
115
133
  bcp47: "cop"
116
134
  },
117
135
  hrv: {
118
136
  name: "Croatian",
119
137
  kind: "language",
138
+ standard: "iso639-2b",
120
139
  iso639_3: "hrv",
121
140
  bcp47: "hr"
122
141
  },
123
142
  cze: {
124
143
  name: "Czech",
125
144
  kind: "language",
145
+ standard: "iso639-2b",
126
146
  iso639_3: "ces",
127
147
  bcp47: "cs"
128
148
  },
129
149
  egyd: {
130
150
  name: "Demotic",
131
151
  kind: "language",
152
+ standard: "ochre",
132
153
  iso639_3: "egy",
133
154
  bcp47: "egy-Egyd"
134
155
  },
135
156
  nld: {
136
157
  name: "Dutch",
137
158
  kind: "language",
159
+ standard: "iso639-2t",
138
160
  iso639_3: "nld",
139
161
  bcp47: "nl"
140
162
  },
141
163
  dum: {
142
164
  name: "Dutch (Middle)",
143
165
  kind: "language",
166
+ standard: "iso639-2b",
144
167
  iso639_3: "dum",
145
168
  bcp47: "dum"
146
169
  },
147
170
  egy: {
148
171
  name: "Egyptian",
149
172
  kind: "language",
173
+ standard: "iso639-2b",
150
174
  iso639_3: "egy",
151
175
  bcp47: "egy"
152
176
  },
153
177
  elx: {
154
178
  name: "Elamite",
155
179
  kind: "language",
180
+ standard: "iso639-2b",
156
181
  iso639_3: "elx",
157
182
  bcp47: "elx"
158
183
  },
159
184
  eng: {
160
185
  name: "English",
161
186
  kind: "language",
187
+ standard: "iso639-2b",
162
188
  iso639_3: "eng",
163
189
  bcp47: "en"
164
190
  },
165
191
  enm: {
166
192
  name: "English (Middle)",
167
193
  kind: "language",
194
+ standard: "iso639-2b",
168
195
  iso639_3: "enm",
169
196
  bcp47: "enm"
170
197
  },
171
198
  ecy: {
172
199
  name: "Eteocypriot",
173
200
  kind: "language",
201
+ standard: "iso639-3",
174
202
  iso639_3: "ecy",
175
203
  bcp47: "ecy"
176
204
  },
177
205
  fre: {
178
206
  name: "French",
179
207
  kind: "language",
208
+ standard: "iso639-2b",
180
209
  iso639_3: "fra",
181
210
  bcp47: "fr"
182
211
  },
183
212
  frm: {
184
213
  name: "French (Middle)",
185
214
  kind: "language",
215
+ standard: "iso639-2b",
186
216
  iso639_3: "frm",
187
217
  bcp47: "frm"
188
218
  },
189
219
  fro: {
190
220
  name: "French (Old)",
191
221
  kind: "language",
222
+ standard: "iso639-2b",
192
223
  iso639_3: "fro",
193
224
  bcp47: "fro"
194
225
  },
195
226
  geo: {
196
227
  name: "Georgian",
197
228
  kind: "language",
229
+ standard: "iso639-2b",
198
230
  iso639_3: "kat",
199
231
  bcp47: "ka"
200
232
  },
201
233
  ger: {
202
234
  name: "German",
203
235
  kind: "language",
236
+ standard: "iso639-2b",
204
237
  iso639_3: "deu",
205
238
  bcp47: "de"
206
239
  },
207
240
  nds: {
208
241
  name: "German (Low)",
209
242
  kind: "language",
243
+ standard: "iso639-2b",
210
244
  iso639_3: "nds",
211
245
  bcp47: "nds"
212
246
  },
213
247
  gmh: {
214
248
  name: "German (Middle High)",
215
249
  kind: "language",
250
+ standard: "iso639-2b",
216
251
  iso639_3: "gmh",
217
252
  bcp47: "gmh"
218
253
  },
219
254
  goh: {
220
255
  name: "German (Old High)",
221
256
  kind: "language",
257
+ standard: "iso639-2b",
222
258
  iso639_3: "goh",
223
259
  bcp47: "goh"
224
260
  },
225
261
  grc: {
226
262
  name: "Greek",
227
263
  kind: "language",
264
+ standard: "iso639-2b",
228
265
  iso639_3: "grc",
229
266
  bcp47: "grc"
230
267
  },
231
268
  guj: {
232
269
  name: "Gujarati",
233
270
  kind: "language",
271
+ standard: "iso639-2b",
234
272
  iso639_3: "guj",
235
273
  bcp47: "gu"
236
274
  },
237
- "zh-Latn-pinyin": {
275
+ pinyin: {
238
276
  name: "Hanyu Pinyin",
239
277
  kind: "transliteration",
278
+ standard: "ochre",
240
279
  iso639_3: "cmn",
241
280
  bcp47: "zh-Latn-pinyin"
242
281
  },
243
282
  htt: {
244
283
  name: "Hattian",
245
284
  kind: "language",
285
+ standard: "ochre",
246
286
  iso639_3: "xht",
247
287
  bcp47: "xht"
248
288
  },
249
289
  heb: {
250
290
  name: "Hebrew",
251
291
  kind: "language",
292
+ standard: "iso639-2b",
252
293
  iso639_3: "heb",
253
294
  bcp47: "he"
254
295
  },
255
296
  hin: {
256
297
  name: "Hindi",
257
298
  kind: "language",
299
+ standard: "iso639-2b",
258
300
  iso639_3: "hin",
259
301
  bcp47: "hi"
260
302
  },
261
303
  hit: {
262
304
  name: "Hittite",
263
305
  kind: "language",
306
+ standard: "iso639-2b",
264
307
  iso639_3: "hit",
265
308
  bcp47: "hit"
266
309
  },
267
310
  xhu: {
268
311
  name: "Hurrian",
269
312
  kind: "language",
313
+ standard: "iso639-3",
270
314
  iso639_3: "xhu",
271
315
  bcp47: "xhu"
272
316
  },
273
317
  ita: {
274
318
  name: "Italian",
275
319
  kind: "language",
320
+ standard: "iso639-2b",
276
321
  iso639_3: "ita",
277
322
  bcp47: "it"
278
323
  },
279
324
  jpn: {
280
325
  name: "Japanese",
281
326
  kind: "language",
327
+ standard: "iso639-2b",
282
328
  iso639_3: "jpn",
283
329
  bcp47: "ja"
284
330
  },
285
331
  "jpn-xlt": {
286
332
  name: "Japanese XLit",
287
333
  kind: "transliteration",
334
+ standard: "ochre",
288
335
  iso639_3: "jpn",
289
336
  bcp47: "ja-Latn-t-ja"
290
337
  },
291
338
  kaz: {
292
339
  name: "Kazakh",
293
340
  kind: "language",
341
+ standard: "iso639-2b",
294
342
  iso639_3: "kaz",
295
343
  bcp47: "kk"
296
344
  },
297
345
  kor: {
298
346
  name: "Korean",
299
347
  kind: "language",
348
+ standard: "iso639-2b",
300
349
  iso639_3: "kor",
301
350
  bcp47: "ko"
302
351
  },
303
- lmc: {
304
- name: "Late Middle Chinese",
305
- kind: "language",
306
- iso639_3: "ltc",
307
- bcp47: "ltc"
308
- },
309
352
  lat: {
310
353
  name: "Latin",
311
354
  kind: "language",
355
+ standard: "iso639-2b",
312
356
  iso639_3: "lat",
313
357
  bcp47: "la"
314
358
  },
315
359
  xlt: {
316
360
  name: "Latin XLit",
317
361
  kind: "transliteration",
362
+ standard: "ochre",
318
363
  iso639_3: null,
319
364
  bcp47: "und-Latn"
320
365
  },
321
366
  luw: {
322
367
  name: "Luwian",
323
368
  kind: "language",
369
+ standard: "ochre",
324
370
  iso639_3: null,
325
371
  bcp47: null
326
372
  },
327
373
  cmn: {
328
374
  name: "Mandarin",
329
375
  kind: "language",
376
+ standard: "iso639-3",
330
377
  iso639_3: "cmn",
331
378
  bcp47: "cmn"
332
379
  },
333
380
  mar: {
334
381
  name: "Marathi",
335
382
  kind: "language",
383
+ standard: "iso639-2b",
336
384
  iso639_3: "mar",
337
385
  bcp47: "mr"
338
386
  },
339
387
  met: {
340
388
  name: "Metrical",
341
389
  kind: "vocabulary",
390
+ standard: "ochre",
342
391
  iso639_3: null,
343
392
  bcp47: null
344
393
  },
345
394
  zxx: {
346
395
  name: "No linguistic content",
347
396
  kind: "non-linguistic",
397
+ standard: "iso639-2b",
348
398
  iso639_3: "zxx",
349
399
  bcp47: "zxx"
350
400
  },
351
401
  och: {
352
402
  name: "Old Chinese",
353
403
  kind: "language",
404
+ standard: "iso639-3",
354
405
  iso639_3: "och",
355
406
  bcp47: "och"
356
407
  },
357
408
  peo: {
358
409
  name: "Old Persian",
359
410
  kind: "language",
411
+ standard: "iso639-2b",
360
412
  iso639_3: "peo",
361
413
  bcp47: "peo"
362
414
  },
363
415
  ota: {
364
416
  name: "Ottoman Turkish",
365
417
  kind: "language",
418
+ standard: "iso639-2b",
366
419
  iso639_3: "ota",
367
420
  bcp47: "ota"
368
421
  },
369
422
  "ota-xlt": {
370
423
  name: "Ottoman Turkish XLit",
371
424
  kind: "transliteration",
425
+ standard: "ochre",
372
426
  iso639_3: "ota",
373
427
  bcp47: "ota-Latn-t-ota-arab"
374
428
  },
375
429
  pla: {
376
430
  name: "Palaic",
377
431
  kind: "language",
432
+ standard: "ochre",
378
433
  iso639_3: "plq",
379
434
  bcp47: "plq"
380
435
  },
381
436
  per: {
382
437
  name: "Persian",
383
438
  kind: "language",
439
+ standard: "iso639-2b",
384
440
  iso639_3: "fas",
385
441
  bcp47: "fa"
386
442
  },
387
443
  phn: {
388
444
  name: "Phoenician",
389
445
  kind: "language",
446
+ standard: "iso639-2b",
390
447
  iso639_3: "phn",
391
448
  bcp47: "phn"
392
449
  },
393
450
  xpg: {
394
451
  name: "Phrygian",
395
452
  kind: "language",
453
+ standard: "iso639-3",
396
454
  iso639_3: "xpg",
397
455
  bcp47: "xpg"
398
456
  },
399
457
  pol: {
400
458
  name: "Polish",
401
459
  kind: "language",
460
+ standard: "iso639-2b",
402
461
  iso639_3: "pol",
403
462
  bcp47: "pl"
404
463
  },
405
464
  por: {
406
465
  name: "Portuguese",
407
466
  kind: "language",
467
+ standard: "iso639-2b",
408
468
  iso639_3: "por",
409
469
  bcp47: "pt"
410
470
  },
411
471
  pro: {
412
472
  name: "Pronunciation",
413
473
  kind: "vocabulary",
474
+ standard: "iso639-2b",
414
475
  iso639_3: null,
415
476
  bcp47: null
416
477
  },
417
478
  rel: {
418
479
  name: "Relator",
419
480
  kind: "vocabulary",
481
+ standard: "ochre",
420
482
  iso639_3: null,
421
483
  bcp47: "zxx"
422
484
  },
423
485
  rus: {
424
486
  name: "Russian",
425
487
  kind: "language",
488
+ standard: "iso639-2b",
426
489
  iso639_3: "rus",
427
490
  bcp47: "ru"
428
491
  },
429
492
  san: {
430
493
  name: "Sanskrit",
431
494
  kind: "language",
495
+ standard: "iso639-2b",
432
496
  iso639_3: "san",
433
497
  bcp47: "sa"
434
498
  },
435
499
  srp: {
436
500
  name: "Serbian",
437
501
  kind: "language",
502
+ standard: "iso639-2b",
438
503
  iso639_3: "srp",
439
504
  bcp47: "sr"
440
505
  },
441
506
  spa: {
442
507
  name: "Spanish",
443
508
  kind: "language",
509
+ standard: "iso639-2b",
444
510
  iso639_3: "spa",
445
511
  bcp47: "es"
446
512
  },
447
513
  sux: {
448
514
  name: "Sumerian",
449
515
  kind: "language",
516
+ standard: "iso639-2b",
450
517
  iso639_3: "sux",
451
518
  bcp47: "sux"
452
519
  },
453
520
  sup: {
454
521
  name: "Supplemental",
455
522
  kind: "vocabulary",
523
+ standard: "ochre",
456
524
  iso639_3: null,
457
525
  bcp47: null
458
526
  },
459
527
  syc: {
460
528
  name: "Syriac",
461
529
  kind: "language",
530
+ standard: "iso639-2b",
462
531
  iso639_3: "syc",
463
532
  bcp47: "syc"
464
533
  },
465
534
  tei: {
466
535
  name: "TEI",
467
536
  kind: "vocabulary",
537
+ standard: "ochre",
468
538
  iso639_3: null,
469
539
  bcp47: null
470
540
  },
471
541
  tur: {
472
542
  name: "Turkish",
473
543
  kind: "language",
544
+ standard: "iso639-2b",
474
545
  iso639_3: "tur",
475
546
  bcp47: "tr"
476
547
  },
477
548
  uga: {
478
549
  name: "Ugaritic",
479
550
  kind: "language",
551
+ standard: "iso639-2b",
480
552
  iso639_3: "uga",
481
553
  bcp47: "uga"
482
554
  },
483
555
  ukr: {
484
556
  name: "Ukrainian",
485
557
  kind: "language",
558
+ standard: "iso639-2b",
486
559
  iso639_3: "ukr",
487
560
  bcp47: "uk"
488
561
  },
489
562
  urd: {
490
563
  name: "Urdu",
491
564
  kind: "language",
565
+ standard: "iso639-2b",
492
566
  iso639_3: "urd",
493
567
  bcp47: "ur"
494
568
  },
495
569
  uzb: {
496
570
  name: "Uzbek",
497
571
  kind: "language",
572
+ standard: "iso639-2b",
498
573
  iso639_3: "uzb",
499
574
  bcp47: "uz"
500
575
  },
501
576
  var: {
502
577
  name: "Variation",
503
578
  kind: "vocabulary",
579
+ standard: "ochre",
504
580
  iso639_3: null,
505
581
  bcp47: null
506
582
  },
507
583
  was: {
508
584
  name: "Washo",
509
585
  kind: "language",
586
+ standard: "iso639-2b",
510
587
  iso639_3: "was",
511
588
  bcp47: "was"
512
589
  },
513
590
  yid: {
514
591
  name: "Yiddish",
515
592
  kind: "language",
593
+ standard: "iso639-2b",
516
594
  iso639_3: "yid",
517
595
  bcp47: "yi"
518
596
  },
519
597
  yua: {
520
598
  name: "Yucatec Maya",
521
599
  kind: "language",
600
+ standard: "iso639-3",
522
601
  iso639_3: "yua",
523
602
  bcp47: "yua"
524
603
  }
package/dist/schemas.mjs CHANGED
@@ -31,7 +31,7 @@ const uuidSchema = v.pipe(v.string(), v.check(isPseudoUuid, "Invalid pseudo-UUID
31
31
  const ochreLanguageCodeSchema = v.pipe(v.string("Language code must be a string"), v.check(isOchreLanguageCode, (issue) => {
32
32
  const input = issue.input;
33
33
  const ochreCode = getOchreLanguageCode(input);
34
- return ochreCode == null ? `Unknown OCHRE language code "${input}"` : `Unknown OCHRE language code "${input}"; OCHRE stores this language as "${ochreCode}"`;
34
+ return ochreCode == null ? `Unknown OCHRE language code "${input}"` : `Unknown OCHRE language code "${input}"; OCHRE publishes this language as "${ochreCode}"`;
35
35
  }));
36
36
  /**
37
37
  * Valid component types for web elements
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ochre-sdk",
3
- "version": "1.3.6",
3
+ "version": "1.3.8",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "Node.js library for working with OCHRE (Online Cultural and Historical Research Environment) data",