Pogledajte određenu poruku
Staro 10. 12. 2011.   #23
AdriaMart
expert
Expert
 
Avatar AdriaMart
 
Datum učlanjenja: 15.03.2011
Poruke: 518
Hvala: 16
20 "Hvala" u 17 poruka
AdriaMart is on a distinguished road
Default

offtopic:Postavio bih ovo pitanje u podforumu pocetnicka pitanja ali da ne dupliram teme...

Kolega mi je dao odgovor na pitanje koje sam postavio na pocetu ali kako da ovo primenim i za sta konkretno sluzi XSLT i kaze da je ovo nacin da se dobiju precizne xpath putanje bio kog elementa:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xslutput omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>

<xsl:variable name="vApos">'</xsl:variable>

<xsl:template match="*[@* or not(*)] ">
<xsl:if test="not(*)">
<xsl:apply-templates select="ancestor-or-self::*" mode="path"/>
<xsl:value-of select="concat('=',$vApos,.,$vApos)"/>
<xsl:text>&#xA;</xsl:text>
</xsl:if>
<xsl:apply-templates select="@*|*"/>
</xsl:template>

<xsl:template match="*" mode="path">
<xsl:value-of select="concat('/',name())"/>
<xsl:variable name="vnumPrecSiblings" select=
"count(preceding-sibling::*[name()=name(current())])"/>
<xsl:if test="$vnumPrecSiblings">
<xsl:value-of select="concat('[', $vnumPrecSiblings +1, ']')"/>
</xsl:if>
</xsl:template>

<xsl:template match="@*">
<xsl:apply-templates select="../ancestor-or-self::*" mode="path"/>
<xsl:value-of select="concat('[@',name(), '=',$vApos,.,$vApos,']')"/>
<xsl:text>&#xA;</xsl:text>
</xsl:template>
</xsl:stylesheet>
__________________
I'm not sexy and I know IT!
AdriaMart je offline   Odgovorite uz citat