yes and tried doing that with if's. i found some stuff in the archives
about determining whether something is an element or an attribute at
http://www.biglist.com/lists/xsl-list/archives/200212/msg00523.html and
http://www.biglist.com/lists/xsl-list/archives/200212/msg00518.html
<xsl:if test="../@*/.">
<xsl:if test="../@*">
count(. | ../@*) = count(../@*)
none of these seem to work very well.
It's not surprising they don't work, if you read the messages you quoted
you'd see that they are replies explaining that the suggested code was wrong.
test="../@*/." is the same as test="../@*" and tests to see if your
parent has any attributes.
Ieven if you were using correct code to distinguish elements from
attributes (eg self::* is true for elements and false for attributes)
<xsl:if test="../@*/.">
<xsl:text>@</xsl:text>
</xsl:if>
<xsl:if test="not(../@*/.)">
<xsl:text>/</xsl:text>
</xsl:if>
would be the wrong thing to do as even for attributes you need a /
between steps, so that should not be conditional, the only conditional
part needs to be whether to use a @ on the last step. But several full
solutions to this problem are in the archives and the faq.
David
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list