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