Paul, please see my response inside. 8-)
Jacek Kopecky
Idoox
http://www.idoox.com/
On Fri, 12 Oct 2001, Paul Kulchenko wrote:
> > <a id="c" xml:lang="en_us">hello</a>
> > <b href="#c" xml:lang="de" />
> > or even
> > <a id="c" xsi:type="string">1234</a>
> > <b href="#c" xsi:type="int" />
> It doesn't look like encoded multiref for me. As far as I understand
> we need multirefs to encode references to *the same object* that
> occur in different places of tree. I can't come up with explanation
> why they would have different attributes (except mentioned position,
> actor and mustUnderstand). Am I missing something?
>
> If it's just a case of XML reduction (as in case of xml:lang) it has
> nothing to do with multirefs and shouldn't be mixed. imho
I agree with you completely here.
> > So I'd rather go with listing the attributes allowable on
> > referencing accesors, and the list would probably look like
> > [href, enc:position].
> I would add actor and mustUnderstand, because they have fixed
> position regardless of used encoding method (forward or backward) and
> can appear on both ID and HREF elements.
Here's where SOAP's layering shows the right way. There are two
layers here: 1) SOAP envelope with headers, 2) the data which
form a header.
Actor and mustUnderstand attributes are in the first layer and
they don't care what the data is. If the data is encoded using
SOAP encoding rules, this does in no way affect actor and
mustUnderstand. This means that these attributes must be on the
header, even if it is just
<ns:header href="#somethingelse"/>
The meaning of the attribute 'href' is hidden from the processor
when the layer-one-processing is being done. The values of actor
and mustUnderstand attributes, on the other hand, have no effect
on the actual header processor when the header is being
processed. And anyway, the processor should receive the header
(<ns:header href="#..."/>) and it can do whatever it will, e.g.
apply SOAP encoding rules to it. If it cares about actor and
mustUnderstand, it has to understand this layering.
So my response is: I don't think actor and mustUnderstand belong
to the list.
Regards,
Jacek