RE: [xsl] How to Create Sequence of Quoted Strings

Subject: RE: [xsl] How to Create Sequence of Quoted Strings
From: "Wei, Alice J." <ajwei@xxxxxxxxxxx>
Date: Thu, 24 Jan 2008 09:07:56 -0500

   Since you are dealing with double quotes, have you tried using backslashes
to escape the double quotes you tried to insert?

I believe it should do the trick.

Good luck!

Alice Wei
MIS 2008
School of Library and Information Science
Indiana University Bloomington
From: Eliot Kimber [ekimber@xxxxxxxxxxxx]
Sent: Thursday, January 24, 2008 8:29 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] How to Create Sequence of Quoted Strings

I suspect this is an FAQ and I feel like I should be able to figure it
out but I'm stumped.

What I'm trying to achieve is to take the set of @value values for the
xsd:enumeration children of xsd:restriction and generate a string of the
form "'foo' or 'bar' or 'fred'".

Using an xs:select statement with a simple FLOWR expression I can do
this but no using "'" as the quote (assuming the context is xs:restriction):

   <xsl:variable name="quotedNames" select="for $n in
xs:enumeration/@value return concat('^', $n, '^')"/>
   <xsl:sequence select="string-join($quotedNames, ' or ')"/>

Gives me "^foo^ or ^bar^ or ^fred^".

My problem is I can't figure out how to replace "^" with "'" in the
FLOWR expression--I must have been sick the day they discussed this
aspect of XSLT.

What silly thing was taught the day I was out sick? Or will this
particular approach simply not work?


Eliot Kimber
Senior Solutions Architect
"Bringing Strategy, Content, and Technology Together"
Main: 610.631.6770

Current Thread