[
Lists Home |
Date Index |
Thread Index
]
On Friday 07 March 2003 04:37 pm, Daniel Veillard wrote:
> Nobody cares about DTDs in that context it's obvious they doesn't work
> or are useless.
You ignored my point, which is that if I say that my message has a general
structure, but that inside the <body> element, anything goes, how have I
constrained what goes inside the body such that I am "forcing the universe of
vocabularies usable in an instance to be known at the time and by the
framework where you emit the root opening tag"? That is essentially what
Jabber does after all. The DTD was an attempt to communicate the strcuture of
the message.
Now, to say that Jabber needs namespaces in order to handle arbitrary content
is simply specious at best. The examples I see from Jabber are things like
this:
<iq type='set' to='responder@company-a.com/jrpc-server' id='1'>
<query xmlns='jabber:iq:rpc'>
. . .
</query>
</iq>
To me, whether you do the above or
<iq type='set' to='responder@company-a.com/jrpc-server' id='1'>
<xmlrpc:query>
. . .
</xmlrpc:query>
</iq>
or
<iq type='set' to='responder@company-a.com/jrpc-server' id='1'>
<xmlrpc>
<query>
. . .
</query>
</xmlrpc>
</iq>
or
<iq type='set' to='responder@company-a.com/jrpc-server' id='1' body='rpc'>
<query>
. . .
</query>
</iq>
is really a matter of taste. This is also an application-specific
implementation detail, because the only thing that is really impacted is the
precise mechanism used for processing dispatch in the context of a given
application.
> > Second, how do namespaces help?
>
> To identify the processing module handling a given element in the stream
Sure... a dispatch mechanism... an *application specific* dispatch mechanism.
How do you specify the binding between the namespace and the code that get's
executed? In a config file? The namespaces don't help here except to provide
*a* means for specifying the binding, kind of like UUID's in the Windows
registry. Personally, I think it quite silly to constrain an application to
dispatch on namespaces alone. That's just another form of tight binding...
> Avoiding clashes unicity. I don't want to enter that debate wether
> thay are the right tool they are the available tool.
Not *the* available tool, *an* available tool... and, FWIW, we've had prefixes
since *way* before namespace declarations.
> End of Thread from me.
If you go around making statements that imply that Jabber-like systems are
impossible to build without using namespaces, you should expect debate, and
be prepared to back up your assertion. Not everyone adheres to the dogma that
namespaces are a necessary evil.
|