Originally Posted by kovidgoyal
Keep in mind that while user specified tags are great, you also need automatically specified tags from book metadata. This is to cater to users that don't want to go to the trouble of manually tagging every book (title, author,series,isbn etc are examples of "automatic tags"). And in order to do that, you're going to have to write plugins to read metadata from all the ebook formats you want your app to support.
One of the things that I think this approach would be useful for is in specifying the directory hierarchy of one's file system.
If you specify that your books are stored in directory structure platform/author/series/isbn/title, then I could create tag categories for each of those, and automatically populate the specific tags from the specific directories.
You're of course absolutely right that I'll need to read metadata from the ebooks themselves in order to more accurately populate certain categories (specifically title, I think, based on what I've seen so far), and of course for those ebooks that aren't in directory hierarchies at all.
I was thinking that maybe I should write the metadata readers as separate entities, and put those in the open source community directly; so then we might get to a point where they can be maintained and added to by many people for many different programs, as long as the interface is consistent.