dsifford / academic-bloggers-toolkit

WordPress plugin providing an all-in-one solution for effective academic blogging.
https://wordpress.org/plugins/academic-bloggers-toolkit/
GNU General Public License v3.0
120 stars 38 forks source link

Book editors imported as chapter authors from RIS file #557

Closed glorious1 closed 5 years ago

glorious1 commented 5 years ago

ABT Version: 5.0.5

PHP Version:

Theme:

Plugin List:

Browser: Google Chrome (Version: xxx)

Expected behavior: In chapters, authors and editors are imported as such.

Actual behavior: Book editors become chapter authors.

Console messages:

// Paste messages here

This seems to be new behavior. In the attached RIS, chapter authors were exported as tag AU; book editors as A2. In ABT, they all become authors. chaps.ris.txt

dsifford commented 5 years ago

Sorry for the delay. I checked this out and unfortunately there's not much I can do about making this more accurate since, per the RIS specification, the definition of A2 varies by both publication type and by the implementer.

So just keeping it as author is the safest way since the available fields for any given citation varies in the manual reference editor.

Long story short: Just fix it after you import.

I'll probably add the ability to import CSL JSON soon(ish) which will completely resolve your issue. Zotero allows exporting in that format.

glorious1 commented 5 years ago

OK, thanks for following up. I've switched to Zotero from Bookends as my reference manager thinking it would increase compatibility with ABT, as both are based on CSL. Seems not the case.

I see Bookends exports book editors with the tag 'ED', which presumably is compatible with ABT. Maybe I should ask the Zotero folks to consider changing that. There doesn't seem to be a way for a user to edit the tag mapping.

glorious1 commented 5 years ago

Just in case anyone is researching this issue, I found one can edit Zotero's RIS.js translator file to make editors come out with tag ED instead of A2 or A3. Just remove bookSection from the A2 list and book from the A3 list, and make an ED list with those two types. Then way down under Export Functions, var exportOrder, __default, add ED. Then they import right into ABT.

dsifford commented 5 years ago

I'd recommend you consider contributing that change into their codebase. Open up a PR if that solved your issues: https://github.com/zotero/zotero

glorious1 commented 5 years ago

Thanks,

I asked on their support forum if they would consider such a pull request. They replied no, that Zotero follows the RIS specification (which is linked to). https://forums.zotero.org/discussion/comment/333487#Comment_333487 https://forums.zotero.org/discussion/comment/333487#Comment_333487

I dug up the original specification (which is now only available on the wayback machine) and they do seem to follow it: https://web.archive.org/web/20120526103719/http://refman.com/support/risformat_intro.asp https://web.archive.org/web/20120526103719/http://refman.com/support/risformat_intro.asp (look for the complete documentation link to download, the excel file has the important reference type/tag matrix).

Although, I’ve also seen some discussion among the Zotero folks that RIS is a hot mess.

On Jun 6, 2019, at 8:34 AM, Derek Sifford notifications@github.com wrote:

I'd recommend you consider contributing that change into their codebase. Open up a PR if that solved your issues: https://github.com/zotero/zotero https://github.com/zotero/zotero — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/dsifford/academic-bloggers-toolkit/issues/557?email_source=notifications&email_token=ABNZ5QM3ALW5AYWBF4ZP4ZLPZEU7TA5CNFSM4HGNMAKKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXDHYDQ#issuecomment-499547150, or mute the thread https://github.com/notifications/unsubscribe-auth/ABNZ5QPZ7BHS5CRUQ5BE5WTPZEU7TANCNFSM4HGNMAKA.

dsifford commented 5 years ago

You hit the nail on the head: RIS is a disaster, which is a shame since it's so easily parseable.

I'm hoping to add support for CSL JSON soon which with be a direct 1:1 import, since that's what format is used internally.