Fix Zotero RDF Export writing authorList as blank nodes

edited August 11, 2019
This issue is concerning the Zotero RDF Export.

I am aware of the github repository containing the translators, however my javascript skills are negligible and I hope someone can help me to fix this together.

The authors have blank nodes as their subjects which, to my knowledge, makes it impossible to link them to other resources. Also the author and editor lists are blank nodes.

A suggestion for a fix:

you use the urn as the subject for a publication. Append "#authorList" to pin the author list to the publication. Identify a single author as "urn#FIRSTNAME_LASTNAME" or similar to at least pin them to the publication. This will not fix having the same author existing as different nodes, however will make it easier to merge them externally e.g. via SPARQL queries. Do this analogously for the editorlists, either on the base level or within the collection scope.

I hope someone can help me with this, thanks in any case for reading!

best luis

As an example (in ttl for better readability)

====Before====:

< urn:1234 > a bibo:Book ;
dcterms:title "A really good book" ;
bibo:authorList [ a rdf:Seq ;
rdf:_1 _:Ne418874114e448b9a4b8521191c15bb2 ] .

_:Ne418874114e448b9a4b8521191c15bb2 a foaf:Person ;
foaf:surname "Doe" ;
foaf:givenName "Jane" .

====After====:

< urn:1234 > a bibo:Book ;
dcterms:title "A really good book" ;
bibo:authorList .

< urn:1234#authorList > a rdf:Seq ;
rdf:_1 .

< urn#jane_doe > a foaf:Person ;
foaf:surname "Doe" ;
foaf:givenName "Jane" .
  • I would suggest that you look at the Bibliontology RDF export translator instead. This seems much more tailored to be used with other linked data. There the author nodes are not blank nodes but receive an nodeID.
  • edited September 12, 2019
    Thank you very much @zuphilip,

    sorry that I didn't get back to you earlier! I think I confused the exporter names, what I am talking about is happening in the "Bibliontology RDF" Exporter. Those nodeIDs are helpful when linking within a file, but they don't mean anything outside the document they are written into. If you use the rdf:about attribute you can link to them, just as you do when creating the top level entries. I put an example in the end again, as I think it's always easier to see it then. I used the xml Version so you can see the changing attribute structure better.

    Maybe you can help me out fixing this. In any case thanks for your help!

    best luis


    ====Locally linkable====
    (note foaf:Person = "http://xmlns.com/foaf/0.1/Person")

    <foaf:Person rdf:nodeID="n14">
    <foaf:givenName>Jane</foaf:givenName>
    <foaf:surname>Doe</foaf:surname>
    </foaf:Person>



    ====Externally linkable====

    <rdf:Description rdf:about="urn:1234#janedoe">
    <foaf:givenName>Jane</foaf:givenName>
    <foaf:surname>Doe</foaf:surname>
    <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Person"/>;
    </rdf:Description>



  • Can you edit your message and do the code parts inside <code> tag? Currently, not much seems to be visible for me.
  • (I've edited the message.)
  • @dstillman Thank you very much! I have no clue where that semicolon in the externally linkable version comes from. I can't remove it unfortunately, that of course shouldn't be there in case it is displayed for you as well.
Sign In or Register to comment.