Re: XInclude namespace issue draft response [was: Minutes for XML Core WG telcon of 2015 February 18]

On 2.3.2015 17:04, Paul Grosso wrote:
> Please review and reply before this week's telcon at
> which time I plan to send out this reply (and, soon
> thereafter, request transition of XInclude 1.1 to CR).

Hi Paul,

I think that your response is perfect and that it is not necessary to
modify/clarify existing text of XInclude 1.1 specification.

   Jirka

> paul
> 
> On 2015-02-20 09:07, Paul Grosso wrote:
>>
>> On 2015-02-18 10:59, Paul Grosso wrote:
>>>
>>
>>>>
>>>> Eric van der Vlist (via Norm) asks what the post-XInclude infoset
>>>> is for this element:
>>>>
>>>> <xi:include xmlns:my="MYNAMESPACE"
>>>> href="mydoc.xml" fragid="element(foo)"
>>>> my:root="true"/>
>>>>
>>>> when mydoc.xml is:
>>>>
>>>> <doc xmlns:my="YOURNAMESPACE">
>>>>   <my:note xml:id="foo">
>>>> <my:x/>
>>>> </my:note>
>>>> </doc>
>>>>
>>>> Paul suggested it would be
>>>>
>>>>   <my:note xml:id="foo" my2:root="true" xmlns:my="YOURNAMESPACE"
>>>> xmlns:my2="MYNAMESPACE">
>>>> <my:x/>
>>>> </my:note>
>>>>
>>>> where the "spelling" of the prefix "my2" is implementation dependent?
>>>>
>>>> What do others think, and can we find an answer in the spec?
>>>>
>>>
>>> Henry agrees with Paul that we are including infosets,
>>> not text, so Paul's solution is fine.  He points out
>>> that this isn't an infoset problem, it's just a
>>> serialization issue--what prefixes to use for the
>>> various namespaces, but what matters in the infoset
>>> is the value of the namespace property, not the prefix.
>>>
>>> We still need to look at the spec to see if it's clear
>>> (or at least doesn't say something to the contrary).
>>>
>>> Jirka says we should check section 4.3.  Henry says
>>> there it talks about qualified names which has to do
>>> with local names and namespace URIs, no prefixes involved.
>>>
>>> We will check with Norm to see what he says, and then
>>> Paul will write a response.
>>>
>>
>> Here's my draft response--please comment.  Especially
>> comment on whether you feel we should add some (minor)
>> wording/Note to XInclude 1.1 as we go to CR:
>>
>>
>> Regarding the example in the comment at [0], the resulting
>> infoset is clearly:
>>
>> <{YOURNAMESPACE}:note xml:id="foo" {MYNAMESPACE}:root="true">
>>     <{YOURNAMESPACE}:x/>
>> </{YOURNAMESPACE}:note>
>>
>> The only complication comes when trying to serialize this infoset.
>>
>> (Note also the discussion in the Infoset spec about "Synthetic
>> Infosets" [1] and also the comments in XInclude's section on
>> Namespace Fixup [2].  See also the analogous discussion of
>> adding namespace declarations in the XSLT Recommendation [3].)
>>
>> When serializing this infoset, the namespace prefixes emitted by
>> the XInclude implementation are implementation dependent.  See the
>> fourth paragraph under section 4.7 "Creating the Result Infoset"
>> at [4] where it says:
>>
>>  Some processors may not be able to represent an element's
>>  in-scope namespaces property if it does not include bindings
>>  for all the prefixes bound in its parent's in-scope namespaces.
>>  Such processors may therefore include additional namespace
>>  bindings inherited from the include parent in the in-scope
>>  namespaces of the included items.
>>
>> We could perhaps either augment the above paragraph or the
>> Namespace Fixup section to make an explicit reference to the
>> case where prefixes may need to be modified to avoid emitting
>> namespace declarations with the same prefix and different
>> namespace names, but in my opinion, that behavior is already
>> implied by the existing wording of the spec.
>>
>> For example, one reasonable serialization of the infoset
>> resulting from the example in question might be:
>>
>> <my:note xml:id="foo" my2:root="true"
>>          xmlns:my="YOURNAMESPACE" xmlns:my2="MYNAMESPACE">
>>   <my:x/>
>> </my:note>
>>
>> paul
>>
>> [0] {eventual URL of the comment in the www-xml-xinclude-comments list}
>> [1] http://www.w3.org/TR/2004/REC-xml-infoset-20040204/#intro.synthetic
>> [2] http://www.w3.org/TR/2014/WD-xinclude-11-20141216/#namespaces
>> [3] http://www.w3.org/TR/xslt#section-XML-Output-Method
>> [4] http://www.w3.org/TR/2014/WD-xinclude-11-20141216/#creating-result
>>
> 
> 

-- 
------------------------------------------------------------------
  Jirka Kosek      e-mail: jirka@kosek.cz      http://xmlguru.cz
------------------------------------------------------------------
     Professional XML and Web consulting and training services
DocBook/DITA customization, custom XSLT/XSL-FO document processing
------------------------------------------------------------------
 OASIS DocBook TC member, W3C Invited Expert, ISO JTC1/SC34 rep.
------------------------------------------------------------------
    Bringing you XML Prague conference    http://xmlprague.cz
------------------------------------------------------------------

Received on Wednesday, 4 March 2015 14:00:46 UTC