[HACKERS] uml diagrams of system catalogues

2001-05-28 Thread John Reid

Hi all,

Has anyone produced a UML diagram of  the system catalogues or made a
start on it?  Especially in a package that outputs xml/xmi file formats,
such as Argouml or dia?  If so, would you be willing to share?  Else if
deemed a good idea might make a start myself...

cheers,
John


---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])



Re: [HACKERS] possible DOMAIN implementation

2001-05-22 Thread John Reid

Hi,

Tom Lane wrote:
> 
> John Reid <[EMAIL PROTECTED]> writes:
> >> Ugh.  Don't overload pg_class with things that are not tables.  I see no
> >> reason that either pg_class or pg_attribute should be involved in the
> >> definition of a domain.  Make new system tables if you need to, but
> >> don't confuse the semantics of critical tables.
> 
> > This is required due to the way inheritance is currently handled?
> 
> Not inheritance specifically.  I'nm just looking at it on general design
> principles: all the rows of a table should be the same kind of thing.
> We shade that a little to allow views, sequences, etc, in pg_class, but
> at least they're all things that have columns and so forth.

These could actually be defined in pg_type (or an inherited class
pg_class_def)?

> 
> > From what I can remember inheritance works in postgresql at the class level.
> > C.J. Date et al *strongly* argue that inheritance should be based on types,
> > not relations/classes. This is still the case in 7.1?
> 
> Postgres doesn't really distinguish between tables and composite types
> --- there's a one-for-one relationship between 'em.  So we haven't had
> to think hard about that point.  If we did allow composite types without
> associated tables, we probably would want tables to inherit from 'em
> (which would mean some rethinking of the inheritance representation).

Yes.  I had a superficial look at SQL99 abstract data types a while
back, but didn't get very far.  I didn't raise any of the issues I came
across at the time as everyone was busy with the 7.1 release.  My
interest is primarily in GIS data storage, which is a bit more involved
than most applications.  Ability to define complex types without having
to instantiate them (or else implement them as user defined type when
they are really a class) would be especially handy for GIS schemas.  Not
quite sure what else yet ;-) 

IMHO, it is probably worth looking at this further - it seems to me that
these issues will have a significant impact when dealing with
implementation of the SQL99 standard, so probably easier to deal with
them now/soon?

FWIW, some *really sketchy* ideas from when I looked at this:
1) pg_inherits should point at pg_type
2) some (most?) of the functionality of pg_class should be moved into
pg_type ((2a) maybe using inherited class pg_class_def?)
3) pg_class should purely contain relation specific stuff only (type,
indexes, owner)

another alternative would be introduce a new system table pg_relation
for relations, making pg_class the equivalent of pg_type but used for
handling complex types.  Then again, this is effectively the same as
(2a)? Might make sense to think about renaming the tables anyway, as to
me pg_class seems to imply the class definition, rather than the
instantiation. Then we would have

pg_type
pg_class inherits pg_type
pg_relation

I could forsee some real chicken or the egg problems in system
initialization.  How are these handled currently?
 
cheers,
John

---(end of broadcast)---
TIP 6: Have you searched our list archives?

http://www.postgresql.org/search.mpl



Re: [HACKERS] possible DOMAIN implementation

2001-05-18 Thread John Reid

Hi,

Haven't looked at this for a while, but I think some larger issues might raise
their (ugly?) heads here.

Domains are effectively types that inherit attributes of parent type, with
some additional information, so should be handled at the level of pg_type.
However might make sense to look at some other matters at the same time - I'm
thinking specifically of general inheritance and abstract data types.  AFAICT,
these are all closely related.  I started looking at this a while ago, but was
side-tracked by the winds of change ;-)

Tom Lane wrote:

> =?iso-8859-2?Q?Hor=E1k_Daniel?= <[EMAIL PROTECTED]> writes:
> > When a new domain is created it will:
> > - put a record into pg_type with typnam = domain name, new code for
> > typtype = 'd' and typrelid = oid of a new record in pg_class (next line)

> - put a record into pg_class to create a fictional table with a new
> > relkind ('d'?), relnatts = 1, relname can be system generated
> > (pg_d_)
>
> Ugh.  Don't overload pg_class with things that are not tables.  I see no
> reason that either pg_class or pg_attribute should be involved in the
> definition of a domain.  Make new system tables if you need to, but
> don't confuse the semantics of critical tables.

This is required due to the way inheritance is currently handled?

> > - put a records into pg_attribute and pg_attrdef with "column
> > (attribute) definition" - real type, size, default value etc., owner
> > will the fictional table from the previous step

ditto?

> > Then it will be required to modify functions that works with types. When
> > typtype of a retrieved type is 'd' then it will perform lookups into
> > pg_class, pg_attribute and pg_attrdef to find the real definition of the
> > domain. These additional lookups will also create a performace penalty
> > of using domains.
>
> Why shouldn't this info be directly available from the pg_type row?

