edmlib 2.5.3__tar.gz

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.
edmlib-2.5.3/PKG-INFO ADDED
@@ -0,0 +1,4537 @@
1
+ Metadata-Version: 2.1
2
+ Name: edmlib
3
+ Version: 2.5.3
4
+ Summary: Provides comprehensive mapping of all EDM classes and properties to Pydantic models and attributes, enabling robust data validation and serialization. Includes parsing capabilities for XML EDM files, allowing seamless conversion of XML data into Python objects for further processing and analysis.
5
+ License: MIT
6
+ Author: Kulturpool
7
+ Author-email: info@kulturpool.at
8
+ Requires-Python: >=3.10,<4.0.0
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.10
12
+ Classifier: Programming Language :: Python :: 3.11
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Programming Language :: Python :: 3.13
15
+ Requires-Dist: lxml (>=5.1.0,<6.0.0)
16
+ Requires-Dist: pdoc (>=15.0.4,<16.0.0)
17
+ Requires-Dist: pydantic (>=2.10.3,<3.0.0)
18
+ Requires-Dist: pyld (>=2.0.3,<3.0.0)
19
+ Requires-Dist: rdflib (>=7.0.0,<8.0.0)
20
+ Requires-Dist: requests (>=2.32.3,<3.0.0)
21
+ Description-Content-Type: text/markdown
22
+
23
+ # Python Library for Europeana Data Model
24
+
25
+ A Python library providing utilities for working with the **Europeana Data Model (EDM)**. This library maps all EDM classes and properties to Pydantic models, enabling type-safe validation, parsing, and serialization of EDM records.
26
+
27
+ ## Features
28
+
29
+ - **Validation**: Built-in validation for EDM record structure and property constraints
30
+ - **Type-safe EDM**: All EDM classes implemented as Pydantic models
31
+ - **XML/RDF parsing**: Parse EDM records from XML or RDF formats
32
+ - **RDF serialization**: Export EDM records back to RDF formats
33
+
34
+ ## Quick Start
35
+
36
+ EDM specifications are encapsulated in `EDM_Record`. All data is validated at instantiation, ensuring compliance with EDM.
37
+
38
+ ### Parse EDM Records
39
+
40
+ ```python
41
+ from edmlib import EDM_Parser
42
+
43
+ # Parse from string
44
+ record = EDM_Parser.from_string("""<?xml version="1.0" encoding="UTF-8"?>
45
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
46
+ xmlns:ore="http://www.openarchives.org/ore/terms/"
47
+ xmlns:edm="http://www.europeana.eu/schemas/edm/"
48
+ xmlns:dc="http://purl.org/dc/elements/1.1/">
49
+ <edm:ProvidedCHO
50
+ rdf:about="http://uri.test/edm123#CHO">
51
+ <dc:type xml:lang="en">Text</dc:type>
52
+ <dc:title xml:lang="de">Titel</dc:title>
53
+ <dc:identifier>123</dc:identifier>
54
+ <dc:language>de</dc:language>
55
+ <edm:type>TEXT</edm:type>
56
+ </edm:ProvidedCHO>
57
+ <ore:Aggregation
58
+ rdf:about="http://uri.test/edm123#Aggregation">
59
+ <edm:aggregatedCHO
60
+ rdf:resource="http://uri.test/edm123#CHO" />
61
+ <edm:dataProvider>Test</edm:dataProvider>
62
+ <edm:isShownAt
63
+ rdf:resource="http://uri.test/edm123.jpg" />
64
+ <edm:isShownBy
65
+ rdf:resource="http://uri.test/edm123.jpg" />
66
+ <edm:provider>Kulturpool</edm:provider>
67
+ <edm:rights rdf:resource="http://creativecommons.org/licenses/by-nc-sa/4.0/" />
68
+ </ore:Aggregation>
69
+ </rdf:RDF>
70
+ """).parse()
71
+
72
+ # Parse from file
73
+ record = EDM_Parser.from_file("edm_record.xml").parse()
74
+
75
+ # Parse other formats
76
+ record = EDM_Parser.from_file("edm_record.ttl", format="ttl").parse()
77
+ ```
78
+
79
+ ### Create EDM Records programmatically
80
+
81
+ ```python
82
+ from edmlib import EDM_Record, EDM_ProvidedCHO, ORE_Aggregation, Ref, Lit
83
+
84
+ record = EDM_Record(
85
+ provided_cho=EDM_ProvidedCHO(
86
+ id=Ref(value="http://uri.test/edm123#CHO"),
87
+ dc_type=[Lit(value="Text", lang="en")],
88
+ dc_title=[Lit(value="Titel", lang="de")],
89
+ dc_identifier=[Lit(value="123")],
90
+ dc_language=[Lit(value="de")],
91
+ edm_type=Lit(value="TEXT")
92
+ ),
93
+ aggregation=ORE_Aggregation(
94
+ id=Ref(value="http://uri.test/edm123#Aggregation"),
95
+ edm_aggregatedCHO=Ref(value="http://uri.test/edm123#CHO"),
96
+ edm_dataProvider=Lit(value="Test"),
97
+ edm_isShownAt=Ref(value="http://uri.test/edm123.jpg"),
98
+ edm_isShownBy=Ref(value="http://uri.test/edm123.jpg"),
99
+ edm_provider=Lit(value="Kulturpool"),
100
+ edm_rights=Ref(value="http://creativecommons.org/licenses/by-nc-sa/4.0/")
101
+ )
102
+ )
103
+ ```
104
+
105
+ ### Work with EDM Records
106
+
107
+ ```python
108
+ from edmlib import EDM_ProvidedCHO, ORE_Aggregation, EDM_WebResource, EDM_Agent, EDM_Place, EDM_TimeSpan, SKOS_Concept, CC_License, SVCS_Service
109
+
110
+ # Access record components
111
+ assert record.provided_cho.id == Ref(value="http://uri.test/edm123#CHO")
112
+ assert record.aggregation.id == Ref(value="http://uri.test/edm123#Aggregation")
113
+ ```
114
+
115
+ ### Serialize
116
+
117
+ Multiple serialization formats for exporting EDM records are supported:
118
+
119
+ ```python
120
+ # Pretty-XML format
121
+ xml_str = record.serialize()
122
+
123
+ # JSON-LD format
124
+ jsonld_str = record.serialize(format="json-ld")
125
+ ```
126
+
127
+ All rdflib graph serialization formats are supported, including XML, Turtle (TTL), and others.
128
+
129
+
130
+ ## Component Classes
131
+
132
+ - `EDM_ProvidedCHO` - Cultural Heritage Object (CHO)
133
+ - `ORE_Aggregation` - Resource aggregation
134
+ - `EDM_WebResource` - Web resources
135
+ - `EDM_Agent` - Agents (persons, organizations)
136
+ - `EDM_Place` - Places and locations
137
+ - `EDM_TimeSpan` - Time periods
138
+ - `SKOS_Concept` - Concepts and classifications
139
+ - `CC_License` - Creative Commons licenses
140
+ - `SVCS_Service` - SIOC Services
141
+
142
+ ### Composition
143
+ ```python
144
+ assert isinstance( record.provided_cho, EDM_ProvidedCHO)
145
+ assert isinstance( record.aggregation, ORE_Aggregation)
146
+
147
+ assert isinstance(next(iter(record.web_resource)), EDM_WebResource) # optional
148
+ assert isinstance(next(iter(record.skos_concept)), SKOS_Concept) # optional
149
+ assert isinstance(next(iter(record.edm_agent)), EDM_Agent) # optional
150
+ assert isinstance(next(iter(record.edm_time_span)), EDM_TimeSpan) # optional
151
+ assert isinstance(next(iter(record.edm_place)), EDM_Place) # optional
152
+ assert isinstance(next(iter(record.cc_license)), CC_License) # optional
153
+ assert isinstance(next(iter(record.svcs_service)), SVCS_Service) # optional
154
+ ```
155
+
156
+ ## Development
157
+
158
+ ### Setup
159
+
160
+ ```bash
161
+ # Clone repository
162
+ git clone <repository-url>
163
+
164
+ cd edmlib
165
+
166
+ # Install dependencies
167
+ poetry install
168
+
169
+ # Run tests
170
+ pytest .
171
+
172
+ # Generate API Documentation
173
+ poetry run update-api-docs
174
+ ```
175
+
176
+ ### Requirements
177
+
178
+ - Python >=3.10,<4.0.0
179
+ - Dependencies:
180
+ - rdflib ^7.0.0
181
+ - lxml ^5.1.0
182
+ - pydantic ^2.10.3
183
+ - pyld ^2.0.3
184
+ - requests ^2.32.3
185
+
186
+ <!--pdoc-start-->
187
+ ## API documentation
188
+
189
+ * [EDM_Record](#edm_record)
190
+ * [provided_cho](#edm_recordprovided_cho)
191
+ * [aggregation](#edm_recordaggregation)
192
+ * [web_resource](#edm_recordweb_resource)
193
+ * [skos_concept](#edm_recordskos_concept)
194
+ * [edm_agent](#edm_recordedm_agent)
195
+ * [edm_time_span](#edm_recordedm_time_span)
196
+ * [edm_place](#edm_recordedm_place)
197
+ * [cc_license](#edm_recordcc_license)
198
+ * [svcs_service](#edm_recordsvcs_service)
199
+ * [get_rdf_graph](#edm_recordget_rdf_graph)
200
+ * [serialize](#edm_recordserialize)
201
+ * [get_framed_json_ld](#edm_recordget_framed_json_ld)
202
+ * [validate_provided_cho_identity](#edm_recordvalidate_provided_cho_identity)
203
+ * [fetch_edm_isShownBy_head](#edm_recordfetch_edm_isshownby_head)
204
+ * [has_edm_object](#edm_recordhas_edm_object)
205
+ * [fetch_edm_object_head](#edm_recordfetch_edm_object_head)
206
+ * [has_edm_hasView](#edm_recordhas_edm_hasview)
207
+ * [fetch_edm_hasView_heads](#edm_recordfetch_edm_hasview_heads)
208
+ * [fetch_edm_isShownAt_head](#edm_recordfetch_edm_isshownat_head)
209
+ * [model_config](#edm_recordmodel_config)
210
+
211
+ * [EDM_ProvidedCHO](#edm_providedcho)
212
+ * [edm_type](#edm_providedchoedm_type)
213
+ * [dc_contributor](#edm_providedchodc_contributor)
214
+ * [dc_coverage](#edm_providedchodc_coverage)
215
+ * [dc_creator](#edm_providedchodc_creator)
216
+ * [dc_date](#edm_providedchodc_date)
217
+ * [dc_description](#edm_providedchodc_description)
218
+ * [dc_format](#edm_providedchodc_format)
219
+ * [dc_identifier](#edm_providedchodc_identifier)
220
+ * [dc_language](#edm_providedchodc_language)
221
+ * [dc_publisher](#edm_providedchodc_publisher)
222
+ * [dc_relation](#edm_providedchodc_relation)
223
+ * [dc_rights](#edm_providedchodc_rights)
224
+ * [dc_source](#edm_providedchodc_source)
225
+ * [dc_subject](#edm_providedchodc_subject)
226
+ * [dc_title](#edm_providedchodc_title)
227
+ * [dc_type](#edm_providedchodc_type)
228
+ * [dcterms_alternative](#edm_providedchodcterms_alternative)
229
+ * [dcterms_conformsTo](#edm_providedchodcterms_conformsto)
230
+ * [dcterms_created](#edm_providedchodcterms_created)
231
+ * [dcterms_extent](#edm_providedchodcterms_extent)
232
+ * [dcterms_hasFormat](#edm_providedchodcterms_hasformat)
233
+ * [dcterms_hasPart](#edm_providedchodcterms_haspart)
234
+ * [dcterms_hasVersion](#edm_providedchodcterms_hasversion)
235
+ * [dcterms_isFormatOf](#edm_providedchodcterms_isformatof)
236
+ * [dcterms_isPartOf](#edm_providedchodcterms_ispartof)
237
+ * [dcterms_isReferencedBy](#edm_providedchodcterms_isreferencedby)
238
+ * [dcterms_isReplacedBy](#edm_providedchodcterms_isreplacedby)
239
+ * [dcterms_isRequiredBy](#edm_providedchodcterms_isrequiredby)
240
+ * [dcterms_issued](#edm_providedchodcterms_issued)
241
+ * [dcterms_isVersionOf](#edm_providedchodcterms_isversionof)
242
+ * [dcterms_medium](#edm_providedchodcterms_medium)
243
+ * [dcterms_provenance](#edm_providedchodcterms_provenance)
244
+ * [dcterms_references](#edm_providedchodcterms_references)
245
+ * [dcterms_replaces](#edm_providedchodcterms_replaces)
246
+ * [dcterms_requires](#edm_providedchodcterms_requires)
247
+ * [dcterms_spatial](#edm_providedchodcterms_spatial)
248
+ * [dcterms_tableOfContents](#edm_providedchodcterms_tableofcontents)
249
+ * [dcterms_temporal](#edm_providedchodcterms_temporal)
250
+ * [edm_currentLocation](#edm_providedchoedm_currentlocation)
251
+ * [edm_hasMet](#edm_providedchoedm_hasmet)
252
+ * [edm_hasType](#edm_providedchoedm_hastype)
253
+ * [edm_incorporates](#edm_providedchoedm_incorporates)
254
+ * [edm_isDerivativeOf](#edm_providedchoedm_isderivativeof)
255
+ * [edm_isNextInSequence](#edm_providedchoedm_isnextinsequence)
256
+ * [edm_isRelatedTo](#edm_providedchoedm_isrelatedto)
257
+ * [edm_isRepresentationOf](#edm_providedchoedm_isrepresentationof)
258
+ * [edm_isSimilarTo](#edm_providedchoedm_issimilarto)
259
+ * [edm_isSuccessorOf](#edm_providedchoedm_issuccessorof)
260
+ * [edm_realizes](#edm_providedchoedm_realizes)
261
+ * [owl_sameAs](#edm_providedchoowl_sameas)
262
+ * [validate_dependent_edm](#edm_providedchovalidate_dependent_edm)
263
+ * [model_config](#edm_providedchomodel_config)
264
+
265
+ * [ORE_Aggregation](#ore_aggregation)
266
+ * [edm_aggregatedCHO](#ore_aggregationedm_aggregatedcho)
267
+ * [edm_dataProvider](#ore_aggregationedm_dataprovider)
268
+ * [edm_provider](#ore_aggregationedm_provider)
269
+ * [edm_rights](#ore_aggregationedm_rights)
270
+ * [edm_hasView](#ore_aggregationedm_hasview)
271
+ * [edm_isShownAt](#ore_aggregationedm_isshownat)
272
+ * [edm_isShownBy](#ore_aggregationedm_isshownby)
273
+ * [edm_object](#ore_aggregationedm_object)
274
+ * [dc_rights](#ore_aggregationdc_rights)
275
+ * [edm_ugc](#ore_aggregationedm_ugc)
276
+ * [edm_intermediateProvider](#ore_aggregationedm_intermediateprovider)
277
+ * [validate_conditional_attributes](#ore_aggregationvalidate_conditional_attributes)
278
+ * [model_config](#ore_aggregationmodel_config)
279
+
280
+ * [EDM_WebResource](#edm_webresource)
281
+ * [dc_creator](#edm_webresourcedc_creator)
282
+ * [dc_description](#edm_webresourcedc_description)
283
+ * [dc_format](#edm_webresourcedc_format)
284
+ * [dc_rights](#edm_webresourcedc_rights)
285
+ * [dc_source](#edm_webresourcedc_source)
286
+ * [dc_type](#edm_webresourcedc_type)
287
+ * [dcterms_conformsTo](#edm_webresourcedcterms_conformsto)
288
+ * [dcterms_created](#edm_webresourcedcterms_created)
289
+ * [dcterms_extent](#edm_webresourcedcterms_extent)
290
+ * [dcterms_hasPart](#edm_webresourcedcterms_haspart)
291
+ * [dcterms_isFormatOf](#edm_webresourcedcterms_isformatof)
292
+ * [dcterms_isPartOf](#edm_webresourcedcterms_ispartof)
293
+ * [dcterms_isReferencedBy](#edm_webresourcedcterms_isreferencedby)
294
+ * [dcterms_issued](#edm_webresourcedcterms_issued)
295
+ * [edm_isNextInSequence](#edm_webresourceedm_isnextinsequence)
296
+ * [edm_rights](#edm_webresourceedm_rights)
297
+ * [owl_sameAs](#edm_webresourceowl_sameas)
298
+ * [svcs_has_service](#edm_webresourcesvcs_has_service)
299
+ * [validate_web_resource](#edm_webresourcevalidate_web_resource)
300
+ * [model_config](#edm_webresourcemodel_config)
301
+
302
+ * [CC_License](#cc_license)
303
+ * [odrl_inheritFrom](#cc_licenseodrl_inheritfrom)
304
+ * [cc_deprecatedOn](#cc_licensecc_deprecatedon)
305
+ * [model_config](#cc_licensemodel_config)
306
+
307
+ * [SKOS_Concept](#skos_concept)
308
+ * [skos_prefLabel](#skos_conceptskos_preflabel)
309
+ * [skos_altLabel](#skos_conceptskos_altlabel)
310
+ * [skos_broader](#skos_conceptskos_broader)
311
+ * [skos_narrower](#skos_conceptskos_narrower)
312
+ * [skos_related](#skos_conceptskos_related)
313
+ * [skos_broadMatch](#skos_conceptskos_broadmatch)
314
+ * [skos_narrowMatch](#skos_conceptskos_narrowmatch)
315
+ * [skos_relatedMatch](#skos_conceptskos_relatedmatch)
316
+ * [skos_exactMatch](#skos_conceptskos_exactmatch)
317
+ * [skos_closeMatch](#skos_conceptskos_closematch)
318
+ * [skos_note](#skos_conceptskos_note)
319
+ * [skos_notation](#skos_conceptskos_notation)
320
+ * [skos_inScheme](#skos_conceptskos_inscheme)
321
+ * [validate_skos_pref_label](#skos_conceptvalidate_skos_pref_label)
322
+ * [model_config](#skos_conceptmodel_config)
323
+
324
+ * [EDM_Agent](#edm_agent)
325
+ * [skos_prefLabel](#edm_agentskos_preflabel)
326
+ * [skos_altLabel](#edm_agentskos_altlabel)
327
+ * [skos_note](#edm_agentskos_note)
328
+ * [dc_date](#edm_agentdc_date)
329
+ * [dc_identifier](#edm_agentdc_identifier)
330
+ * [dcterms_hasPart](#edm_agentdcterms_haspart)
331
+ * [dcterms_isPartOf](#edm_agentdcterms_ispartof)
332
+ * [edm_begin](#edm_agentedm_begin)
333
+ * [edm_end](#edm_agentedm_end)
334
+ * [edm_hasMet](#edm_agentedm_hasmet)
335
+ * [edm_isRelatedTo](#edm_agentedm_isrelatedto)
336
+ * [foaf_name](#edm_agentfoaf_name)
337
+ * [rdagr2_biographicalInformation](#edm_agentrdagr2_biographicalinformation)
338
+ * [rdagr2_dateOfBirth](#edm_agentrdagr2_dateofbirth)
339
+ * [rdagr2_dateOfDeath](#edm_agentrdagr2_dateofdeath)
340
+ * [rdagr2_dateOfEstablishment](#edm_agentrdagr2_dateofestablishment)
341
+ * [rdagr2_dateOfTermination](#edm_agentrdagr2_dateoftermination)
342
+ * [rdagr2_gender](#edm_agentrdagr2_gender)
343
+ * [rdagr2_placeOfBirth](#edm_agentrdagr2_placeofbirth)
344
+ * [rdagr2_placeOfDeath](#edm_agentrdagr2_placeofdeath)
345
+ * [rdagr2_professionOrOccupation](#edm_agentrdagr2_professionoroccupation)
346
+ * [owl_sameAs](#edm_agentowl_sameas)
347
+ * [validate_skos_pref_label](#edm_agentvalidate_skos_pref_label)
348
+ * [model_config](#edm_agentmodel_config)
349
+
350
+ * [EDM_TimeSpan](#edm_timespan)
351
+ * [skos_prefLabel](#edm_timespanskos_preflabel)
352
+ * [skos_altLabel](#edm_timespanskos_altlabel)
353
+ * [skos_note](#edm_timespanskos_note)
354
+ * [dcterms_hasPart](#edm_timespandcterms_haspart)
355
+ * [dcterms_isPartOf](#edm_timespandcterms_ispartof)
356
+ * [edm_begin](#edm_timespanedm_begin)
357
+ * [edm_end](#edm_timespanedm_end)
358
+ * [edm_isNextInSequence](#edm_timespanedm_isnextinsequence)
359
+ * [owl_sameAs](#edm_timespanowl_sameas)
360
+ * [validate_skos_pref_label](#edm_timespanvalidate_skos_pref_label)
361
+ * [model_config](#edm_timespanmodel_config)
362
+
363
+ * [EDM_Place](#edm_place)
364
+ * [wgs84_pos_lat](#edm_placewgs84_pos_lat)
365
+ * [wgs84_pos_long](#edm_placewgs84_pos_long)
366
+ * [wgs84_pos_alt](#edm_placewgs84_pos_alt)
367
+ * [skos_prefLabel](#edm_placeskos_preflabel)
368
+ * [skos_altLabel](#edm_placeskos_altlabel)
369
+ * [skos_note](#edm_placeskos_note)
370
+ * [dcterms_hasPart](#edm_placedcterms_haspart)
371
+ * [dcterms_isPartOf](#edm_placedcterms_ispartof)
372
+ * [edm_isNextInSequence](#edm_placeedm_isnextinsequence)
373
+ * [owl_sameAs](#edm_placeowl_sameas)
374
+ * [validate_skos_pref_label](#edm_placevalidate_skos_pref_label)
375
+ * [model_config](#edm_placemodel_config)
376
+
377
+ * [SVCS_Service](#svcs_service)
378
+ * [dcterms_conformsTo](#svcs_servicedcterms_conformsto)
379
+ * [doap_implements](#svcs_servicedoap_implements)
380
+ * [model_config](#svcs_servicemodel_config)
381
+
382
+ * [MixedValuesList](#mixedvalueslist)
383
+ * [EDM_Parser](#edm_parser)
384
+ * [EDM_Parser](#edm_parser__init__)
385
+ * [from_file](#edm_parserfrom_file)
386
+ * [from_string](#edm_parserfrom_string)
387
+ * [graph](#edm_parsergraph)
388
+ * [get_single_ref](#edm_parserget_single_ref)
389
+ * [get_many_ref](#edm_parserget_many_ref)
390
+ * [get_triples](#edm_parserget_triples)
391
+ * [get_aggregation](#edm_parserget_aggregation)
392
+ * [get_webresources](#edm_parserget_webresources)
393
+ * [get_instance_triples](#edm_parserget_instance_triples)
394
+ * [parse_single_class](#edm_parserparse_single_class)
395
+ * [parse_many_class](#edm_parserparse_many_class)
396
+ * [parse](#edm_parserparse)
397
+
398
+ * [Ref](#ref)
399
+ * [value](#refvalue)
400
+ * [is_ref](#refis_ref)
401
+ * [validate_value_as_uri](#refvalidate_value_as_uri)
402
+ * [to_rdflib](#refto_rdflib)
403
+ * [model_config](#refmodel_config)
404
+
405
+ * [Lit](#lit)
406
+ * [value](#litvalue)
407
+ * [lang](#litlang)
408
+ * [datatype](#litdatatype)
409
+ * [normalize](#litnormalize)
410
+ * [validate_consistency](#litvalidate_consistency)
411
+ * [to_rdflib](#litto_rdflib)
412
+ * [model_config](#litmodel_config)
413
+
414
+
415
+
416
+
417
+
418
+ ---
419
+ ### EDM_Record
420
+ ```python
421
+ class EDM_Record(pydantic.main.BaseModel):
422
+ ```
423
+
424
+
425
+
426
+ <div class="docstring"><p>Pydantic model representing an edm record, as a fully typed structure.
427
+ All contained non-standard types are themselves BaseModels, and the fields are always also either BaseModels or
428
+ standard-types. This ensures that without further conversion, an instance of this class can be
429
+ dumped as a dict (or json) and restored from such a dict (or json).</p>
430
+
431
+ <p>Validation:
432
+ This model is responsible for validating the overall structure, order and completeness
433
+ of the record.
434
+ The individual models for each of its properties are responsible for validating their own attributes –
435
+ their completeness, cardinality and structure.
436
+ Finally, the special type models - Ref and Lit - within those container types are responsible for validating
437
+ the indiviudal values.</p>
438
+ </div>
439
+
440
+ #### EDM_Record.provided_cho
441
+ ```python
442
+ provided_cho: edmlib.edm.classes.core.EDM_ProvidedCHO
443
+ ```
444
+
445
+
446
+
447
+
448
+
449
+ #### EDM_Record.aggregation
450
+ ```python
451
+ aggregation: edmlib.edm.classes.core.ORE_Aggregation
452
+ ```
453
+
454
+
455
+
456
+
457
+
458
+ #### EDM_Record.web_resource
459
+ ```python
460
+ web_resource: Optional[List[edmlib.edm.classes.core.EDM_WebResource]]
461
+ ```
462
+
463
+
464
+
465
+
466
+
467
+ #### EDM_Record.skos_concept
468
+ ```python
469
+ skos_concept: Optional[List[edmlib.edm.classes.context.SKOS_Concept]]
470
+ ```
471
+
472
+
473
+
474
+
475
+
476
+ #### EDM_Record.edm_agent
477
+ ```python
478
+ edm_agent: Optional[List[edmlib.edm.classes.context.EDM_Agent]]
479
+ ```
480
+
481
+
482
+
483
+
484
+
485
+ #### EDM_Record.edm_time_span
486
+ ```python
487
+ edm_time_span: Optional[List[edmlib.edm.classes.context.EDM_TimeSpan]]
488
+ ```
489
+
490
+
491
+
492
+
493
+
494
+ #### EDM_Record.edm_place
495
+ ```python
496
+ edm_place: Optional[List[edmlib.edm.classes.context.EDM_Place]]
497
+ ```
498
+
499
+
500
+
501
+
502
+
503
+ #### EDM_Record.cc_license
504
+ ```python
505
+ cc_license: Optional[List[edmlib.edm.classes.context.CC_License]]
506
+ ```
507
+
508
+
509
+
510
+
511
+
512
+ #### EDM_Record.svcs_service
513
+ ```python
514
+ svcs_service: Optional[List[edmlib.edm.classes.service.SVCS_Service]]
515
+ ```
516
+
517
+
518
+
519
+
520
+
521
+ #### EDM_Record.get_rdf_graph
522
+ ```python
523
+ def get_rdf_graph(self)
524
+ ```
525
+
526
+
527
+
528
+ <div class="docstring"><p>Return whole record as as an RDF - rdflib.Graph object.</p>
529
+ </div>
530
+
531
+ #### EDM_Record.serialize
532
+ ```python
533
+ def serialize(self, format: str = 'pretty-xml', max_depth: int = 1) -> str
534
+ ```
535
+
536
+
537
+
538
+ <div class="docstring"><p>Serialize graph to rdf/xml with pretty-formatting.</p>
539
+ </div>
540
+
541
+ #### EDM_Record.get_framed_json_ld
542
+ ```python
543
+ def get_framed_json_ld(self)
544
+ ```
545
+
546
+
547
+
548
+
549
+
550
+ #### EDM_Record.validate_provided_cho_identity
551
+ ```python
552
+ @model_validator(mode='after') def validate_provided_cho_identity(self) -> Self
553
+ ```
554
+
555
+
556
+
557
+
558
+
559
+ #### EDM_Record.fetch_edm_isShownBy_head
560
+ ```python
561
+ def fetch_edm_isShownBy_head(self, **kwargs) -> requests.models.Response
562
+ ```
563
+
564
+
565
+
566
+
567
+
568
+ #### EDM_Record.has_edm_object
569
+ ```python
570
+ def has_edm_object(self) -> bool
571
+ ```
572
+
573
+
574
+
575
+
576
+
577
+ #### EDM_Record.fetch_edm_object_head
578
+ ```python
579
+ def fetch_edm_object_head(self, **kwargs) -> requests.models.Response
580
+ ```
581
+
582
+
583
+
584
+
585
+
586
+ #### EDM_Record.has_edm_hasView
587
+ ```python
588
+ def has_edm_hasView(self) -> bool
589
+ ```
590
+
591
+
592
+
593
+
594
+
595
+ #### EDM_Record.fetch_edm_hasView_heads
596
+ ```python
597
+ def fetch_edm_hasView_heads(self, **kwargs) -> list[requests.models.Response]
598
+ ```
599
+
600
+
601
+
602
+
603
+
604
+ #### EDM_Record.fetch_edm_isShownAt_head
605
+ ```python
606
+ def fetch_edm_isShownAt_head(self, **kwargs) -> requests.models.Response
607
+ ```
608
+
609
+
610
+
611
+
612
+
613
+ #### EDM_Record.model_config
614
+ ```python
615
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
616
+ ```
617
+
618
+
619
+
620
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
621
+ </div>
622
+
623
+
624
+ ---
625
+
626
+ ---
627
+ ### EDM_ProvidedCHO
628
+ ```python
629
+ class EDM_ProvidedCHO(edmlib.edm.base.EDM_BaseClass):
630
+ ```
631
+
632
+
633
+
634
+ <div class="docstring"><p>mandatory-properties: DC_description, DC_language, DC_subject, DC_title, DC_type, DCTERMS_spatial, DCTERMS_temporal, EDM_type</p>
635
+
636
+ <p>optional-properties: DC_coverage, DC_format, DC_relation, DC_rights, DCTERMS_conformsTo, DCTERMS_extent, DCTERMS_hasFormat, DCTERMS_hasPart, DCTERMS_hasVersion, DCTERMS_isFormatOf, DCTERMS_isReferencedBy, DCTERMS_isReplacedBy, DCTERMS_isRequiredBy, DCTERMS_isVersionOf, DCTERMS_medium, DCTERMS_provenance, DCTERMS_references, DCTERMS_replaces, DCTERMS_requires, DCTERMS_tableOfContents , EDM_currentLocation, EDM_hasMet, EDM_hasType, EDM_incorporates, EDM_isDerivativeOf, EDM_isRelatedTo, EDM_isRepresentationOf, EDM_isSimilarTo, EDM_isSuccessorOf, EDM_realizes, OWL_sameAs</p>
637
+
638
+ <p>recommended-properties: DC_contributor, DC_creator, DC_date, DC_identifier, DC_publisher, DC_source, DCTERMS_alternative, DCTERMS_created, DCTERMS_isPartOf, DCTERMS_issued, EDM_IsNextInSequence</p>
639
+ </div>
640
+
641
+ #### EDM_ProvidedCHO.edm_type
642
+ ```python
643
+ edm_type: edmlib.edm.value_types.Lit
644
+ ```
645
+
646
+
647
+
648
+ <div class="docstring"><p>Mandate:
649
+ mandatory</p>
650
+
651
+ <p>Cardinality:
652
+ exactly_one</p>
653
+
654
+ <p>Value-Type:
655
+ Lit</p>
656
+
657
+ <p>Description: </p>
658
+
659
+ <p>The value must be one of the types accepted by Europeana as it will support portal fun
660
+ ctionality: TEXT, VIDEO, SOUND, IMAGE, 3D. (For 3D, when applicable, use the value “3D
661
+ ‐PDF” in dc:format ) <code>&lt;edm:type&gt;IMAGE&lt;/edm:type&gt;</code> (upper-­case &amp; case sensitive) <code>&lt;edm:ty
662
+ pe&gt;3D&lt;/edm:type&gt;</code> (upper-­case &amp; case sensitive)</p>
663
+ </div>
664
+
665
+ #### EDM_ProvidedCHO.dc_contributor
666
+ ```python
667
+ dc_contributor: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
668
+ ```
669
+
670
+
671
+
672
+ <div class="docstring"><p>Mandate:
673
+ recommended</p>
674
+
675
+ <p>Cardinality:
676
+ zero_to_many</p>
677
+
678
+ <p>Value-Type:
679
+ Optional[MixedValuesList]</p>
680
+
681
+ <p>Description: </p>
682
+
683
+ <p>Use for contributors to the CHO. If possible supply the identifier of the contributor
684
+ from an authority source. Providers with richer role terms can elect to map a subset t
685
+ o dc:contributor and others to dc:creator. Repeat for multiple contributors. <code>&lt;dc:contr
686
+ ibutor&gt;Maria Callas&lt;/dc:contributor&gt;</code> or create a reference to an instance of the Agent
687
+ class <code>&lt;dc:contributor rdf:resource=“http://www.example.com/MariaCallas”&gt;</code>For recommend
688
+ ations on medata quality see Tier A-C requirements ,</p>
689
+ </div>
690
+
691
+ #### EDM_ProvidedCHO.dc_coverage
692
+ ```python
693
+ dc_coverage: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
694
+ ```
695
+
696
+
697
+
698
+ <div class="docstring"><p>Mandate:
699
+ optional</p>
700
+
701
+ <p>Cardinality:
702
+ zero_to_many</p>
703
+
704
+ <p>Value-Type:
705
+ Optional[MixedValuesList]</p>
706
+
707
+ <p>Description: </p>
708
+
709
+ <p>The spatial or temporal topic of the CHO. Use the more precise dcterms:spatial or dcte
710
+ rms:temporal properties if the data will support it. <code>&lt;dc:coverage&gt;1995-­1996&lt;/dc:cover
711
+ age&gt;</code> or <code>&lt;dc:coverage&gt;Berlin&lt;/dc:coverage&gt;</code> or create a reference to an instance of a co
712
+ ntextual class, for example, a Place class <code>&lt;dc:coverage rdf:resource=“https://sws.geon
713
+ ames.org/2950159/ ”/&gt;</code></p>
714
+ </div>
715
+
716
+ #### EDM_ProvidedCHO.dc_creator
717
+ ```python
718
+ dc_creator: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
719
+ ```
720
+
721
+
722
+
723
+ <div class="docstring"><p>Mandate:
724
+ recommended</p>
725
+
726
+ <p>Cardinality:
727
+ zero_to_many</p>
728
+
729
+ <p>Value-Type:
730
+ Optional[MixedValuesList]</p>
731
+
732
+ <p>Description: </p>
733
+
734
+ <p>For the creator of the CHO. If possible supply the identifier of the creator from an a
735
+ uthority source. Repeat for multiple creators. <code>&lt;dc:creator&gt;Shakespeare, William&lt;/dc:c
736
+ reator&gt;</code> or create a reference to an instance of the Agent class <code>&lt;dc:creator rdf:resour
737
+ ce=“http://viaf.org/viaf/96994048”/&gt;</code>For recommendations on medata quality see Tier A-C
738
+ requirements .</p>
739
+ </div>
740
+
741
+ #### EDM_ProvidedCHO.dc_date
742
+ ```python
743
+ dc_date: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
744
+ ```
745
+
746
+
747
+
748
+ <div class="docstring"><p>Mandate:
749
+ recommended</p>
750
+
751
+ <p>Cardinality:
752
+ zero_to_many</p>
753
+
754
+ <p>Value-Type:
755
+ Optional[MixedValuesList]</p>
756
+
757
+ <p>Description: </p>
758
+
759
+ <p>Use for a significant date in the life of the CHO. Europeana recommends date conformi
760
+ ng to ISO 8601 starting with the year and with hyphens (YYYY-­MM-DD). NB: other EDM el
761
+ ements are relevant for expressing dates of different events in the life of the CHO: d
762
+ cterms:temporal, dcterms:created and dcterms:issued. Be careful and choose the most ap
763
+ propriate one! <code>&lt;dc:date&gt;Early 20th century&lt;/dc:date&gt;</code> or <code>&lt;dc:date&gt;1919&lt;/dc:date&gt;</code> or cre
764
+ ate a reference to an instance of the TimeSpan class <code>&lt;dc:date rdf:resource=“http://sem
765
+ ium.org/time/19xx_1_third”/&gt;</code></p>
766
+ </div>
767
+
768
+ #### EDM_ProvidedCHO.dc_description
769
+ ```python
770
+ dc_description: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
771
+ ```
772
+
773
+
774
+
775
+ <div class="docstring"><p>Mandate:
776
+ mandatory</p>
777
+
778
+ <p>Cardinality:
779
+ zero_to_many</p>
780
+
781
+ <p>Value-Type:
782
+ Optional[MixedValuesList]</p>
783
+
784
+ <p>Description: </p>
785
+
786
+ <p>A description of the CHO. If there is no dc:description for an object, there must be a
787
+ dc:title. If both are available, provide both. <code>&lt;dc:description&gt;Illustrated guide to
788
+ airport markings and lighting signals, with particular reference to SMGCS (Surface Mo
789
+ vement Guidance and Control System) for airports with low visibility conditions.&lt;/dc:d
790
+ escription&gt;</code></p>
791
+ </div>
792
+
793
+ #### EDM_ProvidedCHO.dc_format
794
+ ```python
795
+ dc_format: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
796
+ ```
797
+
798
+
799
+
800
+ <div class="docstring"><p>Mandate:
801
+ optional</p>
802
+
803
+ <p>Cardinality:
804
+ zero_to_many</p>
805
+
806
+ <p>Value-Type:
807
+ Optional[MixedValuesList]</p>
808
+
809
+ <p>Description: </p>
810
+
811
+ <p>Use for the terms generally applied to indicate the format of the cultural heritage ob
812
+ ject or the file format of a born digital object. Use the value “3D-­PDF” if appropria
813
+ te. <code>&lt;dc:format&gt;paper&lt;/dc:format&gt;</code>For recommendations on medata quality see Tier A-C req
814
+ uirements .</p>
815
+ </div>
816
+
817
+ #### EDM_ProvidedCHO.dc_identifier
818
+ ```python
819
+ dc_identifier: List[edmlib.edm.value_types.Lit]
820
+ ```
821
+
822
+
823
+
824
+ <div class="docstring"><p>Mandate:
825
+ recommended</p>
826
+
827
+ <p>Cardinality:
828
+ zero_to_many</p>
829
+
830
+ <p>Value-Type:
831
+ Optional[List[Lit]]</p>
832
+
833
+ <p>Description: </p>
834
+
835
+ <p>An identifier of the original CHO. <code>&lt;dc:identifier&gt;RP-­T-­1952-­380&lt;/dc:identifier&gt;</code></p>
836
+ </div>
837
+
838
+ #### EDM_ProvidedCHO.dc_language
839
+ ```python
840
+ dc_language: Optional[List[edmlib.edm.value_types.Lit]]
841
+ ```
842
+
843
+
844
+
845
+ <div class="docstring"><p>Mandate:
846
+ mandatory</p>
847
+
848
+ <p>Cardinality:
849
+ zero_to_many</p>
850
+
851
+ <p>Value-Type:
852
+ Optional[List[Lit]]</p>
853
+
854
+ <p>Description: </p>
855
+
856
+ <p>The language of text CHOs and also for other types of CHO if there is a language aspec
857
+ t. Mandatory for TEXT objects, strongly recommended for other object types with a lang
858
+ uage element. Best practice is to use ISO 639 two- or three-letter primary language ta
859
+ gs.Repeat for multiple languages. We also recommend the use of the ISO 639-­2 code for
860
+ no linguistic content (ZXX).</p>
861
+ </div>
862
+
863
+ #### EDM_ProvidedCHO.dc_publisher
864
+ ```python
865
+ dc_publisher: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
866
+ ```
867
+
868
+
869
+
870
+ <div class="docstring"><p>Mandate:
871
+ recommended</p>
872
+
873
+ <p>Cardinality:
874
+ zero_to_many</p>
875
+
876
+ <p>Value-Type:
877
+ Optional[MixedValuesList]</p>
878
+
879
+ <p>Description: </p>
880
+
881
+ <p>The name of the publisher of the CHO. If possible supply the identifier of the publish
882
+ er from an authority source. <code>&lt;dc:publisher&gt;Oxford University Press&lt;/dc:publisher&gt;</code> or c
883
+ reate a reference to an instance of the Agent class <code>&lt;dc:publisher rdf:resource=“http:/
884
+ /www.oup.com/”/&gt;</code>For recommendations on medata quality see Tier A-C requirements .</p>
885
+ </div>
886
+
887
+ #### EDM_ProvidedCHO.dc_relation
888
+ ```python
889
+ dc_relation: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
890
+ ```
891
+
892
+
893
+
894
+ <div class="docstring"><p>Mandate:
895
+ optional</p>
896
+
897
+ <p>Cardinality:
898
+ zero_to_many</p>
899
+
900
+ <p>Value-Type:
901
+ Optional[MixedValuesList]</p>
902
+
903
+ <p>Description: </p>
904
+
905
+ <p>The name or identifier of a related resource, generally used for other related CHOs. C
906
+ f edm:isRelatedTo. <code>&lt;dc:relation&gt;maps.crace.1/33&lt;/dc:relation&gt;</code> (Shelf mark) Or to provi
907
+ de a link to another object: <code>&lt;dc:relation rdf:resource=“http://www.identifier/relatedO
908
+ bject”/&gt;</code></p>
909
+ </div>
910
+
911
+ #### EDM_ProvidedCHO.dc_rights
912
+ ```python
913
+ dc_rights: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
914
+ ```
915
+
916
+
917
+
918
+ <div class="docstring"><p>Mandate:
919
+ optional</p>
920
+
921
+ <p>Cardinality:
922
+ zero_to_many</p>
923
+
924
+ <p>Value-Type:
925
+ Optional[MixedValuesList]</p>
926
+
927
+ <p>Description: </p>
928
+
929
+ <p>Use to give the name of the rights holder of the CHO if possible or for more general r
930
+ ights information. (Note that the controlled edm:rights property relates to the digita
931
+ l objects and applies to the edm:WebResource and/or edm:Aggregation). <code>&lt;dc:rights&gt;Copyr
932
+ ight © British Library Board&lt;/dc:rights&gt;</code></p>
933
+ </div>
934
+
935
+ #### EDM_ProvidedCHO.dc_source
936
+ ```python
937
+ dc_source: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
938
+ ```
939
+
940
+
941
+
942
+ <div class="docstring"><p>Mandate:
943
+ recommended</p>
944
+
945
+ <p>Cardinality:
946
+ zero_to_many</p>
947
+
948
+ <p>Value-Type:
949
+ Optional[MixedValuesList]</p>
950
+
951
+ <p>Description: </p>
952
+
953
+ <p>A related resource from which the described resource is derived in whole or in part i.
954
+ e. the source of the original CHO. (Not the name of the content holder: for this see
955
+ edm:dataProvider.) <code>&lt;dc:source&gt;Security Magazine pp 3-12&lt;/dc:source&gt;</code></p>
956
+ </div>
957
+
958
+ #### EDM_ProvidedCHO.dc_subject
959
+ ```python
960
+ dc_subject: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
961
+ ```
962
+
963
+
964
+
965
+ <div class="docstring"><p>Mandate:
966
+ mandatory</p>
967
+
968
+ <p>Cardinality:
969
+ zero_to_many</p>
970
+
971
+ <p>Value-Type:
972
+ Optional[MixedValuesList]</p>
973
+
974
+ <p>Description: </p>
975
+
976
+ <p>The subject of the CHO.One of dc:subject or dc:type or dcterms:spatial or dcterms:temp
977
+ oral must be provided; if more than one of these properties is available, please prov
978
+ ide them all. High-­level dc:subject values like 'archaeology' are allowed, especiall
979
+ y when there is no other subject that can be easily filled in. <code>&lt;dc:subject&gt;archeology&lt;
980
+ /dc:subject&gt;</code>or create a reference to an instance of the Concept class <code>&lt;skos:Concept rd
981
+ f:about="http://semantics.gr/authorities/ekt-unesco/560215094"&gt; &lt;skos:prefLabel xml:
982
+ lang="el"&gt;Αρχαιολογία&lt;/skos:prefLabel&gt; &lt;skos:prefLabel xml:lang="en"&gt;Archaeology&lt;/sk
983
+ os:prefLabel&gt;&lt;/skos:Concept&gt;</code>For recommendations on medata quality see Tier A-C require
984
+ ments .</p>
985
+ </div>
986
+
987
+ #### EDM_ProvidedCHO.dc_title
988
+ ```python
989
+ dc_title: Optional[List[edmlib.edm.value_types.Lit]]
990
+ ```
991
+
992
+
993
+
994
+ <div class="docstring"><p>Mandate:
995
+ mandatory</p>
996
+
997
+ <p>Cardinality:
998
+ zero_to_many</p>
999
+
1000
+ <p>Value-Type:
1001
+ Optional[List[Lit]]</p>
1002
+
1003
+ <p>Description: </p>
1004
+
1005
+ <p>A name given to the CHO. dc:title should be present; but if there is no dc:title avail
1006
+ able, it is acceptable to have dc:description instead. dc:title and dc:description sho
1007
+ uld be distinct. Exact translations of the title can be provided using appropriate xm
1008
+ l language attributes. <code>&lt;dc:title xml:lang=“en”&gt;Eight Weeks&lt;/dc:title&gt; &lt;dc:title xml:la
1009
+ ng=“it”&gt;Ocho semanas&lt;/ dc:title&gt;</code></p>
1010
+ </div>
1011
+
1012
+ #### EDM_ProvidedCHO.dc_type
1013
+ ```python
1014
+ dc_type: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1015
+ ```
1016
+
1017
+
1018
+
1019
+ <div class="docstring"><p>Mandate:
1020
+ mandatory</p>
1021
+
1022
+ <p>Cardinality:
1023
+ zero_to_many</p>
1024
+
1025
+ <p>Value-Type:
1026
+ Optional[MixedValuesList]</p>
1027
+
1028
+ <p>Description: </p>
1029
+
1030
+ <p>The nature or genre of the CHO. Ideally the term(s) will be taken from a controlled vo
1031
+ cabulary. One of dc:type or dc:subject or dcterms:spatial or dcterms:temporal must be
1032
+ provided; if more than one of these properties is available, please provide them all.
1033
+ dc:type should not be (strictly) identical to edm:type. <code>&lt;dc:type&gt;Book&lt;/dc:type&gt;</code> or <code>&lt;dc
1034
+ :type&gt;trombone&lt;/dc:type&gt;</code> or create a reference to an instance of the Concept class <code>&lt;dc
1035
+ :type rdf:resource=“http://www.mimo-­db.eu/HornbostelAndSachs/356/”&gt;</code>For recommendation
1036
+ s on medata quality see Tier A-C requirements .</p>
1037
+ </div>
1038
+
1039
+ #### EDM_ProvidedCHO.dcterms_alternative
1040
+ ```python
1041
+ dcterms_alternative: Optional[List[edmlib.edm.value_types.Lit]]
1042
+ ```
1043
+
1044
+
1045
+
1046
+ <div class="docstring"><p>Mandate:
1047
+ recommended</p>
1048
+
1049
+ <p>Cardinality:
1050
+ zero_to_many</p>
1051
+
1052
+ <p>Value-Type:
1053
+ Optional[List[Lit]]</p>
1054
+
1055
+ <p>Description: </p>
1056
+
1057
+ <p>Any alternative title of the CHO including abbreviations or translations that may not
1058
+ be exact. <code>&lt;dcterms:alternativexml:lang=“en”&gt;Eight weeks: a novel&lt;/dcterms:alternative&gt;</code></p>
1059
+ </div>
1060
+
1061
+ #### EDM_ProvidedCHO.dcterms_conformsTo
1062
+ ```python
1063
+ dcterms_conformsTo: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1064
+ ```
1065
+
1066
+
1067
+
1068
+ <div class="docstring"><p>Mandate:
1069
+ optional</p>
1070
+
1071
+ <p>Cardinality:
1072
+ zero_to_many</p>
1073
+
1074
+ <p>Value-Type:
1075
+ Optional[MixedValuesList]</p>
1076
+
1077
+ <p>Description: </p>
1078
+
1079
+ <p>An established standard to which the CHO conforms. <code>&lt;dcterms:conformsTo&gt;W3C WCAG 2.0&lt;/d
1080
+ cterms:conformsTo&gt;</code> (conforms to web content accessibility guidelines). Or link to the
1081
+ resource <code>&lt;dcterms:conformsTo rdf:resource=“http://www.w3.org/TR/WCAG/”/&gt;</code></p>
1082
+ </div>
1083
+
1084
+ #### EDM_ProvidedCHO.dcterms_created
1085
+ ```python
1086
+ dcterms_created: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1087
+ ```
1088
+
1089
+
1090
+
1091
+ <div class="docstring"><p>Mandate:
1092
+ recommended</p>
1093
+
1094
+ <p>Cardinality:
1095
+ zero_to_many</p>
1096
+
1097
+ <p>Value-Type:
1098
+ Optional[MixedValuesList]</p>
1099
+
1100
+ <p>Description: </p>
1101
+
1102
+ <p>The date of creation of the CHO. Europeana recommends date conforming to ISO 8601 star
1103
+ ting with the year and with hyphens (YYYY-­MM-DD). NB: other EDM elements are relevant
1104
+ for expressing dates of different events in the life of the CHO: dc:date, dcterms:tem
1105
+ poral and dcterms:issued. Be careful and choose the most appropriate one! <code>&lt;dcterms:cre
1106
+ ated&gt;Mid 16th century&lt;/dcterms:created&gt;</code> or <code>&lt;dcterms:created&gt;1584&lt;/dcterms:created&gt;</code> or
1107
+ create a reference to an instance of the TimeSpan class<code>&lt;dcterms:created rdf:resource=“
1108
+ http://semium.org/time/15xx_3_third”/&gt;</code>For recommendations on medata quality see Tier A
1109
+ -C requirements .</p>
1110
+ </div>
1111
+
1112
+ #### EDM_ProvidedCHO.dcterms_extent
1113
+ ```python
1114
+ dcterms_extent: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1115
+ ```
1116
+
1117
+
1118
+
1119
+ <div class="docstring"><p>Mandate:
1120
+ optional</p>
1121
+
1122
+ <p>Cardinality:
1123
+ zero_to_many</p>
1124
+
1125
+ <p>Value-Type:
1126
+ Optional[MixedValuesList]</p>
1127
+
1128
+ <p>Description: </p>
1129
+
1130
+ <p>The size or duration of the CHO. <code>&lt;dcterms:extent&gt;13 cm&lt;/dcterms:extent&gt;</code> (the width of
1131
+ an original object). <code>&lt;dcterms:extent&gt;34 minutes&lt;/dcterms:extent&gt;</code> (the duration of an a
1132
+ udio file)</p>
1133
+ </div>
1134
+
1135
+ #### EDM_ProvidedCHO.dcterms_hasFormat
1136
+ ```python
1137
+ dcterms_hasFormat: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1138
+ ```
1139
+
1140
+
1141
+
1142
+ <div class="docstring"><p>Mandate:
1143
+ optional</p>
1144
+
1145
+ <p>Cardinality:
1146
+ zero_to_many</p>
1147
+
1148
+ <p>Value-Type:
1149
+ Optional[MixedValuesList]</p>
1150
+
1151
+ <p>Description: </p>
1152
+
1153
+ <p>A resource related to the CHO that is substantially the same as the CHO but in another
1154
+ format. <code>&lt;dcterms:hasFormat&gt;http://upload.wikimedia.org/wikipedia/en/f/f3/Europeana_lo
1155
+ go.png&lt;/dcterms:hasFormat&gt;</code> for a png image file of the described tiff resource Or as a
1156
+ link to a resource <code>&lt;dcterms:hasFormat rdf:resource=“http://upload.wikimedia.org/wikip
1157
+ edia/en/f/f3/Europeana_logo.png’’/&gt;</code></p>
1158
+ </div>
1159
+
1160
+ #### EDM_ProvidedCHO.dcterms_hasPart
1161
+ ```python
1162
+ dcterms_hasPart: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1163
+ ```
1164
+
1165
+
1166
+
1167
+ <div class="docstring"><p>Mandate:
1168
+ optional</p>
1169
+
1170
+ <p>Cardinality:
1171
+ zero_to_many</p>
1172
+
1173
+ <p>Value-Type:
1174
+ Optional[MixedValuesList]</p>
1175
+
1176
+ <p>Description: </p>
1177
+
1178
+ <p>A resource that is included either physically or logically in the CHO. It is possible
1179
+ to use either dcterms:isPartOf or dcterms:hasPart to express relation between objects
1180
+ in a hierarchy. However in many cases (especially when a parent object has many childr
1181
+ en) it is preferable to use dcterms:isPartOf. <code>&lt;dcterms:hasPart&gt;Vol.2. Issue 1&lt;/dcterms
1182
+ :hasPart&gt;</code></p>
1183
+ </div>
1184
+
1185
+ #### EDM_ProvidedCHO.dcterms_hasVersion
1186
+ ```python
1187
+ dcterms_hasVersion: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1188
+ ```
1189
+
1190
+
1191
+
1192
+ <div class="docstring"><p>Mandate:
1193
+ optional</p>
1194
+
1195
+ <p>Cardinality:
1196
+ zero_to_many</p>
1197
+
1198
+ <p>Value-Type:
1199
+ Optional[MixedValuesList]</p>
1200
+
1201
+ <p>Description: </p>
1202
+
1203
+ <p>Another, later resource that is a version, edition or adaptation of the CHO demonstrat
1204
+ ing substantive changes in content rather than format. <code>&lt;dcterms:hasVersion&gt;The Sorcere
1205
+ r’s Apprentice (translation by Edwin Zeydel, 1955)&lt;/dcterms:hasVersion&gt;</code> In this exampl
1206
+ e the 1955 translation is a version of the described resource.</p>
1207
+ </div>
1208
+
1209
+ #### EDM_ProvidedCHO.dcterms_isFormatOf
1210
+ ```python
1211
+ dcterms_isFormatOf: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1212
+ ```
1213
+
1214
+
1215
+
1216
+ <div class="docstring"><p>Mandate:
1217
+ optional</p>
1218
+
1219
+ <p>Cardinality:
1220
+ zero_to_many</p>
1221
+
1222
+ <p>Value-Type:
1223
+ Optional[MixedValuesList]</p>
1224
+
1225
+ <p>Description: </p>
1226
+
1227
+ <p>Another resource that is substantially the same as the CHO but in another format. <code>&lt;dct
1228
+ erms:isFormatOf&gt;Europeana_logo.tiff&lt;/dcterms:isFormatOf&gt;</code> where the resource being desc
1229
+ ribed is a png image file</p>
1230
+ </div>
1231
+
1232
+ #### EDM_ProvidedCHO.dcterms_isPartOf
1233
+ ```python
1234
+ dcterms_isPartOf: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1235
+ ```
1236
+
1237
+
1238
+
1239
+ <div class="docstring"><p>Mandate:
1240
+ recommended</p>
1241
+
1242
+ <p>Cardinality:
1243
+ zero_to_many</p>
1244
+
1245
+ <p>Value-Type:
1246
+ Optional[MixedValuesList]</p>
1247
+
1248
+ <p>Description: </p>
1249
+
1250
+ <p>A resource in which the CHO is physically or logically included. This property can be
1251
+ used for objects that are part of a hierarchy and will be used to support an appropria
1252
+ te display in the portal. For that purpose it will be necessary to supply a reference
1253
+ as the value. See the Task Force report on representing hierarchical entities. It is
1254
+ possible to use either dcterms:isPartOf or dcterms:hasPart to express relation between
1255
+ objects in a hierarchy. However in many cases (especially when a parent object has ma
1256
+ ny children) it is preferable to use dcterms:isPartOf. <code>&lt;dcterms:isPartOf&gt;Crace Collect
1257
+ ion of Maps of London&lt;/dcterms:isPartOf&gt;</code></p>
1258
+ </div>
1259
+
1260
+ #### EDM_ProvidedCHO.dcterms_isReferencedBy
1261
+ ```python
1262
+ dcterms_isReferencedBy: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1263
+ ```
1264
+
1265
+
1266
+
1267
+ <div class="docstring"><p>Mandate:
1268
+ optional</p>
1269
+
1270
+ <p>Cardinality:
1271
+ zero_to_many</p>
1272
+
1273
+ <p>Value-Type:
1274
+ Optional[MixedValuesList]</p>
1275
+
1276
+ <p>Description: </p>
1277
+
1278
+ <p>Another resource that references, cites or otherwise points to the CHO. <code>&lt;dcterms:isRef
1279
+ erencedBy&gt;Till, Nicholas (1994) Mozart and the Enlightenment: Truth, Virtue and Beauty
1280
+ in Mozart’s Operas, W. W. Norton &amp; Company&lt;/dcterms:isReferencedBy&gt;</code></p>
1281
+ </div>
1282
+
1283
+ #### EDM_ProvidedCHO.dcterms_isReplacedBy
1284
+ ```python
1285
+ dcterms_isReplacedBy: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1286
+ ```
1287
+
1288
+
1289
+
1290
+ <div class="docstring"><p>Mandate:
1291
+ optional</p>
1292
+
1293
+ <p>Cardinality:
1294
+ zero_to_many</p>
1295
+
1296
+ <p>Value-Type:
1297
+ Optional[MixedValuesList]</p>
1298
+
1299
+ <p>Description: </p>
1300
+
1301
+ <p>Another resource that supplants , displaces, or supersedes the CHO. <code>&lt;dcterms:isReplace
1302
+ dBy&gt;http://dublincore.org/about/2009/01/05/bylaws/&lt;/dcterms:isReplacedBy&gt;</code> where the re
1303
+ source described is an older version (<a href="http://dublincore.org/about/2006/01/01/bylaws/">http://dublincore.org/about/2006/01/01/bylaws/</a>)
1304
+ or link <code>&lt;dcterms:isReplacedBy rdf:resource=“http://dublincore.org/about/2009/01/05/byl
1305
+ aws/”/&gt;</code></p>
1306
+ </div>
1307
+
1308
+ #### EDM_ProvidedCHO.dcterms_isRequiredBy
1309
+ ```python
1310
+ dcterms_isRequiredBy: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1311
+ ```
1312
+
1313
+
1314
+
1315
+ <div class="docstring"><p>Mandate:
1316
+ optional</p>
1317
+
1318
+ <p>Cardinality:
1319
+ zero_to_many</p>
1320
+
1321
+ <p>Value-Type:
1322
+ Optional[MixedValuesList]</p>
1323
+
1324
+ <p>Description: </p>
1325
+
1326
+ <p>Another related resource that requires the CHO to support its function, delivery or co
1327
+ herence <code>&lt;isRequiredBy&gt;http://www.myslides.com/myslideshow.ppt&lt;/isRequiredBy&gt;</code> where the
1328
+ image being described is required for an online slideshow.</p>
1329
+ </div>
1330
+
1331
+ #### EDM_ProvidedCHO.dcterms_issued
1332
+ ```python
1333
+ dcterms_issued: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1334
+ ```
1335
+
1336
+
1337
+
1338
+ <div class="docstring"><p>Mandate:
1339
+ recommended</p>
1340
+
1341
+ <p>Cardinality:
1342
+ zero_to_many</p>
1343
+
1344
+ <p>Value-Type:
1345
+ Optional[MixedValuesList]</p>
1346
+
1347
+ <p>Description: </p>
1348
+
1349
+ <p>Date of formal issuance or publication of the CHO. Europeana recommends date conformin
1350
+ g to ISO 8601 starting with the year and with hyphens (YYYY-­MM-DD). NB: other EDM el
1351
+ ements are relevant for expressing dates of different events in the life of the CHO: d
1352
+ c:date, dcterms:temporal and dcterms:created. Be careful and choose the most appropria
1353
+ te one! <code>&lt;dcterms:issued&gt;1993&lt;/dcterms:issued&gt;</code> or create a reference to an instance of
1354
+ the TimeSpan class `<dcterms:issued rdf:resource=“<a href="http://semium.org/time/17xx_3_third”/">http://semium.org/time/17xx_3_third”/</a></p>
1355
+
1356
+ <blockquote>
1357
+ <p>` (late 18th century)For recommendations on medata quality see Tier A-C requirements .</p>
1358
+ </blockquote>
1359
+ </div>
1360
+
1361
+ #### EDM_ProvidedCHO.dcterms_isVersionOf
1362
+ ```python
1363
+ dcterms_isVersionOf: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1364
+ ```
1365
+
1366
+
1367
+
1368
+ <div class="docstring"><p>Mandate:
1369
+ optional</p>
1370
+
1371
+ <p>Cardinality:
1372
+ zero_to_many</p>
1373
+
1374
+ <p>Value-Type:
1375
+ Optional[MixedValuesList]</p>
1376
+
1377
+ <p>Description: </p>
1378
+
1379
+ <p>Another, earlier resource of which the CHO is a version, edition or adaptation, demons
1380
+ trating substantive changes in content rather than format. <code>&lt;dcterms:isVersionOf&gt;The So
1381
+ rcerer’s Apprentice&lt;dcterms:isVersionOf&gt;</code>In this example The Sorcerer’s Apprentice (tra
1382
+ nslation by Edwin Zeydel, 1955) is the resource being described.</p>
1383
+ </div>
1384
+
1385
+ #### EDM_ProvidedCHO.dcterms_medium
1386
+ ```python
1387
+ dcterms_medium: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1388
+ ```
1389
+
1390
+
1391
+
1392
+ <div class="docstring"><p>Mandate:
1393
+ optional</p>
1394
+
1395
+ <p>Cardinality:
1396
+ zero_to_many</p>
1397
+
1398
+ <p>Value-Type:
1399
+ Optional[MixedValuesList]</p>
1400
+
1401
+ <p>Description: </p>
1402
+
1403
+ <p>The material or physical carrier of the CHO. <code>&lt;dcterms:medium&gt;metal&lt;/dcterms:medium&gt;</code>Fo
1404
+ r recommendations on medata quality see Tier A-C requirements .</p>
1405
+ </div>
1406
+
1407
+ #### EDM_ProvidedCHO.dcterms_provenance
1408
+ ```python
1409
+ dcterms_provenance: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1410
+ ```
1411
+
1412
+
1413
+
1414
+ <div class="docstring"><p>Mandate:
1415
+ optional</p>
1416
+
1417
+ <p>Cardinality:
1418
+ zero_to_many</p>
1419
+
1420
+ <p>Value-Type:
1421
+ Optional[MixedValuesList]</p>
1422
+
1423
+ <p>Description: </p>
1424
+
1425
+ <p>A statement of changes in ownership and custody of the CHO since its creation. Signifi
1426
+ cant for authenticity, integrity and interpretation. <code>&lt;dcterms:provenance&gt;Donated to Th
1427
+ e National Library in 1965&lt;/dcterms:provenance&gt;</code></p>
1428
+ </div>
1429
+
1430
+ #### EDM_ProvidedCHO.dcterms_references
1431
+ ```python
1432
+ dcterms_references: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1433
+ ```
1434
+
1435
+
1436
+
1437
+ <div class="docstring"><p>Mandate:
1438
+ optional</p>
1439
+
1440
+ <p>Cardinality:
1441
+ zero_to_many</p>
1442
+
1443
+ <p>Value-Type:
1444
+ Optional[MixedValuesList]</p>
1445
+
1446
+ <p>Description: </p>
1447
+
1448
+ <p>Other resources referenced, cited or otherwise pointed to by the CHO. <code>&lt;dcterms:referen
1449
+ ces&gt;Honderd jaar Noorse schilderkunst &lt;/dcterms:references&gt;</code></p>
1450
+ </div>
1451
+
1452
+ #### EDM_ProvidedCHO.dcterms_replaces
1453
+ ```python
1454
+ dcterms_replaces: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1455
+ ```
1456
+
1457
+
1458
+
1459
+ <div class="docstring"><p>Mandate:
1460
+ optional</p>
1461
+
1462
+ <p>Cardinality:
1463
+ zero_to_many</p>
1464
+
1465
+ <p>Value-Type:
1466
+ Optional[MixedValuesList]</p>
1467
+
1468
+ <p>Description: </p>
1469
+
1470
+ <p>A related resource that is supplanted, displaced, or superseded by the CHO. <code>&lt;dcterms:r
1471
+ eplaces&gt;http://dublincore.org/about/2006/01/01/bylaws/&lt;/dcterms:replaces&gt;</code> where the re
1472
+ source described is a newer version (<a href="http://dublincore.org/about/2009/01/05/bylaws/">http://dublincore.org/about/2009/01/05/bylaws/</a>) o
1473
+ r link to resource <code>&lt;dcterms:replaces rdf:resource=“http://dublincore.org/about/2006/01
1474
+ /01/bylaws/”/&gt;</code></p>
1475
+ </div>
1476
+
1477
+ #### EDM_ProvidedCHO.dcterms_requires
1478
+ ```python
1479
+ dcterms_requires: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1480
+ ```
1481
+
1482
+
1483
+
1484
+ <div class="docstring"><p>Mandate:
1485
+ optional</p>
1486
+
1487
+ <p>Cardinality:
1488
+ zero_to_many</p>
1489
+
1490
+ <p>Value-Type:
1491
+ Optional[MixedValuesList]</p>
1492
+
1493
+ <p>Description: </p>
1494
+
1495
+ <p>Another resource that is required by the described resource to support its function, d
1496
+ elivery or coherence. <code>&lt;dcterms:requires&gt;http://ads.ahds.ac.uk/project/userinfo/css/old
1497
+ browsers.css &lt;/dcterms:requires&gt;</code> where the resource described is an HTML file at http:
1498
+ //ads.ahds.ac.uk/project/userinfo/digitalTextArchiving.html</p>
1499
+ </div>
1500
+
1501
+ #### EDM_ProvidedCHO.dcterms_spatial
1502
+ ```python
1503
+ dcterms_spatial: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1504
+ ```
1505
+
1506
+
1507
+
1508
+ <div class="docstring"><p>Mandate:
1509
+ mandatory</p>
1510
+
1511
+ <p>Cardinality:
1512
+ zero_to_many</p>
1513
+
1514
+ <p>Value-Type:
1515
+ Optional[MixedValuesList]</p>
1516
+
1517
+ <p>Description: </p>
1518
+
1519
+ <p>Spatial characteristics of the CHO. i.e. what the CHO represents or depicts in terms o
1520
+ f space (e.g. a location, coordinate or place). Either dcterms:spatial or dc:type or d
1521
+ c:subject or dcterms:temporal must be provided; if more than one of these properties i
1522
+ s available, please provide them all. dcterms:spatial is used to record the place depi
1523
+ cted in the CHO and other locations associated with it as opposed to edm:currentLocati
1524
+ on which is used only to record the place where the CHO is currently held (e.g. a muse
1525
+ um or gallery). Be careful to choose the most appropriate one! <code>&lt;dcterms:spatial&gt;Portug
1526
+ al&lt;/dcterms:spatial&gt;</code> or create a reference to an instance of the Place class <code>&lt;dcterms:
1527
+ spatial rdf:resource=“https://sws.geonames.org/2264397/ ”/&gt;</code>For recommendations on meda
1528
+ ta quality see Tier A-C requirements .</p>
1529
+ </div>
1530
+
1531
+ #### EDM_ProvidedCHO.dcterms_tableOfContents
1532
+ ```python
1533
+ dcterms_tableOfContents: Optional[List[edmlib.edm.value_types.Lit]]
1534
+ ```
1535
+
1536
+
1537
+
1538
+ <div class="docstring"><p>Mandate:
1539
+ optional</p>
1540
+
1541
+ <p>Cardinality:
1542
+ zero_to_many</p>
1543
+
1544
+ <p>Value-Type:
1545
+ Optional[List[Lit]]</p>
1546
+
1547
+ <p>Description: </p>
1548
+
1549
+ <p>A list of sub‐units of the CHO.<code>&lt;dcterms:tableOfContents&gt;Chapter 1. Introduction, Chapt
1550
+ er 2. History &lt;/dcterms:tableOfContents&gt;</code></p>
1551
+ </div>
1552
+
1553
+ #### EDM_ProvidedCHO.dcterms_temporal
1554
+ ```python
1555
+ dcterms_temporal: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1556
+ ```
1557
+
1558
+
1559
+
1560
+ <div class="docstring"><p>Mandate:
1561
+ mandatory</p>
1562
+
1563
+ <p>Cardinality:
1564
+ zero_to_many</p>
1565
+
1566
+ <p>Value-Type:
1567
+ Optional[MixedValuesList]</p>
1568
+
1569
+ <p>Description: </p>
1570
+
1571
+ <p>Temporal characteristics of the CHO. i.e. what the CHO is about or depicts in terms of
1572
+ time (e.g. a period, date or date range.) Either dcterms:temporal or dc:type or dc:su
1573
+ bject or dcterms:spatial must be provided; if more than one of these properties is ava
1574
+ ilable, please provide them all. Europeana recommends date conforming to ISO 8601 star
1575
+ ting with the year and with hyphens (YYYY-MM-DD). NB: other EDM elements are relevant
1576
+ for expressing dates of different events in the life of the CHO: dc:date, dcterms:crea
1577
+ ted and dcterms:issued. Be careful and choose the most appropriate one! <code>&lt;dcterms:tempo
1578
+ ral&gt;Roman Empire&lt;/dcterms:temporal&gt;</code> or create a reference to an instance of the TimeSp
1579
+ an class <code>&lt;dcterms:temporal rdf:resource=“http://semium.org/time/roman_empire”/&gt;</code>For rec
1580
+ ommendations on medata quality see Tier A-C requirements .</p>
1581
+ </div>
1582
+
1583
+ #### EDM_ProvidedCHO.edm_currentLocation
1584
+ ```python
1585
+ edm_currentLocation: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref, NoneType]
1586
+ ```
1587
+
1588
+
1589
+
1590
+ <div class="docstring"><p>Mandate:
1591
+ optional</p>
1592
+
1593
+ <p>Cardinality:
1594
+ zero_to_one</p>
1595
+
1596
+ <p>Value-Type:
1597
+ Optional[Union[Lit, Ref]]</p>
1598
+
1599
+ <p>Description: </p>
1600
+
1601
+ <p>The geographic location whose boundaries presently include the CHO. This location must
1602
+ have a position within an established positioning system: a location with coordinates
1603
+ or address or inside another location that has a position, such as a room within a (m
1604
+ useum) building. Ideally this position should be provided with the value of the proper
1605
+ ty, either by using a reference (to a Place entity) that has coordinates or an address
1606
+ attribute, or as a simple Lit. edm:currentLocation is used only to record the pla
1607
+ ce where the CHO is currently held (e.g. a museum or gallery)dcterms:spatial is used t
1608
+ o record the place depicted in the CHO and other locations associated with itBe carefu
1609
+ l to choose the most appropriate one!<code>&lt;edm:currentLocation rdf:resource=“https://sws.ge
1610
+ onames.org/2950159/”&gt;</code> (Identifier for Berlin)For recommendations on medata quality see
1611
+ Tier A-C requirements .</p>
1612
+ </div>
1613
+
1614
+ #### EDM_ProvidedCHO.edm_hasMet
1615
+ ```python
1616
+ edm_hasMet: Optional[List[edmlib.edm.value_types.Ref]]
1617
+ ```
1618
+
1619
+
1620
+
1621
+ <div class="docstring"><p>Mandate:
1622
+ optional</p>
1623
+
1624
+ <p>Cardinality:
1625
+ zero_to_many</p>
1626
+
1627
+ <p>Value-Type:
1628
+ Optional[List[Ref]]</p>
1629
+
1630
+ <p>Description: </p>
1631
+
1632
+ <p>The identifier of an agent, a place, a time period or any other identifiable entity th
1633
+ at the CHO may have “met” in its life. <code>&lt;edm:hasMet rdf:resource=“http://viaf.org/viaf/
1634
+ 96994048/”&gt; (Identifier for William Shakespeare) &lt;edm:hasMet rdf:resource=“https://sws
1635
+ .geonames.org/6620265/ ”&gt;</code> (location identifier for Shakespeare’s Globe theatre.)For re
1636
+ commendations on medata quality see Tier A-C requirements .</p>
1637
+ </div>
1638
+
1639
+ #### EDM_ProvidedCHO.edm_hasType
1640
+ ```python
1641
+ edm_hasType: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1642
+ ```
1643
+
1644
+
1645
+
1646
+ <div class="docstring"><p>Mandate:
1647
+ optional</p>
1648
+
1649
+ <p>Cardinality:
1650
+ zero_to_many</p>
1651
+
1652
+ <p>Value-Type:
1653
+ Optional[MixedValuesList]</p>
1654
+
1655
+ <p>Description: </p>
1656
+
1657
+ <p>The identifier of a concept, or a word or phrase from a controlled vocabulary (thesaur
1658
+ us etc) giving the type of the CHO. E.g. Painting from the AAT thesaurus. This propert
1659
+ y can be seen as a super-­property of e.g. dc:format or dc:type to support “What” ques
1660
+ tions. <code>&lt;edm:hasType&gt;Painting&lt;/edm:hasType&gt;</code></p>
1661
+ </div>
1662
+
1663
+ #### EDM_ProvidedCHO.edm_incorporates
1664
+ ```python
1665
+ edm_incorporates: Optional[List[edmlib.edm.value_types.Ref]]
1666
+ ```
1667
+
1668
+
1669
+
1670
+ <div class="docstring"><p>Mandate:
1671
+ optional</p>
1672
+
1673
+ <p>Cardinality:
1674
+ zero_to_many</p>
1675
+
1676
+ <p>Value-Type:
1677
+ Optional[List[Ref]]</p>
1678
+
1679
+ <p>Description: </p>
1680
+
1681
+ <p>The identifier of another resource that is incorporated in the described CHO. E.g. the
1682
+ movie “A Clockwork Orange” incorporates Rossini’s La Gazza Ladra” in its soundtrack.
1683
+ <code>&lt;edm:incorporates rdf:resource=“http://www.identifier/IncorporatedResource/“&gt;</code></p>
1684
+ </div>
1685
+
1686
+ #### EDM_ProvidedCHO.edm_isDerivativeOf
1687
+ ```python
1688
+ edm_isDerivativeOf: Optional[List[edmlib.edm.value_types.Ref]]
1689
+ ```
1690
+
1691
+
1692
+
1693
+ <div class="docstring"><p>Mandate:
1694
+ optional</p>
1695
+
1696
+ <p>Cardinality:
1697
+ zero_to_many</p>
1698
+
1699
+ <p>Value-Type:
1700
+ Optional[List[Ref]]</p>
1701
+
1702
+ <p>Description: </p>
1703
+
1704
+ <p>The identifier of another resource from which the described CHO has been derived. E.g.
1705
+ the identifier of Moby Dick when the Italian translation is the described CHO. <code>&lt;edm:i
1706
+ sDerivativeOf rdf:resource=“http://www.identifier/SourceResource/”&gt;</code></p>
1707
+ </div>
1708
+
1709
+ #### EDM_ProvidedCHO.edm_isNextInSequence
1710
+ ```python
1711
+ edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]
1712
+ ```
1713
+
1714
+
1715
+
1716
+ <div class="docstring"><p>Mandate:
1717
+ recommended</p>
1718
+
1719
+ <p>Cardinality:
1720
+ zero_to_many</p>
1721
+
1722
+ <p>Value-Type:
1723
+ Optional[List[Ref]]</p>
1724
+
1725
+ <p>Description: </p>
1726
+
1727
+ <p>The identifier of the preceding object where both objects are part of the same overall
1728
+ resource. Use this for objects that are part of a hierarchy or sequence to ensure cor
1729
+ rect display in the portal. <code>&lt;edm:isNextInSequence rdf:resource=“http://www.identifier/
1730
+ PrecedingResource”/&gt;</code></p>
1731
+ </div>
1732
+
1733
+ #### EDM_ProvidedCHO.edm_isRelatedTo
1734
+ ```python
1735
+ edm_isRelatedTo: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
1736
+ ```
1737
+
1738
+
1739
+
1740
+ <div class="docstring"><p>Mandate:
1741
+ optional</p>
1742
+
1743
+ <p>Cardinality:
1744
+ zero_to_many</p>
1745
+
1746
+ <p>Value-Type:
1747
+ Optional[MixedValuesList]</p>
1748
+
1749
+ <p>Description: </p>
1750
+
1751
+ <p>The identifier or name of a concept or other resource to which the described CHO is re
1752
+ lated. E.g. Moby Dick is related to XIX Century literature. Cf dc:relation. <code>&lt;edm:isRel
1753
+ atedTo&gt;Literature&lt;/edm:isRelatedTo&gt;</code> Or link to resource <code>&lt;edm:isRelatedTo rdf:resource=
1754
+ “http://www.eionet.europa.eu/gemet/concept?cp=4850/”&gt;</code></p>
1755
+ </div>
1756
+
1757
+ #### EDM_ProvidedCHO.edm_isRepresentationOf
1758
+ ```python
1759
+ edm_isRepresentationOf: Optional[edmlib.edm.value_types.Ref]
1760
+ ```
1761
+
1762
+
1763
+
1764
+ <div class="docstring"><p>Mandate:
1765
+ optional</p>
1766
+
1767
+ <p>Cardinality:
1768
+ zero_to_one</p>
1769
+
1770
+ <p>Value-Type:
1771
+ Optional[Ref]</p>
1772
+
1773
+ <p>Description: </p>
1774
+
1775
+ <p>The identifier of another object of which the described CHO is a representation. E.g.
1776
+ the identifier of the statue when the CHO being described is a painting of that statue
1777
+ . <code>&lt;edm:isRepresentativeOf rdf:resource=“http://www.identifier/RepresentedResource/”&gt;</code></p>
1778
+ </div>
1779
+
1780
+ #### EDM_ProvidedCHO.edm_isSimilarTo
1781
+ ```python
1782
+ edm_isSimilarTo: Optional[List[edmlib.edm.value_types.Ref]]
1783
+ ```
1784
+
1785
+
1786
+
1787
+ <div class="docstring"><p>Mandate:
1788
+ optional</p>
1789
+
1790
+ <p>Cardinality:
1791
+ zero_to_many</p>
1792
+
1793
+ <p>Value-Type:
1794
+ Optional[List[Ref]]</p>
1795
+
1796
+ <p>Description: </p>
1797
+
1798
+ <p>The identifier of another resource to which the described CHO is similar. <code>&lt;edm:isSimil
1799
+ arTo rdf:resource=“http://www.identifier/SimilarResource”/&gt;</code></p>
1800
+ </div>
1801
+
1802
+ #### EDM_ProvidedCHO.edm_isSuccessorOf
1803
+ ```python
1804
+ edm_isSuccessorOf: Optional[List[edmlib.edm.value_types.Ref]]
1805
+ ```
1806
+
1807
+
1808
+
1809
+ <div class="docstring"><p>Mandate:
1810
+ optional</p>
1811
+
1812
+ <p>Cardinality:
1813
+ zero_to_many</p>
1814
+
1815
+ <p>Value-Type:
1816
+ Optional[List[Ref]]</p>
1817
+
1818
+ <p>Description: </p>
1819
+
1820
+ <p>The identifier of a resource to which the described CHO is a successor. E.g. “The Two
1821
+ Towers” is a successor of “Fellowship of the Ring”. <code>&lt;edm:isSuccessorOf rdf:resource=“
1822
+ http://dbpedia.org/resource/The_Fellowship_of_the_Ring/”&gt;</code></p>
1823
+ </div>
1824
+
1825
+ #### EDM_ProvidedCHO.edm_realizes
1826
+ ```python
1827
+ edm_realizes: Optional[List[edmlib.edm.value_types.Ref]]
1828
+ ```
1829
+
1830
+
1831
+
1832
+ <div class="docstring"><p>Mandate:
1833
+ optional</p>
1834
+
1835
+ <p>Cardinality:
1836
+ zero_to_many</p>
1837
+
1838
+ <p>Value-Type:
1839
+ Optional[List[Ref]]</p>
1840
+
1841
+ <p>Description: </p>
1842
+
1843
+ <p>If the CHO described is of type edm:PhysicalThing it may realize an information object
1844
+ . E.g. a copy of the Gutenberg publication realizes the Bible.</p>
1845
+ </div>
1846
+
1847
+ #### EDM_ProvidedCHO.owl_sameAs
1848
+ ```python
1849
+ owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]
1850
+ ```
1851
+
1852
+
1853
+
1854
+ <div class="docstring"><p>Mandate:
1855
+ optional</p>
1856
+
1857
+ <p>Cardinality:
1858
+ zero_to_many</p>
1859
+
1860
+ <p>Value-Type:
1861
+ Optional[List[Ref]]</p>
1862
+
1863
+ <p>Description: </p>
1864
+
1865
+ <p>Use to point to your own (linked data) representation of the object, if you have already minted a URI identifier for it. It is also possible to provide URIs minted by third-parties for the object. <code>&lt;owl:sameAs rdf:resource=“http://www.identifier/SameResourceElsewhere/”&gt;</code></p>
1866
+ </div>
1867
+
1868
+ #### EDM_ProvidedCHO.validate_dependent_edm
1869
+ ```python
1870
+ @model_validator(mode='after') def validate_dependent_edm(self) -> Self
1871
+ ```
1872
+
1873
+
1874
+
1875
+
1876
+
1877
+ #### EDM_ProvidedCHO.model_config
1878
+ ```python
1879
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
1880
+ ```
1881
+
1882
+
1883
+
1884
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
1885
+ </div>
1886
+
1887
+
1888
+ ---
1889
+
1890
+ ---
1891
+ ### ORE_Aggregation
1892
+ ```python
1893
+ class ORE_Aggregation(edmlib.edm.base.EDM_BaseClass):
1894
+ ```
1895
+
1896
+
1897
+
1898
+ <div class="docstring"><p>ORE Aggregation</p>
1899
+
1900
+ <p>mandatory-properties: EDM_aggregatedCHO, EDM_dataProvider, EDM_isShownAt, EDM_isShownBy, EDM_provider, EDM_rights</p>
1901
+
1902
+ <p>optional-properties: EDM_hasView, DC_rights, EDM_ugc</p>
1903
+
1904
+ <p>recommended-properties: EDM_object, EDM_intermediateProvider</p>
1905
+ </div>
1906
+
1907
+ #### ORE_Aggregation.edm_aggregatedCHO
1908
+ ```python
1909
+ edm_aggregatedCHO: edmlib.edm.value_types.Ref
1910
+ ```
1911
+
1912
+
1913
+
1914
+ <div class="docstring"><p>Mandate:
1915
+ mandatory</p>
1916
+
1917
+ <p>Cardinality:
1918
+ exactly_one</p>
1919
+
1920
+ <p>Value-Type:
1921
+ Ref</p>
1922
+
1923
+ <p>Description: </p>
1924
+
1925
+ <p>The identifier of the source object e.g. the Mona Lisa itself. This could be a full li
1926
+ nked open data URI or an internal identifier. <code>&lt;edm:aggregatedCHO rdf:resource=“#UEDIN:
1927
+ 214”/&gt;</code></p>
1928
+ </div>
1929
+
1930
+ #### ORE_Aggregation.edm_dataProvider
1931
+ ```python
1932
+ edm_dataProvider: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]
1933
+ ```
1934
+
1935
+
1936
+
1937
+ <div class="docstring"><p>Mandate:
1938
+ mandatory</p>
1939
+
1940
+ <p>Cardinality:
1941
+ exactly_one</p>
1942
+
1943
+ <p>Value-Type:
1944
+ Union[Lit, Ref]</p>
1945
+
1946
+ <p>Description: </p>
1947
+
1948
+ <p>The name or identifier of the data provider of the object (i.e. the organisation provi
1949
+ ding data to an aggregator). Identifiers will not be available until Europeana has imp
1950
+ lemented its Organization profile. In the case of the data provider Zuidwestbrabants
1951
+ Museum, which delivers data through Erfgoedplus.be to LoCloud, the properties would lo
1952
+ ok like this: <code>&lt;edm:dataProvider&gt;Zuidwestbrabants Museum&lt;/edm:dataProvider&gt; &lt;edm:inter
1953
+ mediateProvider&gt;Erfgoedplus.be&lt;/edm:intermediateProvider&gt; &lt;edm:provider&gt;LoCloud&lt;/edm:p
1954
+ rovider&gt;</code></p>
1955
+ </div>
1956
+
1957
+ #### ORE_Aggregation.edm_provider
1958
+ ```python
1959
+ edm_provider: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]
1960
+ ```
1961
+
1962
+
1963
+
1964
+ <div class="docstring"><p>Mandate:
1965
+ mandatory</p>
1966
+
1967
+ <p>Cardinality:
1968
+ exactly_one</p>
1969
+
1970
+ <p>Value-Type:
1971
+ Union[Lit, Ref]</p>
1972
+
1973
+ <p>Description: </p>
1974
+
1975
+ <p>The name or identifier of the provider of the object (i.e. the organisation providing
1976
+ data directly to Europeana). Identifiers will not be available until Europeana has imp
1977
+ lemented its Organization profile. In the case of the provider LoCloud, which collect
1978
+ s data from the data provider Zuidwestbrabants Museum through Erfgoedplus.be, the prop
1979
+ erties would look like this: <code>&lt;edm:dataProvider&gt;Zuidwestbrabants Museum&lt;/edm:dataProvid
1980
+ er&gt; &lt;edm:intermediateProvider&gt;Erfgoedplus.be&lt;/edm:intermediateProvider&gt;&lt;edm:provider&gt;L
1981
+ oCloud&lt;/edm:provider&gt;</code></p>
1982
+ </div>
1983
+
1984
+ #### ORE_Aggregation.edm_rights
1985
+ ```python
1986
+ edm_rights: edmlib.edm.value_types.Ref
1987
+ ```
1988
+
1989
+
1990
+
1991
+ <div class="docstring"><p>Mandate:
1992
+ mandatory</p>
1993
+
1994
+ <p>Cardinality:
1995
+ exactly_one</p>
1996
+
1997
+ <p>Value-Type:
1998
+ Ref</p>
1999
+
2000
+ <p>Description: </p>
2001
+
2002
+ <p>This is a mandatory property and the value given here should be the rights statement t
2003
+ hat applies to the digital representation as given (for example) in edm:object or edm:
2004
+ isShownAt/By, when these resources are not provided with their own edm:rights (see edm
2005
+ :rights documentation). The value for the rights statement in this element must be a U
2006
+ RI from the list of available values. Note: rights statements must be exactly as speci
2007
+ fied there, which means they must start with http and not https. (For assesing rights
2008
+ imformation check <a href="https://pro.europeana.eu/page/available-rights-statements">https://pro.europeana.eu/page/available-rights-statements</a> ) The righ
2009
+ ts statement given in this property will also by default apply to the previews used in
2010
+ the portal and will support portal search and display functionality. Where there are
2011
+ several web resources attached to one edm:ProvidedCHO the rights statement given here
2012
+ will be regarded as the “reference” value for all the web resources. Therefore a suit
2013
+ able value should be chosen with care if the rights statements vary between different
2014
+ resources. In fact in such cases Europeana encourages the provision of separate rights
2015
+ statements for each individual web resource. Please note that the object page on http
2016
+ ://europeana.eu displays the rights of the digital representation selected in the vi
2017
+ ewer, which is found in the edm:rights of the WebResource that corresponds to the sele
2018
+ cted edm:isShownBy or edm:hasView. If there is no such edm:isShownBy or edm:hasView re
2019
+ presentation available, or if there is one but there is no specific edm:rights attache
2020
+ d to it, then by default the page displays the edm:rights attached to the ore:Aggregat
2021
+ ion.For example, a low­‐resolution of a JPEG file could be CC‐BY, while the high resol
2022
+ ution version or a video showing the object would be CC-­BY-­NC. In such cases the rig
2023
+ hts statements given for the individual web resources would ‘override’ the one specifi
2024
+ ed at the ore:Aggregation level. Any other associated web resources would still be gov
2025
+ erned by the edm:rights of the ore:Aggregation. <code>&lt;edm:rights rdf:resource=“http://cre
2026
+ ativecommons.org/publicdomain/mark/1.0/”/&gt; &lt;edm:rights rdf:resource=“http://rightsstat
2027
+ ements.org/vocab/InC/1.0/”/&gt;</code> Or create a reference to an instance of the cc:License c
2028
+ lass where additional details of the rights can be provided (such as an expiry date fo
2029
+ r the restrictions): <a href="http://rightsstatements.org/vocab/NoC-­NC/1.0/">http://rightsstatements.org/vocab/NoC-­NC/1.0/</a> or <code>&lt;edm:rights rdf
2030
+ :resource="#statement_3000095353971"/&gt;</code></p>
2031
+ </div>
2032
+
2033
+ #### ORE_Aggregation.edm_hasView
2034
+ ```python
2035
+ edm_hasView: Optional[List[edmlib.edm.value_types.Ref]]
2036
+ ```
2037
+
2038
+
2039
+
2040
+ <div class="docstring"><p>Mandate:
2041
+ optional</p>
2042
+
2043
+ <p>Cardinality:
2044
+ zero_to_many</p>
2045
+
2046
+ <p>Value-Type:
2047
+ Optional[List[Ref]]</p>
2048
+
2049
+ <p>Description: </p>
2050
+
2051
+ <p>The URL of a web resource which is a digital representation of the CHO. This may be th
2052
+ e source object itself in the case of a born digital cultural heritage object. edm:has
2053
+ View should only be used where there are several views of the CHO and one (or both) of
2054
+ the mandatory edm:isShownAt or edm:isShownBy properties have already been used. It is
2055
+ for cases where one CHO has several views of the same object. (e.g. a shoe and a deta
2056
+ il of the label of the shoe) <code>&lt;edm:hasView rdf:resource="http://www.mimo‐db.eu/media/U
2057
+ EDIN/VIDEO/0032195v.mpg"/&gt; &lt;edm:hasView rdf:resource="http://www.mimo-­db.eu/media/UED
2058
+ IN/AUDIO/0032195s.mp3"/&gt;</code></p>
2059
+ </div>
2060
+
2061
+ #### ORE_Aggregation.edm_isShownAt
2062
+ ```python
2063
+ edm_isShownAt: Optional[edmlib.edm.value_types.Ref]
2064
+ ```
2065
+
2066
+
2067
+
2068
+ <div class="docstring"><p>Mandate:
2069
+ mandatory</p>
2070
+
2071
+ <p>Cardinality:
2072
+ zero_to_one</p>
2073
+
2074
+ <p>Value-Type:
2075
+ Optional[Ref]</p>
2076
+
2077
+ <p>Description: </p>
2078
+
2079
+ <p>The URL of a web view of the object in full information context. An edm:isShownAt must
2080
+ be provided. If there is no edm:isShownAt for an object, there must be a edm:isShownB
2081
+ y. If both are available, provide both. The use of edm:isShownBy is preferred. Providi
2082
+ ng an edm:isShownAt is strongly recommended in all cases.<code>&lt;edm:isShownAt rdf:resource="
2083
+ http://www.mimo-­‐db.eu/UEDIN/214"/&gt;</code></p>
2084
+ </div>
2085
+
2086
+ #### ORE_Aggregation.edm_isShownBy
2087
+ ```python
2088
+ edm_isShownBy: Optional[edmlib.edm.value_types.Ref]
2089
+ ```
2090
+
2091
+
2092
+
2093
+ <div class="docstring"><p>Mandate:
2094
+ mandatory</p>
2095
+
2096
+ <p>Cardinality:
2097
+ zero_to_one</p>
2098
+
2099
+ <p>Value-Type:
2100
+ Optional[Ref]</p>
2101
+
2102
+ <p>Description: </p>
2103
+
2104
+ <p>The URL of a web view of the object. An edm:isShownBy must be provided. If there is no
2105
+ edm:isShownBy for an object, there must be a edm:isShownAt. The use of edm:isShownBy
2106
+ is preferred. Europeana generates previews for any direct link to an image file. See E
2107
+ uropeana Media Policy or information regarding the specifications of previews. <code>&lt;edm:is
2108
+ ShownBy rdf:resource="http://www.mimo‐db.eu/media/UEDIN/IMAGE/0032195c.jpg"/&gt;</code></p>
2109
+ </div>
2110
+
2111
+ #### ORE_Aggregation.edm_object
2112
+ ```python
2113
+ edm_object: Optional[edmlib.edm.value_types.Ref]
2114
+ ```
2115
+
2116
+
2117
+
2118
+ <div class="docstring"><p>Mandate:
2119
+ recommended</p>
2120
+
2121
+ <p>Cardinality:
2122
+ zero_to_one</p>
2123
+
2124
+ <p>Value-Type:
2125
+ Optional[Ref]</p>
2126
+
2127
+ <p>Description: </p>
2128
+
2129
+ <p>The URL of a representation of the CHO which will be used for generating previews for
2130
+ use in the Europeana portal. This may be the same URL as edm:isShownBy.See Europeana M
2131
+ edia Policy for information regarding the specifications of previews. This must be an
2132
+ image, even if it is for a sound object. <code>&lt;edm:object rdf:resource="http://www.mimo-‐db
2133
+ .eu/media/UEDIN/IMAGE/0032195c.jpg"/&gt;</code>In accordance with Europeana's 2023 data publicat
2134
+ ion approach, objects with edm:type=IMAGE that have no edm:isShownBy nor edm:object wi
2135
+ ll not be published in Europeana. (See also ContentTier 1: Image type )</p>
2136
+ </div>
2137
+
2138
+ #### ORE_Aggregation.dc_rights
2139
+ ```python
2140
+ dc_rights: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2141
+ ```
2142
+
2143
+
2144
+
2145
+ <div class="docstring"><p>Mandate:
2146
+ optional</p>
2147
+
2148
+ <p>Cardinality:
2149
+ zero_to_many</p>
2150
+
2151
+ <p>Value-Type:
2152
+ Optional[MixedValuesList]</p>
2153
+
2154
+ <p>Description: </p>
2155
+
2156
+ <p>Ideally this should be applied to the edm:WebResource or the edm:ProvidedCHO. It is in
2157
+ cluded here for the conversion of data from ESE where it is not known which object the
2158
+ rights apply to.</p>
2159
+ </div>
2160
+
2161
+ #### ORE_Aggregation.edm_ugc
2162
+ ```python
2163
+ edm_ugc: Optional[edmlib.edm.value_types.Lit]
2164
+ ```
2165
+
2166
+
2167
+
2168
+ <div class="docstring"><p>Mandate:
2169
+ optional</p>
2170
+
2171
+ <p>Cardinality:
2172
+ zero_to_one</p>
2173
+
2174
+ <p>Value-Type:
2175
+ Optional[Lit]</p>
2176
+
2177
+ <p>Description: </p>
2178
+
2179
+ <p>This is a mandatory property for objects that are user generated or user created that
2180
+ have been collected by crowdsourcing or project activity. The property is used to iden
2181
+ tify such content and can only take the value “true” (lower case). <code>&lt;edm:ugc&gt;true&lt;/edm:
2182
+ ugc&gt;</code></p>
2183
+ </div>
2184
+
2185
+ #### ORE_Aggregation.edm_intermediateProvider
2186
+ ```python
2187
+ edm_intermediateProvider: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2188
+ ```
2189
+
2190
+
2191
+
2192
+ <div class="docstring"><p>Mandate:
2193
+ recommended</p>
2194
+
2195
+ <p>Cardinality:
2196
+ zero_to_many</p>
2197
+
2198
+ <p>Value-Type:
2199
+ Optional[MixedValuesList]</p>
2200
+
2201
+ <p>Description: </p>
2202
+
2203
+ <p>The name or identifier of the intermediate organization that selects, collates, or cur
2204
+ ates data from a Data Provider that is then aggregated by a Provider from which Europe
2205
+ ana harvests. The Intermediate Provider must be distinct from both the Data Provider a
2206
+ nd the Provider in the data supply chain. Identifiers will not be available until Euro
2207
+ peana has implemented its Organization profile. In the case of the Erfgoedplus.be, whi
2208
+ ch collects data from Zuidwestbrabants Museum and provides it to LoCloud, the properti
2209
+ es would look like this: <code>&lt;edm:dataProvider&gt;Zuidwestbrabants Museum&lt;/edm:dataProvider&gt;
2210
+ &lt;edm:provider&gt;LoCloud&lt;/edm:provider&gt; &lt;edm:intermediateProvider&gt;Erfgoedplus.be&lt;/edm:int
2211
+ ermediateProvider&gt;</code></p>
2212
+ </div>
2213
+
2214
+ #### ORE_Aggregation.validate_conditional_attributes
2215
+ ```python
2216
+ @model_validator(mode='after') def validate_conditional_attributes(self) -> Self
2217
+ ```
2218
+
2219
+
2220
+
2221
+
2222
+
2223
+ #### ORE_Aggregation.model_config
2224
+ ```python
2225
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
2226
+ ```
2227
+
2228
+
2229
+
2230
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
2231
+ </div>
2232
+
2233
+
2234
+ ---
2235
+
2236
+ ---
2237
+ ### EDM_WebResource
2238
+ ```python
2239
+ class EDM_WebResource(edmlib.edm.base.EDM_BaseClass):
2240
+ ```
2241
+
2242
+
2243
+
2244
+ <div class="docstring"><p>optional-properties: DC_creator, DC_description, DC_format, DC_rights, DC_source, DC_type, DCTERMS_conformsTo, DCTERMS_created, DCTERMS_extent, DCTERMS_hasPart, DCTERMS_isFormatOf, DCTERMS_isPartOf, DCTERMS_isReferencedBy, DCTERMS_issued, EDM_isNextInSequence, OWL_sameAs, SVCS_has_service, DCTERMS_IsReferencedBy</p>
2245
+
2246
+ <p>recommended-properties: EDM_rights</p>
2247
+ </div>
2248
+
2249
+ #### EDM_WebResource.dc_creator
2250
+ ```python
2251
+ dc_creator: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2252
+ ```
2253
+
2254
+
2255
+
2256
+ <div class="docstring"><p>Mandate:
2257
+ optional</p>
2258
+
2259
+ <p>Cardinality:
2260
+ zero_to_many</p>
2261
+
2262
+ <p>Value-Type:
2263
+ Optional[MixedValuesList]</p>
2264
+
2265
+ <p>Description: </p>
2266
+
2267
+ <p>For the creator of the web resource. If possible supply the identifier of the creator
2268
+ from an authority source. Repeat for multiple creators. <code>&lt;dc:creator xml:lang=“es”&gt;Bibl
2269
+ icoteca Nacional de España&lt;/dc:creator&gt;</code> or create a reference to an instance of the Ag
2270
+ ent class <code>&lt;dc:creator rdf:resource=“http://viaf.org/viaf/147143794/”/&gt;</code></p>
2271
+ </div>
2272
+
2273
+ #### EDM_WebResource.dc_description
2274
+ ```python
2275
+ dc_description: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2276
+ ```
2277
+
2278
+
2279
+
2280
+ <div class="docstring"><p>Mandate:
2281
+ optional</p>
2282
+
2283
+ <p>Cardinality:
2284
+ zero_to_many</p>
2285
+
2286
+ <p>Value-Type:
2287
+ Optional[MixedValuesList]</p>
2288
+
2289
+ <p>Description: </p>
2290
+
2291
+ <p>Use for an account or description of this digital representation <code>&lt;dc:description&gt;Perfo
2292
+ rmance with Buccin trombone&lt;/dc:description&gt;</code></p>
2293
+ </div>
2294
+
2295
+ #### EDM_WebResource.dc_format
2296
+ ```python
2297
+ dc_format: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2298
+ ```
2299
+
2300
+
2301
+
2302
+ <div class="docstring"><p>Mandate:
2303
+ optional</p>
2304
+
2305
+ <p>Cardinality:
2306
+ zero_to_many</p>
2307
+
2308
+ <p>Value-Type:
2309
+ Optional[MixedValuesList]</p>
2310
+
2311
+ <p>Description: </p>
2312
+
2313
+ <p>Use for the format of this digital representation. (Use the value “3D‐PDF” if appropri
2314
+ ate.)<code>&lt;dc:format&gt;image/jpeg&lt;/dc:format&gt;</code></p>
2315
+ </div>
2316
+
2317
+ #### EDM_WebResource.dc_rights
2318
+ ```python
2319
+ dc_rights: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2320
+ ```
2321
+
2322
+
2323
+
2324
+ <div class="docstring"><p>Mandate:
2325
+ optional</p>
2326
+
2327
+ <p>Cardinality:
2328
+ zero_to_many</p>
2329
+
2330
+ <p>Value-Type:
2331
+ Optional[MixedValuesList]</p>
2332
+
2333
+ <p>Description: </p>
2334
+
2335
+ <p>Use for the name of the rights holder of this digital representation if possible or fo
2336
+ r more general rights information. Note the difference between this property and the m
2337
+ andatory, controlled edm:rights property below. <code>&lt;dc:rights&gt; Copyright © British Librar
2338
+ y Board&lt;/dc:rights&gt;</code></p>
2339
+ </div>
2340
+
2341
+ #### EDM_WebResource.dc_source
2342
+ ```python
2343
+ dc_source: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2344
+ ```
2345
+
2346
+
2347
+
2348
+ <div class="docstring"><p>Mandate:
2349
+ optional</p>
2350
+
2351
+ <p>Cardinality:
2352
+ zero_to_many</p>
2353
+
2354
+ <p>Value-Type:
2355
+ Optional[MixedValuesList]</p>
2356
+
2357
+ <p>Description: </p>
2358
+
2359
+ <p>A related resource from which the Web resource is derived in whole or in part. <code>&lt;dc:sou
2360
+ rce&gt;The name of the source video tape &lt;dc:source&gt;</code></p>
2361
+ </div>
2362
+
2363
+ #### EDM_WebResource.dc_type
2364
+ ```python
2365
+ dc_type: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2366
+ ```
2367
+
2368
+
2369
+
2370
+ <div class="docstring"><p>Mandate:
2371
+ optional</p>
2372
+
2373
+ <p>Cardinality:
2374
+ zero_to_many</p>
2375
+
2376
+ <p>Value-Type:
2377
+ Optional[MixedValuesList]</p>
2378
+
2379
+ <p>Description: </p>
2380
+
2381
+ <p>The nature or genre of the digital representation. Ideally the term(s) will be taken f
2382
+ rom a controlled vocabulary.dc:type should not be (strictly) identical to edm:type. <code>&lt;d
2383
+ c:type&gt;video&lt;/dc:type&gt;</code> or create a reference to an instance of the Concept class <code>&lt;dc:t
2384
+ ype rdf:about= “http://schema.org/VideoObject” &gt;</code></p>
2385
+ </div>
2386
+
2387
+ #### EDM_WebResource.dcterms_conformsTo
2388
+ ```python
2389
+ dcterms_conformsTo: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2390
+ ```
2391
+
2392
+
2393
+
2394
+ <div class="docstring"><p>Mandate:
2395
+ optional</p>
2396
+
2397
+ <p>Cardinality:
2398
+ zero_to_many</p>
2399
+
2400
+ <p>Value-Type:
2401
+ Optional[MixedValuesList]</p>
2402
+
2403
+ <p>Description: </p>
2404
+
2405
+ <p>An established standard to which the web resource conforms. <code>&lt;dcterms:conformsTo&gt;W3C WC
2406
+ AG 2.0&lt;/dcterms:conformsTo&gt;</code> (web content accessibility guidelines).</p>
2407
+ </div>
2408
+
2409
+ #### EDM_WebResource.dcterms_created
2410
+ ```python
2411
+ dcterms_created: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2412
+ ```
2413
+
2414
+
2415
+
2416
+ <div class="docstring"><p>Mandate:
2417
+ optional</p>
2418
+
2419
+ <p>Cardinality:
2420
+ zero_to_many</p>
2421
+
2422
+ <p>Value-Type:
2423
+ Optional[MixedValuesList]</p>
2424
+
2425
+ <p>Description: </p>
2426
+
2427
+ <p>Date of creation of the Web resource. Europeana recommends date conforming to ISO 8601
2428
+ starting with the year and with hyphens (YYYY-MM-DD). <code>&lt;dcterms:created&gt;2010&lt;/dcterms:
2429
+ created&gt;</code> or create a reference to an instance of the TimeSpan class <code>&lt;dc:date rdf:resou
2430
+ rce=“http://semium.org/time/2010”/&gt;</code></p>
2431
+ </div>
2432
+
2433
+ #### EDM_WebResource.dcterms_extent
2434
+ ```python
2435
+ dcterms_extent: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2436
+ ```
2437
+
2438
+
2439
+
2440
+ <div class="docstring"><p>Mandate:
2441
+ optional</p>
2442
+
2443
+ <p>Cardinality:
2444
+ zero_to_many</p>
2445
+
2446
+ <p>Value-Type:
2447
+ Optional[MixedValuesList]</p>
2448
+
2449
+ <p>Description: </p>
2450
+
2451
+ <p>The size or duration of the digital resource. <code>&lt;dcterms:extent&gt;1h 26 min 41 sec&lt;/dcterm
2452
+ s:extent&gt;</code></p>
2453
+ </div>
2454
+
2455
+ #### EDM_WebResource.dcterms_hasPart
2456
+ ```python
2457
+ dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]
2458
+ ```
2459
+
2460
+
2461
+
2462
+ <div class="docstring"><p>Mandate:
2463
+ optional</p>
2464
+
2465
+ <p>Cardinality:
2466
+ zero_to_many</p>
2467
+
2468
+ <p>Value-Type:
2469
+ Optional[List[Ref]]</p>
2470
+
2471
+ <p>Description: </p>
2472
+
2473
+ <p>A resource that is included either physically or logically in the web resource. <code>&lt;dcter
2474
+ ms:hasPart rdf:resource=“http://www.identifier/Part”/&gt;</code></p>
2475
+ </div>
2476
+
2477
+ #### EDM_WebResource.dcterms_isFormatOf
2478
+ ```python
2479
+ dcterms_isFormatOf: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2480
+ ```
2481
+
2482
+
2483
+
2484
+ <div class="docstring"><p>Mandate:
2485
+ optional</p>
2486
+
2487
+ <p>Cardinality:
2488
+ zero_to_many</p>
2489
+
2490
+ <p>Value-Type:
2491
+ Optional[MixedValuesList]</p>
2492
+
2493
+ <p>Description: </p>
2494
+
2495
+ <p>Another resource that is substantially the same as the web resource but in another for
2496
+ mat. <code>&lt;dcterms:isFormatOf&gt;http://upload.wikimedia.org/wikipedia/en/f/f3/Europeana_logo
2497
+ .png&lt;/dcterms:isFormatOf&gt;</code> for a png image file of the described tiff web resource. Or
2498
+ as a link to a resource <code>&lt;dcterms:isFormatOf rdf:resource=“http://upload.wikimedia.org/
2499
+ wikipedia/en/f/f3/Europeana_logo.png”/&gt;</code></p>
2500
+ </div>
2501
+
2502
+ #### EDM_WebResource.dcterms_isPartOf
2503
+ ```python
2504
+ dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]
2505
+ ```
2506
+
2507
+
2508
+
2509
+ <div class="docstring"><p>Mandate:
2510
+ optional</p>
2511
+
2512
+ <p>Cardinality:
2513
+ zero_to_many</p>
2514
+
2515
+ <p>Value-Type:
2516
+ Optional[List[Ref]]</p>
2517
+
2518
+ <p>Description: </p>
2519
+
2520
+ <p>A resource in which the WebResource is physically or logically included. This property
2521
+ can be used for web resources that are part of a hierarchy. Hierarchies can be repres
2522
+ ented as hierarchies of ProvidedCHOs or hierarchies of web resources but not both at t
2523
+ he same time. See the Task Force report on representing hierarchical entities. <code>&lt;dcterm
2524
+ s:isPartOf rdf:resource=“http://data.europeana.eu/item/08701/1B0BACAA44D5A807E43D9B411
2525
+ C9781AAD2F96E65”/&gt;</code></p>
2526
+ </div>
2527
+
2528
+ #### EDM_WebResource.dcterms_isReferencedBy
2529
+ ```python
2530
+ dcterms_isReferencedBy: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2531
+ ```
2532
+
2533
+
2534
+
2535
+ <div class="docstring"><p>Mandate:
2536
+ optional</p>
2537
+
2538
+ <p>Cardinality:
2539
+ zero_to_many</p>
2540
+
2541
+ <p>Value-Type:
2542
+ Optional[MixedValuesList]</p>
2543
+
2544
+ <p>Description: </p>
2545
+
2546
+ <p>A related resource that references, cites, or otherwise points to the described resour
2547
+ ce. In a IIIF implementation, dcterms:isReferencedBy can be used to connect a edm:WebR
2548
+ esource to a IIIF manifest URI. <code>&lt;dcterms:isReferencedBy rdf:resource="https://gallica.
2549
+ bnf.fr/iiif/ark:/12148/btv1b55001425m/manifest.json"/&gt;</code></p>
2550
+ </div>
2551
+
2552
+ #### EDM_WebResource.dcterms_issued
2553
+ ```python
2554
+ dcterms_issued: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
2555
+ ```
2556
+
2557
+
2558
+
2559
+ <div class="docstring"><p>Mandate:
2560
+ optional</p>
2561
+
2562
+ <p>Cardinality:
2563
+ zero_to_many</p>
2564
+
2565
+ <p>Value-Type:
2566
+ Optional[MixedValuesList]</p>
2567
+
2568
+ <p>Description: </p>
2569
+
2570
+ <p>Date of formal issuance or publication of the web resource. Europeana recommends date
2571
+ conforming to ISO 8601 starting with the year and with hyphens (YYYY‐MM-DD). <code>&lt;dcterms:
2572
+ issued&gt;1999&lt;/dcterms:issued&gt;</code> or create a reference to an instance of the TimeSpan clas
2573
+ s<code>&lt;dcterms:issued rdf:resource=“http://semium.org/time/2010”/&gt;</code></p>
2574
+ </div>
2575
+
2576
+ #### EDM_WebResource.edm_isNextInSequence
2577
+ ```python
2578
+ edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]
2579
+ ```
2580
+
2581
+
2582
+
2583
+ <div class="docstring"><p>Mandate:
2584
+ optional</p>
2585
+
2586
+ <p>Cardinality:
2587
+ zero_to_many</p>
2588
+
2589
+ <p>Value-Type:
2590
+ Optional[List[Ref]]</p>
2591
+
2592
+ <p>Description: </p>
2593
+
2594
+ <p>Where one CHO has several web resources, shown by multiple instances of the edm:hasVie
2595
+ w property on the ore:Aggregation this property can be used to show the sequence of th
2596
+ e objects. Each web resource (apart from the first in the sequence) should use this pr
2597
+ operty to give the URI of the preceding resource in the sequence.</p>
2598
+ </div>
2599
+
2600
+ #### EDM_WebResource.edm_rights
2601
+ ```python
2602
+ edm_rights: Optional[edmlib.edm.value_types.Ref]
2603
+ ```
2604
+
2605
+
2606
+
2607
+ <div class="docstring"><p>Mandate:
2608
+ recommended</p>
2609
+
2610
+ <p>Cardinality:
2611
+ zero_to_one</p>
2612
+
2613
+ <p>Value-Type:
2614
+ Optional[Ref]</p>
2615
+
2616
+ <p>Description: </p>
2617
+
2618
+ <p>The value in this element will indicate the copyright, usage and access rights that ap
2619
+ ply to this digital representation. It is strongly recommended that a value is supplie
2620
+ d for this property for each instance of a web resource.The value for the rights state
2621
+ ment in this element must be a URI from the list of available values. Note: rights sta
2622
+ tements must be exactly as specified there, which means they must start with http and
2623
+ not https. The rights statement specified at the level of the web resource will ‘overr
2624
+ ide’ the statement specified at the level of the aggregation. <code>&lt;edm:rights rdf:resource
2625
+ =“http://creativecommons.org/publicdomain/mark/1.0/”/&gt; &lt;edm:rights rdf:resource=“http:
2626
+ //rightsstatements.org/vocab/InC/1.0/”/&gt;</code> Or create a reference to an instance of the
2627
+ cc:License class where additional details of the rights can be provided (such as an ex
2628
+ piry date for the restrictions): <a href="http://rightsstatements.org/vocab/NoC-NC/1.0/or">http://rightsstatements.org/vocab/NoC-NC/1.0/or</a> <code>&lt;edm:
2629
+ rights rdf:resource="#statement_3000095353971"/&gt;</code>This is a recommended property.</p>
2630
+ </div>
2631
+
2632
+ #### EDM_WebResource.owl_sameAs
2633
+ ```python
2634
+ owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]
2635
+ ```
2636
+
2637
+
2638
+
2639
+ <div class="docstring"><p>Mandate:
2640
+ optional</p>
2641
+
2642
+ <p>Cardinality:
2643
+ zero_to_many</p>
2644
+
2645
+ <p>Value-Type:
2646
+ Optional[List[Ref]]</p>
2647
+
2648
+ <p>Description: </p>
2649
+
2650
+ <p>Provide the URI of another web representation of the same resource. <code>&lt;owl:sameAs rdf:re
2651
+ source=”urn:soundcloud:150424305&gt;</code></p>
2652
+ </div>
2653
+
2654
+ #### EDM_WebResource.svcs_has_service
2655
+ ```python
2656
+ svcs_has_service: Optional[List[edmlib.edm.value_types.Ref]]
2657
+ ```
2658
+
2659
+
2660
+
2661
+ <div class="docstring"><p>Mandate:
2662
+ optional</p>
2663
+
2664
+ <pre><code>Cardinality:
2665
+ zero_to_many
2666
+
2667
+ Value-Type:
2668
+ Optional[List[Ref]]
2669
+
2670
+ Description:
2671
+
2672
+ The identifier of the svcs:Service required to consume the edm:WebResource. Example:
2673
+ </code></pre>
2674
+
2675
+ <p><code>&lt;svcs:has_service rdf:resource="http://www.example.org/Service/IIIF"&gt;</code></p>
2676
+ </div>
2677
+
2678
+ #### EDM_WebResource.validate_web_resource
2679
+ ```python
2680
+ @model_validator(mode='after') def validate_web_resource(self) -> Self
2681
+ ```
2682
+
2683
+
2684
+
2685
+
2686
+
2687
+ #### EDM_WebResource.model_config
2688
+ ```python
2689
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
2690
+ ```
2691
+
2692
+
2693
+
2694
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
2695
+ </div>
2696
+
2697
+
2698
+ ---
2699
+
2700
+ ---
2701
+ ### CC_License
2702
+ ```python
2703
+ class CC_License(edmlib.edm.base.EDM_BaseClass):
2704
+ ```
2705
+
2706
+
2707
+
2708
+ <div class="docstring"><p>mandatory-properties: ODRL_inheritFrom</p>
2709
+
2710
+ <p>optional-properties: CC_deprecatedOn</p>
2711
+ </div>
2712
+
2713
+ #### CC_License.odrl_inheritFrom
2714
+ ```python
2715
+ odrl_inheritFrom: edmlib.edm.value_types.Ref
2716
+ ```
2717
+
2718
+
2719
+
2720
+ <div class="docstring"><p>Mandate:
2721
+ mandatory</p>
2722
+
2723
+ <p>Cardinality:
2724
+ exactly_one</p>
2725
+
2726
+ <p>Value-Type:
2727
+ Ref</p>
2728
+
2729
+ <p>Description: </p>
2730
+
2731
+ <p>ID of a base rights statement from which the described License is derived. This value
2732
+ must come for alist of statements controlled by Europeana.<code>&lt;odrl:inheritFrom rdf:resour
2733
+ ce=“http://rightsstatements.org/vocab/NoC-­NC/1.0/”/&gt;</code></p>
2734
+ </div>
2735
+
2736
+ #### CC_License.cc_deprecatedOn
2737
+ ```python
2738
+ cc_deprecatedOn: Any
2739
+ ```
2740
+
2741
+
2742
+
2743
+ <div class="docstring"><p>Mandate:
2744
+ optional</p>
2745
+
2746
+ <p>Cardinality:
2747
+ zero_to_one</p>
2748
+
2749
+ <p>Value-Type:
2750
+ Any</p>
2751
+
2752
+ <p>Description: </p>
2753
+
2754
+ <p>The date that the license expires, as it has been described, which implies among other
2755
+ things the expiration of the restrictions specified by the license.<code>&lt;cc:deprecatedOn r
2756
+ df:datatype=”http://www.w3.org/2001/XMLSchema#date”&gt;2029‐06-­01&lt;/cc:deprecatedOn&gt;</code> Note
2757
+ this datatype is mandatory for cc:deprecatedOn.</p>
2758
+ </div>
2759
+
2760
+ #### CC_License.model_config
2761
+ ```python
2762
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
2763
+ ```
2764
+
2765
+
2766
+
2767
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
2768
+ </div>
2769
+
2770
+
2771
+ ---
2772
+
2773
+ ---
2774
+ ### SKOS_Concept
2775
+ ```python
2776
+ class SKOS_Concept(edmlib.edm.base.EDM_BaseClass):
2777
+ ```
2778
+
2779
+
2780
+
2781
+ <div class="docstring"><p>optional-properties: SKOS_broader, SKOS_narrower, SKOS_related, SKOS_broadMatch, SKOS_narrowMatch, SKOS_relatedMatch, SKOS_exactMatch, SKOS_closeMatch, SKOS_note, SKOS_notation, SKOS_inScheme</p>
2782
+
2783
+ <p>recommended-properties: SKOS_prefLabel, SKOS_altLabel</p>
2784
+ </div>
2785
+
2786
+ #### SKOS_Concept.skos_prefLabel
2787
+ ```python
2788
+ skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]
2789
+ ```
2790
+
2791
+
2792
+
2793
+ <div class="docstring"><p>Mandate:
2794
+ recommended</p>
2795
+
2796
+ <p>Cardinality:
2797
+ zero_to_many</p>
2798
+
2799
+ <p>Value-Type:
2800
+ Optional[List[Lit]]</p>
2801
+
2802
+ <p>Description: </p>
2803
+
2804
+ <p>The preferred form of the name of the concept. Although the maximum number of occurren
2805
+ ces is set at 1, it can be interpreted as 1 per language tag. At least one skos:prefLa
2806
+ bel SHOULD be provided. Several prefLabels with languages tags are strongly recommende
2807
+ d for language variants and translations.This is a recommended property for this class
2808
+ .<code>&lt;skos:prefLabel xml:lang="fr"&gt;Buccin&lt;/skos:prefLabel&gt;&lt;skos:prefLabel xml:lang="de"&gt;Bu
2809
+ ccin&lt;/skos:prefLabel&gt;&lt;skos:prefLabel xml:lang="nl"&gt;Buccin&lt;/skos:prefLabel&gt;</code>For recommen
2810
+ dations on medata quality see Tier A-C requirements , more specifically Metadata Tier
2811
+ B and Metadata Tier C</p>
2812
+ </div>
2813
+
2814
+ #### SKOS_Concept.skos_altLabel
2815
+ ```python
2816
+ skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]
2817
+ ```
2818
+
2819
+
2820
+
2821
+ <div class="docstring"><p>Mandate:
2822
+ recommended</p>
2823
+
2824
+ <p>Cardinality:
2825
+ zero_to_many</p>
2826
+
2827
+ <p>Value-Type:
2828
+ Optional[List[Lit]]</p>
2829
+
2830
+ <p>Description: </p>
2831
+
2832
+ <p>Alternative forms of the name of the concept. Recommended unless several prefLabel are
2833
+ already given with different language tags (altLabel is not suitable for translations
2834
+ of prefLabel).<code>&lt;skos:altLabel xml:lang="en"&gt;Buccin&lt;/skos:altLabel&gt;</code>This is a recommende
2835
+ d property for this class.</p>
2836
+ </div>
2837
+
2838
+ #### SKOS_Concept.skos_broader
2839
+ ```python
2840
+ skos_broader: Optional[List[edmlib.edm.value_types.Ref]]
2841
+ ```
2842
+
2843
+
2844
+
2845
+ <div class="docstring"><p>Mandate:
2846
+ optional</p>
2847
+
2848
+ <p>Cardinality:
2849
+ zero_to_many</p>
2850
+
2851
+ <p>Value-Type:
2852
+ Optional[List[Ref]]</p>
2853
+
2854
+ <p>Description: </p>
2855
+
2856
+ <p>The identifier of a broader concept in the same thesaurus or controlled vocabulary.<code>&lt;sk
2857
+ os:broader rdf:resource=“http://www.mimo-db.eu/InstrumentsKeywords/4369_1 ”/&gt;</code>For recom
2858
+ mendations on medata quality see Tier A-C requirements , more specifically Metadata Ti
2859
+ er B and Metadata Tier C</p>
2860
+ </div>
2861
+
2862
+ #### SKOS_Concept.skos_narrower
2863
+ ```python
2864
+ skos_narrower: Optional[List[edmlib.edm.value_types.Ref]]
2865
+ ```
2866
+
2867
+
2868
+
2869
+ <div class="docstring"><p>Mandate:
2870
+ optional</p>
2871
+
2872
+ <p>Cardinality:
2873
+ zero_to_many</p>
2874
+
2875
+ <p>Value-Type:
2876
+ Optional[List[Ref]]</p>
2877
+
2878
+ <p>Description: </p>
2879
+
2880
+ <p>The identifier of a narrower concept.<code>&lt;skos:narrower rdf:resource=“http://narrower.term
2881
+ /”/&gt;</code>For recommendations on medata quality see Tier A-C requirements , more specificall
2882
+ y Metadata Tier B and Metadata Tier C</p>
2883
+ </div>
2884
+
2885
+ #### SKOS_Concept.skos_related
2886
+ ```python
2887
+ skos_related: Optional[List[edmlib.edm.value_types.Ref]]
2888
+ ```
2889
+
2890
+
2891
+
2892
+ <div class="docstring"><p>Mandate:
2893
+ optional</p>
2894
+
2895
+ <p>Cardinality:
2896
+ zero_to_many</p>
2897
+
2898
+ <p>Value-Type:
2899
+ Optional[List[Ref]]</p>
2900
+
2901
+ <p>Description: </p>
2902
+
2903
+ <p>The identifier of a related concept<code>&lt;skos:related rdf:resource=“http://related.term/”/&gt;</code>
2904
+ For recommendations on medata quality see Tier A-C requirements , more specifically Me
2905
+ tadata Tier B and Metadata Tier C</p>
2906
+ </div>
2907
+
2908
+ #### SKOS_Concept.skos_broadMatch
2909
+ ```python
2910
+ skos_broadMatch: Optional[List[edmlib.edm.value_types.Ref]]
2911
+ ```
2912
+
2913
+
2914
+
2915
+ <div class="docstring"><p>Mandate:
2916
+ optional</p>
2917
+
2918
+ <p>Cardinality:
2919
+ zero_to_many</p>
2920
+
2921
+ <p>Value-Type:
2922
+ Optional[List[Ref]]</p>
2923
+
2924
+ <p>Description: </p>
2925
+
2926
+ <p>The identifier of a broader, narrower or related matching concepts from other concept
2927
+ schemes.<code>&lt;skos:broadMatch rdf:resource=“http://broadMatch.term/”/&gt;&lt;skos:narrowMatch rdf
2928
+ :resource=“http://narrowMatch.term/”/&gt;&lt;skos:relatedMatch rdf:resource=“http://relatedM
2929
+ atch.term/”/&gt;</code></p>
2930
+ </div>
2931
+
2932
+ #### SKOS_Concept.skos_narrowMatch
2933
+ ```python
2934
+ skos_narrowMatch: Optional[List[edmlib.edm.value_types.Ref]]
2935
+ ```
2936
+
2937
+
2938
+
2939
+ <div class="docstring"><p>Mandate:
2940
+ optional</p>
2941
+
2942
+ <p>Cardinality:
2943
+ zero_to_many</p>
2944
+
2945
+ <p>Value-Type:
2946
+ Optional[List[Ref]]</p>
2947
+
2948
+ <p>Description: </p>
2949
+
2950
+ <p>The identifier of a broader, narrower or related matching concepts from other concept
2951
+ schemes.<code>&lt;skos:broadMatch rdf:resource=“http://broadMatch.term/”/&gt;&lt;skos:narrowMatch rdf
2952
+ :resource=“http://narrowMatch.term/”/&gt;&lt;skos:relatedMatch rdf:resource=“http://relatedM
2953
+ atch.term/”/&gt;</code></p>
2954
+ </div>
2955
+
2956
+ #### SKOS_Concept.skos_relatedMatch
2957
+ ```python
2958
+ skos_relatedMatch: Optional[List[edmlib.edm.value_types.Ref]]
2959
+ ```
2960
+
2961
+
2962
+
2963
+ <div class="docstring"><p>Mandate:
2964
+ optional</p>
2965
+
2966
+ <p>Cardinality:
2967
+ zero_to_many</p>
2968
+
2969
+ <p>Value-Type:
2970
+ Optional[List[Ref]]</p>
2971
+
2972
+ <p>Description: </p>
2973
+
2974
+ <p>The identifier of a broader, narrower or related matching concepts from other concept
2975
+ schemes.<code>&lt;skos:broadMatch rdf:resource=“http://broadMatch.term/”/&gt;&lt;skos:narrowMatch rdf
2976
+ :resource=“http://narrowMatch.term/”/&gt;&lt;skos:relatedMatch rdf:resource=“http://relatedM
2977
+ atch.term/”/&gt;</code></p>
2978
+ </div>
2979
+
2980
+ #### SKOS_Concept.skos_exactMatch
2981
+ ```python
2982
+ skos_exactMatch: Optional[List[edmlib.edm.value_types.Ref]]
2983
+ ```
2984
+
2985
+
2986
+
2987
+ <div class="docstring"><p>Mandate:
2988
+ optional</p>
2989
+
2990
+ <p>Cardinality:
2991
+ zero_to_many</p>
2992
+
2993
+ <p>Value-Type:
2994
+ Optional[List[Ref]]</p>
2995
+
2996
+ <p>Description: </p>
2997
+
2998
+ <p>The identifier of close or exactly matching concepts from other concept schemes.<code>&lt;skos:
2999
+ exactMatch rdf:resource=“http://exactMatch.term/”/&gt;&lt;skos:closeMatch rdf:resource=“http
3000
+ ://closeMatch.term/”/&gt;</code>For recommendations on medata quality see Tier A-C requirements
3001
+ , more specifically Metadata Tier B and Metadata Tier C</p>
3002
+ </div>
3003
+
3004
+ #### SKOS_Concept.skos_closeMatch
3005
+ ```python
3006
+ skos_closeMatch: Optional[List[edmlib.edm.value_types.Ref]]
3007
+ ```
3008
+
3009
+
3010
+
3011
+ <div class="docstring"><p>Mandate:
3012
+ optional</p>
3013
+
3014
+ <p>Cardinality:
3015
+ zero_to_many</p>
3016
+
3017
+ <p>Value-Type:
3018
+ Optional[List[Ref]]</p>
3019
+
3020
+ <p>Description: </p>
3021
+
3022
+ <p>The identifier of close or exactly matching concepts from other concept schemes.<code>&lt;skos:
3023
+ exactMatch rdf:resource=“http://exactMatch.term/”/&gt;&lt;skos:closeMatch rdf:resource=“http
3024
+ ://closeMatch.term/”/&gt;</code>For recommendations on medata quality see Tier A-C requirements
3025
+ , more specifically Metadata Tier B and Metadata Tier C</p>
3026
+ </div>
3027
+
3028
+ #### SKOS_Concept.skos_note
3029
+ ```python
3030
+ skos_note: Optional[List[edmlib.edm.value_types.Lit]]
3031
+ ```
3032
+
3033
+
3034
+
3035
+ <div class="docstring"><p>Mandate:
3036
+ optional</p>
3037
+
3038
+ <p>Cardinality:
3039
+ zero_to_many</p>
3040
+
3041
+ <p>Value-Type:
3042
+ Optional[List[Lit]]</p>
3043
+
3044
+ <p>Description: </p>
3045
+
3046
+ <p>Information relating to the concept.<code>&lt;skos:note&gt;The buccin is a visually distinctive tr
3047
+ ombone popularized in military bands in France between 1810–1845 which subsequently fa
3048
+ ded into obscurity.&lt;/skos:note&gt;</code>For recommendations on medata quality see Tier A-C requ
3049
+ irements, more specifically Metadata Tier B and Metadata Tier C.</p>
3050
+ </div>
3051
+
3052
+ #### SKOS_Concept.skos_notation
3053
+ ```python
3054
+ skos_notation: Optional[List[edmlib.edm.value_types.Lit]]
3055
+ ```
3056
+
3057
+
3058
+
3059
+ <div class="docstring"><p>Mandate:
3060
+ optional</p>
3061
+
3062
+ <p>Cardinality:
3063
+ zero_to_many</p>
3064
+
3065
+ <p>Value-Type:
3066
+ Optional[List[Lit]]</p>
3067
+
3068
+ <p>Description: </p>
3069
+
3070
+ <p>The notation in which the concept is represented. This may not be words in natural lan
3071
+ guage for someknowledge organisation systems e.g. algebra<code>&lt;skos:notation rdf:datatype=“
3072
+ http://www.w3.org/2001/XMLSchema#int”&gt;123&lt;/skos:notation&gt;</code></p>
3073
+ </div>
3074
+
3075
+ #### SKOS_Concept.skos_inScheme
3076
+ ```python
3077
+ skos_inScheme: Optional[List[edmlib.edm.value_types.Ref]]
3078
+ ```
3079
+
3080
+
3081
+
3082
+ <div class="docstring"><p>Mandate:
3083
+ optional</p>
3084
+
3085
+ <p>Cardinality:
3086
+ zero_to_many</p>
3087
+
3088
+ <p>Value-Type:
3089
+ Optional[List[Ref]]</p>
3090
+
3091
+ <p>Description: </p>
3092
+
3093
+ <p>The URI of a concept scheme</p>
3094
+ </div>
3095
+
3096
+ #### SKOS_Concept.validate_skos_pref_label
3097
+ ```python
3098
+ @model_validator(mode='after') def validate_skos_pref_label(self) -> Self
3099
+ ```
3100
+
3101
+
3102
+
3103
+
3104
+
3105
+ #### SKOS_Concept.model_config
3106
+ ```python
3107
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
3108
+ ```
3109
+
3110
+
3111
+
3112
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
3113
+ </div>
3114
+
3115
+
3116
+ ---
3117
+
3118
+ ---
3119
+ ### EDM_Agent
3120
+ ```python
3121
+ class EDM_Agent(edmlib.edm.base.EDM_BaseClass):
3122
+ ```
3123
+
3124
+
3125
+
3126
+ <div class="docstring"><p>optional-properties: SKOS_note, DC_date, DC_identifier, DCTERMS_hasPart, DCTERMS_isPartOf, EDM_begin, EDM_end, EDM_hasMet, EDM_isRelatedTo, FOAF_name, RDAGR2_biographicalInformation, RDAGR2_dateOfEstablishment, RDAGR2_dateOfTermination, RDAGR2_gender, RDAGR2_placeOfBirth, RDAGR2_placeOfDeath, RDAGR2_professionOrOccupation, OWL_sameAs</p>
3127
+
3128
+ <p>recommended-properties: SKOS_prefLabel, SKOS_altLabel, RDAGR2_dateOfBirth, RDAGR2_dateOfDeath</p>
3129
+ </div>
3130
+
3131
+ #### EDM_Agent.skos_prefLabel
3132
+ ```python
3133
+ skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]
3134
+ ```
3135
+
3136
+
3137
+
3138
+ <div class="docstring"><p>Mandate:
3139
+ recommended</p>
3140
+
3141
+ <p>Cardinality:
3142
+ zero_to_many</p>
3143
+
3144
+ <p>Value-Type:
3145
+ Optional[List[Lit]]</p>
3146
+
3147
+ <p>Description: </p>
3148
+
3149
+ <p>The preferred form of the name of the agent. Although the maximum number of occurrence
3150
+ s is set at 1, it can be interpreted as 1 per language tag. At least one skos:prefLabe
3151
+ l SHOULD be provided. Several prefLabels with languages tags are strongly recommended
3152
+ for language variants and translations. This is a recommended property for this class.
3153
+ <code>&lt;skos:prefLabel xml:lang=''fr''&gt;Courtois neveu aîné&lt;/skos:prefLabel&gt;&lt;skos:prefLabel xm
3154
+ l:lang=''en''&gt;Courtois’eldest nephew&lt;/skos:prefLabel&gt;</code> For recommendations on medata qu
3155
+ ality see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tier
3156
+ C</p>
3157
+ </div>
3158
+
3159
+ #### EDM_Agent.skos_altLabel
3160
+ ```python
3161
+ skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]
3162
+ ```
3163
+
3164
+
3165
+
3166
+ <div class="docstring"><p>Mandate:
3167
+ recommended</p>
3168
+
3169
+ <p>Cardinality:
3170
+ zero_to_many</p>
3171
+
3172
+ <p>Value-Type:
3173
+ Optional[List[Lit]]</p>
3174
+
3175
+ <p>Description: </p>
3176
+
3177
+ <p>Alternative forms of the name of the agent. This is a recommended property for this cl
3178
+ ass.<code>&lt;skos:altLabel xml:lang="en"&gt;Courtois&lt;/skos:altLabel&gt;&lt;skos:altLabel xml:lang="fr"&gt;
3179
+ Augte. Courtois aîné&lt;/skos:altLabel&gt;</code></p>
3180
+ </div>
3181
+
3182
+ #### EDM_Agent.skos_note
3183
+ ```python
3184
+ skos_note: Optional[List[edmlib.edm.value_types.Lit]]
3185
+ ```
3186
+
3187
+
3188
+
3189
+ <div class="docstring"><p>Mandate:
3190
+ optional</p>
3191
+
3192
+ <p>Cardinality:
3193
+ zero_to_many</p>
3194
+
3195
+ <p>Value-Type:
3196
+ Optional[List[Lit]]</p>
3197
+
3198
+ <p>Description: </p>
3199
+
3200
+ <p>A note about the agent e.g. biographical notes.<code>&lt;skos:note&gt; Courtois neveu aîné started
3201
+ a company of the same name manufacturing brass instruments in Paris in 1803&lt;/skos:not
3202
+ e&gt;</code></p>
3203
+ </div>
3204
+
3205
+ #### EDM_Agent.dc_date
3206
+ ```python
3207
+ dc_date: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
3208
+ ```
3209
+
3210
+
3211
+
3212
+ <div class="docstring"><p>Mandate:
3213
+ optional</p>
3214
+
3215
+ <p>Cardinality:
3216
+ zero_to_many</p>
3217
+
3218
+ <p>Value-Type:
3219
+ Optional[MixedValuesList]</p>
3220
+
3221
+ <p>Description: </p>
3222
+
3223
+ <p>A significant date associated with the Agent. Europeana recommends date conforming to
3224
+ ISO 8601 starting with the year and with hyphens (YYYY-MM-DD).<code>&lt;dc:date&gt;1803&lt;/dc:date/&gt;</code></p>
3225
+ </div>
3226
+
3227
+ #### EDM_Agent.dc_identifier
3228
+ ```python
3229
+ dc_identifier: Optional[List[edmlib.edm.value_types.Lit]]
3230
+ ```
3231
+
3232
+
3233
+
3234
+ <div class="docstring"><p>Mandate:
3235
+ optional</p>
3236
+
3237
+ <p>Cardinality:
3238
+ zero_to_many</p>
3239
+
3240
+ <p>Value-Type:
3241
+ Optional[List[Lit]]</p>
3242
+
3243
+ <p>Description: </p>
3244
+
3245
+ <p>An identifier of the agent.<code>&lt;dc:identifier&gt;http://viaf.org/viaf/96994048 &lt;/dc:identifi
3246
+ er&gt;</code></p>
3247
+ </div>
3248
+
3249
+ #### EDM_Agent.dcterms_hasPart
3250
+ ```python
3251
+ dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]
3252
+ ```
3253
+
3254
+
3255
+
3256
+ <div class="docstring"><p>Mandate:
3257
+ optional</p>
3258
+
3259
+ <p>Cardinality:
3260
+ zero_to_many</p>
3261
+
3262
+ <p>Value-Type:
3263
+ Optional[List[Ref]]</p>
3264
+
3265
+ <p>Description: </p>
3266
+
3267
+ <p>Reference to an Agent that is part of the Agent being described (e.g. a part of a corp
3268
+ oration).<code>&lt;dcterms:hasPart rdf:resource=“http://identifier/partOfCorporation/”&gt;</code></p>
3269
+ </div>
3270
+
3271
+ #### EDM_Agent.dcterms_isPartOf
3272
+ ```python
3273
+ dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]
3274
+ ```
3275
+
3276
+
3277
+
3278
+ <div class="docstring"><p>Mandate:
3279
+ optional</p>
3280
+
3281
+ <p>Cardinality:
3282
+ zero_to_many</p>
3283
+
3284
+ <p>Value-Type:
3285
+ Optional[List[Ref]]</p>
3286
+
3287
+ <p>Description: </p>
3288
+
3289
+ <p>Reference to an agent that the described agent is part of.<code>&lt;dcterms:isPartOf rdf:resour
3290
+ ce=“http://identifier/parentCorporation/”&gt;</code></p>
3291
+ </div>
3292
+
3293
+ #### EDM_Agent.edm_begin
3294
+ ```python
3295
+ edm_begin: Optional[edmlib.edm.value_types.Lit]
3296
+ ```
3297
+
3298
+
3299
+
3300
+ <div class="docstring"><p>Mandate:
3301
+ optional</p>
3302
+
3303
+ <p>Cardinality:
3304
+ zero_to_one</p>
3305
+
3306
+ <p>Value-Type:
3307
+ Optional[Lit]</p>
3308
+
3309
+ <p>Description: </p>
3310
+
3311
+ <p>The date the agent was born/established. Europeana recommends date conforming to ISO 8
3312
+ 601 starting with the year and with hyphens (YYYY-MM-DD).<code>&lt;edm:begin&gt;1795&lt;/edm:begin&gt;</code>Ge
3313
+ neric "begin" and "end" properties are being used to indicate start date and end date
3314
+ generically for edm:Agent and edm:TimeSpan. For edm:Agent this can be interpreted andb
3315
+ irth and death dates.For recommendations on medata quality see Tier A-C requirements ,
3316
+ more specifically Metadata Tier B and Metadata Tier C</p>
3317
+ </div>
3318
+
3319
+ #### EDM_Agent.edm_end
3320
+ ```python
3321
+ edm_end: Optional[edmlib.edm.value_types.Lit]
3322
+ ```
3323
+
3324
+
3325
+
3326
+ <div class="docstring"><p>Mandate:
3327
+ optional</p>
3328
+
3329
+ <p>Cardinality:
3330
+ zero_to_one</p>
3331
+
3332
+ <p>Value-Type:
3333
+ Optional[Lit]</p>
3334
+
3335
+ <p>Description: </p>
3336
+
3337
+ <p>Generic "begin" and "end" properties are being used to indicate start date and end dat
3338
+ e generically for edm:Agent and edm:TimeSpan. For edm:Agent this can be interpreted an
3339
+ dbirth and death dates.For recommendations on medata quality see Tier A-C requirements
3340
+ , more specifically Metadata Tier B and Metadata Tier C</p>
3341
+ </div>
3342
+
3343
+ #### EDM_Agent.edm_hasMet
3344
+ ```python
3345
+ edm_hasMet: Optional[List[edmlib.edm.value_types.Ref]]
3346
+ ```
3347
+
3348
+
3349
+
3350
+ <div class="docstring"><p>Mandate:
3351
+ optional</p>
3352
+
3353
+ <p>Cardinality:
3354
+ zero_to_many</p>
3355
+
3356
+ <p>Value-Type:
3357
+ Optional[List[Ref]]</p>
3358
+
3359
+ <p>Description: </p>
3360
+
3361
+ <p>Reference to another entity which the agent has “met” in a broad sense. For example a
3362
+ reference to a Place class<code>&lt;edm:hasMet rdf:resource=“http://sws.geonames.org/6620265/”&gt;</code></p>
3363
+ </div>
3364
+
3365
+ #### EDM_Agent.edm_isRelatedTo
3366
+ ```python
3367
+ edm_isRelatedTo: Optional[List[edmlib.edm.value_types.Ref]]
3368
+ ```
3369
+
3370
+
3371
+
3372
+ <div class="docstring"><p>Mandate:
3373
+ optional</p>
3374
+
3375
+ <p>Cardinality:
3376
+ zero_to_many</p>
3377
+
3378
+ <p>Value-Type:
3379
+ Optional[List[Ref]]</p>
3380
+
3381
+ <p>Description: </p>
3382
+
3383
+ <p>Reference to other entities, particularly other agents, with whom the agent is related
3384
+ in a generic sense.<code>&lt;edm:isRelatedTo rdf:resource=“http://identifier/relatedAgent/”&gt;</code></p>
3385
+ </div>
3386
+
3387
+ #### EDM_Agent.foaf_name
3388
+ ```python
3389
+ foaf_name: Optional[List[edmlib.edm.value_types.Lit]]
3390
+ ```
3391
+
3392
+
3393
+
3394
+ <div class="docstring"><p>Mandate:
3395
+ optional</p>
3396
+
3397
+ <p>Cardinality:
3398
+ zero_to_many</p>
3399
+
3400
+ <p>Value-Type:
3401
+ Optional[List[Lit]]</p>
3402
+
3403
+ <p>Description: </p>
3404
+
3405
+ <p>The name of the agent as a simple textual string.<code>&lt;foaf:name&gt;Auguste Courtois&lt;/foaf:nam
3406
+ e&gt;</code></p>
3407
+ </div>
3408
+
3409
+ #### EDM_Agent.rdagr2_biographicalInformation
3410
+ ```python
3411
+ rdagr2_biographicalInformation: Optional[List[edmlib.edm.value_types.Lit]]
3412
+ ```
3413
+
3414
+
3415
+
3416
+ <div class="docstring"><p>Mandate:
3417
+ optional</p>
3418
+
3419
+ <p>Cardinality:
3420
+ zero_to_many</p>
3421
+
3422
+ <p>Value-Type:
3423
+ Optional[List[Lit]]</p>
3424
+
3425
+ <p>Description: </p>
3426
+
3427
+ <p>Information pertaining to the life or history of the agent.<code>&lt;rdaGr2:biographicalInforma
3428
+ tion&gt;Courtois neveu aîné started a company of the same name manufacturing brass instru
3429
+ ments in Paris in 1803&lt;/rdaGr2:biographicalInformation&gt;</code></p>
3430
+ </div>
3431
+
3432
+ #### EDM_Agent.rdagr2_dateOfBirth
3433
+ ```python
3434
+ rdagr2_dateOfBirth: Optional[edmlib.edm.value_types.Lit]
3435
+ ```
3436
+
3437
+
3438
+
3439
+ <div class="docstring"><p>Mandate:
3440
+ recommended</p>
3441
+
3442
+ <p>Cardinality:
3443
+ zero_to_one</p>
3444
+
3445
+ <p>Value-Type:
3446
+ Optional[Lit]</p>
3447
+
3448
+ <p>Description: </p>
3449
+
3450
+ <p>The date the agent (person) was born. Europeana recommends date conforming to ISO 8601
3451
+ starting with the year and with hyphens (YYYY-MM-DD). This is a recommended property
3452
+ for this class.<code>&lt;rdaGr2:dateOfBirth&gt;1795&lt;/rdaGr2:dateOfBirth&gt;</code>dates.For recommendations
3453
+ on medata quality see Tier A-C requirements , more specifically Metadata Tier B and Me
3454
+ tadata Tier C</p>
3455
+ </div>
3456
+
3457
+ #### EDM_Agent.rdagr2_dateOfDeath
3458
+ ```python
3459
+ rdagr2_dateOfDeath: Optional[edmlib.edm.value_types.Lit]
3460
+ ```
3461
+
3462
+
3463
+
3464
+ <div class="docstring"><p>Mandate:
3465
+ recommended</p>
3466
+
3467
+ <p>Cardinality:
3468
+ zero_to_one</p>
3469
+
3470
+ <p>Value-Type:
3471
+ Optional[Lit]</p>
3472
+
3473
+ <p>Description: </p>
3474
+
3475
+ <p>The date the agent (person) died. Europeana recommends date conforming to ISO 8601 sta
3476
+ rting with the year and with hyphens (YYYY‐MM-DD). This is a recommended property for
3477
+ this class.<code>&lt;rdaGr2:dateOfDeath&gt;1895&lt;/rdaGr2:dateOfDeath&gt;</code>For recommendations on medata
3478
+ quality see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tie
3479
+ r C</p>
3480
+ </div>
3481
+
3482
+ #### EDM_Agent.rdagr2_dateOfEstablishment
3483
+ ```python
3484
+ rdagr2_dateOfEstablishment: Optional[edmlib.edm.value_types.Lit]
3485
+ ```
3486
+
3487
+
3488
+
3489
+ <div class="docstring"><p>Mandate:
3490
+ optional</p>
3491
+
3492
+ <p>Cardinality:
3493
+ zero_to_one</p>
3494
+
3495
+ <p>Value-Type:
3496
+ Optional[Lit]</p>
3497
+
3498
+ <p>Description: </p>
3499
+
3500
+ <p>The date on which the agent (corporate body) was established or founded.<code>&lt;rdaGr2:dateOf
3501
+ Establishment&gt;1795&lt;/rdaGr2:dateOfEstablishment&gt;</code></p>
3502
+ </div>
3503
+
3504
+ #### EDM_Agent.rdagr2_dateOfTermination
3505
+ ```python
3506
+ rdagr2_dateOfTermination: Optional[edmlib.edm.value_types.Lit]
3507
+ ```
3508
+
3509
+
3510
+
3511
+ <div class="docstring"><p>Mandate:
3512
+ optional</p>
3513
+
3514
+ <p>Cardinality:
3515
+ zero_to_one</p>
3516
+
3517
+ <p>Value-Type:
3518
+ Optional[Lit]</p>
3519
+
3520
+ <p>Description: </p>
3521
+
3522
+ <p>The date on which the agent (corporate body) was terminated or dissolved.<code>&lt;rdaGr2:dateO
3523
+ fTermination&gt;1895&lt;/rdaGr2:dateOfTermination&gt;</code></p>
3524
+ </div>
3525
+
3526
+ #### EDM_Agent.rdagr2_gender
3527
+ ```python
3528
+ rdagr2_gender: Optional[edmlib.edm.value_types.Lit]
3529
+ ```
3530
+
3531
+
3532
+
3533
+ <div class="docstring"><p>Mandate:
3534
+ optional</p>
3535
+
3536
+ <p>Cardinality:
3537
+ zero_to_one</p>
3538
+
3539
+ <p>Value-Type:
3540
+ Optional[Lit]</p>
3541
+
3542
+ <p>Description: </p>
3543
+
3544
+ <p>The gender with which the agent identifies.<code>&lt; rdaGr2:gender&gt;Female&lt;/rdaGr2:gender&gt;</code></p>
3545
+ </div>
3546
+
3547
+ #### EDM_Agent.rdagr2_placeOfBirth
3548
+ ```python
3549
+ rdagr2_placeOfBirth: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref, NoneType]
3550
+ ```
3551
+
3552
+
3553
+
3554
+ <div class="docstring"><p>Mandate:
3555
+ optional</p>
3556
+
3557
+ <p>Cardinality:
3558
+ zero_to_one</p>
3559
+
3560
+ <p>Value-Type:
3561
+ Optional[Union[Lit, Ref]]</p>
3562
+
3563
+ <p>Description: </p>
3564
+
3565
+ <p>The town, city, province, state, and/or country in which a person was born.<code>&lt;rdaGr2:pla
3566
+ ceOfBirth&gt;Lusaka, Northern Rhodesia&lt;/rdaGr2:placeOfBirth&gt;&lt;rdaGr2:placeOfBirth rdf:reso
3567
+ urce=”http://sws.geonames.org/909137/”/&gt;</code>For recommendations on medata quality see Tier
3568
+ A-C requirements , more specifically Metadata Tier B and Metadata Tier C</p>
3569
+ </div>
3570
+
3571
+ #### EDM_Agent.rdagr2_placeOfDeath
3572
+ ```python
3573
+ rdagr2_placeOfDeath: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref, NoneType]
3574
+ ```
3575
+
3576
+
3577
+
3578
+ <div class="docstring"><p>Mandate:
3579
+ optional</p>
3580
+
3581
+ <p>Cardinality:
3582
+ zero_to_one</p>
3583
+
3584
+ <p>Value-Type:
3585
+ Optional[Union[Lit, Ref]]</p>
3586
+
3587
+ <p>Description: </p>
3588
+
3589
+ <p>The town, city, province, state, and/or country in which a person died.<code>&lt;rdaGr2:placeOf
3590
+ Death&gt;London, United Kingdom&lt;/rdaGr2:placeOfDeath&gt;&lt;rdaGr2:placeOfDeath rdf:resource=“h
3591
+ ttp://sws.geonames.org/2635167/”/&gt;</code>For recommendations on medata quality see Tier A-C r
3592
+ equirements , more specifically Metadata Tier B and Metadata Tier C</p>
3593
+ </div>
3594
+
3595
+ #### EDM_Agent.rdagr2_professionOrOccupation
3596
+ ```python
3597
+ rdagr2_professionOrOccupation: Union[List[Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], List[edmlib.edm.value_types.Ref], List[edmlib.edm.value_types.Lit], NoneType]
3598
+ ```
3599
+
3600
+
3601
+
3602
+ <div class="docstring"><p>Mandate:
3603
+ optional</p>
3604
+
3605
+ <p>Cardinality:
3606
+ zero_to_many</p>
3607
+
3608
+ <p>Value-Type:
3609
+ Optional[MixedValuesList]</p>
3610
+
3611
+ <p>Description: </p>
3612
+
3613
+ <p>The profession or occupation in which the agent works or has worked.<code>&lt;rdaGr2:profession
3614
+ OrOccupation&gt;Instrument Maker&lt;/rdaGr2:professionOrOccupation&gt;</code></p>
3615
+ </div>
3616
+
3617
+ #### EDM_Agent.owl_sameAs
3618
+ ```python
3619
+ owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]
3620
+ ```
3621
+
3622
+
3623
+
3624
+ <div class="docstring"><p>Mandate:
3625
+ optional</p>
3626
+
3627
+ <p>Cardinality:
3628
+ zero_to_many</p>
3629
+
3630
+ <p>Value-Type:
3631
+ Optional[List[Ref]]</p>
3632
+
3633
+ <p>Description: </p>
3634
+
3635
+ <p>Another URI of the same agent.<code>&lt;owl:sameAs rdf:resource=“http://www.identifier/sameReso
3636
+ urceElsewhere”/&gt;</code></p>
3637
+ </div>
3638
+
3639
+ #### EDM_Agent.validate_skos_pref_label
3640
+ ```python
3641
+ @model_validator(mode='after') def validate_skos_pref_label(self) -> Self
3642
+ ```
3643
+
3644
+
3645
+
3646
+
3647
+
3648
+ #### EDM_Agent.model_config
3649
+ ```python
3650
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
3651
+ ```
3652
+
3653
+
3654
+
3655
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
3656
+ </div>
3657
+
3658
+
3659
+ ---
3660
+
3661
+ ---
3662
+ ### EDM_TimeSpan
3663
+ ```python
3664
+ class EDM_TimeSpan(edmlib.edm.base.EDM_BaseClass):
3665
+ ```
3666
+
3667
+
3668
+
3669
+ <div class="docstring"><p>optional-properties: SKOS_altLabel, SKOS_note, DCTERMS_hasPart, DCTERMS_isPartOf, EDM_isNextInSequence, OWL_sameAs</p>
3670
+
3671
+ <p>recommended-properties: SKOS_prefLabel, EDM_begin, EDM_end</p>
3672
+ </div>
3673
+
3674
+ #### EDM_TimeSpan.skos_prefLabel
3675
+ ```python
3676
+ skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]
3677
+ ```
3678
+
3679
+
3680
+
3681
+ <div class="docstring"><p>Mandate:
3682
+ recommended</p>
3683
+
3684
+ <p>Cardinality:
3685
+ zero_to_many</p>
3686
+
3687
+ <p>Value-Type:
3688
+ Optional[List[Lit]]</p>
3689
+
3690
+ <p>Description: </p>
3691
+
3692
+ <p>The preferred form of the name of the timespan or period. Although the maximum number
3693
+ of occurrences is set at 1, it can be interpreted as 1 per language tag. At least one
3694
+ skos:prefLabel SHOULD be provided. Several prefLabels with languages tags are strongly
3695
+ recommended for language variants andtranslations.<code>&lt;skos:prefLabel xml:lang=“en”&gt;Roman
3696
+ Empire&lt;/skos:prefLabel&gt;</code>This is a recommended property for this class.</p>
3697
+ </div>
3698
+
3699
+ #### EDM_TimeSpan.skos_altLabel
3700
+ ```python
3701
+ skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]
3702
+ ```
3703
+
3704
+
3705
+
3706
+ <div class="docstring"><p>Mandate:
3707
+ optional</p>
3708
+
3709
+ <p>Cardinality:
3710
+ zero_to_many</p>
3711
+
3712
+ <p>Value-Type:
3713
+ Optional[List[Lit]]</p>
3714
+
3715
+ <p>Description: </p>
3716
+
3717
+ <p>Alternative forms of the name of the timespan or period. <code>&lt;skos:altLabel xml:lang=''fr'
3718
+ '&gt;Empire romain (27 avant J.-­‐C.-­‐476 après J.-­C.)&lt;/skos:altLabel &gt;</code></p>
3719
+ </div>
3720
+
3721
+ #### EDM_TimeSpan.skos_note
3722
+ ```python
3723
+ skos_note: Optional[List[edmlib.edm.value_types.Lit]]
3724
+ ```
3725
+
3726
+
3727
+
3728
+ <div class="docstring"><p>Mandate:
3729
+ optional</p>
3730
+
3731
+ <p>Cardinality:
3732
+ zero_to_many</p>
3733
+
3734
+ <p>Value-Type:
3735
+ Optional[List[Lit]]</p>
3736
+
3737
+ <p>Description: </p>
3738
+
3739
+ <p>Information relating to the timespan or period.<code>&lt;skos:note&gt;The Roman Empire (Latin: Imp
3740
+ erium Romanum) was the post-­Republican period of the ancient Roman civilization, char
3741
+ acterised by an autocratic form of government and large territorial holdings around th
3742
+ e Mediterranean in Europe, Africa, and Asia.&lt;/skos:note&gt;</code></p>
3743
+ </div>
3744
+
3745
+ #### EDM_TimeSpan.dcterms_hasPart
3746
+ ```python
3747
+ dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]
3748
+ ```
3749
+
3750
+
3751
+
3752
+ <div class="docstring"><p>Mandate:
3753
+ optional</p>
3754
+
3755
+ <p>Cardinality:
3756
+ zero_to_many</p>
3757
+
3758
+ <p>Value-Type:
3759
+ Optional[List[Ref]]</p>
3760
+
3761
+ <p>Description: </p>
3762
+
3763
+ <p>Reference to a timespan which is part of the described timespan.</p>
3764
+ </div>
3765
+
3766
+ #### EDM_TimeSpan.dcterms_isPartOf
3767
+ ```python
3768
+ dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]
3769
+ ```
3770
+
3771
+
3772
+
3773
+ <div class="docstring"><p>Mandate:
3774
+ optional</p>
3775
+
3776
+ <p>Cardinality:
3777
+ zero_to_many</p>
3778
+
3779
+ <p>Value-Type:
3780
+ Optional[List[Ref]]</p>
3781
+
3782
+ <p>Description: </p>
3783
+
3784
+ <p>Reference to a timespan of which the described timespan is a part.</p>
3785
+ </div>
3786
+
3787
+ #### EDM_TimeSpan.edm_begin
3788
+ ```python
3789
+ edm_begin: Optional[edmlib.edm.value_types.Lit]
3790
+ ```
3791
+
3792
+
3793
+
3794
+ <div class="docstring"><p>Mandate:
3795
+ recommended</p>
3796
+
3797
+ <p>Cardinality:
3798
+ zero_to_one</p>
3799
+
3800
+ <p>Value-Type:
3801
+ Optional[Lit]</p>
3802
+
3803
+ <p>Description: </p>
3804
+
3805
+ <p>The date the timespan started. Europeana recommends date conforming to ISO 8601 starti
3806
+ ng with the year and with hyphens (YYYY-­MM-DD). Providing edm:begin in combination wi
3807
+ th edm:end is recommended for this class.Example 1: <code>&lt;edm:begin&gt;-0026&lt;/edm:begin&gt;</code>Exampl
3808
+ e:2: <edm:begin>27 BC</edm:begin>Note: '27 BC', while allowed, does not follow the abo
3809
+ ve recommendation.For recommendations on medata quality see Tier A-C requirements , mo
3810
+ re specifically Metadata Tier B and Metadata Tier C</p>
3811
+ </div>
3812
+
3813
+ #### EDM_TimeSpan.edm_end
3814
+ ```python
3815
+ edm_end: Optional[edmlib.edm.value_types.Lit]
3816
+ ```
3817
+
3818
+
3819
+
3820
+ <div class="docstring"><p>Mandate:
3821
+ recommended</p>
3822
+
3823
+ <p>Cardinality:
3824
+ zero_to_one</p>
3825
+
3826
+ <p>Value-Type:
3827
+ Optional[Lit]</p>
3828
+
3829
+ <p>Description: </p>
3830
+
3831
+ <p>The date the timespan finished. Europeana recommends date conforming to ISO 8601 start
3832
+ ing with the year and with hyphens (YYYY‐MM-DD). Providing edm:end in combination with
3833
+ edm:begin is recommended for this class.<code>&lt;edm:end&gt;1770&lt;/edm:end&gt;</code>For recommendations on
3834
+ medata quality see Tier A-C requirements , more specifically Metadata Tier B and Meta
3835
+ data Tier C</p>
3836
+ </div>
3837
+
3838
+ #### EDM_TimeSpan.edm_isNextInSequence
3839
+ ```python
3840
+ edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]
3841
+ ```
3842
+
3843
+
3844
+
3845
+ <div class="docstring"><p>Mandate:
3846
+ optional</p>
3847
+
3848
+ <p>Cardinality:
3849
+ zero_to_many</p>
3850
+
3851
+ <p>Value-Type:
3852
+ Optional[List[Ref]]</p>
3853
+
3854
+ <p>Description: </p>
3855
+
3856
+ <p>Can be used to represent a sequence of Time periods. Use this for objects that are par
3857
+ t of a hierarchy or sequence to ensure correct display in the portal.<code>&lt;edm:isNextInSequ
3858
+ ence rdf:resource=“http://semium.org/time/roman_republic”/&gt;</code> (The Roman Empire was prec
3859
+ eded by the Roman Republic)</p>
3860
+ </div>
3861
+
3862
+ #### EDM_TimeSpan.owl_sameAs
3863
+ ```python
3864
+ owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]
3865
+ ```
3866
+
3867
+
3868
+
3869
+ <div class="docstring"><p>Mandate:
3870
+ optional</p>
3871
+
3872
+ <p>Cardinality:
3873
+ zero_to_many</p>
3874
+
3875
+ <p>Value-Type:
3876
+ Optional[List[Ref]]</p>
3877
+
3878
+ <p>Description: </p>
3879
+
3880
+ <p>The URI of a timespan<code>&lt;owl:sameAs rdf:resource=“http://semium.org/time/roman_empire”/&gt;</code></p>
3881
+ </div>
3882
+
3883
+ #### EDM_TimeSpan.validate_skos_pref_label
3884
+ ```python
3885
+ @model_validator(mode='after') def validate_skos_pref_label(self) -> Self
3886
+ ```
3887
+
3888
+
3889
+
3890
+
3891
+
3892
+ #### EDM_TimeSpan.model_config
3893
+ ```python
3894
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
3895
+ ```
3896
+
3897
+
3898
+
3899
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
3900
+ </div>
3901
+
3902
+
3903
+ ---
3904
+
3905
+ ---
3906
+ ### EDM_Place
3907
+ ```python
3908
+ class EDM_Place(edmlib.edm.base.EDM_BaseClass):
3909
+ ```
3910
+
3911
+
3912
+
3913
+ <div class="docstring"><p>optional-properties: WGS84_POS_lat, WGS84_POS_long, WGS84_POS_alt, SKOS_prefLabel, SKOS_altLabel, SKOS_note, DCTERMS_hasPart, DCTERMS_isPartOf, EDM_isNextInSequence, OWL_sameAs</p>
3914
+ </div>
3915
+
3916
+ #### EDM_Place.wgs84_pos_lat
3917
+ ```python
3918
+ wgs84_pos_lat: Optional[edmlib.edm.value_types.Lit]
3919
+ ```
3920
+
3921
+
3922
+
3923
+ <div class="docstring"><p>Mandate:
3924
+ optional</p>
3925
+
3926
+ <p>Cardinality:
3927
+ zero_to_one</p>
3928
+
3929
+ <p>Value-Type:
3930
+ Optional[Lit]</p>
3931
+
3932
+ <p>Description: </p>
3933
+
3934
+ <p>The latitude of a spatial thing (decimal degrees). This is a recommended property for
3935
+ this class.<code>&lt;wgs84_pos:lat&gt;51.5075&lt;/wgs84_pos:lat&gt;</code>For recommendations on medata quality
3936
+ see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tier C</p>
3937
+ </div>
3938
+
3939
+ #### EDM_Place.wgs84_pos_long
3940
+ ```python
3941
+ wgs84_pos_long: Optional[edmlib.edm.value_types.Lit]
3942
+ ```
3943
+
3944
+
3945
+
3946
+ <div class="docstring"><p>Mandate:
3947
+ optional</p>
3948
+
3949
+ <p>Cardinality:
3950
+ zero_to_one</p>
3951
+
3952
+ <p>Value-Type:
3953
+ Optional[Lit]</p>
3954
+
3955
+ <p>Description: </p>
3956
+
3957
+ <p>The longitude of a spatial thing (decimal degrees). This is a recommended property for
3958
+ this class.<code>&lt;wgs84_pos:long&gt;-­‐0.1231&lt;/wgs84_pos:long&gt;</code>For recommendations on medata qu
3959
+ ality see Tier A-C requirements, more specifically Metadata Tier B and Metadata Tier C</p>
3960
+ </div>
3961
+
3962
+ #### EDM_Place.wgs84_pos_alt
3963
+ ```python
3964
+ wgs84_pos_alt: Optional[edmlib.edm.value_types.Lit]
3965
+ ```
3966
+
3967
+
3968
+
3969
+ <div class="docstring"><p>Mandate:
3970
+ optional</p>
3971
+
3972
+ <p>Cardinality:
3973
+ zero_to_one</p>
3974
+
3975
+ <p>Value-Type:
3976
+ Optional[Lit]</p>
3977
+
3978
+ <p>Description: </p>
3979
+
3980
+ <p>The altitude of a spatial thing (decimal metres above the reference)<code>&lt;wgs84_pos:alt&gt;21&lt;
3981
+ /wgs84_pos:alt&gt;</code></p>
3982
+ </div>
3983
+
3984
+ #### EDM_Place.skos_prefLabel
3985
+ ```python
3986
+ skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]
3987
+ ```
3988
+
3989
+
3990
+
3991
+ <div class="docstring"><p>Mandate:
3992
+ optional</p>
3993
+
3994
+ <p>Cardinality:
3995
+ zero_to_one</p>
3996
+
3997
+ <p>Value-Type:
3998
+ Optional[List[Lit]]</p>
3999
+
4000
+ <p>Description: </p>
4001
+
4002
+ <p>The preferred form of the name of the place. Although the maximum number of occurrence
4003
+ s is set at 1, it can be interpreted as 1 per language tag. At least one skos:prefLabe
4004
+ l SHOULD be provided. Several prefLabels with languages tags are strongly recommended
4005
+ for language variants and translations.<code>&lt;skos:prefLabel xml:lang="en"&gt;London&lt;/skos:pref
4006
+ Label&gt;</code>For recommendations on medata quality see Tier A-C requirements , more specifica
4007
+ lly Metadata Tier B and Metadata Tier C</p>
4008
+ </div>
4009
+
4010
+ #### EDM_Place.skos_altLabel
4011
+ ```python
4012
+ skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]
4013
+ ```
4014
+
4015
+
4016
+
4017
+ <div class="docstring"><p>Mandate:
4018
+ optional</p>
4019
+
4020
+ <p>Cardinality:
4021
+ zero_to_many</p>
4022
+
4023
+ <p>Value-Type:
4024
+ Optional[List[Lit]]</p>
4025
+
4026
+ <p>Description: </p>
4027
+
4028
+ <p>Alternative forms of the name of the place.<code>&lt;skos:altLabel xml:lang="en"&gt;Greater London
4029
+ &lt;/skos:altLabel&gt;</code></p>
4030
+ </div>
4031
+
4032
+ #### EDM_Place.skos_note
4033
+ ```python
4034
+ skos_note: Optional[List[edmlib.edm.value_types.Lit]]
4035
+ ```
4036
+
4037
+
4038
+
4039
+ <div class="docstring"><p>Mandate:
4040
+ optional</p>
4041
+
4042
+ <p>Cardinality:
4043
+ zero_to_many</p>
4044
+
4045
+ <p>Value-Type:
4046
+ Optional[List[Lit]]</p>
4047
+
4048
+ <p>Description: </p>
4049
+
4050
+ <p>Information relating to the place.<code>&lt;skos:note xml:lang="en"&gt;Pop. 21m&lt;/skos:note&gt;</code></p>
4051
+ </div>
4052
+
4053
+ #### EDM_Place.dcterms_hasPart
4054
+ ```python
4055
+ dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]
4056
+ ```
4057
+
4058
+
4059
+
4060
+ <div class="docstring"><p>Mandate:
4061
+ optional</p>
4062
+
4063
+ <p>Cardinality:
4064
+ zero_to_many</p>
4065
+
4066
+ <p>Value-Type:
4067
+ Optional[List[Ref]]</p>
4068
+
4069
+ <p>Description: </p>
4070
+
4071
+ <p>Reference to a place that is part of the place being described.<code>&lt;dcterms:hasPart rdf:re
4072
+ source=“http://sws.geonames.org/2643741/”/&gt;</code> (City of London)</p>
4073
+ </div>
4074
+
4075
+ #### EDM_Place.dcterms_isPartOf
4076
+ ```python
4077
+ dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]
4078
+ ```
4079
+
4080
+
4081
+
4082
+ <div class="docstring"><p>Mandate:
4083
+ optional</p>
4084
+
4085
+ <p>Cardinality:
4086
+ zero_to_many</p>
4087
+
4088
+ <p>Value-Type:
4089
+ Optional[List[Ref]]</p>
4090
+
4091
+ <p>Description: </p>
4092
+
4093
+ <p>Reference to a place that the described place is part of.<code>&lt;dcterms:isPartOf rdf:resourc
4094
+ e=“http://sws.geonames.org/2635167/”/&gt;</code> (United Kingdom)</p>
4095
+ </div>
4096
+
4097
+ #### EDM_Place.edm_isNextInSequence
4098
+ ```python
4099
+ edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]
4100
+ ```
4101
+
4102
+
4103
+
4104
+ <div class="docstring"><p>Mandate:
4105
+ optional</p>
4106
+
4107
+ <p>Cardinality:
4108
+ zero_to_many</p>
4109
+
4110
+ <p>Value-Type:
4111
+ Optional[List[Ref]]</p>
4112
+
4113
+ <p>Description: </p>
4114
+
4115
+ <p>Can be used to represent a sequence of Place entities over time e.g. the historical la
4116
+ yers of the city of Troy. Use this for objects that are part of a hierarchy or sequenc
4117
+ e to ensure correct display in the portal.</p>
4118
+ </div>
4119
+
4120
+ #### EDM_Place.owl_sameAs
4121
+ ```python
4122
+ owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]
4123
+ ```
4124
+
4125
+
4126
+
4127
+ <div class="docstring"><p>Mandate:
4128
+ optional</p>
4129
+
4130
+ <p>Cardinality:
4131
+ zero_to_many</p>
4132
+
4133
+ <p>Value-Type:
4134
+ Optional[List[Ref]]</p>
4135
+
4136
+ <p>Description: </p>
4137
+
4138
+ <p>URI of a Place<code>&lt;owl:sameAs rdf:resource=“http://sws.geonames.org/2635167/”/&gt;</code>(London)</p>
4139
+ </div>
4140
+
4141
+ #### EDM_Place.validate_skos_pref_label
4142
+ ```python
4143
+ @model_validator(mode='after') def validate_skos_pref_label(self) -> Self
4144
+ ```
4145
+
4146
+
4147
+
4148
+
4149
+
4150
+ #### EDM_Place.model_config
4151
+ ```python
4152
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
4153
+ ```
4154
+
4155
+
4156
+
4157
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
4158
+ </div>
4159
+
4160
+
4161
+ ---
4162
+
4163
+ ---
4164
+ ### SVCS_Service
4165
+ ```python
4166
+ class SVCS_Service(edmlib.edm.base.EDM_BaseClass):
4167
+ ```
4168
+
4169
+
4170
+
4171
+ <div class="docstring"><p>(Manually copied)</p>
4172
+
4173
+ <p>Optional-Properties:
4174
+ dcterms_conformsTo, doap_implements</p>
4175
+
4176
+ <p>Mandatory-Properties: None
4177
+ Recommended-Proeprties: None</p>
4178
+
4179
+ <p>Definition:
4180
+ An established standard to which the web resource or service conforms.
4181
+ W3C WCAG 2.0 (web content accessibility guidelines).
4182
+ If the Service describes a IIIF resource, dcterms:conformsTo must be used
4183
+ to describe the IIIF protocol the resource is conforming to.</p>
4184
+
4185
+ <p>Example:
4186
+ <code>&lt;dcterms:conformsTo rdf:resource="http://iiif.io/api/image"/&gt;</code></p>
4187
+ </div>
4188
+
4189
+ #### SVCS_Service.dcterms_conformsTo
4190
+ ```python
4191
+ dcterms_conformsTo: Optional[List[edmlib.edm.value_types.Ref]]
4192
+ ```
4193
+
4194
+
4195
+
4196
+ <div class="docstring"><p>Mandate:
4197
+ Optional</p>
4198
+
4199
+ <p>Definition:
4200
+ An established standard to which the web resource or service conforms.
4201
+ W3C WCAG 2.0 (web content accessibility guidelines). If the Service describes
4202
+ a IIIF resource, dcterms:conformsTo must be used to describe the IIIF protocol
4203
+ the resource is conforming to.</p>
4204
+
4205
+ <p>Example:
4206
+ <code>&lt;dcterms:conformsTo rdf:resource="http://iiif.io/api/image"/&gt;</code></p>
4207
+ </div>
4208
+
4209
+ #### SVCS_Service.doap_implements
4210
+ ```python
4211
+ doap_implements: Optional[edmlib.edm.value_types.Ref]
4212
+ ```
4213
+
4214
+
4215
+
4216
+ <div class="docstring"><p>Mandate:
4217
+ Optional</p>
4218
+
4219
+ <p>Definition:
4220
+ A specification that a project implements. Could be a standard, API or legally defined level of conformance.
4221
+ In IIIF doap:implements refers to the the protocol implemented in IIIF.</p>
4222
+
4223
+ <p>Example:
4224
+ <code>&lt;doap:implements rdf:resource="http://iiif.io/api/image/2/level1.json"/&gt;</code></p>
4225
+ </div>
4226
+
4227
+ #### SVCS_Service.model_config
4228
+ ```python
4229
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
4230
+ ```
4231
+
4232
+
4233
+
4234
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
4235
+ </div>
4236
+
4237
+
4238
+ ---
4239
+
4240
+ ### MixedValuesList
4241
+ ```python
4242
+ MixedValuesList = typing.Union[typing.List[typing.Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]], typing.List[edmlib.edm.value_types.Ref], typing.List[edmlib.edm.value_types.Lit]]
4243
+ ```
4244
+
4245
+
4246
+
4247
+
4248
+
4249
+ ---
4250
+ ### EDM_Parser
4251
+ ```python
4252
+ class EDM_Parser:
4253
+ ```
4254
+
4255
+
4256
+
4257
+ <div class="docstring"><p>Parser for edm-xml records. Returns an edm_python.edm.EDM_Record object.</p>
4258
+ </div>
4259
+
4260
+ #### EDM_Parser.__init__
4261
+ ```python
4262
+ EDM_Parser(graph: rdflib.graph.Graph)
4263
+ ```
4264
+
4265
+
4266
+
4267
+
4268
+
4269
+ #### EDM_Parser.from_file
4270
+ ```python
4271
+ @classmethod def from_file(cls, path: str, format: str = 'xml') -> Self
4272
+ ```
4273
+
4274
+
4275
+
4276
+
4277
+
4278
+ #### EDM_Parser.from_string
4279
+ ```python
4280
+ @classmethod def from_string(cls, content: str, format: str = 'xml') -> Self
4281
+ ```
4282
+
4283
+
4284
+
4285
+
4286
+
4287
+ #### EDM_Parser.graph
4288
+ ```python
4289
+ graph: rdflib.graph.Graph
4290
+ ```
4291
+
4292
+
4293
+
4294
+
4295
+
4296
+ #### EDM_Parser.get_single_ref
4297
+ ```python
4298
+ def get_single_ref(self, obj_cls: object) -> rdflib.term.URIRef
4299
+ ```
4300
+
4301
+
4302
+
4303
+ <div class="docstring"><p>Loooks up instances of a given obj_cls (a edm_python edm-class) and returns
4304
+ a single IRI.
4305
+ This method expects that the cardinality of the obj_cls is one per record.</p>
4306
+ </div>
4307
+
4308
+ #### EDM_Parser.get_many_ref
4309
+ ```python
4310
+ def get_many_ref(self, obj_cls: object) -> List[rdflib.term.URIRef]
4311
+ ```
4312
+
4313
+
4314
+
4315
+ <div class="docstring"><p>Loooks up instances of a given obj_cls (a edm_python edm-class) and returns
4316
+ a list of instance-IRIs.
4317
+ This method expects that the cardinality of the obj_cls is one or more.</p>
4318
+ </div>
4319
+
4320
+ #### EDM_Parser.get_triples
4321
+ ```python
4322
+ def get_triples(self, ref: rdflib.term.URIRef)
4323
+ ```
4324
+
4325
+
4326
+
4327
+ <div class="docstring"><p>Return all predicate-object triples for a given URIRef within the instance`s-graph.</p>
4328
+ </div>
4329
+
4330
+ #### EDM_Parser.get_aggregation
4331
+ ```python
4332
+ def get_aggregation(self)
4333
+ ```
4334
+
4335
+
4336
+
4337
+
4338
+
4339
+ #### EDM_Parser.get_webresources
4340
+ ```python
4341
+ def get_webresources(self) -> list[typing.Any]
4342
+ ```
4343
+
4344
+
4345
+
4346
+
4347
+
4348
+ #### EDM_Parser.get_instance_triples
4349
+ ```python
4350
+ def get_instance_triples(self, instance: rdflib.term.URIRef, cls_obj: object) -> Dict[str, Any]
4351
+ ```
4352
+
4353
+
4354
+
4355
+
4356
+
4357
+ #### EDM_Parser.parse_single_class
4358
+ ```python
4359
+ def parse_single_class(self, cls_obj: object) -> Any
4360
+ ```
4361
+
4362
+
4363
+
4364
+
4365
+
4366
+ #### EDM_Parser.parse_many_class
4367
+ ```python
4368
+ def parse_many_class(self, cls_obj: Any) -> List[Any]
4369
+ ```
4370
+
4371
+
4372
+
4373
+
4374
+
4375
+ #### EDM_Parser.parse
4376
+ ```python
4377
+ def parse(self) -> edmlib.edm.record.EDM_Record
4378
+ ```
4379
+
4380
+
4381
+
4382
+
4383
+
4384
+
4385
+ ---
4386
+
4387
+ ---
4388
+ ### Ref
4389
+ ```python
4390
+ class Ref(pydantic.main.BaseModel):
4391
+ ```
4392
+
4393
+
4394
+
4395
+ <div class="docstring"><p>About IRIs (from the rdflib.URIRef docstring):</p>
4396
+
4397
+ <p>RDF 1.1's IRI Section <a href="https://www.w3.org/TR/rdf11-concepts/#section-IRIs">https://www.w3.org/TR/rdf11-concepts/#section-IRIs</a>
4398
+ An IRI (Internationalized Resource Identifier) within an RDF graph is a Unicode string that conforms to the syntax defined in RFC 3987.
4399
+ IRIs in the RDF abstract syntax MUST be absolute, and MAY contain a fragment identifier.
4400
+ IRIs are a generalization of URIs [RFC3986] that permits a wider range of Unicode characters.</p>
4401
+ </div>
4402
+
4403
+ #### Ref.value
4404
+ ```python
4405
+ value: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=None, pattern=None)]
4406
+ ```
4407
+
4408
+
4409
+
4410
+
4411
+
4412
+ #### Ref.is_ref
4413
+ ```python
4414
+ is_ref: bool
4415
+ ```
4416
+
4417
+
4418
+
4419
+
4420
+
4421
+ #### Ref.validate_value_as_uri
4422
+ ```python
4423
+ @field_validator('value') @classmethod def validate_value_as_uri(cls, value: str)
4424
+ ```
4425
+
4426
+
4427
+
4428
+
4429
+
4430
+ #### Ref.to_rdflib
4431
+ ```python
4432
+ def to_rdflib(self)
4433
+ ```
4434
+
4435
+
4436
+
4437
+ <div class="docstring"><p>Helper to convert this custom type to the rdflib equivalent
4438
+ Used in the graph serialization of the EDM_Base-Class</p>
4439
+ </div>
4440
+
4441
+ #### Ref.model_config
4442
+ ```python
4443
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
4444
+ ```
4445
+
4446
+
4447
+
4448
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
4449
+ </div>
4450
+
4451
+
4452
+ ---
4453
+
4454
+ ---
4455
+ ### Lit
4456
+ ```python
4457
+ class Lit(pydantic.main.BaseModel):
4458
+ ```
4459
+
4460
+
4461
+
4462
+ <div class="docstring"><p>Overrides the RDFLib Literal with a custom class, so that it is serializable in pydantic model.
4463
+ For the same reason, it uses the same attribute names.
4464
+ Ignore the normalize attribute, it is just added for completeness.</p>
4465
+ </div>
4466
+
4467
+ #### Lit.value
4468
+ ```python
4469
+ value: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=None, pattern=None)]
4470
+ ```
4471
+
4472
+
4473
+
4474
+
4475
+
4476
+ #### Lit.lang
4477
+ ```python
4478
+ lang: Optional[str]
4479
+ ```
4480
+
4481
+
4482
+
4483
+
4484
+
4485
+ #### Lit.datatype
4486
+ ```python
4487
+ datatype: Optional[str]
4488
+ ```
4489
+
4490
+
4491
+
4492
+
4493
+
4494
+ #### Lit.normalize
4495
+ ```python
4496
+ normalize: Optional[bool]
4497
+ ```
4498
+
4499
+
4500
+
4501
+
4502
+
4503
+ #### Lit.validate_consistency
4504
+ ```python
4505
+ @model_validator(mode='after') def validate_consistency(self) -> Self
4506
+ ```
4507
+
4508
+
4509
+
4510
+ <div class="docstring"><p>Checks that literal either has a lang_tag or a datatype, not both.</p>
4511
+ </div>
4512
+
4513
+ #### Lit.to_rdflib
4514
+ ```python
4515
+ def to_rdflib(self)
4516
+ ```
4517
+
4518
+
4519
+
4520
+ <div class="docstring"><p>Helper to convert this custom type to the rdflib equivalent
4521
+ Used in the graph serialization of the EDM_Base-Class</p>
4522
+ </div>
4523
+
4524
+ #### Lit.model_config
4525
+ ```python
4526
+ model_config: ClassVar[pydantic.config.ConfigDict] = {}
4527
+ ```
4528
+
4529
+
4530
+
4531
+ <div class="docstring"><p>Configuration for the model, should be a dictionary conforming to [<code>ConfigDict</code>][pydantic.config.ConfigDict].</p>
4532
+ </div>
4533
+
4534
+
4535
+ ---
4536
+
4537
+ <!--pdoc-end-->