- From: Rick Jelliffe <ricko@allette.com.au>
- Date: Fri, 27 Jun 1997 15:53:04 +1000
- To: <w3c-sgml-wg@w3.org>
> From: Andrew Layman <andrewl@microsoft.com> > Namespaces does not mean that suddenly any element is valid anywhere. > > I absolutely am not suggesting that the use of namespace means that > every element suddenly has an implicit content model of "ANY". ... > That is, far from defeating validation, namespaces permit use of > multiple, merged schemata while retaining validation. So, I suggest again that 1) For now XML adopts the characters "::" as a delimiter to mean "name qualifier", with the intended syntax of "namespace::identifier" and best practise being "organisation nickname::namespace::indentifier" if you want to be really careful. Public element sets that are intended to be included in other DTDs should use these conventions for now. If you do not intend your element types to be included in other documents, just use the simple names. E.g. <planetsExplored><SUN::planets::mercury/></planetsExplored> And there should be no namespace "inheritance" (contextual name minimisation) for now. So this: <planetExplored> <mercury/> <planets::planetExplored> <planets::mercury> </planets::planetExplored> </planetExplored> is not the same as <planetExplored> <mercury/> <planets::planetExplored> <mercury> </planets::planetExplored> </planetExplored> 2) The IG work out some favoured declaration to support namespaces and contextual name minimisation and submit it to WG8. The Japanese proposal for modules seems to be well thought out. 3) XML and SGML get namespaces together in the new year. 4) An SGML content model should allow a #OTHER keyword: ANY is too fixed, and fully declared content models are too restrictive. E.g. <!ELEMENT html ( head, (body | frameset | layer | #OTHER ), tail ) > where #OTHER means you can only use an element from some other namespace. Rick Jelliffe
Received on Friday, 27 June 1997 01:52:42 UTC