[XML-SIG] XMI question

uche.ogbuji@fourthought.com uche.ogbuji@fourthought.com
Wed, 29 Dec 1999 10:31:47 -0700


> Paul Prescod writes:

>  > Currently the grove view is flat. Groves have no data modelling
>  > capabilities that do not directly relate to addressing. In my humble
>  > opinion someone should probably take the best ideas from groves and put
>  > them on top of a richer data modelling language like RDF schemas or OMG
>  > object definition language. There are too many ways to spell "integer"
>  > and "attribute" in the world.
> 
> It would be helpful to here about the pros and cons of various object
> modeling notations.  The DTD notation is not sufficient when modeling
> engineering data that is to be encoded using XML.  This maillist has
> had references to XML Schema, DTDs, adn RDF, but the focus of the
> discussion hasn't made it clear which is the right choice for
> representing engineering design data.

This is an on-going discussion across industries and communities, and any 
discussion here would merely point to more cogent discussion in the worlds of 
the OMG, W3C, Dublin Core, ISO, etc.  The candidates include as diverse 
entrants as RDF, UML (of which XMI is just a serialization), ISO Basic 
Semantic Repository, and groves.  Note that there are various differences in 
the core domain of all these examples, and that is part of the debate.  The 
world has discovered intelligent data and the fruit is falling in bunches.

> The lead candidate for me is the XML Metadata Interchange (XMI)
> format.

I would quite disagree.  First of all, I think that for most purposes, UxF, a 
David against the XMI Goliath, is a better (certainly simpler) serialization 
of the UML meta-model for several purposes.  But even if you are merely 
advocating UML, I would claim that even though I'm an experienced OO developer 
and a strong advocate of OO over other methodologies for _application_ design, 
I think it is woefully inadequate for generalized data modeling.

True, some of its shortcomings help present brain explosion (for instance, 
even RDF avoids N-ary relationships) but it often imposes unnatural 
constraints on data, such as those encoded in traditional OO sub-typing.  The 
solution is to go one step lower.  OO builds a model specialized for app 
development on top of such more fundamental models as conceptual graphs and 
RDF.  For general data modeling, I suggest these latter models, since they are 
more general and powerful than the OO sub-set.

> It provides an XML based notation for spelling "integer" and
> "attribute".  My concern with making this choice is that I haven't
> seen any discussion of XMI on this list.  I would expect XMI to be a
> good candidate for use in the Python XML toolkit considering the
> pedigree of XMI?

Not a fraction of the pedigree of RDF, which builds on work of the W3C, IETF, 
ISO, Dublin Core, etc.

> The OMG is developing the XMI for exchanging model
> information between UML modeling tools.  IBM has a tool[1] for moving
> data from Rational Rose to XMI and back.  There web site is a bit out
> of date but they have an active mailing list.

I will admit that RDF visualization tools need to progress a bit.  The one at 
the W3C absolutely bites.  It would be a neat coup for Python if we could 
create the first usable RDF visualization system.  Any graphic layout wizards 
out there?

> Have I missed out on something that is wrong with XMI.  It looks
> promising, but the Python XML experts haven't touched it as far as I
> can tell.

> The XMI format seems to be catching on in the UML community.
> ObjectDomain has it high on their list as an import/export format and
> the Argo/UML project at http://www.ics.uci.edu/pub/arch/uml/ is
> developing an open source UML tool that uses XMI as the native file
> format.

FourThought actually uses Argo/UML and thus XMI, but we have a preliminary 
style-sheet to convert it to UxF, which we'll use as a primary format.  Again, 
this is purely for app-development.  For data and meta-data, it won't do.


-- 
Uche Ogbuji
FourThought LLC, IT Consultants
uche.ogbuji@fourthought.com	(970)481-0805
Software engineering, project management, Intranets and Extranets
http://FourThought.com		http://OpenTechnology.org