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