[om-list] Re: Data models
Mark Butler
butlerm at middle.net
Fri Oct 10 22:02:29 EDT 2003
I agree completely that we should avoid fixed data models in the
traditional sense. However we do need a common ground level data model
(or meta-model) or we have little hope for exchanging models between
systems. We have discussed meta models in the past, but I for one am
much more prepared to have a coherent discussion these days, based on
what I have learned over the past few years.
My current family history data model is very generic - it has Concepts,
Attributes, Relations, and Evaluations, where the latter three are
sub-classes of the first. I still create sub classes to bind code to
various types of objects, but the data itself is stored at a very high
level rather than in hard coded sub class specific fields. This turned
out to be very important for several critical algorithms I am developing
- the one for intelligent model merging being the foremost.
At some point I would like to write an interpreted language that works
against the object model at a much higher level than can be achieved in
either Java or C++. Declarative and procedural aspects could easily be
implemented as part of the same language.
- Mark
Luke Call wrote:
> Mark,
>
> Most of my comments to this are the same as in my previous email. You
> can ignore my hasty wordiness here but I don't want to stifle, just in
> case something good works out between our efforts. :)
>
> I'd just repeat that I'd hope in OM that one could build object models
> on the fly, as a side-effect of "idea processing" (akin to
> "word-processing"), via the OM user-interface. Thus not just recording
> knowledge in an shared exponentially useful collaborative way, but in a
> crude way building software applications where the object model is not
> defined once and for all at the design phase, but grows and evolves with
> usage. So if you have genealogy-related entities and I have other
> entities for whatever I'm doing, but they have a common "ancestor"
> Entity (using terms loosely; they'd perhaps both point to a common
> "like-this one" "person" entity or other) with mutually usefully
> modelled behaviors or properties, we collaborate in our models at that
> point, and so could others.
>
> A substrate of common tools, structures, and algorithms is used to
> facilitate the higher-level stuff your recent posts have described.
> While it may use Scheme (a lisp, cleaner than common lisp it seems) for
> some logic processing, algorithms, etc., it would use an off-the-shelf
> dbms under the hood for performance issues--I personally have no desire
> to rewrite the great work of others but to build on it.
>
> And with good abstractions in between, the two worlds (dbms &
> lisp/AI-land) shouldn't collide but rather they would have to serve each
> other.
>
More information about the om-list
mailing list