From 9cc48558152831e1f41e2b74da87842f080d3edb Mon Sep 17 00:00:00 2001 From: David Maus <maus@hab.de> Date: Tue, 20 Feb 2018 09:38:36 +0100 Subject: [PATCH] =?UTF-8?q?Verwende=20RDF/XML=20f=C3=BCr=20Deskriptive=20M?= =?UTF-8?q?etadaten?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/xslt/mets.xsl | 6 ++++++ test/xslt/mets.xspec | 30 ++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 test/xslt/mets.xspec diff --git a/src/xslt/mets.xsl b/src/xslt/mets.xsl index 3145946..e71bd41 100644 --- a/src/xslt/mets.xsl +++ b/src/xslt/mets.xsl @@ -73,6 +73,12 @@ <xsl:template match="@ADMID"/> + <xsl:template match="dmdSec/mdWrap[@MDTYPE = 'MODS']"> + <mdWrap MDTYPE="OTHER" OTHERMDTYPE="RDF" MIMETYPE="application/rdf+xml"> + <xsl:apply-templates/> + </mdWrap> + </xsl:template> + <xsl:template match="dmdSec/mdWrap[@MDTYPE = 'MODS']/xmlData/mods:mods"> <rdf:Description> <xsl:apply-templates/> diff --git a/test/xslt/mets.xspec b/test/xslt/mets.xspec new file mode 100644 index 0000000..33f8527 --- /dev/null +++ b/test/xslt/mets.xspec @@ -0,0 +1,30 @@ +<xspec:description stylesheet="../../src/xslt/mets.xsl" + xmlns:struct="http://uri.hab.de/ontology/diglib-struct#" + xmlns:mets="http://www.loc.gov/METS/" + xmlns:mods="http://www.loc.gov/mods/v3" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:xspec="http://www.jenitennison.com/xslt/xspec"> + + <xspec:param name="eventCreateUUID">82ef66c7-8dca-4f57-b9d9-5b6dddbef080</xspec:param> + <xspec:param name="eventNormalizeUUID">49130b15-d982-4d8f-bc45-c4c5c290c8d9</xspec:param> + <xspec:param name="eventNormalizeAgent">Foobar</xspec:param> + <xspec:param name="objectId">example/example</xspec:param> + + <xspec:scenario label="When transforming descriptive metadata"> + <xspec:context> + <mets:mets> + <mets:dmdSec> + <mets:mdWrap MDTYPE="MODS"> + <mets:xmlData> + <mods:mods> + <struct:P0011>Lorem ipsum dolor sit amet, consectetur adipisici elit</struct:P0011> + </mods:mods> + </mets:xmlData> + </mets:mdWrap> + </mets:dmdSec> + </mets:mets> + </xspec:context> + <xspec:expect test="exists(//struct:P0011/parent::rdf:Description)" label="replace mods:mods with rdf:Description"/> + </xspec:scenario> + +</xspec:description> -- GitLab