Use static metadata for epubs starting with 8
diff --git a/test/resources/DNB/Sample/8999999999.epub b/test/resources/DNB/Sample/8999999999.epub
new file mode 100644
index 0000000..f7c6e76
--- /dev/null
+++ b/test/resources/DNB/Sample/8999999999.epub
Binary files differ
diff --git a/test/test-xml.sh b/test/test-xml.sh
index 8a0b1e4..61e4acf 100755
--- a/test/test-xml.sh
+++ b/test/test-xml.sh
@@ -5,7 +5,7 @@
. ${ASSERTSH}
ERRORS=0
PASSED=0
-TEXTS=6
+TEXTS=7
I5_FILE=target/dnb18.i5.xml
if [ ! -f "$I5_FILE" ]; then
log_failure "File $I5_FILE does not exist"
@@ -56,6 +56,12 @@
observed=$(xmlstarlet sel --net -t -v "count(/idsCorpus/idsDoc/idsText/idsHeader/fileDesc/sourceDesc/biblStruct/note[@type='award'])" target/dnb18.i5.xml)
assert_eq "$observed" "0" "no falsely identified awards'"
+observed=$(xmlstarlet sel --net -t -v "count(/idsCorpus/idsDoc/idsText/idsHeader/fileDesc/publicationStmt/idno[@type='IDN' and .='8999999999'])" target/dnb18.i5.xml)
+assert_eq "$observed" "1" "epub 8... id and without API metadata is transformed"
+
+observed=$(xmlstarlet sel --net -t -v "count(/idsCorpus/idsDoc/idsText/idsHeader/fileDesc[publicationStmt/idno[@type='IDN' and .='8999999999']]/sourceDesc//h.title[.='Herzblut'])" target/dnb18.i5.xml)
+assert_eq "$observed" "1" "static metadata for epub with 8... id is correctly retrieved"
+
exit_with_test_summary
diff --git a/xslt/epub2i5.xsl b/xslt/epub2i5.xsl
index 75cb451..e94809e 100644
--- a/xslt/epub2i5.xsl
+++ b/xslt/epub2i5.xsl
@@ -40,7 +40,7 @@
<xsl:value-of disable-output-escaping="yes" select="concat('https://services.dnb.de/sru/dnb?version=1.1&operation=searchRetrieve&query=', $idno_type, '%3D', $idno, '&recordSchema=oai_dc')"/>
</xsl:variable>
<xsl:variable name="dnbBookdata">
- <xsl:copy-of select="doc($dnbBookdataQuery)"/>
+ <xsl:copy-of select="if(starts-with($idno, '8')) then doc('static_metadata.xml')//oai:dc[dc:identifier=$idno] else doc($dnbBookdataQuery)"/>
</xsl:variable>
<xsl:variable name="autor"
diff --git a/xslt/static_metadata.xml b/xslt/static_metadata.xml
new file mode 100644
index 0000000..a4f99e0
--- /dev/null
+++ b/xslt/static_metadata.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<searchRetrieveResponse xmlns="http://www.loc.gov/zing/srw/">
+ <records>
+ <!-- From here: fake examples for testing ! -->
+ <record>
+ <recordSchema>oai_dc</recordSchema>
+ <recordPacking>xml</recordPacking>
+ <recordData>
+ <dc xmlns:dnb="http://d-nb.de/standards/dnbterms" xmlns:tel="http://krait.kb.nl/coop/tel/handbook/telterms.html" xmlns="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <dc:title>Ein Hauch von Meer und Mord : Juist-Krimi / Barbara Saladin</dc:title>
+ <dc:creator>Saladin, Barbara [Verfasser]</dc:creator>
+ <dc:publisher>Hillesheim : KBV Verlags- & Medien</dc:publisher>
+ <dc:date>2012</dc:date>
+ <dc:language>ger</dc:language>
+ <dc:identifier xsi:type="tel:URN">urn:nbn:de:101:1-2012112917525</dc:identifier>
+ <dc:identifier xsi:type="tel:URL">http://nbn-resolving.de/urn:nbn:de:101:1-2012112917525</dc:identifier>
+ <dc:identifier xsi:type="tel:ISBN">978-3-95441-123-8</dc:identifier>
+ <dc:identifier xsi:type="tel:URL">http://d-nb.info/1028379862/34</dc:identifier>
+ <dc:identifier xsi:type="dnb:IDN">8999999998</dc:identifier>
+ <dc:subject>830 Deutsche Literatur</dc:subject>
+ <dc:subject>B Belletristik</dc:subject>
+ <dc:type>Online-Ressource</dc:type>
+ </dc>
+ </recordData>
+ <recordPosition>1</recordPosition>
+ </record>
+
+ <record>
+ <recordSchema>oai_dc</recordSchema>
+ <recordPacking>xml</recordPacking>
+ <recordData>
+ <dc xmlns:dnb="http://d-nb.de/standards/dnbterms" xmlns:tel="http://krait.kb.nl/coop/tel/handbook/telterms.html" xmlns="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <dc:title>Herzblut : Kriminalroman aus Düsseldorf / David Daniel</dc:title>
+ <dc:creator>Daniel, David [Verfasser]</dc:creator>
+ <dc:publisher>Hillesheim : KBV Verlags- & Medien</dc:publisher>
+ <dc:date>2018</dc:date>
+ <dc:language>ger</dc:language>
+ <dc:identifier xsi:type="tel:URN">urn:nbn:de:101:1-2012112917539</dc:identifier>
+ <dc:identifier xsi:type="tel:URL">http://nbn-resolving.de/urn:nbn:de:101:1-2012112917539</dc:identifier>
+ <dc:identifier xsi:type="tel:ISBN">978-3-95441-027-9</dc:identifier>
+ <dc:identifier xsi:type="tel:URL">http://d-nb.info/1028379870/34</dc:identifier>
+ <dc:identifier xsi:type="dnb:IDN">8999999999</dc:identifier>
+ <dc:subject>830 Deutsche Literatur</dc:subject>
+ <dc:subject>B Belletristik</dc:subject>
+ <dc:type>Online-Ressource</dc:type>
+ </dc>
+ </recordData>
+ </record>
+ </records>
+</searchRetrieveResponse>