[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issue 5.1) SSH End of message directive




Jabber takes the approach of making the entire stream a single XML document:

C: <?xml version='1.0'?>
   <stream:stream
       to='example.com'
       xmlns='jabber:client'
       xmlns:stream='http://etherx.jabber.org/streams'
       version='1.0'>
S: <?xml version='1.0'?>
   <stream:stream
       from='example.com'
       id='someid'
       xmlns='jabber:client'
       xmlns:stream='http://etherx.jabber.org/streams'
       version='1.0'>
...  encryption, authentication, and resource binding ...
C:   <message from='juliet@example.com'
              to='romeo@example.net'
              xml:lang='en'>
C:     <body>Art thou not Romeo, and a Montague?</body>
C:   </message>
S:   <message from='romeo@example.net'
              to='juliet@example.com'
              xml:lang='en'>
S:     <body>Neither, fair saint, if either thee dislike.</body>
S:   </message>
C: </stream:stream>
S: </stream:stream>

The netconf concept for SSH was to make each operation a standalone
XML document to avoid the artificial opening and closing elements, but
either way, the parser must feed events to the
application before the input stream is complete.

Ted.

On Dec 7, 2003, at 5:05 AM, Graham Klyne wrote:

I think the Jabber folks have considerable experience in this area... what do they do?

#g
--

At 15:19 05/12/03 -0500, Phil Shafer wrote:
Juergen Schoenwaelder writes:
>Does everybody feel comfortable to be required to feed the protocol
>message directly into an XML parser using a SAX like interface in
>order to detect message boundaries?

We've had problems doing this esp in java.

>Furthermore, I believe that declarations add value in the long run
>and we should not forbit declarations of PIs.

Declarations make an xml parser a couple of orders of magnitude
harder to write and at least a couple of orders of magnitude larger.
Given the diminishing value and use of DTDs, I don't see the win.

If you do need the features of DTDs, you can preprocess your document
on an external machine and pass the expanded DTD-less data to the
netconf server.

Thanks,
 Phil

--
to unsubscribe send a message to netconf-request@ops.ietf.org with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/netconf/>

------------ Graham Klyne For email: http://www.ninebynine.org/#Contact


--
to unsubscribe send a message to netconf-request@ops.ietf.org with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/netconf/>