In which I rethink what books mean to me (JournalEntries)

2024-03-31: In which I rethink what books mean to me

Books used to be simpler.

OK, that isn't true. I used to think of books in simpler terms.

There was a bunch of books I wanted to record information about, in my personal Restagraph instance (yes, more personal than this one. No, it's not on the internet). Things like which ones I wanted to buy. So I created the Books resourcetype, complete with an ISBN attribute, so I could look them up again nice and easily.

Then it came to my attention that ISBNs come in two flavours: the old-school 10-digit numbers, and the newfangled 13-digit ones. Yes, there's also an older 9-digit one; I missed it at the time. Pfft; that's easily fixed. I added those attributes, and left the original one in place so I could still get at that information without going to all the trouble of copying it to the correct field.

More recently, I've had to let go of the convenient "one book, one ISBN" approach. There's one for each format in which the book is available - hardcover, softcover, ePub, Kindle and PDF. Even that isn't quite right: there's one for each format in which each edition of a book is available. At least reprints don't get a new ISBN.

Still, that's as precise as I need to get for my purposes. So far, so good.

...you just know it gets worse from here, right?

Today, I wanted to add an entry for Interzone, so I could keep track of where I can buy it from. That's a magazine, and they're not the same as books. But they're not so different from newspapers, and I can distinguish between them by creating Magazine and Newspaper instances of TypesOfThing, and group all those under Periodical. And if I really need to get that abstracted, I'll probably make a Published Works type, to group Periodicals, Books and whatever else has shown up in the meantime. Job done, and we're off to the races.

...whoa, Nelly! Some magazines are strictly online, some are strictly paper-based, and some are both. OK, no problem, I'll just extend the use of BookFormats and... waitasec. It'd be handy to denote which publication is available in which format in general, as well as to record specific instance with their ISBNs, and that's when I could have sworn somebody yelled "Jenga!"

So now I'm staring mournfully at a pile of ontological rubble where some comfy misapprehensions used to stand, and wondering what I can build in their place.

It's clear that formats, in the sense of hardback, softcover, etc. need to be primary resources in their own right.

Books still come in different formats, sometimes (but not always) in multiple editions (some of which haven't happened yet so we don't know about them) and every single permutation of these has its own ISBN. OK, I can work with this.

Magazines are pretty reliably softcover, when they're printed at all, but they always come in multiple editions. We'll stick with that latter assumption even in cases where the first one flopped so hard it took the publisher with it.

Newspapers: same as magazines, except they don't get ISBNs.

Let's not forget translations, including the fact that content may vary between markets.

Then there are journals, which are kind of like a magazine, except not quite the same thing. Please don't ask me what the difference is, because at this point in 2024 I couldn't even point to review and editorship standards with a straight face.

This is when I take another look at ISBNs, to get a clear idea of what kinds of thing they do and don't cover. It's possible I can use "has an ISBN" to name a generic kind of published-set-of-words, and use TypesOfThing to distinguish from there.

So, it turns out there's also ISSN (International Standard Serial Number) for magazines and newspapers, and ISMN (International Standard Music Number) for music scores.

At this point, we have a pretty good argument for looking around for existing standards that already do what you want.

At this point, you might also be wondering why I didn't go this way to begin with. The answer is that I'm a seasoned IT veteran: if I don't already have a concrete use-case for it right now, I'm not going to waste time building it. However, I will allow for the possibility that I'll need it some time in the future - and that's partly why I designed Restagraph specifically to allow progressive updates and extensions to the schema. That made it an effective tool to help me explore my own understanding of a given conceptual space - and sometimes I just plain prefer my own version. On top of all that, sometimes the existing standards are just so detailed and convoluted that it's like installing an entire mechanic's workshop to hammer in that one nail.

In this case, I started out just wanting to keep track of books, complete with the one reference I need in order to point to the instance of a book that I'm interested in. Implementing three different-but-closely-related ontological standards would have been overkill - and I say that as a congenital hair-splitter.

Then my requirements changed in a way that the existing approach couldn't just be incrementally expanded to handle. The existing industry standards do solve this problem in a way that addresses my needs, and my requirements have now expanded far enough that the extra effort is worthwhile. Probably. I still need to digest them properly to make sure I really do understand them, and then I'll make an actual decision about how much of those standards it's worth me adopting at this point.

What am I going to do with the existing ISBN references? Honestly, I'll probably just un-define them in the schema and look them up again when I need to. I could work through them all, identify which edition each ISBN refers to, and add the relevant entries, but I'm not convinced it'd be time well spent. Besides, this is partly why I'm using a graph database instead of a relational one: undefining an attribute in the schema only means that the API doesn't give me access to it. It's still there in the database, and I can dig it out if I decide I need it.

It'll take a bit of time for me to read and digest those standards, of course, and it's always a good idea to let them settle and ferment in my mind while I focus on other things. So in the meantime, there's a bunch of CDs and LPs I've been meaning to catalogue...