Der nach dem MODS-Schema exportierte XML-Strom kann durch folgende XSL-Datei in einen ZMS-kompatiblen XML-Strom transformiert werden:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [
  <!ENTITY nbsp "&#160;">
  <!ENTITY nl   "&#10;">
  <!ENTITY copy "&#169;">
  <!ENTITY mdash   "&#8212;">
  <!ENTITY middot "&#183;">
]>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
                xmlns="http://www.loc.gov/mods/v3">
<xsl:output method="xml" 
            version="1.0" 
            encoding="utf-8"
            omit-xml-declaration="no" 
            standalone="yes" 
            cdata-section-elements="" 
            indent="yes"
            doctype-system=""
            media-type="string"/>
<xsl:strip-space elements="*"/>

<!-- ###################################################################### -->
<!-- ### Root Node                                                          -->
<!-- ###################################################################### -->
<xsl:template match="/">
<ZMSCustom 
 meta_id="refLiterature">
     <xsl:apply-templates />
</ZMSCustom>
</xsl:template>

<xsl:template match="modsCollection">
<ZMSCustom id_fix="items" id_prefix="items" meta_id="refLiteratureItems">
<records><list>
<xsl:apply-templates />
</list></records>
</ZMSCustom>
</xsl:template>


<xsl:template match="mods">
 <item type="dictionary">
  <dictionary>
    <item key="attr_dc_description">
     <!-- <xsl:for-each select="subject/topic">
      <xsl:value-of select ="." disable-output-escaping="no"/><xsl:text> | </xsl:text>
     </xsl:for-each> -->
     <xsl:text>   </xsl:text>
    </item>
    <item key="author">
      <xsl:for-each select="name[@type='personal']">
       <xsl:value-of select ="namePart[@type='family']" disable-output-escaping="no"/><xsl:text> </xsl:text>
       <xsl:value-of select ="namePart[@type='given']" disable-output-escaping="no"/><xsl:if test="position() != last()"><xsl:text>, </xsl:text></xsl:if>
      </xsl:for-each>
    </item>
    <item key="id"><![CDATA[]]></item>
    <item key="issue">
     <xsl:value-of select ="substring(relatedItem/part/date, 1, 4)" disable-output-escaping="no"/>
     <xsl:if test="relatedItem/part/detail[@type='volume']/number">
       <xsl:text>;</xsl:text><xsl:value-of select ="relatedItem/part/detail[@type='volume']/number" disable-output-escaping="no"/>
     </xsl:if>
     <xsl:if test="relatedItem/part/extent[@unit='page']/start">
       <xsl:text>:</xsl:text><xsl:value-of select ="relatedItem/part/extent/start" disable-output-escaping="no"/>
     </xsl:if>
     <xsl:if test="relatedItem/part/extent[@unit='page']/end">
       <xsl:text>-</xsl:text><xsl:value-of select ="relatedItem/part/extent/end" disable-output-escaping="no"/>
     </xsl:if>
    </item>
    <item key="journal">
     <xsl:value-of select ="translate(relatedItem/titleInfo/title,'.',' ')" disable-output-escaping="no"/>
    </item>
    <item key="refid">
      <xsl:choose>
        <xsl:when test="contains(location/url, 'PM:')">
          <xsl:value-of select ="substring-after(location/url,'PM:')" disable-output-escaping="no"/>
        </xsl:when>
        <xsl:otherwise>
         <xsl:value-of select ="location/url" disable-output-escaping="no"/>
       </xsl:otherwise>
      </xsl:choose>
    </item>
    <item key="refscheme">
      <xsl:choose>
        <xsl:when test="contains(location/url, 'PM:')">
          <xsl:text>pubmed</xsl:text>
        </xsl:when>
        <xsl:otherwise>
        </xsl:otherwise>
      </xsl:choose>
    </item>
    <item key="title"><xsl:value-of select="titleInfo/title" disable-output-escaping="no"/></item>
    <item key="titlealt"><xsl:value-of select ="translate(substring(name/namePart[@type='family'], 1, 3), 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/><xsl:value-of select ="substring(originInfo/dateIssued, 1, 4)"/></item>
  </dictionary>
 </item>
</xsl:template>

<!-- ###################################################################### -->
<!-- ### Text nodes                                                         -->
<!-- ###################################################################### -->
<xsl:template match="text()">
<xsl:value-of select ="." disable-output-escaping="no"/>
</xsl:template>

<!-- ###################################################################### -->
<!-- ### Residual  +++ garbage +++                                          -->
<!-- ###################################################################### -->
<xsl:template match="*">
<!-- *** Do nothing *** -->
</xsl:template>


</xsl:stylesheet>