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.
- This library is developed in the context of Kulturpool and is not affiliated with, endorsed by, or directly connected to Europeana.
- Compared to the official EDM standard, there are some minor deviations:
- The fields
dc:identifier,edm:isShownBy, andedm:isShownAtare mandatory.
- The fields
- Validation: Built-in validation for EDM record structure and property constraints
- Type-safe EDM: All EDM classes implemented as Pydantic models
- XML/RDF parsing: Parse EDM records from XML or RDF formats
- RDF serialization: Export EDM records back to RDF formats
EDM specifications are encapsulated in EDM_Record. All data is validated at instantiation, ensuring compliance with EDM.
from edmlib import EDM_Parser
# Parse from string
record = EDM_Parser.from_string("""<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ore="http://www.openarchives.org/ore/terms/"
xmlns:edm="http://www.europeana.eu/schemas/edm/"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<edm:ProvidedCHO
rdf:about="http://uri.test/edm123#CHO">
<dc:type xml:lang="en">Text</dc:type>
<dc:title xml:lang="de">Titel</dc:title>
<dc:identifier>123</dc:identifier>
<dc:language>de</dc:language>
<edm:type>TEXT</edm:type>
</edm:ProvidedCHO>
<ore:Aggregation
rdf:about="http://uri.test/edm123#Aggregation">
<edm:aggregatedCHO
rdf:resource="http://uri.test/edm123#CHO" />
<edm:dataProvider>Test</edm:dataProvider>
<edm:isShownAt
rdf:resource="http://uri.test/edm123.jpg" />
<edm:isShownBy
rdf:resource="http://uri.test/edm123.jpg" />
<edm:provider>Kulturpool</edm:provider>
<edm:rights rdf:resource="http://creativecommons.org/licenses/by-nc-sa/4.0/" />
</ore:Aggregation>
</rdf:RDF>
""").parse()
# Parse from file
record = EDM_Parser.from_file("edm_record.xml").parse()
# Parse other formats
record = EDM_Parser.from_file("edm_record.ttl", format="ttl").parse()from edmlib import EDM_Record, EDM_ProvidedCHO, ORE_Aggregation, Ref, Lit
record = EDM_Record(
provided_cho=EDM_ProvidedCHO(
id=Ref(value="http://uri.test/edm123#CHO"),
dc_type=[Lit(value="Text", lang="en")],
dc_title=[Lit(value="Titel", lang="de")],
dc_identifier=[Lit(value="123")],
dc_language=[Lit(value="de")],
edm_type=Lit(value="TEXT")
),
aggregation=ORE_Aggregation(
id=Ref(value="http://uri.test/edm123#Aggregation"),
edm_aggregatedCHO=Ref(value="http://uri.test/edm123#CHO"),
edm_dataProvider=Lit(value="Test"),
edm_isShownAt=Ref(value="http://uri.test/edm123.jpg"),
edm_isShownBy=Ref(value="http://uri.test/edm123.jpg"),
edm_provider=Lit(value="Kulturpool"),
edm_rights=Ref(value="http://creativecommons.org/licenses/by-nc-sa/4.0/")
)
)from edmlib import EDM_ProvidedCHO, ORE_Aggregation, EDM_WebResource, EDM_Agent, EDM_Place, EDM_TimeSpan, SKOS_Concept, CC_License, SVCS_Service
# Access record components
assert record.provided_cho.id == Ref(value="http://uri.test/edm123#CHO")
assert record.aggregation.id == Ref(value="http://uri.test/edm123#Aggregation")Multiple serialization formats for exporting EDM records are supported:
# Pretty-XML format
xml_str = record.serialize()
# JSON-LD format
jsonld_str = record.serialize(format="json-ld")All rdflib graph serialization formats are supported, including XML, Turtle (TTL), and others.
EDM_ProvidedCHO- Cultural Heritage Object (CHO)ORE_Aggregation- Resource aggregationEDM_WebResource- Web resourcesEDM_Agent- Agents (persons, organizations)EDM_Place- Places and locationsEDM_TimeSpan- Time periodsSKOS_Concept- Concepts and classificationsCC_License- Creative Commons licensesSVCS_Service- SIOC Services
assert isinstance( record.provided_cho, EDM_ProvidedCHO)
assert isinstance( record.aggregation, ORE_Aggregation)
assert isinstance(next(iter(record.web_resource)), EDM_WebResource) # optional
assert isinstance(next(iter(record.skos_concept)), SKOS_Concept) # optional
assert isinstance(next(iter(record.edm_agent)), EDM_Agent) # optional
assert isinstance(next(iter(record.edm_time_span)), EDM_TimeSpan) # optional
assert isinstance(next(iter(record.edm_place)), EDM_Place) # optional
assert isinstance(next(iter(record.cc_license)), CC_License) # optional
assert isinstance(next(iter(record.svcs_service)), SVCS_Service) # optional# Clone repository
git clone <repository-url>
cd edmlib
# Install dependencies
poetry install
# Run tests
pytest .
# Generate API Documentation
poetry run update-api-docs- Python >=3.10,<4.0.0
- Dependencies:
- rdflib ^7.0.0
- lxml ^5.1.0
- pydantic ^2.10.3
- pyld ^2.0.3
- requests ^2.32.3
-
- provided_cho
- aggregation
- web_resource
- skos_concept
- edm_agent
- edm_time_span
- edm_place
- cc_license
- svcs_service
- get_rdf_graph
- serialize
- get_framed_json_ld
- validate_provided_cho_identity
- fetch_edm_isShownBy_head
- has_edm_object
- fetch_edm_object_head
- has_edm_hasView
- fetch_edm_hasView_heads
- fetch_edm_isShownAt_head
- model_config
-
- edm_type
- dc_contributor
- dc_coverage
- dc_creator
- dc_date
- dc_description
- dc_format
- dc_identifier
- dc_language
- dc_publisher
- dc_relation
- dc_rights
- dc_source
- dc_subject
- dc_title
- dc_type
- dcterms_alternative
- dcterms_conformsTo
- dcterms_created
- dcterms_extent
- dcterms_hasFormat
- dcterms_hasPart
- dcterms_hasVersion
- dcterms_isFormatOf
- dcterms_isPartOf
- dcterms_isReferencedBy
- dcterms_isReplacedBy
- dcterms_isRequiredBy
- dcterms_issued
- dcterms_isVersionOf
- dcterms_medium
- dcterms_provenance
- dcterms_references
- dcterms_replaces
- dcterms_requires
- dcterms_spatial
- dcterms_tableOfContents
- dcterms_temporal
- edm_currentLocation
- edm_hasMet
- edm_hasType
- edm_incorporates
- edm_isDerivativeOf
- edm_isNextInSequence
- edm_isRelatedTo
- edm_isRepresentationOf
- edm_isSimilarTo
- edm_isSuccessorOf
- edm_realizes
- owl_sameAs
- validate_dependent_edm
- model_config
-
- skos_prefLabel
- skos_altLabel
- skos_note
- dc_date
- dc_identifier
- dcterms_hasPart
- dcterms_isPartOf
- edm_begin
- edm_end
- edm_hasMet
- edm_isRelatedTo
- foaf_name
- rdagr2_biographicalInformation
- rdagr2_dateOfBirth
- rdagr2_dateOfDeath
- rdagr2_dateOfEstablishment
- rdagr2_dateOfTermination
- rdagr2_gender
- rdagr2_placeOfBirth
- rdagr2_placeOfDeath
- rdagr2_professionOrOccupation
- owl_sameAs
- validate_skos_pref_label
- model_config
class EDM_Record(pydantic.main.BaseModel):Pydantic model representing an edm record, as a fully typed structure. All contained non-standard types are themselves BaseModels, and the fields are always also either BaseModels or standard-types. This ensures that without further conversion, an instance of this class can be dumped as a dict (or json) and restored from such a dict (or json).
Validation: This model is responsible for validating the overall structure, order and completeness of the record. The individual models for each of its properties are responsible for validating their own attributes – their completeness, cardinality and structure. Finally, the special type models - Ref and Lit - within those container types are responsible for validating the indiviudal values.
provided_cho: edmlib.edm.classes.core.EDM_ProvidedCHOaggregation: edmlib.edm.classes.core.ORE_Aggregationweb_resource: Optional[List[edmlib.edm.classes.core.EDM_WebResource]]skos_concept: Optional[List[edmlib.edm.classes.context.SKOS_Concept]]edm_agent: Optional[List[edmlib.edm.classes.context.EDM_Agent]]edm_time_span: Optional[List[edmlib.edm.classes.context.EDM_TimeSpan]]edm_place: Optional[List[edmlib.edm.classes.context.EDM_Place]]cc_license: Optional[List[edmlib.edm.classes.context.CC_License]]svcs_service: Optional[List[edmlib.edm.classes.service.SVCS_Service]]def get_rdf_graph(self)Return whole record as as an RDF - rdflib.Graph object.
def serialize(self, format: str = 'pretty-xml', max_depth: int = 1) -> strSerialize graph to rdf/xml with pretty-formatting.
def get_framed_json_ld(self)@model_validator(mode='after') def validate_provided_cho_identity(self) -> Selfdef fetch_edm_isShownBy_head(self, **kwargs) -> requests.models.Responsedef has_edm_object(self) -> booldef fetch_edm_object_head(self, **kwargs) -> requests.models.Responsedef has_edm_hasView(self) -> booldef fetch_edm_hasView_heads(self, **kwargs) -> list[requests.models.Response]def fetch_edm_isShownAt_head(self, **kwargs) -> requests.models.Responsemodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class EDM_ProvidedCHO(edmlib.edm.base.EDM_BaseClass):mandatory-properties: DC_description, DC_language, DC_subject, DC_title, DC_type, DCTERMS_spatial, DCTERMS_temporal, EDM_type
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
recommended-properties: DC_contributor, DC_creator, DC_date, DC_identifier, DC_publisher, DC_source, DCTERMS_alternative, DCTERMS_created, DCTERMS_isPartOf, DCTERMS_issued, EDM_IsNextInSequence
edm_type: edmlib.edm.value_types.LitMandate: mandatory
Cardinality: exactly_one
Value-Type: Lit
Description:
The value must be one of the types accepted by Europeana as it will support portal fun
ctionality: TEXT, VIDEO, SOUND, IMAGE, 3D. (For 3D, when applicable, use the value “3D
‐PDF” in dc:format ) <edm:type>IMAGE</edm:type> (upper-case & case sensitive) <edm:ty
pe>3D</edm:type> (upper-case & case sensitive)
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use for contributors to the CHO. If possible supply the identifier of the contributor
from an authority source. Providers with richer role terms can elect to map a subset t
o dc:contributor and others to dc:creator. Repeat for multiple contributors. <dc:contr
ibutor>Maria Callas</dc:contributor> or create a reference to an instance of the Agent
class <dc:contributor rdf:resource=“http://www.example.com/MariaCallas”>For recommend
ations on medata quality see Tier A-C requirements ,
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The spatial or temporal topic of the CHO. Use the more precise dcterms:spatial or dcte
rms:temporal properties if the data will support it. <dc:coverage>1995-1996</dc:cover
age> or <dc:coverage>Berlin</dc:coverage> or create a reference to an instance of a co
ntextual class, for example, a Place class <dc:coverage rdf:resource=“https://sws.geon
ames.org/2950159/ ”/>
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
For the creator of the CHO. If possible supply the identifier of the creator from an a
uthority source. Repeat for multiple creators. <dc:creator>Shakespeare, William</dc:c
reator> or create a reference to an instance of the Agent class <dc:creator rdf:resour
ce=“http://viaf.org/viaf/96994048”/>For recommendations on medata quality see Tier A-C
requirements .
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use for a significant date in the life of the CHO. Europeana recommends date conformi
ng to ISO 8601 starting with the year and with hyphens (YYYY-MM-DD). NB: other EDM el
ements are relevant for expressing dates of different events in the life of the CHO: d
cterms:temporal, dcterms:created and dcterms:issued. Be careful and choose the most ap
propriate one! <dc:date>Early 20th century</dc:date> or <dc:date>1919</dc:date> or cre
ate a reference to an instance of the TimeSpan class <dc:date rdf:resource=“http://sem
ium.org/time/19xx_1_third”/>
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]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A description of the CHO. If there is no dc:description for an object, there must be a
dc:title. If both are available, provide both. <dc:description>Illustrated guide to
airport markings and lighting signals, with particular reference to SMGCS (Surface Mo
vement Guidance and Control System) for airports with low visibility conditions.</dc:d
escription>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use for the terms generally applied to indicate the format of the cultural heritage ob
ject or the file format of a born digital object. Use the value “3D-PDF” if appropria
te. <dc:format>paper</dc:format>For recommendations on medata quality see Tier A-C req
uirements .
dc_identifier: List[edmlib.edm.value_types.Lit]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
An identifier of the original CHO. <dc:identifier>RP-T-1952-380</dc:identifier>
dc_language: Optional[List[edmlib.edm.value_types.Lit]]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
The language of text CHOs and also for other types of CHO if there is a language aspec t. Mandatory for TEXT objects, strongly recommended for other object types with a lang uage element. Best practice is to use ISO 639 two- or three-letter primary language ta gs.Repeat for multiple languages. We also recommend the use of the ISO 639-2 code for no linguistic content (ZXX).
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The name of the publisher of the CHO. If possible supply the identifier of the publish
er from an authority source. <dc:publisher>Oxford University Press</dc:publisher> or c
reate a reference to an instance of the Agent class <dc:publisher rdf:resource=“http:/
/www.oup.com/”/>For recommendations on medata quality see Tier A-C requirements .
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The name or identifier of a related resource, generally used for other related CHOs. C
f edm:isRelatedTo. <dc:relation>maps.crace.1/33</dc:relation> (Shelf mark) Or to provi
de a link to another object: <dc:relation rdf:resource=“http://www.identifier/relatedO
bject”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use to give the name of the rights holder of the CHO if possible or for more general r
ights information. (Note that the controlled edm:rights property relates to the digita
l objects and applies to the edm:WebResource and/or edm:Aggregation). <dc:rights>Copyr
ight © British Library Board</dc:rights>
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A related resource from which the described resource is derived in whole or in part i.
e. the source of the original CHO. (Not the name of the content holder: for this see
edm:dataProvider.) <dc:source>Security Magazine pp 3-12</dc:source>
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]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The subject of the CHO.One of dc:subject or dc:type or dcterms:spatial or dcterms:temp
oral must be provided; if more than one of these properties is available, please prov
ide them all. High-level dc:subject values like 'archaeology' are allowed, especiall
y when there is no other subject that can be easily filled in. <dc:subject>archeology<
/dc:subject>or create a reference to an instance of the Concept class <skos:Concept rd
f:about="http://semantics.gr/authorities/ekt-unesco/560215094"> <skos:prefLabel xml:
lang="el">Αρχαιολογία</skos:prefLabel> <skos:prefLabel xml:lang="en">Archaeology</sk
os:prefLabel></skos:Concept>For recommendations on medata quality see Tier A-C require
ments .
dc_title: Optional[List[edmlib.edm.value_types.Lit]]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
A name given to the CHO. dc:title should be present; but if there is no dc:title avail
able, it is acceptable to have dc:description instead. dc:title and dc:description sho
uld be distinct. Exact translations of the title can be provided using appropriate xm
l language attributes. <dc:title xml:lang=“en”>Eight Weeks</dc:title> <dc:title xml:la
ng=“it”>Ocho semanas</ dc:title>
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]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The nature or genre of the CHO. Ideally the term(s) will be taken from a controlled vo
cabulary. One of dc:type or dc:subject or dcterms:spatial or dcterms:temporal must be
provided; if more than one of these properties is available, please provide them all.
dc:type should not be (strictly) identical to edm:type. <dc:type>Book</dc:type> or <dc
:type>trombone</dc:type> or create a reference to an instance of the Concept class <dc
:type rdf:resource=“http://www.mimo-db.eu/HornbostelAndSachs/356/”>For recommendation
s on medata quality see Tier A-C requirements .
dcterms_alternative: Optional[List[edmlib.edm.value_types.Lit]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Any alternative title of the CHO including abbreviations or translations that may not
be exact. <dcterms:alternativexml:lang=“en”>Eight weeks: a novel</dcterms:alternative>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
An established standard to which the CHO conforms. <dcterms:conformsTo>W3C WCAG 2.0</d
cterms:conformsTo> (conforms to web content accessibility guidelines). Or link to the
resource <dcterms:conformsTo rdf:resource=“http://www.w3.org/TR/WCAG/”/>
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The date of creation of the CHO. Europeana recommends date conforming to ISO 8601 star
ting with the year and with hyphens (YYYY-MM-DD). NB: other EDM elements are relevant
for expressing dates of different events in the life of the CHO: dc:date, dcterms:tem
poral and dcterms:issued. Be careful and choose the most appropriate one! <dcterms:cre
ated>Mid 16th century</dcterms:created> or <dcterms:created>1584</dcterms:created> or
create a reference to an instance of the TimeSpan class<dcterms:created rdf:resource=“
http://semium.org/time/15xx_3_third”/>For recommendations on medata quality see Tier A
-C requirements .
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The size or duration of the CHO. <dcterms:extent>13 cm</dcterms:extent> (the width of
an original object). <dcterms:extent>34 minutes</dcterms:extent> (the duration of an a
udio file)
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A resource related to the CHO that is substantially the same as the CHO but in another
format. <dcterms:hasFormat>http://upload.wikimedia.org/wikipedia/en/f/f3/Europeana_lo
go.png</dcterms:hasFormat> for a png image file of the described tiff resource Or as a
link to a resource <dcterms:hasFormat rdf:resource=“http://upload.wikimedia.org/wikip
edia/en/f/f3/Europeana_logo.png’’/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A resource that is included either physically or logically in the CHO. It is possible
to use either dcterms:isPartOf or dcterms:hasPart to express relation between objects
in a hierarchy. However in many cases (especially when a parent object has many childr
en) it is preferable to use dcterms:isPartOf. <dcterms:hasPart>Vol.2. Issue 1</dcterms
:hasPart>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another, later resource that is a version, edition or adaptation of the CHO demonstrat
ing substantive changes in content rather than format. <dcterms:hasVersion>The Sorcere
r’s Apprentice (translation by Edwin Zeydel, 1955)</dcterms:hasVersion> In this exampl
e the 1955 translation is a version of the described resource.
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another resource that is substantially the same as the CHO but in another format. <dct
erms:isFormatOf>Europeana_logo.tiff</dcterms:isFormatOf> where the resource being desc
ribed is a png image file
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A resource in which the CHO is physically or logically included. This property can be
used for objects that are part of a hierarchy and will be used to support an appropria
te display in the portal. For that purpose it will be necessary to supply a reference
as the value. See the Task Force report on representing hierarchical entities. It is
possible to use either dcterms:isPartOf or dcterms:hasPart to express relation between
objects in a hierarchy. However in many cases (especially when a parent object has ma
ny children) it is preferable to use dcterms:isPartOf. <dcterms:isPartOf>Crace Collect
ion of Maps of London</dcterms:isPartOf>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another resource that references, cites or otherwise points to the CHO. <dcterms:isRef
erencedBy>Till, Nicholas (1994) Mozart and the Enlightenment: Truth, Virtue and Beauty
in Mozart’s Operas, W. W. Norton & Company</dcterms:isReferencedBy>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another resource that supplants , displaces, or supersedes the CHO. <dcterms:isReplace
dBy>http://dublincore.org/about/2009/01/05/bylaws/</dcterms:isReplacedBy> where the re
source described is an older version (http://dublincore.org/about/2006/01/01/bylaws/)
or link <dcterms:isReplacedBy rdf:resource=“http://dublincore.org/about/2009/01/05/byl
aws/”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another related resource that requires the CHO to support its function, delivery or co
herence <isRequiredBy>http://www.myslides.com/myslideshow.ppt</isRequiredBy> where the
image being described is required for an online slideshow.
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Date of formal issuance or publication of the CHO. Europeana recommends date conformin
g to ISO 8601 starting with the year and with hyphens (YYYY-MM-DD). NB: other EDM el
ements are relevant for expressing dates of different events in the life of the CHO: d
c:date, dcterms:temporal and dcterms:created. Be careful and choose the most appropria
te one! <dcterms:issued>1993</dcterms:issued> or create a reference to an instance of
the TimeSpan class `http://semium.org/time/17xx_3_third”/
` (late 18th century)For recommendations on medata quality see Tier A-C requirements .
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another, earlier resource of which the CHO is a version, edition or adaptation, demons
trating substantive changes in content rather than format. <dcterms:isVersionOf>The So
rcerer’s Apprentice<dcterms:isVersionOf>In this example The Sorcerer’s Apprentice (tra
nslation by Edwin Zeydel, 1955) is the resource being described.
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The material or physical carrier of the CHO. <dcterms:medium>metal</dcterms:medium>Fo
r recommendations on medata quality see Tier A-C requirements .
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A statement of changes in ownership and custody of the CHO since its creation. Signifi
cant for authenticity, integrity and interpretation. <dcterms:provenance>Donated to Th
e National Library in 1965</dcterms:provenance>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Other resources referenced, cited or otherwise pointed to by the CHO. <dcterms:referen
ces>Honderd jaar Noorse schilderkunst </dcterms:references>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A related resource that is supplanted, displaced, or superseded by the CHO. <dcterms:r
eplaces>http://dublincore.org/about/2006/01/01/bylaws/</dcterms:replaces> where the re
source described is a newer version (http://dublincore.org/about/2009/01/05/bylaws/) o
r link to resource <dcterms:replaces rdf:resource=“http://dublincore.org/about/2006/01
/01/bylaws/”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another resource that is required by the described resource to support its function, d
elivery or coherence. <dcterms:requires>http://ads.ahds.ac.uk/project/userinfo/css/old
browsers.css </dcterms:requires> where the resource described is an HTML file at http:
//ads.ahds.ac.uk/project/userinfo/digitalTextArchiving.html
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]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Spatial characteristics of the CHO. i.e. what the CHO represents or depicts in terms o
f space (e.g. a location, coordinate or place). Either dcterms:spatial or dc:type or d
c:subject or dcterms:temporal must be provided; if more than one of these properties i
s available, please provide them all. dcterms:spatial is used to record the place depi
cted in the CHO and other locations associated with it as opposed to edm:currentLocati
on which is used only to record the place where the CHO is currently held (e.g. a muse
um or gallery). Be careful to choose the most appropriate one! <dcterms:spatial>Portug
al</dcterms:spatial> or create a reference to an instance of the Place class <dcterms:
spatial rdf:resource=“https://sws.geonames.org/2264397/ ”/>For recommendations on meda
ta quality see Tier A-C requirements .
dcterms_tableOfContents: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
A list of sub‐units of the CHO.<dcterms:tableOfContents>Chapter 1. Introduction, Chapt
er 2. History </dcterms:tableOfContents>
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]Mandate: mandatory
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Temporal characteristics of the CHO. i.e. what the CHO is about or depicts in terms of
time (e.g. a period, date or date range.) Either dcterms:temporal or dc:type or dc:su
bject or dcterms:spatial must be provided; if more than one of these properties is ava
ilable, please provide them all. Europeana recommends date conforming to ISO 8601 star
ting with the year and with hyphens (YYYY-MM-DD). NB: other EDM elements are relevant
for expressing dates of different events in the life of the CHO: dc:date, dcterms:crea
ted and dcterms:issued. Be careful and choose the most appropriate one! <dcterms:tempo
ral>Roman Empire</dcterms:temporal> or create a reference to an instance of the TimeSp
an class <dcterms:temporal rdf:resource=“http://semium.org/time/roman_empire”/>For rec
ommendations on medata quality see Tier A-C requirements .
edm_currentLocation: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref, NoneType]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Union[Lit, Ref]]
Description:
The geographic location whose boundaries presently include the CHO. This location must
have a position within an established positioning system: a location with coordinates
or address or inside another location that has a position, such as a room within a (m
useum) building. Ideally this position should be provided with the value of the proper
ty, either by using a reference (to a Place entity) that has coordinates or an address
attribute, or as a simple Lit. edm:currentLocation is used only to record the pla
ce where the CHO is currently held (e.g. a museum or gallery)dcterms:spatial is used t
o record the place depicted in the CHO and other locations associated with itBe carefu
l to choose the most appropriate one!<edm:currentLocation rdf:resource=“https://sws.ge
onames.org/2950159/”> (Identifier for Berlin)For recommendations on medata quality see
Tier A-C requirements .
edm_hasMet: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of an agent, a place, a time period or any other identifiable entity th
at the CHO may have “met” in its life. <edm:hasMet rdf:resource=“http://viaf.org/viaf/
96994048/”> (Identifier for William Shakespeare) <edm:hasMet rdf:resource=“https://sws
.geonames.org/6620265/ ”> (location identifier for Shakespeare’s Globe theatre.)For re
commendations on medata quality see Tier A-C requirements .
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The identifier of a concept, or a word or phrase from a controlled vocabulary (thesaur
us etc) giving the type of the CHO. E.g. Painting from the AAT thesaurus. This propert
y can be seen as a super-property of e.g. dc:format or dc:type to support “What” ques
tions. <edm:hasType>Painting</edm:hasType>
edm_incorporates: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of another resource that is incorporated in the described CHO. E.g. the
movie “A Clockwork Orange” incorporates Rossini’s La Gazza Ladra” in its soundtrack.
<edm:incorporates rdf:resource=“http://www.identifier/IncorporatedResource/“>
edm_isDerivativeOf: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of another resource from which the described CHO has been derived. E.g.
the identifier of Moby Dick when the Italian translation is the described CHO. <edm:i
sDerivativeOf rdf:resource=“http://www.identifier/SourceResource/”>
edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of the preceding object where both objects are part of the same overall
resource. Use this for objects that are part of a hierarchy or sequence to ensure cor
rect display in the portal. <edm:isNextInSequence rdf:resource=“http://www.identifier/
PrecedingResource”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The identifier or name of a concept or other resource to which the described CHO is re
lated. E.g. Moby Dick is related to XIX Century literature. Cf dc:relation. <edm:isRel
atedTo>Literature</edm:isRelatedTo> Or link to resource <edm:isRelatedTo rdf:resource=
“http://www.eionet.europa.eu/gemet/concept?cp=4850/”>
edm_isRepresentationOf: Optional[edmlib.edm.value_types.Ref]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Ref]
Description:
The identifier of another object of which the described CHO is a representation. E.g.
the identifier of the statue when the CHO being described is a painting of that statue
. <edm:isRepresentativeOf rdf:resource=“http://www.identifier/RepresentedResource/”>
edm_isSimilarTo: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of another resource to which the described CHO is similar. <edm:isSimil
arTo rdf:resource=“http://www.identifier/SimilarResource”/>
edm_isSuccessorOf: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a resource to which the described CHO is a successor. E.g. “The Two
Towers” is a successor of “Fellowship of the Ring”. <edm:isSuccessorOf rdf:resource=“
http://dbpedia.org/resource/The_Fellowship_of_the_Ring/”>
edm_realizes: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
If the CHO described is of type edm:PhysicalThing it may realize an information object . E.g. a copy of the Gutenberg publication realizes the Bible.
owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
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. <owl:sameAs rdf:resource=“http://www.identifier/SameResourceElsewhere/”>
@model_validator(mode='after') def validate_dependent_edm(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class ORE_Aggregation(edmlib.edm.base.EDM_BaseClass):ORE Aggregation
mandatory-properties: EDM_aggregatedCHO, EDM_dataProvider, EDM_isShownAt, EDM_isShownBy, EDM_provider, EDM_rights
optional-properties: EDM_hasView, DC_rights, EDM_ugc
recommended-properties: EDM_object, EDM_intermediateProvider
edm_aggregatedCHO: edmlib.edm.value_types.RefMandate: mandatory
Cardinality: exactly_one
Value-Type: Ref
Description:
The identifier of the source object e.g. the Mona Lisa itself. This could be a full li
nked open data URI or an internal identifier. <edm:aggregatedCHO rdf:resource=“#UEDIN:
214”/>
edm_dataProvider: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]Mandate: mandatory
Cardinality: exactly_one
Value-Type: Union[Lit, Ref]
Description:
The name or identifier of the data provider of the object (i.e. the organisation provi
ding data to an aggregator). Identifiers will not be available until Europeana has imp
lemented its Organization profile. In the case of the data provider Zuidwestbrabants
Museum, which delivers data through Erfgoedplus.be to LoCloud, the properties would lo
ok like this: <edm:dataProvider>Zuidwestbrabants Museum</edm:dataProvider> <edm:inter
mediateProvider>Erfgoedplus.be</edm:intermediateProvider> <edm:provider>LoCloud</edm:p
rovider>
edm_provider: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref]Mandate: mandatory
Cardinality: exactly_one
Value-Type: Union[Lit, Ref]
Description:
The name or identifier of the provider of the object (i.e. the organisation providing
data directly to Europeana). Identifiers will not be available until Europeana has imp
lemented its Organization profile. In the case of the provider LoCloud, which collect
s data from the data provider Zuidwestbrabants Museum through Erfgoedplus.be, the prop
erties would look like this: <edm:dataProvider>Zuidwestbrabants Museum</edm:dataProvid
er> <edm:intermediateProvider>Erfgoedplus.be</edm:intermediateProvider><edm:provider>L
oCloud</edm:provider>
edm_rights: edmlib.edm.value_types.RefMandate: mandatory
Cardinality: exactly_one
Value-Type: Ref
Description:
This is a mandatory property and the value given here should be the rights statement t
hat applies to the digital representation as given (for example) in edm:object or edm:
isShownAt/By, when these resources are not provided with their own edm:rights (see edm
:rights documentation). The value for the rights statement in this element must be a U
RI from the list of available values. Note: rights statements must be exactly as speci
fied there, which means they must start with http and not https. (For assesing rights
imformation check https://pro.europeana.eu/page/available-rights-statements ) The righ
ts statement given in this property will also by default apply to the previews used in
the portal and will support portal search and display functionality. Where there are
several web resources attached to one edm:ProvidedCHO the rights statement given here
will be regarded as the “reference” value for all the web resources. Therefore a suit
able value should be chosen with care if the rights statements vary between different
resources. In fact in such cases Europeana encourages the provision of separate rights
statements for each individual web resource. Please note that the object page on http
://europeana.eu displays the rights of the digital representation selected in the vi
ewer, which is found in the edm:rights of the WebResource that corresponds to the sele
cted edm:isShownBy or edm:hasView. If there is no such edm:isShownBy or edm:hasView re
presentation available, or if there is one but there is no specific edm:rights attache
d to it, then by default the page displays the edm:rights attached to the ore:Aggregat
ion.For example, a low‐resolution of a JPEG file could be CC‐BY, while the high resol
ution version or a video showing the object would be CC-BY-NC. In such cases the rig
hts statements given for the individual web resources would ‘override’ the one specifi
ed at the ore:Aggregation level. Any other associated web resources would still be gov
erned by the edm:rights of the ore:Aggregation. <edm:rights rdf:resource=“http://cre
ativecommons.org/publicdomain/mark/1.0/”/> <edm:rights rdf:resource=“http://rightsstat
ements.org/vocab/InC/1.0/”/> Or create a reference to an instance of the cc:License c
lass where additional details of the rights can be provided (such as an expiry date fo
r the restrictions): http://rightsstatements.org/vocab/NoC-NC/1.0/ or <edm:rights rdf
:resource="#statement_3000095353971"/>
edm_hasView: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The URL of a web resource which is a digital representation of the CHO. This may be th
e source object itself in the case of a born digital cultural heritage object. edm:has
View should only be used where there are several views of the CHO and one (or both) of
the mandatory edm:isShownAt or edm:isShownBy properties have already been used. It is
for cases where one CHO has several views of the same object. (e.g. a shoe and a deta
il of the label of the shoe) <edm:hasView rdf:resource="http://www.mimo‐db.eu/media/U
EDIN/VIDEO/0032195v.mpg"/> <edm:hasView rdf:resource="http://www.mimo-db.eu/media/UED
IN/AUDIO/0032195s.mp3"/>
edm_isShownAt: Optional[edmlib.edm.value_types.Ref]Mandate: mandatory
Cardinality: zero_to_one
Value-Type: Optional[Ref]
Description:
The URL of a web view of the object in full information context. An edm:isShownAt must
be provided. If there is no edm:isShownAt for an object, there must be a edm:isShownB
y. If both are available, provide both. The use of edm:isShownBy is preferred. Providi
ng an edm:isShownAt is strongly recommended in all cases.<edm:isShownAt rdf:resource="
http://www.mimo-‐db.eu/UEDIN/214"/>
edm_isShownBy: Optional[edmlib.edm.value_types.Ref]Mandate: mandatory
Cardinality: zero_to_one
Value-Type: Optional[Ref]
Description:
The URL of a web view of the object. An edm:isShownBy must be provided. If there is no
edm:isShownBy for an object, there must be a edm:isShownAt. The use of edm:isShownBy
is preferred. Europeana generates previews for any direct link to an image file. See E
uropeana Media Policy or information regarding the specifications of previews. <edm:is
ShownBy rdf:resource="http://www.mimo‐db.eu/media/UEDIN/IMAGE/0032195c.jpg"/>
edm_object: Optional[edmlib.edm.value_types.Ref]Mandate: recommended
Cardinality: zero_to_one
Value-Type: Optional[Ref]
Description:
The URL of a representation of the CHO which will be used for generating previews for
use in the Europeana portal. This may be the same URL as edm:isShownBy.See Europeana M
edia Policy for information regarding the specifications of previews. This must be an
image, even if it is for a sound object. <edm:object rdf:resource="http://www.mimo-‐db
.eu/media/UEDIN/IMAGE/0032195c.jpg"/>In accordance with Europeana's 2023 data publicat
ion approach, objects with edm:type=IMAGE that have no edm:isShownBy nor edm:object wi
ll not be published in Europeana. (See also ContentTier 1: Image type )
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Ideally this should be applied to the edm:WebResource or the edm:ProvidedCHO. It is in cluded here for the conversion of data from ESE where it is not known which object the rights apply to.
edm_ugc: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
This is a mandatory property for objects that are user generated or user created that
have been collected by crowdsourcing or project activity. The property is used to iden
tify such content and can only take the value “true” (lower case). <edm:ugc>true</edm:
ugc>
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]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The name or identifier of the intermediate organization that selects, collates, or cur
ates data from a Data Provider that is then aggregated by a Provider from which Europe
ana harvests. The Intermediate Provider must be distinct from both the Data Provider a
nd the Provider in the data supply chain. Identifiers will not be available until Euro
peana has implemented its Organization profile. In the case of the Erfgoedplus.be, whi
ch collects data from Zuidwestbrabants Museum and provides it to LoCloud, the properti
es would look like this: <edm:dataProvider>Zuidwestbrabants Museum</edm:dataProvider>
<edm:provider>LoCloud</edm:provider> <edm:intermediateProvider>Erfgoedplus.be</edm:int
ermediateProvider>
@model_validator(mode='after') def validate_conditional_attributes(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class EDM_WebResource(edmlib.edm.base.EDM_BaseClass):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
recommended-properties: EDM_rights
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
For the creator of the web resource. If possible supply the identifier of the creator
from an authority source. Repeat for multiple creators. <dc:creator xml:lang=“es”>Bibl
icoteca Nacional de España</dc:creator> or create a reference to an instance of the Ag
ent class <dc:creator rdf:resource=“http://viaf.org/viaf/147143794/”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use for an account or description of this digital representation <dc:description>Perfo
rmance with Buccin trombone</dc:description>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use for the format of this digital representation. (Use the value “3D‐PDF” if appropri
ate.)<dc:format>image/jpeg</dc:format>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Use for the name of the rights holder of this digital representation if possible or fo
r more general rights information. Note the difference between this property and the m
andatory, controlled edm:rights property below. <dc:rights> Copyright © British Librar
y Board</dc:rights>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A related resource from which the Web resource is derived in whole or in part. <dc:sou
rce>The name of the source video tape <dc:source>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The nature or genre of the digital representation. Ideally the term(s) will be taken f
rom a controlled vocabulary.dc:type should not be (strictly) identical to edm:type. <d
c:type>video</dc:type> or create a reference to an instance of the Concept class <dc:t
ype rdf:about= “http://schema.org/VideoObject” >
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
An established standard to which the web resource conforms. <dcterms:conformsTo>W3C WC
AG 2.0</dcterms:conformsTo> (web content accessibility guidelines).
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Date of creation of the Web resource. Europeana recommends date conforming to ISO 8601
starting with the year and with hyphens (YYYY-MM-DD). <dcterms:created>2010</dcterms:
created> or create a reference to an instance of the TimeSpan class <dc:date rdf:resou
rce=“http://semium.org/time/2010”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The size or duration of the digital resource. <dcterms:extent>1h 26 min 41 sec</dcterm
s:extent>
dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
A resource that is included either physically or logically in the web resource. <dcter
ms:hasPart rdf:resource=“http://www.identifier/Part”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Another resource that is substantially the same as the web resource but in another for
mat. <dcterms:isFormatOf>http://upload.wikimedia.org/wikipedia/en/f/f3/Europeana_logo
.png</dcterms:isFormatOf> for a png image file of the described tiff web resource. Or
as a link to a resource <dcterms:isFormatOf rdf:resource=“http://upload.wikimedia.org/
wikipedia/en/f/f3/Europeana_logo.png”/>
dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
A resource in which the WebResource is physically or logically included. This property
can be used for web resources that are part of a hierarchy. Hierarchies can be repres
ented as hierarchies of ProvidedCHOs or hierarchies of web resources but not both at t
he same time. See the Task Force report on representing hierarchical entities. <dcterm
s:isPartOf rdf:resource=“http://data.europeana.eu/item/08701/1B0BACAA44D5A807E43D9B411
C9781AAD2F96E65”/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A related resource that references, cites, or otherwise points to the described resour
ce. In a IIIF implementation, dcterms:isReferencedBy can be used to connect a edm:WebR
esource to a IIIF manifest URI. <dcterms:isReferencedBy rdf:resource="https://gallica.
bnf.fr/iiif/ark:/12148/btv1b55001425m/manifest.json"/>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
Date of formal issuance or publication of the web resource. Europeana recommends date
conforming to ISO 8601 starting with the year and with hyphens (YYYY‐MM-DD). <dcterms:
issued>1999</dcterms:issued> or create a reference to an instance of the TimeSpan clas
s<dcterms:issued rdf:resource=“http://semium.org/time/2010”/>
edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Where one CHO has several web resources, shown by multiple instances of the edm:hasVie w property on the ore:Aggregation this property can be used to show the sequence of th e objects. Each web resource (apart from the first in the sequence) should use this pr operty to give the URI of the preceding resource in the sequence.
edm_rights: Optional[edmlib.edm.value_types.Ref]Mandate: recommended
Cardinality: zero_to_one
Value-Type: Optional[Ref]
Description:
The value in this element will indicate the copyright, usage and access rights that ap
ply to this digital representation. It is strongly recommended that a value is supplie
d for this property for each instance of a web resource.The value for the rights state
ment in this element must be a URI from the list of available values. Note: rights sta
tements must be exactly as specified there, which means they must start with http and
not https. The rights statement specified at the level of the web resource will ‘overr
ide’ the statement specified at the level of the aggregation. <edm:rights rdf:resource
=“http://creativecommons.org/publicdomain/mark/1.0/”/> <edm:rights rdf:resource=“http:
//rightsstatements.org/vocab/InC/1.0/”/> Or create a reference to an instance of the
cc:License class where additional details of the rights can be provided (such as an ex
piry date for the restrictions): http://rightsstatements.org/vocab/NoC-NC/1.0/or <edm:
rights rdf:resource="#statement_3000095353971"/>This is a recommended property.
owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Provide the URI of another web representation of the same resource. <owl:sameAs rdf:re
source=”urn:soundcloud:150424305>
svcs_has_service: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality:
zero_to_many
Value-Type:
Optional[List[Ref]]
Description:
The identifier of the svcs:Service required to consume the edm:WebResource. Example:
<svcs:has_service rdf:resource="http://www.example.org/Service/IIIF">
@model_validator(mode='after') def validate_web_resource(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class CC_License(edmlib.edm.base.EDM_BaseClass):mandatory-properties: ODRL_inheritFrom
optional-properties: CC_deprecatedOn
odrl_inheritFrom: edmlib.edm.value_types.RefMandate: mandatory
Cardinality: exactly_one
Value-Type: Ref
Description:
ID of a base rights statement from which the described License is derived. This value
must come for alist of statements controlled by Europeana.<odrl:inheritFrom rdf:resour
ce=“http://rightsstatements.org/vocab/NoC-NC/1.0/”/>
cc_deprecatedOn: AnyMandate: optional
Cardinality: zero_to_one
Value-Type: Any
Description:
The date that the license expires, as it has been described, which implies among other
things the expiration of the restrictions specified by the license.<cc:deprecatedOn r
df:datatype=”http://www.w3.org/2001/XMLSchema#date”>2029‐06-01</cc:deprecatedOn> Note
this datatype is mandatory for cc:deprecatedOn.
model_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class SKOS_Concept(edmlib.edm.base.EDM_BaseClass):optional-properties: SKOS_broader, SKOS_narrower, SKOS_related, SKOS_broadMatch, SKOS_narrowMatch, SKOS_relatedMatch, SKOS_exactMatch, SKOS_closeMatch, SKOS_note, SKOS_notation, SKOS_inScheme
recommended-properties: SKOS_prefLabel, SKOS_altLabel
skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
The preferred form of the name of the concept. Although the maximum number of occurren
ces is set at 1, it can be interpreted as 1 per language tag. At least one skos:prefLa
bel SHOULD be provided. Several prefLabels with languages tags are strongly recommende
d for language variants and translations.This is a recommended property for this class
.<skos:prefLabel xml:lang="fr">Buccin</skos:prefLabel><skos:prefLabel xml:lang="de">Bu
ccin</skos:prefLabel><skos:prefLabel xml:lang="nl">Buccin</skos:prefLabel>For recommen
dations on medata quality see Tier A-C requirements , more specifically Metadata Tier
B and Metadata Tier C
skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Alternative forms of the name of the concept. Recommended unless several prefLabel are
already given with different language tags (altLabel is not suitable for translations
of prefLabel).<skos:altLabel xml:lang="en">Buccin</skos:altLabel>This is a recommende
d property for this class.
skos_broader: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a broader concept in the same thesaurus or controlled vocabulary.<sk
os:broader rdf:resource=“http://www.mimo-db.eu/InstrumentsKeywords/4369_1 ”/>For recom
mendations on medata quality see Tier A-C requirements , more specifically Metadata Ti
er B and Metadata Tier C
skos_narrower: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a narrower concept.<skos:narrower rdf:resource=“http://narrower.term
/”/>For recommendations on medata quality see Tier A-C requirements , more specificall
y Metadata Tier B and Metadata Tier C
skos_related: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a related concept<skos:related rdf:resource=“http://related.term/”/>
For recommendations on medata quality see Tier A-C requirements , more specifically Me
tadata Tier B and Metadata Tier C
skos_broadMatch: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a broader, narrower or related matching concepts from other concept
schemes.<skos:broadMatch rdf:resource=“http://broadMatch.term/”/><skos:narrowMatch rdf
:resource=“http://narrowMatch.term/”/><skos:relatedMatch rdf:resource=“http://relatedM
atch.term/”/>
skos_narrowMatch: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a broader, narrower or related matching concepts from other concept
schemes.<skos:broadMatch rdf:resource=“http://broadMatch.term/”/><skos:narrowMatch rdf
:resource=“http://narrowMatch.term/”/><skos:relatedMatch rdf:resource=“http://relatedM
atch.term/”/>
skos_relatedMatch: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of a broader, narrower or related matching concepts from other concept
schemes.<skos:broadMatch rdf:resource=“http://broadMatch.term/”/><skos:narrowMatch rdf
:resource=“http://narrowMatch.term/”/><skos:relatedMatch rdf:resource=“http://relatedM
atch.term/”/>
skos_exactMatch: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of close or exactly matching concepts from other concept schemes.<skos:
exactMatch rdf:resource=“http://exactMatch.term/”/><skos:closeMatch rdf:resource=“http
://closeMatch.term/”/>For recommendations on medata quality see Tier A-C requirements
, more specifically Metadata Tier B and Metadata Tier C
skos_closeMatch: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The identifier of close or exactly matching concepts from other concept schemes.<skos:
exactMatch rdf:resource=“http://exactMatch.term/”/><skos:closeMatch rdf:resource=“http
://closeMatch.term/”/>For recommendations on medata quality see Tier A-C requirements
, more specifically Metadata Tier B and Metadata Tier C
skos_note: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Information relating to the concept.<skos:note>The buccin is a visually distinctive tr
ombone popularized in military bands in France between 1810–1845 which subsequently fa
ded into obscurity.</skos:note>For recommendations on medata quality see Tier A-C requ
irements, more specifically Metadata Tier B and Metadata Tier C.
skos_notation: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
The notation in which the concept is represented. This may not be words in natural lan
guage for someknowledge organisation systems e.g. algebra<skos:notation rdf:datatype=“
http://www.w3.org/2001/XMLSchema#int”>123</skos:notation>
skos_inScheme: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The URI of a concept scheme
@model_validator(mode='after') def validate_skos_pref_label(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class EDM_Agent(edmlib.edm.base.EDM_BaseClass):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
recommended-properties: SKOS_prefLabel, SKOS_altLabel, RDAGR2_dateOfBirth, RDAGR2_dateOfDeath
skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
The preferred form of the name of the agent. Although the maximum number of occurrence
s is set at 1, it can be interpreted as 1 per language tag. At least one skos:prefLabe
l SHOULD be provided. Several prefLabels with languages tags are strongly recommended
for language variants and translations. This is a recommended property for this class.
<skos:prefLabel xml:lang=''fr''>Courtois neveu aîné</skos:prefLabel><skos:prefLabel xm
l:lang=''en''>Courtois’eldest nephew</skos:prefLabel> For recommendations on medata qu
ality see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tier
C
skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Alternative forms of the name of the agent. This is a recommended property for this cl
ass.<skos:altLabel xml:lang="en">Courtois</skos:altLabel><skos:altLabel xml:lang="fr">
Augte. Courtois aîné</skos:altLabel>
skos_note: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
A note about the agent e.g. biographical notes.<skos:note> Courtois neveu aîné started
a company of the same name manufacturing brass instruments in Paris in 1803</skos:not
e>
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
A significant date associated with the Agent. Europeana recommends date conforming to
ISO 8601 starting with the year and with hyphens (YYYY-MM-DD).<dc:date>1803</dc:date/>
dc_identifier: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
An identifier of the agent.<dc:identifier>http://viaf.org/viaf/96994048 </dc:identifi
er>
dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to an Agent that is part of the Agent being described (e.g. a part of a corp
oration).<dcterms:hasPart rdf:resource=“http://identifier/partOfCorporation/”>
dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to an agent that the described agent is part of.<dcterms:isPartOf rdf:resour
ce=“http://identifier/parentCorporation/”>
edm_begin: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date the agent was born/established. Europeana recommends date conforming to ISO 8
601 starting with the year and with hyphens (YYYY-MM-DD).<edm:begin>1795</edm:begin>Ge
neric "begin" and "end" properties are being used to indicate start date and end date
generically for edm:Agent and edm:TimeSpan. For edm:Agent this can be interpreted andb
irth and death dates.For recommendations on medata quality see Tier A-C requirements ,
more specifically Metadata Tier B and Metadata Tier C
edm_end: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
Generic "begin" and "end" properties are being used to indicate start date and end dat e generically for edm:Agent and edm:TimeSpan. For edm:Agent this can be interpreted an dbirth and death dates.For recommendations on medata quality see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tier C
edm_hasMet: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to another entity which the agent has “met” in a broad sense. For example a
reference to a Place class<edm:hasMet rdf:resource=“http://sws.geonames.org/6620265/”>
edm_isRelatedTo: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to other entities, particularly other agents, with whom the agent is related
in a generic sense.<edm:isRelatedTo rdf:resource=“http://identifier/relatedAgent/”>
foaf_name: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
The name of the agent as a simple textual string.<foaf:name>Auguste Courtois</foaf:nam
e>
rdagr2_biographicalInformation: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Information pertaining to the life or history of the agent.<rdaGr2:biographicalInforma
tion>Courtois neveu aîné started a company of the same name manufacturing brass instru
ments in Paris in 1803</rdaGr2:biographicalInformation>
rdagr2_dateOfBirth: Optional[edmlib.edm.value_types.Lit]Mandate: recommended
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date the agent (person) was born. Europeana recommends date conforming to ISO 8601
starting with the year and with hyphens (YYYY-MM-DD). This is a recommended property
for this class.<rdaGr2:dateOfBirth>1795</rdaGr2:dateOfBirth>dates.For recommendations
on medata quality see Tier A-C requirements , more specifically Metadata Tier B and Me
tadata Tier C
rdagr2_dateOfDeath: Optional[edmlib.edm.value_types.Lit]Mandate: recommended
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date the agent (person) died. Europeana recommends date conforming to ISO 8601 sta
rting with the year and with hyphens (YYYY‐MM-DD). This is a recommended property for
this class.<rdaGr2:dateOfDeath>1895</rdaGr2:dateOfDeath>For recommendations on medata
quality see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tie
r C
rdagr2_dateOfEstablishment: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date on which the agent (corporate body) was established or founded.<rdaGr2:dateOf
Establishment>1795</rdaGr2:dateOfEstablishment>
rdagr2_dateOfTermination: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date on which the agent (corporate body) was terminated or dissolved.<rdaGr2:dateO
fTermination>1895</rdaGr2:dateOfTermination>
rdagr2_gender: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The gender with which the agent identifies.< rdaGr2:gender>Female</rdaGr2:gender>
rdagr2_placeOfBirth: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref, NoneType]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Union[Lit, Ref]]
Description:
The town, city, province, state, and/or country in which a person was born.<rdaGr2:pla
ceOfBirth>Lusaka, Northern Rhodesia</rdaGr2:placeOfBirth><rdaGr2:placeOfBirth rdf:reso
urce=”http://sws.geonames.org/909137/”/>For recommendations on medata quality see Tier
A-C requirements , more specifically Metadata Tier B and Metadata Tier C
rdagr2_placeOfDeath: Union[edmlib.edm.value_types.Lit, edmlib.edm.value_types.Ref, NoneType]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Union[Lit, Ref]]
Description:
The town, city, province, state, and/or country in which a person died.<rdaGr2:placeOf
Death>London, United Kingdom</rdaGr2:placeOfDeath><rdaGr2:placeOfDeath rdf:resource=“h
ttp://sws.geonames.org/2635167/”/>For recommendations on medata quality see Tier A-C r
equirements , more specifically Metadata Tier B and Metadata Tier C
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]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[MixedValuesList]
Description:
The profession or occupation in which the agent works or has worked.<rdaGr2:profession
OrOccupation>Instrument Maker</rdaGr2:professionOrOccupation>
owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Another URI of the same agent.<owl:sameAs rdf:resource=“http://www.identifier/sameReso
urceElsewhere”/>
@model_validator(mode='after') def validate_skos_pref_label(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class EDM_TimeSpan(edmlib.edm.base.EDM_BaseClass):optional-properties: SKOS_altLabel, SKOS_note, DCTERMS_hasPart, DCTERMS_isPartOf, EDM_isNextInSequence, OWL_sameAs
recommended-properties: SKOS_prefLabel, EDM_begin, EDM_end
skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: recommended
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
The preferred form of the name of the timespan or period. Although the maximum number
of occurrences is set at 1, it can be interpreted as 1 per language tag. At least one
skos:prefLabel SHOULD be provided. Several prefLabels with languages tags are strongly
recommended for language variants andtranslations.<skos:prefLabel xml:lang=“en”>Roman
Empire</skos:prefLabel>This is a recommended property for this class.
skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Alternative forms of the name of the timespan or period. <skos:altLabel xml:lang=''fr'
'>Empire romain (27 avant J.-‐C.-‐476 après J.-C.)</skos:altLabel >
skos_note: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Information relating to the timespan or period.<skos:note>The Roman Empire (Latin: Imp
erium Romanum) was the post-Republican period of the ancient Roman civilization, char
acterised by an autocratic form of government and large territorial holdings around th
e Mediterranean in Europe, Africa, and Asia.</skos:note>
dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to a timespan which is part of the described timespan.
dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to a timespan of which the described timespan is a part.
edm_begin: Optional[edmlib.edm.value_types.Lit]Mandate: recommended
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date the timespan started. Europeana recommends date conforming to ISO 8601 starti
ng with the year and with hyphens (YYYY-MM-DD). Providing edm:begin in combination wi
th edm:end is recommended for this class.Example 1: <edm:begin>-0026</edm:begin>Exampl
e:2: 27 BCNote: '27 BC', while allowed, does not follow the abo
ve recommendation.For recommendations on medata quality see Tier A-C requirements , mo
re specifically Metadata Tier B and Metadata Tier C
edm_end: Optional[edmlib.edm.value_types.Lit]Mandate: recommended
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The date the timespan finished. Europeana recommends date conforming to ISO 8601 start
ing with the year and with hyphens (YYYY‐MM-DD). Providing edm:end in combination with
edm:begin is recommended for this class.<edm:end>1770</edm:end>For recommendations on
medata quality see Tier A-C requirements , more specifically Metadata Tier B and Meta
data Tier C
edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Can be used to represent a sequence of Time periods. Use this for objects that are par
t of a hierarchy or sequence to ensure correct display in the portal.<edm:isNextInSequ
ence rdf:resource=“http://semium.org/time/roman_republic”/> (The Roman Empire was prec
eded by the Roman Republic)
owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
The URI of a timespan<owl:sameAs rdf:resource=“http://semium.org/time/roman_empire”/>
@model_validator(mode='after') def validate_skos_pref_label(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class EDM_Place(edmlib.edm.base.EDM_BaseClass):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
wgs84_pos_lat: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The latitude of a spatial thing (decimal degrees). This is a recommended property for
this class.<wgs84_pos:lat>51.5075</wgs84_pos:lat>For recommendations on medata quality
see Tier A-C requirements , more specifically Metadata Tier B and Metadata Tier C
wgs84_pos_long: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The longitude of a spatial thing (decimal degrees). This is a recommended property for
this class.<wgs84_pos:long>-‐0.1231</wgs84_pos:long>For recommendations on medata qu
ality see Tier A-C requirements, more specifically Metadata Tier B and Metadata Tier C
wgs84_pos_alt: Optional[edmlib.edm.value_types.Lit]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[Lit]
Description:
The altitude of a spatial thing (decimal metres above the reference)<wgs84_pos:alt>21<
/wgs84_pos:alt>
skos_prefLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_one
Value-Type: Optional[List[Lit]]
Description:
The preferred form of the name of the place. Although the maximum number of occurrence
s is set at 1, it can be interpreted as 1 per language tag. At least one skos:prefLabe
l SHOULD be provided. Several prefLabels with languages tags are strongly recommended
for language variants and translations.<skos:prefLabel xml:lang="en">London</skos:pref
Label>For recommendations on medata quality see Tier A-C requirements , more specifica
lly Metadata Tier B and Metadata Tier C
skos_altLabel: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Alternative forms of the name of the place.<skos:altLabel xml:lang="en">Greater London
</skos:altLabel>
skos_note: Optional[List[edmlib.edm.value_types.Lit]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Lit]]
Description:
Information relating to the place.<skos:note xml:lang="en">Pop. 21m</skos:note>
dcterms_hasPart: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to a place that is part of the place being described.<dcterms:hasPart rdf:re
source=“http://sws.geonames.org/2643741/”/> (City of London)
dcterms_isPartOf: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Reference to a place that the described place is part of.<dcterms:isPartOf rdf:resourc
e=“http://sws.geonames.org/2635167/”/> (United Kingdom)
edm_isNextInSequence: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
Can be used to represent a sequence of Place entities over time e.g. the historical la yers of the city of Troy. Use this for objects that are part of a hierarchy or sequenc e to ensure correct display in the portal.
owl_sameAs: Optional[List[edmlib.edm.value_types.Ref]]Mandate: optional
Cardinality: zero_to_many
Value-Type: Optional[List[Ref]]
Description:
URI of a Place<owl:sameAs rdf:resource=“http://sws.geonames.org/2635167/”/>(London)
@model_validator(mode='after') def validate_skos_pref_label(self) -> Selfmodel_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class SVCS_Service(edmlib.edm.base.EDM_BaseClass):(Manually copied)
Optional-Properties: dcterms_conformsTo, doap_implements
Mandatory-Properties: None Recommended-Proeprties: None
Definition: An established standard to which the web resource or service conforms. W3C WCAG 2.0 (web content accessibility guidelines). If the Service describes a IIIF resource, dcterms:conformsTo must be used to describe the IIIF protocol the resource is conforming to.
Example:
<dcterms:conformsTo rdf:resource="http://iiif.io/api/image"/>
dcterms_conformsTo: Optional[List[edmlib.edm.value_types.Ref]]Mandate: Optional
Definition: An established standard to which the web resource or service conforms. W3C WCAG 2.0 (web content accessibility guidelines). If the Service describes a IIIF resource, dcterms:conformsTo must be used to describe the IIIF protocol the resource is conforming to.
Example:
<dcterms:conformsTo rdf:resource="http://iiif.io/api/image"/>
doap_implements: Optional[edmlib.edm.value_types.Ref]Mandate: Optional
Definition: A specification that a project implements. Could be a standard, API or legally defined level of conformance. In IIIF doap:implements refers to the the protocol implemented in IIIF.
Example:
<doap:implements rdf:resource="http://iiif.io/api/image/2/level1.json"/>
model_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
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]]class EDM_Parser:Parser for edm-xml records. Returns an edm_python.edm.EDM_Record object.
EDM_Parser(graph: rdflib.graph.Graph)@classmethod def from_file(cls, path: str, format: str = 'xml') -> Self@classmethod def from_string(cls, content: str, format: str = 'xml') -> Selfgraph: rdflib.graph.Graphdef get_single_ref(self, obj_cls: object) -> rdflib.term.URIRefLoooks up instances of a given obj_cls (a edm_python edm-class) and returns a single IRI. This method expects that the cardinality of the obj_cls is one per record.
def get_many_ref(self, obj_cls: object) -> List[rdflib.term.URIRef]Loooks up instances of a given obj_cls (a edm_python edm-class) and returns a list of instance-IRIs. This method expects that the cardinality of the obj_cls is one or more.
def get_triples(self, ref: rdflib.term.URIRef)Return all predicate-object triples for a given URIRef within the instance`s-graph.
def get_aggregation(self)def get_webresources(self) -> list[typing.Any]def get_instance_triples(self, instance: rdflib.term.URIRef, cls_obj: object) -> Dict[str, Any]def parse_single_class(self, cls_obj: object) -> Anydef parse_many_class(self, cls_obj: Any) -> List[Any]def parse(self) -> edmlib.edm.record.EDM_Recordclass Ref(pydantic.main.BaseModel):About IRIs (from the rdflib.URIRef docstring):
RDF 1.1's IRI Section https://www.w3.org/TR/rdf11-concepts/#section-IRIs An IRI (Internationalized Resource Identifier) within an RDF graph is a Unicode string that conforms to the syntax defined in RFC 3987. IRIs in the RDF abstract syntax MUST be absolute, and MAY contain a fragment identifier. IRIs are a generalization of URIs [RFC3986] that permits a wider range of Unicode characters.
value: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=None, pattern=None)]is_ref: bool@field_validator('value') @classmethod def validate_value_as_uri(cls, value: str)def to_rdflib(self)Helper to convert this custom type to the rdflib equivalent Used in the graph serialization of the EDM_Base-Class
model_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
class Lit(pydantic.main.BaseModel):Overrides the RDFLib Literal with a custom class, so that it is serializable in pydantic model. For the same reason, it uses the same attribute names. Ignore the normalize attribute, it is just added for completeness.
value: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=None, pattern=None)]lang: Optional[str]datatype: Optional[str]normalize: Optional[bool]@model_validator(mode='after') def validate_consistency(self) -> SelfChecks that literal either has a lang_tag or a datatype, not both.
def to_rdflib(self)Helper to convert this custom type to the rdflib equivalent Used in the graph serialization of the EDM_Base-Class
model_config: ClassVar[pydantic.config.ConfigDict] = {}Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].