..
/
download
<?xml version="1.0" encoding="UTF-8"?>
<xsl:transform
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="1.0">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="pmEntry/dmRef">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="IDENT">
<xsl:apply-templates select="dmRefIdent" mode="text"/>
</xsl:attribute>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="pmEntry/dmodule|/publication/dmodule">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="IDENT">
<xsl:apply-templates select="identAndStatusSection/dmAddress/dmIdent|idstatus/dmaddres" mode="text"/>
</xsl:attribute>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="pmentry/refdm">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="IDENT">
<xsl:apply-templates select="dmeextension" mode="text"/>
<xsl:apply-templates select="dmc/avee" mode="text"/>
<xsl:apply-templates select="issno" mode="text"/>
<xsl:apply-templates select="language" mode="text"/>
</xsl:attribute>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="dmIdent|dmRefIdent" mode="text">
<xsl:apply-templates select="identExtension" mode="text"/>
<xsl:apply-templates select="dmCode" mode="text"/>
<xsl:apply-templates select="issueInfo" mode="text"/>
<xsl:apply-templates select="language" mode="text"/>
</xsl:template>
<xsl:template match="dmaddres" mode="text">
<xsl:apply-templates select="dmcextension" mode="text"/>
<xsl:apply-templates select="dmc/avee" mode="text"/>
<xsl:apply-templates select="issno" mode="text"/>
<xsl:apply-templates select="language" mode="text"/>
</xsl:template>
<xsl:template match="identExtension" mode="text">
<xsl:value-of select="@extensionProducer"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@extensionCode"/>
<xsl:text>-</xsl:text>
</xsl:template>
<xsl:template match="dmCode|avee" mode="text">
<xsl:value-of select="@modelIdentCode|modelic"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@systemDiffCode|sdc"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@systemCode|chapnum"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@subSystemCode|section"/>
<xsl:value-of select="@subSubSystemCode|subsect"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@assyCode|subject"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@disassyCode|discode"/>
<xsl:value-of select="@disassyCodeVariant|discodev"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@infoCode|incode"/>
<xsl:value-of select="@infoCodeVariant|incodev"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@itemLocationCode|itemloc"/>
<xsl:if test="@learnCode">
<xsl:text>-</xsl:text>
<xsl:value-of select="@learnCode"/>
<xsl:value-of select="@learnEventCode"/>
</xsl:if>
</xsl:template>
<xsl:template match="issueInfo|issno" mode="text">
<xsl:text>_</xsl:text>
<xsl:value-of select="@issueNumber|@issno"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@inWork|@inwork"/>
</xsl:template>
<xsl:template match="language" mode="text">
<xsl:text>_</xsl:text>
<xsl:value-of select="@languageIsoCode|@language"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@countryIsoCode|@country"/>
</xsl:template>
<xsl:template match="pmEntry/pmRef">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="IDENT">
<xsl:apply-templates select="pmRefIdent" mode="text"/>
</xsl:attribute>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="pmRefIdent" mode="text">
<xsl:apply-templates select="identExtension" mode="text"/>
<xsl:apply-templates select="pmCode" mode="text"/>
<xsl:apply-templates select="issueInfo" mode="text"/>
<xsl:apply-templates select="language" mode="text"/>
</xsl:template>
<xsl:template match="pmCode" mode="text">
<xsl:value-of select="@modelIdentCode"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@pmIssuer"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@pmNumber"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="@pmVolume"/>
</xsl:template>
<xsl:template match="pmEntry/externalPubRef">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="IDENT">
<xsl:apply-templates select="externalPubRefIdent" mode="text"/>
</xsl:attribute>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="externalPubRefIdent" mode="text">
<xsl:value-of select="(externalPubCode|externalPubTitle)[1]"/>
</xsl:template>
<xsl:template match="pmEntry/xi:include|/publication/xi:include">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="IDENT">
<xsl:value-of select="@href"/>
</xsl:attribute>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>
</xsl:transform>
gopher://khzae.net/0/s1000d/s1kd-tools/src/tools/s1kd-flatten/xsl/remdups1.xsl