pices: Iterarion (Antwort auf Thomas JS nachricht von Mittwoch)

Beitrag lesen

Hallo,

Hallo, ich glaube ich habe schnell houha gesagt.ich kriege die "id" bei "<dataquery>" und nicht dig:instances was soll ich ergänzen?

Ausgehend von deinem XML aus deinem ersten Posting:

Grüße
Thomas

----------- xslt -------------

<?xml version="1.0" encoding="iso-8859-1"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dig="http://www.dig.org">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/data">
  <data>
   <xsl:for-each select="dataquery">
    <xsl:variable name="DQPos" select="position()" />
    <dataquery>
     <xsl:for-each select="dig:">
      xsl:copy
       <xsl:copy-of select="@
"/>
       <xsl:attribute name="id">
        <xsl:value-of select="$DQPos"/>
       </xsl:attribute>
       <xsl:copy-of select="*"/>
      </xsl:copy>
     </xsl:for-each>
    </dataquery>
   </xsl:for-each>
  </data>
</xsl:template>
</xsl:stylesheet>


> >   
> > -------- Ausgabe ---------  
> > [code lang=xml  
> > <?xml version="1.0" encoding="UTF-8"?>  
> > <data xmlns:dig="http://www.dig.org">  
> >    <dataquery>  
> >       <dig:instances id="1">  
> >          <dig:catom xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="meta:ActionWithSuccessor"/>  
> >       </dig:instances>  
> >    </dataquery>  
> >    <dataquery>  
> >       <dig:instances id="2">  
> >          <dig:catom xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="meta:Action"/>  
> >       </dig:instances>  
> >    </dataquery>  
> >    <dataquery>  
> >       <dig:instances id="3">  
> >          <dig:catom xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="meta:Action"/>  
> >       </dig:instances>  
> >    </dataquery>  
> > </data>[/code]  
>   
> Hi ,  
> ich kriege eine fehlermeldung wenn ich mit den prozessor arbeite:"XTDE0410: Cannot create an attribute node after creating a child of the containing element" und mit meine Editor kommt gar nichts raus  
>   

dieses mal geschafft!!!  
  
danke nochmals Thomas