- From: John Arwe <johnarwe@us.ibm.com>
- Date: Thu, 13 Sep 2007 08:23:42 -0400
- To: public-sml@w3.org
- Message-ID: <OF9E965FCA.8DD8691D-ON85257355.00430C91-85257355.0044398B@us.ibm.com>
I think it's time to clarify a few things here now that I am getting dug
out enough to catch up with this thread. I will try to set a good example
by providing citations for my (and in some cases others') assertions.
> The initial version of this scheme was rejected because of an
unacceptable use of the <wsa:ReferenceParameters> particle in order to
contain information identifying the document segment being referenced.
I don't think it was rejected. There was enough consensus among the
submitting companies to include it in the submission [SMLSubmit]. At the
[JuneF2FMinutes] the fact that the examples in the submission copy
conflicted with the web architecture document by using WS-Addressing
Reference Parameters (which WS-Addressing explicitly discusses
[WSA-WebArchURIs],[AoWWW-URIBenefits]) was pointed out by one of our W3C
Team Contact members [JuneF2FMinutesEPREx], and a suggestion for changing
the examples was made to align them properly with the cited documents. I'm
not sure how fixing examples equates to rejecting the entire scheme.
Separate questions were raised at the same meeting as to whether or not
the working group wanted to retain the EPR scheme in the spec, yes.
> the resource identification information must be contained in the URL
that is the value of the <wsa:Address> element
I see where some of the WS-A controversy comes from after re-reading it,
there are statements that I can tilt my head to read as internally
consistent or not. E.g.
1. "A Web service endpoint is a (referenceable) entity, processor, or
resource to which Web service messages can be addressed. Endpoint
references convey the information needed to address a Web service
endpoint. " [WSAIntro]
2. "[address] : IRI (1..1) An absolute IRI [IETF RFC 3987]
representing the address of the endpoint. " [WSAInfoModel]
3. "[destination]: this property takes the value of the EPR's [address]
property." [WSASend] ok, so the IRI above has the properties of a
location too [RFC3986URI section 1.1.3]
4. "A reference may contain a number of individual parameters that are
associated with the endpoint to facilitate a particular interaction.
Reference parameters are namespace-qualified element information items
that are required to properly interact with the endpoint. Reference
parameters are provided by the issuer of the endpoint reference and are
assumed to be opaque to other users of an endpoint reference."
[WSAInfoModel]
5. "Using abstract properties of an EPR other than [destination] to
identify resources is contrary to this recommendation." [WSA-WebArchURIs]
For me at least, 5 is overly broad. I suspect the authors meant to say
something more refined, that the ref parms should not be used to identify
the resource to interact with. My narrower version would permit a URI/IRI
to a policy governing the exchange, which seems perfectly within the
intent of #4 and within the intent of every discussion I have heard on
this subject, including from first-hand participants in the working group.
Kirk, weren't you one of the WS-A wg members? Perhaps you could speak to
your understanding of the discussions and correct me if I have heard
wrong.
> fragment identifiers is illegitimate in EPRs because they are handled by
the client—servers providing resources do not handle fragment identifiers
in the identification of the service being addressed
Syntactically they are allowed from what I see in [WSAInfoModel] and
[RFC3987IRI 2.2] ("IRI = scheme ":" ihier-part [ "?" iquery ] [ "#"
ifragment ]"), so I assume your assertion is semantically motivated.
[RFC3987IRI 5.3.3] has a bit on fragments "The fragment component is not
subject to any scheme-based normalization; thus, two IRIs that differ only
by the suffix "#" are considered different regardless of the scheme." The
rest of the discussion of fragments seems to happen in [RFC3986URI], eg.
section 3.5 (the "linguistic rathole"). As I read that section, it treats
client-side fragment handling as a feature (i.e. intentional and
desirable) so I'm unable to match it to your assertion above. Did you
have a specific implementation in mind perhaps, whose structure might be
true and one choice amongst >1 ? It also seems to be tailor-written for
our general XML document case, but I am willing to be educated. Could you
precisely point out the semantic problem and cite reference(s)?
> could the query component of the URI be used?
This is exactly what I remember being suggested at the June F2F, although
I see no indication of that in the minutes. [RFC3986URI], section 3.4 is
the heart of the query description. It says the query component contains
non-hierarchical data, but I am unclear what the definition of that is.
Certain xpath 1.0 expressions I would be easily convinced are
hierarchical-looking (*/foo), but others are less clearly hierarchical to
me (/*[@id="bar"]). The latter has hierarchical components, but that
seems subtly different than saying it is hierarchical itself. I could
probably express the full semantics of xpath 1.0 in key=value pairs, i.e.
in classic query content syntax, but it would still express "hierarchical
intent"...is that hierarchical data? I'm not sure, but absent any
contrary citations it sure seems like I have sufficient degrees of freedom
to be within the letter of this "law".
> I suspect the use-case for the EPR reference scheme involves a SML
consumer that is actively going out to an information resource (in real
time), which is addressed by the EPR, to obtain some information contained
in the document that the information resource makes available.
> This exchange cannot be accomplished simply through the EPR
You cited one use case that doesn't work in all scenarios, because
additional information is required. We could discuss the same question
with respect to URIs (go ahead, instigate :-) and you might be surprised
at the answers depending upon how many RFCs you have read starting at
3986. I read a couple as part of researching this, and they convinced me
our current sml:uri definition is far from enough to guarantee interop.
> We would need the EPR in order to address the resource, but we would
also need to know the message exchange protocol and the structure of the
SOAP Body (or in one case, an element of the SOAP header - !) that
specifies the query for the desired fragment of the document
You need to answer the same questions for a URI. 3896 does not guarantee
you have those answers, or that the answers are sufficient to meet SML's
requirements. So if I apply your arguments consistently, and accept the
implicit assumption that a reference scheme definition must specify all
these things, then we should delete the URI reference scheme as well.
Note: I am not suggesting we kill off URI; I am suggesting that we have to
choose our rules and apply them consistently. Specs sometimes choose to
leave things unspecified to allow other specs to build on them (sometimes
they are unintentional omissions too); we are doing the former in SML in
several ways, e.g. by drawing a distinction between model def documents
and model instance documents but then leaving undefined any way to
syntactically differentiate between them. SMLIF needs such a syntax, so
we defined it there. WS-A left a whole bunch of things unspecified, as
does XML Schema (as we have discussed around how a schema processor
locates schema components). Applying the same incompleteness arguments to
them, they are so incomplete as to be not worth documenting yet clearly
some set of people and W3C members disagreed with that assessment. We
have the option of making a similar choice in every feature we spec out.
> Whether support for an EPR scheme is “required” in SML
SML (and SMLIF) does not and never did require any producer or consumer to
support the EPR reference scheme. Feel free to provide a citation
indicating otherwise, as that would be a bug to be fixed. The intent of
the submitting group was to define the EPR reference scheme in SML, as the
URI ref scheme is defined and not required in SML, to provide a common
definition that can be re-used in dependent specs (eg when SMLIF requires
sml:uri support as an interop floor).
> I’m wondering what is the use-case behind the creation of a document
reference scheme using EPRs
Valentina did bring a use case forward to the group for discussion (two,
in fact [VPEPRUsecases]). Historically, we have added features to SML
based on at least one use case. Valentina provided that for EPRs
recently, and prior to submission since they are in [SMLSubmit]; certainly
it is valid feedback to the implementors that they someone thinks they may
be running afoul of the proscriptions in [WSA-WebArchURIs]. The fact that
it did not resonate with the group does not invalidate the use case
however. It sounds as if we are raising the bar to require multiple use
cases for features to control scope. Doing so would require a charter
change for the group, and consistent application of that rule to other
existing features of the spec.
Best Regards, John
Street address: 2455 South Road, Poughkeepsie, NY USA 12601
Voice: 1+845-435-9470 Fax: 1+845-432-9787
[SMLSubmit] http://www.w3.org/Submission/2007/SUBM-sml-20070321/
[JuneF2FMinutes]
http://lists.w3.org/Archives/Public/public-sml/2007Jun/att-0099/20070612-sml-minutes.html
[JuneF2FMinutesEPREx]
http://lists.w3.org/Archives/Public/public-sml/2007Jun/att-0099/20070612-sml-minutes.html#item04
[WSA-WebArchURIs]
http://www.w3.org/TR/2006/REC-ws-addr-core-20060509/#resourceidentification
[AoWWW-URIBenefits]
http://www.w3.org/TR/2004/REC-webarch-20041215/#uri-benefits
[WSAIntro] http://www.w3.org/TR/2006/REC-ws-addr-core-20060509/#tocRange
[WSAInfoModel]
http://www.w3.org/TR/2006/REC-ws-addr-core-20060509/#eprinfomodel
[WSASend] http://www.w3.org/TR/2006/REC-ws-addr-core-20060509/#sendmsgepr
[AoWWW-URIRef] http://www.w3.org/TR/2004/REC-webarch-20041215/#URI refers
to 2396 not 3896 but...
[RFC2396Obsolete] http://www.rfc-editor.org/cgi-bin/rfcsearch.pl shows
that 3896 obsoletes 2396
[RFC3986URI] ftp://ftp.rfc-editor.org/in-notes/std/std66.txt
[RFC3987IRI] http://www.ietf.org/rfc/rfc3987.txt
[VPEPRUsecases]
http://lists.w3.org/Archives/Public/public-sml/2007Sep/0078.html
Received on Thursday, 13 September 2007 12:23:59 UTC