[DB] Feature Set 1.0, +

Schuetz, David (David_Schuetz nospam at tds.com)
Wed, 10 Mar 1999 13:39:14 -0800

Okay, let's get down to business and design us a DB.

As I said in an earlier message, it seems that we now need to decide exactly
what *information* we want stored in the Database. Once that's done, we can
code up a simple implementation of it (with MySQL or somesuch) to at least
begin collecting the data (from whatever sources are open to us). We can
always reformat it later.

I imagine that the database *content* will be independent, somewhat, from
the actual implementation, which could be relational/SQL, one big honkin'
flat file, gobs of flatfiles in directories, or whatever. that comes later.
Right now, let's at least agree on what we want to remember.

Here are the features it seems we're interested in having in the DB.

First, basic features (largely CDDB compatibility issues):

* DiscID - Xmcd hash, for compat.
* Artist - primary artist on the CD
* Title - primary title for the CD
* Disc Info - extra information about the CD
* Playorder - suggested playing order (is this stored in the network DB,
or just local?)

and for each track:

* Track title -- title of the track
* Track ext info -- extra info about that track

I think we all agree that we need at least these features, at a bare
minimum.

I can think of the following "new features" that could be added:

* Sub-titles for the CD
* Artist (and even album) information for each track (for compilations,
etc.)
* Sub-track and Super-Track information (arbitrarily defined by
timestamps, related in a hierarchical manner to physical CD tracks)
* production information (engineer, producer, recording studio, dates,
live/studio, etc., etc.)
* lotsa freeform stuff (probably an XML or property/value approach for
freeform data)
* Composer (per track, per album)
* copyright, running times, genres, etc.

Plus, we probably would want to support:
* International characters
* multiple language records
* Multiple disc ID systems (might be best to just record the M:S:F
information for all tracks, and let people ask based on that information.
to hell with hashes! :-) )
* abbreviations for Artist, Track, etc. (to allow display on small
screens, like car displays or consumer Jukeboxes)

What have I missed?

david.