Skip to content

Transformation

Consorci de Serveis Universitaris de Catalunya edited this page Nov 23, 2020 · 16 revisions

This module downloads and transforms structured metadata via OAI-PMH to EDM according to the schemes defined and implemented in the Metadata Schema Definitions and EDM-Transformations modules respectively.

Maven Dependencies

<dependency>
   <groupId>org.csuc</groupId>
   <artifactId>transformation</artifactId>
   <version>${VERSION}</version>
</dependency>

Module settings

Type

Define kind of input type to analyze:

Schema

Define metadata schema used in input:

  • A2A: Archive 2 All is a schema for historical records concerning persons
  • DC: Dublin Core is a standard used for describe digital resources
  • EAD: Encoded Archival Description is a standard for encoding decriptive information regarding archival records
  • Memorix: Custsom metadata schema

Format

Define result format file

If you want to test result file on Quality Assurance module you will need to choose RDFXML.

EDM Type

Define kind of records content

  • Text
  • Image
  • Audio
  • 3D

Provider

Identify the metadata provider of the object (i.e. the organisation providing data).

Properties

Additional metadata to include in all records found in input:

  • Data provider: the name or identifier of the data provider of the object (i.e. the organisation providing data to an aggregator)
  • Language: use ISO_63 code
  • Rights

If you want to test result file on Quality Assurance module you will need to fill all this optional properties.

Examples

Example 1

Using an A2A file containing 1 record and generating and RDFXML result file.

Input
<a2a:A2A Version="1.7" xmlns:a2a="http://Mindbus.nl/A2A">
  <a2a:Person pid="Person:9098c633-0477-41ba-b60b-a7d4ae71eacc">
    <a2a:PersonName>
      <a2a:PersonNameFirstName>Sipke</a2a:PersonNameFirstName>
      <a2a:PersonNamePatronym>Tijssen</a2a:PersonNamePatronym>
    </a2a:PersonName>
    <a2a:Gender>Man</a2a:Gender>
  </a2a:Person>
  <a2a:Event eid="Event1">
    <a2a:EventType>other: Stemkohieren inschrijving</a2a:EventType>
    <a2a:EventDate>
      <a2a:Year>1728</a2a:Year>
    </a2a:EventDate>
    <a2a:EventPlace>
      <a2a:Place>Koudum</a2a:Place>
    </a2a:EventPlace>
  </a2a:Event>
  <a2a:RelationEP>
    <a2a:PersonKeyRef>Person:9098c633-0477-41ba-b60b-a7d4ae71eacc</a2a:PersonKeyRef>
    <a2a:EventKeyRef>Event1</a2a:EventKeyRef>
    <a2a:RelationType>other:Eigenaar en gebruiker</a2a:RelationType>
  </a2a:RelationEP>
  <a2a:Source>
    <a2a:SourcePlace>
      <a2a:Place>Hemelumer Oldeferd</a2a:Place>
    </a2a:SourcePlace>
    <a2a:SourceIndexDate>
      <a2a:From>1728-01-01</a2a:From>
      <a2a:To>1728-12-31</a2a:To>
    </a2a:SourceIndexDate>
    <a2a:SourceDate>
      <a2a:Year>1728</a2a:Year>
    </a2a:SourceDate>
    <a2a:SourceType>other: Stemkohieren</a2a:SourceType>
    <a2a:SourceReference>
      <a2a:Place>Leeuwarden</a2a:Place>
      <a2a:InstitutionName>AlleFriezen</a2a:InstitutionName>
      <a2a:Collection>Deel: 3336, Periode: 1728</a2a:Collection>
      <a2a:Book>Stem- en floreenkohieren 1728</a2a:Book>
      <a2a:RegistryNumber>3336</a2a:RegistryNumber>
    </a2a:SourceReference>
    <a2a:SourceLastChangeDate>2017-01-16</a2a:SourceLastChangeDate>
    <a2a:SourceDigitalOriginal>http://allefriezen.nl/zoeken/deeds/000155ff-e928-4d77-af5c-f337e8f2ef7e</a2a:SourceDigitalOriginal>
    <a2a:RecordGUID>{000155ff-e928-4d77-af5c-f337e8f2ef7e}</a2a:RecordGUID>
    <a2a:SourceRemark Key="Opmerking">
      <a2a:Value>Locatie: Koudum&lt;br /&gt;Stemnr.: 36&lt;br /&gt;Aantal stemmen: 1</a2a:Value>
    </a2a:SourceRemark>
  </a2a:Source>