>From what I can remember inheritance works in postgresql at the class level.
C.J. Date et al *strongly* argue that inheritance should be based on types,
not relations/classes. This is still the case in 7.1?   If the inheritance
mechanism could be changed to support types, the concept of inheritance for
classes should not be broken as these have entries in pg_type - possible some
code might be though :-(

Please note that I'm looking at forest scales (and also through the haze of
memory) - the trees might have an entirely viewpoint ;-)

cheers,
John
--
--
john reid  e-mail [EMAIL PROTECTED]
technical officerroom G02, building 41
school of geosciences   phone +61 02 4221 3963
university of wollongong  fax +61 02 4221 4250

uproot your questions from their ground and the dangling roots will be
seen.  more questions!
   -mentat zensufi

apply standard disclaimers as desired...
--



---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])



Re: [HACKERS] CORBA and PG

2001-03-12 Thread John Reid

Hi,

This was mentioned a while back on this list (pg hackers) - thanks to whoever
provided the pointer :-)  I have not yet looked at it in depth, though that is high
on my list of TO-DO's. It is released under an apache style licence.  Any reason
why there are no pointers to it on the PostgreSQL related projects or interfaces
pages?

project page: http://4suite.org/index.epy
docs on ODMG support: http://services.4Suite.org/documents/4Suite/4ODS-userguide

>From project page:
"4Suite is a collection of Python tools for XML processing and object database
management. It provides support for XML parsing, several transient and persistent
DOM implementations, XPath expressions, XPointer, XSLT transforms, XLink, RDF and
ODMG object databases.

4Suite server ... features an XML data repository, a rules-based engine, and XSLT
transforms, XPath  and RDF-based indexing and query, XLink resolution and many
other XML services. It also supports related services such as distributed
transactions and access control lists.  Along with basic console and command-line
management, it supports remote, cross-platform and cross-language access through
CORBA, WebDAV, HTTP and other request protocols to be added shortly."

Drivers for PostgreSQL and Oracle are provided.

BTW, page pays postgresql quite a compliment too: "PostgresQL is a brilliant,
enterprise-quality, open-source, SQL DBMS." :-)

Peter T Mount wrote:

> Quoting Franck Martin <[EMAIL PROTECTED]>:
>
> > I guess these stubs are for accessing PG as a corba server...
> >
> > I'm trying to look to see if I can store CORBA objects inside PG, any
> > ideas...

> Although I've not tried it (yet) it should be possible to access Java EJB's
> from corba.
>
> If so, then using an EJB server (JBoss www.jboss.org) you could then store them
> as Entity beans. Each one would then have its own table in the database.
>
> Peter
>
> >
> > Franck Martin
> > Network and Database Development Officer
> > SOPAC South Pacific Applied Geoscience Commission
> > Fiji
> > E-mail: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> > Web site: http://www.sopac.org/
> > <http://www.sopac.org/> Support FMaps: http://fmaps.sourceforge.net/
> > <http://fmaps.sourceforge.net/>
> >
> > This e-mail is intended for its addresses only. Do not forward this
> > e-mail
> > without approval. The views expressed in this e-mail may not be
> > necessarily
> > the views of SOPAC.
> >
> >
> >
> > -Original Message-
> > From: Peter T Mount [mailto:[EMAIL PROTECTED]]
> > Sent: Tuesday, 6 March 2001 3:52
> > To: Franck Martin
> > Cc: PostgreSQL List
> > Subject: Re: [HACKERS] CORBA and PG
> >
> >
> > Quoting Franck Martin <[EMAIL PROTECTED]>:
> >
> > > Does anyone has pointers on CORBA and PostgreSQL?
> > >
> > > What is the story ?
> >
> > There's some old stubs for one of the orbs somewhere in the source
> > (C/C++)
> >
> > Also the old JDBC/Corba example is still there
> > (src/interfaces/jdbc/example/corba)
> >
> > Peter
> >
> >
> > --
> > Peter Mount [EMAIL PROTECTED]
> > PostgreSQL JDBC Driver: http://www.retep.org.uk/postgres/
> > RetepPDF PDF library for Java: http://www.retep.org.uk/pdf/
> >
>
> --
> Peter Mount [EMAIL PROTECTED]
> PostgreSQL JDBC Driver: http://www.retep.org.uk/postgres/
> RetepPDF PDF library for Java: http://www.retep.org.uk/pdf/
>
> ---(end of broadcast)---
> TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]

--
--
john reid  e-mail [EMAIL PROTECTED]
technical officerroom G02, building 41
school of geosciences   phone +61 02 4221 3963
university of wollongong  fax +61 02 4221 4250

uproot your questions from their ground and the dangling roots will be
seen.  more questions!
   -mentat zensufi

apply standard disclaimers as desired...
--



---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]