2013-07-16

FRBR and beyond : it's abstraction all the way

When we (Pierre-Yves and myself) decided a year ago to use FRBR to represent versions in Linked Open Vocabularies, we were not completely sure we were on the right track, but pretty convinced it was worth further exploration. FRBR concepts and insights should be powerful enough to be portable outside the library world. Using FRBR only in library science does not help to understand the power of its underlying paradigm, extract its very essence and port it successfully to other domains of knowledge representation. As always, translation is the key to better understanding.
Recent exchanges with old topic maps friends and thinkers Murray Altheim, Jack Park and Patrick Durusau (to name a few) achieved to convince me that it would lead to something interesting to look at other domains with a FRBR state of mind. What made some FRBR gurus frown at our use of FRBR in LOV is that the concepts of Work, Expression, Manifestation and Item are too much grounded in the library universe to be exactly portable to things like versions of a vocabulary (and beyond that to recipes, places, occurrences of a term in a text, models of a car, whatever). And yes indeed, a vocabulary is not really a Work in the library meaning of the term, and a version not really an Expression, and a version format not really a Manifestation. 
But at the end of the day, that is not the main point, nor is the fact to use four levels instead of three or five. BibFrame will keep certainly three levels instead of four, and looking closely one could define other levels of representation in the FRBR pile. At the most granular level, an Item has a life cycle, and one could define a level under Item called for example ItemState, which would represent the state of the Item in a given interval of time, having in its description such properties as the place in which this item has been kept during this interval, events marking its beginning and end (move, degradation, restoration ...). This level would be useful to the archivist, museum curator, restorers ... willing to track the story of their precious Items. At the other end of the spectrum, beyond the Work level, one could imagine something more abstract, like a common idea underlying different works of different creators, like the myth of Orpheus of which every Work it has inspired (painting, sculpture, poetry, movie, music ...) would be an avatar, so to speak.

What is it, then, which makes FRBR so portable and powerful? It's not its specific levels by themselves, but the general approach saying that any "thing" (anything) in its representation can be considered at different levels of abstraction (or realization), that such levels can be made distinct, named and identified separately, and the links between those levels made explicit. What is extremely portable is the notion of a spectrum extending on one direction towards more "concrete", "tangible" aspects of the thing, and in the other direction towards more "abstract" or "intangible" aspects. Not that there is any thin line you can draw which would clearly separate the (absolutely) "abstract" from the (absolutely) "tangible", as many have tried to do over ages, and even today try to make the foundation of upper ontologies. "Abstract" and "tangible" are useful concepts if you take them as relative opposite directions, not as essential (ontological) characteristics. 
FRBR captures this by using specific predicates "embodiment", "realization", "exemplar" ... depending on the levels of the objects it links. But actually it could use the same generic predicate at all levels with local constraints. A Work is an abstraction of an Expression, which is an abstraction of a Manifestation, itself an abstraction of an Item, itself an abstraction of an ItemState ... itself an abstraction of a stream of data captured by my senses at some moment, helped or not by various devices ... which might be the closest proxy to "reality" I can get.

Every representation in a language or information system (language being the first of them) can be actually seen as an abstraction of something else. And the power of mind and language is the capacity to bind abstractions together to create other levels of abstraction (sometimes ad nauseum).
There are indeed plenty of ways to formally deal with abstraction relationships in knowledge representation, but the most obvious and frequently used one is the class-instance relationship (aka rdf:type), and as a matter of fact many knowledge engineers bred in Description Logics or in RDF are reluctant to use anything else. With the limits that for example in OWL you can't easily use "types of types" (aka metaclasses in F-Logic) without stumbling into OWL-Full assertions and matching reasoning issues. But as FRBR shows, there are other ways to deal with abstraction. The link between an Expression and a Work could be modelized as a class-instance relationship. This model would fly well in a context where you consider only Work and Expression, but if you want to introduce Manifestation in the same model it will get you out of OWL-DL. The strength of FRBR pile is to represent abstraction otherwise.

Moving slightly off the native landscape of FRBR, out of library and into the kitchen, consider the general concept of apple crumble, a specific apple crumble recipe, the way your grandmother applied this recipe, and that unforgettable one she made for your tenth birthday. There again, you can debate for ages if the notion of apple crumble is a Work, an apple crumble recipe an Expression etc. Or you can just use specific classes such as "Abstract recipe", "Written recipe", "Recipe in action", and "Unforgettable recipe realization" (whatever you want to call them). And now that you have understood how this hammer works, you will see nails everywhere, such as :
Model of car > Car series > My car > My car as of today
Concept (in a thesaurus) > Term > Term encoding > Occurrence in a text
Software > Version > Distribution > My installation > My configuration today
A formal generalization of FRBR could be as simple as an Ontology Design Pattern enabling to deal in an uniform way with all such situations. Such a standard pattern would allow, without knowing the context or domain beforehand, humans and machines to identify levels and direction of abstraction. 

[Added 2013-07-23] Dan Brickley just made a good point on public-vocabs list, quite relevant to this discussion. Don't try to generalize too much the concepts, but a FRBR state of mind can be found with different concepts, hence different vocabularies, either in different branches of schema.org or in completely distinct ontologies.