aspose file tools*
The moose likes Product and Other Certifications and the fly likes Grasping Numbers Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Product and Other Certifications
Bookmark "Grasping Numbers" Watch "Grasping Numbers" New topic
Author

Grasping Numbers

Srinivas Rallapalli
Greenhorn

Joined: May 20, 2003
Posts: 18
i have an xml page, i have written an xsl for it. in the xml page i have some elements called <bits> in this bits element again there may be 2 or 1 elements like this:<start> or <start></start><end></end>
there may be more sumber of start elements in the same bits elements, or more number of their combinations,
like:
1.<start>2</start><start>1</start>9<start></start>.
2.<start>24</start><end>15</end><start>12</start><end>10</end>.
3.<start>8</start><end>6</end><start>24</start>
4.<start>24</start><start>8</start><end>6</end>
5.<start>24</start><start>8</start><end>6</end><start>2</start>
like this there may be lot of combinations.
my xsl code for taking numbers in this is:
<xsl:for-each select="Bits/Start">
<xsl:variable name="actual_pos"><xsl:value-of select="position()"/>
</xsl:variable>
<xsl:variable name="start_val">
<xsl:value-of select="."/>
</xsl:variable>
<xsl:variable name="DStartEnd">
<xsl:choose>
<xsl:when test=" contains($start_val, '(' )">
<xsl:value-of select="substring-after($start_val, '(' )"/>:
</xsl:when>
<xsltherwise>
<xsl:value-of select="$start_val"/>:
</xsltherwise>
</xsl:choose>
<xsl:choose>
<xsl:when test="../End[position()=$actual_pos]">
<xsl:variable name="end">
<xsl:value-of select="../End[position()=$actual_pos]"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="contains($end, ')' )">
<xsl:value-of select="substring-before($end, ')')"/>
</xsl:when>
<xsltherwise>
<xsl:value-of select="$end"/>
</xsltherwise>
</xsl:choose>
</xsl:when>
<xsltherwise>
<xsl:value-of select="$start_val"/>
</xsltherwise>
</xsl:choose>
</xsl:variable>
<xsl:call-template name="addElement2">
<xsl:with-param name="DStartEnd" select="$DStartEnd"/>
<xsl:with-param name="name" select="../../Field"/>
<xsl:with-param name="access" select="../../AccType"/>
<xsl:with-param name="DescLongName" select="../../Desc/LongName"/>
<xsl:with-param name="DescText" select="../../Desc/DescriptionText"/>
</xsl:call-template>
</xsl:for-each>
it is working for all the conditions except for the 4th and 5th conditions.
i found that it is due to, the first start element is looking for the end element, after the first start element if again start element is there, it is not taking care of the second start element but it is taking the end element of second start element.
so please give me an idea, how to do for the elements like 4th and 5th.
thanks.
srini.

Edit Comment:
Disabled smiles....;)
- madhav
[ September 05, 2003: Message edited by: Madhav Lakkapragada ]
 
jQuery in Action, 2nd edition
 
subject: Grasping Numbers