Lists Home |
Date Index |
On Thu, 16 Dec 2004 16:17:46 +0000, firstname.lastname@example.org
> Roge Costello wrote -
> > Yesterday I received an approach from Naz Irizarry. His approach
> > has some similarities with Peter's approach.
<snip>discussion about generic model approach</snip>
> As always, your questions deal with modeling. If you regard a Student or an
> Employee as a thing in itself, you run into these kinds of difficulties. It is better
> to regard them as roles that a person may play from time to time. Then most
> of these issues basically go away.
> There is nothing particularly different here - just because you call a container
> a "bag" doesn't really change anything.
> > For example, here's how to express information about Roger L. Costello
> > and his relationship to The MITRE Corp.
> > With the Bag approach properties are dynamically composed. The
> > same properties can be associated with a different type. Further, the
> > properties can be associated with multiple types.
> You can do the same thing with <person>...</person>, there is no essential
> difference. It is just syntax, and it is a little more complex and harder to read.
> It would be better to get the modeling straight about roles and relationships
> with attributes.
With a complex system I think your correct: everything comes down to
modelling. However, sytax matters if you're going to do a lot of
modelling. It's a lot easier to revise:
than it is:
Even if you don't have Schema attached, you've got something else that
expects certain element names somewhere else in the food chain.
The fact is that you have to allow for multiple models within a
complex system and some of them need to be more abstract than others.
If you're using XML to track instances of these models it helps if the
XML maps to the models.
For some portions of a complex system you may want to force things to
as concise and concrete model as possible, but in general I don't find
this happening very much internally within our system. The only time
it seems to matter is with external systems, so once more, you've got
to define what portion of the system you are concerned with...