| Version 25 (modified by bdarcus, 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 Type | RDF Item Type | RDF Subcontainer Type | RDF Container Type |
| artwork | bibo:Image? | ||
| attachment | z:Attachment | ||
| audioRecording | bibo:AudioDocument | ||
| bill | bibo:Bill | bibo:Code | |
| blogPost | sioct:BlogPost/bibo:Article | dc:isPartOf sioct:Weblog/bibo:Website | |
| book | bibo:Book | ||
| bookSection | bibo:BookSection | dc:isPartOf bibo:EditedBook | |
| case | bibo:LegalDecision | dc:isPartOf bibo:CourtReporter | |
| computerProgram | umbel:ComputerProgram_CW/bibo:Document | ||
| conferencePaper | bibo:Article | bibo:presentedAt bibo:Conference | |
| dictionaryEntry | bibo:Article | dc:isPartOf umbel:Dictionary/bibo:ReferenceSource | |
| document | bibo:Document | ||
| bibo:Email | |||
| encyclopediaArticle | bibo:Article | dc:isPartOf umbel:Encylopedia/bibo:ReferenceSource | |
| film | bibo:Film | ||
| forumPost | sioct:BoardPost/bibo:Article | dc:isPartOf sioct:MessageBoard/bibo:Website | |
| hearing | bibo:Hearing | ||
| instantMessage | sioct:InstantMessage/bibo:PersonalCommunication | ||
| interview | bibo:Interview | ||
| journalArticle | bibo:AcademicArticle | dc:isPartOf bibo:Issue | dc:isPartOf bibo:Journal |
| letter | bibo:Letter | ||
| magazineArticle | bibo:Article | dc:isPartOf bibo:Issue | dc:isPartOf bibo:Magazine |
| manuscript | bibo:Manuscript | ||
| map | bibo:Map | ||
| newspaperArticle | bibo:Article | dc:isPartOf bibo:Issue | dc:isPartOf bibo:Newspaper |
| note | bibo:Note | ||
| patent | bibo:Patent | ||
| podcast | bibo:AudioDocument dc:type z:Podcast | ||
| presentation | bibo:Slideshow? | ||
| radioBroadcast | po:Broadcast dcterms:medium po:Radio? | ||
| report | bibo:Report | ||
| statute | bibo:Statute | ||
| thesis | bibo:Thesis | ||
| tvBroadcast | po:Broadcast dcterms:medium po:TV? | ||
| videoRecording | bibo:AudioVisualDocument | ||
| webpage | bibo:Webpage | dc: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 Field | RDF Property |
| url | bibo:uri |
| rights | dcterms:rights |
| series | dcterms:title on Series |
| volume codeVolume reporterVolume | bibo:volume on Subcontainer |
| issue | bibo:issue on Subcontainer |
| edition | bibo:edition |
| place | address:localityName on dcterms:publisher foaf:Organization |
| country | address:countryName on dcterms:publisher foaf:Organization |
| publisher institution label studio network company university | foaf:name on dc:publisher foaf:Organization |
| pages codePages | bibo:pages |
| firstPage | bibo:pageStart |
| ISBN | bibo:isbn10/bibo:isbn13 |
| publicationTitle encyclopediaTitle dictionaryTitle websiteTitle forumTitle blogTitle proceedingsTitle bookTitle | dc:title on Container |
| ISSN | bibo:issn on bibo:Journal |
| date issueDate dateDecided dateEnacted | dc:date on Subcontainer |
| section | bibo:section |
| callNumber | bibo:lccn on Container |
| archiveLocation | dcterms:source |
| distributor | bibo:distributor |
| extra | z:extra |
| journalAbbreviation | bibo:shortTitle on Container |
| DOI | bibo:doi |
| accessDate | z:accessDate (should be in bibo?) |
| seriesTitle | dcterms:title on Series (doesn't seem to be used on any item types concurrently with the series field) |
| seriesText | dcterms:description on Series |
| seriesNumber | bibo:number on Series |
| code | dcterms:title on Container |
| session | dcterms:title on bibo:presentedAt bibo:Conference? |
| legislativeBody | foaf:name on bibo:organizer foaf:Organization (we really need some way of doing this less ambiguously) |
| history | ? |
| reporter | dcterms:title on Container (bibo:CourtReporter) |
| court | bibo:court |
| numberOfVolumes | ? (there has been an open ticket assigned to bdarcus on this for over a year) |
| committee | foaf: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 | ? |
| codeNumber | bibo:number on Container |
| patentNumber reportNumber billNumber documentNumber publicLawNumber episodeNumber docketNumber applicationNumber | bibo:number |
| artworkSize | dcterms:extent |
| repository | z:repository on Bookmark |
| scale | ? |
| meetingName | dcterms:title on bibo:presentedAt bibo:Conference |
| runningTime | po:duration |
| version | bibo:edition |
| system | ? |
| conferenceName | dcterms:title on Container (no:conference is an event) |
| language | dc:language |
| programmingLanguage | dc:language (doesn't seem to be used on any item types concurrently with the language field) |
| abstractNote | dcterms:description (isn't there a dcterms:abstract property?) |
| type reportType videoRecordingType letterType manuscriptType mapType thesisType websiteType audioRecordingType presentationType postType audioFileType | dc:type |
| medium artworkMedium interviewMedium | dcterms:medium |
| title caseName nameOfAct subject | dcterms:title |
| shortTitle | bibo:shortTitle |
| numPages | ? |