Display objectWorkType via tags in EODEM and LIDO 1.1 exports, and only

that in case both object_type tags exist and an object type is present
in md

See #5

Background for the disabling of exports of the regular object type in
case both exist: The German Digital Library (DDB) is unable to handle
duplicate names in work types unless both contain different links to
norm data repositories. This fix allows the DDB to more easily import
while supposedly not losing meaningful data.
This commit is contained in:
Joshua Ramon Enslin 2023-08-03 23:11:08 +02:00
parent 2ff939c6db
commit c9c7b63434
Signed by untrusted user: jrenslin
GPG Key ID: 46016F84501B70AE
3 changed files with 374 additions and 213 deletions

View File

@ -34,70 +34,133 @@
</xsl:if> </xsl:if>
<lido:objectClassificationWrap> <lido:objectClassificationWrap>
<lido:objectWorkTypeWrap> <lido:objectWorkTypeWrap>
<lido:objectWorkType>
<xsl:for-each select="objektart_gnd"> <xsl:choose>
<lido:conceptID> <xsl:when test="
<xsl:attribute name="lido:source">gnd</xsl:attribute> tagSet[0]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[1]/relation_type[. = 'object_type']
<xsl:value-of select="concat('http://d-nb.info/gnd/', .)" /> | tagSet[2]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[3]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[4]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_grobsystematik"> | tagSet[5]/relation_type[. = 'object_type']
<lido:conceptID> | tagSet[6]/relation_type[. = 'object_type']
<xsl:attribute name="lido:source">grobsystematik</xsl:attribute> | tagSet[7]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[8]/relation_type[. = 'object_type']
<xsl:value-of select="concat('https://term.museum-digital.de/grobsystematik/tag/', .)" /> | tagSet[9]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[10]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[11]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_oberbegriffsdatei"> | tagSet[12]/relation_type[. = 'object_type']
<lido:conceptID> | tagSet[13]/relation_type[. = 'object_type']
<xsl:attribute name="lido:source">oberbegriffsdatei</xsl:attribute> | tagSet[14]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[15]/relation_type[. = 'object_type']
<xsl:value-of select="concat('https://term.museum-digital.de/oberbegriffsdatei/tag/', .)" /> | tagSet[16]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[17]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[18]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_aat"> ">
<lido:conceptID>
<xsl:attribute name="lido:source">aat</xsl:attribute> <!-- objectWorkType exists via tags -->
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:for-each select="tagSet/tag_id">
<xsl:value-of select="concat('http://vocab.getty.edu/aat/', .)" /> <xsl:if test="../relation_type = 'object_type'">
</lido:conceptID> <lido:objectWorkType>
</xsl:for-each> <xsl:for-each select="../noda_tag_Set/noda_source">
<xsl:for-each select="objektart_lcsh"> <xsl:if test="string-length(../noda_link)!=0">
<lido:conceptID> <lido:conceptID>
<xsl:attribute name="lido:source">lcsh</xsl:attribute> <xsl:attribute name="lido:source">
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:value-of select="../noda_source"/>
<xsl:value-of select="concat('http://id.loc.gov/authorities/subjects/', .)" /> </xsl:attribute>
</lido:conceptID> <xsl:attribute name="lido:type">uri</xsl:attribute>
</xsl:for-each> <xsl:value-of select="../noda_link"/>
<xsl:for-each select="objektart_md_tag"> </lido:conceptID>
<lido:conceptID> </xsl:if>
<xsl:attribute name="lido:source">md:term</xsl:attribute> </xsl:for-each>
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:for-each select="../tag_name">
<xsl:value-of select="concat('https://term.museum-digital.de/md-de/tag/', .)" /> <lido:term>
</lido:conceptID> <xsl:attribute name="lido:addedSearchTerm">no</xsl:attribute>
</xsl:for-each> <xsl:if test="string-length(./@lang)!=0">
<xsl:if test="objektart!=''"> <xsl:attribute name="xml:lang">
<xsl:for-each select="objektart"> <xsl:value-of select="./@lang"/>
<lido:term> </xsl:attribute>
<xsl:attribute name="xml:lang">de</xsl:attribute> </xsl:if>
<xsl:value-of select="." /> <xsl:value-of select="."/>
</lido:term> <xsl:variable name="objektartschlagwort" select="." />
</xsl:for-each> </lido:term>
</xsl:if> </xsl:for-each>
<xsl:if test="objekt_record_set/objektart!=''"> </lido:objectWorkType>
<xsl:for-each select="objekt_record_set">
<xsl:if test="substring(objekt_record_weitergabe,1,1)=0">
<lido:term>
<xsl:attribute name="xml:lang">
<xsl:value-of select="objekt_record_lang" />
</xsl:attribute>
<xsl:value-of select="objektart" />
</lido:term>
</xsl:if> </xsl:if>
</xsl:for-each> </xsl:for-each>
</xsl:if>
</lido:objectWorkType> </xsl:when>
<xsl:otherwise>
<lido:objectWorkType>
<xsl:for-each select="objektart_gnd">
<lido:conceptID>
<xsl:attribute name="lido:source">gnd</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://d-nb.info/gnd/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_grobsystematik">
<lido:conceptID>
<xsl:attribute name="lido:source">grobsystematik</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/grobsystematik/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_oberbegriffsdatei">
<lido:conceptID>
<xsl:attribute name="lido:source">oberbegriffsdatei</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/oberbegriffsdatei/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_aat">
<lido:conceptID>
<xsl:attribute name="lido:source">aat</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://vocab.getty.edu/aat/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_lcsh">
<lido:conceptID>
<xsl:attribute name="lido:source">lcsh</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://id.loc.gov/authorities/subjects/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_md_tag">
<lido:conceptID>
<xsl:attribute name="lido:source">md:term</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/md-de/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:if test="objektart!=''">
<xsl:for-each select="objektart">
<lido:term>
<xsl:attribute name="xml:lang">de</xsl:attribute>
<xsl:value-of select="." />
</lido:term>
</xsl:for-each>
</xsl:if>
<xsl:if test="objekt_record_set/objektart!=''">
<xsl:for-each select="objekt_record_set">
<xsl:if test="substring(objekt_record_weitergabe,1,1)=0">
<lido:term>
<xsl:attribute name="xml:lang">
<xsl:value-of select="objekt_record_lang" />
</xsl:attribute>
<xsl:value-of select="objektart" />
</lido:term>
</xsl:if>
</xsl:for-each>
</xsl:if>
</lido:objectWorkType>
</xsl:otherwise>
</xsl:choose>
</lido:objectWorkTypeWrap> </lido:objectWorkTypeWrap>
<lido:classificationWrap> <lido:classificationWrap>
<xsl:for-each select="collectionSet"> <xsl:for-each select="collectionSet">

