Yes.
I.e. were the metadata fields static?
Well, yes, but that doesn't preclude extensibility.
In WinFS terminology, object types were called Item types; object instances were called Items. From the docs: "An item is the equivalent of an object in object-oriented programming. It has a complex structure, specific behavior, and operations described by the 'WinFS' schemas."
So one way to extend an Item type was to create a derived type (i.e. use inheritance.) WinFS also supported what it called item extensions, which were basically "small objects" that you could associate with existing objects. They were for things like reminders, which don't mean much on their own and could apply to many different Item types.
For your scenario, creating a derived type would probably have been the right solution.
EDIT: Well, now that I think about it, what if every different music app created its own Song subclass? So inheritance might not be the right choice.
Ahh, that's the kind of thing I deeply love thinking about! I hope that one day I can rejoin the ranks of the lab-coated guardians of epistemology. (Nod to "Metacrap: Putting the torch to seven straw-men of the meta-utopia" by Cory Doctorow. http://www.well.com/~doctorow/metacrap.htm)