- From: Hugo Haas <hugo@w3.org>
- Date: Tue, 12 Apr 2005 16:41:52 +0200
- To: www-ws-desc@w3.org
- Message-ID: <20050412144152.GX17367@w3.org>
* Hugo Haas <hugo@w3.org> [2005-04-08 12:04+0200]
> The application/x-www-form-urlencoded serialization could have a rule
> which says to use the same namespace prefixes than the ones you found
> in the schema.
>
> However, the schema itself could exist in different equivalent
> versions, with different prefixes used, so we'd need to be sure we
> know what schema document we're talking about, which I'm not sure we
> can achieve with the abstraction of {element declarations} in our
> component model.
Having investigated this a little more, because of this abstraction
and the fact that schema doesn't know about prefixes in the component
model, it seems that we can't express the constraints that proposed
option #3 would need.
An XPointer-like solution would probably be the simplest way to
support namespaces in a reliable way.
A simple case without namespaces would be serialized simple:
<foo>
<c>1<c>
<c>2<c>
</foo>
→ c=1&c=2
A simple case using namespaces would be serialized in a not too
complex way:
<a:foo xmlns:a="http://example.com/1">
<a:c>1</a:c>
<a:c>2</a:c>
</a:foo>
→ xmlns:a=http://example.com/1&a:c=1&a:c=2
And more complex cases would be enabled:
<foo xmlns:a="http://example.com/1"
xmlns:b="http://example.com/2">
<a:c>1</a:c>
<b:c>2</b:c>
</foo>
→ xmlns:a=http://example.com/1&xmlns:b=http://example.com/2&a:c=1&b:c=2
We would need to add in the application/x-www-urlencoded text like:
Each QName serialized in the URL must have its namespace prefix
declared with a query parameter.
And add a section with the meaning of xmlns:foo as a query parameter.
I am hesitant about adding such a feature at this point though.
Cheers,
Hugo
--
Hugo Haas - W3C
mailto:hugo@w3.org - http://www.w3.org/People/Hugo/
Received on Tuesday, 12 April 2005 14:41:54 UTC