Musing over Namespaces

Clark C. Evans clark.evans at
Tue Dec 14 20:35:05 GMT 1999

On Tue, 14 Dec 1999, Don Park wrote:
> I started with the question: "Why isn't there namespaces
> in normal languages like English?"  A boring and divergent
> question.

I would assert that there is, it's called Jargon.
Languages form a hierarchy (described below).

We recognize its existence and often try to
making meaning of a message by first discarding
Jargon we don't grok.  If we can't do this, then
we educate ourself by finding out what the word
means in the given context. 

A general dictionary is used for "common" every 
day words... however, industry specific dictionaries
(like the New Hacker's Dictionary) are essential 
for words overloaded for a particular domain.

> I moved on to more interesting question: "What if English
> language used namespaces?"  There are several ways to
> interpret this question but the most interesting is this:
> "What is the social impact of using namespaces in English
> or any other spoken/written language?"
> My answer was: massive fragmentation of society.

Actually, I'd say that fragmentation based on
context is very natural.   And without overloaded
meanings of words, like "abstract", "static", "virtual",
etc., it would be hard to keep the lexicon small.

In general, I'd say that fragmentation occurs already.
There is a *huge* difference between the way a developer
speaks and the way a non-developer talks.  We ( software 
developers) overload meanings of many words, like "abstract", 
"virtual", "iterator", "composite", etc. to fit our context.  
Perhaps if we were more cognizant of context of others we 
would use the words "correctly" in different ways in other 
contexts, or we would prefix them when in mixed company.

Instead we often mix the contexts and confuse half of
the people in a conversation.  This is horribly clear
in a biz/tech meeting where on one side of the table
you have the suits and on the other side you have
hard core t-shirts.  The context switching that 
occurs is amazing.  At best, the contexts are very
obvious and a mediator does a great job at dividing
the conversation along the appropriate name spaces,
providing mappings as needed.  At worse, mis-understanding 
and ill-feelings result.

> I have a feeling that the answer to above question is
> important to understanding the impact of namespaces in XML.
> Here are some of the side questions I asked myself:
> Is it really a 'good thing' to have namespaces in XML?  What
> ill effect will it have on XML's future?  Why can't the
> semantic of '<name>' be determined purely by context?  What
> is wrong with using just <html> to distinguish HTML's use of
> 'a' tag?  Is the ability to inject attributes from other
> namespaces really useful?  What is the possitive effect of
> having just one namespace?  Why can't we have central
> registry of XML names?
> What do you all think?  I would be very much interested in
> your answers.

Well, I personally believe that namespaces form a
hierarchy of specilization.  And that any name space
specification must take this into account for it
to be successful.  In otherwords,

  Unabridged Dictionary
    +-- Conversational Dictionary
    |   (only common words, with 
    |    tightly defined meanings)
    +-- Medical Dictionary
    |    |
    |    +-- Internal Medicine
    |    |     ...
    |    +-- Optimalogy
    |          ...
    +-- Information Technology Dictionary
    |    |
    |    +-- Object Oriented Programming
    |    |    |
    |    |    +-- Java
    |    |    | 
    |    |    +-- C++
    |    |    |
    |    |     ...     
    |    |  
    |    +-- Network Administration
    |     ...

This type of arrangment allows for the least
amount of strings in the language, but
gives them definate meaning depending upon
the context.   As you move to the left
the meaning of the word becomes more
vague, as you move to the right it
becomes more specific.  Of course,
domain specific words are introduced
to the right, but more often than
not, the closest general purpose 
word is borrowed rather than 
inventing a whole new name....

Hope this helps!


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To unsubscribe, mailto:majordomo at the following message;
unsubscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list