xsl-list
[Top] [All Lists]

Re: [xsl] How to Parse String with Escaped XML Markup?

2021-01-15 09:36:46
Yes, I'm using the Saxon extension function to get the value of the @content 
pseudo-attribute.

What I didn't realize was that parse-xml and parse-xml-fragment() will handle 
the string as it comes, so this works:

<xsl:variable name="rawMarkup" select="saxon:get-pseudo-attribute('content')/>
<xsl:variable name="deletedContent" as="element()">
  <deletedContent xmlns="">
   <xsl:sequence select="parse-xml-fragment($rawMarkup)/>
  </deletedContent>
</xsl:variable>

So it's all good.

Cheers,

E.

--
Eliot Kimber
http://contrext.com
 

On 1/15/21, 9:22 AM, "Martin Honnen martin(_dot_)honnen(_at_)gmx(_dot_)de" 
<xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:

    Am 15.01.2021 um 15:58 schrieb Eliot Kimber ekimber(_at_)contrext(_dot_)com:
    > I researched this question in this list but I didn't find a recent 
response so I'm asking it again.
    >
    > My specific requirement is to take the value of an Oxygen deleted content 
processing instruction and parse it back into elements in the context of an 
XSLT 3 transform.
    >
    > The PI is:
    >
    > <?oxy_delete author="ekimber" timestamp="20210115T085216-0600" 
content="&lt;body&gt;&lt;p&gt;&lt;ul 
id=&quot;ul_c5k_mhh_34b&quot;&gt;&lt;li&gt;li one&lt;/li&gt;&lt;li&gt;li 
two&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;/body&gt;"?>
    >
    > What I'm failing to work out is how to convert the value of the @content 
pseudo-attribute back into a proper XML string that I can pass to parse-xml().

    I think Saxon PE and EE have an extension function to access the pseudo
    attributes of a processing instruction value.

    So inside of oXygen with Saxon PE or EE this should be easz.

    

--~----------------------------------------------------------------
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>