Re: [xsl] Dynamically Converting text within an element to xml nodes within the output document

Subject: Re: [xsl] Dynamically Converting text within an element to xml nodes within the output document
From: Alex Muir <alex.g.muir@xxxxxxxxx>
Date: Mon, 28 Dec 2009 17:59:15 +0000
Thanks that worked, did the following.

<xsl:sequence
select="saxon:parse(replace($content,'\[(/?\w+)([^\]]*?)\]','&lt;$1&gt;'))"/>


On Mon, Dec 28, 2009 at 5:33 PM, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> It's probably simplest to replace [] by <> (e.g. using translate()) to
> create lexical XML, and then parse the resulting string into a node tree by
> using an extension such as saxon:parse().
>
> Regards,
>
> Michael Kay
> http://www.saxonica.com/
> http://twitter.com/michaelhkay
>
>> -----Original Message-----
>> From: Alex Muir [mailto:alex.g.muir@xxxxxxxxx]
>> Sent: 28 December 2009 17:29
>> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>> Subject: [xsl] Dynamically Converting text within an element
>> to xml nodes within the output document
>>
>> Hi,
>>
>> Given input such as the following within the "text" element
>> in a larger xml document currently being processed by an XSL file:
>>
>> <text>
>> [ZZ] [XX] [YY] X [/YY] [YY] Y [/YY] [/XX] [/ZZ] </text>
>>
>> Is it possible to dynamically replace the [ ]  with < > to
>> output the text as xml nodes in the output document?
>> <text>
>> <ZZ><XX><YY>X</YY><YY>Y</YY></XX></ZZ>
>> </text>
>>
>> What is making this difficult for me is that the text input
>> could come in different structures with other psuedo tags for
>> example a  [[BB]] or some other that may not be expected and
>> so ideally it would be nice to convert the [[ to < and the ]]
>> to > with a find and replace however getting the XSLT script
>> to recognize this converted string as XML nodes I can't seem
>> to find a way to do.
>>
>>
>> Regards
>>
>> --
>>
>> Alex
>> https://sites.google.com/a/utg.edu.gm/alex
>
>



--

Alex
https://sites.google.com/a/utg.edu.gm/alex

Current Thread