You're correct. The idea behind attributes not being part of the default namespace is that they are considered to exist in an "element namespace" — so in this case foo:child is considered to be the 'namespace' for attrib Note that this is just conceptual; there's no API or anything that refers to attribute namespaces this way This was chosen because multiple elements may have attributes with the same names, but different meanings — unlike a traditional namespace, which is a set of names (so no duplicates). In a way, it gives more structure to the namespace, instead of having a flat set You can read about this in a very old version of the Namespaces recommendation This convention means that whenever you see a prefixed attribute, it represents some 'additional' information which isn't related to the main schema in the document.
You're correct. The idea behind attributes not being part of the default namespace is that they are considered to exist in an "element namespace" — so in this case, is considered to be the 'namespace' for @attrib. Note that this is just conceptual; there's no API or anything that refers to attribute namespaces this way.
This was chosen because multiple elements may have attributes with the same names, but different meanings — unlike a traditional namespace, which is a set of names (so no duplicates). In a way, it gives more structure to the namespace, instead of having a flat set. You can read about this in a very old version of the Namespaces recommendation.
This convention means that whenever you see a prefixed attribute, it represents some 'additional' information which isn't related to the main schema in the document.
Thanks. I'm a little confused as to how to represent the tag being the context. It seems to me that if " is the 'namespace' for @attrib" then I would not need to add additional prefixes to provide the namespace.In other words, it would be unqualified which would be interpreted as being in whatever namespace the element is using.
Is that correct? This would imply to me that my first example is in fact an okay way to write this. – McKAMEY Jul 22 '10 at 21:22 Yes, the convention is for attributes to be un-namespaced, like your first example.
"it would be unqualified which would be interpreted as being in whatever namespace the element is using"... that's the idea, but note that the attribute will not report having the same namespace as the element, or the element as 'namespace'. It won't have any namespace — the attribute having the element as 'namespace' is just a convention. – Porges Jul 22 '10 at 23:15 1 OK I think I understand now.
Generally the attributes are not given an explicit namespace because they are within the context of the element which may have a namespace. This would be written like example 1. If there was a specific namespace for an attribute this is usually outside the schema of the element and should be written like examples 2 or 3, but typically it wouldn't be the same namespace.
– McKAMEY Jul 23 '10 at 0:42 You pretty much explained that better than I did :) – Porges Jul 25 '10 at 5:56.
Your interpretation of the spec is correct. Some kind of rationale is also given in the second paragraph of section 6.2 in the namespaces spec you referenced: the interpretation of unprefixed attributes is determined by the element on which they appear. But I would also be interested in some more details on why this specific behavior was chosen.
That extra paragraph seems to imply that there is more information on the topic, but I can't seem to find it. My question to the W3C editor who wrote that is, "How is an unprefixed attribute interpreted given the element on which it appears? " – McKAMEY Jul 22 '10 at 21:26.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.