Re: [xsl] Are there things missing in XSLT which force people to use, say, Java to process XML?

Subject: Re: [xsl] Are there things missing in XSLT which force people to use, say, Java to process XML?
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Fri, 29 Oct 2010 15:47:46 -0700
On Fri, Oct 29, 2010 at 3:16 PM, Ben Mendis <ben@xxxxxxxxxxxxxxxx> wrote:
>
>
> On 10/29/2010 12:13 PM, Michael Kay wrote:
>>
>>> I was just thinking that the current XSLT standard lacks interactivity, and was about to suggest an
>>> element xsl:prompt for further revisions of the standard.
>>
>> Streaming in XSLT creates the intriguing possibility of using the interactive input and output as the
>> primary input and output of the transformation, with XSLT used to transform one into the other.
>>
> A perfect use case for this would be XMPP (Jabber). XMPP works by opening two streaming XML documents, one
> for reading and one for writing. Stanza of XML are read from or written to those streams to communicate
> between the Client and Server. When working with XMPP there have been times when I've felt like "this would
> be really simple in XSLT", but since it's a stream and not a document I end up using other languages. An
> XSLT-like language for streaming XML would be nice, but XMPP is pretty much the only place I've ever seen
> streaming XML.

Just one small clarification:

I think that the phrase: "streaming XML" or "streaming [whatever
language-format here]" is incorrect, because you only know that you
are streaming XML only at the end of the streaming.

It may perfectly well be the case that at some later stage of the
streaming you will discover that the text being streamed isn't
well-formed XML (not even to speak about valid XML)

Therefore, a more precise expression would be: "streaming what so far
appears to be XML".

This has some serious implications if the processing has side effects
(for example modifying some data based on the streaming processing).
In case we are broken halfway through, it may be necessary and should
be possible to reverse the actions taken so far. Thus, it is a good
idea to perform streaming in transactional mode.

I apologize if I am stating something obvious.

-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
I enjoy the massacre of ads. This sentence will slaughter ads without
a messy bloodbath.

Current Thread