James Anderson's table

John Cowan cowan at locke.ccil.org
Wed Aug 12 16:27:02 BST 1998


I finally figured out what the terminology in the table means:

> (ed = element default, cd = context default,
>  eb = element binding, cb = context binding)

"Element default" means "an ns attribute of the current element,
defaulted from the DTD";

"Context default" means "an ns attribute of an ancestral element,
defaulted from the DTD";

"Element binding" means "an ns attribute of the current element,
explicitly present in the instance";

"Context binding" means "an ns attribute of an ancestral element,
explicitly present in the instance".

What makes this table hard to understand is that while logically
it is 2 x 2 x 2 x 2, it is presented as 4 x 4, but the things
grouped together don't really belong together.  The axes of the
4 x 4 table are not "ancestral element" vs. "current element", but
"explicitly present in the attribute" (rows) vs. "defaulted
from the DTD" (columns).

But anyway, here are the correct values, based on the principle
that a value defaulted from the DTD is equivalent in every way
to one explicitly present in the instance (except of course that
if both are available, the explicit one takes precedence):

>             default presence in attribute declaration
>             
> attribute
> presence in
> element        -- --  |  -- ed  |  cd --  |  cd ed
>              ---------------------------------------
>             | unbound |     ed  |  cd     |     ed  |
>      -- --  |         |         |         |         |
>             ----------------------------------------
>             |         |         |         |         |
>      -- eb  |     eb  |     eb  |     eb  |     eb  |
>             ----------------------------------------
>             |         |      ed |  cd     |     ed  |
>      cb --  |  cb     |         |  cb     |         |
>             ----------------------------------------
>             |         |         |         |         |
>      cb eb  |     eb  |     eb  |     eb  |     eb  |
>             ----------------------------------------

The cell "cb" vs. "cd" can come out either way, depending on which
is the nearer ancestor.


-- 
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