Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


Re: Newbie (Parse and substring).

From: "Stan" <netsunset@-----------.--->
To: NULL
Date: 3/6/2007 7:30:00 PM

Martin,
Many thanks for your quick reply..
I ve found a part of the solution.
In fact, the part after http://mywebsite can be uk or sp and the lenght will 
be fixed (2 characters).

Is it possible to use Wildcard with the substring-after ?
Like
<xsl:key name="smain-by-type" match="smain" 
use="substring-before(substring-after(substring-after(lnk, 
'http://mywebsite/??/'), '/'), '/')"/>

By the way, how to display the two first elements of a group (if there are 
more than 2) and add dynamic link "Click here for more results".

I mean
Thriller
<ul>
    <li>Connelly</li>
    <li>Coben</li>
    <li>Click here for more results</li>
</ul>

And in final, it's out of topic. I need to replace the Group Name by another 
word.
I have another xml file that comes like this
<main>
        <title language="uk" word="thriller" commercial="American Thriller" 
/>
        <title language="sp" word="thriller" commercial="bla bla bla" />
</main>
So the goal is to get this

American Thriller
<ul>
    <li>Connelly</li>
    <li>Coben</li>
    <li>Click here for more results</li>
</ul>

Of course, it was very easier to do this job with asp but they ask me to do 
it with xslt..

I promise you, it should be the last question (I place an order for a book 
that I don't yet receive..).

Stan


"Martin Honnen" <mahotrash@y...> a écrit dans le message de 
news:uMYF4VAYHHA.2320@T......
> Stan wrote:
>
>> I use another node like this one
>>       <lnk>http://mywebsite/uk/book/computer/asp</lnk>
>>       <lnk>http://mywebsite/sp/cd/world/xxx</lnk>
>>
>> I would like to perform the sort on "book" and "cd".
>
> Is the part http://mywebsite/ fixed and known to the stylesheet?
> If yes then you need e.g.
>
> <xsl:key name="smain-by-type" match="smain" 
> use="substring-before(substring-after(substring-after(lnk, 
> 'http://mywebsite/'), '/'), '/')"/>
>
>
> and e.g.
>
>       <xsl:apply-templates select="main/smain[generate-id() = 
> generate-id(key('smain-by-type', 
> substring-before(substring-after(substring-after(lnk, 
> 'http://mywebsite/'), '/'), '/'))[1])]" mode="group">
>         <xsl:sort 
> select="substring-before(substring-after(substring-after(lnk, 
> 'http://mywebsite/'), '/'), '/')" data-type="text" order="ascending"/>
>       </xsl:apply-templates>
>
> and the same "monster" expressions at the other places. String 
> manipulation can get a bit cumbersome in XSLT/XPath 1.0 but you simply 
> need to use enough combinations of substring-after and substring-before to 
> extract the part you want.
>
> -- 
>
> Martin Honnen --- MVP XML
> http://JavaScript.FAQTs.com/ 



transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent