LISTSERV mailing list manager LISTSERV 16.0

Help for BIBFRAME Archives


BIBFRAME Archives

BIBFRAME Archives


[email protected]


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Monospaced Font

LISTSERV Archives

LISTSERV Archives

BIBFRAME Home

BIBFRAME Home

BIBFRAME  November 2014

BIBFRAME November 2014

Subject:

Back to title types was [BIBFRAME] [Topic] Types

From:

Karen Coyle <[log in to unmask]>

Reply-To:

Bibliographic Framework Transition Initiative Forum <[log in to unmask]>

Date:

Wed, 5 Nov 2014 11:25:33 -0800

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (184 lines)

After a diversion relating to library systems expectations, I would like
to get back to the question of how to handle types, in re titles.

There are significant differences between the functionality of
properties (and sub-properties) vs. that of classes (sub-classes). Right
now, bf:workTitle is a property with a domain of bf:Work. Therefore, any
resource described with a bf:workTitle property can be inferred to be a
bf:Work. bf:instanceTitle is a property with domain of bf:Instance, so
ditto.

Therefore, in these examples:

1. <http://id.loc.gov/resources/bibs/15798171> ;
     bf:workTitle[ a bf:Title ;
             bf:titleValue"Heart of Midlothian" ] .


2. <http://id.loc.gov/resources/bibs/15798171> ;
     bf:instanceTitle[ a bf:Title ;
             bf:titleValue"The heart of Midlothian" ] .


... you can infer the class of your bib resource from the bf:xTitle
property used. If all titles become subclasses of bf:Title, then I
believe you lose this ability to infer bf:Work and bf:Instance from
these properties. *IF* the work and instance titles are good indications
of the nature of the resource being described, it would be a shame to
lose this ability. There are other properties with bf:Work and
bf:Instance as domains, such as bf:creator and bf:publicationDate, but
my non-cataloger gut feeling is that these two title properties are key
*deciders* of the nature of the entity being described.

There are other title properties that may be less significant for this
inference function: keyTitle; originPlace; originDate. Not to mention
that may of the title properties refer to parts of a title (which I find
a bit confusing in terms of how they would be bound "correctly" in an
RDF graph, but a few examples might clear that up).

All that to say that I see some problems with re-casting all types as
sub-classes, at least for some key properties where I see some useful
inferencing possibilities. However, I do not see anything in the
BIBFRAME documentation about intended inferencing, so do not know if my
inferencing assumptions are shared.

kc

On 10/27/14 12:17 PM, Robert Sanderson wrote:
>
> Hi Ray, all,
>
> Regarding the Titles and Types issues, I think there's another option
> as well, Type as Class. Or, if I may, Type as Type :)
>
> For example:
>
> _:x a bf:Work ;
> bf:title _:y .
> _:y a bf:KeyTitle ;
> rdf:value "..." .
>
>
> I believe this is desirable for the following reasons:
>
> * Type as String Value just isn't good linked data. The type should be
> uniquely distinguishable, and clearly duplicate strings could be used
> by multiple communities independently. This includes all the *Scheme
> predicates.
>
> * Type as URI Value is better, but seems pointless when the URI could
> be more efficiently used as a class. All of the bf:*Type predicates
> and bf:*Scheme predicates can just be rdf:type instead.
>
> * It makes it easier to express domain and range.
>
> * It's more readable in the RDF/XML serialization and makes any object
> mapping significantly easier.
>
> * It reduces the number of properties, thereby making it easier to see
> what's going on in the model. The subclasses are there below the main
> class for when they're needed rather than cluttering up the top level.
>
> * It's easy to create new types without needing to worry about domain
> and range of properties, just by subClassing the main class.
> Otherwise, if you want to have additional predicates associated with
> your new instance, the domain has to be the main class rather than a
> subClass, which is very poor modeling.
>
> * It simplifies many other the predicates as the main class isn't
> necessary in the predicate name, that's just the class of the object
> that the predicate is being used with. If the predicate should have
> its value constrained then it shouldn't have Literal as its range.
> For example no need for identifierValue, instead it can be just value.
>
> * It prevents the possible inconsistency of using a predicate that
> implies one type on its object, but the object has a different one (eg
> Work issn x ; x scheme "doi").
>
>
> So I think Example 2 is the closest, but a proposed Example 5:
>
> <http://example.com/xyz//Work1>
> bf:identifier [
> a bf:IssnIdentifier ;
> rdf:value "12345678" .
> ] .
>
> Where bf:IssnIdentifier is rdfs:subClassOf bf:Identifier, which is the
> range of bf:identifier.
>
> The same pattern holds for all of the classes/predicates under
> consideration.
>
> For titles:
> <http://example.com/xyz//Work1>
> bf:title [
> a bf:KeyTitle ;
> rdf:value "Lord of the Rings" .
> ] .
>
> For notes:
> <http://example.com/xyz//Work1>
> bf:note [
> a bf:AdminHistNote ;
> rdf:value "Administrative history note" .
> ] .
>
> For classifications:
> <http://example.com/xyz//Work1>
> bf:classification [
> a bf:DdcClassification ;
> rdf:value "234.5" .
> ] .
>
> For categories:
> <http://example.com/xyz//Work1>
> bf:category [
> a bf:MediaCategory ;
> rdf:value "something" .
> ] .
>
> For shelfmarks:
> <http://example.com/xyz//Work1>
> bf:shelfmark [
> a bf:DdcShelfmark ;
> rdf:value "12345678" .
> ] .
>
> Relators aren't needed as objects, and relationships between Works and
> Instances are just relationships and thus don't need fixing.
>
> Roles are not types, and thus Provider doesn't fit any of the patterns
> proposed. Roles are closer to relationships, and thus providerRole
> should be dropped. If the role is printing, then Work printer
> Provider, just like Work creator Person. If the role is associated
> with the Provider object, then it ties it exclusively to that Work so
> it could never be reused.
>
> And thus to answer the three questions:
>
> 1. Please don't do this at all :) The model should not allow
> multiple, incompatible ways to say the same thing at the same time.
> 2. Punning properties that can be either literal or a URI break tools
> and make many things, such as JSON-LD, much harder. Please don't do
> that either.
> 3. Good documentation, with contributions from the community accepted
> in a timely fashion, plus encouragement in the specification to be an
> active participant in the work.
>
> Hope that helps,
>
> Rob
>
> --
> Rob Sanderson
> Technology Collaboration Facilitator
> Digital Library Systems and Services
> Stanford, CA 94305

--
Karen Coyle
[log in to unmask] http://kcoyle.net
m: +1-510-435-8234
skype: kcoylenet/+1-510-984-3600

Top of Message | Previous Page | Permalink

Advanced Options


Options

Log In

Log In

Get Password

Get Password


Search Archives

Search Archives


Subscribe or Unsubscribe

Subscribe or Unsubscribe


Archives

March 2023
February 2023
January 2023
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
December 2011
November 2011
October 2011
September 2011
July 2011
June 2011

ATOM RSS1 RSS2



LISTSERV.LOC.GOV

CataList Email List Search Powered by the LISTSERV Email List Manager