> I > haven't thought this through but because BF combines the FRBR work and > expression into a single entity, it may be safe to say that no BF > instance can be an instanceOf more than one BF work. Isn't every edition of 'Complete Works of Shakespeare' an instanceOf each of the plays? cheers stuart -- ...let us be heard from red core to black sky On 19 January 2018 at 08:49, Karen Coyle <[log in to unmask]> wrote: > Joshua, > > Yes, as Nate says, those examples on my site are from quite a while ago, > and come out of an early MARC -> BFv1 converter. > > I don't how BF decides what gets a URI vs. what is a blank node (and I > find it to be heavy on blank nodes, which may reflect an XML development > environment). I do know that the FRBR model treats each bibliographic > entity (WEMI) as a top-level "thing". FRBR also explicitly rejects the > idea that the whole WEMI can be expressed with a single URI.[0] That > seems extreme, but in fact in FRBR there are many-to-many relationships > between works and expressions, so it isn't a hierarchy but a graph. I > haven't thought this through but because BF combines the FRBR work and > expression into a single entity, it may be safe to say that no BF > instance can be an instanceOf more than one BF work. However, any BF > work can have more than one instance, so the "super-set" identifier > becomes difficult. > > My gut feeling is that you should analyze your own data based on your > own use cases and then posit a model - so that your ideas are clear > before you step into the morass of BF assumptions (many of which do not > appear to be directly articulated in the public documentation). If you > find that your use cases are not served by BF, PLEASE bring that to the > attention of the community working on BF and LD4P [1]. There are aspects > of the BF development that may meet the needs of some but not all, > because the range of experiences is still limited. More voices are a > Good Thing. > > kc > [0] For more than you ever wanted to know, look at part II of > http://kcoyle.net/beforeAndAfter/index.html > [1] https://wiki.duraspace.org/display/LD4P > > On 1/18/18 11:26 AM, Josh Welker wrote: > > Okay, thanks all. I will set up the code to split the entities into > > different files. Is there a rule of thumb for when a Thing needs to be > > split out into a different file with its own URI vs being a blank node? > For > > instance, maybe blank nodes one level deep are okay but nested ones are > > not. But I don't see the point of making a URI for the Title of a > yearbook, > > for instance, when virtually no one is ever going to reference the Title > > outside the context of the larger Work or Instance. > > > > Joshua Welker > > Information Technology Librarian > > James C. Kirkpatrick Library > > University of Central Missouri > > Warrensburg, MO 64093 > > JCKL 2260 > > 660.543.8022 > > > > > > On Thu, Jan 18, 2018 at 12:39 PM, Trail, Nate <[log in to unmask]> wrote: > > > >> Just to note, that is a BIBFRAME1 vocab example. You can tell because > the > >> namespace is http://bibframe.org/vocab... > >> > >> You could certainly extract them and post them to their own end points, > >> but you have to decide how to make the uris unique in your endpoint > area: > >> Karen's had a unique uri for the Work: http://id/test/C:\Users\ > >> deborah\Documents\OxygenXMLDeveloper\samples14107665 , but nothing for > >> the Instance. > >> > >> If she wanted, she could have posted the Work part to > >> http://kcoyle.net/bibframe/works/samples1410665 > >> And she could have posted the Instance part to > http://kcoyle.net/bibframe/ > >> instances/samples1410665 (and changed the bf:Instance bf:instanceOf > >> address to the new work URI). > >> > >> <bf:instanceOf rdf:resource="http://kcoyle.net/bibframe/works/ > >> samples1410665 "/> > >> > >> > >> > >> BY the way, the bf2 version is comparable here (if I'm right that the > >> number is the LC voyager bib id): > >> > >> Id.loc.gov/tools/bibframe/compare-id/full-rdf?find=14107665 or > >> Id.loc.gov/tools/bibframe/compare-id/full-ttlf?find=14107665 > >> It's also available for extraction and use here: > >> http://lx2.loc.gov:210/LCDB?query=rec.id=14107665& > recordSchema=bibframe2a& > >> maximumRecords=1 > >> > >> Making things even more interesting, this one also has embedded Work > >> descriptions : > >> <bf:Work rdf:about="http://bibframe.example.org/14107665#Work740-46" > > >> <rdfs:label >Blest pair of sirens.</rdfs:label> > >> > >> They are pretty skimpy but could be used as stub descriptions and given > >> their own identity (uri) until such time as they can be reconciled to an > >> existing description or be more fully cataloged to stand on their own. > >> > >> Nate > >> > >> ----------------------------------------- > >> Nate Trail > >> Network Development & MARC Standards Office > >> LS/ABA/NDMSO > >> LA308, Mail Stop 4402 > >> Library of Congress > >> Washington DC 20540 > >> > >> > >> > >> > >> -----Original Message----- > >> From: Code for Libraries [mailto:[log in to unmask]] On Behalf Of > >> Josh Welker > >> Sent: Thursday, January 18, 2018 1:03 PM > >> To: [log in to unmask] > >> Subject: Re: [CODE4LIB] BIBFRAME nesting question > >> > >> Stephen, > >> > >> I've looked at Karen Coyle's examples in the past. They are extremely > >> helpful for figuring out how to structure the BIBFRAME record, but my > >> question is more about how the BIBFRAME model interfaces with the > semantic > >> web as a whole. As you mentioned, Karen's examples, like the LC examples > >> Nate mentioned, have both Work and Instance objects at the top level. > To my > >> (limited) understanding, that makes them suitable for ingestion into a > >> local system for indexing but not necessarily as URI endpoints. For > >> example, if I were to reference http://kcoyle.net/bibframe/sr.rdf.xml > in > >> another RDF document, how would an application know if I am referencing > the > >> Work or the Instance? > >> > >> Joshua Welker > >> Information Technology Librarian > >> James C. Kirkpatrick Library > >> University of Central Missouri > >> Warrensburg, MO 64093 > >> JCKL 2260 > >> 660.543.8022 > >> > >> > >> On Thu, Jan 18, 2018 at 11:55 AM, McDonald, Stephen < > >> [log in to unmask]> wrote: > >> > >>> Karen Coyle has some examples on her page: > http://kcoyle.net/bibframe/. > >>> Your option #2 appears to be similar to the output in her examples, > >>> although her examples do not include the Item level. You can also > >>> find conversion programs on the BibFrame website which will let you > >>> convert MARC records and see what they look like in BibFrame RDF/XML. > >>> > >>> Steve McDonald > >>> > >>> [log in to unmask] > >>> > >>> > >>> -----Original Message----- > >>> From: Code for Libraries [mailto:[log in to unmask]] On Behalf Of > >>> Josh Welker > >>> Sent: Thursday, January 18, 2018 12:08 PM > >>> To: [log in to unmask] > >>> Subject: Re: [CODE4LIB] BIBFRAME nesting question > >>> > >>> I guess I am trying to figure out what the well-defined view looks > >>> like. I can't find examples that contain Work, Instance, and Item > >>> within the same RDF document at the same URI. In fact, the examples > >>> section on the LC BIBFRAME 2.0 website is blank, and the links for > >> BIBFRAME 1.0 are all dead. > >>> I certainly am not trying to reinvent anything, which is why I am > >>> posting here. > >>> > >>> Joshua Welker > >>> Information Technology Librarian > >>> James C. Kirkpatrick Library > >>> University of Central Missouri > >>> Warrensburg, MO 64093 > >>> JCKL 2260 > >>> 660.543.8022 > >>> > >>> > >>> On Thu, Jan 18, 2018 at 11:00 AM, McDonald, Stephen < > >>> [log in to unmask]> wrote: > >>> > >>>> BibFrame already has an RDF view which is well-defined. Are you > >>>> trying to come up with your own RDF model for BibFrame data? > >>>> > >>>> Steve McDonald > >>>> [log in to unmask] > >>>> > >>>> > >>>> -----Original Message----- > >>>> From: Code for Libraries [mailto:[log in to unmask]] On Behalf > >>>> Of Josh Welker > >>>> Sent: Thursday, January 18, 2018 11:28 AM > >>>> To: [log in to unmask] > >>>> Subject: [CODE4LIB] BIBFRAME nesting question > >>>> > >>>> Hi all, > >>>> > >>>> I have a question about how to model a resource expressed in BIBFRAME. > >>>> We are digitizing some unique collections. Ideally, I'd like to have > >>>> one URI like http://example.org/myuri that returns one RDF document > >>>> containing data about the Work, the Instance, and the Item. There > >>>> are two ways I could do > >>>> this: > >>>> > >>>> 1. Use Work as the parent type and include the Instance as a child > >>>> blank node using the Work.expressionOf property, and then include > >>>> the Item as a second-level child node using the Instance.hasItem > >> property. > >>> Example: > >>>> > >>>> bf:Work: > >>>> bf:title: [title node here] > >>>> bf:hasInstance: > >>>> bf:Instance: > >>>> bf:bookFormat: [bookFormat node here] > >>>> bf:hasItem: > >>>> bf:Item: > >>>> bf:shelfMarker: [shelfMarker node here] > >>>> > >>>> > >>>> 2. Use some parent container class like rdf:Description and include > >>>> the Work, Instance, and item as immediate children blank nodes of > >>>> that container. Example: > >>>> > >>>> rdf:Description: > >>>> bf:Work: > >>>> bf:title: [title node here] > >>>> bf:Instance: > >>>> bf:bookFormat: [bookFormat node here] > >>>> bf:Item > >>>> bf:shelfMarker: [shelfMarker node here] > >>>> > >>>> > >>>> 3. If neither 1 nor 2 are acceptable, I could have separate URI > >>>> endpoints for the Work, Instance, and Item. This has the advantage > >>>> of using less blank nodes: > >>>> > >>>> http://example.org/myuri_Work > >>>> http://example.org/myuri_Instance > >>>> http://example.org/myuri_Item > >>>> > >>>> I really prefer option 3 the least, but I am very uncertain between > >>>> 1 and 2. Thoughts on which is best practice? If 2, what should I use > >>>> as the container class? And in any case, how much should I worry > >>>> about the proliferation of blank nodes? > >>>> > >>>> Joshua Welker > >>>> Information Technology Librarian > >>>> James C. Kirkpatrick Library > >>>> University of Central Missouri > >>>> Warrensburg, MO 64093 > >>>> JCKL 2260 > >>>> 660.543.8022 > >>>> > >>> > >> > > -- > Karen Coyle > [log in to unmask] http://kcoyle.net > m: +1-510-435-8234 > skype: kcoylenet/+1-510-984-3600 >