It seems that bf:Language has been living two lives.  In one life, it is a hard working predicate that relates a resource with the global identity of a language, such as

The other life is lived outside of the RDF model, where it is specific to a particular resource and not in any way reusable.  The definition of the part of the resource is a string, not a URI, but clearly is meant as one as it is re-used. It also has another URI and a scheme [sorry, source] and a name [sorry, languageOfPart].

One of these lives has a future, and one of them does not.  I'm going to be as forthcoming as I can: in order to make this coherent, along with bf:(absorbed/continued/superseded)InPart[By], a Part of a Resource should have its own identity in the same way that an Edition does. It could be just a blank node, like so many others, but at least be a node with the potential for identity.

My colleagues believe that I am wasting my time with this, but I believe that you want to do the right thing.  We're willing to wipe this part of the ontology clean ... all we're asking in return is your cooperation in bringing a known issue to resolution.

Agent Sanderson
Rob Sanderson
Technology Collaboration Facilitator
Digital Library Systems and Services
Stanford, CA 94305