View File

@ -33,100 +33,135 @@
</xsl:if> </xsl:if>
<lido:objectClassificationWrap> <lido:objectClassificationWrap>
<lido:objectWorkTypeWrap> <lido:objectWorkTypeWrap>
<lido:objectWorkType>
<xsl:for-each select="objektart_gnd"> <xsl:choose>
<lido:conceptID> <xsl:when test="
<xsl:attribute name="lido:source">gnd</xsl:attribute> tagSet[0]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[1]/relation_type[. = 'object_type']
<xsl:value-of select="concat('http://d-nb.info/gnd/', .)" /> | tagSet[2]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[3]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[4]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_grobsystematik"> | tagSet[5]/relation_type[. = 'object_type']
<lido:conceptID> | tagSet[6]/relation_type[. = 'object_type']
<xsl:attribute name="lido:source">grobsystematik</xsl:attribute> | tagSet[7]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[8]/relation_type[. = 'object_type']
<xsl:value-of select="concat('https://term.museum-digital.de/grobsystematik/tag/', .)" /> | tagSet[9]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[10]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[11]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_oberbegriffsdatei"> | tagSet[12]/relation_type[. = 'object_type']
<lido:conceptID> | tagSet[13]/relation_type[. = 'object_type']
<xsl:attribute name="lido:source">oberbegriffsdatei</xsl:attribute> | tagSet[14]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[15]/relation_type[. = 'object_type']
<xsl:value-of select="concat('https://term.museum-digital.de/oberbegriffsdatei/tag/', .)" /> | tagSet[16]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[17]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[18]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_aat"> ">
<lido:conceptID>
<xsl:attribute name="lido:source">aat</xsl:attribute> <!-- objectWorkType exists via tags -->
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:for-each select="tagSet/tag_id">
<xsl:value-of select="concat('http://vocab.getty.edu/aat/', .)" /> <xsl:if test="../relation_type = 'object_type'">
</lido:conceptID> <lido:objectWorkType>
</xsl:for-each> <xsl:for-each select="../noda_tag_Set/noda_source">
<xsl:for-each select="objektart_lcsh"> <xsl:if test="string-length(../noda_link)!=0">
<lido:conceptID> <lido:conceptID>
<xsl:attribute name="lido:source">lcsh</xsl:attribute> <xsl:attribute name="lido:source">
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:value-of select="../noda_source"/>
<xsl:value-of select="concat('http://id.loc.gov/authorities/subjects/', .)" /> </xsl:attribute>
</lido:conceptID> <xsl:attribute name="lido:type">uri</xsl:attribute>
</xsl:for-each> <xsl:value-of select="../noda_link"/>
<xsl:for-each select="objektart_md_tag"> </lido:conceptID>
<lido:conceptID> </xsl:if>
<xsl:attribute name="lido:source">md:term</xsl:attribute> </xsl:for-each>
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:for-each select="../tag_name">
<xsl:value-of select="concat('https://term.museum-digital.de/md-de/tag/', .)" /> <lido:term>
</lido:conceptID> <xsl:attribute name="lido:addedSearchTerm">no</xsl:attribute>
</xsl:for-each> <xsl:if test="string-length(./@lang)!=0">
<xsl:if test="objektart!=''"> <xsl:attribute name="xml:lang">
<xsl:for-each select="objektart"> <xsl:value-of select="./@lang"/>
<lido:term> </xsl:attribute>
<xsl:attribute name="xml:lang">de</xsl:attribute> </xsl:if>
<xsl:value-of select="." /> <xsl:value-of select="."/>
</lido:term> <xsl:variable name="objektartschlagwort" select="." />
</xsl:for-each> </lido:term>
</xsl:if> </xsl:for-each>
<xsl:if test="objekt_record_set/objektart!=''"> </lido:objectWorkType>
<xsl:for-each select="objekt_record_set">
<xsl:if test="substring(objekt_record_weitergabe,1,1)=0">
<lido:term>
<xsl:attribute name="xml:lang">
<xsl:value-of select="objekt_record_lang" />
</xsl:attribute>
<xsl:value-of select="objektart" />
</lido:term>
</xsl:if> </xsl:if>
</xsl:for-each> </xsl:for-each>
</xsl:if>
</lido:objectWorkType> </xsl:when>
<xsl:for-each select="tagSet/tag_id"> <xsl:otherwise>
<xsl:if test="../relation_type = 'object_type'">
<lido:objectWorkType> <lido:objectWorkType>
<xsl:for-each select="../noda_tag_Set/noda_source"> <xsl:for-each select="objektart_gnd">
<xsl:if test="string-length(../noda_link)!=0"> <lido:conceptID>
<lido:conceptID> <xsl:attribute name="lido:source">gnd</xsl:attribute>
<xsl:attribute name="lido:source"> <xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="../noda_source"/> <xsl:value-of select="concat('http://d-nb.info/gnd/', .)" />
</xsl:attribute> </lido:conceptID>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="../noda_link"/>
</lido:conceptID>
</xsl:if>
</xsl:for-each> </xsl:for-each>
<xsl:for-each select="../tag_name"> <xsl:for-each select="objektart_grobsystematik">
<lido:term> <lido:conceptID>
<xsl:attribute name="lido:addedSearchTerm">no</xsl:attribute> <xsl:attribute name="lido:source">grobsystematik</xsl:attribute>
<xsl:if test="string-length(./@lang)!=0"> <xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:attribute name="xml:lang"> <xsl:value-of select="concat('https://term.museum-digital.de/grobsystematik/tag/', .)" />
<xsl:value-of select="./@lang"/> </lido:conceptID>
</xsl:attribute>
</xsl:if>
<xsl:value-of select="."/>
</lido:term>
</xsl:for-each> </xsl:for-each>
</lido:objectWorkType> <xsl:for-each select="objektart_oberbegriffsdatei">
</xsl:if> <lido:conceptID>
</xsl:for-each> <xsl:attribute name="lido:source">oberbegriffsdatei</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/oberbegriffsdatei/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_aat">
<lido:conceptID>
<xsl:attribute name="lido:source">aat</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://vocab.getty.edu/aat/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_lcsh">
<lido:conceptID>
<xsl:attribute name="lido:source">lcsh</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://id.loc.gov/authorities/subjects/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_md_tag">
<lido:conceptID>
<xsl:attribute name="lido:source">md:term</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/md-de/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:if test="objektart!=''">
<xsl:for-each select="objektart">
<lido:term>
<xsl:attribute name="xml:lang">de</xsl:attribute>
<xsl:value-of select="." />
</lido:term>
</xsl:for-each>
</xsl:if>
<xsl:if test="objekt_record_set/objektart!=''">
<xsl:for-each select="objekt_record_set">
<xsl:if test="substring(objekt_record_weitergabe,1,1)=0">
<lido:term>
<xsl:attribute name="xml:lang">
<xsl:value-of select="objekt_record_lang" />
</xsl:attribute>
<xsl:value-of select="objektart" />
</lido:term>
</xsl:if>
</xsl:for-each>
</xsl:if>
</lido:objectWorkType>
</xsl:otherwise>
</xsl:choose>
</lido:objectWorkTypeWrap> </lido:objectWorkTypeWrap>
<lido:classificationWrap> <lido:classificationWrap>
<xsl:for-each select="collectionSet"> <xsl:for-each select="collectionSet">
<lido:classification> <lido:classification>
<xsl:attribute name="lido:type">Sammlung</xsl:attribute> <xsl:attribute name="lido:type">Sammlung</xsl:attribute>

