Skip to content

Korrektur des href Attributs in Kitodo

David Maus edited this page Mar 28, 2019 · 4 revisions

Einleitung

In Kitodo.Production können Namespaces nicht für Attribute vergeben werden. Dies ist jedoch für die korrekte Ausgabe des xlink:href-Attributs in dem MODS-Element accessCondition notwendig.

Definition von Namespaces im Regelsatz

Im METS-Bereich des Regelsatzes ist es möglich, Namespaces für Elemente zu definieren, wie zum Beispiel:


<NamespaceDefinition>
	<URI>http://slub-dresden.de/</URI>
	<prefix>slub</prefix>
</NamespaceDefinition>

Dies ist in Kitodo.Production 2.x jedoch nur für Nodes möglich, nicht für Attribute. Es wird nur "href" in die METS-Datei eingetragen:


< mods:accessCondition type='use and reproduction' href='https://creativecommons.org/publicdomain/mark/1.0/'>

Korrektur der METS-Datei

Um ein MODS-konformes href-Attribut zu erzeugen, müssen die METS-Dateien korrigiert werden. David Maus schlägt folgende Lösung mit XSLT vor:


<xsl:transform version="1.0"
           xmlns:mods="http://www.loc.gov/mods/v3"
           xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
           xmlns:xlink="http://www.w3.org/1999/xlink">

	<xsl:template match="node() | @*">
		<xsl:copy>
			<xsl:apply-templates select="node() | @*"/>
		</xsl:copy>
	</xsl:template>

	<xsl:template match="mods:accessCondition/@href">
		<xsl:attribute name="xlink:href"><xsl:value-of select="."/></xsl:attribute>
	</xsl:template>
</xsl:transform>

Vergleiche: https://maillist.slub-dresden.de/pipermail/kitodo-community/2018-December/000247.html

Weitere Informationen

Clone this wiki locally