xsl-list
[Top] [All Lists]

Re: [xsl] Printing CDATA from feed as HTML

2008-06-17 18:01:19
Hi,

Sorry to be so late for this track, but isn't there also a missing comma in the expression, as in

select="doc(concat('data:application/xml,', $s))" ?


Although only moderately intuitive at first, it is a cute way to parse, within the standard.

It should also mean that

select="doc(concat('data:application/xml,', unparsed-text($s)))" is equivalent to select="doc($s)"

thanks,
ac




Colin Paul Adams a écrit :
"Colin" == Colin Paul Adams <colin(_at_)colina(_dot_)demon(_dot_)co(_dot_)uk> 
writes:

"David" == David Carlisle <davidc(_at_)nag(_dot_)co(_dot_)uk> writes:
    >>> I think a parse() function almost made it into 2.0...

    David> it did.

    David> <xsl:function name="x:parse" as="document-node()">
    David> <xsl:param name="s" as="xs:string"/> <xsl:sequence
    David> select="doc(concat('data:text/xml,'$s))"/> </xsl:function>

    Colin> Almost.
    Colin> Your data URI needs the charset parameter.

Hm. Maybe not.

There is a portability problem here, in that there is a dependency
upon the Unicode encoding form used by the implementation.
For instance, Gestalt currently uses UTF-8, so you need to specify:

data:application.xml; charset=UTF-8

but I am currently re-engineering it to use UTF-32 (amongst other
changes), and so there is a problem.

Now the implementation would be able to supply the actual encoding
using a higher level protocol (something internal to the
implementation of fn:doc()). You then have a clash between the
labelled encoding, and the encoding supplied by the higher level
protocol.

It is a TAG recommendation that the XML parser must not override the
encoding supplied by the higher level protocol in this case. So you
are just about OK. The normal thing for an XML parser to do would be
to report an error in this case, but that is not required by an spec.


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--