ThomasM: Generate IDs nach SNMP-MIB Prinzip

Beitrag lesen

Hallo Jens,

ich möchte gern, dass jeder Node des XML-Files eine eindeutige ID bekommt, die dem Schema vom SNMP-MIB entspricht.

Probiere es so (root entspricht dem Wurzelelement, welches offenbar kein id-Attribut erhalten soll):

<?xml version="1.0" encoding="UTF-8"?>  
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  
  
  <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>  
  
  <xsl:template match="@* | node()">  
    <xsl:copy>  
      <xsl:apply-templates select="@* | node()"/>  
    </xsl:copy>  
  </xsl:template>  
  
  <xsl:template match="root//*">  
    <xsl:element name="{name()}">  
      <xsl:attribute name="id">  
        <xsl:number count="root//*" format="1" level="multiple"/>  
      </xsl:attribute>  
      <xsl:apply-templates select="@* | node()"/>  
    </xsl:element>  
  </xsl:template>  
  
</xsl:stylesheet>

Grüße,
Thomas