</a2a:A2A>
Result
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:edm="http://www.europeana.eu/schemas/edm/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:wgs84_pos="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:rdaGr2="http://rdvocab.info/ElementsGr2/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:ebucore="http://www.ebu.ch/metadata/ontologies/ebucore/ebucore#" xmlns:doap="http://usefulinc.com/ns/doap#" xmlns:odrl="http://www.w3.org/ns/odrl/2/" xmlns:cc="http://creativecommons.org/ns#" xmlns:ore="http://www.openarchives.org/ore/terms/" xmlns:svcs="http://rdfs.org/sioc/services#">
<edm:ProvidedCHO rdf:about="ProvidedCHO:b7709721-551b-40ad-b04b-1ec44f9af654">
    <dc:identifier>b7709721-551b-40ad-b04b-1ec44f9af654</dc:identifier>
    <dc:coverage rdf:resource="Place:HemelumerOldeferd"></dc:coverage>
    <dc:description>Deel: 3336, Periode: 1728</dc:description>
    <dc:title>Stem- en floreenkohieren 1728</dc:title>
    <dc:type>other: Stemkohieren</dc:type>
    <dc:date>1728-01-01</dc:date>
    <dc:date>1728-12-31</dc:date>
    <dcterms:temporal rdf:resource="TimeSpan:1728"></dcterms:temporal>
    <dc:contributor rdf:resource="Agent:Person:9098c633-0477-41ba-b60b-a7d4ae71eacc"></dc:contributor>
    <edm:isRelatedTo rdf:resource="Concept:other:Stemkohieren"></edm:isRelatedTo>
    <edm:type>TEXT</edm:type>
</edm:ProvidedCHO>
<edm:Agent rdf:about="Agent:Person:9098c633-0477-41ba-b60b-a7d4ae71eacc">
    <skos:prefLabel>Sipke</skos:prefLabel>
    <dc:identifier>Person:9098c633-0477-41ba-b60b-a7d4ae71eacc</dc:identifier>
    <edm:isRelatedTo rdf:resource="Concept:other:Eigenaarengebruiker"></edm:isRelatedTo>
    <rdaGr2:gender>Man</rdaGr2:gender>
</edm:Agent>
<edm:Place rdf:about="Place:HemelumerOldeferd">
    <skos:prefLabel>Hemelumer Oldeferd</skos:prefLabel>
    <skos:altLabel>Place</skos:altLabel>
</edm:Place>
<skos:Concept rdf:about="Concept:other:Eigenaarengebruiker">
    <skos:prefLabel>other:Eigenaar en gebruiker</skos:prefLabel>
    <skos:related rdf:resource="Agent:Person:9098c633-0477-41ba-b60b-a7d4ae71eacc"/></skos:Concept>
    <skos:Concept rdf:about="Concept:other:Stemkohieren">
    <skos:prefLabel>other: Stemkohieren</skos:prefLabel>
</skos:Concept>
<edm:TimeSpan rdf:about="TimeSpan:1728">
    <skos:prefLabel>1728</skos:prefLabel>
</edm:TimeSpan>
<ore:Aggregation rdf:about="http://allefriezen.nl/zoeken/deeds/000155ff-e928-4d77-af5c-f337e8f2ef7e">
    <edm:aggregatedCHO rdf:resource="ProvidedCHO:b7709721-551b-40ad-b04b-1ec44f9af654"/>
    <edm:hasView rdf:resource="Concept:other:Stemkohieren"/>
    <edm:hasView rdf:resource="ProvidedCHO:b7709721-551b-40ad-b04b-1ec44f9af654"/>
    <edm:hasView rdf:resource="Agent:Person:9098c633-0477-41ba-b60b-a7d4ae71eacc"/>
    <edm:hasView rdf:resource="TimeSpan:1728"/><edm:hasView rdf:resource="Place:HemelumerOldeferd"/>
    <edm:hasView rdf:resource="Concept:other:Eigenaarengebruiker"/>
    <edm:isShownAt rdf:resource="http://allefriezen.nl/zoeken/deeds/000155ff-e928-4d77-af5c-f337e8f2ef7e"/>
    <edm:provider>Tresoar</edm:provider>
</ore:Aggregation>
</rdf:RDF>

Usage

Command line

Usage: 
 {edmType | provider | rights | language | dataProvider}                                          : Example: { edmType=IMAGE,language=ca ... } (default: {})
 --format [RDFXML | NTRIPLES | TURTLE | JSONLD | RDFJSON | NQ | NQUADS | TRIG | RDFTHRIFT | TRIX] : format out (default: RDFXML)
 --hdfs                                                                                           : hdfs (default: false)
 --hdfs-home VAL                                                                                  : hdfs-home (default: /user/hdfs/echoes)
 --hdfs-uri VAL                                                                                   : hdfs-uri (default: hdfs://localhost:54310)
 --hdfs-user VAL                                                                                  : hdfs-user (default: hdfs)
 --input (-i) VAL                                                                                 : input
 --schema (-s) [A2A | DC | MEMORIX | EAD]                                                         : SCHEMA
 -l (--log-file) PATH                                                                             : log4j2.xml
 -o (--out) PATH                                                                                  : out
 -t (--type) [oai | url | file]                                                                   : choice type
 -th (--threads) <int>                                                                            : threads (default: 1)

GUI

Screen1 Screen 1: Jobs list

Screen2 Screen 2: New job form

Screen3 Screen 3: Job detail

Clone this wiki locally