Print

Print


Hey there. I'm working on some software that tries to represent FRBR
in a data model. Whereas it would handily be represented in RDF, my
"user profile" requirements for this project force me to cater to the
lowest common denominator, being MySQL or PostgreSQL. As such, I've
been working on a MySQL schema for "normal, non-RDF folk". You can see
the Project Goals for the software here:

   http://www.disobey.com/noos/LibDB/

Currently, everything is very, very rough, and the DatabaseSchema that
is currently available is out of date. This email is about the current
versions of the SQL schema, which covers just Group 1 Entities, as
well as their relationships amongst each other. The data involved
is film, so one movie has been marked up in this way as an experiment.

I need comments. I'll be starting Group 2 (person and corporate body,
probably the most time consuming of this process) sometime tomorrow.
There are two files I'm interested in having you take a look at
(which I can attach if necessary):

 http://cvs.sourceforge.net/viewcvs.py/libdb/LibDB/databases/

WARNING! Be sure you're looking at Rev 1.5 (which should be there shortly,
compensating for the lag of the web cvs servers). mysql_sample.sql
is a "real world" mapping of a movie entitled THE POOL, and
mysql_schema.sql is the database schema that describes it.

To truly understand what's going on here, you should:

 * have a background in relational database programming.
 * be able to read and understand SQL from the schema and data.

If you don't, these files won't be useful to you - I've plans to write
a more concise, verbose, and friendly article about all this once I get
a closer idea of how more data maps, and so forth.

If you're still here, some specific areas to look at are
the relationships defined. In the current schema, there are (at
the bottom), six relationships defined; three come from FRBR
and are well-defined:

  $work           is realized through    $expression
  $expression     is a realization of    $work

  $expression     is embodied in         $manifestation
  $manifestation  is an embodiment of    $expression

  $manifestation  is exemplified by      $item
  $item           is an exemplar of      $manifestation

You can tell this is a hierarchy. However, three relationships
were defined explicitly by me to cover some of the attributes
of the various FRBR entities. That's what I need sanity checking
on (both in the terms used to link the relationship, and in
the actual SQL implementation and layout):

  $entity         is also named          $name
  $name           is a variant name of   $entity

  $entity         is summarized with     $annotation
  $annotation     is a summarization of  $entity

  $annotation     is summarized by         $entity
  $entity         is a summarizer of       $annotation

The last two relationships can be used validly to say:

 "THE POOL is summarized with [this annotation]";
 "[This annotation] is summarized by [this author]";

but, in the sample data, the summarization actually comes
from the back of the DVD. So, in essence, another example is:

 "THE POOL is summarized with [this annotation]";
 "[This annotation] is summarized by [the DVD manifestation]";

Thoughts?

--
Morbus Iff ( don't heckle the super-villian )
Technical: http://www.oreillynet.com/pub/au/779
Culture: http://www.disobey.com/ and http://www.gamegrene.com/
icq: 2927491 / aim: akaMorbus / yahoo: morbus_iff / jabber.org: morbus