[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] case-sensitivity in xml


Subject: Re: [xsl] case-sensitivity in xml
From: RQamar <qamar_rahil@xxxxxxxxxxx>
Date: Mon, 24 Jan 2005 09:39:14 +0000

Hi


then translate($string,$UPPER,$lower) will convert to lower case (at least in the English/Latin alphabet).


Case-folding element and attribute names in an instance could be done with a modified identity transform and the xsl:element instruction. (Ask again if these hints are not enough to get you there.)


Forgive me for being a novice in XSLT programming but given a case where I want to determine the existence of a @name='Abc' where $prime='ABC' (as shown below)
----------------------------
<xsl:variable name="prime" select="document('result.xml')/Top/PrimeConcept"/>
<xsl:if test="@name = $prime">
<xsl:value-of select="@name"/>
</xsl:if>
</xsl:variable>
---------------------------
would I need to first declare some <xsl:variable> to convert both @name and $name to either UPPER or lower-case and then compare them? Would there not be an inconsistency with its representation in their respective xml documents then? I'm not entirely clear of how the XML file will 'communicate' with the XSL file given that Ive changed the case of an element/attribute.


Im finding the dynamic assigning and traversing process in XSL very confusing as well. Is there a logical way of traversing through a tree to determine the grandchild of an element albeit indirectly. So I know that my XML file is as below

-----------------------
<DEFCONCEPT id="10180" name="Car">
<PARENT>
<CONCEPT name="Automobile" ref="10181"/>
</PARENT>
<CHILD>
<CONCEPT name="Toyota" ref="10235"/>
</CHILD>
</DEFCONCEPT >
<DEFCONCEPT id="10235" name="Toyota">
<PARENT>
<CONCEPT name="Car" ref="10180"/>
</PARENT>
<CHILD>
<CONCEPT name="Corolla" ref="10279"/>
</CHILD>
</DEFCONCEPT >
<DEFCONCEPT id="10279" name="Corolla">
<PARENT>
<CONCEPT name="Toyota" ref="10235"/>
</PARENT>
</DEFCONCEPT >
-----------------------
and I want to reach the <DEFCONCEPT name="Corolla"> from the node <DEFCONCEPT name="Car"> because I have a query to determine the existence of a kind_of Car 'Corolla' irrespective of the case in which it has been written and where in the hierarchy it exists. Will this be possible using XSL?


Would appreciate comments on this.

Regards
Rahil


Current Thread
Keywords