Re: Demo: Modelling Cost of Travel Paths Between Towns
Date: 22 Nov 2004 10:45:25 -0800
Message-ID: <4b5394b2.0411221045.61955bae_at_posting.google.com>
neo55592_at_hotmail.com (Neo) wrote in message news:<4b45d3ad.0411181208.4894f98a_at_posting.google.com>...
> > > Neo: [With TM/XDb2] user can ... update the age of any thing whose
> > > name is john and has an age, including that of things whose class is
> > > unknown at design-time (ie a person, dog, cat, pig, plane, etc in the
> > > future). Try coding that in RM.
> > >
> > > Alan: It doesn't get a whole lot easier
> > >
> > > Neo: So let's step thru it and fill in the details...
> > >
> > > Alan: If you can't tell me what data you will want to see two hours
> > > from now, you will not be working here much longer...
> >
> > I love the way you change the rules.
> > Now it's an AI application, not just a database.
>
> "[With TM/XDb2] user can ... update the age of any thing whose name is
> john and has an age, including that of things whose class is unknown
> at design-time (ie a person, dog, cat, pig, plane, etc in the
> future)."
>
> > No one here ever said that an RDBMS is a proper medium for an AI apps.
>
> Thanks for confirming that RM is the limited data model.
>
> > > Here is how with TM/XDb2....
> > > ... no schema to design.
> > > New things need not conform to any predefined tables or schema.
> >
> > In yours, you build relationships as you go.
> > For each and every piece of data you need to store.
> > This is NOT scalable by any stretch of the imagination.
>
> Check between your ears.
>
> > > Neo: "SELECT %.age & %.name=john" works until eternity
> >
> > So does RM.
>
> I didn't see the RM query that will work until eternity.
> Could you show it?
sorry, I was off in a training class for a week, how's about I use ORACLE. I'm sure an equivalent script can be written for other RDBMS. I'll admit, it won't be as short as yours but it performs the same function. (NOTE: I left out minor formatting issues like not printing column headers for the first query. Simple settings can remove them without changing the logic of the script.)
SPOOL age.sql
select 'select ''', ta.table_name, ''', AGE from ', ta.table_name,
' where name = ''JOHN'' ;'
from user_tab_columns ta,
user_tab_columns tb
where ta.table_name=tb.table_name
and ta.column_name = 'AGE'
and ta.column_name <> tb.column_name
and tb.column_name = 'NAME'
/
SPOOL OFF
START age.sql
Xdb2 treats everything as a "THING". a RDBMS treats everything as a "TABLE". Meta queries are possible in both. The Xdb2 query is shorter, but not logically less complex. So I'm still looking to see the big advantage in Xdb2. I haven't seen it yet.
Ed Received on Mon Nov 22 2004 - 19:45:25 CET