- From: Henrik Frystyk Nielsen <henrikn@microsoft.com>
- Date: Sun, 2 Dec 2001 21:11:52 -0800
- To: <xml-dist-app@w3.org>
- Message-ID: <79107D208BA38C45A4E45F62673A434D05A83CAC@red-msg-07.redmond.corp.microsoft.com>
Here is the proposed text for support of XML base as agreed upon in [1] based on proposal [2]. I have expanded the description to talk a little about how SOAP 1.2 deals with URIs in general in order to avoid problems later on. Comments? Henrik [1] http://www.w3.org/2000/xp/Group/xmlp-issues#x134 [2] http://lists.w3.org/Archives/Public/xml-dist-app/2001Oct/0258.html _____ EdNote 1: This text is to be inserted as a section in SOAP 1.2 Part 1. The "X" references should be substituted with the proper references in the SOAP 1.2 specification. EdNote 2: I suggest that we as part of the internationalization considerations for SOAP 1.2 refer to XML Base for how to deal with escaping URIs. EdNote 3: We should ensure that protocol binding framework includes a note saying that bindings must indicate whether they define a base URI or not. EdNote 4: We might want to consider introducing a "URITooLong" SOAP fault code Use of URIs in SOAP SOAP uses URIs for some identifies including but not limited to as values of the "encodingStyle" (see section X.X) and "actor" (see section X.X) attribute information items. To SOAP, a URI is simply a formatted string that identifies-via name, location, or any other characteristic-a resource on the Web. Although this section only applies to URIs directly used by information items defined by SOAP, it is RECOMMENDED but not required that application-defined data carried within a SOAP envelope uses the same mechanisms and guidelines defined here for handling URIs. URIs used as values in information items identified by the "http://www.w3.org/2001/09/soap-envelope" and "http://www.w3.org/2001/09/soap-encoding" XML namespaces can be either relative or absolute. In addition, URIs used as values of the local, unqualified "href" attribute information item can be relative or absolute. SOAP does not define a base URI but relies on the mechanisms defined in RFC 2396 (see [X], section 5.1) and referred to in XML Base (see [X], section 4.1) for establishing a base URI against which relative URIs can be made absolute. The rules can non-normatively be summarized as follows (highest priority to lowest): 1. The base URI is embedded in the document's content. 2. The base URI is that of the encapsulating entity (message, document, or none). 3. The base URI is the URI used to retrieve the entity. 4. The base URI is defined by the context of the application. Note: The term "entity" in points #2 and #3 above uses the RFC 2396 and not the XML meaning of the term. The underlying protocol binding MAY define a base URI which can act as the base URI in points #2 or #3 (see section X.X and the HTTP binding in section X.X). SOAP does not define any equivalence rules for URIs in general as these are defined by the individual URI schemes and by RFC 2396. However, because of inconsistencies with respect to URI equivalence rules in many current URI parsers, it is RECOMMENDED that SOAP senders do not rely on any special equivalence rules in SOAP receivers in order to determine equivalence between URI values used in a SOAP message. The use of IP addresses in URIs SHOULD be avoided whenever possible (see RFC 1900). However, when used, the literal format for IPv6 addresses in URI's as described by RFC 2732 SHOULD be supported. SOAP does not place any a priori limit on the length of a URI. Any SOAP node MUST be able to handle the length of any URI that it publishes and both SOAP senders and SOAP receivers SHOULD be able to deal with URIs of at least 8k in length.
Received on Monday, 3 December 2001 00:13:04 UTC