/ .. / / -> download
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  version="1.0">

  <xsl:output method="text"/>

  <xsl:template match="*">
    <xsl:apply-templates select="*"/>
  </xsl:template>

  <xsl:template match="commentRef|dmRef|refdm|dmlRef|pmRef|refpm"/>

  <xsl:template match="dmIdent|dmaddres">
    <xsl:choose>
      <xsl:when test="identExtension">DME-</xsl:when>
      <xsl:otherwise>DMC-</xsl:otherwise>
    </xsl:choose>
    <xsl:apply-templates select="identExtension|dmcextension"/>
    <xsl:apply-templates select="dmCode|dmc"/>
    <xsl:apply-templates select="issueInfo|issno"/>
    <xsl:apply-templates select="language"/>
  </xsl:template>

  <xsl:template match="identExtension|dmcextension">
    <xsl:value-of select="@extensionProducer|dmeproducer"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@extensionCode|dmecode"/>
    <xsl:text>-</xsl:text>
  </xsl:template>

  <xsl:template match="dmCode|avee">
    <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">
    <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">
    <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="pmIdent|pmaddres">
    <xsl:choose>
      <xsl:when test="identExtension">PME-</xsl:when>
      <xsl:otherwise>PMC-</xsl:otherwise>
    </xsl:choose>
    <xsl:apply-templates select="identExtension"/>
    <xsl:apply-templates select="pmCode|pmc"/>
    <xsl:apply-templates select="issueInfo|issno"/>
    <xsl:apply-templates select="language"/>
  </xsl:template>

  <xsl:template match="pmc">
    <xsl:value-of select="@modelIdentCode|modelic"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@pmIssuer|pmissuer"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@pmNumber|pmnumber"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@pmVolume|pmvolume"/>
  </xsl:template>

  <xsl:template match="scormContentPackageIdent">
    <xsl:choose>
      <xsl:when test="identExtension">SME-</xsl:when>
      <xsl:otherwise>SMC-</xsl:otherwise>
    </xsl:choose>
    <xsl:apply-templates select="identExtension"/>
    <xsl:apply-templates select="scormContentPackageCode"/>
    <xsl:apply-templates select="issueInfo"/>
    <xsl:apply-templates select="language"/>
  </xsl:template>

  <xsl:template match="scormContentPackageCode">
    <xsl:value-of select="@modelIdentCode"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@scormContentPackageIssuer"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@scormContentPackageNumber"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@scormContentPackageVolume"/>
  </xsl:template>

  <xsl:template match="commentIdent|cstatus">
    <xsl:text>COM-</xsl:text>
    <xsl:apply-templates select="commentCode|ccode"/>
    <xsl:apply-templates select="language"/>
  </xsl:template>

  <xsl:template match="commentCode|ccode">
    <xsl:value-of select="@modelIdentCode|modelic"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@senderIdent|sendid"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@yearOfDataIssue|diyear"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@seqNumber|seqnum"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@commentType|ctype/@type"/>
  </xsl:template>

  <xsl:template match="dmlIdent|dml[dmlc]">
    <xsl:text>DML-</xsl:text>
    <xsl:apply-templates select="dmlCode|dmlc"/>
    <xsl:apply-templates select="issueInfo|issno"/>
  </xsl:template>

  <xsl:template match="dmlCode|dmlc">
    <xsl:value-of select="@modelIdentCode|modelic"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@senderIdent|sendid"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@dmlType|dmltype/@type"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@yearOfDataIssue|diyear"/>
    <xsl:text>-</xsl:text>
    <xsl:value-of select="@seqNumber|seqnum"/>
  </xsl:template>

  <xsl:template match="imfIdent">
    <xsl:text>ICN-</xsl:text>
    <xsl:value-of select="imfCode/@imfIdentIcn"/>
  </xsl:template>

</xsl:stylesheet>


/ gopher://khzae.net/0/s1000d/s1kd-tools/src/tools/s1kd-ref/ref.xsl
Styles: Light Dark Classic