- From: Michael Rys <mrys@microsoft.com>
- Date: Wed, 26 May 1999 23:16:53 -0700
- To: "'www-xml-infoset-comments@w3.org'" <www-xml-infoset-comments@w3.org>
As requested by David. Best regards Michael -- Michael Rys Microsoft XML Repository -- We store the Web and more mrys@microsoft.com, rys@acm.org > -----Original Message----- > From: Michael Rys > Sent: Friday, May 21, 1999 6:32 PM > To: w3c-xml-infoset-wg@w3.org > Subject: MSFT's Infoset WD response > > Dear WG members. Here are Microsoft's comments on the working draft. > > I will organize them into the following categories: > > A. Namespace issues > B. Schema issues > C. Reference issues > D. Miscellaneous > > Best regards > Michael > > A. Namespace Issues > ------------------- > > 1. Namespace information item > > Having a namespace information item that is visible during the > scope of its existance would be a better approach than just > encoding the information in the attribute information item. > > This would for example allow a domain-specific XML processor > (such as XSL) to always have the correct namespace information > available for elements, attributes and even namespaces used in > content. > > For example in > > <xsl:template xmlns:xsl="xslns" xmlns:foo="myns"> > <xsl:for-each select="//foo:bar"> ... > > two namespace information items would provide (prefix, URI) > and the elements and attributes would reference both the > currently active namespaces and the namespaces used for the > element/attribute. Even if we would not provide the currently > active namespaces, a processor could get that information by > traversing up the tree, IF we preserve the namespace attributes > that define the namespace. An XSL processor needs this information > in order to correctly interpret the //foo:bar query. > Other XML grammars that want to reuse namespaces in content will > have this same requirement. > > This leads me to the next point: > > 2. Namespace-aware vs Namespace-unaware processing > > In principle, we think that a namespace-aware processor should > produce all information that a namespace-unaware processor > surfaces plus the additional information about the namespaces. > > Code written to work in a non-namespace aware parser/OM (the > majority of the cases today) should not break in a namespace-aware > parser/OM. > > Thus: > a. The element and attribute names should provide both a > qualified name that is available in both "modi". In addition, > the namespace-aware processor should provide a reference to > the namespace information item and the local part of the name. > > We believe, and apparently the DOM committee does as well, that > the prefix should be available in an upward compatible name. > > b. All attributes used to define namespaces etc. should still be > exposed by a namespace-aware processor. The current design > implies that the namespace declaration attributes vanish when > in namespace mode. This is pointless, potentially > destabilizing, and has the effect of making it impossible to > figure out what the scope of the namespace definition is. > For example, hiding the attributes will significantly confuse > DOM writers who use the Level 1 interfaces that don't provide > namespace support - the attributes will be available in the API. > > B. Schema issues > ---------------- > > The design allows one to get from an attribute to the DTD item > defining the attribute. There is > - no corresponding facility for elements (i.e., there is no > element declaration item), and > - no facility to get from an attribute to its definition if the > definition is in some form other than DTD. > > It is highly likely that the future will bring schema formats other > than DTD, and since these schemas will use XML instance syntax, > they will be extensible, meaning that they will contain an > unpredictable range of attributes and elements not forseeable in > any closed information model. We need a way to navigate from an > attribute or element to its definitional information item, without > prejudice on the type of that item (be it based on XML Schema or > DTD). > > Note that we understand that the mandate of the WG is to > describe XML 1.0 plus namespaces and not any upcoming and not yet > defined schema definition. However, we strongly feel that > we should provide for future extension in that area and not lock > ourselves in. > > C. Reference issues > ------------------- > > We strongly believe that having a reference information item that > provides linking information (either via ID/IDREFs, URIs, > XLink/XPointer or any other mechanism) should be part of the > infoset. > > D. Miscellaneous > ---------------- > > Numbers at the start of the following paragraphs indicate sections > in the working draft. > > 2.1.1 item 1 and 2.1.2 item 4 refers to a "document element." The > XML 1.0 spec defines this a "root" (providing "document element" > only as an appositive). > > 2.3: On the question of xml:lang and xml:space, I believe it would > be very good if the information model provided a context to > determine the language and whitespace settings on any information > element - you shouldn't be required to walk the tree to determine > the current language or whitespace setting in scope. > > 2.6: In the second paragraph there is specific language regarding > CR and LF. Surely, CR and LF (or a collapsed representation with > LF) should be representable when xml:space="preserve", right? Is > this the intent? > > 2.6.2 (Character Optional Properties). I know that the RDF group > looked at this, and decided that xml:lang needs to be a property of > the contained string, at least in their model. I believe > Murata-san led this. I do not, however, know that it affects the > Infoset, since one cannot change xml:lang mid-string. > > 2.9.1: there is language in bullet 1 that indicates that parameter > entities are modeled. This is confusing in light of that <!ELEMENT > ...> is not modeled. Modeling parameter entities (which most schema > proposals are trying very hard to avoid) hardly seems appropriate > without a complete modeling of the DTD. > > While entity information items are optional, it seems that > requiring support for all kinds of entities (such as - yuck - > external parameter entities) if entity information items are > provided is too strong. We would rather see the scope of the > provided information to be optional as well (e.g., provide only > internal general entities but not external parameter entities). > > Another question w.r.t. entity info items is, whether an unparsed > external entity needs to be represented or if this could also be > made optional. For example, an XML database processor may not > want to deal with such unparsed data in a special way and just > treat it as character data. > > 2.11.1: Include the namespace information item. > > 3. If a namespace-aware processor just adds information, then > this section needs to be changed. >
Received on Thursday, 27 May 1999 02:16:57 UTC