Re: [xsl] XPath discovery tool?

Subject: Re: [xsl] XPath discovery tool?
From: Wolfgang Laun <wolfgang.laun@xxxxxxxxx>
Date: Sun, 25 Apr 2010 16:20:54 +0200
Perhaps a stylesheet determining the XPath expressions for all
elements and adding them as comments in front of each XML element?
-W

<?xml version="1.0"?>
<xsl:stylesheet version="2.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
    xmlns:str="http://my/str";>

  <xsl:function name="str:path" as="xsd:string">
    <xsl:param name="node" as="node()?"/>
    <xsl:for-each select="$node">
      <xsl:choose>
        <xsl:when test="parent::node()">
           <xsl:value-of select="concat(str:path(parent::node()),
                                        '/',
                                        node-name($node))"/>
        </xsl:when>
        <xsl:otherwise>
          <xsl:value-of select="''"/>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:for-each>
  </xsl:function>

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

  <xsl:template match="*">
    <xsl:comment><xsl:value-of select="str:path(.)"/>
    </xsl:comment>
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>

  <xsl:template match="@*">
    <xsl:copy/>
  </xsl:template>

</xsl:stylesheet>


On Sun, Apr 25, 2010 at 2:09 AM,  <cknell@xxxxxxxxxx> wrote:
> I have a number of XML-formatted Excel workbooks from which I wish to
extract data. While the procedure for determining the XPath to any particular
cell's value is not difficult, it is tedious. Does anyone know of a tool into
which I could load the XML file, select an element, and automatically display
the XPath to that element?
>
> --
> Charles Knell
> cknell@xxxxxxxxxx - email

Current Thread