[Q] How should SAX support Namespaces?
John Cowan
cowan at locke.ccil.org
Fri Jul 24 23:29:26 BST 1998
Peter Murray-Rust wrote:
> [I]f we can find a SEPARATOR which is
> guaranteed not to occur in a URN it just makes it a bit easier (this is
> DavidM's #2 but with something other than COLON). [It never sees the light
> of day, anyway].
Dagger! \U2020! Dagger!
> <?jumbo:namespace ns="http://xml-cml.org" prefix="CML"
> java="jumbo.cml.%sNode">
> where localPart (with initial capitalises letter) replaces %s. Thus
> CML:Molecule is mapped to jumbo.cml.MoleculeNode. When a common mechanism
> is agreed this PI can be disabled.
The trouble here IMHO is that this mapping is app-specific, not really
document-specific. You will want to load various Java classes
depending on what you want to *do* to a particular element:
edit it, render it, translate its content into HTML, ...
> The problem I face is with other specs (especially XPointer). These will
> have to be revised to fit namespaces, since I think relying on a prefix in
> a given document may be very dangerous. Thus I'd like to be able to search
> for <CML:Molecule> in a document using XPointer but cannot rely on the
> 'CML'. [I know that some people say XPointer shouldn't be used for such
> 'searches' but my will is weak.]
I think you are over-generalizing. The point of namespace PIs is
to let you realize that my FOO:BAR is your BAZ:BAR, because my FOO prefix
has the same namespace URI as your BAZ prefix. So your document can
refer to some element of mine as BAZ:BAR, and a proper XLL engine
will actually return FOO:BAR. There is no need, IMHO, to handle
the case that you insist on finding literally "BAZ:BAR" as an
element name.
> I wonder whether namespace-aware DTD software has to add defaults on the
> basis of Universal names and not element types. Thus:
>
> <?xml:namespace ns="http://xml-cml.org" prefix="CML"?>
> <?xml:namespace ns="http://xml-cml.org" prefix="ChemML"?>
> <!DOCTYPE CML [
> <!ATTLIST CML:Molecule title CDATA #FIXED "A molecule">
> ]>
> <CML>
> <ChemML:Molecule>...</ChemML>
> </CML>
>
> What attributes does the <ChemML:Molecule> element have??
None! DTD processing is SGML-compatible and namespace-blind.
To DTD-based software, CML:Molecule and ChemML:Molecule are
as different as A and \U0391 (GREEK CAPITAL LETTER ALPHA).
--
John Cowan http://www.ccil.org/~cowan cowan at ccil.org
You tollerday donsk? N. You tolkatiff scowegian? Nn.
You spigotty anglease? Nnn. You phonio saxo? Nnnn.
Clear all so! 'Tis a Jute.... (Finnegans Wake 16.5)
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list