View File

@ -33,70 +33,133 @@
</xsl:if> </xsl:if>
<lido:objectClassificationWrap> <lido:objectClassificationWrap>
<lido:objectWorkTypeWrap> <lido:objectWorkTypeWrap>
<lido:objectWorkType>
<xsl:for-each select="objektart_gnd"> <xsl:choose>
<lido:conceptID> <xsl:when test="
<xsl:attribute name="lido:source">gnd</xsl:attribute> tagSet[0]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[1]/relation_type[. = 'object_type']
<xsl:value-of select="concat('http://d-nb.info/gnd/', .)" /> | tagSet[2]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[3]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[4]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_grobsystematik"> | tagSet[5]/relation_type[. = 'object_type']
<lido:conceptID> | tagSet[6]/relation_type[. = 'object_type']
<xsl:attribute name="lido:source">grobsystematik</xsl:attribute> | tagSet[7]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[8]/relation_type[. = 'object_type']
<xsl:value-of select="concat('https://term.museum-digital.de/grobsystematik/tag/', .)" /> | tagSet[9]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[10]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[11]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_oberbegriffsdatei"> | tagSet[12]/relation_type[. = 'object_type']
<lido:conceptID> | tagSet[13]/relation_type[. = 'object_type']
<xsl:attribute name="lido:source">oberbegriffsdatei</xsl:attribute> | tagSet[14]/relation_type[. = 'object_type']
<xsl:attribute name="lido:type">uri</xsl:attribute> | tagSet[15]/relation_type[. = 'object_type']
<xsl:value-of select="concat('https://term.museum-digital.de/oberbegriffsdatei/tag/', .)" /> | tagSet[16]/relation_type[. = 'object_type']
</lido:conceptID> | tagSet[17]/relation_type[. = 'object_type']
</xsl:for-each> | tagSet[18]/relation_type[. = 'object_type']
<xsl:for-each select="objektart_aat"> ">
<lido:conceptID>
<xsl:attribute name="lido:source">aat</xsl:attribute> <!-- objectWorkType exists via tags -->
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:for-each select="tagSet/tag_id">
<xsl:value-of select="concat('http://vocab.getty.edu/aat/', .)" /> <xsl:if test="../relation_type = 'object_type'">
</lido:conceptID> <lido:objectWorkType>
</xsl:for-each> <xsl:for-each select="../noda_tag_Set/noda_source">
<xsl:for-each select="objektart_lcsh"> <xsl:if test="string-length(../noda_link)!=0">
<lido:conceptID> <lido:conceptID>
<xsl:attribute name="lido:source">lcsh</xsl:attribute> <xsl:attribute name="lido:source">
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:value-of select="../noda_source"/>
<xsl:value-of select="concat('http://id.loc.gov/authorities/subjects/', .)" /> </xsl:attribute>
</lido:conceptID> <xsl:attribute name="lido:type">uri</xsl:attribute>
</xsl:for-each> <xsl:value-of select="../noda_link"/>
<xsl:for-each select="objektart_md_tag"> </lido:conceptID>
<lido:conceptID> </xsl:if>
<xsl:attribute name="lido:source">md:term</xsl:attribute> </xsl:for-each>
<xsl:attribute name="lido:type">uri</xsl:attribute> <xsl:for-each select="../tag_name">
<xsl:value-of select="concat('https://term.museum-digital.de/md-de/tag/', .)" /> <lido:term>
</lido:conceptID> <xsl:attribute name="lido:addedSearchTerm">no</xsl:attribute>
</xsl:for-each> <xsl:if test="string-length(./@lang)!=0">
<xsl:if test="objektart!=''"> <xsl:attribute name="xml:lang">
<xsl:for-each select="objektart"> <xsl:value-of select="./@lang"/>
<lido:term> </xsl:attribute>
<xsl:attribute name="xml:lang">de</xsl:attribute> </xsl:if>
<xsl:value-of select="." /> <xsl:value-of select="."/>
</lido:term> <xsl:variable name="objektartschlagwort" select="." />
</xsl:for-each> </lido:term>
</xsl:if> </xsl:for-each>
<xsl:if test="objekt_record_set/objektart!=''"> </lido:objectWorkType>
<xsl:for-each select="objekt_record_set">
<xsl:if test="substring(objekt_record_weitergabe,1,1)=0">
<lido:term>
<xsl:attribute name="xml:lang">
<xsl:value-of select="objekt_record_lang" />
</xsl:attribute>
<xsl:value-of select="objektart" />
</lido:term>
</xsl:if> </xsl:if>
</xsl:for-each> </xsl:for-each>
</xsl:if>
</lido:objectWorkType> </xsl:when>
<xsl:otherwise>
<lido:objectWorkType>
<xsl:for-each select="objektart_gnd">
<lido:conceptID>
<xsl:attribute name="lido:source">gnd</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://d-nb.info/gnd/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_grobsystematik">
<lido:conceptID>
<xsl:attribute name="lido:source">grobsystematik</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/grobsystematik/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_oberbegriffsdatei">
<lido:conceptID>
<xsl:attribute name="lido:source">oberbegriffsdatei</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/oberbegriffsdatei/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_aat">
<lido:conceptID>
<xsl:attribute name="lido:source">aat</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://vocab.getty.edu/aat/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_lcsh">
<lido:conceptID>
<xsl:attribute name="lido:source">lcsh</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('http://id.loc.gov/authorities/subjects/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:for-each select="objektart_md_tag">
<lido:conceptID>
<xsl:attribute name="lido:source">md:term</xsl:attribute>
<xsl:attribute name="lido:type">uri</xsl:attribute>
<xsl:value-of select="concat('https://term.museum-digital.de/md-de/tag/', .)" />
</lido:conceptID>
</xsl:for-each>
<xsl:if test="objektart!=''">
<xsl:for-each select="objektart">
<lido:term>
<xsl:attribute name="xml:lang">de</xsl:attribute>
<xsl:value-of select="." />
</lido:term>
</xsl:for-each>
</xsl:if>
<xsl:if test="objekt_record_set/objektart!=''">
<xsl:for-each select="objekt_record_set">
<xsl:if test="substring(objekt_record_weitergabe,1,1)=0">
<lido:term>
<xsl:attribute name="xml:lang">
<xsl:value-of select="objekt_record_lang" />
</xsl:attribute>
<xsl:value-of select="objektart" />
</lido:term>
</xsl:if>
</xsl:for-each>
</xsl:if>
</lido:objectWorkType>
</xsl:otherwise>
</xsl:choose>
</lido:objectWorkTypeWrap> </lido:objectWorkTypeWrap>
<lido:classificationWrap> <lido:classificationWrap>
<xsl:for-each select="collectionSet"> <xsl:for-each select="collectionSet">