wiki:BiboMapping

Version 30 (modified by simon, 7 years ago) (diff)

--

Format Considerations

We probably want to stop using Mozilla's RDF support for writing RDF/XML, or at least try to clean it up a little. In order to make our RDF as interoperable as possible, we probably want to write it in an XML-based format that's relatively easy for other implementations to read. We might also want to consider Turtle, a simple, human-readable subset of N3. Simplified RDF/XML would be easier to parse using standard XML parsing libraries; Turtle would be more compact and easier to read. In either case, a number of libraries exist for parsing RDF/XML in various languages.

note from bruce: this looks good, but some of the net-related stuff (IM, Blog, forum post, etc.) could be better covered using SIOC. Possibly relevant types for Zotero include:

  • sioct:AnnotationSet
  • sioct:BookmarkFolder
  • sioct:ReadingList
  • sioct:BlogPost
  • sioct:BoardPost
  • sioct:Comment
  • sioct:InstantMessage
  • sioct:MailMessage
  • sioct:MicroblogPost
  • sioct:WikiArticle
  • sioct:Category
  • sioct:Tag

SIOC also has some interesting types relating to commentary.

Keep in mind too that a resource may have more than one type. Also per conversation on the forums with Dan S., I think it might be valuable to talk about how to model a library, and contents.

Item Type Mappings

Zotero TypeRDF Item TypeRDF Subcontainer TypeRDF Container Type
artworkbibo:Image?
attachmentz:Attachment
audioRecordingbibo:AudioDocument
billbibo:Billbibo:Code
blogPostsioct:BlogPost/bibo:Articledcterms:isPartOf sioct:Weblog/bibo:Website
bookbibo:Book
bookSectionbibo:BookSectiondcterms:isPartOf bibo:EditedBook
casebibo:LegalDecisiondcterms:isPartOf bibo:CourtReporter
computerProgramumbel:ComputerProgram_CW/bibo:Document
conferencePaperbibo:Articlebibo:presentedAt bibo:Conference
dictionaryEntrybibo:Articledcterms:isPartOf umbel:Dictionary/bibo:ReferenceSource
documentbibo:Document
emailbibo:Email
encyclopediaArticlebibo:Articledcterms:isPartOf umbel:Encylopedia/bibo:ReferenceSource
filmbibo:Film
forumPostsioct:BoardPost/bibo:Articledcterms:isPartOf sioct:MessageBoard/bibo:Website
hearingbibo:Hearing
instantMessagesioct:InstantMessage/bibo:PersonalCommunication
interviewbibo:Interview
journalArticlebibo:AcademicArticledcterms:isPartOf bibo:Issuedcterms:isPartOf bibo:Journal
letterbibo:Letter
magazineArticlebibo:Articledcterms:isPartOf bibo:Issuedcterms:isPartOf bibo:Magazine
manuscriptbibo:Manuscript
mapbibo:Map
newspaperArticlebibo:Articledcterms:isPartOf bibo:Issuedcterms:isPartOf bibo:Newspaper
notebibo:Note
patentbibo:Patent
podcastbibo:AudioDocument
dc:type z:Podcast
presentationbibo:Slideshow?
radioBroadcastpo:Broadcast
dcterms:medium po:Radio?
reportbibo:Report
statutebibo:Statute
thesisbibo:Thesis
tvBroadcastpo:Broadcast
dcterms:medium po:TV?
videoRecordingbibo:AudioVisualDocument
webpagebibo:Webpagedcterms:isPartOf biblio:Website

Field Mappings

The list of base field mappings was generated by the SQLite query

SELECT GROUP_CONCAT(f1.fieldName, '[[BR]]') FROM fields AS f1
LEFT JOIN baseFieldMappings AS b ON (b.fieldID = f1.fieldID)
LEFT JOIN fields AS f2 ON (f2.fieldID = b.baseFieldID)
GROUP BY IFNULL(b.baseFieldID, f1.fieldID)
ORDER BY IFNULL(b.baseFieldID, f1.fieldID);

Properties on the container below are applied to the item itself if no container exists. Properties on the subcontainer below are applied to the container if no subcontainer exists, or the item itself if no subcontainer or container exists.

Zotero FieldRDF Property
urlbibo:uri
rightsdc:rights
seriesdc:title on Series
volume
codeVolume
reporterVolume
bibo:volume on Subcontainer
issuebibo:issue on Subcontainer
editionbibo:edition
placeaddress:localityName on dc:publisher foaf:Organization
countryaddress:countryName on dc:publisher foaf:Organization
publisher
institution
label
studio
network
company
university
foaf:name on dc:publisher foaf:Organization
pages
codePages
bibo:pages
firstPagebibo:pageStart
ISBNbibo:isbn10/bibo:isbn13
publicationTitle
encyclopediaTitle
dictionaryTitle
websiteTitle
forumTitle
blogTitle
proceedingsTitle
bookTitle
dc:title on Container
ISSNbibo:issn on bibo:Journal
date
issueDate
dateDecided
dateEnacted
dc:date on Subcontainer
sectionbibo:section
callNumberbibo:lccn on Container
archiveLocationdc:source
distributorbibo:distributor
extraz:extra
journalAbbreviationbibo:shortTitle on Container
DOIbibo:doi
accessDatez:accessDate (should be in bibo?)
seriesTitledc:title on Series (doesn't seem to be used on any item types concurrently with the series field)
seriesTextdc:description on Series
seriesNumberbibo:number on Series
codedc:title on Container
sessiondc:title on bibo:presentedAt bibo:Conference?
legislativeBodyfoaf:name on bibo:organizer foaf:Organization (we really need some way of doing this less ambiguously)
history? (note: in bibo, we don't treat this as a simple literal; we treat these as linked decisons with bibo:affirmedBy and bibo:reversedBy; you might solicit opinion on whether this is a directions you should go)
reporterdc:title on Container (bibo:CourtReporter)
courtbibo:court
numberOfVolumes? (there has been an open ticket assigned to bdarcus on this for over a year)
committeefoaf:name on bibo:organizer umbel:Committee_Organization
assignee?
priorityNumbers?
references? (can't use dcterms:references since it's not intended for use with literal values)
legalStatus?
codeNumberbibo:number on Container
patentNumber
reportNumber
billNumber
documentNumber
publicLawNumber
episodeNumber
docketNumber
applicationNumber
bibo:number
artworkSizedcterms:extent
repositoryz:repository on Bookmark
scale?
meetingNamedc:title on bibo:presentedAt bibo:Conference
runningTimepo:duration
versionbibo:edition
system?
conferenceNamedc:title on Container (no:conference is an event —bdarcus) (Container is always of type bibo:Conference on all item types with this field; if bibo:Conference cannot contain a dc:title field, http://wiki.bibliontology.com/index.php/Examples#Conference_Presentation is invalid and bibo needs to be modified in order to cite conference presentations —simon)
languagedc:language
programmingLanguagedc:language (doesn't seem to be used on any item types concurrently with the language field)
abstractNotedcterms:abstract
type
reportType
videoRecordingType
letterType
manuscriptType
mapType
thesisType
websiteType
audioRecordingType
presentationType
postType
audioFileType
dc:type
medium
artworkMedium
interviewMedium
dcterms:medium
title
caseName
nameOfAct
subject
dc:title
shortTitlebibo:shortTitle
numPages?