Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I want to make a database about one artist's music records... CD, Vinyl, Cassette, 8 Track, Singles, Ep, Lp, etc...

I believe I have a good normalized model that will achieve my needs, however before creating the database, I want to ask the experts so that my model is solid from the start.

Here are some models that I'm looking to implement:

ALBUM (Vinyl)
-------------
**VINYL**
SIDE A
1. Track name
2.. Track name
3. Track name
...
SIDE B
1. Track name
2. Track name
3. Track name
...
ALBUM (Double Vinyl)
-------------
**VINYL 1**
SIDE A
1. Track name
2. Track name
3. Track name
...
SIDE B
1. Track name
2. Track name
3. Track name
...
**VINYL 2**
SIDE A
1. Track name
2. Track name
3. Track name
...
SIDE B
1. Track name
2. Track name
3. Track name
...
ALBUM (CD)
-------------
**CD**
1. Track name
2. Track name
3. Track name
...
Extra Tracks
11. Track name
12. Track name
...
ALBUM (Compilation)
-------------
**CD 1**
1.Track name
2. Track name
3. Track name
...
**CD 2**
1.Track name
2. Track name
3. Track name
...
**DVD**
1. Track name
2. Track name
3. Track name
...
ALBUM (8 Track)
-------------
**8 TRACK**
Program 1
1. Track name
2. Track name
3. Track name
...
Program 2
1. Track name
2. Track name
3. Track name
...
Program 3
...
Program 4
...
ALBUM (Cassette)
-------------
**CASSETTE**
SIDE A
1. Track name
2. Track name
3. Track name
...
SIDE B
1. Track name
2. Track name
3. Track name
...

Basically, there are albums that contain discs that contain tracks. 1 album can have multiple discs and 1 disc can only be part of one album. 1 disc can have multiple tracks and 1 track can be in multiple discs.

This is a basic normalized model I came up with. Is this a good foundation?