This is a response to Vol 7 John 19 ("Music Library Stack")...
Well, it seemed like a good idea at the time...
In the interest of time, I'll provide a brief functional description this issue. John and other interested parties are encouraged to contribute questions, refinements, and even - heaven forbid! - corrections.
The completed program should provide two basic functions:
I haven't thought this through carefully yet, but in relational database terms one would probably design three tables (relations):
- Generation of cassette tape labels. For the time being, consider the label format in the idea stack distributed with HyperCard as satisfactory for this function.
- Lookup and reporting at the album and track level. Here's a variation on my favorite mythical query: List all tracks of all albums with a particular composer.
An ALBUM table, including data such as
A COMPOSITIONS table, including
- Album Name
- Copyright date
- Recording / Mixing / Mastering technology - a three character code
- Noise reduction type
- Total play time
- A unique and arbitrary album ID
A TRACKS table, including
- Composition name
- Composition date
- A unique and arbitrary composition ID
Those of you comfortable with relational database design probably recognize the need to further normalize these tables. Additionally, the label printing requirement implies the need for another table. Is anyone brave enough to point out why, and to fill in these holes in the design?
- Album ID
- Composition ID
- Performer name
- Track length
But how does the above relate to HyperCard? I'm sure that I don't know. In fact, I have yet to be convinced that HyperCard is the right tool for this project. John?