@biblioteksentralen/bmdb-search 0.0.0-beta.1
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/CHANGELOG.md +3 -0
- package/README.md +83 -0
- package/dist/index.cjs +30 -0
- package/dist/index.d.cts +1040 -0
- package/dist/index.d.ts +1040 -0
- package/dist/index.js +22 -0
- package/package.json +57 -0
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,1040 @@
|
|
|
1
|
+
import { ClientOptions, Client } from 'openapi-fetch';
|
|
2
|
+
import { OpenapiQueryClient } from 'openapi-react-query';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* This file was auto-generated by openapi-typescript.
|
|
6
|
+
* Do not make direct changes to the file.
|
|
7
|
+
*/
|
|
8
|
+
interface paths {
|
|
9
|
+
"/works/search": {
|
|
10
|
+
parameters: {
|
|
11
|
+
query?: never;
|
|
12
|
+
header?: never;
|
|
13
|
+
path?: never;
|
|
14
|
+
cookie?: never;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Search works
|
|
18
|
+
* @description Endpoint for searching works.
|
|
19
|
+
*
|
|
20
|
+
*/
|
|
21
|
+
get: operations["searchWorks"];
|
|
22
|
+
put?: never;
|
|
23
|
+
post?: never;
|
|
24
|
+
delete?: never;
|
|
25
|
+
options?: never;
|
|
26
|
+
head?: never;
|
|
27
|
+
patch?: never;
|
|
28
|
+
trace?: never;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
interface components {
|
|
32
|
+
schemas: {
|
|
33
|
+
/** @enum {string} */
|
|
34
|
+
SearchFacetTypeEnumV2: "creator" | "collection" | "subject";
|
|
35
|
+
/** @enum {string} */
|
|
36
|
+
SearchSortingTypeEnumV2: "relevance.desc" | "updateTime.desc";
|
|
37
|
+
WorkFilterSchema: {
|
|
38
|
+
identifier?: string[];
|
|
39
|
+
workId?: string[];
|
|
40
|
+
expressionId?: string[];
|
|
41
|
+
manifestationId?: string[];
|
|
42
|
+
title?: string[];
|
|
43
|
+
creator?: string[];
|
|
44
|
+
collection?: string[];
|
|
45
|
+
subject?: string[];
|
|
46
|
+
};
|
|
47
|
+
/** @enum {string} */
|
|
48
|
+
LanguageCode: "abk" | "ach" | "afr" | "akk" | "alb" | "amh" | "ang" | "ara" | "arc" | "arm" | "aze" | "bam" | "baq" | "bel" | "bem" | "ben" | "bis" | "bnt" | "bos" | "bre" | "bul" | "bur" | "byn" | "cat" | "ceb" | "che" | "chi" | "chu" | "cic" | "ckb" | "cmn" | "cnr" | "cop" | "cze" | "dan" | "dut" | "egy" | "eng" | "enm" | "epo" | "est" | "ewe" | "fao" | "fat" | "fij" | "fin" | "fiu" | "fkv" | "fre" | "frm" | "fro" | "fry" | "ful" | "gaa" | "geo" | "ger" | "gez" | "gla" | "gle" | "glg" | "gmh" | "got" | "grc" | "gre" | "guj" | "hau" | "heb" | "hil" | "hin" | "hrv" | "hun" | "ibo" | "ice" | "iku" | "ilo" | "ind" | "ipk" | "ira" | "ita" | "jpn" | "kal" | "kan" | "kaz" | "khm" | "kho" | "kik" | "kin" | "kmr" | "kon" | "kor" | "kua" | "kur" | "lao" | "lat" | "lav" | "lin" | "lit" | "lkt" | "lug" | "mac" | "mao" | "mar" | "may" | "mlg" | "mlt" | "mnk" | "mol" | "mon" | "mul" | "myn" | "nds" | "nep" | "nic" | "nno" | "nob" | "nom" | "non" | "nor" | "nso" | "oci" | "orm" | "pan" | "per" | "pli" | "pol" | "por" | "pra" | "pro" | "prs" | "pus" | "roh" | "rom" | "rum" | "run" | "rus" | "sah" | "san" | "sat" | "sco" | "sgn" | "sin" | "sit" | "sjd" | "sje" | "sjk" | "sjt" | "sju" | "slo" | "slv" | "sma" | "sme" | "smi" | "smj" | "smn" | "smo" | "sms" | "som" | "sot" | "spa" | "srp" | "sux" | "swa" | "swe" | "syr" | "tam" | "tay" | "tel" | "tgl" | "tha" | "tib" | "tir" | "tkl" | "tmh" | "ton" | "tur" | "ukr" | "urd" | "uzb" | "vie" | "wel" | "wen" | "wol" | "xho" | "yid" | "yor" | "ypk" | "yue" | "zul" | "und" | "zxx";
|
|
49
|
+
/** @enum {string} */
|
|
50
|
+
LanguageName: "Abkhasisk" | "Acholi" | "Afrikaans" | "Akkadisk" | "Albansk" | "Amharisk" | "Angelsaksisk" | "Arabisk" | "Arameisk" | "Armensk" | "Aserbajdsjansk" | "Bambara" | "Baskisk" | "Hviterussisk" | "Bemba" | "Bengali" | "Bislama" | "Bantuspråk" | "Bosnisk" | "Bretonsk" | "Bulgarsk" | "Burmesisk" | "Bilin" | "Katalansk" | "Cebuano" | "Tsjetsjensk" | "Kinesisk" | "Kirkeslavisk" | "Chickasaw" | "Sorani (Sørkurdisk)" | "Mandarinkinesisk" | "Montenegrinsk" | "Koptisk" | "Tsjekkisk" | "Dansk" | "Nederlandsk" | "Egyptisk" | "Engelsk" | "Middelengelsk" | "Esperanto" | "Estisk" | "Ewe" | "Færøysk" | "Fante" | "Fijiansk" | "Finsk" | "Finsk-ugrisk" | "Flerspråklig" | "Kvensk" | "Fransk" | "Mellomfransk" | "Gammelfransk" | "Frisisk" | "Fulfulde" | "Ga" | "Georgisk" | "Tysk" | "Etiopisk" | "Gælisk" | "Irsk" | "Galegisk/Galisisk" | "Middelhøytysk" | "Gotisk" | "Klassisk gresk" | "Gresk" | "Gujarati" | "Hausa" | "Hebraisk" | "Hiligaynon" | "Hindi" | "Kroatisk" | "Ungarsk" | "Ibo" | "Islandsk" | "Inuktitut" | "Iloko" | "Indonesisk" | "Inupiak" | "Iranske språk" | "Italiensk" | "Japansk" | "Kalaalisut (Grønlandsk)" | "Kannada" | "Kasakhisk" | "Khmer" | "Khotanesisk" | "Kikuyu" | "Kinyarwanda" | "Kurmanji (Nordkurdisk)" | "Kongo" | "Koreansk" | "Kwanyama" | "Kurdisk" | "Lao (Laotisk)" | "Latin" | "Latvisk" | "Lingalsk" | "Litauisk" | "Lakota" | "Luganda" | "Makedonsk" | "Maori" | "Marathi" | "Malayisk" | "Madagassisk" | "Maltesisk" | "Mandinka" | "Moldavisk" | "Mongolsk" | "Maya" | "Nedertysk" | "Nepali" | "Niger-Kongospråk" | "Norsk (nynorsk)" | "Norsk (bokmål)" | "Mellomnorsk" | "Gammelnorsk" | "Norsk" | "Nordsotho" | "Provençalsk" | "Oromo" | "Panjabi" | "Farsi" | "Pali" | "Polsk" | "Portugisisk" | "Prakrit" | "Provençalsk til 1500" | "Dari" | "Pashto" | "Retoromansk" | "Romani" | "Rumensk" | "Kirundi" | "Russisk" | "Jakutisk" | "Sanskrit" | "Santali" | "Skotsk" | "Tegnspråk" | "Singalesisk" | "Sino-tibetansk" | "Kildinsamisk" | "Pitesamisk" | "Kemisamisk" | "Tersamisk" | "Umesamisk" | "Slovakisk" | "Slovensk" | "Sørsamisk" | "Nordsamisk" | "Andre samiske språk" | "Lulesamisk" | "Inarisamisk" | "Samoansk" | "Skoltesamisk" | "Somali" | "Sesotho" | "Spansk" | "Serbisk" | "Sumerisk" | "Swahili" | "Svensk" | "Syrisk" | "Tamil" | "Atayal" | "Telugu" | "Tagalog" | "Thai" | "Tibetansk" | "Tigrinja" | "Tokelaisk" | "Tuareg" | "Tongansk" | "Tyrkisk" | "Ukrainsk" | "Urdu" | "Usbekisk" | "Vietnamesisk" | "Walisisk" | "Sorbiske språk" | "Wolof" | "Xhosa" | "Jiddisk" | "Yoruba" | "Yupikspråk" | "Kantonesisk (Yue)" | "Zulu" | "Ukjent språk" | "Uten språklig innhold";
|
|
51
|
+
Language: {
|
|
52
|
+
/** @description Three-letter language code from ISO 639-2 (Bibliographic) */
|
|
53
|
+
code: components["schemas"]["LanguageCode"];
|
|
54
|
+
name: components["schemas"]["LanguageName"];
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* @description Possible variant title types.
|
|
58
|
+
*
|
|
59
|
+
* Note that variant titles are only registered if they differ from the preferred title. A cover title, for instance, is only registered if it differs from the title on the title page.
|
|
60
|
+
*
|
|
61
|
+
* - `norwegian_cinema_title` - Title form used for a film in Norwegian cinemas. Domain: Work.
|
|
62
|
+
* - `cover_title` - Title printed on the original cover of a publication. Corresponds to 246 ind2=4 in MARC. Domain: Manifestation.
|
|
63
|
+
* - `added_title_page_title` - Usually a title in another language found on a title page preceding or following the main title. Corresponds to 246 ind2=5 in MARC. Domain: Manifestation.
|
|
64
|
+
* - `spine_title` - Publisher's title found on the spine of a publication. Corresponds to 246 ind2=8 in MARC. Domain: Manifestation.
|
|
65
|
+
* - `other_variant_title` - Another title that appears on the piece that is not more appropriately described by one of the other values. Corresponds to 246 ind2=3 or blank in MARC. Domain: Manifestation.
|
|
66
|
+
* @enum {string}
|
|
67
|
+
*/
|
|
68
|
+
TitleType: "norwegian_cinema_title" | "other_variant_title" | "cover_title" | "added_title_page_title" | "spine_title";
|
|
69
|
+
/** @description The Title object is used for all title types across Work, Expression, Manifestation, Collection Work, Collection Expression, Short Work And Short Expression entities. */
|
|
70
|
+
Title: {
|
|
71
|
+
/** @description The chief name of the entity. */
|
|
72
|
+
mainTitle: string;
|
|
73
|
+
/** @description A word or phrase elaborating on the character, contents, etc., of the entity, that is not part of the chief name of the entity. */
|
|
74
|
+
subtitle?: string;
|
|
75
|
+
/** @description A distinguishing element for entities in a sequential set with the same Main title. */
|
|
76
|
+
partNumber?: string;
|
|
77
|
+
/** @description A distinguishing element for entities in a set with the same Main title. */
|
|
78
|
+
partTitle?: string;
|
|
79
|
+
/** @description The language of the title. */
|
|
80
|
+
titleLanguage?: components["schemas"]["Language"];
|
|
81
|
+
/** @description The type of title. Only used for variant titles. */
|
|
82
|
+
titleType?: components["schemas"]["TitleType"];
|
|
83
|
+
};
|
|
84
|
+
/** @description A language map is used to associate a language with a value in a way that allows easy programmatic access. The keys of a language map are strings representing [BCP47](https://www.rfc-editor.org/info/bcp47) language tags, defined as the shortest ISO 639 code for a language. */
|
|
85
|
+
LanguageMap: {
|
|
86
|
+
nb: string;
|
|
87
|
+
nn: string;
|
|
88
|
+
};
|
|
89
|
+
/** @description Binding type is taken from a controlled list of bindings for paper books. Provisionally it is expressed as a string in Norwegian Bokmål, but additional languages will be added later. */
|
|
90
|
+
BindingType: {
|
|
91
|
+
/** @constant */
|
|
92
|
+
type: "BindingType";
|
|
93
|
+
id: string;
|
|
94
|
+
/** @description Code to use in MARC. */
|
|
95
|
+
code: string;
|
|
96
|
+
/** @description Human-readable name of the binding type. */
|
|
97
|
+
name: components["schemas"]["LanguageMap"];
|
|
98
|
+
};
|
|
99
|
+
/** @description A DocumentType is a member of a controlled list used to categorize manifestations based on format and medum.
|
|
100
|
+
*
|
|
101
|
+
* It shows if a manifestation is e.g. a printed book, a downloadable e-book, a film on DVD, an audiobook on CD, a Nintendo Switch game on a game card, etc. */
|
|
102
|
+
DocumentType: {
|
|
103
|
+
/** @constant */
|
|
104
|
+
type: "DocumentType";
|
|
105
|
+
id: string;
|
|
106
|
+
/** @description Identifier for the binding type. */
|
|
107
|
+
code: string;
|
|
108
|
+
/** @description The format of the manifestation, e.g. "book", "film", "audiobook", "Nintendo Switch game" */
|
|
109
|
+
format: string;
|
|
110
|
+
/** @description The carrier medium of the manifestation where applicable, e.g. "DVD", "downloadable", "game card" */
|
|
111
|
+
medium?: string;
|
|
112
|
+
};
|
|
113
|
+
/** @description An imprint of a publishing company (publisher) is a trade name under which publications are published. */
|
|
114
|
+
Imprint: {
|
|
115
|
+
/** @constant */
|
|
116
|
+
type: "Imprint";
|
|
117
|
+
id: string;
|
|
118
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
119
|
+
identifiers: {
|
|
120
|
+
/** @description Unique ID assigned to an imprint in Bokbasen. */
|
|
121
|
+
bokbasenId?: string;
|
|
122
|
+
};
|
|
123
|
+
/** @description Preferred name of the imprint. */
|
|
124
|
+
name: string;
|
|
125
|
+
};
|
|
126
|
+
PublicationStatement: {
|
|
127
|
+
imprint: components["schemas"]["Imprint"];
|
|
128
|
+
places: string[];
|
|
129
|
+
};
|
|
130
|
+
AgentIdentifiers: {
|
|
131
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
132
|
+
bibbiAuthorityId?: string;
|
|
133
|
+
/** @description Unique ID assigned to an agent in Bokbasen. */
|
|
134
|
+
bokbasenId?: string;
|
|
135
|
+
/** @description International Standard Name Identifier. Format: 16 digits without hyphens. */
|
|
136
|
+
isni?: string;
|
|
137
|
+
/** @description Identifier from {@link https://bibliotekutvikling.no/kunnskapsorganisering/vokabularer-utkast/felles-autoritetsregister-for-personer-og-korporasjoner/ Norwegian Authority File: Persons and Corporate Bodies } , */
|
|
138
|
+
norafId?: string;
|
|
139
|
+
};
|
|
140
|
+
/** @description A Language Map List is a Language Map of string lists, a construct to support the fact that the number of synonyms / alternative names for an entity is generally not the same across languages. */
|
|
141
|
+
LanguageMapList: {
|
|
142
|
+
nb: string[];
|
|
143
|
+
nn: string[];
|
|
144
|
+
};
|
|
145
|
+
Year: {
|
|
146
|
+
year: number;
|
|
147
|
+
isApproximate: boolean;
|
|
148
|
+
};
|
|
149
|
+
/** @enum {string} */
|
|
150
|
+
PlaceType: "administrative" | "geographic" | "extraterrestrial";
|
|
151
|
+
/** @description A Place is a geographic entity, including geopolitical and geographic features such as cities, countries, rivers, oceans, national parks etc.
|
|
152
|
+
*
|
|
153
|
+
* Currently being remodeled and will undergo changes during autumn 2023. */
|
|
154
|
+
Place: {
|
|
155
|
+
/** @constant */
|
|
156
|
+
type: "Place";
|
|
157
|
+
id: string;
|
|
158
|
+
placeType?: components["schemas"]["PlaceType"];
|
|
159
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
160
|
+
identifiers: {
|
|
161
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
162
|
+
bibbiAuthorityId?: string;
|
|
163
|
+
};
|
|
164
|
+
name: components["schemas"]["LanguageMap"];
|
|
165
|
+
specification?: string;
|
|
166
|
+
alternativeNames: components["schemas"]["LanguageMapList"];
|
|
167
|
+
definition?: string;
|
|
168
|
+
scopeNote?: string;
|
|
169
|
+
};
|
|
170
|
+
CountryCodes: {
|
|
171
|
+
iso3166_2?: string;
|
|
172
|
+
iso3166_3?: string;
|
|
173
|
+
iso3166_numeric?: number;
|
|
174
|
+
marc21?: string;
|
|
175
|
+
};
|
|
176
|
+
Nationality: {
|
|
177
|
+
/** @constant */
|
|
178
|
+
type: "Nationality";
|
|
179
|
+
id: string;
|
|
180
|
+
demonym: string;
|
|
181
|
+
code: string;
|
|
182
|
+
scopeNote?: string;
|
|
183
|
+
country?: components["schemas"]["Place"];
|
|
184
|
+
countryCodes: components["schemas"]["CountryCodes"];
|
|
185
|
+
};
|
|
186
|
+
/** @description A Person is a subclass of Agent consisting of agents that are or purport to be individual persons.
|
|
187
|
+
*
|
|
188
|
+
* A group of people, known or unknown, writing under a pseudonym which is that of an individual name are treated as one person according to bibliographic convention. See for example Lars Kepler, pseudonym for Alexander Ahndoril and Alexandra Coelho Ahndoril, or Carolyn Keene, pseudonym for a number of ghost writers.
|
|
189
|
+
*
|
|
190
|
+
* A person who uses different names may be considered to have separate bibliographic identities if works of one type appears under one name and works of another type under another name. In such cases, a separate Person entity will be created for each bibliographic identity. The entities can be linked together with see-also relators.
|
|
191
|
+
*
|
|
192
|
+
* Animals, fictional persons and spirits are not considered agents under the Cordata❦ framework. These are registered as Individual concepts. */
|
|
193
|
+
Person: {
|
|
194
|
+
/** @constant */
|
|
195
|
+
type: "Person";
|
|
196
|
+
id: string;
|
|
197
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
198
|
+
identifiers: components["schemas"]["AgentIdentifiers"];
|
|
199
|
+
/** @description The preferred name or other moniker of the person, in uninverted format. */
|
|
200
|
+
name: components["schemas"]["LanguageMap"];
|
|
201
|
+
/** @description Variant spellings and non-preferred names, e.g. "Chechov" for "Tsjekhov", and previously used last names. */
|
|
202
|
+
alternativeNames: components["schemas"]["LanguageMapList"];
|
|
203
|
+
/** @description The moniker written in sorting order according to bibliographic convention, typically inverted as "Lastname, Firstname". */
|
|
204
|
+
catalogueName?: string;
|
|
205
|
+
/** @description Ordinal and other appellation used in conjunction with a royal or papal name, e.g. "III Hardråde" */
|
|
206
|
+
ordinal?: string;
|
|
207
|
+
/** @description Title(s) designating rank, office, or nobility, e.g. "helgen, biskop of Lindisfarne" */
|
|
208
|
+
personTitle?: components["schemas"]["LanguageMap"];
|
|
209
|
+
/** @description The person's year of birth. Can be approximate and/or negative, if the year is BC, e.g. "1971", "ca. 1971" or "4 f.Kr" */
|
|
210
|
+
birth?: components["schemas"]["Year"];
|
|
211
|
+
/** @description The person's year of death. Can be approximate and/or negative, if the year is BC, e.g. "1997", "ca. 1997" or "300 e.Kr" */
|
|
212
|
+
death?: components["schemas"]["Year"];
|
|
213
|
+
/** @description If both the year of birth and death are uncertain, but the person's years of activity is known, e.g. "ca. 1200 f.Kr" */
|
|
214
|
+
activeYears?: components["schemas"]["Year"];
|
|
215
|
+
/** @description Used if the person's year of birth and death is not structured enough to be used in yearOfBirth and yearOfDeath, e.g. "ca. 1200" */
|
|
216
|
+
unspecifiedDate?: string;
|
|
217
|
+
/** @description A nationality the author is affilated with.
|
|
218
|
+
*
|
|
219
|
+
* We register national affiliation when it is common knowledge that the person identifies as part of the group.
|
|
220
|
+
*
|
|
221
|
+
* Biblioteksentralen currently registers up to two national affilations. Nations are not limited to nation states; we also register (some) stateless nationalities such as Sámi or Kurdish. */
|
|
222
|
+
nationality: components["schemas"]["Nationality"][];
|
|
223
|
+
/** @description Internal note on the entity, e.g. the field(s) in which the person is active, if useful to differentiate them from a different person of the same name. */
|
|
224
|
+
scopeNote?: string;
|
|
225
|
+
/** @description The person's field of activty, used to distinguish between people with the same name. */
|
|
226
|
+
fieldOfActivity?: components["schemas"]["LanguageMap"];
|
|
227
|
+
};
|
|
228
|
+
/** @description A Collective Agent is defined as "A gathering or organization of persons bearing a particular name and capable of acting as a unit" {@link https://www.iflastandards.info/lrm/lrmer#E8 Library Reference Model }
|
|
229
|
+
*
|
|
230
|
+
* Examples of Collective Agents are corporations, musical or artist groups, governments, families and other organizations. A group is considered a Collective Agent if it is organized in such a way that its members can produce or approve joint statements or creations, such as when a corporation approves a report, a music group releases an album, or a government ratifies a law.
|
|
231
|
+
*
|
|
232
|
+
* Movements or categories of people that are not organized such that they can speak for the whole of the group, such as for example the Black Lives Matter movement, the Preraphaelite artist movement, religious or ethnic groups, are not considered Collective Agents. */
|
|
233
|
+
CollectiveAgent: {
|
|
234
|
+
/** @constant */
|
|
235
|
+
type: "CollectiveAgent";
|
|
236
|
+
id: string;
|
|
237
|
+
/** @description The type of Collective Agent. Currently only the values "Family" and "Corporation" are in use. Will be extended in later iterations. */
|
|
238
|
+
collectiveAgentType: string;
|
|
239
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
240
|
+
identifiers: components["schemas"]["AgentIdentifiers"];
|
|
241
|
+
/** @description The preferred name of the Collective Agent. */
|
|
242
|
+
name: components["schemas"]["LanguageMap"];
|
|
243
|
+
/** @description Variant spellings and non-preferred names, e.g. "Aha" for "A-ha" (music group), or "Danish National Symphony Orchestra" for "DR SymfoniOrkesteret". */
|
|
244
|
+
alternativeNames: components["schemas"]["LanguageMapList"];
|
|
245
|
+
/** @description A {@link Nationality } associated with the Collective Agent. Currently only in use for collectiveAgentType "Family". */
|
|
246
|
+
nationality: components["schemas"]["Nationality"][];
|
|
247
|
+
/** @description Internal note on the entity. Used for identifying and differentiating entities with similar names. */
|
|
248
|
+
scopeNote?: string;
|
|
249
|
+
};
|
|
250
|
+
/** @description An Agent is a union type for Person or Collective agent. */
|
|
251
|
+
Agent: components["schemas"]["Person"] | components["schemas"]["CollectiveAgent"];
|
|
252
|
+
/** @description A Role is the function that an Agent (Person or Collective Agent) plays in the process of producing a Work, Expression or Manifestation. */
|
|
253
|
+
Role: {
|
|
254
|
+
/** @constant */
|
|
255
|
+
type: "Role";
|
|
256
|
+
id: string;
|
|
257
|
+
/** @description The identifier for the role. */
|
|
258
|
+
code: string;
|
|
259
|
+
/** @description Human-readable label (in Norwegian bokmål) for the role, e.g. "Forfatter", "Bokomslagsdesigner" */
|
|
260
|
+
label: components["schemas"]["LanguageMap"];
|
|
261
|
+
/** @description The closest equivalent from the {@link https://www.loc.gov/marc/relators/relaterm.html MARC 21 Code list for relators } . */
|
|
262
|
+
marc21Code?: string;
|
|
263
|
+
/** @description The closest equivalent for the role in the (deprecated) NORMARC list of relators. Undefined for roles that don't have a close NORMARC equivalent. */
|
|
264
|
+
normarcCode?: string;
|
|
265
|
+
bibframeRelator?: string;
|
|
266
|
+
rdaRelator?: string;
|
|
267
|
+
};
|
|
268
|
+
/** @description A Contributor object links a {@link Work } , {@link Expression } , {@link Manifestation } , {@link CollectionExpression } or {@link CollectionWork } to an {@link Agent } which has contributed to the entity and the Role the Agent played in the creation of the entity. */
|
|
269
|
+
Contributor: {
|
|
270
|
+
/** @description The Agent (Person or Collective Agent) which has contributed to the entity the Contributor object is attached to. */
|
|
271
|
+
agent: components["schemas"]["Agent"];
|
|
272
|
+
/** @description The Role shows which function the Agent has had in the process of producing an entity. */
|
|
273
|
+
roles: components["schemas"]["Role"][];
|
|
274
|
+
/** @description An Agent contributing to a Work can be assigned the role of main contributor for the purpose of determining shelving signatures. There will never be more than one main contributor per work and the property is not used for other entities than Work. */
|
|
275
|
+
isMainContributor: boolean;
|
|
276
|
+
};
|
|
277
|
+
DurationRecord: {
|
|
278
|
+
approximate: boolean;
|
|
279
|
+
hours?: number;
|
|
280
|
+
minutes: number;
|
|
281
|
+
};
|
|
282
|
+
/** @description A Collection Expression Entry links a Manifestation or Expression to the collection the entity is a member of. */
|
|
283
|
+
CollectionExpressionEntry: {
|
|
284
|
+
/** @description Links to the Collection expression. */
|
|
285
|
+
collection: components["schemas"]["CollectionExpression"];
|
|
286
|
+
/** @description The position of this entity in the collection/series.
|
|
287
|
+
*
|
|
288
|
+
* Currently extracted from numbering assigned to Manifestations, which may collect more than one expression.
|
|
289
|
+
*
|
|
290
|
+
* The value can take one of the following forms:
|
|
291
|
+
* - a single number (e.g. "1", "2"). This is the most common case.
|
|
292
|
+
* - a range (e.g. "1-2") that covers multiple parts of the series.
|
|
293
|
+
* - a decimal number for cases where a single logical part has been split into multiple physical parts (e.g. "1.2" or "2022.1"). */
|
|
294
|
+
numberInSeries?: string;
|
|
295
|
+
};
|
|
296
|
+
/** @enum {string} */
|
|
297
|
+
CollectionType: "series" | "fictional_universe";
|
|
298
|
+
Res: {
|
|
299
|
+
id: string;
|
|
300
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
301
|
+
identifiers: {
|
|
302
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
303
|
+
bibbiAuthorityId?: string;
|
|
304
|
+
};
|
|
305
|
+
name: components["schemas"]["LanguageMap"];
|
|
306
|
+
/** @enum {unknown} */
|
|
307
|
+
type: "event" | "genre" | "concept" | "agent" | "work" | "collection_work" | "place";
|
|
308
|
+
};
|
|
309
|
+
/** @description Subjects are used to make works searchable by what the work is about.
|
|
310
|
+
*
|
|
311
|
+
* Each Subject in Cordata are an entity consisting of a focus, optional subdivision(s), optional qualifier and a Dewey classification number. This allows for the construction of complex subject strings while retaining the identities of the entities that make up the subject string.
|
|
312
|
+
*
|
|
313
|
+
* For example, in the subject "Verdenskrigen, 1939-1945 - Krigsoperasjoner - Stillehavet : 94 " the elements that make up the subject consist of the {@link Event } Verdenskrigen, 1939-1945, which in its turn has the alternative label Andre verdenskrig and is linked to the timespan of the event, the {@link Concept } Krigsoperasjoner, the {@link Place } Stillehavet, and the Dewey classification number.
|
|
314
|
+
*
|
|
315
|
+
* Intended viewing order and conventional punctuation is "Focus - Subdivision - Subdivision - Temporal subdivision : qualifier : WebDewey". Subdivision order is chosen by the cataloger according to the PMEST ruleset and needs to be preserved. */
|
|
316
|
+
SubjectV2: {
|
|
317
|
+
/** @constant */
|
|
318
|
+
type: "Subject";
|
|
319
|
+
id: string;
|
|
320
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
321
|
+
identifiers: {
|
|
322
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
323
|
+
bibbiAuthorityId?: string;
|
|
324
|
+
};
|
|
325
|
+
/** @description The entity that is the main focus of the subject. Can be a {@link Person } , {@link CollectiveAgent Collective agent } , {@link Concept } , * {@link Place } , {@link Event } , {@link Genre }, {@link CollectionWork CollectionWork} or {@link Work } .
|
|
326
|
+
*
|
|
327
|
+
* Equivalent to MARC subfield 6XX $a. */
|
|
328
|
+
focus?: components["schemas"]["Res"];
|
|
329
|
+
name: components["schemas"]["LanguageMap"];
|
|
330
|
+
/** @description The qualifier is used to anchor the subject to a specific category in the Dewey hierarchy when the focus term is a phenomenon which appears in more than one place in the hierarchy, e.g. "Kjærlighet : psykologi" */
|
|
331
|
+
qualifier?: components["schemas"]["LanguageMap"];
|
|
332
|
+
specification?: components["schemas"]["LanguageMap"];
|
|
333
|
+
/** @description Internal note on the entity, e.g. field of use. */
|
|
334
|
+
scopeNote?: string;
|
|
335
|
+
/** @description {@link https://deweyno.pansoft.de Norsk WebDewey } classification number. */
|
|
336
|
+
webdewey?: string;
|
|
337
|
+
/** @description DDK5 (Dewey Desimalklassifikasjon 5) classification number. Superseded by WebDewey. Not used when creating new subjects, but preserved for subjects created before the transition to WebDewey in Norway. */
|
|
338
|
+
ddk5?: string;
|
|
339
|
+
subdivisions: components["schemas"]["Res"][];
|
|
340
|
+
/** @description Temporal subdivisions. Consists only of a timespan; named timespans such as "The renaissance" are classed as Event and placed in Subdivision. */
|
|
341
|
+
temporalSubdivision?: string;
|
|
342
|
+
/** @description Alternative label for the subject. */
|
|
343
|
+
alternativeNames: components["schemas"]["LanguageMapList"];
|
|
344
|
+
};
|
|
345
|
+
/** @description A language map is used to associate a language with a value in a way that allows easy programmatic access. The keys of a language map are strings representing [BCP47](https://www.rfc-editor.org/info/bcp47) language tags, defined as the shortest ISO 639 code for a language. */
|
|
346
|
+
LanguageMapWithEnglish: {
|
|
347
|
+
nb: string;
|
|
348
|
+
nn: string;
|
|
349
|
+
en: string;
|
|
350
|
+
};
|
|
351
|
+
/** @description Work types from {@link https://www.nb.no/nbvok/vtp/nb/ Nbvok vocabulary of work types } */
|
|
352
|
+
WorkType: {
|
|
353
|
+
/** @constant */
|
|
354
|
+
type: "WorkType";
|
|
355
|
+
/** @enum {string} */
|
|
356
|
+
id: "V1000" | "V1001" | "V1002" | "V1003" | "V1004" | "V1005";
|
|
357
|
+
uri: string;
|
|
358
|
+
label: components["schemas"]["LanguageMapWithEnglish"];
|
|
359
|
+
};
|
|
360
|
+
/** @description Genre is used to group literature and other arts into categories based on stylistic criteria.
|
|
361
|
+
*
|
|
362
|
+
* Bibliographic conventions differ as to whether to separate genre and form, as well as in what constitutes a genre and what constitures a form. The Norwegian national thesaurus for genre and form, (@link https://www.nb.no/nbvok/ntsf/nb/ | NTSF), contains both genre and form without separation. For practical reasons, Cordata therefore includes form as a subtype of Genre, using a boolean toggle to indicate form terms.
|
|
363
|
+
*
|
|
364
|
+
* Cordata currently contains genres for literature, film and games. Genres for literature and film are mapped to NTSF. Plans are to later include a genre list for music as well. */
|
|
365
|
+
Genre: {
|
|
366
|
+
/** @constant */
|
|
367
|
+
type: "Genre";
|
|
368
|
+
id: string;
|
|
369
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
370
|
+
identifiers: {
|
|
371
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
372
|
+
bibbiAuthorityId?: string;
|
|
373
|
+
/** @description ID from the Norsk tesaurus for sjanger og form, (@link https://www.nb.no/nbvok/ntsf/nb/ | NTSF). */
|
|
374
|
+
ntsfId?: string;
|
|
375
|
+
/** @description Identifier for a concept in «Emneord for musikk», a controlled vocabulary of music terminology from the Norwegian Music Library Association (NMBF) published by the Bergen Library (@link https://bergenbibliotek.no/musikkogfilm/emneord-for-musikk/komposisjonstype-og-sjanger/sjanger | NMBF). The published vocabulary does not have persistent identifiers for the concepts, so identifiers are derived from the terms. */
|
|
376
|
+
nmbfId?: string;
|
|
377
|
+
};
|
|
378
|
+
/** @description Preferred name of the genre. Currently in Norwegian bokmål and nynorsk. */
|
|
379
|
+
name: components["schemas"]["LanguageMap"];
|
|
380
|
+
/** @description Alternate names for the genre. */
|
|
381
|
+
alternativeNames: components["schemas"]["LanguageMapList"];
|
|
382
|
+
/** @description Shows the type of work the Genre describes, e.g. Language work (written and audio books), Film work (film and television) or Video game work (video games). */
|
|
383
|
+
domain: components["schemas"]["WorkType"];
|
|
384
|
+
/** @description Indicates whether an entry is a Form term. */
|
|
385
|
+
isForm: boolean;
|
|
386
|
+
/** @description Internal note on the entity, e.g. "Used for both fiction and non-fiction", "Used mainly for childrens' lit" */
|
|
387
|
+
scopeNote?: string;
|
|
388
|
+
};
|
|
389
|
+
/** @description A Collection is a set of entities - manifestations or works - that share certain features.
|
|
390
|
+
*
|
|
391
|
+
* The collection can be explicitly named in the source material, such as the series "SF Masterworks" which is a collection of acclaimed SF novels published by Gollancz, or constructed from a set of features that the collected entities have in common, such as "The Lovecraft Mythos" for works that use creatures and features from H.P. Lovecraft's fictional universe.
|
|
392
|
+
*
|
|
393
|
+
* Later iterations will add variant titles, summary, genres, subjects and other metadata elements as optional fields to this entity. */
|
|
394
|
+
CollectionWork: {
|
|
395
|
+
/** @constant */
|
|
396
|
+
type: "CollectionWork";
|
|
397
|
+
id: string;
|
|
398
|
+
identifiers?: {
|
|
399
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
400
|
+
bibbiAuthorityId?: string;
|
|
401
|
+
};
|
|
402
|
+
/** @description Collection type can be either "series" or "fictional-universe".
|
|
403
|
+
*
|
|
404
|
+
* Later iterations of the model will add "multi-part work". */
|
|
405
|
+
collectionType: components["schemas"]["CollectionType"];
|
|
406
|
+
/** @description List of contributors in the form of * {@link Agent agents } * (persons or organizations) and their * {@link Role roles } * in the creation of the Collection. */
|
|
407
|
+
contributors: components["schemas"]["Contributor"][];
|
|
408
|
+
/** @description Preferred title of Collection work.
|
|
409
|
+
*
|
|
410
|
+
* See {@link Title } for individual components of title. */
|
|
411
|
+
title: components["schemas"]["Title"];
|
|
412
|
+
languages?: components["schemas"]["Language"][];
|
|
413
|
+
subjects?: components["schemas"]["SubjectV2"][];
|
|
414
|
+
genres?: components["schemas"]["Genre"][];
|
|
415
|
+
};
|
|
416
|
+
/** @description A Collection Expression expresses a {@link CollectionWork } in the same way an {@link Expression } expresses a {@link Work } .
|
|
417
|
+
*
|
|
418
|
+
* A Collection Expression contains either expressions or manifestations; this is encoded in the `domain` property. Collections on the expression level indicate that the members have shared elements which are intrinsic to the works contained, while collections on the manifestation level are often assigned by publishers and indicate thematic relations that are not intrinsic to the works but may still be interesting as a selection criterion.
|
|
419
|
+
*
|
|
420
|
+
* For example, a specific manifestation of Arthur C. Clarke's work "Rendezvous with Rama" can be part of the Collection Expression "SF Masterworks", while its expression can be part of the Collection Expression "Rama". The former is at the manifestation level since it's a collection constructed by a specific publisher which does not apply to all manifestations/expressions of the work, while the latter is at the expression level since it contains expressions of works that form a continuation of a story. */
|
|
421
|
+
CollectionExpression: {
|
|
422
|
+
/** @constant */
|
|
423
|
+
type: "CollectionExpression";
|
|
424
|
+
id: string;
|
|
425
|
+
/** @description Map of identifiers for matching records in external systems. */
|
|
426
|
+
identifiers: {
|
|
427
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
428
|
+
bibbiAuthorityId?: string;
|
|
429
|
+
};
|
|
430
|
+
/** @description Preferred title of the Collection expression. See {@link Title } for individual components of title. */
|
|
431
|
+
title: components["schemas"]["Title"];
|
|
432
|
+
/** @description Variant title of the Collection expression.
|
|
433
|
+
*
|
|
434
|
+
* Recorded when a collection is known under different titles in the same language, e.g. Jenny Colgan's "Den lille øya i havet" / "Mure". */
|
|
435
|
+
variantTitles: components["schemas"]["Title"][];
|
|
436
|
+
/** @description List of contributors in the form of * {@link Agent agents } * (persons or organizations) and their * {@link Role roles } * in the creation of the Collection. */
|
|
437
|
+
contributors: components["schemas"]["Contributor"][];
|
|
438
|
+
/** @description The language(s) of the series. */
|
|
439
|
+
languages: components["schemas"]["Language"][];
|
|
440
|
+
/** @description Internal note detailing relevant information about the collection, e.g. "series numbering on spine" */
|
|
441
|
+
note?: string;
|
|
442
|
+
/** @description {@link https://en.wikipedia.org/wiki/ISSN ISSN } - International identifier for serials.
|
|
443
|
+
*
|
|
444
|
+
* Not all collections will have an ISSN - they are typically assigned to periodicals and certain academic serials.
|
|
445
|
+
*
|
|
446
|
+
* Note that the hyphen separating the two groups of four digits is considered to be part of the ISSN, not merely an addition for readability, and stripping it may cause the ISSN to not be recognized by certain applications. */
|
|
447
|
+
issn?: string;
|
|
448
|
+
/** @description Time the Collection Expression was created. */
|
|
449
|
+
created?: string;
|
|
450
|
+
/** @description Time the Collection Expression was last modified. */
|
|
451
|
+
modified?: string;
|
|
452
|
+
/** @description Links the collection to an overarching collection.
|
|
453
|
+
*
|
|
454
|
+
* An example where this is used is the series "Warriors" ("Kattekrigerne") by Erin Hunter. This series contains a number of subseries such as "7. The Broken Code", which in turn contains a number of books such as "5. The Place of No Stars". */
|
|
455
|
+
superCollection?: components["schemas"]["CollectionExpressionEntry"];
|
|
456
|
+
/** @description Links the Collection Expression to the Collection Work it expresses. */
|
|
457
|
+
workExpressed?: components["schemas"]["CollectionWork"];
|
|
458
|
+
/**
|
|
459
|
+
* @description Whether the collection contains expressions or manifestations.
|
|
460
|
+
* We make this optional to be compatible with the current version of BMDB CollectionExpression, where collection_work is optional but the domain is on the collection_work. This is probably a temporary solution; we might use different models altogether for manifestation and expression collections.
|
|
461
|
+
* @enum {string}
|
|
462
|
+
*/
|
|
463
|
+
domain?: "Expression" | "Manifestation";
|
|
464
|
+
};
|
|
465
|
+
/**
|
|
466
|
+
* @description - `general_note` - Used for notes that do not have a more specific type. Equivalent MARC 21 field: 500.
|
|
467
|
+
* - `bibliographic_history_note`: Historical information about the edition or work. Example: "1.utg.: 1998". This is a legacy note type from NORMARC field 503 for which there is no equivalent in MARC 21.
|
|
468
|
+
* - `contents_note`: Information about the contents of the document, such as the number of short works included, whether the document has bibliographies, adress lists etc. This note should only be used when structured `contents` information is not available. Equivalent MARC 21 field: 505.
|
|
469
|
+
* - `participant_or_performer_note`: Information about participants/performers and their type of contribution. These notes may contain more details than what's provided in structured form under `contributors`, information that should be migrated or information that have already been migrated. Example: "Amtmandens Døtre: Bente Geving, vokal, mandolin, perkusjon ; Kjersti Martinsen, vokal, ukulele, ukulele-banjo, munnharpe, gitar, perkusjon, [...]". Equivalent MARC 21 field: 511.
|
|
470
|
+
* - `system_details_note`: System requirements or details for electronic files. Example: "Systemkrav: Windows 98, XP". Equivalent MARC 21 field: 538.
|
|
471
|
+
* - `language_note`: Details about the languages of the manifestation. Examples: For books: "Engelsk tekst". For films: "Fransk tale, valgfri tekst på flere språk". Equivalent MARC 21 field: 546.
|
|
472
|
+
* - `other_identifier_note`: Information about important identifiers in the document that are not ISBN, ISSN, ISMN or other identifer types stored in structured identifier fields. Most commonly used on audio tapes and sheet music. Example: "Norsk komponistforening: ACD 4985". This is a legacy note type from NORMARC field 571 for which there is no equivalent in MARC 21.
|
|
473
|
+
* - `variant_title_note`: Information about other titles in the document that have not yet been migrated to `variantTitles`. In the long term, these should all be migrated to `variantTitles`. Example: For books: "Omslagstittel: ...; Ryggtittel: ..." For films: "Norsk kinotittel: ...". This is a legacy note type from NORMARC field 572 for which there is no equivalent in MARC 21.
|
|
474
|
+
* - `title_source_note`: Information about the source of the title if the title is from a different source than the main source. This is a legacy note type from NORMARC field 573 for which there is no equivalent in MARC 21.
|
|
475
|
+
* - `original_title_note`: Original title of the document. These will eventually all be migrated to Work titles, but are currently kept as notes. This is a legacy note type from NORMARC field 574 for which there is no equivalent in MARC 21.
|
|
476
|
+
* - `preceding_entry_note`: Migrated from 780, will eventually be migrated to `relatedExpressions`.
|
|
477
|
+
* - succeeding_entry_note: Migrated from 785, will eventually be migrated to `relatedExpressions`.
|
|
478
|
+
* @enum {string}
|
|
479
|
+
*/
|
|
480
|
+
NoteTypeEnum: "general_note" | "bibliographic_history_note" | "contents_note" | "participant_or_performer_note" | "system_details_note" | "language_note" | "other_identifier_note" | "variant_title_note" | "title_source_note" | "original_title_note" | "preceding_entry_note" | "succeeding_entry_note";
|
|
481
|
+
/** @description Additional information about the document given by the cataloguer */
|
|
482
|
+
Note: {
|
|
483
|
+
value: string;
|
|
484
|
+
noteType: components["schemas"]["NoteTypeEnum"];
|
|
485
|
+
};
|
|
486
|
+
/** @description Uniform title for a music work.
|
|
487
|
+
*
|
|
488
|
+
* This type of title is used to provide a unique and structured point of access for classical music works that lack a distinct title, and is constructed from key information about the work.
|
|
489
|
+
*
|
|
490
|
+
* Examples:
|
|
491
|
+
*
|
|
492
|
+
* ```
|
|
493
|
+
* - # "Sonatas, piano, no. 13, op. 27, no. 1, E major" { "titleType": "uniform_title_music", "form": "Sonatas", "medium": "piano", "serialNumber": "no. 13", "opusNumber": "op. 27, no. 1", "key": "E major" }
|
|
494
|
+
*
|
|
495
|
+
* - # "Konserter, fiolin, orkester, op. 8, nr. 1, RV 269, E-dur" { "titleType": "uniform_title_music", "form": "Konserter", "medium": "fiolin, orkester", "opusNumber": "op. 8, nr. 1", "thematicCatalogueNumber": "RV 269", "key": "E-dur" } ``` */
|
|
496
|
+
UniformTitleMusic: {
|
|
497
|
+
/** @constant */
|
|
498
|
+
titleType: "uniform_title_music";
|
|
499
|
+
/** @description Language used to encode the title elements. Usually the preferred language of the cataloguing agency. */
|
|
500
|
+
titleLanguage?: components["schemas"]["Language"];
|
|
501
|
+
/** @description Form of composition.
|
|
502
|
+
*
|
|
503
|
+
* Examples: "Symfonier" (Symphonies), "Konserter" (Concerts), Preludier (Preludes), "Sonater" (Sonatas). */
|
|
504
|
+
form: string;
|
|
505
|
+
/** @description Instrumentation / medium of performance (Norwegian: "Besetning").
|
|
506
|
+
*
|
|
507
|
+
* Examples: "klaver, orkester", "fiolin (2), klaver".
|
|
508
|
+
*
|
|
509
|
+
* Note that instrumentation is also coded in a structured form on `Work`.
|
|
510
|
+
*
|
|
511
|
+
* Corresponds to `240$m` in MARC 21. */
|
|
512
|
+
instrumentation?: string;
|
|
513
|
+
/** @description A number used for works with the same `form` (and `instrumentation`) which are consecutively numbered by the composer or arranger, or are consecutively numbered in reference sources.
|
|
514
|
+
*
|
|
515
|
+
* Example: "nr. 14"
|
|
516
|
+
*
|
|
517
|
+
* Corresponds to parts of `240$n` in MARC 21, [musicSerialNumber](http://id.loc.gov/ontologies/bibframe.html#p_musicSerialNumber) in Bibframe and [has serial number of musical work](https://www.rdaregistry.info/Elements/w/#P10334) in RDA. */
|
|
518
|
+
serialNumber?: string;
|
|
519
|
+
/** @description Opus number
|
|
520
|
+
*
|
|
521
|
+
* Numeric designation of a musical work assigned by a composer, publisher, or a musicologist. Includes the prefix "op .".
|
|
522
|
+
*
|
|
523
|
+
* Examples: "op. 14", "op. 27, no. 1" or "op. 27, no. 1-2"
|
|
524
|
+
*
|
|
525
|
+
* Corresponds to parts of `240$n` in MARC 21, [musicOpusNumber](http://id.loc.gov/ontologies/bibframe.html#p_musicOpusNumber) in Bibframe and [has opus number](https://www.rdaregistry.info/Elements/w/#P10333) in RDA. */
|
|
526
|
+
opusNumber?: string;
|
|
527
|
+
/** @description Thematic catalogue number
|
|
528
|
+
*
|
|
529
|
+
* Designation for a musical work as found in a thematic catalogue of works. In cases of multiple catalogue numbers, the numbers are separated by comma.
|
|
530
|
+
*
|
|
531
|
+
* Examples: "KV 622", "BWV 249", "Sz. 75, BB 84"
|
|
532
|
+
*
|
|
533
|
+
* Corresponds to parts of `240$n` in MARC 21, [musicThematicNumber](http://id.loc.gov/ontologies/bibframe.html#p_musicThematicNumber) in Bibframe and [has thematic index number](https://www.rdaregistry.info/Elements/w/#P10335) in RDA. */
|
|
534
|
+
thematicCatalogueNumber?: string;
|
|
535
|
+
/** @description Designation for a part/section (Norwegian: "Seksjon") of a work used in the title.
|
|
536
|
+
*
|
|
537
|
+
* Examples: "Adagio" (part of a symphony or sonata), "Suite nr. 1", "Utvalg" */
|
|
538
|
+
part?: string;
|
|
539
|
+
/** @description Key (Norwegian: "Toneart")
|
|
540
|
+
*
|
|
541
|
+
* Examples: "C-dur", "a-moll", "F-dur"
|
|
542
|
+
*
|
|
543
|
+
* Corresponds to `240$r` in MARC 21, [musicKey](http://id.loc.gov/ontologies/bibframe.html#p_musicKey) in Bibframe and [has key of representative expression](https://www.rdaregistry.info/Elements/w/#P10221) in RDA. */
|
|
544
|
+
key?: string;
|
|
545
|
+
/** @description Arrangement statement. Contains the value "arr.", "arrangement" or similar if the work is an arrangement of another work.
|
|
546
|
+
*
|
|
547
|
+
* Corresponds to `240$o` in MARC 21 */
|
|
548
|
+
arrangement?: string;
|
|
549
|
+
};
|
|
550
|
+
/** @description A recommended age group for the audience of a work.
|
|
551
|
+
*
|
|
552
|
+
* For age limits and ratings for games and audiovisual material, see {@link ageRating } .
|
|
553
|
+
*
|
|
554
|
+
* The age group vocabulary was developed by Biblioteksentralen and later incorporated into the Norwegian National Library's {@link https://www.nb.no/nbvok/tg/nb/ Nortarget vocabulary } */
|
|
555
|
+
AgeGroup: {
|
|
556
|
+
/** @constant */
|
|
557
|
+
type: "AgeGroup";
|
|
558
|
+
id: string;
|
|
559
|
+
/** @description A 1-2 letter code for the age group, e.g. "aa", "a", "mu". */
|
|
560
|
+
code: string;
|
|
561
|
+
/**
|
|
562
|
+
* @description Code for the age group in PLAS.
|
|
563
|
+
* @enum {string}
|
|
564
|
+
*/
|
|
565
|
+
plasCode?: "child" | "youngAdult" | "adult";
|
|
566
|
+
/** @description Value from MARC 21 field 008/22 <https://www.loc.gov/marc/bibliographic/bd008b.html>. */
|
|
567
|
+
marc21Code?: string;
|
|
568
|
+
/** @description The name of the age group in Norwegian bokmål/nynorsk. */
|
|
569
|
+
name: components["schemas"]["LanguageMap"];
|
|
570
|
+
/** @description URI for the corresponding concept in National Library's [Vocabulary of target groups (nortarget)](https://www.nb.no/nbvok/tg/nb/). */
|
|
571
|
+
nortargetUri?: string;
|
|
572
|
+
};
|
|
573
|
+
/** @description Age limits following the {@link https://pegi.info/page/pegi-age-ratings PEGI age ratings } */
|
|
574
|
+
PegiAgeLimit: {
|
|
575
|
+
/** @constant */
|
|
576
|
+
type: "PegiAgeLimit";
|
|
577
|
+
/** @description Age suitability in years. A value of 0 years indicates suitable for everyone. */
|
|
578
|
+
years: number;
|
|
579
|
+
/** @description URI of the PEGI age limit from https://www.nb.no/nbvok/pegi */
|
|
580
|
+
uri: string;
|
|
581
|
+
id: string;
|
|
582
|
+
};
|
|
583
|
+
/** @description Age limits following {@link https://www.medietilsynet.no/barn-og-medier/aldersgrenser Medietilsynet } */
|
|
584
|
+
NmaAgeLimit: {
|
|
585
|
+
/** @constant */
|
|
586
|
+
type: "NmaAgeLimit";
|
|
587
|
+
/** @description Age suitability in years. A value of 0 years indicates suitable for everyone. */
|
|
588
|
+
years: number;
|
|
589
|
+
/** @description URI of the NMA age limit from https://www.nb.no/nbvok/nma */
|
|
590
|
+
uri: string;
|
|
591
|
+
id: string;
|
|
592
|
+
};
|
|
593
|
+
AgeLimit: components["schemas"]["PegiAgeLimit"] | components["schemas"]["NmaAgeLimit"];
|
|
594
|
+
/** @description A contents entry, also know as an analytical title entry, describes a work (usually short work) contained in a larger work. It contains a title an optionally the main creator of the work. */
|
|
595
|
+
ContentsEntry: {
|
|
596
|
+
/** @constant */
|
|
597
|
+
type: "ContentsEntry";
|
|
598
|
+
/** @description Work or manifestation title extracted from analytical entry (7XX$t or 740$a) */
|
|
599
|
+
title: components["schemas"]["Title"];
|
|
600
|
+
/** @description Main creator extracted from analytical entry (700/710) */
|
|
601
|
+
creator?: components["schemas"]["Agent"];
|
|
602
|
+
};
|
|
603
|
+
GrepSubject: {
|
|
604
|
+
/** @constant */
|
|
605
|
+
type: "GrepSubject";
|
|
606
|
+
id: string;
|
|
607
|
+
code: string;
|
|
608
|
+
uri: string;
|
|
609
|
+
name: components["schemas"]["LanguageMap"];
|
|
610
|
+
notes?: string;
|
|
611
|
+
status?: string;
|
|
612
|
+
modifiedDateTime?: string;
|
|
613
|
+
originModifiedDateTime?: string;
|
|
614
|
+
replacedBy?: string;
|
|
615
|
+
validFrom?: string;
|
|
616
|
+
validUntil?: string;
|
|
617
|
+
teachedUntil?: string;
|
|
618
|
+
approvedDate?: string;
|
|
619
|
+
createdDate?: string;
|
|
620
|
+
updatedDate?: string;
|
|
621
|
+
};
|
|
622
|
+
/** @description For accessible works, this describes the accessibility feature of the work, one of:
|
|
623
|
+
* - the text has been created or adapted to be easy to read (normarc 019$e code "ta", TG1006).
|
|
624
|
+
* - the content has been created or adapted to be easy to understand (normarc 019$e code "tb", TG1007).
|
|
625
|
+
*
|
|
626
|
+
* See also the manifestation property `accessibleFormat`, which describes accessibility features which are related to format, not content, such as larger font size or dyslexia friendly fonts. */
|
|
627
|
+
AccessibleContentFeature: {
|
|
628
|
+
type: string;
|
|
629
|
+
id: string;
|
|
630
|
+
/** @enum {string} */
|
|
631
|
+
code: "ta" | "tb";
|
|
632
|
+
label: components["schemas"]["LanguageMap"];
|
|
633
|
+
/** @description URI for the corresponding concept in National Library's [Vocabulary of target groups (nortarget)](https://www.nb.no/nbvok/tg/nb/). */
|
|
634
|
+
nortargetUri: string;
|
|
635
|
+
};
|
|
636
|
+
/** @description A Work is defined as "The intellectual or artistic content of a distinct creation" (Library Reference Model)
|
|
637
|
+
*
|
|
638
|
+
* It is the top level and most abstract entity in the WEMI stack (Work, Expression, Manifestation, Item), and serves to cluster all expressions of what one could consider "the same book" (or e.g. same play, film, game, etc.) in different formats and languages.
|
|
639
|
+
*
|
|
640
|
+
* While the work is an abstract entity, convention is to assign it a title, language and year in order to aid with identifying the work. */
|
|
641
|
+
Work: {
|
|
642
|
+
/** @constant */
|
|
643
|
+
type: "Work";
|
|
644
|
+
/** @description Cordata work ID. */
|
|
645
|
+
id: string;
|
|
646
|
+
/** @description The year in which the representative expression of the work was published or released. */
|
|
647
|
+
workYear?: number;
|
|
648
|
+
/** @description The language of the representative expression of the work. */
|
|
649
|
+
languages: components["schemas"]["Language"][];
|
|
650
|
+
/** @description Map of identifiers for matching records in external datasets: */
|
|
651
|
+
identifiers: {
|
|
652
|
+
/** @description Identifier assigned by Biblioteksentralen for authority records. Unique for all authorities independent of type. */
|
|
653
|
+
bibbiAuthorityId?: string;
|
|
654
|
+
/** @description Identifier for an equivalent work in Deichman's catalogue. */
|
|
655
|
+
deichmanWorkId?: string;
|
|
656
|
+
/** @description Identifier for a work in the National Library of Norway's (abandonded) registry of works. */
|
|
657
|
+
nbWorkId?: string;
|
|
658
|
+
};
|
|
659
|
+
/** @description Preferred title of work.
|
|
660
|
+
*
|
|
661
|
+
* Typically this will be the title the work was assigned at its first publication or release. Exceptions are made if:
|
|
662
|
+
* - the work is significantly more well known under a later or abbreviated form of the title; e.g. *"Hamlet"*, not *"The tragedy of Hamlet, prince of Denmark"*.
|
|
663
|
+
* - the work is known under a uniform title - applies to works created prior to 1501.
|
|
664
|
+
* - there are other significant reasons for preferring a later title.
|
|
665
|
+
*
|
|
666
|
+
* For works where the first publication has two main titles separated by "or" (subsequent main title), only the first title is registered as the preferred title for the work, e.g. *"The hobbit"*, not *"The hobbit, or, There and back again"*.
|
|
667
|
+
*
|
|
668
|
+
* Classical music works without titles in the traditional sense will instead get a generic uniform title, synthesized from key information about the work, such as "Symphonies, no. 6, op. 6, F major". In these cases, the title is of type {@link UniformTitleMusic } . */
|
|
669
|
+
title: components["schemas"]["Title"] | components["schemas"]["UniformTitleMusic"];
|
|
670
|
+
/** @description Variant titles which aid in identifying a manifestation as belonging to a work.
|
|
671
|
+
*
|
|
672
|
+
* Variant titles are typically registered if:
|
|
673
|
+
* - there is more than one title in the original language of the work, e.g. "The golden compass" for "Northern lights" / Philip Pullman.
|
|
674
|
+
* - there are established longer or shorter forms of the title, e.g. "The tragedy of Hamlet, prince of Denmark" for "Hamlet".
|
|
675
|
+
* - The uniform title differs from the title in the original language, e.g. "Alf laylah wa-laylah" for "Tusen og en natt".
|
|
676
|
+
*
|
|
677
|
+
* See {@link Title } for individual components of title. */
|
|
678
|
+
variantTitles: components["schemas"]["Title"][];
|
|
679
|
+
/** @description List of contributors to the *work* in the form of * {@link Agent agents } * (persons or organizations) and their * {@link Role roles } * in the creation of the work.
|
|
680
|
+
*
|
|
681
|
+
* Work contributors include authors for books, editors for edited works, composers for music, directors and screenwriters for films, etc., but not contributors that played a role in the creation of a specific expression (e.g. translators, illustrators, etc.) or manifestation (e.g. illustrators, cover designers, etc.). */
|
|
682
|
+
contributors: components["schemas"]["Contributor"][];
|
|
683
|
+
/** @description The recommended age group(s) for the work as assigned by Biblioteksentralen according to a controlled vocabulary.
|
|
684
|
+
*
|
|
685
|
+
* Typically, multiple consecutive age groups are assigned to a work, e.g. "mu" (13-16) and "vu" (16-18) for young adult fiction, or "vu" (16-18) and "v" (Adults) for fiction suited for older teens and adults.
|
|
686
|
+
*
|
|
687
|
+
* Both fiction and non-fiction are assigned age groups based on interest level; Biblioteksentralen does not assign reading level age groups. */
|
|
688
|
+
ageGroups: components["schemas"]["AgeGroup"][];
|
|
689
|
+
ageLimit?: components["schemas"]["AgeLimit"];
|
|
690
|
+
summary?: string;
|
|
691
|
+
subjects: components["schemas"]["SubjectV2"][];
|
|
692
|
+
genres: components["schemas"]["Genre"][];
|
|
693
|
+
workTypes: components["schemas"]["WorkType"][];
|
|
694
|
+
isShortWork?: boolean;
|
|
695
|
+
/** @description Less structured information about the work's contents. Example: song titles for musical works (parsed from 740$a with ind2 == "2" in MARC21) */
|
|
696
|
+
contents?: components["schemas"]["ContentsEntry"][];
|
|
697
|
+
/** @description Whether the Work is a work of fiction. */
|
|
698
|
+
isFiction?: boolean;
|
|
699
|
+
/** @description List of countries where work is made, firstly used for movies. */
|
|
700
|
+
countriesOfOrigin?: components["schemas"]["Place"][];
|
|
701
|
+
grepSubjects?: components["schemas"]["GrepSubject"][];
|
|
702
|
+
/** @description Whether the work has been created or adapted for users with special needs. */
|
|
703
|
+
accessibleContentFeature?: components["schemas"]["AccessibleContentFeature"];
|
|
704
|
+
biographicContent?: string;
|
|
705
|
+
};
|
|
706
|
+
NumberOfPlayers: {
|
|
707
|
+
local?: {
|
|
708
|
+
minimum: number;
|
|
709
|
+
maximum: number;
|
|
710
|
+
};
|
|
711
|
+
online?: {
|
|
712
|
+
minimum: number;
|
|
713
|
+
maximum: number;
|
|
714
|
+
};
|
|
715
|
+
};
|
|
716
|
+
ExpressionType: {
|
|
717
|
+
/** @constant */
|
|
718
|
+
code: "a";
|
|
719
|
+
/** @constant */
|
|
720
|
+
label: "Tekstlig uttrykk";
|
|
721
|
+
} | {
|
|
722
|
+
/** @constant */
|
|
723
|
+
code: "c";
|
|
724
|
+
/** @constant */
|
|
725
|
+
label: "Notetrykk";
|
|
726
|
+
} | {
|
|
727
|
+
/** @constant */
|
|
728
|
+
code: "e";
|
|
729
|
+
/** @constant */
|
|
730
|
+
label: "Kartografisk uttrykk";
|
|
731
|
+
} | {
|
|
732
|
+
/** @constant */
|
|
733
|
+
code: "g";
|
|
734
|
+
/** @constant */
|
|
735
|
+
label: "Film og tv-serier";
|
|
736
|
+
} | {
|
|
737
|
+
/** @constant */
|
|
738
|
+
code: "i";
|
|
739
|
+
/** @constant */
|
|
740
|
+
label: "Lyd (lydbøker og lydopptak)";
|
|
741
|
+
} | {
|
|
742
|
+
/** @constant */
|
|
743
|
+
code: "j";
|
|
744
|
+
/** @constant */
|
|
745
|
+
label: "Musikkopptak";
|
|
746
|
+
} | {
|
|
747
|
+
/** @constant */
|
|
748
|
+
code: "m";
|
|
749
|
+
/** @constant */
|
|
750
|
+
label: "Dataprogram";
|
|
751
|
+
} | {
|
|
752
|
+
/** @constant */
|
|
753
|
+
code: "o";
|
|
754
|
+
/** @constant */
|
|
755
|
+
label: "Kombidokument (ikke egentlig et uttrykk}, sorteres senere)";
|
|
756
|
+
} | {
|
|
757
|
+
/** @constant */
|
|
758
|
+
code: "r";
|
|
759
|
+
/** @constant */
|
|
760
|
+
label: "Realia";
|
|
761
|
+
};
|
|
762
|
+
/** @description A video game platform. */
|
|
763
|
+
Platform: {
|
|
764
|
+
/** @constant */
|
|
765
|
+
type: "Platform";
|
|
766
|
+
id: string;
|
|
767
|
+
/** @description Two-letter code used for the platform in BSMARC/NORMARC 019$b. */
|
|
768
|
+
code: string;
|
|
769
|
+
/** @description Full name of the platform. Example: "PlayStation 4" */
|
|
770
|
+
name: string;
|
|
771
|
+
/** @description Abbreviated name of the platform. Example: "PS4" */
|
|
772
|
+
abbreviatedName?: string;
|
|
773
|
+
};
|
|
774
|
+
MusicInstrument: {
|
|
775
|
+
/** @constant */
|
|
776
|
+
type: "MusicInstrument";
|
|
777
|
+
id: string;
|
|
778
|
+
name: components["schemas"]["LanguageMap"];
|
|
779
|
+
alternativeNames?: components["schemas"]["LanguageMapList"];
|
|
780
|
+
};
|
|
781
|
+
Instrumentation: {
|
|
782
|
+
/** @constant */
|
|
783
|
+
type: "Instrumentation";
|
|
784
|
+
instruments: {
|
|
785
|
+
instrument: components["schemas"]["MusicInstrument"];
|
|
786
|
+
numberOfPerformers?: number;
|
|
787
|
+
}[];
|
|
788
|
+
};
|
|
789
|
+
/** @description An Expression is defined as "A distinct combination of signs conveying intellectual or artistic content" {@link https://www.iflastandards.info/lrm/lrmer#E3 Library Reference Model }
|
|
790
|
+
*
|
|
791
|
+
* It is the second level entity in the WEMI stack (Work, Expression, Manifestation, Item), and serves to group Manifestations of the same language and type - that is to say all manifestations using the same semiotic signs to convey the content. */
|
|
792
|
+
Expression: {
|
|
793
|
+
/** @constant */
|
|
794
|
+
type: "Expression";
|
|
795
|
+
id: string;
|
|
796
|
+
/** @description Preferred title of expression. See {@link Title } for individual components of title. */
|
|
797
|
+
title?: components["schemas"]["Title"];
|
|
798
|
+
/** @description A list of contributors in the form of {@link Agent } s and their {@link Role } s in the creation of the Expression. */
|
|
799
|
+
contributors: components["schemas"]["Contributor"][];
|
|
800
|
+
/** @description The language(s) of the expression.
|
|
801
|
+
*
|
|
802
|
+
* In the case of video games, spoken language is registered in this field, and text languages are registered as `gameTextLanguages`. */
|
|
803
|
+
languages: components["schemas"]["Language"][];
|
|
804
|
+
/** @description Whether the text has one or more translations side by side. */
|
|
805
|
+
hasParallelText: boolean;
|
|
806
|
+
/** @description Game text language(s). */
|
|
807
|
+
gameTextLanguages?: components["schemas"]["Language"][];
|
|
808
|
+
/** @description Number of players for interactive works, in local matches and online. */
|
|
809
|
+
numberOfPlayers?: components["schemas"]["NumberOfPlayers"];
|
|
810
|
+
/** @description Type of expression, e.g. Audio, Text. */
|
|
811
|
+
expressionType: components["schemas"]["ExpressionType"];
|
|
812
|
+
/** @description Edition number for editions of academic texts. */
|
|
813
|
+
edition?: string;
|
|
814
|
+
/** @description List of collections the Expression is part of, in the form of Collection Expression entries. */
|
|
815
|
+
collections: components["schemas"]["CollectionExpressionEntry"][];
|
|
816
|
+
/** @description For video games, this lists the gaming platform(s) that this expression of the game has been released for and thus are optimized for. Games may still be playable on newer platforms through backwards compatibility.
|
|
817
|
+
*
|
|
818
|
+
* The list is usually single-valued since platform is a distinguishing characteristic for expressions. The exception is when a game is released to support two generations of gaming consoles through an optional platform upgrade, such as a PlayStation 4 game that can be upgraded for PlayStation 5. */
|
|
819
|
+
platforms?: components["schemas"]["Platform"][];
|
|
820
|
+
/** @description List of alternatives for instrumentation of a music work. Each instrumentation is a set of instruments and optionally number of performers on the instrument. */
|
|
821
|
+
instrumentations?: components["schemas"]["Instrumentation"][];
|
|
822
|
+
/** @description If the expression is a translation and the translation was not carried out directly from the original language(s) of the work, but via one or more intermediate languages, this field contains the intermediate languages. */
|
|
823
|
+
intermediateTranslationLanguages?: components["schemas"]["Language"][];
|
|
824
|
+
};
|
|
825
|
+
/** @description A Manifestation is defined as "A set of all carriers that are assumed to share the same characteristics as to intellectual or artistic content and aspects of physical form. That set is defined by both the overall content and the production plan for its carrier or carriers" {@link https://www.iflastandards.info/lrm/lrmer#E4 Library Reference Model }
|
|
826
|
+
*
|
|
827
|
+
* It is the third level entity in the WEMI stack (Work, Expression, Manifestation, Item), and is used to cluster all Items of the same edition. */
|
|
828
|
+
Manifestation: {
|
|
829
|
+
/** @constant */
|
|
830
|
+
type: "Manifestation";
|
|
831
|
+
id: string;
|
|
832
|
+
/** @description Map of identifiers for matching records in other systems:
|
|
833
|
+
* - `bibbiId`: ID assigned to all publications catalogued by Biblioteksentralen.
|
|
834
|
+
* - `bibsentSku`: SKU (Norwegian: "varenummer") assigned to products in Biblioteksentralen's webshop.
|
|
835
|
+
* - `bibliofilId`: Unique ID assigned to a publication in Bibliofil. Shared by all Bibliofil libraries.
|
|
836
|
+
* - `bokbasenId`: Unique ID assigned to a publication in Bokbasen.
|
|
837
|
+
* - `filmoteketId`: Identifier for a movie in Filmoteket. Can be used to generate URLs: <https://filmoteket.no/film/{filmoteketId}>
|
|
838
|
+
* - `imdbId`: Identifier for a movie in IMDB. */
|
|
839
|
+
identifiers: {
|
|
840
|
+
bibbiId?: string;
|
|
841
|
+
bibsentSku?: string;
|
|
842
|
+
bibliofilId?: string;
|
|
843
|
+
bokbasenId?: string;
|
|
844
|
+
filmoteketId?: string;
|
|
845
|
+
imdbId?: string;
|
|
846
|
+
};
|
|
847
|
+
createDate?: string;
|
|
848
|
+
updateDate?: string;
|
|
849
|
+
/** @description Preferred title of manifestation.
|
|
850
|
+
*
|
|
851
|
+
* The preferred source of title for a manifestation is the title page. See also {@link parallelTitles } and {@link variantTitles } . */
|
|
852
|
+
title: components["schemas"]["Title"];
|
|
853
|
+
/** @description Parallel titles
|
|
854
|
+
*
|
|
855
|
+
* For manifestations containing two or more expressions of the same work in different languages, e.g. "As you like it = Som dere vil ha det". Bibliographic convention is to display parallel titles consecutively, separated by a = sign.
|
|
856
|
+
*
|
|
857
|
+
* Each parallel title should eventually have their own `titleLanguage` value, so they can be tagged correctly for screen readers, but this is not yet implemented (as of Sept 2023). */
|
|
858
|
+
parallelTitles: components["schemas"]["Title"][];
|
|
859
|
+
/** @description Variant titles
|
|
860
|
+
*
|
|
861
|
+
* Other title variants found on added title pages, the book cover and/or spine, that differs substantially from the main title. */
|
|
862
|
+
variantTitles: components["schemas"]["Title"][];
|
|
863
|
+
/** @description The cover image of the manifestation. */
|
|
864
|
+
coverImage?: string;
|
|
865
|
+
/** @description The binding type for paper books. */
|
|
866
|
+
binding?: components["schemas"]["BindingType"];
|
|
867
|
+
/** @description The document type of the manifestation. Taken from a controlled list and shows if a manifestation is e.g. a printed book, a downloadable e-book, a film on DVD, an audiobook on CD, a Nintendo Switch game on a game card, etc. */
|
|
868
|
+
documentType?: components["schemas"]["DocumentType"];
|
|
869
|
+
/** @description Statement of responsibility is a human-readable text string that */
|
|
870
|
+
statementOfResponsibility?: string;
|
|
871
|
+
/** @description {@link https://en.wikipedia.org/wiki/ISBN ISBN } . International identifier for manifestations of books, including e-books and audio books.
|
|
872
|
+
*
|
|
873
|
+
* Intended to be unique, but is not always. A single manifestation may have more than one, or the same ISBN may erroneously be assigned to different editions of the same book or even two separate works.
|
|
874
|
+
*
|
|
875
|
+
* Often styled with hyphens between the groups of numbers to aid with human-readability, but these are not an intrinsic part of the ISBN. */
|
|
876
|
+
isbn: string[];
|
|
877
|
+
incorrectIsbn: string[];
|
|
878
|
+
/** @description {@link https://en.wikipedia.org/wiki/International_Standard_Music_Number ISMN } . International identifier for manifestations of printed music. */
|
|
879
|
+
ismn: string[];
|
|
880
|
+
/** @description {@ link https://en.wikipedia.org/wiki/International_Article_Number | EAN}. Identifier for manifestations other than books and printed music.
|
|
881
|
+
*
|
|
882
|
+
* In a library context, typically found on film, video games and recorded music. May occasionally be used on printed music, very rarely on books, in combination with or instead of ISMN/ISBN. */
|
|
883
|
+
ean: string[];
|
|
884
|
+
/** @description Year the manifestation was published.
|
|
885
|
+
*
|
|
886
|
+
* - The value is normally a 4-digit numeric value, but may also be a range of years.
|
|
887
|
+
* - An ending hyphen (-) is used for open-ended dates ("199-" means "1990-1999")
|
|
888
|
+
* - An ending question mark indicates that the year is uncertain ("1998?").
|
|
889
|
+
* - The special value "ukjent år" indicates that publication year is unknown. */
|
|
890
|
+
publicationYear?: string;
|
|
891
|
+
/** @description The publication statement lists a publisher/imprint and the associated place for that publisher. */
|
|
892
|
+
publicationStatements: components["schemas"]["PublicationStatement"][];
|
|
893
|
+
/** @description Edition */
|
|
894
|
+
edition?: string;
|
|
895
|
+
/** @description An object linking an {@link Agent } to the work with a {@link Role } showing the function the agent has played in the creation of the work. */
|
|
896
|
+
contributors: components["schemas"]["Contributor"][];
|
|
897
|
+
/** @description Subtitle languages (Språk for undertekster)
|
|
898
|
+
*
|
|
899
|
+
* Languages for which subtitles are provided. Subtitles are generally designed for viewers who can hear the audio, but do not understand the spoken language, and therefore only contain a transcript of the spoken dialogue. See `captionLanguages` for subtitles designed for the deaf and hard of hearing (SDH) specifically. */
|
|
900
|
+
subtitleLanguages?: components["schemas"]["Language"][];
|
|
901
|
+
/** @description Caption languages (Språk for undertekster for hørselshemmede)
|
|
902
|
+
*
|
|
903
|
+
* List of languages for which captions are provided, also known as subtitles for the deaf and hard of hearing (SDH). In addition to a transcript of the spoken dialogue, these include important non-dialogue information such as sound effects, music, and speaker identification. See also `subtitleLanguages`. */
|
|
904
|
+
captionLanguages?: components["schemas"]["Language"][];
|
|
905
|
+
/** @description Audio description languages (Språk for synstolking)
|
|
906
|
+
*
|
|
907
|
+
* List of languages for which audio descriptions are provided as an alternative mode of access to the visual content of the movie. */
|
|
908
|
+
audioDescriptionLanguages?: components["schemas"]["Language"][];
|
|
909
|
+
/** @description Duration of the movie. */
|
|
910
|
+
duration?: components["schemas"]["DurationRecord"];
|
|
911
|
+
/** @description Links an expression to the {@link CollectionExpression } of a collection the expression is part of. */
|
|
912
|
+
collections: components["schemas"]["CollectionExpressionEntry"][];
|
|
913
|
+
/** @description Specifies the material that accompanyies the item, typically of document type "Combined document" or "Language Course" */
|
|
914
|
+
accompanyingMaterial?: string;
|
|
915
|
+
notes?: components["schemas"]["Note"][];
|
|
916
|
+
/** @description If the manifestation is a so-called aggregate manifestation, i.e. a manifestation containing multiple works, the list of works contained in the manifestation will be found here. Each of the works only make up a part of the manifestation.
|
|
917
|
+
* If the collection of works is itself considered a work, that work and its corresponding expression will be found under the `work` and `expression` properties, respectively. If not, those properties will be undefined.
|
|
918
|
+
* Examples:
|
|
919
|
+
* - A manifestation *Dr. Jekyll and Mr. Hyde & other stories* (9781665963084) is an aggregate manifestation containing
|
|
920
|
+
* three works, so the three works will be found under `worksContained`. The collection of these
|
|
921
|
+
* three works is not considered a separate work on its own, so `work` and `expression` will be `undefined`.
|
|
922
|
+
* - A manifestation *Charles Dickens' Christmas stories* (9781789502367) is an aggregate manifestation
|
|
923
|
+
* containing five short stories, these will be found under `worksContained`. The collection
|
|
924
|
+
* itself is considered to be a work on its own, so this work is found under `work`, and the corresponding
|
|
925
|
+
* expression under `expression`. */
|
|
926
|
+
containedWorks?: {
|
|
927
|
+
work: components["schemas"]["Work"];
|
|
928
|
+
expression: components["schemas"]["Expression"];
|
|
929
|
+
}[];
|
|
930
|
+
};
|
|
931
|
+
/** ExpressionWithManifestations */
|
|
932
|
+
ExpressionWithManifestation: {
|
|
933
|
+
manifestations?: components["schemas"]["Manifestation"][];
|
|
934
|
+
aggregateManifestations?: components["schemas"]["Manifestation"][];
|
|
935
|
+
} & components["schemas"]["Expression"];
|
|
936
|
+
/** WorkWithExpression */
|
|
937
|
+
WorkWithExpression: {
|
|
938
|
+
expressions?: components["schemas"]["ExpressionWithManifestation"][];
|
|
939
|
+
} & components["schemas"]["Work"];
|
|
940
|
+
FacetTerm: {
|
|
941
|
+
/** @description The facet terms searchable value. */
|
|
942
|
+
value: string;
|
|
943
|
+
/** @description A displayable (human readable) representation of facet term name. */
|
|
944
|
+
name: string;
|
|
945
|
+
/** @description The number of occurrences in the search result, based on works. */
|
|
946
|
+
occurrences?: number;
|
|
947
|
+
};
|
|
948
|
+
FacetV2: {
|
|
949
|
+
type: components["schemas"]["SearchFacetTypeEnumV2"];
|
|
950
|
+
/** @description A displayable (human readable) facet name. */
|
|
951
|
+
name?: string;
|
|
952
|
+
terms: components["schemas"]["FacetTerm"][];
|
|
953
|
+
};
|
|
954
|
+
GetWorkSearch200ResponseV2: {
|
|
955
|
+
/** @description The total number of results in the whole search result. */
|
|
956
|
+
total?: number;
|
|
957
|
+
results: {
|
|
958
|
+
work: components["schemas"]["WorkWithExpression"];
|
|
959
|
+
representativeManifestationId: string;
|
|
960
|
+
}[];
|
|
961
|
+
/** @description If this is false, we haven't reached the end of the search result yet, if it's false we have, and if it's missing or null we don't know. */
|
|
962
|
+
endOfResults: boolean;
|
|
963
|
+
/** @description This array contains the requested facets, and their terms. Each facet type should only appear once in the array. */
|
|
964
|
+
facets?: components["schemas"]["FacetV2"][];
|
|
965
|
+
/**
|
|
966
|
+
* @description Indicates what kind of search was performed, based on parsed input query.
|
|
967
|
+
* @enum {string}
|
|
968
|
+
*/
|
|
969
|
+
queryType?: "empty" | "standard" | "advanced";
|
|
970
|
+
};
|
|
971
|
+
};
|
|
972
|
+
responses: never;
|
|
973
|
+
parameters: never;
|
|
974
|
+
requestBodies: never;
|
|
975
|
+
headers: never;
|
|
976
|
+
pathItems: never;
|
|
977
|
+
}
|
|
978
|
+
interface operations {
|
|
979
|
+
searchWorks: {
|
|
980
|
+
parameters: {
|
|
981
|
+
query?: {
|
|
982
|
+
/** @description The search query. */
|
|
983
|
+
query?: string;
|
|
984
|
+
/** @description Page size (default 10).
|
|
985
|
+
* It's important to be aware that, the page size here is only a preferred page size, the result set can be both small and greater, depending on the implementation from the LMS provider.
|
|
986
|
+
* This is important to consider in any product design.
|
|
987
|
+
* */
|
|
988
|
+
size?: number;
|
|
989
|
+
/** @description Page number (deafult 1). */
|
|
990
|
+
page?: number;
|
|
991
|
+
facet?: components["schemas"]["SearchFacetTypeEnumV2"][];
|
|
992
|
+
/** @description Retun this number of facet terms for each requested facet (deafult 10). */
|
|
993
|
+
facet_terms_size?: number;
|
|
994
|
+
/** @description Sorting */
|
|
995
|
+
sort?: components["schemas"]["SearchSortingTypeEnumV2"];
|
|
996
|
+
/** @description Each filter accepts multiple comma-separated values that are OR'ed together.
|
|
997
|
+
* The filters themselves are AND'ed together.
|
|
998
|
+
* */
|
|
999
|
+
filter?: components["schemas"]["WorkFilterSchema"];
|
|
1000
|
+
};
|
|
1001
|
+
header?: never;
|
|
1002
|
+
path?: never;
|
|
1003
|
+
cookie?: never;
|
|
1004
|
+
};
|
|
1005
|
+
requestBody?: never;
|
|
1006
|
+
responses: {
|
|
1007
|
+
/** @description List of works */
|
|
1008
|
+
200: {
|
|
1009
|
+
headers: {
|
|
1010
|
+
[name: string]: unknown;
|
|
1011
|
+
};
|
|
1012
|
+
content: {
|
|
1013
|
+
"application/json": components["schemas"]["GetWorkSearch200ResponseV2"];
|
|
1014
|
+
};
|
|
1015
|
+
};
|
|
1016
|
+
};
|
|
1017
|
+
};
|
|
1018
|
+
}
|
|
1019
|
+
|
|
1020
|
+
type BmdbApiSchemas = components["schemas"];
|
|
1021
|
+
type BmdbApiPaths = paths;
|
|
1022
|
+
|
|
1023
|
+
type BmdbSearchClientOptions = ClientOptions & {
|
|
1024
|
+
clientIdentifier: string;
|
|
1025
|
+
version?: "v2";
|
|
1026
|
+
};
|
|
1027
|
+
type BmdbSearchClient = Client<BmdbApiPaths>;
|
|
1028
|
+
declare const createBmdbSearchClient: ({ clientIdentifier, version, ...options }: BmdbSearchClientOptions) => BmdbSearchClient;
|
|
1029
|
+
|
|
1030
|
+
type BmdbSearchHooks = OpenapiQueryClient<BmdbApiPaths>;
|
|
1031
|
+
type BmdbSearchHooksArgs = {
|
|
1032
|
+
searchClient: BmdbSearchClient;
|
|
1033
|
+
} | BmdbSearchClientOptions;
|
|
1034
|
+
declare const createBmdbSearchHooks: (args: BmdbSearchHooksArgs) => BmdbSearchHooks;
|
|
1035
|
+
|
|
1036
|
+
type BmdbWork = BmdbApiSchemas["WorkWithExpression"];
|
|
1037
|
+
type BmdbExpression = BmdbApiSchemas["ExpressionWithManifestation"];
|
|
1038
|
+
type BmdbManifestation = BmdbApiSchemas["Manifestation"];
|
|
1039
|
+
|
|
1040
|
+
export { type BmdbExpression, type BmdbManifestation, type BmdbSearchClient, type BmdbSearchClientOptions, type BmdbSearchHooks, type BmdbWork, createBmdbSearchClient, createBmdbSearchHooks };
|