Hi Karen,

On Wed, Jul 16, 2014 at 6:30 PM, Karen Coyle <[log in to unmask]> wrote:

> Rob, do, or how do, the defined domains and ranges affect this? For
> example, I looked at just the "assigner" ones, and for domains and ranges I
> got:
> audienceAssigner --> assigner [domain:Intended Audience] [range:literal]
> identifierAssigner --> assigner [domain:Identifier] [range:literal]
> classificationAssigner--> assigner [domain:Classification] [range:literal]
> authorityAssigner --> assigner [domain:Authority] [range:Agent]

Indeed, isn't it curious that sometimes an Assigner is a literal, and
sometimes it's an Agent.  Surely they should always be the same?
My preference would be towards bf:Agent, rather than relying on strings.

As for the domains, I'm not at all clear what use is expected of domains in
> BIBFRAME. Having a domain of "Classification" allows one to infer that any
> subject with the predicate classificationAssigner is therefore of rdfs:type
> "Classification." (true?) If that is true, what is the intended use of this
> inference, and how important is it in practice? Is it enough to justify the
> creation of a unique predicate?

That is true, and has no importance.  In fact, if you used
classificationAssigner with a bf:Category, the inference would be made and
not correct.  Assuming that classificationAssigner is always used with a
bf:Classification, then there's no need for the inference.

So, in my opinion, there's no value, and hence no need to create all these
unique predicates.

The time when there is utility is when the range must be tightly
constrained. _IF_ there were classes that should only be linked to other
classes, that would be a reason that needed more discussion.   For example,
if there was a AuthorityAssigner agent subclass (not that there should
be!), then assigner couldn't have just AuthorityAssigner as its range, as
there's also ClassificationAssigner, and so on.

Hope that helps,