xsl-list
[Top] [All Lists]

[xsl] Tokenizing mixed content

2019-05-17 08:22:09
I am working on a conversion script transforming from a prior DTD to a new DTD, 
and as part of this transformation, we are hoping to parse some mixed content 
into separate nested elements. The content is "|" delimited, but I am having a 
tough time coming up with a way to group the text and sibling elements. What 
follows are some permutations of input and expected output:

INPUT:
<argument> "AUTO | NONE | METADATA"</argument>
OUTPUT:
<argument><choice>AUTO</choice><choice>NONE</choice><choice>METADATA</choice>"</argument>

INPUT:
<argument><userSuppliedValue>dimension</userSuppliedValue> | 
<userSuppliedValue>dimension</userSuppliedValue>%</argument>
OUTPUT:
<argument><choice><userSuppliedValue>dimension</userSuppliedValue></choice><choice><userSuppliedValue>dimension></userSuppliedValue>%</choice></argument>


INPUT:
<argument>#BYVAL<userSuppliedValue>n</userSuppliedValue> | 
#BYVAL(<userSuppliedValue>BY-variable-name</userSuppliedValue>)</argument>
OUTPUT:
<argument><choice>#BYVAL<userSuppliedValue>n</userSuppliedValue></choice><choice>#BYVAL(<userSuppliedValue>BY-variable-name</userSuppliedValue>)</choice></argument>

I've got access to XSL 2, and possibly XSL3 if necessary.

Thanks in advance for any ideas!

-Edward
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--
<Prev in Thread] Current Thread [Next in Thread>