xsl-list
[Top] [All Lists]

RE: [xsl] Is it possible to create xsl:sort from input parameters using XSLT 2.0 (Saxon)?

2006-08-01 03:02:19
A good guide to XML Schema is Priscilla Walmsley's book Definitive XML
Schema published by Prentice Hall. 

It's probably overkill to learn all about XML Schema just for this problem,
but I mentioned it because there are hundreds of errors that people make
with path expressions which would be diagnosed much more quickly if people
used schema-aware stylesheets and queries. Of course, you still need to
understand the XSLT/XPath rules to get things right.

I still think the right solution for this problem might be to generate the
stylesheet before running it. You said that wasn't possible, but you didn't
say why.

Michael Kay
http://www.saxonica.com/



-----Original Message-----
From: Nick Glenister [mailto:NGlenister(_at_)Moneyfacts(_dot_)co(_dot_)uk] 
Sent: 01 August 2006 08:57
To: 'xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com'
Subject: RE: [xsl] Is it possible to create xsl:sort from 
input parameters using XSLT 2.0 (Saxon)?

Hi,

thanks for info, unfortunatly I don't know how to make a 
schema... at the risk of being off topic does anyone have any 
good references to get me started?

cheers

Nick


-----Original Message-----
From: Michael Kay [mailto:mike(_at_)saxonica(_dot_)com]
Sent: 31 July 2006 17:53
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Is it possible to create xsl:sort from 
input parameters using XSLT 2.0 (Saxon)?


<xsl:param name="sortField"/>

And into this param i pass the XML:

<SortFields>
    <SortField>
            <Sort>lendername</Sort>
            <Order>ascending</Order>
            <DataType>text</DataType>
            <CaseOrder>lowercasefirst</CaseOrder>
    </SortField>
</SortFields>


rather than use 12 parameters (four for each <xsl:sort/>), 
I had hoped 
that using this XML I would be able to read the values out like so:

    <xsl:sort select="$sortField/SortField[1]/Sort"
order="{$sortField/SortField[1]/Order}"/>

You want $sortField/SortFields/SortField[1]/Order


As far as I can tell the order attribute should read 
"acsending" out 
of the XML but I've no real way of finding out what it is reading.

Take a look at the trace() function, or simply do 
<xsl:copy-of select="$sortField"/>.

Better still, write a little schema for this XML document and 
make your stylesheet schema-aware, and then the error will be 
reported to you at compile time.

Michael Kay
http://www.saxonica.com/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



This inbound message has been scanned for viruses by 
MailControl for Moneyfacts Group plc.


The Investment, Life & Pensions Annual Awards Lunch 2006 will 
take place on Wednesday 20th September at The Brewery, 
Chiswell Street, London. To book your table or for more 
information, contact Miranda Siliprandi on 0870 2250 491 or 
email msiliprandi(_at_)moneyfacts(_dot_)co(_dot_)uk

The Moneyfacts 11th Annual Conference takes place on Tuesday 
7th November 2006 at the Shaw Centre, Novotel Euston London 
in association with our Platinum Sponsors, CACI. For 
sponsorship and general enquires please email Anne Joyce at 
ajoyce(_at_)moneyfacts(_dot_)co(_dot_)uk or to reserve your place, call our 
ticket hotline on 0870 2250 100.

E-mail Disclaimer: This e-mail message contains confidential 
information and is intended only for the individual entity or 
organisation named. If you are not the named addressee you 
should not disseminate, distribute, print or copy this e-mail 
and/or attachments (either whole or partial). To do so may 
constitute a breach of confidence and/or privilege. Please 
notify the sender immediately by e-mail if you have received 
this e-mail by mistake and delete this e-mail permanently 
from your system. E-mail transmissions cannot be guaranteed 
to be secure or error-free as information could be 
intercepted, corrupted, lost, destroyed, maliciously altered, 
arrive late or incomplete, or contain viruses. The sender 
therefore does not accept liability for any errors or 
omissions in the contents of this message, which arise as a 
result of e-mail transmission. If verification is required 
please request a hard-copy version. Please note that any 
views or opinions presented in this e-mail are !
 those of the author and do not necessarily represent those 
of Moneyfacts Group plc or their affiliates. Whilst every 
step is taken to ensure e-mails are virus free when they 
leave Moneyfacts Group systems, we accept no liability for 
any damage caused by any virus received.   This outbound 
message has been scanned for viruses by MailControl for 
Moneyfacts Group plc.  

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>