namespaces-considered-harmful: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
m (removed broken links)
No edit summary
Line 8: Line 8:
* [http://microformats.org/blog/2006/01/09/tim-bray-on-creating-xml-dialects/ Tim Bray on creating XML dialects]
* [http://microformats.org/blog/2006/01/09/tim-bray-on-creating-xml-dialects/ Tim Bray on creating XML dialects]


On the other hand, XHTML + [[semantic-class-names]] has seen widespread adoption among the web authoring/design/IA/publishing community.  Microformats is leveraging the approach that is both working better and frankly dominating in practice on the Web.
On the other hand, XHTML   [[semantic-class-names]] has seen widespread adoption among the web authoring/design/IA/publishing community.  Microformats is leveraging the approach that is both working better and frankly dominating in practice on the Web.


Namespaces are actually a *huge* negative.  Search for:
Namespaces are actually a *huge* negative.  Search for:
* [http://www.google.com/search?q=namespaces%20Tower%20of%20Babel namespaces Tower of Babel]
* [http://www.google.com/search?q=namespaces Tower of Babel namespaces Tower of Babel]
* [http://www.google.com/search?q=namespaces+syntactic+vinegar namespaces syntactic vinegar]
* [http://www.google.com/search?q=namespaces syntactic vinegar namespaces syntactic vinegar]


Namespaces are actually *not* well supported in sufficient modern browsers, nor even sufficiently with enough W3C technologies or test suites as compared to [[semantic-xhtml|(X)HTML]] + [[semantic-class-names]] + CSS.
Namespaces are actually *not* well supported in sufficient modern browsers, nor even sufficiently with enough W3C technologies or test suites as compared to [[semantic-xhtml|(X)HTML]]   [[semantic-class-names]]   CSS.


Namespaces encourage people to seclude themselves in their own namespace and invent their own schema rather than reusing existing elements in existing formats.  This hurts interoperability because a dozen different namespaces can all have their own slightly different semantics for the same element.  See [http://esw.w3.org/topic/BuildOrBuyTerms BuildOrBuy] for support for this argument, specifically  
Namespaces encourage people to seclude themselves in their own namespace and invent their own schema rather than reusing existing elements in existing formats.  This hurts interoperability because a dozen different namespaces can all have their own slightly different semantics for the same element.  See [http://esw.w3.org/topic/BuildOrBuyTerms BuildOrBuy] for support for this argument, specifically  

Revision as of 06:45, 12 April 2007

namespaces considered harmful

(This article is a stub, feel free to expand upon it)

The mixed namespace approach has already been tried by *numerous* others since 1998 and has failed on the Web.

On the other hand, XHTML semantic-class-names has seen widespread adoption among the web authoring/design/IA/publishing community. Microformats is leveraging the approach that is both working better and frankly dominating in practice on the Web.

Namespaces are actually a *huge* negative. Search for:

Namespaces are actually *not* well supported in sufficient modern browsers, nor even sufficiently with enough W3C technologies or test suites as compared to (X)HTML semantic-class-names CSS.

Namespaces encourage people to seclude themselves in their own namespace and invent their own schema rather than reusing existing elements in existing formats. This hurts interoperability because a dozen different namespaces can all have their own slightly different semantics for the same element. See BuildOrBuy for support for this argument, specifically

Use somebody elses rather than making aliases on purpose. It's one thing to make your own and then discover that there's something equivalent out there. It's quite another to willfully clutter the semantic web with aliases; the latter increases the burden on the community of consuming your data, so it's anti-social.

If you start thinking about the web in terms of OOP and polymorphism, namespaces break the polymorphic model that allows you handle widely varied data structures using the same methods.

See Also