On Fri, Jul 11, 2014 at 10:19 AM, Ford, Kevin <[log in to unmask]> wrote:

> > If bf:uri did not assert some degree of equivalence, then it shouldn't
> > be a subproperty of bf:identifier
Let me begin by saying that if you understand bf:identifier as essentially
> meaning "equivalentResource" or "owl:sameAs" or something along those
> lines, then I totally understand your fear of someone using the same URI
> for the bf:Identifer /and/ the bf:Instance.

Ahh, hrm. I took the identifier relationship to relate an Identifier of the
resource to the resource, and hence if a Work is identified by a URI, then
statements asserted using that URI are asserted about the Work.

To try and be clear:

A resource with the class bf:Work is a Work.  It hopefully has a URI that
identifies it, otherwise it will have a blank node identifier. (Thanks

This is, in RDF, and to try and be concrete:
    <> a bf:Work .

Say that there's another identity for that Work, and it's the string
"12345" in the namespace of "tolkienWorks":

<> a bf:Work ;
  bf:identifier [ a bf:Identifier ;
    bf:identifierValue "12345" ;
    bf:identifierScheme "tolkienWorks" ] .

In the tolkienWorks scheme, the string "12345" is an identifier for Lord of
the Rings.  This is the same as in the namespace
'lord_of_the_rings' identifies it.

If there was a URI construction for magically constructing URNs from
bf:Identifiers, urn:bf:identifierScheme:identifierValue, then I would
    <urn:bf:tolkienWorks:12345> a bf:Work .
to be a meaningful statement, as that URN identifies the bf:Work in the
same way that the URI <> also
identifies the exact same bf:Work.

And thus:
   <> owl:sameAs
<urn:bf:tolkienWorks:12345> .

Or, take DOI as a real case...

_:bnode1 a bf:Work ;
  bf:identifier [ a bf:Identifier ;
    bf:identifierScheme "doi" ;
    bf:identifierValue "10.1001/1234.5678" ] .

As there is an exact equivalence between the resource identified by the
string-form doi "10.1001/1234.5678" and the resource with the http URI "", I would say that you can replace
_:bnode1 with that URI. Thus the following is both syntactically possible
and semantically correct:

<> a bf:Work ;
  bf:identifier [ a bf:Identifier ;
    bf:identifierScheme "doi" ;
    bf:identifierValue "10.1001/1234.5678" ] .

So, given a function resolve(bf:Identifier) that returns the resource
identified by the Identifier, resourceA is owl:sameAs the returned resource
from resolve()ing the object of any triple with the subject of resourceA
and the predicate bf:identifier, or any sub-property of it.

If that's not correct, then I have *absolutely no idea* what bf:identifier
means :)

If the relationship bf:identifier doesn't mean "the referenced Identifier
is an identifier that uniquely identifies this resource" ... what does it
mean?  If it's not identity, then it's some other relationship... which is
bf:relatedTo, no?

We've thought of the bf:identifier->bf:Identifier construct more as a way
> to record and capture details about an "identifier" itself more than a
> relationship that equates two like things.  Our assumption presented
> another way: bf:Identifier represents an identifier, not the Thing the
> identifier identifies.  (And that is why I've had a hard time seeing the
> potential identifier collision - to me they represent two distinct things.)

I agree with that bf:Identifier class is an identifier. Assertions about an
instance of that class are assertions about the identifier itself, not the
resource that the identifier identifies.

I agree that it is a stretch to assign a URI to a bf:Identifier, but that
does happen in the documentation, examples and reference tools on the site (as previously).

Hence, following the above logic:  (hold on to your hats, ladies and

    _:bnode1 a bf:Electronic, bf:Instance ;
            bf:instanceOf <> ;
            bf:label "Electronic Resource" ;
            bf:uri <> ]

I infer from the range of bf:uri that:
  <> a bf:Identifier .

Lacking further knowledge, I assume that resolve()ing this discovered
bf:Identifier with the identity <> will
result in the resource <>

Given the axiom that A owl:sameAs resolve(A.bf_identifier), I conclude that
    <> a bf:Electronic, bf:Instance,
bf:Identifier ;
        bf:label "Electronic Resource" ;
        bf:uri <> ;
        bf:identifierValue "" .

And hence my original assertion that bf:Identifier resources MUST be blank