OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] Excessive layering in XML Schemas

My approach is to start out as simple as possible, because you know everything will get more and more complex as time goes on.

On 8/10/2015 8:10 AM, Costello, Roger L. wrote:
Hi Folks,

Below is a slight twist on something that Eric Raymond wrote [1].  I
welcome your thoughts on this topic.  What schemas have you seen that
have excessive layering?  /Roger

XML Schema make abstraction easy — perhaps too easy. It encourage data
architectures with thick glue and elaborate layers. This can be good
when the problem domain is truly complex and demands a lot of
abstraction, but it can backfire badly if schema designers end up doing
simple things in complex ways just because they can.

Too many layers destroy transparency: It becomes too difficult to see
down through them and mentally model what the data design is actually
doing. The Rules of Simplicity, Clarity, and Transparency get violated
wholesale, and the result is a data design full of obscure bugs and
continuing maintenance problems.

This tendency is probably exacerbated because a lot of educational
courses teach thick layering as a way to satisfy the Rule of
Representation. In this view, having lots of abstract types is equated
with embedding knowledge in your data. The problem with this is that too
often, the ‘smart data’ in the glue layers is not actually about any
natural entity in whatever the schema is representing — it's just about
being glue. (One sure sign of this is a proliferation of abstract
subclasses or ‘mixins’.)

[1] http://www.catb.org/esr/writings/taoup/html/unix_and_oo.html

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS