|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Filtering, xslt 2.0
On Wed, 2 Nov 2022 at 13:01, Dave Pawson dave.pawson@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > On Wed, 2 Nov 2022 at 12:34, David Carlisle d.p.carlisle@xxxxxxxxx > <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > > > > > > > On Wed, 2 Nov 2022 at 12:13, Dave Pawson dave.pawson@xxxxxxxxx < > xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > > You should use xs:string not xs:string* as if you passed in a sequence > your later tokenize would fail. > > > > I'd do > > > > <xsl:param name="types" as="xs:string*"/> > > <xsl:variable name="typesseq" as="xs:string*" select=" tokenize($types, > ', *') /> > spurious * sorry <xsl:param name="types" as="xs:string"/> <xsl:variable name="typesseq" as="xs:string*" select=" tokenize($types, ', *') /> which was my main point: your $types is a single string not a sequence of strings, so as="xs:string" with no* > > > Then use the sequence explicitly rather than relying on the optimiser to > avoid tokenizing on every use. > > > > > > <xsl:when test="type = $typesseq "> > > > > David > > Which seems to tokenize once rather than n times? Agreed more > efficient (not a concern with my use) > I don't understand > select=" tokenize($types, ', *') > > The 'token' seems to be ,* > where I tokenize on , only? > > Is that significant please? > as Martin says, that is a regex for comma followed by 0 or more spaces, to allow types="a, b, c" rather than just types="a,b,c" > > Being v.suspicious of David That is not how you spell "trusting" David
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








