xsl-list
[Top] [All Lists]

Re: generate full xpath name to an attribute?

2003-03-31 12:32:56
Do have a look here:

http://www.topxml.com/code/default.asp?p=3&id=v20010323001030

This code generates a Xpath expression that uniquely selects any (type of)
node -- even for a namespace node.

Of course, Mike is right that if element names belong to a non-null
namespace, the environment to evaluate the expression must have exactly the
same namespaces defined...


=====
Cheers,

Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL



"Ray Tayek" <rtayek(_at_)attbi(_dot_)com> wrote in message
news:5(_dot_)2(_dot_)0(_dot_)9(_dot_)2(_dot_)20030331031515(_dot_)02681810(_at_)mail(_dot_)attbi(_dot_)com(_dot_)(_dot_)(_dot_)
hi, i need to generate the full xpath name (location) for attributes in
the
following xsl (see below).

instead of using <xsl:attribute name="name"><xsl:value-of
select="name()"/></xsl:attribute> which gets me the just the attribute
(field) name, i would like to generate the full xpath expression from the
root of the document (i guess it would look something like:
/......./Node/SingleForces(_at_)attribute_name). i.e. what do i use in instead
of: <xsl:value-of select="name()"/> to get the fully qualified name for
this field from the root.

thanks

<xsl:template match="Node/SingleForces">
         <td>
                 <xsl:for-each select="@*">
                         <xsl:element name="label">
                                 <xsl:attribute name="for"><xsl:value-of
select="name()"/></xsl:attribute>
                                 <xsl:value-of select="name()"/>
                         </xsl:element>
                         <xsl:element name="input">
                                 <xsl:attribute
name="type">text</xsl:attribute>
                                 <xsl:attribute
name="size">4</xsl:attribute>
                                 <xsl:attribute name="id"><xsl:value-of
select="name()"/></xsl:attribute>
                                 <xsl:attribute name="name"><xsl:value-of
select="name()"/></xsl:attribute>
                                 <xsl:attribute name="value"><xsl:value-of
select="."/></xsl:attribute>
                         </xsl:element>
                 </xsl:for-each>
         </td>
         <xsl:apply-templates/>
</xsl:template>

---
ray tayek http://tayek.com/ actively seeking mentoring or telecommuting
work
vice chair orange county java users group http://www.ocjug.org/
hate spam? http://samspade.org/ssw/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list






 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list