From e89145eac98d3ab2b81a988807db654367fc1852 Mon Sep 17 00:00:00 2001 From: github actions Date: Wed, 1 Jun 2022 02:55:48 +0000 Subject: [PATCH 01/27] Squashed 'buildres/csl/csl-styles/' changes from 649aac45b7..e740261c4c e740261c4c Merge pull request #6075 from POBrien333/patch-1048 5251887003 Update society-of-biblical-literature-fullnote-bibliography.csl b4938f49de Update society-of-biblical-literature-1st-edition-fullnote-bibliography.csl b7afaa19d5 Update Food and Agriculture Organization of the United Nations to comply with 2022 revision (#6072) 5218a45d36 Update avian-research.csl (#6076) 627ce4ab9d Merge pull request #5983 from tutam/patch-1 08bd3069b1 Re-indent CSL styles d97aec74cb Update suomen-antropologi-journal-of-the-finnish-anthropological-society.csl 00439b182b Re-indent CSL styles 914a4dc3b9 Update suomen-antropologi-journal-of-the-finnish-anthropological-society.csl ef4ecffd99 Re-indent CSL styles 224b1d3a60 Update society-of-biblical-literature-1st-edition-fullnote-bibliography.csl 3297912fba Update society-of-biblical-literature-1st-edition-fullnote-bibliography.csl 156a8504e0 add title-short to all SBL variants 3f6c407b23 Merge pull request #6071 from denismaier/fixbernsozanthro a7b322803b Re-indent CSL styles d624bda945 removes abstract from issued macro f3221f4f58 Update glossa.csl (#6070) 63c0c6d266 Rework frontiers-in-ecology-and-the-environment.csl (#6067) 7502061b1d Bump nokogiri from 1.13.5 to 1.13.6 (#6068) 374238f1ca Bump nokogiri from 1.13.4 to 1.13.5 (#6065) 7b09f4fa11 Create journal-of-occupational-and-environmental-medicine.csl (#6053) 9e7a74b67f Update revista-ladinia.csl (#6058) 13461e5b08 Update suomen-antropologi-journal-of-the-finnish-anthropological-society.csl 2e86264db7 Re-indent CSL styles 98ff3de42c Update suomen-antropologi-journal-of-the-finnish-anthropological-society.csl bcab5dc283 Fix timestamp 76aeb4c847 Create suomen-antropologi-journal-of-the-finnish-anthropological-society.csl git-subtree-dir: buildres/csl/csl-styles git-subtree-split: e740261c4c56a8b034fcca1baf212f7b4e3f38f9 --- Gemfile.lock | 4 +- dependent/avian-research.csl | 9 +- ...ure-organization-of-the-united-nations.csl | 390 +++++------ frontiers-in-ecology-and-the-environment.csl | 116 ++-- glossa.csl | 20 +- ...ccupational-and-environmental-medicine.csl | 207 ++++++ revista-ladinia.csl | 78 ++- ...ture-1st-edition-fullnote-bibliography.csl | 5 +- ...lical-literature-fullnote-bibliography.csl | 3 +- ...of-the-finnish-anthropological-society.csl | 633 ++++++++++++++++++ ...-bern-institut-fur-sozialanthropologie.csl | 4 +- 11 files changed, 1193 insertions(+), 276 deletions(-) create mode 100644 journal-of-occupational-and-environmental-medicine.csl create mode 100644 suomen-antropologi-journal-of-the-finnish-anthropological-society.csl diff --git a/Gemfile.lock b/Gemfile.lock index 3dfefe1a56a..e7c7f102fa9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -65,10 +65,10 @@ GEM mini_portile2 (2.8.0) multipart-post (2.1.1) namae (1.1.1) - nokogiri (1.13.4) + nokogiri (1.13.6) mini_portile2 (~> 2.8.0) racc (~> 1.4) - nokogiri (1.13.4-x64-mingw32) + nokogiri (1.13.6-x64-mingw32) racc (~> 1.4) octokit (4.21.0) faraday (>= 0.9) diff --git a/dependent/avian-research.csl b/dependent/avian-research.csl index 3ca017cd9d3..0c4ca1bcf24 100644 --- a/dependent/avian-research.csl +++ b/dependent/avian-research.csl @@ -1,16 +1,15 @@ diff --git a/food-and-agriculture-organization-of-the-united-nations.csl b/food-and-agriculture-organization-of-the-united-nations.csl index a8d56d3c5f7..f017c7c9f94 100644 --- a/food-and-agriculture-organization-of-the-united-nations.csl +++ b/food-and-agriculture-organization-of-the-united-nations.csl @@ -6,7 +6,7 @@ FAO http://www.zotero.org/styles/food-and-agriculture-organization-of-the-united-nations - + Bin Liu lieubean@gmail.com @@ -15,12 +15,23 @@ Julian Plummer julian.plummer@gmail.com + https://www.linkedin.com/in/julian-plummer/ + + + Amy Knauff + + https://www.linkedin.com/in/amy-knauff-92655442/ + + + Stephanie Wright + + https://www.linkedin.com/in/piriet/ - This style is created to meet the citation and bibliographical requirements of FAOSTYLE, and has been tested with Zotero and Mendeley. Last update: March 2017. - 2021-06-07T23:29:39+02:00 + This style is created to meet the citation and bibliographical requirements of FAOSTYLE, and has been tested with Zotero and Mendeley. Last update: February 2022. + 2022-02-02T16:03:38+00:00 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License @@ -28,8 +39,8 @@ undated - also available at - Paper presented at + Presentation at + Adopted @@ -42,7 +53,7 @@ - + - + @@ -90,60 +101,90 @@ - - - - - + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - + + - - - - + - - - - - - - @@ -151,220 +192,195 @@ - + - - - + + - - - - - - - - - + + + + + + - - - - - - - - + + + + - - + + + - - - - - - - - - - - - - - - - - - + + - + + + + - + - - - - - - - + + - + - - - - - - - - - - - - + - + - + - + - - - - - - - - - - - - - - - - - - - + + + + + - - + + + - - - - - - - - - - - - - - - - - + + + + + + - - - - - - - + + + + + + + - + + + + + + + + + - + - - - + + + - - - - - - - - + + - - - - - + + + + + + - + - - + + + - + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + diff --git a/frontiers-in-ecology-and-the-environment.csl b/frontiers-in-ecology-and-the-environment.csl index b8a24308b08..ed858f24304 100644 --- a/frontiers-in-ecology-and-the-environment.csl +++ b/frontiers-in-ecology-and-the-environment.csl @@ -1,11 +1,11 @@ - diff --git a/glossa.csl b/glossa.csl index 60a489bbcc1..a5db572f78d 100644 --- a/glossa.csl +++ b/glossa.csl @@ -1,5 +1,5 @@ - diff --git a/revista-ladinia.csl b/revista-ladinia.csl index 56216c707d0..f747309d654 100644 --- a/revista-ladinia.csl +++ b/revista-ladinia.csl @@ -1,5 +1,5 @@ - diff --git a/universitat-bern-institut-fur-sozialanthropologie.csl b/universitat-bern-institut-fur-sozialanthropologie.csl index f1bf3ca6c37..ae3ec2afa17 100644 --- a/universitat-bern-institut-fur-sozialanthropologie.csl +++ b/universitat-bern-institut-fur-sozialanthropologie.csl @@ -12,6 +12,9 @@ Manuel Meister manuel@meister.id + + Denis Maier + Citation style for Social Anthropology of the University of Berne @@ -309,7 +312,6 @@ - From 22c2bb5ffda84e7bf0486dbc683801ee0f6295bf Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Wed, 1 Jun 2022 17:21:25 +0200 Subject: [PATCH 02/27] Reviewdoc: Comment on PRs (#8878) * Update tests.yml * Create 0025-reviewdog-reviews.md * Update 0025-reviewdog-reviews.md * Update 0025-reviewdog-reviews.md --- .github/workflows/tests.yml | 5 +++-- docs/adr/0025-reviewdog-reviews.md | 34 ++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 docs/adr/0025-reviewdog-reviews.md diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e44b50251e1..70cad8a62dd 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -37,9 +37,10 @@ jobs: - name: Run check style reporter uses: nikitasavinov/checkstyle-action@master with: - reporter: github-pr-check + reporter: github-pr-review + github_token: ${{ secrets.GITHUB_TOKEN }} checkstyle_config: 'config/checkstyle/checkstyle_reviewdog.xml' - checkstyle_version: '10.1' + checkstyle_version: '10.3' - name: Run checkstyle gradle run: ./gradlew checkstyleMain checkstyleTest checkstyleJmh - name: Run markdown-lint diff --git a/docs/adr/0025-reviewdog-reviews.md b/docs/adr/0025-reviewdog-reviews.md new file mode 100644 index 00000000000..d7c2ea9477b --- /dev/null +++ b/docs/adr/0025-reviewdog-reviews.md @@ -0,0 +1,34 @@ +--- +parent: Architectural Decisions +nav_order: 25 +--- +# Reviewdog findings are code reviews + +## Context and Problem Statement + +JabRef offers [guidelines to setup the local workspace](https://devdocs.jabref.org/getting-into-the-code/guidelines-for-setting-up-a-local-workspace). +There is also a section on [JabRef's code style](https://devdocs.jabref.org/getting-into-the-code/guidelines-for-setting-up-a-local-workspace#using-jabrefs-code-style). +There are pull requests by newcomers, which do not follow that style guide. + +How to quickly provide feedback to contributors that checkstyle was not matched? + +## Decision Drivers + +* Be friendly to newcomers +* Provide fast feedback to contributors +* Lower the workload of maintainers +* Keep maintainers focused on the "real" challanges of the code changes + +## Considered Options + + +* Use [Reviewdog's PullRequest review reporter](https://github.com/reviewdog/reviewdog#reporter-github-pullrequest-review-comment--reportergithub-pr-review) +* Use [Reviewdog's check reporter](https://github.com/reviewdog/reviewdog#reporter-github-checks--reportergithub-check) +* Use [comment-failure-action](https://github.com/quipper/comment-failure-action) + +## Decision Outcome + +Chosen option: "Use Reviewdog's PullRequest review reporter", because resolves force to provide fast feedback. +We do not want to use `comment-failure-action`, because [it might procude too much comments](https://github.com/quipper/comment-failure-action/issues/224). +We accept that newcomers might be annoyed if quick automatic feedback by a bot is given: +We value the time of our maintainers and want to keep them focused on the real challanges of the code changes. From 943489e2c5740e6fd1543d1f394640415aaa3b2e Mon Sep 17 00:00:00 2001 From: Shangyu Li Date: Thu, 2 Jun 2022 02:19:57 +0930 Subject: [PATCH 03/27] Add an importer for Citavi backup files (#8848) * First draft for citavi Add generated citavi xsd schema * add 'CitaviXmlImporter.java' first draft, based on endnotexmlimporter. * Add '.ctv6bak' and '.ctv5bak' file type in the file type list. * Modify the citavi importer, draft of importDatabase() * Modify the citavi importer, draft of isRecognizedFormat() * fix spell error for citavi * update getReaderFromZip() * XSD file for Citavi updated and isRecognizedFormat method updated * update xsd * update xsd * update CitaviXmlImporter.java * update CitaviXmlImporter.java. Add a function to check and delete the utf-8 BOM bytes in the XML file * update xsd file and parseData function in citaviimporter * Add CitaviXmlImporterTestFiles.java * fix codestyle * CitaviXmlImporterTestFiles.java update the test functions * Add test example * XSD file updated. Importing functions in CitaviXmlImporter updated. * Add clean up for temp file * Add test files * Importing authors' name functionality fixed * Some other fields added * fix the author and editor format * Small bug fixed * fixed the null pointer exception of publishers ,keywords,editors and authors * add the test examples. * update CHANGELOG.md * update CHANGELOG.md * Remove unused import format preferences Fix some resouces leaks Use AuthorListParser * checkstyle * Store knownPersons in a HashMap, for efficient lookup Store referenceId and identified persons also * checkstyle * remove blank lines * update the logic to parse Keywords and Publishers. * Update src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java Co-authored-by: Christoph * Update src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java Co-authored-by: Christoph * update CHANGELOG.md * delete the optional warp of getPages() * delete the JavaDoc lines * add an empty line between varable declaration and method. Co-authored-by: Siedlerchr Co-authored-by: Lefei Mei --- CHANGELOG.md | 1 + build.gradle | 12 +- .../logic/importer/ImportFormatReader.java | 2 + .../fileformat/CitaviXmlImporter.java | 436 ++++++++++ .../jabref/logic/util/StandardFileType.java | 5 +- src/main/resources/xjc/citavi/citavi.xsd | 329 +++++++ .../jabref/logic/importer/ImporterTest.java | 4 +- .../CitaviXmlImporterTestFiles.java | 55 ++ .../fileformat/CitaviXmlImporterTest1.bib | 441 ++++++++++ .../fileformat/CitaviXmlImporterTest1.ctv6bak | Bin 0 -> 134986 bytes .../fileformat/CitaviXmlImporterTest2.bib | 449 ++++++++++ .../fileformat/CitaviXmlImporterTest2.ctv6bak | Bin 0 -> 138066 bytes .../fileformat/CitaviXmlImporterTest3.bib | 804 ++++++++++++++++++ .../fileformat/CitaviXmlImporterTest3.ctv6bak | Bin 0 -> 159151 bytes .../fileformat/CitaviXmlImporterTest4.bib | 6 + .../fileformat/CitaviXmlImporterTest4.ctv6bak | Bin 0 -> 33681 bytes 16 files changed, 2541 insertions(+), 3 deletions(-) create mode 100644 src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java create mode 100644 src/main/resources/xjc/citavi/citavi.xsd create mode 100644 src/test/java/org/jabref/logic/importer/fileformat/CitaviXmlImporterTestFiles.java create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.ctv6bak create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.ctv6bak create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.ctv6bak create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.bib create mode 100644 src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.ctv6bak diff --git a/CHANGELOG.md b/CHANGELOG.md index ad04d7fde61..de3230689b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We added a fetcher for [Biodiversity Heritage Library](https://www.biodiversitylibrary.org/). [8539](https://github.com/JabRef/jabref/issues/8539) - We added support for multiple messages in the snackbar. [#7340](https://github.com/JabRef/jabref/issues/7340) - JabRef now writes log files. Linux: `$home/.cache/jabref/logs/version`, Windows: `%APPDATA%\..\Local\harawata\jabref\version\logs`, Mac: `Users/.../Library/Logs/jabref/version` +- We added an importer for Citavi backup files, support ".ctv5bak" and ".ctv6bak" file formats. [#8322](https://github.com/JabRef/jabref/issues/8322) ### Changed diff --git a/build.gradle b/build.gradle index 5c617dc0d28..a40a29da337 100644 --- a/build.gradle +++ b/build.gradle @@ -265,7 +265,8 @@ task generateSource(dependsOn: ["generateBstGrammarSource", "generateMedlineSource", "generateBibtexmlSource", "generateEndnoteSource", - "generateModsSource"]) { + "generateModsSource", + "generateCitaviSource"]) { group = 'JabRef' description 'Generates all necessary (Java) source files.' } @@ -319,6 +320,15 @@ task generateEndnoteSource(type: XjcTask) { javaPackage = "org.jabref.logic.importer.fileformat.endnote" } +task generateCitaviSource(type: XjcTask) { + group = 'JabRef' + description = "Generates java files for the citavi importer." + + schemaFile = "src/main/resources/xjc/citavi/citavi.xsd" + outputDirectory = "src-gen/main/java/" + javaPackage = "org.jabref.logic.importer.fileformat.citavi" +} + task generateModsSource(type: XjcTask) { group = 'JabRef' description = "Generates java files for the mods importer." diff --git a/src/main/java/org/jabref/logic/importer/ImportFormatReader.java b/src/main/java/org/jabref/logic/importer/ImportFormatReader.java index 66543bd6ef3..617cd5c0dba 100644 --- a/src/main/java/org/jabref/logic/importer/ImportFormatReader.java +++ b/src/main/java/org/jabref/logic/importer/ImportFormatReader.java @@ -13,6 +13,7 @@ import org.jabref.logic.importer.fileformat.BiblioscapeImporter; import org.jabref.logic.importer.fileformat.BibtexImporter; import org.jabref.logic.importer.fileformat.CffImporter; +import org.jabref.logic.importer.fileformat.CitaviXmlImporter; import org.jabref.logic.importer.fileformat.CopacImporter; import org.jabref.logic.importer.fileformat.EndnoteImporter; import org.jabref.logic.importer.fileformat.EndnoteXmlImporter; @@ -84,6 +85,7 @@ public void resetImportFormats(ImporterPreferences importerPreferences, GeneralP formats.add(new CffImporter()); formats.add(new BiblioscapeImporter()); formats.add(new BibtexImporter(importFormatPreferences, fileMonitor)); + formats.add(new CitaviXmlImporter()); // Get custom import formats formats.addAll(importFormatPreferences.getCustomImportList()); diff --git a/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java b/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java new file mode 100644 index 00000000000..3c009f9c269 --- /dev/null +++ b/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java @@ -0,0 +1,436 @@ +package org.jabref.logic.importer.fileformat; + +import java.io.BufferedInputStream; +import java.io.BufferedReader; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.PushbackInputStream; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardCopyOption; +import java.nio.file.StandardOpenOption; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import java.util.stream.Collectors; +import java.util.zip.ZipEntry; +import java.util.zip.ZipInputStream; + +import javax.xml.stream.XMLInputFactory; +import javax.xml.stream.XMLStreamException; +import javax.xml.stream.XMLStreamReader; + +import org.jabref.logic.importer.Importer; +import org.jabref.logic.importer.Parser; +import org.jabref.logic.importer.ParserResult; +import org.jabref.logic.importer.fileformat.citavi.CitaviExchangeData; +import org.jabref.logic.importer.fileformat.citavi.CitaviExchangeData.Persons.Person; +import org.jabref.logic.util.StandardFileType; +import org.jabref.model.entry.Author; +import org.jabref.model.entry.AuthorList; +import org.jabref.model.entry.BibEntry; +import org.jabref.model.entry.Keyword; +import org.jabref.model.entry.KeywordList; +import org.jabref.model.entry.field.StandardField; +import org.jabref.model.entry.types.EntryType; +import org.jabref.model.entry.types.IEEETranEntryType; +import org.jabref.model.entry.types.StandardEntryType; +import org.jabref.model.strings.StringUtil; + +import jakarta.xml.bind.JAXBContext; +import jakarta.xml.bind.JAXBException; +import jakarta.xml.bind.Unmarshaller; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class CitaviXmlImporter extends Importer implements Parser { + + private static final Logger LOGGER = LoggerFactory.getLogger(CitaviXmlImporter.class); + private static final byte UUID_LENGTH = 36; + private static final byte UUID_SEMICOLON_OFFSET_INDEX = 37; + + private final Map knownPersons = new HashMap<>(); + private final Map knownKeywords = new HashMap<>(); + private final Map knownPublishers = new HashMap<>(); + + private Map refIdWithAuthors = new HashMap<>(); + private Map refIdWithEditors = new HashMap<>(); + private Map refIdWithKeywords = new HashMap<>(); + private Map refIdWithPublishers = new HashMap<>(); + + private CitaviExchangeData.Persons persons; + private CitaviExchangeData.Keywords keywords; + private CitaviExchangeData.Publishers publishers; + + private CitaviExchangeData.ReferenceAuthors refAuthors; + private CitaviExchangeData.ReferenceEditors refEditors; + private CitaviExchangeData.ReferenceKeywords refKeywords; + private CitaviExchangeData.ReferencePublishers refPublishers; + + private Unmarshaller unmarshaller; + + @Override + public String getName() { + return "Citavi XML"; + } + + @Override + public StandardFileType getFileType() { + return StandardFileType.CITAVI; + } + + @Override + public String getId() { + return "citavi"; + } + + @Override + public String getDescription() { + return "Importer for the Citavi XML format."; + } + + @Override + public boolean isRecognizedFormat(BufferedReader reader) throws IOException { + Objects.requireNonNull(reader); + return false; + } + + @Override + public boolean isRecognizedFormat(Path filePath) throws IOException { + try (BufferedReader reader = getReaderFromZip(filePath)) { + String str; + int i = 0; + while (((str = reader.readLine()) != null) && (i < 50)) { + if (str.toLowerCase(Locale.ROOT).contains("citaviexchangedata")) { + return true; + } + + i++; + } + } + return false; + } + + @Override + public ParserResult importDatabase(Path filePath) throws IOException { + + try (BufferedReader reader = getReaderFromZip(filePath)) { + Object unmarshalledObject = unmarshallRoot(reader); + + if (unmarshalledObject instanceof CitaviExchangeData) { + // Check whether we have an article set, an article, a book article or a book article set + CitaviExchangeData data = (CitaviExchangeData) unmarshalledObject; + List bibEntries = parseDataList(data); + + return new ParserResult(bibEntries); + } else { + return ParserResult.fromErrorMessage("File does not start with xml tag."); + } + } catch (JAXBException | XMLStreamException e) { + LOGGER.debug("could not parse document", e); + return ParserResult.fromError(e); + } + } + + private List parseDataList(CitaviExchangeData data) { + List bibEntries = new ArrayList<>(); + + persons = data.getPersons(); + keywords = data.getKeywords(); + publishers = data.getPublishers(); + + refAuthors = data.getReferenceAuthors(); + refEditors = data.getReferenceEditors(); + refKeywords = data.getReferenceKeywords(); + refPublishers = data.getReferencePublishers(); + + if (refAuthors != null) { + this.refIdWithAuthors = buildPersonList(refAuthors.getOnetoN()); + } + if (refEditors != null) { + this.refIdWithEditors = buildPersonList(refEditors.getOnetoN()); + } + if (refKeywords != null) { + this.refIdWithKeywords = buildKeywordList(refKeywords.getOnetoN()); + } + if (refPublishers != null) { + this.refIdWithPublishers = buildPublisherList(refPublishers.getOnetoN()); + } + + bibEntries = data + .getReferences().getReference() + .stream() + .map(this::parseData) + .collect(Collectors.toList()); + + return bibEntries; + } + + private BibEntry parseData(CitaviExchangeData.References.Reference data) { + BibEntry entry = new BibEntry(); + + entry.setType(getType(data)); + Optional.ofNullable(data.getTitle()) + .ifPresent(value -> entry.setField(StandardField.TITLE, clean(value))); + Optional.ofNullable(data.getAbstract()) + .ifPresent(value -> entry.setField(StandardField.ABSTRACT, clean(value))); + Optional.ofNullable(data.getYear()) + .ifPresent(value -> entry.setField(StandardField.YEAR, clean(value))); + Optional.ofNullable(data.getDoi()) + .ifPresent(value -> entry.setField(StandardField.DOI, clean(value))); + Optional.ofNullable(data.getIsbn()) + .ifPresent(value -> entry.setField(StandardField.ISBN, clean(value))); + entry.setField(StandardField.PAGES, clean(getPages(data))); + Optional.ofNullable(data.getVolume()) + .ifPresent(value -> entry.setField(StandardField.VOLUME, clean(value))); + Optional.ofNullable(getAuthorName(data)) + .ifPresent(value -> entry.setField(StandardField.AUTHOR, value)); + Optional.ofNullable(getEditorName(data)) + .ifPresent(value -> entry.setField(StandardField.EDITOR, value)); + Optional.ofNullable(getKeywords(data)) + .ifPresent(value -> entry.setField(StandardField.KEYWORDS, value)); + Optional.ofNullable(getPublisher(data)) + .ifPresent(value -> entry.setField(StandardField.PUBLISHER, value)); + + return entry; + } + + private EntryType getType(CitaviExchangeData.References.Reference data) { + return Optional.ofNullable(data.getReferenceType()) + .map(CitaviXmlImporter::convertRefNameToType) + .orElse(StandardEntryType.Article); + } + + private static EntryType convertRefNameToType(String refName) { + return switch (refName.toLowerCase().trim()) { + case "artwork", "generic", "musicalbum", "audioorvideodocument", "movie" -> StandardEntryType.Misc; + case "electronic article" -> IEEETranEntryType.Electronic; + case "book section" -> StandardEntryType.InBook; + case "book", "bookedited", "audiobook" -> StandardEntryType.Book; + case "report" -> StandardEntryType.Report; + // case "journal article" -> StandardEntryType.Article; + default -> StandardEntryType.Article; + }; + } + + private String getPages(CitaviExchangeData.References.Reference data) { + String tmpStr = ""; + if ((data.getPageCount() != null) && (data.getPageRange() == null)) { + tmpStr = data.getPageCount(); + } else if ((data.getPageCount() == null) && (data.getPageRange() != null)) { + tmpStr = data.getPageRange(); + } else if ((data.getPageCount() == null) && (data.getPageRange() == null)) { + return tmpStr; + } + int count = 0; + String pages = ""; + for (int i = tmpStr.length() - 1; i >= 0; i--) { + if (count == 2) { + pages = tmpStr.substring(i + 2, (tmpStr.length() - 1 - 5) + 1); + break; + } else { + if (tmpStr.charAt(i) == '>') { + count++; + } + } + } + return pages; + } + + private String getAuthorName(CitaviExchangeData.References.Reference data) { + if (refAuthors == null) { + return null; + } + + return this.refIdWithAuthors.get(data.getId()); + } + + private Map buildPersonList(List authorsOrEditors) { + Map refToPerson = new HashMap<>(); + + for (String idStringsWithSemicolon : authorsOrEditors) { + String refId = idStringsWithSemicolon.substring(0, UUID_LENGTH); + String rest = idStringsWithSemicolon.substring(UUID_SEMICOLON_OFFSET_INDEX, idStringsWithSemicolon.length()); + + String[] personIds = rest.split(";"); + + List jabrefAuthors = new ArrayList<>(); + + for (String personId : personIds) { + // Store persons we already encountered, we can have the same author multiple times in the whole database + knownPersons.computeIfAbsent(personId, k -> { + Optional person = persons.getPerson().stream().filter(p -> p.getId().equals(k)).findFirst(); + return person.map(p -> new Author(p.getFirstName(), "", "", p.getLastName(), "")).orElse(null); + }); + jabrefAuthors.add(knownPersons.get(personId)); + } + String stringifiedAuthors = AuthorList.of(jabrefAuthors).getAsLastFirstNamesWithAnd(false); + refToPerson.put(refId, stringifiedAuthors); + } + return refToPerson; + } + + private Map buildKeywordList(List keywordsList) { + Map refToKeywords = new HashMap<>(); + + for (String idStringsWithSemicolon : keywordsList) { + String refId = idStringsWithSemicolon.substring(0, UUID_LENGTH); + String rest = idStringsWithSemicolon.substring(UUID_SEMICOLON_OFFSET_INDEX, idStringsWithSemicolon.length()); + + String[] keywordIds = rest.split(";"); + + List jabrefKeywords = new ArrayList<>(); + + for (String keywordId : keywordIds) { + // store keywords already encountered + knownKeywords.computeIfAbsent(keywordId, k -> { + Optional keyword = keywords.getKeyword().stream().filter(p -> p.getId().equals(k)).findFirst(); + return keyword.map(kword -> new Keyword(kword.getName())).orElse(null); + }); + jabrefKeywords.add(knownKeywords.get(keywordId)); + } + + KeywordList list = new KeywordList(List.copyOf(jabrefKeywords)); + String stringifiedKeywords = list.toString(); + refToKeywords.put(refId, stringifiedKeywords); + } + return refToKeywords; + } + + private Map buildPublisherList(List publishersList) { + Map refToPublishers = new HashMap<>(); + + for (String idStringsWithSemicolon : publishersList) { + String refId = idStringsWithSemicolon.substring(0, UUID_LENGTH); + String rest = idStringsWithSemicolon.substring(UUID_SEMICOLON_OFFSET_INDEX, idStringsWithSemicolon.length()); + + String[] publisherIds = rest.split(";"); + + List jabrefPublishers = new ArrayList<>(); + + for (String pubId : publisherIds) { + // store publishers already encountered + knownPublishers.computeIfAbsent(pubId, k -> { + Optional publisher = publishers.getPublisher().stream().filter(p -> p.getId().equals(k)).findFirst(); + return publisher.map(p -> new String(p.getName())).orElse(null); + }); + jabrefPublishers.add(knownPublishers.get(pubId)); + } + + String stringifiedKeywords = String.join(",", jabrefPublishers); + refToPublishers.put(refId, stringifiedKeywords); + } + return refToPublishers; + } + + private String getEditorName(CitaviExchangeData.References.Reference data) { + if (refEditors == null) { + return null; + } + return this.refIdWithEditors.get(data.getId()); + } + + private String getKeywords(CitaviExchangeData.References.Reference data) { + if (refKeywords == null) { + return null; + } + return this.refIdWithKeywords.get(data.getId()); + } + + private String getPublisher(CitaviExchangeData.References.Reference data) { + if (refPublishers == null) { + return null; + } + return this.refIdWithPublishers.get(data.getId()); + } + + private void initUnmarshaller() throws JAXBException { + if (unmarshaller == null) { + // Lazy init because this is expensive + JAXBContext context = JAXBContext.newInstance("org.jabref.logic.importer.fileformat.citavi"); + unmarshaller = context.createUnmarshaller(); + } + } + + private Object unmarshallRoot(BufferedReader reader) throws XMLStreamException, JAXBException { + initUnmarshaller(); + + XMLInputFactory xmlInputFactory = XMLInputFactory.newFactory(); + XMLStreamReader xmlStreamReader = xmlInputFactory.createXMLStreamReader(reader); + + // Go to the root element + while (!xmlStreamReader.isStartElement()) { + xmlStreamReader.next(); + } + + return unmarshaller.unmarshal(xmlStreamReader); + } + + @Override + public ParserResult importDatabase(BufferedReader reader) throws IOException { + Objects.requireNonNull(reader); + throw new UnsupportedOperationException("CitaviXmlImporter does not support importDatabase(BufferedReader reader)." + + "Instead use importDatabase(Path filePath, Charset defaultEncoding)."); + } + + @Override + public List parseEntries(InputStream inputStream) { + try { + return importDatabase( + new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8))).getDatabase().getEntries(); + } catch (IOException e) { + LOGGER.error(e.getLocalizedMessage(), e); + } + return Collections.emptyList(); + } + + private BufferedReader getReaderFromZip(Path filePath) throws IOException { + ZipInputStream zis = new ZipInputStream(new FileInputStream(filePath.toFile())); + ZipEntry zipEntry = zis.getNextEntry(); + + Path newFile = Files.createTempFile("citavicontent", ".xml"); + + while (zipEntry != null) { + Files.copy(zis, newFile, StandardCopyOption.REPLACE_EXISTING); + + zipEntry = zis.getNextEntry(); + } + + zis.closeEntry(); + + InputStream stream = Files.newInputStream(newFile, StandardOpenOption.READ); + + // check and delete the utf-8 BOM bytes + InputStream newStream = checkForUtf8BOMAndDiscardIfAny(stream); + + // clean up the temp file + Files.delete(newFile); + + return new BufferedReader(new InputStreamReader(newStream, StandardCharsets.UTF_8)); + } + + private static InputStream checkForUtf8BOMAndDiscardIfAny(InputStream inputStream) throws IOException { + PushbackInputStream pushbackInputStream = new PushbackInputStream(new BufferedInputStream(inputStream), 3); + byte[] bom = new byte[3]; + if (pushbackInputStream.read(bom) != -1) { + if (!((bom[0] == (byte) 0xEF) && (bom[1] == (byte) 0xBB) && (bom[2] == (byte) 0xBF))) { + pushbackInputStream.unread(bom); + } + } + return pushbackInputStream; + } + + private String clean(String input) { + return StringUtil.unifyLineBreaks(input, " ") + .trim() + .replaceAll(" +", " "); + } +} diff --git a/src/main/java/org/jabref/logic/util/StandardFileType.java b/src/main/java/org/jabref/logic/util/StandardFileType.java index ffdb7e63e93..aadae024051 100644 --- a/src/main/java/org/jabref/logic/util/StandardFileType.java +++ b/src/main/java/org/jabref/logic/util/StandardFileType.java @@ -44,7 +44,10 @@ public enum StandardFileType implements FileType { YAML("YAML Markup", "yaml"), CFF("CFF", "cff"), ANY_FILE("Any", "*"), - CER("SSL Certificate", "cer"); + CER("SSL Certificate", "cer"), + CITAVI("Citavi", "ctv6bak", "ctv5bak"); + + private final List extensions; private final String name; diff --git a/src/main/resources/xjc/citavi/citavi.xsd b/src/main/resources/xjc/citavi/citavi.xsd new file mode 100644 index 00000000000..4b782452dff --- /dev/null +++ b/src/main/resources/xjc/citavi/citavi.xsd @@ -0,0 +1,329 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/java/org/jabref/logic/importer/ImporterTest.java b/src/test/java/org/jabref/logic/importer/ImporterTest.java index c3db3e1906d..5409b87fe1b 100644 --- a/src/test/java/org/jabref/logic/importer/ImporterTest.java +++ b/src/test/java/org/jabref/logic/importer/ImporterTest.java @@ -7,6 +7,7 @@ import org.jabref.logic.importer.fileformat.BibTeXMLImporter; import org.jabref.logic.importer.fileformat.BiblioscapeImporter; import org.jabref.logic.importer.fileformat.BibtexImporter; +import org.jabref.logic.importer.fileformat.CitaviXmlImporter; import org.jabref.logic.importer.fileformat.CopacImporter; import org.jabref.logic.importer.fileformat.EndnoteImporter; import org.jabref.logic.importer.fileformat.InspecImporter; @@ -124,7 +125,8 @@ public static Stream instancesToTest() { new PdfXmpImporter(xmpPreferences), new RepecNepImporter(importFormatPreferences), new RisImporter(), - new SilverPlatterImporter() + new SilverPlatterImporter(), + new CitaviXmlImporter() ); // @formatter:on } diff --git a/src/test/java/org/jabref/logic/importer/fileformat/CitaviXmlImporterTestFiles.java b/src/test/java/org/jabref/logic/importer/fileformat/CitaviXmlImporterTestFiles.java new file mode 100644 index 00000000000..29afe7d38b2 --- /dev/null +++ b/src/test/java/org/jabref/logic/importer/fileformat/CitaviXmlImporterTestFiles.java @@ -0,0 +1,55 @@ +package org.jabref.logic.importer.fileformat; + +import java.io.IOException; +import java.util.function.Predicate; +import java.util.stream.Stream; + +import org.jabref.logic.importer.ImportFormatPreferences; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; + +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +public class CitaviXmlImporterTestFiles { + + private static final String FILE_ENDING = ".ctv6bak"; + + private ImportFormatPreferences preferences; + + private static Stream fileNames() throws IOException { + Predicate fileName = name -> name.startsWith("CitaviXmlImporterTest") && name.endsWith(FILE_ENDING); + return ImporterTestEngine.getTestFiles(fileName).stream(); + } + + private static Stream invalidFileNames() throws IOException { + Predicate fileName = name -> !name.startsWith("CitaviXmlImporterTest"); + return ImporterTestEngine.getTestFiles(fileName).stream(); + } + + @BeforeEach + void setUp() { + preferences = mock(ImportFormatPreferences.class); + when(preferences.getKeywordSeparator()).thenReturn(';'); + } + + @ParameterizedTest + @MethodSource("fileNames") + void testIsRecognizedFormat(String fileName) throws IOException { + ImporterTestEngine.testIsRecognizedFormat(new CitaviXmlImporter(), fileName); + } + + @ParameterizedTest + @MethodSource("invalidFileNames") + void testIsNotRecognizedFormat(String fileName) throws IOException { + ImporterTestEngine.testIsNotRecognizedFormat(new CitaviXmlImporter(), fileName); + } + + @ParameterizedTest + @MethodSource("fileNames") + void testImportEntries(String fileName) throws Exception { + ImporterTestEngine.testImportEntries(new CitaviXmlImporter(), fileName, FILE_ENDING); + } +} diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib new file mode 100644 index 00000000000..e0c2496678f --- /dev/null +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib @@ -0,0 +1,441 @@ +@Article{, + author = {Agbaraji, Emmanuel and Ochulor, Deborah and Ezeh, Gloria}, + title = {Food and drug counterfeiting in the developing nations}, + pages = {24-31}, + volume = {3}, + year = {2012}, +} + +@Book{, + title = {The SAGE encyclopedia of food issues}, + editor = {Albala, Ken}, + publisher = {SAGE Reference}, + year = {2015}, +} + +@Article{, + author = {Barlow, Susan and Boobis, Alan and Bridges, Jim and Cockburn, Andrew and Dekant, Wolfgang and Hepburn, Paul and Houben, Geert and König, Jürgen and Nauta, Maarten and Schuermans, Jeroen and Bánáti, Diána}, + title = {The role of hazard- and risk-based approaches in ensuring food safety}, + pages = {176-188}, + volume = {46}, + abstract = {Background: Food legislation in the European Union and elsewhere includes both hazard- and risk-based approaches for ensuring safety. In hazard-based approaches, simply the presence of a potentially harmful agent at a detectable level in food is used as a basis for legislation and/or risk management action. Riskbased approaches allow consideration of exposure in assessing whether there may be unacceptable risks to health. Scope and approach: The advantages and disadvantages of hazard- and risk-based approaches for ensuring the safety of food chemicals, allergens, ingredients and microorganisms were explored at an ILSI Europe workshop. Key findings and conclusions: It was concluded that both types of approach have their place, depending on the context. However, problems can arise when both types of approach are used in regulation by separate agencies that address different aspects of the same agent/substance present in food. This separation of decision-making can result in hazard-based restrictions on marketing and use, whereas risk-based assessments for those exposed show there is reasonable certainty no harm will result. This in turn can lead to contradictory, confusing and ultimately unnecessary actions. Use of hazard-based approaches for foods also means that comparisons with benefits for nutrition and food security cannot be undertaken. This has the potential to lead to bias in the overall conclusions of regulators and risk managers, who may not have been presented with the benefits of particular foods. The value of riskbased approaches is becoming increasingly recognised.}, + year = {2015}, +} + +@Misc{, + author = {Bishop, Mac and Werschkul, Ben and Hodge, Channon and Rosado, Pedro and Stokes, Elaisha and Desai, Lisa}, + title = {Truth in seafood labeling}, + abstract = {A senior scientist at Oceana discusses the group’s new study that found that about one-third of fish samples in 12 metropolitan areas were mislabeled.}, + publisher = {The New York Times}, + year = {2013-02-21}, +} + +@Book{, + author = {Braden, Darrell}, + title = {Food fraud and adulterated ingredients}, + pages = {113}, + publisher = {Nova Science Publishers}, + keywords = {Fishery products, Food adulteration and inspection, Food contamination, Government policy, Law and legislation, Marketing, Prevention}, + year = {2014}, +} + +@Misc{, + author = {Burton, Tim}, + title = {Sweeney Todd}, + abstract = {Reinventing himself as Sweeney Todd, a man unjustly sent to prison returns to exact revenge on those who ruined his life, especially the evil Judge Turpin who sent the man to prison. Not only does he seek revenge for the cruel punishment he suffered in prison, but also for what happened to his wife and daughter. When he returns to his home town, he reopens his barber shop, where Mr. Todd becomes the Demon of Fleet Street. Mrs. Lovett is Sweeney's amorous accomplice who creates diabolical meat pies out of the remains of Mr. Todd's victims.}, + keywords = {Todd, Sweeney (legendary character)}, + publisher = {Warner Home Video}, + year = {2013}, +} + +@Article{, + author = {Che Man, Yaakob and Mustafa, Shuhaimi and Khalid, Farihah and Azmi, Aida and Sazili, Awis and Rahim, Raha}, + title = {Method for identifying a pork content in a food}, + year = {2010}, +} + +@Article{, + author = {Dai, Cong and Jiang, Min}, + title = {Fake meat scandals add to Chinese food fears}, + pages = {f3385}, + volume = {346}, + keywords = {China, Food safety, Fraud, Humans, Meat}, + year = {2013}, +} + +@Article{, + author = {Manuell, Roy}, + title = {Fighting food fraud in 2017}, + abstract = {In anticipation of Food Fraud 2017, New Food speaks exclusively to Eoghan Daly of Crowe Clark Whitehill about tackling food fraud in the 21st Century.}, +} + +@Book{, + title = {It’s a jungle out there - the strange animals of economic organization in agri-food value chains}, + editor = {Dries, Liesbeth and Karantininis, Konstantinos and Martino, Gaetano and Codron, Jean and Pascucci, Stefano}, + publisher = {Wageningen Academic Publishers}, + year = {[In press]}, +} + +@Article{, + title = {Food Fraud Network activity report 2015}, + pages = {3}, +} + +@Article{, + title = {EUR 230 million worth of fake food and beverages seized in global OPSON operation targeting food fraud}, + abstract = {Operation OPSON VI, the joint Europol-INTERPOL operation targeting counterfeit and substandard food and drink, as well as the organised crime networks behind this illicit trade, has resulted in the seizure of 9 800 tonnes, over 26.4 million litres, and 13 million units/items worth an estimated EUR 230 million of potentially harmful food and beverages ranging from every day products such as alcohol, mineral water, seasoning cubes, seafood and olive oil, to luxury goods such as caviar.}, +} + +@Book{, + author = {Evershed, Richard and Temple, Nicola}, + title = {Sorting the beef from the bull}, + publisher = {Audible Studios for Bloomsbury}, + keywords = {Screening}, + year = {2016}, +} + +@Article{, + author = {Everstine, Karen}, + title = {Economically motivated adulteration}, + abstract = {The food supply system is vulnerable to various types of contamination and adulteration. This research focuses on economically motivated adulteration (often called "food fraud"). Economically motivated adulteration (EMA) refers to the knowingly selling a food product that is not up to standards in order to gain economic advantage. There is a long history of EMA in a wide variety of food products. The food safety paradigm is not sufficient for food defense, or for prevention and deterrence of EMA. The goal of this research was to develop methods to improve capabilities for preventing and detecting EMA incidents. First, the food ingredient monographs in the United States Pharmacopeial (USP) Convention Food Chemicals Codex (FCC) were evaluated for susceptibility to EMA. These evaluations can be used to help target the most susceptible ingredients for monograph modernization within USP, and for inspection and laboratory testing resources by regulatory agencies. Second, economic and production data for dairy products in China leading up to the melamine adulteration event was analyzed to evaluate the utility of this data for alerting to the potential for EMA in a food commodity. This analysis shed insight on variables that may be useful for tracking the production of global commodities for early indications of EMA. Finally, a surveillance technique for trade data was evaluated using melamine adulteration of wheat gluten as a case study. This biosurveillance-like methodology can be applied to food import data to identify supply chain shifts that could indicate changes in the market for food products and a heightened risk of EMA. Regulatory agencies have an enormous burden of responsibility for regulating the food supply for both domestically-produced and imported food products. Given the constrained resources of these agencies, they need improved methods for targeting those resources towards the riskiest food products. These preliminary efforts to shed light on EMA vulnerabilities and potential mitigation efforts can contribute to efforts in that area. An integrated, systems-based approach to food protection that encompasses both food safety and food defense is imperative for ensuring the integrity of our food supply.}, + keywords = {Adulteration, Food defense, Food safety, Fraud}, +} + +@Book{, + title = {International trade and food security}, + editor = {Ewing-Chow, Michael and Slade, Melanie}, + publisher = {Edward Elgar Publishing}, + keywords = {Food security, International trade}, + year = {2016}, +} + +@Article{, + title = {Vulnerability assessments of food systems}, + pages = {30}, +} + +@Article{, + title = {Mitigation strategies to protect food against intentional adulteration. Final rule}, + pages = {34165-223}, + volume = {81}, + abstract = {The Food and Drug Administration (FDA or we) is issuing this final rule to require domestic and foreign food facilities that are required to register under the Federal Food, Drug, and Cosmetic Act (the FD&C Act) to address hazards that may be introduced with the intention to cause wide scale public health harm. These food facilities are required to conduct a vulnerability assessment to identify significant vulnerabilities and actionable process steps and implement mitigation strategies to significantly minimize or prevent significant vulnerabilities identified at actionable process steps in a food operation. FDA is issuing these requirements as part of our implementation of the FDA Food Safety Modernization Act (FSMA).}, + keywords = {Food industry legislation and jurisprudence, Food safety, Humans, Law and legislation, Legislation, Terrorism prevention and control, United States}, + year = {2016}, +} + +@Article{, + author = {Garver, Krista}, + title = {What is blockchain and how will it impact the food industry?}, + abstract = {The food industry has been abuzz lately about the potential of blockchain to solve the problem of end-to-end traceability in the supply chain.}, +} + +@Article{, + title = {GFSI position on mitigating the public health risk of food fraud}, + pages = {4}, +} + +@Article{, + author = {Hong, Eunyoung and Lee, Sang and Jeong, Jae and Park, Jung and Kim, Byung and Kwon, Kisung and Chun, Hyang}, + title = {Modern analytical methods for the detection of food fraud and adulteration by food category}, + abstract = {This review provides current information on the analytical methods used to identify food adulteration in the six most adulterated food categories: animal origin and seafood, oils and fats, beverages, spices and sweet foods (e.g. honey), grain-based food, and others (organic food and dietary supplements). The analytical techniques, both conventional and emerging, used to identify adulteration in these six food categories involve sensory, physicochemical, DNA-based, chromatographic, and spectroscopic methods, and have been combined with chemometrics, making these techniques more convenient and effective for the analysis of a broad variety of food products. Despite recent advances, a need remains for suitably sensitive and widely applicable methodologies that will encompass all the various aspects of food adulteration.}, + year = {[In press]}, +} + +@Article{, + title = {Walmart, IBM and Tsinghua University explore the use of blockchain to help bring safer food to dinner tables across China}, + abstract = {As Walmart opened its new Walmart Food Safety Collaboration Center in Beijing today, IBM, Walmart and Tsinghua University announced a collaboration to improve the way food is tracked, transported and sold to consumers across China. By harnessing the power of blockchain technology designed to generate transparency and efficiency in supply chain record-keeping, this work aims to help enhance the safety of food on the tables of Chinese consumers.}, + keywords = {Asia, Blockchain, China, Linux Foundation Hyperledger Project, Safer food, Tsinghua University, Walmart Food Safety Collaboration Center}, +} + +@Article{, + title = {Food safety management systems – Requirements for any organization in the food chain}, + volume = {67.020}, + publisher = {International Organization for Standardization}, +} + +@Book{, + title = {Food safety in China}, + editor = {Jen, Joseph and Chen, Junshi}, + pages = {696}, + publisher = {John Wiley & Sons, Inc}, + keywords = {Food adulteration and inspection, Food contamination}, + year = {2017}, +} + +@Article{, + author = {Kelepouris, Thomas and Pramatari, Katerina and Doukidis, Georgios}, + title = {RFID-enabled traceability in the food supply chain}, + pages = {183-200}, + volume = {107}, + year = {2007}, +} + +@Article{, + author = {Lawrence, Felicity}, + title = {Horsemeat scandal}, + abstract = {With the Europewide scandal over the contamination of meat products, from beefburgers to lasagne, showing no sign of abating, study the issue in depth and learn all you need to know about how it came to this with our essential guide}, + keywords = {Europe, Food and drink industry, Food safety, Horsemeat scandal, Ireland, Meat, Supermarkets, The meat industry, United Kingdom}, +} + +@Article{, + title = {Food and supply chain integrity}, + editor = {Manning, Louise}, + volume = {119}, + year = {2016}, +} + +@Article{, + author = {Manning, Louise and Soon, Jan}, + title = {Food safety, food fraud, and food defense}, + pages = {R823-R834}, + volume = {81}, + abstract = {Intentional food crime is plural in nature in terms of the types of crime and the differing levels of financial gain. Successful models of food crime are dependent on how well the crime has been executed and at what point, or even if, detection actually occurs. The aim of this paper is to undertake a literature review and critique the often contradictory definitions that can be found in the literature in order to compare and contrast existing food crime risk assessment tools and their application. Food safety, food defense, and food fraud risk assessments consider different criteria in order to determine the degree of situational risk for each criteria and the measures that need to be implemented to mitigate that risk. Further research is required to support the development of global countermeasures, that are of value in reducing overall risk even when the potential hazards may be largely unknown, and specific countermeasures that can act against unique risks.}, + keywords = {Crime, Food safety, Fraud, Humans, Risk Assessment}, + year = {2016}, +} + +@Article{, + author = {Meyer, Samantha and Wilson, Annabelle and Calnan, Michael and Henderson, Julie and Coveney, John and McCullum, Dean and Pearce, Alex and Ward, Paul and Webb, Trevor}, + title = {In the interest of food safety}, + pages = {1-13}, + volume = {17}, + abstract = {BACKGROUND: Food regulatory bodies play an important role in public health, and in reducing the costs of food borne illness that are absorbed by both industry and government. Regulation in the food industry involves a relationship between regulators and members of the industry, and it is imperative that these relationships are built on trust. Research has shown in a variety of contexts that businesses find the most success when there are high levels of trust between them and their key stakeholders. An evidence-based understanding of the barriers to communication and trust is imperative if we are to put forward recommendations for facilitating the (re)building of trusting and communicative relationships. METHODS: We present data from 72 interviews with regulators and industry representatives regarding their trust in and communication with one another. Interviews were conducted in the UK, New Zealand, and Australia in 2013. RESULTS: Data identify a variety of factors that shape the dynamic and complex relationships between regulators and industry, as well as barriers to communication and trust between the two parties. Novel in our approach is our emphasis on identifying solutions to these barriers from the voices of industry and regulators. CONCLUSIONS: We provide recommendations (e.g., development of industry advisory boards) to facilitate the (re)building of trusting and communicative relationships between the two parties.}, + year = {2017}, +} + +@Article{, + author = {Millward, Steven}, + title = {Alibaba to use blockchain to fight China’s fake food}, + abstract = {Fake soy sauce, fake rice, fake eggs – those are all actual and potentially deadly items found in China. The tech behind Bitcoin could help everyone avoid the problem.}, + keywords = {Asia, Jakarta, Singapore, Tokyo}, +} + +@Article{, + author = {Nascimento, Carina and Santos, Poliana and Pereira-Filho, Edenir and Rocha, Fábio}, + title = {Recent advances on determination of milk adulterants}, + pages = {1232-1244}, + volume = {221}, + abstract = {Milk adulteration is a current fraudulent practice to mask the quality parameters (e.g. protein and fat content) and increase the product shelf life. Milk adulteration includes addition of toxic substances, such as formaldehyde, hydrogen peroxide, hypochlorite, dichromate, salicylic acid, melamine, and urea. In order to assure the food safety and avoid health risks to consumers, novel analytical procedures have been proposed for detection of these adulterants. The innovations encompass sample pretreatment and improved detection and data processing, including chemometric tools. This review focuses on critical evaluation of analytical approaches for assay of milk adulteration, with emphasis on applications published after 2010. Alternatives for fast, environmentally friendly and in-situ detection of milk adulterants are highlighted.}, + year = {2017}, +} + +@Article{, + title = {Food Fraud}, + pages = {13}, +} + +@Article{, + author = {Oceana}, + title = {Global seafood fraud}, + abstract = {Seafood is a global commodity traded all over the world, following a long, complex and non-transparent supply chain. It also serves as an important source of protein for millions of people every day. However, seafood fraud and species substitutions occur regularly, cheating consumers out of what they ordered and putting public health and the oceans at risk. In addition, seafood fraud allows illegally caught fish to be laundered into the legal seafood trade.}, + year = {2016}, +} + +@Article{, + author = {Oliveira, Gislene and Alewijn, Martin and Boerrigter-Eenling, Rita and van Ruth, Saskia}, + title = {Compositional signatures of conventional, free range, and organic pork meat using fingerprint techniques}, + pages = {359-375}, + volume = {4}, + abstract = {Consumers' interest in the way meat is produced is increasing in Europe. The resulting free range and organic meat products retail at a higher price, but are difficult to differentiate from their counterparts. To ascertain authenticity and prevent fraud, relevant markers need to be identified and new analytical methodology developed. The objective of this pilot study was to characterize pork belly meats of different animal welfare classes by their fatty acid (Fatty Acid Methyl Ester-FAME), non-volatile compound (electrospray ionization-tandem mass spectrometry-ESI-MS/MS), and volatile compound (proton-transfer-reaction mass spectrometry-PTR-MS) fingerprints. Well-defined pork belly meat samples (13 conventional, 15 free range, and 13 organic) originating from the Netherlands were subjected to analysis. Fingerprints appeared to be specific for the three categories, and resulted in 100%, 95.3%, and 95.3% correct identity predictions of training set samples for FAME, ESI-MS/MS, and PTR-MS respectively and slightly lower scores for the validation set. Organic meat was also well discriminated from the other two categories with 100% success rates for the training set for all three analytical approaches. Ten out of 25 FAs showed significant differences in abundance between organic meat and the other categories, free range meat differed significantly for 6 out of the 25 FAs. Overall, FAME fingerprinting presented highest discrimination power.}, + year = {2015}, +} + +@Book{, + author = {Olmsted, Larry}, + title = {Real food fake food}, + pages = {318}, + publisher = {Algonquin Books of Chapel Hill}, + abstract = {[Description from publisher - J.S.] You've seen the headlines: Parmesan cheese made from sawdust. Lobster rolls containing no lobster at all. Extra virgin olive oil that isn't. Fake foods are in our supermarkets, our restaurants, and our kitchen cabinets. Award-winning food journalist and travel writer Larry Olmsted exposes the pervasive and dangerous fraud perpetrated on unsuspecting Americans. Real Food/Fake Food brings readers into the unregulated food industry, revealing the alarming truth: What we think we're eating is not what we're really eating. Olmsted examines how this shocking deception extends from high-end foods like olive oil, wine, and Kobe beef to everyday staples such as coffee, honey, juice, and cheese. It's a massive bait and switch where counterfeiting is rampant and where the consumer ultimately pays the price. But Olmstead does more than show us what foods to avoid. A bona fide gourmand, he travels to the sources of the real stuff, to help us recognize what to look for, eat, and enjoy. Genuine Parmigiano-Reggiano from Italy, fresh-caught grouper from Florida, authentic port from Portugal. Real foods that are grown, raised, produced, and prepared with care by masters of their craft. Part cautionary tale, part culinary crusade, Real Food/Fake Food is addictively readable, mouth-wateringly enjoyable, and utterly relevant. Larry Olmsted convinces us why real food matters}, + keywords = {Artificial foods, Consumer education, Food additives, Food substitutes, Fraud, Nutrition, Quality}, + year = {2016}, +} + +@Article{, + author = {Opara, Linus}, + title = {Traceability in agriculture and food supply chain}, + pages = {101-106}, + volume = {1}, + year = {2003}, +} + +@Article{, + title = {Reflections on supply chain research and practice}, + editor = {Pawar, Kulwant and Rogers, Helen and Ferrari, Emilio}, + publisher = {Centre for Concurrent Enterprise}, + year = {2015}, +} + +@Article{, + author = {Ramamurthy, Shanker}, + title = {Leveraging blockchain to improve food supply chain traceability}, + abstract = {Leveraging blockchain for food supply chain tracking and authentication, is critical to finding and helping to address sources of contamination worldwide.}, + year = {2016-11-16}, +} + +@Book{, + author = {Ryan, John}, + title = {Food fraud}, + pages = {92 pages}, + publisher = {Academic Press}, + abstract = {Food Fraud provides an overview of the current state on the topic to help readers understand which products are being impacted, how pervasive food fraud is, and what laws are in effect across the developed world. As international food trade increases, food processors, distributors, and consumers are purchasing more and more food from foreign countries that, in many cases, have inadequate oversight or control over what is coming into our supermarkets, restaurants, and refrigerators. This book is an essential quick reference that will familiarize readers with the latest issues surrounding the food industry.}, + keywords = {Food adulteration and inspection, Food industry and trade, Law and legislation, United States}, + year = {2016}, +} + +@Misc{, + author = {Sample, Ian and Chambers, Iain}, + title = {A proper mouthful}, + abstract = {From fake eggs to horsemeat burgers, food fraud is common, but hard to detect. How can we be sure that what we’re eating is the real thing?}, + keywords = {Food and drink industry, Food safety, Food science, Horsemeat scandal, The meat industry}, + year = {2016-02-26}, +} + +@Article{, + author = {Sciex}, + title = {MarkerView Software}, + abstract = {[Description from publisher - J.S.] A powerful program designed for metabolomics and protein/peptide biomarker profiling applications. Allows you to rapidly and easily review data acquired on all SCIEX mass spectrometers to determine up- and down-regulation of endogenous compounds in complex samples.}, + year = {2017-03-29}, +} + +@Article{, + author = {Spink, John}, + title = {GFSI direction on food fraud and vulnerability assessment (VACCP)}, + abstract = {In February 2014 the Global Food Safety Initiative (GFSI) presented their direction for including Food Fraud in their Food Safety Management System.  They have adopted a holistic Food Fraud scope and have shifted their focus from risks to vulnerabilities.}, + year = {2014-05-08}, +} + +@Article{, + author = {Spink, John and Moyer, Douglas}, + title = {Defining the public health threat of food fraud}, + pages = {R157-R163}, + volume = {76}, + abstract = {Food fraud, including the more defined subcategory ofeconomically motivated adulteration, is a food risk that is gaining recognition and concern. Regardless ofthe cause ofthe food risk, adulteration offood is both an industry and a government responsibility. Food safety, food fraud, and food defense incidents can create adulteration offood with public health threats. Food fraud is an intentional act for economic gain, whereas a food safety incident is an unintentional act with unintentional harm, and a food defense incident is an intentional act with intentional harm. Economically motivated adulteration may be just that—economically motivated—but the food-related public health risks are often more risky than traditional food safety threats because the contaminants are unconventional. Current intervention systems are not designed to look for a near infinite number ofpotential contaminants. The authors developed the core concepts reported here following comprehensive research ofarticles and reports, expert elicitation, and an extensive peer review. The intent of this research paper is to provide a base reference document for defining food fraud—it focuses specifically on the public health threat—and to facilitate a shift in focus from intervention to prevention. This will subsequently provide a framework for future quantitative or innovative research. The fraud opportunity is deconstructed using the criminology and behavioral science applications ofthe crime triangle and the chemistry ofthe crime. The research provides a food risk matrix and identifies food fraud incident types. This project provides a starting point for future food science, food safety, and food defense research.}, + keywords = {Consumer product safety, Food safety methods, Fraud, Risk Assessment, Risk Factors, Terrorism}, + year = {2011}, +} + +@Article{, + author = {Spink, John and Moyer, Douglas and Park, Hyeonho and Wu, Yongning and Fersht, Victor and Shao, Bing and Hong, Miao and Paek, Seung and Edelev, Dmitry}, + title = {Introducing food fraud including translation and interpretation to Russian, Korean, and Chinese languages}, + pages = {102-7}, + volume = {189}, + abstract = {This paper introduces the topic of Food Fraud with translations to Russian, Korean, and Chinese. The concepts provide a system-wide focus leading to prevention. The goal is not to detect Food Fraud but to adjust entire food supply chains to reduce fraud opportunities. Food Fraud is a recently defined area of Food Protection between Food Safety (such as Salmonella or pesticide residue), and Food Defense (malicious intent to harm such as terrorism). Food Fraud is intentional with no intent to harm but only for economic gain. As with improving Food Safety and Food Defense, preventing Food Fraud is good for society and the economy. Society benefits through fewer public health threats from unauthorized acts. Society also benefits from increased consumer satisfaction and harmony. Food Security is increased through the production of more, higher-value products for consumers, commerce, and exporting. Food Fraud can reduce economic output because sickened citizens cannot work and it also reduces consumer confidence leading to less commerce.}, + keywords = {China, Food contamination prevention and control, Food quality, Food safety, Fraud prevention and control, Language, Public Health, Republic of Korea, Russia}, + year = {2015}, +} + +@Book{, + title = {Driving agribusiness with technology innovations}, + editor = {Tarnanidis, Theodore and Vlachopoulou, Maro and Papathanasiou, Jason}, + publisher = {IGI Global}, + abstract = {[Description from publisher - J.S.] Modern web-based applications are pertinent for businesses, as they often encourage their core competencies and capabilities. As such, the agribusiness sector must begin to take advantage of the open networks and advances in communication and information technologies in order to grow their businesses exponentially. Driving Agribusiness With Technology Innovations highlights innovative business models and theories that encourage the use of emerging technological advances to produce thriving enterprises. Featuring extensive coverage on relevant topics including digital environments, mobile agriculture, supply chain platforms, and internet marketing models, this publication is an important reference source for business managers, practitioners, professionals, and engineers who are interested in discovering emerging technology trends for agribusiness.}, + year = {2017}, +} + +@Article{, + author = {Toci, Aline and Farah, Adriana and Pezza, Helena and Pezza, Leonardo}, + title = {Coffee adulteration}, + pages = {83-92}, + volume = {46}, + abstract = {Coffee is a ubiquitous food product of considerable economic importance to the countries that produce and export it. The adulteration of roasted coffee is a strategy used to reduce costs. Conventional methods employed to identify adulteration in roasted and ground coffee involve optical and electron microscopy, which require pretreatment of samples and are time-consuming and subjective. Other analytical techniques have been studied that might be more reliable, reproducible, and widely applicable. The present review provides an overview of three analytical approaches (physical, chemical, and biological) to the identification of coffee adulteration. A total of 30 published articles are considered. It is concluded that despite the existence of a number of excellent studies in this area, there still remains a lack of a suitably sensitive and widely applicable methodology able to take into account the various different aspects of adulteration, considering coffee varieties, defective beans, and external agents.}, + keywords = {Coffee, Electron scanning microscopy, Food contamination analysis}, + year = {2016}, +} + +@Article{, + title = {FDA Food Safety Modernization Act}, + pages = {89}, +} + +@Article{, + title = {United States v. Lexington Mill & Elevator Co.}, +} + +@Article{, + title = {Food safety}, + editor = {Uyttendaele, Mieke and Franz, Eelco and Schlüter, Oliver}, + volume = {13}, + year = {2016}, +} + +@Article{, + author = {Wang, Yunyu and He, Kai and Fan, Long and Wang, Yushui and Wu, Shifang and Murphy, Robert and Wang, Wenzhi and Zhang, Yaping}, + title = {DNA barcoding reveals commercial fraud related to yak jerky sold in China}, + pages = {106-8}, + volume = {59}, + keywords = {Cattle genetics, China, DNA Barcoding, Food contamination, Food safety, Fraud, Hazard analysis and critical control points, Meat, Preserved food, RNA}, + year = {2016}, +} + +@Article{, + title = {2008 Chinese milk scandal}, +} + +@Misc{, + author = {Winter, Carl}, + title = {Still seems like food to me}, + publisher = {Food Safety Music - UC Davis}, + year = {2008}, +} + +@Article{, + author = {Yan, Yunxiang}, + title = {Food safety and social risk in contemporary China}, + pages = {705-729}, + volume = {71}, + year = {2012}, +} + +@Article{, + title = {2016 13th International Conference on Service Systems and Service Management (ICSSSM)}, + editor = {Yang, Baojian}, + keywords = {Computer networks, Service industries, Systems engineering}, + publisher = {IEEE}, + year = {2016}, +} + +@Article{, + author = {Bitzios, Michail and Jack, Lisa and Krzyzaniak, Sally-Ann and Xu, Mark}, + title = {Dissonance in the food traceability regulatory environment and food fraud}, +} + +@Article{, + author = {Fassam, Liam and Dani, Samir and Hills, Mils}, + title = {Supply chain food crime & fraud}, + pages = {659-666}, +} + +@Article{, + author = {Karipidis, Philippos and Tselempis, Dimitrios and Tsironis, Loukas}, + title = {Eco-certification and transparency in global food supply chains}, + pages = {70-90}, +} + +@Article{, + author = {Manning, L.}, + title = {Food Integrity}, + pages = {2-6}, + volume = {119}, +} + +@Article{, + author = {Tian, Feng}, + title = {An agri-food supply chain traceability system for China based on RFID & blockchain technology}, + pages = {1-6}, +} + +@Article{, + author = {Uyttendaele, Mieke and Franz, Eelco and Schlüter, Oliver}, + title = {Food safety, a global challenge}, + pages = {1–6}, + volume = {13}, +} + +@Article{, + author = {Whitworth, Elizabeth and Druckman, Angela and Woodward, Amy}, + title = {Food scares}, + pages = {131-142}, + volume = {119}, + abstract = {Purpose – The purpose of this paper is to describe the development of a comprehensive categorisation of food scares. Design/methodology/approach – Following an initial desktop study, the categorisation was developed collaboratively with industry experts through a workshop and series of semi-structured interviews. Findings – The new categorisation developed is in Venn diagram format allowing overlapping categories. It is organised around the two major types of contamination (biological, and chemical/physical contaminants) and the two major causes of contamination (wilful deception, and transparency and awareness issues). Practical implications – The long and complex supply chains characteristic of current food production systems have resulted in a rising number of food scares. There is thus an increased emphasis on developing strategies to reduce both the number of incidents of food scares, and their associated economic, social and environmental impacts. The new categorisation developed in this study enables experts to address categories of food scares. Inclusion of the cause of contamination is particularly important as the method through which contamination occurs is key in devising food scare prevention strategies. Originality/value – The new categorisation, unlike previous categorisations, enables food scares to fall into multiple categories, as appropriate. Also, again in contrast to previous categorisations, it takes into account not only the physical problem of a food scare but also the mechanism through which it arises.}, + keywords = {Classification, Consumer risk, Contamination, Food safety, Risk reduction}, +} diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.ctv6bak b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.ctv6bak new file mode 100644 index 0000000000000000000000000000000000000000..fa319a1ec9183a5cac3d8c2abf5f425c079bd76f GIT binary patch literal 134986 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

-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

kq$E-uFs!jpSCDMwB36kvE4yVTX*RAYhVVfNz^ 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�H|JW-dU)F-+t{nX&VkVAmwBOm`Z`Gy8{o;s?Ez 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 Q009750002n4gvrG0IiO8f&c&j literal 0 HcmV?d00001 diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib new file mode 100644 index 00000000000..0c9c2356a50 --- /dev/null +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib @@ -0,0 +1,449 @@ +@Article{, + author = {Abrahamsen, Rita}, + title = {The power of partnerships in global governance}, + pages = {1453-1467}, + volume = {25}, + year = {2004}, +} + +@Book{, + title = {Contentious Politics in the Middle East}, + editor = {Albrecht, Holger}, + publisher = {University Press of Florida}, + year = {2010}, +} + +@Article{, + author = {Altan-Olcay, Ozlem and Icduygu, Ahmet}, + title = {Mapping Civil Society in the Middle East: The Cases of Egypt, Lebanon and Turkey}, + pages = {157-179}, + volume = {39}, + year = {2012}, +} + +@Book{, + title = {Handbook of ethnography}, + editor = {Atkinson, Paul and Coffey, Amanda and Delamont, Sara and Lofland, John and Lofland, Lyn}, + pages = {xviii, 507 Seiten}, + publisher = {SAGE}, + year = {2014}, +} + +@Book{, + title = {The professionalization of public participation}, + editor = {Bherer, Laurence and Gauthier, Mario and Simard, Louis}, + pages = {x, 263 Seiten}, + publisher = {Routledge}, + year = {2017}, +} + +@Article{, + author = {Blok, Anders}, + title = {Mapping the Super‐Whale: Towards a Mobile Ethnography of Situated Globalities}, + pages = {507-528}, + volume = {5}, + year = {2010}, +} + +@Book{, + author = {Bosancic, Sasa}, + title = {Arbeiter ohne Eigenschaften}, + pages = {418 S}, + publisher = {Springer VS}, + year = {2014}, +} + +@Article{, + author = {Breidenstein, Georg and Hirschauer, Stefan}, + title = {Endlich fokussiert? Weder ,Ethno' noch ,Graphie'.}, + pages = {125-129}, + volume = {3}, + year = {2002}, +} + +@Book{, + author = {Breidenstein, Georg and Hirschauer, Stefan and Kalthoff, Herbert}, + title = {Ethnografie}, + pages = {250 S}, + publisher = {UTB}, + volume = {3979}, + year = {2013}, +} + +@Book{, + author = {Carapico, Sheila}, + title = {Political aid and Arab activism}, + pages = {xii, 250}, + publisher = {Cambridge University Press}, + volume = {[44]}, + abstract = {What does it mean to promote "transitions to democracy" in the Middle East? How have North American, European, and multilateral projects advanced human rights, authoritarian retrenchment, or Western domination? Political Aid and Arab Activism examines transnational programs in Egypt, Jordan, Morocco, Yemen, Lebanon, Tunisia, Algeria, the exceptional cases of Palestine and Iraq, and the Arab region at large during two tumultuous decades. To understand the controversial and contraadictory effects of pGlitical aid, Sheila Carapico analyzes discursive and professional practices in four key subfields: the rule of law, electoral design and monitoring, women's political empowerment, and civil society. From the institutional arrangements for extraordinary underrtakings such as Saddam Hussein's trial or Palestinian elections to routine templates for national women's machineries or NGO nettworks, her research explores the paradoxes and jurisdictional disputes confronted by Arab activists for justice, representation, and "nonngovernmental" agency.--}, + year = {2014}, +} + +@Book{, + author = {Cavatorta, Francesco and Durac, Vincent}, + title = {Civil society and democratization in the Arab world}, + pages = {XIII, 172 S.}, + publisher = {Routledge}, + volume = {22}, + year = {2011}, +} + +@Book{, + author = {Clarke, Adele}, + title = {Situational analysis}, + pages = {xli, 365}, + publisher = {Sage Publications}, + abstract = {"Situational Analysis: Grounded Theory After the Postmodern Turn provides an innovative approach to grounded theory useful in a wide array of qualitative research projects. Extending Anselm Strauss's ecological social worlds/arenas/discourses framework, situational analysis offers researchers three kinds of maps that place emphasis on the range of differences rather than commonalities, as found via the traditional grounded theory approach."--Jacket.}, + year = {2005}, +} + +@Book{, + author = {Cooke, Bill and Kothari, Uma}, + title = {Participation}, + pages = {XII, 207 S. ;}, + publisher = {Zed Books}, + year = {2007}, +} + +@Book{, + title = {Understanding global development research}, + editor = {Crawford, Gordon and Kruckenberg, Lena and Loubere, Nicholas and Morgan, Rosemary}, + pages = {xvii, 262}, + abstract = {Built around interviews and personal field notes of authorities and researchers, which really help readers to see what actually happens during field work, this exciting new book gives practical advice on the key aspects of doing developmental fieldwork. A must read for all students, researchers and aid workers contemplating field work in emerging economies. -- Admos Chimhowu This is an up-to-date, thought-provoking and well-balanced publication that brings together the best insights of leading and young scholars at the nexus of development and participatory field research. Its relational, ethics- and power-sensitive perspective makes this book special.--}, +} + +@Book{, + author = {Dellwing, Michael and Prus, Robert}, + title = {Einführung in die interaktionistische Ethnografie}, + pages = {233 S}, + publisher = {Springer VS}, + year = {2012}, +} + +@Article{, + author = {Desmond, Matthew}, + title = {Relational ethnography}, + pages = {547-579}, + volume = {43}, + year = {2014}, +} + +@Article{, + author = {Doyle, Jessica}, + title = {Civil Society as Ideology in the Middle East: A Critical Perspective}, + pages = {403-422}, + volume = {43}, + year = {2016}, +} + +@Article{, + author = {DuBois, Marc}, + title = {The Governance of the Third World: A Foucauldian Perspective on Power Relations in Development}, + pages = {1-30}, + volume = {16}, + year = {1991}, +} + +@Book{, + author = {Emerson, Robert and Fretz, Rachel I. and Shaw, Linda}, + title = {Writing ethnographic fieldnotes}, + pages = {xxiii, 289}, + publisher = {The University of Chicago Press}, + year = {2011}, +} + +@Article{, + author = {Fechter, A.-M.}, + title = {Aid work as moral labour}, + pages = {228-243}, + volume = {36}, + year = {2016}, +} + +@Article{, + author = {Fechter, Anne-Meike}, + title = {The Personal and the Professional: Aid workers' relationships and values in the development process}, + pages = {1387-1404}, + volume = {33}, + year = {2012}, +} + +@Book{, + author = {Fechter, Anne-Meike and Hindman, Heather}, + title = {Inside the everyday lives of development workers}, + pages = {vi, 224}, + publisher = {Kumarian Press}, + abstract = {Fechter and Hindman break new ground by illuminating the social and cultural world of the aid agency, a world that is neglected in most discussions of aid policy. They examine how aid workers' moral beliefs interlink and conflict with their initial motivations, how they relate to aid beneficiaries, their local NGO counterparts, and other aid workers, their views on race and sexuality, the effect of transient lifestyles and insider language, and the security and family issues that come with choosing such a career. Ultimately, they arrive at a more comprehensive understanding of development processes that acknowledges a rich web of relationships at all levels of the system.}, + year = {2011}, +} + +@Article{, + author = {Fechter, Anne-Meike and Walsh, Katie}, + title = {Examining ‘Expatriate’ Continuities: Postcolonial Approaches to Mobile Professionals}, + pages = {1197-1210}, + volume = {36}, + year = {2010}, +} + +@Book{, + title = {The New Expatriates}, + editor = {Fechter, Anne-Meike and Walsh, Katie}, + pages = {174}, + publisher = {Routledge}, + abstract = {While scholarship on migration has been thriving for decades, little attention has been paid to professionals from Europe and America who move temporarily to destinations beyond ' the West' . Such migrants are marginalised and depoliticised by debates on immigration policy, and thus there is an urgent need to develop nuanced understanding of these more privileged movements. In many ways, these are the modern-day equivalents of colonial settlers and expatriates, yet the continuities in their migration practices have rarely been considered.The...}, + year = {2013}, +} + +@Article{, + author = {Ferguson, James}, + title = {The Uses of Neoliberalism}, + pages = {166-184}, + volume = {41}, + year = {2010}, +} + +@Article{, + author = {Härdig, Anders}, + title = {Beyond the Arab revolts: conceptualizing civil society in the Middle East and North Africa}, + pages = {1131-1153}, + volume = {22}, + year = {2014}, +} + +@Book{, + title = {Hermeneutische Wissenssoziologie}, + editor = {Hitzler, Ronald and Reichertz, Jo and Schröer, Norbert}, + pages = {348 S}, + publisher = {UVK-Verl.-Ges.}, + year = {1999}, +} + +@Book{, + author = {Inhetveen, Katharina}, + title = {Die politische Ordnung des Flüchtlingslagers}, + pages = {1 online resource (444 S.)}, + publisher = {Transcript}, + year = {2014}, +} + +@Article{, + author = {Jaeger, Hans-Martin}, + title = {"Global Civil Society" and the Political Depoliticization of Global Governance}, + pages = {257-277}, + volume = {1}, + year = {2007}, +} + +@Article{, + author = {Jennings, Kathleen and Boas, Morten}, + title = {Transactions and Interactions: Everyday Life in the Peacekeeping Economy}, + pages = {281-295}, + volume = {9}, + year = {2015}, +} + +@Article{, + author = {Knoblauch, Hubert}, + title = {Fokussierte Ethnographie : Soziologie, Ethnologie und die neue Welle der Ethnographie}, + pages = {123-141}, + volume = {2}, + year = {2001}, +} + +@Book{, + author = {Krause, Monika}, + title = {The good project}, + pages = {xi, 220}, + publisher = {University of Chicago Press}, + abstract = {NGOs set out to save lives, relieve suffering, and service basic human needs. They are committed to serving people across national borders and without regard to race, ethnicity, gender, or religion, and they offer crucial help during earthquakes, tsunamis, wars, and pandemics. But with so many ailing areas in need of assistance, how do these organizations decide where to go{u2014}and who gets the aid? In The Good Project, Monika Krause dives into the intricacies of the decision-making process at NGOs and uncovers a basic truth: It may be the case that relief agencies try to help people but, in practical terms, the main focus of their work is to produce projects. Agencies sell projects to key institutional donors, and in the process the project and its beneficiaries become commodities. In an effort to guarantee a successful project, organizations are incentivized to help those who are easy to help, while those who are hardest to help often receive no assistance at all. The poorest of the world are made to compete against each other to become projects{u2014}and in exchange they offer legitimacy to aid agencies and donor governments. Sure to be controversial, The Good Project offers a provocative new perspective on how NGOs succeed and fail on a local and global level. --Provided by publisher.}, + year = {2014}, +} + +@Article{, + author = {Kurki, Milja}, + title = {Governmentality and EU Democracy Promotion: The European Instrument for Democracy and Human Rights and the Construction of Democratic Civil Societies1}, + pages = {349-366}, + volume = {5}, + year = {2011}, +} + +@Article{, + author = {Merry, Sally}, + title = {Measuring the World}, + pages = {S83-S95}, + volume = {52}, + year = {2011}, +} + +@Article{, + author = {Norman, Long}, + title = {The Multiple Optic of Interface Analysis}, + year = {1999}, +} + +@Book{, + title = {Methoden der vergleichenden Politik- und Sozialwissenschaft}, + editor = {Pickel, Susanne and Jahn, Detlef and Lauth, Hans-Joachim and Pickel, Gert}, + pages = {1 online resource (Online-Ressource.)}, + publisher = {VS Verlag für Sozialwissenschaften / GWV Fachverlage GmbH, Wiesbaden}, + year = {2009}, +} + +@Article{, + author = {Reichertz, Jo}, + title = {"Meine Schweine erkenne ich am Gang" : zur Typisierung typisierender Kriminalpolizisten}, + pages = {194-207}, + volume = {22}, + year = {1999}, +} + +@Book{, + title = {The persistence of critical theory}, + editor = {Ricci, Gabriel}, + pages = {1 online resource (xvii, 257}, + publisher = {Routledge}, + volume = {volume 8}, + abstract = {The latest volume of Culture & Civilization gathers contemporary exponents of critical theory, specifically those based in the Frankfurt School of social thinking. Collectively, this volume demonstrates the continuing intellectual viability of critical theory, which challenges the limits of positivism and materialism. We may question how the theoretical framework of Marxism fails to coordinate with the conditions that defined labor forces, as did Max Horkheimer and Theodor Adorno, or deliberate on the conditions that justify the claims we make through public discourse, as did Jürgen Habermas. Or, like Axel Honneth, we may reflect on recognition theory as a means of addressing social problems. Whatever our objective, the focus of critical theory continues to be the consciousness of established "positive" interests that, without debate, may sustain injustices or conditions which the public may not have chosen to impose. Throughout the hardship of punitive dismissal and exile in the 1930s and 40s, and the shock of the New Left in the 1960s and 70s, and finally the later linguistic and pragmatic turn, the Frankfurt School has sustained the idea that people escape disaffection and alienation when their knowledge of the social and political world is dialectically mediated through creative interaction. This new volume in the Culture & Civilization series continues the tradition of critical thought.}, + year = {2017}, +} + +@Article{, + author = {SENDING, O. and NEUMANN, I. V. E. R.}, + title = {Governance to Governmentality: Analyzing NGOs, States, and Power}, + pages = {651-672}, + volume = {50}, + year = {2006}, +} + +@Book{, + title = {Studying the agency of being governed}, + editor = {Stern, Maria and Hellberg, Sofie and Hansson, Stina}, + pages = {xiii, 209}, + publisher = {Routledge}, + abstract = {"This edited volume seeks to provide guidance on how we can approach questions of governing and agency--particularly those who endeavour to embark on grounded empirical research--by rendering explicit some key challenges, tensions, dilemmas, and confluences that such endeavours elicit. Indeed, the contributions in this volume reflect the growing tendency in governmentality studies to shift focus to empirically grounded studies. The volume thus explicitly aims to move from theory to practice, and to step back from the more top-down governmentality studies approach to one that examines how one can/does study how relations of power affect lives, experience and agency. This book offers insight into the intricate relations between the workings of governing and (the possibility for) people's agency on the one hand, and about the possible effects of our attempts to engage in such studies on the other. In numerous ways, and from different starting points, the contributions to this volume provide thoughtful insights into, and creative suggestions for, how to work with the methodological challenges of studying the agency of being governed. This work will be of great interest to students and scholars of international relations, global governance and research methods"--}, + year = {2015}, +} + +@Article{, + author = {Stirrat, Roderick and Henkel, Heiko}, + title = {The Development Gift: The Problem of Reciprocity in the NGO World}, + pages = {66-80}, + volume = {554}, + year = {1997}, +} + +@Article{, + author = {Streck, Rebekka and Unterkofler, Ursula and Reinecke-Terner, Anja}, + title = {Das "Fremdwerden" eigener Beobachtungsprotokolle – Rekonstruktionen von Schreibpraxen als methodische Reflexion}, + pages = {Art. 16}, + volume = {14}, + year = {2013}, +} + +@Article{, + author = {Vorhölter, Julia}, + title = {Studying development organizations – towards a culture of participation?}, + pages = {178-194}, + volume = {1}, + year = {2012}, +} + +@Book{, + title = {Knowing Governance}, + editor = {Voß, Jan-Peter and Freeman, Richard}, + publisher = {Palgrave Macmillan}, + year = {2016}, +} + +@Article{, + author = {Weidner, Jason}, + title = {Governmentality, Capitalism, and Subjectivity}, + pages = {387-411}, + volume = {23}, + year = {2009}, +} + +@Book{, + author = {Ziai, Aram}, + title = {Development discourse and global history}, + pages = {viii, 244 Seiten}, + publisher = {Routledge}, + year = {2016}, +} + +@Book{, + title = {Postkoloniale Politikwissenschaft}, + editor = {Ziai, Aram}, + pages = {350 S}, + publisher = {Transcript}, + volume = {27}, + abstract = {Welche Relevanz hat die Perspektive der postkolonialen Studien für die Politikwissenschaft? Die Frage nach den Auswirkungen der Epoche des Kolonialismus lässt verschiedene Bereiche der Disziplin - darunter Politische Theorie, Geschlechterverhältnisse, Internationale Beziehungen und Politische Systeme - in einem neuen Licht erscheinen. Die in diesem Band versammelten postkolonialen Analysen politischer Theorien, Institutionen und Prozesse, die sich auf empirischer und theoretischer Ebene bewegen, machen eurozentrische Strukturen und koloniale Argumentationsmuster in der Politikwissenschaft, in der Politikpraxis auf deutscher und internationaler Ebene sowie in postkolonialen Ländern sichtbar. (Quelle: www.buchhandel.de).}, + year = {2016}, +} + +@Article{, + author = {Baya-Laffite, Nicolas}, + title = {Black-boxing Sustainable Development: Environmental Impact Assessment on the River Uruguay}, + pages = {237-256}, +} + +@Article{, + author = {Cavatorta, Francesco and Elananza, Azzam}, + title = {Show Me the Money!}, + pages = {75-93}, +} + +@Article{, + author = {Emerson, Robert and Fretz, Rachel I. and Shaw, Linda}, + title = {Participant Observation and Fieldnotes}, + pages = {352-368}, +} + +@Article{, + author = {Kerner, Ina}, + title = {Transnational Governmentality and Civil Society: Ambivalences of Power in a Globalized World}, + pages = {85-102}, +} + +@Article{, + author = {Laurent, Brice}, + title = {Boundary-making in the International Organization: Public Engagement Expertise at the OECD}, + pages = {217-236}, +} + +@Article{, + author = {Meuser, Michael and Nagel, Ulrike}, + title = {Das Experteninterview — konzeptionelle Grundlagen und methodische Anlage}, + pages = {465-479}, +} + +@Article{, + author = {Reichertz, Jo and Hitzler, Ronald and Schröer, Norbert}, + title = {Das Arbeitsfeld einer hermeneutischen Wissenssoziologie}, + pages = {9-14}, +} + +@Article{, + author = {Stirling, Andrew}, + title = {Knowing Doing Governing: Realizing Heterodyne Democracies}, + pages = {259-286}, +} + +@Article{, + author = {Swetha Rao Dhananka}, + title = {Encounters at the margins: situating the researcher under conditions of aid}, + pages = {109-113}, +} + +@Article{, + author = {Sylvester, Christine}, + title = {Avoiding the ‘killing’ of lives: representations in academia and fiction}, + pages = {64-73}, +} + +@Article{, + author = {Voß, Jan-Peter and Freeman, Richard}, + title = {Introduction: Knowing Governance}, + pages = {1-34}, +} diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.ctv6bak b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.ctv6bak new file mode 100644 index 0000000000000000000000000000000000000000..426f4dabb8f3c9994515ab4a93be7b007dfc8193 GIT binary patch literal 138066 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 E08$0#LjV8( literal 0 HcmV?d00001 diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib new file mode 100644 index 00000000000..47cd0113d05 --- /dev/null +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib @@ -0,0 +1,804 @@ +@Book{, + title = {Critical library instruction}, + editor = {Accardi, Maria and Drabinski, Emily and Kumbier, Alana}, + publisher = {Library Juice Press}, + abstract = {A collection of articles about various ways of applying critical pedagogy and related educational theories to library instruction}, + year = {2010}, +} + +@Misc{, + author = {Adamo, Stefano}, + title = {The Social Diffusion of Specialist Knowledge}, + abstract = {[Author:] I argue that the social diffusion of specialist knowledge is contingent upon a combination of environmental and cognitive factors that make such ideas significant to the lay person and motivates their social transmission and retention. The same combination of factors, however, also engenders an incomplete comprehension of the ideas being spread. I propose a qualitative method to understand what makes specialist knowledge relevant and anticipate how lay peoplemay retain and spread such knowledge. Stefano Adamo is Reader in Italian History and Culture at the University of Banja Luka, Bosnia Herzegovina, and fellowat the International Center of Economic Research, Turin, Italy. His research interests include the history of ideas and the cognitive theory of culture,especially the history of economic concepts (money, market, etc.) and their social diffusion.}, + year = {2011}, +} + +@Book{, + author = {Allan, Barbara}, + title = {E-learning and teaching in library and information services}, + pages = {273}, + publisher = {Facet}, + abstract = {Online learning is becoming an increasingly important approach to user education, information literacy and ILS staff development. ILS staff are becoming increasingly involved in the business of e-learning and teaching, from designing and developing materials and programmes through to supporting individual and group learning using virtual learning environments. This text provides an overview and guide to the rapidly developing field of virtual learning environments and provides practical guidance to the development, use and delivery of online learning and teaching materials and programmes. It includes ready-to-use aids such as checklists, questionnaires, charts and tables, and also a wide range of case studies in an ILS context, taken from current practice of the information and library world in the UK and worldwide. Key areas covered include: models of online learning and teaching; the Internet and Web - using learning resources; visual learning environments; electronic assessment; basic conferencing skills for tutors; managing online learning and teaching; moving from conventional learning and teaching to online.}, + keywords = {computer-aided learning, training sessions, information literacy, E-Learning, libraries, e-tutoring, online media}, + year = {2002}, +} + +@Book{, + author = {Ambrose, Susan and Bridges, Michael and DiPietro, Michele and Lovett, Marsha and Norman, Marie}, + title = {How learning works}, + publisher = {Jossey-Bass}, + abstract = {From the Inside Flap Any conversation about effective teaching must begin with a consideration of how students learn. However, instructors may find a gap between resources that focus on the technical research on learning and those that provide practical classroom strategies. How Learning Works provides the bridge for such a gap. In this volume, the authors introduce seven general principles of learning, distilled from the research literature as well as from twenty-seven years of experience working one-on-one with college faculty. They have drawn on research from a breadth of perspectives (cognitive, developmental, and social psychology; educational research; anthropology; demographics; and organizational behavior) to identify a set of key principles underlying learning-from how effective organization enhances retrieval and use of information to what impacts motivation. These principles provide instructors with an understanding of student learning that can help them see why certain teaching approaches are or are not supporting student learning, generate or refine teaching approaches and strategies that more effectively foster student learning in specific contexts, and transfer and apply these principles to new courses. For anyone who wants to improve his or her students' learning, it is crucial to understand how that learning works and how to best foster it. This vital resource is grounded in learning theory and based on research evidence, while being easy to understand and apply to college teaching.}, + year = {2010}, +} + +@Article{, + title = {Information Literacy Competency Standards for Higher Education}, + editor = {American Library Association}, + pages = {20}, + abstract = {These standards were reviewed by the ACRL Standards Committee and approved by the Board of Directors of the Association of College and Research Libraries (ACRL) on January 18, 2000, at the Midwinter Meeting of the American Library Association in San Antonio, Texas. These standards were also endorsed by the American Association for Higher Education (October 1999) and the Council of Independent Colleges (February 2004).}, + keywords = {standards, information literacy}, + year = {2008}, +} + +@Book{, + title = {Publication manual of the American Psychological Association}, + publisher = {American Psychological Association}, + year = {2010}, +} + +@Book{, + author = {Andretta, Susie}, + title = {Information literacy}, + pages = {208}, + publisher = {Chandos}, + abstract = {Taking an international approach, this book explores two main models of information literacy (IL) : the SCONUL (Society of College, National and University Libraries) Seven Pillars of Information Skills and the IL competencies identified by the ALA (American Library Association). Practical examples for the development of IL skills identified by these models are illustrated using printed and web-based resources. The process of integrating IL provision within a programme of study is outlined to illustrate two strategies underpinning this integration at generic-skills level, the "plug & play" approach, and at subject-specific level, the "research skills approach". A range of diagnostic and assessment methods, to monitor the iterative process of IL skills development, are also presented within these frameworks.}, + keywords = {information literacy, information sciences}, + year = {2004}, +} + +@Book{, + author = {Baker, Kim}, + title = {Information literacy and cultural heritage}, + pages = {198}, + publisher = {Woodhead}, + year = {2013}, +} + +@Article{, + author = {Bawden, David}, + title = {Information and digital literacies}, + pages = {218-259}, + volume = {57}, + abstract = {The concepts of `information literacy' and `digital literacy' are described, and reviewed, by way of a literature survey and analysis. Related concepts, including computer literacy, library literacy, network literacy, Internet literacy and hyper-literacy are also discussed, and their relationships elucidated. After a general introduction, the paper begins with the basic concept of `literacy', which is then expanded to include newer forms of literacy, more suitable for complex information environments. Some of these, for example library, media and computer literacies, are based largely on specific skills, but have some extension beyond them. They lead to general concepts, such as information literacy and digital literacy which are based on knowledge, perceptions and attitudes, though reliant on the simpler skills-based literacies.}, + keywords = {computer literacy, Library literacy, information literacy}, + year = {2001}, +} + +@Article{, + author = {Bent, Moira and Stubbings, Ruth}, + title = {The SCONUL Seven Pillars of Information Literacy}, + pages = {14}, +} + +@Article{, + author = {Black, Richard}, + title = {The Future of Published Science}, + abstract = {Scientific publishing is undergoing a revolution. Scientists and policy makers, fed up with valuable research being locked away in expensive subscription only journals, are mounting a challenge to the publishers. They are launching their own competing journals and giving away the results for free. But not everyone is happy. In Publish or be Damned, Richard Black examines this dramatic change from both sides of the debate and assesses its likely consequences for science.}, + keywords = {open access, publication rate}, +} + +@Book{, + author = {Bloch, Joel}, + title = {Plagiarism, intellectual property and the teaching of L2 writing}, + publisher = {Multilingual Matters}, + year = {2012}, +} + +@Book{, + author = {Breivik, Patricia and Gee, Gordon}, + title = {Information Literacy}, + publisher = {Greenwood Publishing Group}, + abstract = {What should be the role of college and university libraries in the search for educational excellence in the information age? In this book, a university president and a library director take a close, critical look at new roles for academic libraries as resources for information literacy. This book provides a visionary blueprint for librarians, presidents, and educators concerned with satisfying the growing information needs of American society.}, + year = {1989}, +} + +@Article{, + author = {Bruce, Christine}, + title = {Workplace experiences of information literacy}, + pages = {33-47}, + volume = {19}, + abstract = {The idea of information literacy, broadly defined as the ability to recognise information needs and identify, evaluate and use information effectively, has been of growing concern in the education sectors for a number of years; whilst in the workplace, employers and managers have perhaps attended more to the need for computer and information technology skill. New descriptions of information literacy, that may be of value to the business sector, are now beginning to appear as a result of qualitative research into how professional employees experience the effective use of information. This paper summarises the outcomes of an investigation into the experience of information literacy amongst various types of professionals; and explores the possible differences and interrelations between individual and organisational information literacy suggested by these outcomes. Seven different ways of experiencing information literacy were identified. These experiences are closely related to important workplace processes such as environmental scanning, information management, corporate memory, and research and development; confirming that information literacy should be considered a significant part of the character of learning organisations as well as being a key characteristic of the organisation's employees. Implications of individual and organisational information literacy for beginning and continuing professional education are explored.}, + year = {1999}, +} + +@Book{, + author = {Burkhardt, Joanna and MacDonald, Mary and Rathemacher, Andrée}, + title = {Teaching information literacy}, + publisher = {American Library Association}, + abstract = {From high schools and colleges to technical and graduate schools, research involves making sense of information: learning the basics of planning, winnowing, and evaluating the quality of sources. As information proliferates, it's tempting to use the handiest tool rather than working to identify the best one. But there's a better way! Updated for today's ever-expanding world of electronic information, Teaching Information Literacy: 50 Standards-Based Exercises for College Students, Second Edition is the best single resource for fundamental information literacy instruction. Covering the basics of planning, collecting, and evaluating, the 50 standards-based exercises in this book * Address one or more of the ACRL Information Literacy Competency Standards for Higher Education * Promote conceptual and applied skills via active learning, problem-based learning, and resource-based learning * Are ready for use by reference and instruction librarians at colleges and community colleges, as well as others responsible for teaching students how to conduct research Perfect for a full semester course or a single focused seminar or workshop, these 50 lessons show how to engage with electronic and print information resources alike.}, + keywords = {American Library Association, instruction concepts}, + year = {2010}, +} + +@Article{, + author = {Cacchione, Pamela and Zurkowski, Paul}, + title = {Nurse scientists' information literacy is supported by librarians}, + pages = {3-6}, + volume = {23}, + year = {2014}, +} + +@Article{, + author = {Carder, Linda and Willingham, Patricia and Bibb, David}, + title = {Case-based, problem-based learning}, + pages = {181-190}, + volume = {18}, + abstract = {Case-based, problem-based learning (CBPBL) is a student-centered approach that uses tightly focused minicases to help students demonstrate their ability to identify their information needs. It has been used successfully in science and medical learning, and lends itself easily to helping students develop the critical thinking skills that lead to information literacy. In this approach, after students are provided with a minicase, they control the chalkboard and direct their own learning by initiating the topics and setting the agenda that will lead to solving the case. The instructor's task is to serve as a facilitator, asking questions only when it serves to help clarify students' thinking, and guiding group processes when necessary.}, + year = {2001}, +} + +@Article{, + author = {Clairoux, Natalie and Desbiens, Sylvie and Clar, Monique and Dupont, Patrice and St-Jean, Monique}, + title = {Integrating information literacy in health sciences curricula: a case study from Québec}, + pages = {201-211}, + volume = {30}, + abstract = {OBJECTIVE To portray an information literacy programme demonstrating a high level of integration in health sciences curricula and a teaching orientation aiming towards the development of lifelong learning skills. The setting is a French-speaking North American university. METHODS The offering includes standard workshops such as MEDLINE searching and specialised sessions such as pharmaceutical patents searching. A contribution to an international teaching collaboration in Haiti where workshops had to be thoroughly adapted to the clientele is also presented. Online guides addressing information literacy topics complement the programme. RESULTS AND EVALUATION A small team of librarians and technicians taught 276 hours of library instruction (LI) during the 2011-2012 academic year. Methods used for evaluating information skills include scoring features of literature searches and user satisfaction surveys. DISCUSSION Privileged contacts between librarians and faculty resulting from embedded LI as well as from active participation in library committees result in a growing reputation of library services across academic departments and bring forth collaboration opportunities. Sustainability and evolution of the LI programme is warranted by frequent communication with partners in the clinical field, active involvement in academic networks and health library associations, and reflective professional strategies.}, + keywords = {information retrieval, curriculum, information literacy, Universities, Organizational Case Studies}, + year = {2013}, +} + +@Book{, + author = {Coiro, Julie and Knobel, Michele and Lankshear, Colin and Leu, Donald}, + title = {Handbook of research on new literacies}, + publisher = {Routledge}, + year = {2014}, +} + +@Article{, + author = {Correia, Ana and Teixeira, José}, + title = {Information literacy}, + pages = {311-320}, + volume = {27}, + abstract = {This paper aims to provide an overview of some of the most recent developments in concepts and practices associated with information literacy worldwide, revealing the paradox that, while information literacy is a key discipline of the information society and knowledge economy and is well-understood in its broader sense, it has made little progress educationally, save for a few exceptions in countries such as Australia, the USA, Canada and the UK. Deriving from the authors' background as university professors, the paper concentrates on approaches to promote information literacy in higher education. The paper concludes by pointing to the need to expand the debate on information literacy and how to raise ethical and moral concerns in the use of the Internet and the new technologies. It also explores the potential role that the European Commission eSafe (2003-2004) programme can play to encourage research and practice on information literacy in its widest sense, as an intrinsic competency in the fight against the effects of disseminating illegal and harmful content through online and other new technologies.}, + keywords = {internet, information literacy}, + year = {2003}, +} + +@Book{, + author = {Cox, Christopher}, + title = {Information literacy instruction handbook}, + publisher = {Association of College and Research Libraries}, + year = {2008}, +} + +@Article{, + author = {Downes, Stephen}, + title = {Models for sustainable open educational resources}, + year = {2007}, +} + +@Book{, + author = {Eisenberg, Michael and Lowe, Carrie and Spitzer, Kathleen}, + title = {Information literacy essential skills for the information age}, + publisher = {Libraries Unlimited}, + abstract = {This is the definitive work on information literacy. Dr. Michael Eisenberg, known worldwide as one of the originators of the innovative Big6 Information Problem Solving Process, and frequent presenters on the subject Carrie A. Lowe and Kathleen L. Spitzer have extensively revised and updated this long-awaited second edition. Tracing the history of information literacy, the authors discuss its economic importance; examine past, present, and current research in the field; and explain how information literacy relates to the national standards transforming K-12 education and higher education today.}, + keywords = {information literacy}, + year = {2004}, +} + +@Book{, + author = {Fulton, Crystal}, + title = {Information pathways}, + publisher = {Scarecrow Press}, + year = {2010}, +} + +@Book{, + title = {A guide to faculty development}, + editor = {Gillespie, Kay}, + publisher = {Jossey-Bass}, + abstract = {From the Back Cover Prepared under the auspices of the Professional and Organizational Development (POD) Network in Higher Education, this book is a fundamental resource for faculty developers, as well as for faculty and administrators interested in promoting and sustaining faculty development within their institution. Based on POD's classic volume, A Handbook for New Practitioners, this new book offers up-to-date and relevant information on a range of faculty development topics, including: Setting up a faculty development program, including discussions of options, program types, and ten principles of good practice in creating and sustaining centers Assessing teaching practices: the evaluation process, individual consultation, classroom observation, and small group instructional diagnosis Offering a range of programs and services with focuses on promoting your program, staging successful workshops, producing newsletters, using technology, and creating a positive classroom climate Reaching specific audiences such as department chairs and poor teachers Using problem-based learning Addressing diversity issues, including multicultural faculty development activities and diversity in the classroom Establishing a successful faculty development committee}, + year = {2010}, +} + +@Book{, + author = {Gilton, Donna}, + title = {Lifelong learning in public libraries}, + pages = {245}, + publisher = {Scarecrow Press}, + abstract = {Lifelong Learning in Public Libraries demonstrates that public librarians can promote learning by combining the elements of Information Literacy Instruction (ILI) with traditional practices of public libraries. This approach contributes to the information enfranchisement of patrons and enhances the fulfillment of the traditional goals and purposes of libraries. Donna L. Gilton provides background on ILI and current developments in public library instruction and also examines educational theories and practices derived from the fields of behaviorism, cognitive psychology, constructivism, and educational humanism. Additional chapters delve into practices developed to deal with diverse groups and translate the theories and practices that have been outlined into a well-coordinated plan. The final chapters survey the role of libraries as cultural institutions. This book introduces the field of ILI to public librarians in the context of their own traditions and shows the unique ways that ILI can be implemented in public library settings. It encourages librarians to rethink practices to incorporate the principles of ILI and will enable public librarians to extend and enrich their instruction on information use. Lifelong Learning in Public Libraries is a valuable resource for librarians, educators, and leaders of public organizations. (Verlag).}, + year = {2012}, +} + +@Book{, + author = {Goad, Tom}, + title = {Information literacy and workplace performance}, + publisher = {Quorum Books}, + abstract = {Today's workplace demands skills for a knowledgeable, productive use of information. Success, both personal and organizational, comes from finding what is essential and optimizing its effectiveness. Goad teaches readers how to swim in a potentially overwhelming sea of data. This easy-to-read, lucid guide attends to basic skills, thinking and decision-making, creativity enhancement, innovation and risk taking, computer literacy, subject matter literacy, learning how to learn, and securement of on-the-job help.}, + keywords = {workplace literacy, information literacy}, + year = {2002}, +} + +@Article{, + author = {Gormally, Cara and Brickman, Peggy and Lutz, Mary}, + title = {Developing a Test of Scientific Literacy Skills (TOSLS): measuring undergraduates' evaluation of scientific information and arguments}, + pages = {364-377}, + volume = {11}, + abstract = {Life sciences faculty agree that developing scientific literacy is an integral part of undergraduate education and report that they teach these skills. However, few measures of scientific literacy are available to assess students' proficiency in using scientific literacy skills to solve scenarios in and beyond the undergraduate biology classroom. In this paper, we describe the development, validation, and testing of the Test of Scientific Literacy Skills (TOSLS) in five general education biology classes at three undergraduate institutions. The test measures skills related to major aspects of scientific literacy: recognizing and analyzing the use of methods of inquiry that lead to scientific knowledge and the ability to organize, analyze, and interpret quantitative data and scientific information. Measures of validity included correspondence between items and scientific literacy goals of the National Research Council and Project 2061, findings from a survey of biology faculty, expert biology educator reviews, student interviews, and statistical analyses. Classroom testing contexts varied both in terms of student demographics and pedagogical approaches. We propose that biology instructors can use the TOSLS to evaluate their students' proficiencies in using scientific literacy skills and to document the impacts of curricular reform on students' scientific literacy.}, + keywords = {Demography, learning, Knowledge}, + year = {2012}, +} + +@Article{, + author = {Gouveia, Luis}, + title = {Emergent skills in higher education: from know-how to know-where, know-who, know-what, know-when and know-why}, + year = {2002}, +} + +@Article{, + author = {Grafstein, Ann}, + title = {A discipline-based approach to information literacy}, + pages = {197-204}, + volume = {28}, + abstract = {This article, which proposes a discipline-based approach to teaching information literacy, argues that the responsibility for teaching information literacy should be shared throughout an academic institution, rather than limited to the library. An outline of the complementary responsibilities of librarians and classroom faculty in teaching information literacy is presented.}, + keywords = {training sessions, evaluation, information literacy, teaching}, + year = {2002}, +} + +@Book{, + author = {Grassian, Esther and Kaplowitz, Joan}, + title = {Information literacy instruction}, + publisher = {Neal-Schuman}, + abstract = {For techno-stressed librarians, the authors address the pressing questions of what to do, how to do it, when to do it, and how to measure success. They overview core issues in information literacy instruction (ILI), then discuss learning theory, library anxiety, critical thinking and active learning; planning and delivering ILI; and the future of ILI. Chapters contain self-tests, sample scenarios and forms, and further reading. The CD-ROM offers supporting instructional materials (e.g., Web pages, and a teaching with technology checklist). Grassian and Kaplowitz alternate teaching a "User Education/Bibliographic Instruction" course at UCLA. Annotation c. Book News, Inc., Portland, OR}, + keywords = {information literacy}, + year = {2009}, +} + +@Article{, + author = {Hamilton, Angela and Chang, Kayo and Williams, Brett and Koopmans, Heather}, + title = {International Perspectives on Information Literacy: A Panel Discussion}, + year = {2014}, +} + +@Article{, + author = {Harris, Robert}, + title = {Evaluating Internet Research Sources}, + keywords = {CARS, information quality}, +} + +@Article{, + author = {Heinrichs, John and Lim, Jeen-su}, + title = {Information literacy and office tool competencies}, + pages = {153-164}, + volume = {85}, + year = {2010}, +} + +@Book{, + author = {Huang, Kuan-Tsae and Wang, Richard and Lee, Yang}, + title = {Quality Information and Knowledge}, + publisher = {Prentice Hall}, + abstract = {Three leaders in intellectual capital management, Dr. Kuan-Tsae Huang, Professor Yang W. Lee, and Professor Richard Y. Wang, show how information can be assessed, evaluated, managed, and promulgated to make your business more responsive, efficient, and effective. They illustrate their ideas with real-world examples of companies that have faced million-dollar losses due to poor data management, as well as industry leaders who have prospered through Total Data Quality Management.}, + keywords = {information quality, knowledge management}, + year = {1998}, +} + +@Article{, + author = {Hyldegård, Jette}, + title = {Beyond the search process - Exploring group members' information behavior in context}, + pages = {142-158}, + volume = {45}, + abstract = {This paper reports on the findings from a longitudinal case study exploring Kuhlthau’s information search process (ISP)-model in a group based academic setting. The research focus is on group members’ activities and cognitive and emotional experiences during the task process of writing an assignment. It is investigated if group members’ information behavior differ from the individual information seeker in the ISP-model and to what extent this behavior is influenced by contextual (work task) and social (group work) factors. Three groups of LIS students were followed during a 14 weeks period in 2004/2005 (10 participants). Quantitative and qualitative methods were employed, such as demographic surveys, process surveys, diaries and interviews. Similarities in behavior were found between group members and the individual in Kuhlthau’s ISP-model with regard to the general stages of information seeking, the cognitive pattern associated with focus formulation and the tendency towards an increase in writing activities while searching activities decreased. Differences in behavior were also found, which were associated with contextual and social factors beyond the mere search process. It is concluded that the ISP-model does not fully comply with group members’ problem solving process and the involved information seeking behavior. Further, complex academic problem solving seems to be even more complex when it is performed in a group based setting. The study contributes with a new conceptual understanding of students’ behavior in small groups.}, + keywords = {information search process}, + year = {2009}, +} + +@Article{, + title = {35th annual IATUL Conference}, + editor = {International Association of Technological University Libraries}, + year = {2014}, +} + +@Article{, + author = {Janke, Robert and Pesut, Barbara and Erbacker, Lynnelle}, + title = {Promoting information literacy through collaborative service learning in an undergraduate research course}, + pages = {920-923}, + volume = {32}, + abstract = {Information literacy is an important foundation for evidence-based nursing practice. Librarians, the experts in information literacy, are important collaborators in the process of teaching nursing students information literacy skills. In this article we describe a service learning project, offered in a third year nursing research course, designed to teach information literacy and to enhance students' appreciation of the role of evidence in nursing practice. Students worked in groups, and under the guidance of a nursing instructor and librarian, to answer a question posed by practice-based partners. Through the project students learned essential skills of refining a question, identifying systematic search strategies, gleaning essential information from a study and using a bibliographic management tool. Evaluation of the project indicated that although the project was challenging and labour intensive students felt they learned important skills for their future practice. Several recommendations for further enhancing the collaboration are made.}, + keywords = {learning, Attitude of Health Personnel, information literacy, Cooperative Behavior}, + year = {2012}, +} + +@Article{, + author = {Johnston, Bill and Weber, Sheila}, + title = {Information Literacy in Higher Education}, + pages = {335-352}, + volume = {28}, + abstract = {The aim of this article is to review and critique the current state of information literacy education, and propose a way forward. Key developments in the UK, USA and Australia are reviewed, including standards and models of information literacy. The place of information literacy in the higher education curriculum is discussed. Problems with current practice are identified, in particular, prescriptive guidelines which encourage a surface learning approach; delivery by librarians who may lack both educational training and power to influence the curriculum; and poor assessment methods. Alternative approaches are highlighted. A case study of a credit bearing information literacy class, offered by the authors to undergraduates at Strathclyde Business School, is analysed, to argue that information literacy can stand alone as a subject of study, with appropriate learning and teaching methods. The article concludes by proposing models for the information literate student and the information literate university.}, + keywords = {ACRL, curriculum, CAUL}, + year = {2003}, +} + +@Article{, + author = {Joint, Nicholas}, + title = {Information literacy evaluation}, + pages = {322-334}, + volume = {21}, + abstract = {Evaluates the evidence for and against the effectiveness of electronically delivered information literacy programmes in comparison with personal contact teaching. Shows that computer-aided learning approaches to user education have great strengths but also undeniable weaknesses. The way to promote higher levels of information literacy in the electronic library environment is to increase the levels of computer-led delivery, as long as this is done in such a way as to maximise the strengths of the format. This is best done in the context of an integrated virtual learning environment (VLE). Such an environment would promote information literacy synergistically as one of a suite of multiple electronic literacies that can be learnt alongside each other. Exploiting a VLE in this way would also facilitate the integration of information literacy into the broader curriculum. Computer-based user education to date could be viewed as having been constrained by a need to imitate well-established, tutor-delivered user education methods. Without an ambitious programme of integration into larger scale e-learning models, this pattern of constraint will continue.}, + keywords = {evaluation, E-Learning}, + year = {2003}, +} + +@Article{, + author = {Joint, Nicholas}, + title = {eLiteracy or information literacy: which concept should we prefer?}, + pages = {505-507}, + volume = {54}, + abstract = {Purpose - To give a comparative analysis of the validity of the concepts of eLiteracy (eL) and Information Literacy (IL). Design/methodology/approach - A purely abstract, conceptual discussion. Findings - That eLiteracy and Information Literacy are different but mutually compatible concepts with validity within specific contexts. Research limitations/implications - An entirely abstract discussion of theoretical descriptions. Practical implications - By defining concepts clearly, this paper attempts to inform and clarify the framework for practical LIS research. Originality/value - In contrast to other discussions (which tend to focus either on eLiteracy, or on Information Literacy) this editorial squarely addresses criticism of the eL concept in comparison to IL. It sets out the difference with IL and recognises the strength of both ideas, as long as they are each applied within their appropriate frame of reference.}, + keywords = {learning, information literacy, e-literacy}, + year = {2005}, +} + +@Article{, + author = {Julien, Heidi and Breu, Reegan}, + title = {Instructional practices in Canadian public libraries}, + pages = {281-301}, + volume = {27}, + abstract = {This article reports on a national survey of information literacy (IL) instruction in urban and rural public libraries in Canada and public librarians' attitudes towards these services. The survey is the first phase of a study exploring the actual and potential role of Canadian public libraries in developing the public's IL skills. Despite an urgent need to develop such skills, and expectations that public libraries fulfill that role (specifically articulated by the federal government through its “Connecting Canadians” initiative), the real experiences of public librarians and of public library customers may not bear out this expectation. The survey analyzes the role of the public library, as a non-profit institution and primary stakeholder, in advancing federal government information policy. In addition, the study gives voice to a community of professionals expected to fulfill an important federal policy function, but provided with few resources with which to do so.}, + keywords = {information literacy, investigation, public library}, + year = {2005}, +} + +@Article{, + author = {Kingsley, Karl and Galbraith, Gillian and Herring, Matthew and Stowers, Eva and Stewart, Tanis and Kingsley, Karla}, + title = {Why not just Google it? An assessment of information literacy skills in a biomedical science curriculum}, + pages = {17}, + volume = {11}, + abstract = {BACKGROUND Few issues in higher education are as fundamental as the ability to search for, evaluate, and synthesize information. The need to develop information literacy, the process of finding, retrieving, organizing, and evaluating the ever-expanding collection of online information, has precipitated the need for training in skill-based competencies in higher education, as well as medical and dental education. METHODS The current study evaluated the information literacy skills of first-year dental students, consisting of two, consecutive dental student cohorts (n = 160). An assignment designed to evaluate information literacy skills was conducted. In addition, a survey of student online search engine or database preferences was conducted to identify any significant associations. Subsequently, an intervention was developed, based upon the results of the assessment and survey, to address any deficiencies in information literacy. RESULTS Nearly half of students (n = 70/160 or 43%) missed one or more question components that required finding an evidence-based citation. Analysis of the survey revealed a significantly higher percentage of students who provided incorrect responses (n = 53/70 or 75.7%) reported using Google as their preferred online search method (p < 0.01). In contrast, a significantly higher percentage of students who reported using PubMed (n = 39/45 or 86.7%) were able to provide correct responses (p < 0.01). Following a one-hour intervention by a health science librarian, virtually all students were able to find and retrieve evidence-based materials for subsequent coursework. CONCLUSIONS This study confirmed that information literacy among this student population was lacking and that integration of modules within the curriculum can help students to filter and establish the quality of online information, a critical component in the training of new health care professionals. Furthermore, incorporation of these modules early in the curriculum may be of significant value to other dental, medical, health care, and professional schools with similar goals of incorporating the evidence base into teaching and learning activities.}, + keywords = {Adult, Young Adult, Educational Measurement, curriculum, information literacy, Data Collection}, + year = {2011}, +} + +@Article{, + author = {Knapp, Patricia}, + title = {A Suggested Program of College Instruction in the Use of the Library}, + pages = {224-231}, + volume = {26}, + year = {1956}, +} + +@Article{, + author = {Kreps, Dennis}, + title = {Information Literacy: The Search for Practices and Policies}, + pages = {9-12}, + volume = {16}, + year = {2014}, +} + +@Article{, + author = {Lacy, Meagan}, + title = {Sources: Information Literacy Instruction That Works: A Guide to Teaching by Discipline and Student Population}, + pages = {367-368}, + volume = {53}, + year = {2014}, +} + +@Article{, + author = {Leino, Kaisa}, + title = {The relationship between ICT use and reading literacy}, +} + +@Article{, + author = {Lloyd, Annemaree}, + title = {Information Literacy: The Meta-Competency of the Knowledge Economy?}, + pages = {87-91}, + volume = {35}, + abstract = {Information literacy is a meta-competency that encapsulates the generic skills of defining, locating and accessing information. It is an essential and integral competency for both the knowledge worker and effective knowledge management. Librarians need to realign their roles from providers and organizers of information, to facilitators and educators of clients’ information access and process. This requires librarians to develop partnerships with workplace communities so as to understand the role that information plays in the knowledge economy; and to develop a new language that is relevant to workplace communities and ties information literacy instruction to the authentic situations of the workplace. Information literacy is a meta-competency: it is the currency of the knowledge economy. The themes introduced in this paper are drawn from the current doctoral research of the author. The research examines what it means to individuals to be information literate in a workplace context, and how information literacy manifests and transfers in to workplace practice.}, + keywords = {information literacy}, + year = {2003}, +} + +@Article{, + author = {Lloyd, Annemaree}, + title = {Information literacy}, + pages = {82-88}, + volume = {37}, + abstract = {This article reports on doctoral research which explored the meaning and role of information literacy among a specific group of workers - firefighters. An alternative concept of information literacy and a broader definition of information literate people are introduced. The article suggests that librarians are currently bound by an educational concept of what information literacy is and how it manifests itself. They must begin to engage with and explore other contexts and practices that facilitate becoming information literate, in order to understand the role of information literacy in learning outside educational settings. By engaging with different contexts, concepts and truths, our provision of information literacy education will be enhanced and contribute towards learning practices which are transformative, generic and transferable.}, + keywords = {information literacy}, + year = {2005}, +} + +@Book{, + author = {Lombard, Emmett}, + title = {Pursuing information literacy}, + publisher = {Chandos}, + year = {2010}, +} + +@Article{, + author = {Marcum, J.}, + title = {Rethinking Information Literacy}, + pages = {1}, + volume = {72}, + year = {2002}, +} + +@Book{, + author = {Markey, Karen and Leeder, Chris and Rieh, Soo}, + title = {Designing Online Information Literacy Games Students Want to Play}, + pages = {286}, + publisher = {Rowman & Littlefield}, + abstract = {Designing Online Information Literacy Games Students Want to Play sets the record straight with regard to the promise of games for motivating and teaching students in educational environments. The authors draw on their experience designing the BiblioBouts information literacy game, deploying it in dozens of college classrooms across the country, and evaluating its effectiveness for teaching students how to conduct library research. The multi-modal evaluation of BiblioBouts involved qualitative and quantitative data collection methods and analyses. Drawing on the evaluation, the authors describe how students played this particular information literacy game and make recommendations for the design of future information literacy games. You’ll learn how the game’s design evolved in response to student input and how students played the game including their attitudes about playing games to develop information literacy skills and concepts specifically and playing educational games generally. The authors describe how students benefited as a result of playing the game. Drawing from their own first-hand experience, research, and networking, the authors feature best practices that educators and game designers in LIS specifically and other educational fields generally need to know so that they build classroom games that students want to play. Best practices topics covered include pre-game instruction, rewards, feedback, the ability to review/change actions, ideal timing, and more. The final section of the book covers important concepts for future information literacy game design.}, + year = {2014}, +} + +@Book{, + title = {Information and IT literacy}, + editor = {Martin, Allan and Rader, Hannelore}, + publisher = {Facet}, + keywords = {computer literacy, information literacy}, + year = {2004}, +} + +@Book{, + author = {McAdoo, Monty}, + title = {Building bridges}, + publisher = {American Library Association}, + year = {2010}, +} + +@Article{, + author = {McLoughlin, Catherine and Luca, Joe}, + title = {Learning Through Self-Direction}, + abstract = {There is a growing emphasis in tertiary education that students should develop professional and work related skills within the course of their education. In order to learn these skills effectively, students must be able to learn in a self-regulated way, which means having the capacity to plan, set goals and analyse tasks to achieve particular outcomes. Often referred to as self-directed or metacognitive skills, these abilities characterise learners who are equipped with a range of personal transferable skills. Designing learning activities that support self-direction must become one of the core concerns of tertiary educators if enduring learning outcomes are to be achieved. This paper takes as its focus a professional learning context where students learn project management and work related skills in the final year of their studies. In this study, students were required to submit solutions to an on-line discussion space, where other teams provided peer assessment and constructive feedback. Analysis of verbal transactions informed by socio-cultural theory showed that successful learning took place, the evidence for which was the quality of group processes, problem solving and verbal interaction, together with personal reflections on task and self-reports of skills developed. Several important issues emerge from this research that have implications for the design of online courses for professional learning at tertiary level. These include task design that enables team-based problem solving, feedback processes, autonomy in student learning and support for reflection.}, + keywords = {independent learning, task design, E-Learning}, + year = {2000}, +} + +@Book{, + author = {Menager, Rosemarie and Paulos, Lyn}, + title = {Quick coach guide to avoiding plagiarism}, + publisher = {Heinle & Heinle}, + year = {2009}, +} + +@Book{, + author = {Mühlbacher, Susanne}, + title = {Information literacy in enterprises}, + pages = {338}, + publisher = {Hülsbusch}, + volume = {51}, + year = {2009}, +} + +@Book{, + author = {Mutch, Alistair}, + title = {Managing information and knowledge in organizations}, + pages = {267}, + publisher = {Routledge}, + keywords = {Organizational learning, knowledge management, Information technology, Management}, + year = {2008}, +} + +@Article{, + title = {Information Literacy}, + editor = {NHS Education for Scotland}, +} + +@Article{, + author = {Niederhauser, Jürg and Meurer, Peter and Schluchter, Manfred}, + title = {Writing a Research Paper with Citavi 5}, +} + +@Article{, + title = {Developing digital literacies}, + editor = {Northumbria University}, + pages = {27}, + keywords = {information literacy}, + year = {2014}, +} + +@Book{, + author = {Pears, Richard and Shields, Graham}, + title = {Cite them right}, + pages = {120}, + publisher = {Palgrave Macmillan}, + year = {2013}, +} + +@Book{, + title = {Teaching and assessing information skills in the twenty-first century}, + editor = {Rader, Hannelore}, + publisher = {University of Illinois Press}, + keywords = {information literacy}, + year = {2002}, +} + +@Book{, + title = {Information literacy instruction that works a guide to teaching by discipline and student population}, + editor = {Ragains, Patrick}, + publisher = {Neal-Schuman}, + year = {2013}, +} + +@Article{, + author = {Robertson, James}, + title = {10 principles of effective information management}, + abstract = {This article has outlined ten key principles of effective information management. These focus on the organisational and cultural changes required to drive forward improvements. The also outline a pragmatic, step-by-step approach to implementing solutions that starts with addressing key needs and building support for further initiatives. A focus on adoption then ensures that staff actually use the solutions that are deployed.}, + keywords = {information management}, + year = {2005}, +} + +@Article{, + author = {Rogow, Faith}, + title = {Shifting from Media to Literacy}, + pages = {30-34}, + volume = {48}, + abstract = {Reflecting on how media literacy has changed in the United States in recent years, this article argues that the field has shifted from an emphasis on media to an emphasis on literacy. The result is a change in practice that makes more pedagogical sense than media literacy conceived of as an ideological or political movement.}, + keywords = {information literacy, media literacy}, + year = {2004}, +} + +@Book{, + author = {Ross-Larson, Bruce}, + title = {Writing for the Information Age}, + publisher = {W.W. Norton}, + abstract = {In today's society, a wealth of information can be obtained at the touch of a button. But while information is abundant, time, unfortunately, is not. How do you present your material in a way that grabs-and holds-the attention of your audience? Whether you are writing a report, drafting email, creating a Power Point presentation, or building a Web site, this book shows how to use language that is easily accessible, never oppressive. It explains how to organize content in progressive, digestible detail, allowing readers to navigate a document's contents and to move quickly to areas of interest. And it describes how to link ideas within a document and across the mediums of print, Internet, and CD-ROM. Each two-page spread covers one subject and is linked to other subjects for further study. More than one hundred sets of recommendations, backed by concrete examples, cover everything from common grammatical mistakes to the basics of using charts and tables. Author Biography: Bruce Ross-Larson is the founder of the American Writing Institute and president of Communications Development Incorporated. He lives in Washington, DC. His books include Edit Yourself, Powerful Paragraphs, Riveting Reports, and Stunning Sentences.}, + year = {2002}, +} + +@Book{, + author = {Rumsey, Sally}, + title = {How to find information}, + publisher = {Open University Press}, + abstract = {Anyone setting out to research a topic, whether undertaking a project, report, dissertation or PhD, needs to find appropriate resources to inform their work and support their arguments. This book enables researchers to become expert at tracking down, accessing and evaluating information." This concise and contemporary book covers all major areas of information seeking and selection for researchers. Written by an information professional, it is invaluable for anyone researching a topic, including academics and students, public and government researchers and researchers in the private sector.}, + keywords = {research methodology, information retrieval, information resources, information literacy, plagiarism}, + year = {2008}, +} + +@Article{, + author = {Senkbeil, Martin and Ihme, Jan and Wittwer, Jörg}, + title = {The Test of Technological and Information Literacy (TILT) in the National Educational Panel Study}, + pages = {139-161}, + volume = {5}, + abstract = {#englisch#In this article, we present an assessment framework for assessing information and communication technologies literacy (ICT literacy) in the context of the National Educational Panel Study (NEPS). NEPS is the first study aiming to examine ICT literacy longitudinally across the lifespan using objective paper-pencil test instruments. To do so, it is necessary to develop reliable and valid test instruments that are capable of assessing ICT literacy longitudinally. On the basis of an assessment framework, we developed in an initial step an item pool for assessing the ICT literacy of secondary school students and tested the item pool in three pilot studies (Grade 5, 7 and 9). The item and scale analyses provided satisfying results and the item pool proved to be suitable for assessing ICT literacy longitudinally. In addition, validity analyses showed a satisfactory content validity and a high test fairness with regard to gender and school type. Concerning criterion validity, there were expected correlations with variables of computer familiarity. (DIPF/Orig.).;;#deutsch#Im Mittelpunkt dieses Beitrags steht die Vorstellung und empirische Erprobung einer Rahmen- und Testkonzeption zur Erfassung von Information and Communication Technologies Literacy (ICT Literacy) im Rahmen der National Educational Panel Study (NEPS). Das Ziel dieser Studie ist es, ICT Literacy anhand längsschnittlich angelegter Datenerhebungen über die gesamte Lebensspanne und mit Hilfe objektiver und zunächst Papier-und-Bleistiftbasierter Testverfahren zu erfassen. Deshalb ist es notwendig, reliable und valide Testinstrumente zu entwickeln, die sich für die längsschnittliche Erfassung von ICT Literacy eignen. Hierfür wurde auf der Grundlage der Rahmen- und Testkonzeption zunächst ein Itempool für Schülerinnen und Schüler der Sekundarstufe I entwickelt und in drei Pilotstudien (Klassenstufen 5, 7 und 9) erprobt. Für den Itempool wurden zufriedenstellende Item- und Skalenwerte ermittelt. Die Ergebnisse wiesen darüber hinaus auf die Eignung des Instrumentariums für längsschnittliche Erhebungen hin. Die Validitätsprüfungen sprachen für eine ausreichende inhaltliche Validität des Itempools und seine Fairness im Hinblick auf Geschlecht und Schulart. Im Sinne der Kriteriumsvalidität ergaben sich inhaltlich gut interpretierbare Zusammenhänge mit Merkmalen der Computervertrautheit. (DIPF/Orig.).}, + year = {2013}, +} + +@Article{, + author = {Sharp, Laurie}, + title = {Literacy in the Digital Age}, + pages = {74-82}, + volume = {24}, + abstract = {21st century learners arrive at school with technological knowledge and skills that necessitate the need for educational systems to transform instructional practices to meet learners’ needs. The International Society for Technology in Education (ISTE) developed ISTE Standards for students, teachers, administrators, coaches, and computer science educators that define best practices and standards of excellence with technology. Literacy educators are greatly impacted by the technological shift in education and require a deep level of proficiency with the ISTE Standards for Teachers. The purpose of this article is to provide an overview of the ISTE Standards for Teachers and provide literacy educators with an evaluative tool to measure their adeptness with the knowledge and skills needed to teach in the digital age.}, + year = {2014}, +} + +@Book{, + author = {Sharpless Smith, Susan}, + title = {Web Based Instruction}, + publisher = {American Library Association}, + abstract = {Expanding on the popular, practical how-to guide for public, academic, school, and special libraries, technology expert Susan Sharpless Smith offers library instructors the confidence to take Web-based instruction into their own hands. Smith has thoroughly updated Web-Based Instruction: A Guide for Libraries to include new tools and trends, including current browsers, access methods, hardware, and software. She also supplies tips to secure project funding and provides strategic guidance for all types of libraries. This completely revised edition also * Builds Web instruction advice on a foundation of the latest research in how learning takes place * Translates technical Web-speak into plain English, so even nonexperts can make effective use of the Web in their teaching * Includes an accompanying Web gallery, providing examples of screen shots and links to exemplary programs * Shows instructors best practices for incorporating the Web into teaching A proven winner, this newly revised hands-on manual remains indispensable. Librarians facing the challenge of creating a Web-based instruction program will find easy-to-understand guidance to deliver a productive and memorable experience.}, + keywords = {instruction concepts, web based training}, + year = {2010}, +} + +@Book{, + author = {Smith, Jane and Churchill, Lisa and Mason, Lucy}, + title = {Teaching & testing information literacy skills}, + pages = {138}, + publisher = {Linworth Books}, + abstract = {Regardless of what educators maintain, the general public believes test scores accurately reflect student performance and school success. This situation places enormous pressure on schools to improve, and it offers opportunities for library media specialists to help students learn valuable information literacy skills that in turn will improve test scores. By joining forces with educators, media specialists can demonstrate how information literacy skills strengthen student performance as well as instruct teachers on teaching and testing information skills within the context of classroom content. Teaching and Testing Information Literacy Skills will help library media specialists educate teachers on information literacy skills and increase collaboration for effective test-taking preparation.}, + keywords = {instruction concepts, information literacy, learning success tracking}, + year = {2005}, +} + +@Article{, + author = {Snavely, Loanne and Cooper, Natasha}, + title = {The information literacy debate}, + pages = {9-14}, + volume = {23}, + abstract = {The issues surrounding the term and the meaning of the phrase information literacy have propelled academic librarians into a debate over their role in meeting the educational mission of an institution of higher education and over what they should be calling what they are doing.}, + year = {1997}, +} + +@Book{, + author = {Stark, Birgit}, + title = {Die Googleisierung der Informationssuche}, + pages = {327}, + publisher = {De Gruyter}, + volume = {10}, + year = {2014}, +} + +@Book{, + author = {Staw, Jane}, + title = {Unstuck}, + publisher = {St. Martin's Griffin}, + abstract = {None of us is immune to writer's block. From well-known novelists to students, associates in business and law firms, and even those who struggle to sit down to write personal correspondence or journal entries -- everyone who writes has experienced either brief moments or longer periods when the words simply won't come. In Unstuck, poet, author and writing coach Jane Anne Staw uncovers the reasons we get blocked - from practical to emotional, and many in between - and offers powerful ways to get writing again. Based on her experiences working with writers as well as her own struggle with writer's block, Staw provides comfort and encouragement, along with effective strategies for working through this common yet vexing problem. Topics include: understanding what's behind the block * handling anxiety and fear * carving out time and space to write * clearing out old beliefs and doubts * techniques to relax and begin * managing your expectations as well as those of family and friends * experimenting with genre, voice, and subject matter * defusing the emotional traps that sabotage progress and success * ending the struggle and regaining confidence and freedom by finding your true voice - and using it. Writers of all levels will find solace, support, and help in this book, leading them to an even deeper connection with their work and more productivity on the page.}, + year = {2005}, +} + +@Article{, + author = {Strong, Diane and Lee, Yang and Wang, Richard}, + title = {10 Potholes in the Road to Information Quality}, + pages = {38-46}, + volume = {30}, + keywords = {information quality}, + year = {1997}, +} + +@Article{, + author = {Swiss Academic Software GmbH}, + title = {Citavi}, + abstract = {Citavi supports the entire research process: from searching for sources to finishing your paper.}, + keywords = {Citavi, reference management}, + year = {2015}, +} + +@Book{, + author = {Thompson, Kim and Jaeger, Paul and Taylor, Natalie and Bertot, John}, + title = {Digital Literacy and Digital Inclusion}, + pages = {200}, + publisher = {Rowman & Littlefield}, + abstract = {Digital Literacy and Digital Inclusion: Information Policy and the Public Library examines the interrelationships between digital literacy, digital inclusion, and public policy, emphasizing the impacts of these policy decisions on the ability of individuals and communities to successfully participate in the information society. This book is the first detailed consideration of digital literacy and digital inclusion as policy problems and as core issues in information policy and libraries. The unique features of this book include drawing together the key themes and findings from the discourse on digital literacy and digital inclusion widely spread among many fields; analyzing digital literacy and digital inclusion as policy issues, both being driven and regulated by policy; building on a wealth of original research conducted by the authors using different quantitative and qualitative data collection approaches on four different continents when analyzing these issues, providing unique examples, case studies, and perspectives; using information behavior theory to provide important insights about these issues at individual, community, and political levels; providing recommendations to inform practice in libraries and help libraries to frame their advocacy for public policies that support literacy and inclusion; and providing policy recommendations to improve the creation and implementation of policy instruments that promote digital literacy and digital inclusion. The authors of this book have been involved in this research for many years, and their experience provides a broad view across the literature, inherent problems, and national perspectives. This breadth allows this book to offer comprehensive policy recommendations, solutions, and best practices for an area that is fragmented in discourse, practice, and policy.}, + year = {2014}, +} + +@Book{, + author = {Townsend, Kevin and Cufí, Carles and Akiba and Davidson, Robert}, + title = {Getting started with Bluetooth Low Energy}, + pages = {164}, + publisher = {O'Reilly}, + keywords = {Bluetooth technology}, + year = {2014}, +} + +@Article{, + author = {Trauth, Eileen}, + title = {A college curriculum for information literacy}, + pages = {251-258}, + volume = {2}, + abstract = {Educators are currently being challenged to develop curricula which will prepare students for life in an information-based society. Given the computer literacy efforts at the elementary and secondary levels, a college-level curriculum should build upon those skills by focusing on information literacy. Information literacy is the ability to acquire, process, use and communicate the information which is needed in one's personal and work life, regardless of the technology involved. There are three components of this information literacy curriculum. The Information Environment provides the motivation for understanding about technology and its uses. The Components of an Information System considers the acquisition and proper use of computer-based tools. Information Management is concerned with ensuring that relevant information is available, accurate and in a useful format. The intended students for this course are the end users, the non-computer science majors.}, + keywords = {computer literacy, curriculum, information literacy}, + year = {1986}, +} + +@Book{, + author = {University of Chicago Press}, + title = {The Chicago manual of style}, + pages = {XVII, 956}, + publisher = {University of Chicago Press}, + year = {2008}, +} + +@Article{, + author = {Urquhart, Christine and Thomas, Rhian and Spink, Siân and Fenton, Roger and Yeoman, Alison and Lonsdale, Ray and Armstrong, Chris and Banwell, Linda and Ray, Kathryn and Coulson, Graham and Rowley, Jennifer}, + title = {Student use of electronic information services in further education}, + pages = {347-362}, + volume = {25}, + abstract = {This paper presents a profile of user behaviour in relation to the use of electronic information services (EIS), information skills, and the role of training and wider learning experiences in UK further education colleges. The research was conducted under the JISC User Behaviour Monitoring and Evaluation Framework. Work was conducted in two strands, by two project teams, JUSTEIS and JUBILEE. JUSTEIS profiled the use of EIS and assessed the availability of EIS. JUBILEE objectives focussed on understanding the barriers and enablers, with a view to developing success criteria. JUSTEIS used a multi-stage stratified sampling process, and collected data from 270 respondents from 17 departments in the baseline survey (2001/2002). JUBILEE conducted in-depth fieldwork in five institutions and snapshot fieldwork in 10 institutions, collecting data from 528 respondents. Information skills and experience develop across work, home and study. There is a growing use of EIS in curriculum, but practice varies between institutions and disciplines. Tutors express concern about student's ability to evaluate and use the information that they find. Assignments can promote EIS use. The main categories of EIS used by students are search engines and organisational web sites. Search engines are the preferred search tools and search strategies are basic. Information skills are acquired through a variety of routes, with peer instruction, surfing and personal experience, instruction from tutors, and LIS induction and training all making an important contribution. The solutions to improving students’ information skills may include use of the Virtual Training Suites, but librarians need to adopt different roles in promoting and evaluating use of such tools.}, + keywords = {digital libraries, electronic information services, information literacy, continuing education, digital information resources}, + year = {2005}, +} + +@Article{, + author = {van Acker, Frederik and Vermeulen, Marjan and Kreijns, Karel and Lutgerink, Jan and van Buuren, Hans}, + title = {The role of knowledge sharing self-efficacy in sharing Open Educational Resources}, + pages = {136-144}, + volume = {39}, + year = {2014}, +} + +@Article{, + author = {Virkus, Sirje}, + title = {Information literacy in Europe}, + volume = {8}, + abstract = {Examines the developments in information literacy in Europe and provides an overview of the concepts used and discussed by European authors. Some examples of information literacy initiatives in schools and the higher education sector, as well as of institutions and organizations, projects and conferences concerned with information literacy, are given. Some research initiatives are also introduced. The overview is based on literature reviews and personal observations and involvement and presents a selective review.}, + keywords = {standards, research methodology, information literacy, historical development}, + year = {2003}, +} + +@Article{, + author = {Warmkessel, Marjorie and McCade, Joseph}, + title = {Integrating information literacy into the curriculum}, + pages = {80-88}, + volume = {15}, + abstract = {This article describes a two-week graduate course on information literacy, developed and taught by a librarian and a professor of industry and technology, and intended for teachers and librarians in elementary and secondary schools. Information literacy is not only the content of the course but also the basis of its structure: active, student-centered learning with several group assignments helps students develop skills in finding information, analyzing and interpreting it, and putting it to practical use. Both pedagogical and evaluation methods reflect recent educational reforms, and the team teaching provides a model of collaboration between teachers and librarians.}, + keywords = {curriculum}, + year = {1997}, +} + +@Article{, + author = {Weaver, Kari and Rhodes, Lynne}, + title = {Tracking Information Literacy Competencies through Institutional Assessments}, + year = {2014}, +} + +@Article{, + author = {Weber, Max}, + title = {Max Weber-Studienausgabe}, + editor = {Mommsen, Wolfgang and Schluchter, Wolfgang}, + publisher = {Mohr}, + year = {1994}, +} + +@Article{, + author = {Weiner, Sharon and Wang, Li}, + title = {Preparing Librarians to be Campus Leaders through Mapping and Integrating Information Literacy into Curriculum}, + keywords = {curriculum mapping, librarians, curriculum, information literacy, institutional assessment}, +} + +@Book{, + author = {Weyers, Jonathan and McMillan, Kathleen}, + title = {How to cite, reference & avoid plagiarism at university}, + publisher = {Pearson}, + year = {2013}, +} + +@Article{, + author = {Williamson, Kirsty and Asla, Terryl}, + title = {Information behavior of people in the fourth age: Implications for the conceptualization of information literacy}, + pages = {76-83}, + volume = {31}, + year = {2009}, +} + +@Article{, + author = {Windham, Cary}, + title = {Getting Past Google}, + editor = {Oblinger, Diana}, + abstract = {Many Net Generation students understand how to find information and post their own content online. However, they may have only limited knowledge about how to effectively evaluate online resources and ethically use them. Likewise, large numbers seem unaware of the limited control they may have over the personal information they divulge online and the implications that holds for how their content is used, by whom, and for what purposes. This student perspective on information literacy uses anecdotes, personal examples, and statistics on Net Generation Web usage to highlight gaps in students’ net savviness. Also discussed is how faculty, librarians, administrators, and students must work together to close those gaps.}, +} + +@Article{, + author = {Yaminfirooz, Mousa and Siamian, Hasan and Shahrabi, Afsaneh}, + title = {Librarians' Role in Development and Achievement of Central Library Users' Information Literacy}, + pages = {238-241}, + volume = {25}, + abstract = {INTRODUCTION Due to the development of technologies, communications, databases and information resource varieties in today's information age, our various social, economic, cultural and political needs cannot be fulfilled by relying merely on past knowledge and skills as done previously. Information literacy (IL) as a set of necessary skills for all of us is an effective way of treating new technologies and their effective application in our lives. The study aimed to survey the library users' views in the Central Library of Babol University of Medical Sciences (The Library), Iran, on the role and influences of librarians on their IL development and improvement. METHODS This analytical survey used a researcher-made questionnaire for data collection. Research population consisted of all users referring Information Unit of The Library during 22 September - 20 December 2010. Of them, 150 users participating in at least 5 workshops held by The Library were selected as the study sample. RESULTS Based on the findings, 52.7 percent of the subjects rated the influence of the librarians on their IL development much and very much. 44.7 percent claimed that they more acquired IL skills from librarians rather than others. 100 (63.3%) subjects preferred workshops held by the librarian to other workshops. CONCLUSION The users of Information Unit of The Library perceived the training IL skills by librarians as a main influencing factor in their IL development and achievement. This emphasized the necessity of teaching IL to users and training the librarians in better teaching IL skills to library user.}, + year = {2013}, +} + +@Article{, + author = {Hohmann, Tina}, + title = {Long Term Evaluation of Information Literacy Programme}, + abstract = {The Technische Universität München library was the first university library in Germany to be certified by TÜV with respect to its ISO 9001:2001 quality management. One of the main objectives of our quality management policy is to measure customer satisfaction not only in the short-term, but also over longer periods of time, in order to constantly develop and improve our services. To this end, TUM library management have decided to conduct a long term evaluation of its information literacy (IL) programme. We regularly ask course participants for feedback immediately after the events and evaluate these yearly. Additionally, we have started to survey long term changes in awareness and sustainability of course content. The library’s IL programme has been in place for over three years, and has thus generated sufficient data for reliable evaluation. The main object of our investigation is the assessment of effectiveness of our IL programme and further guidance as to how we can improve our services. We have been evaluating about 100 IL events, which took place between 6 and 24 months ago. Our study includes the four main types of workshops, which comprise basic and advanced literature search, referencing, and reference management. An online survey contains questions regarding the significance and the application of the skills taught during the courses. We also ask about any identified lack of resources or learning goals, and our e-learning material. The first phase of the evaluation was conducted between February and March 2014. This paper presents our findings from the evaluation project, our conclusions, and recommendations for the further development of the IL programme.}, + keywords = {information literacy, long-term evaluation, quality management}, +} + +@Article{, + author = {Jackson, Brian and MacMillan, Margy and Sinotte, Michelle}, + title = {Great Expectations: Results from a Faculty Survey of Students’ Information Literacy Proficiency}, + year = {2014}, +} + +@Article{, + author = {Lewis, Karron}, + title = {The Process of Individual Consultation}, + pages = {59-73}, +} + +@Article{, + author = {Ragains, Patrick and Emmons, Mark}, + title = {Setting the Stage for Information Literacy Education}, + pages = {Chapter 1}, +} + +@Article{, + author = {Sorcinelli, Mary}, + title = {Ten Principles of Good Practice in Creating and Sustaining Teaching and Learning Centers}, + pages = {9-23}, +} + +@Article{, + author = {Tiberius, Richard}, + title = {Problem-Based Learning}, + pages = {180-194}, +} + +@Article{, + author = {Weber, Max}, + title = {Wissenschaft als Beruf [1919]}, + pages = {1–23}, +} diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.ctv6bak b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.ctv6bak new file mode 100644 index 0000000000000000000000000000000000000000..28daa5b6625b43e8371526f60f2bb807c502245d GIT binary patch literal 159151 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�%v;G!NM=V# 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 ^uNqO&4Yo0d{r7)9|_THn`vkR!$f=PYv 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 L6P>5uA|U(^vdIRs literal 0 HcmV?d00001 diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.bib new file mode 100644 index 00000000000..94e71322533 --- /dev/null +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.bib @@ -0,0 +1,6 @@ +@Article{, + author = {Harris, Robert}, + title = {Evaluating Internet Research Sources}, + abstract = {Abstract}, + keywords = {CARS, information quality}, +} diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.ctv6bak b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest4.ctv6bak new file mode 100644 index 0000000000000000000000000000000000000000..9d1c9f0224f87b984e34deec1f2cc475bc1bc7db GIT binary patch literal 33681 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 F003u|O=185 literal 0 HcmV?d00001 From 7cb1b2301b864b389195ecc22fe520af1e00345b Mon Sep 17 00:00:00 2001 From: MLEP Date: Fri, 3 Jun 2022 01:21:35 +0200 Subject: [PATCH 04/27] Add ADR 25 to ADR Toc (#8882) --- docs/adr.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/adr.md b/docs/adr.md index 4af276c88c4..23a98d057ac 100644 --- a/docs/adr.md +++ b/docs/adr.md @@ -32,5 +32,6 @@ Architectural decisions for JabRef: * [ADR-0022](./adr/0022-remove-stop-words-during-query-transformation.md) - Remove stop words during query transformation * [ADR-0023](./adr/0023-localized-preferences.md) - Localized Preferences * [ADR-0024](./adr/0024-use-%23-as-indicator-for-BibTeX-string-constants.md) - Use `#` as indicator for BibTeX string constants +* [ADR-0025](./adr/0025-reviewdog-reviews.md) - Reviewdog findings are code reviews For new ADRs, please use [template.md](https://github.com/JabRef/jabref/tree/main/docs/adr/template.md) as basis. More information on the used format is available at [https://adr.github.io/madr/](https://adr.github.io/madr/). General information about architectural decision records is available at [https://adr.github.io/](https://adr.github.io). Then add them to the above list. From 35cd5d03e106c102b9d2aad3dbd54038ddc2728a Mon Sep 17 00:00:00 2001 From: Christoph Date: Sun, 5 Jun 2022 18:09:38 +0200 Subject: [PATCH 05/27] Fix linux file opening by using Process Builder (#8853) * Fix linux file opening by using Process Builder Fixes #8831 Co-authored-by: ThiloteE * checkstyle * add comment on nemo Co-authored-by: ThiloteE * Refactor terminal opening as well Co-authored-by: ThiloteE * Split ProcessBuilder arguments into Array Co-authored-by: Siedlerchr siedlerkiller@gmail.com * Refactor passing of dialog servie Set directory for terminal * fix checkstyle * checkstyle * remove blank line * add missing l10n * add changelog Co-authored-by: ThiloteE Co-authored-by: Benedikt Tutzer --- CHANGELOG.md | 1 + src/main/java/org/jabref/gui/JabRefFrame.java | 31 ++++---- .../org/jabref/gui/OpenConsoleAction.java | 10 ++- .../org/jabref/gui/SendAsEMailAction.java | 2 +- .../org/jabref/gui/desktop/JabRefDesktop.java | 20 ++--- .../jabref/gui/desktop/os/DefaultDesktop.java | 3 +- .../java/org/jabref/gui/desktop/os/Linux.java | 77 +++++++++++++------ .../jabref/gui/desktop/os/NativeDesktop.java | 5 +- .../java/org/jabref/gui/desktop/os/OSX.java | 8 +- .../org/jabref/gui/desktop/os/Windows.java | 3 +- .../DuplicateResolverDialog.java | 7 +- .../duplicationFinder/DuplicateSearch.java | 2 +- .../jabref/gui/edit/OpenBrowserAction.java | 7 +- .../jabref/gui/entryeditor/EntryEditor.java | 2 +- .../jabref/gui/exporter/ExportCommand.java | 2 +- .../gui/externalfiles/ImportHandler.java | 2 +- .../gui/fieldeditors/LinkedFileViewModel.java | 2 +- .../gui/groups/GroupDialogViewModel.java | 2 +- .../java/org/jabref/gui/help/HelpAction.java | 20 ++--- .../org/jabref/gui/help/NewVersionDialog.java | 7 +- .../org/jabref/gui/help/VersionWorker.java | 2 +- .../gui/importer/ImportEntriesViewModel.java | 4 +- .../importer/fetcher/WebSearchPaneView.java | 4 +- .../constants/ConstantsPropertiesView.java | 4 +- .../ConstantsPropertiesViewModel.java | 8 +- .../keypattern/KeyPatternPropertiesView.java | 2 +- .../gui/openoffice/OpenOfficePanel.java | 2 +- .../CitationKeyPatternTab.java | 2 +- .../CustomEditorFieldsTab.java | 2 +- .../jabref/gui/preferences/file/FileTab.java | 2 +- .../gui/preferences/general/GeneralTab.java | 2 +- .../linkedfiles/LinkedFilesTab.java | 2 +- .../nameformatter/NameFormatterTab.java | 2 +- .../gui/preferences/network/NetworkTab.java | 2 +- .../gui/preferences/table/TableTab.java | 2 +- .../SharedDatabaseLoginDialogViewModel.java | 2 +- src/main/resources/l10n/JabRef_en.properties | 1 + .../gui/util/OpenConsoleActionTest.java | 6 +- 38 files changed, 157 insertions(+), 107 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de3230689b5..e3d23b986ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,6 +33,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve ### Fixed +- We fixed an issue where "open folder" for linked files did not open the folder and did not select the file unter certain Linux desktop environments [#8679](https://github.com/JabRef/jabref/issues/8679), [#8849](https://github.com/JabRef/jabref/issues/8849) - We fixed an issue where the content of a big shared database library is not shown [#8788](https://github.com/JabRef/jabref/issues/8788) - We fixed the unnecessary horizontal scroll bar in group panel [#8467](https://github.com/JabRef/jabref/issues/8467) - We fixed an issue where the notification bar message, icon and actions appeared to be invisible. [#8761](https://github.com/JabRef/jabref/issues/8761) diff --git a/src/main/java/org/jabref/gui/JabRefFrame.java b/src/main/java/org/jabref/gui/JabRefFrame.java index c140bb85c0d..efd992dd688 100644 --- a/src/main/java/org/jabref/gui/JabRefFrame.java +++ b/src/main/java/org/jabref/gui/JabRefFrame.java @@ -124,6 +124,7 @@ import org.jabref.logic.autosaveandbackup.AutosaveManager; import org.jabref.logic.autosaveandbackup.BackupManager; import org.jabref.logic.citationstyle.CitationStyleOutputFormat; +import org.jabref.logic.help.HelpFile; import org.jabref.logic.importer.IdFetcher; import org.jabref.logic.importer.ImportCleanup; import org.jabref.logic.importer.ParserResult; @@ -337,7 +338,7 @@ public void openAction(String filePath) { * The MacAdapter calls this method when "About" is selected from the application menu. */ public void about() { - HelpAction.getMainHelpPageCommand().execute(); + new HelpAction(HelpFile.CONTENTS, dialogService).execute(); } /** @@ -534,7 +535,7 @@ private Node createToolbar() { new Separator(Orientation.VERTICAL), new HBox( - factory.createIconButton(StandardActions.OPEN_GITHUB, new OpenBrowserAction("https://github.com/JabRef/jabref")))); + factory.createIconButton(StandardActions.OPEN_GITHUB, new OpenBrowserAction("https://github.com/JabRef/jabref", dialogService)))); leftSpacer.setPrefWidth(50); leftSpacer.setMinWidth(Region.USE_PREF_SIZE); @@ -854,7 +855,7 @@ private MenuBar createMenu() { factory.createMenuItem(StandardActions.SHOW_PDF_VIEWER, new ShowDocumentViewerAction(stateManager, prefs)), factory.createMenuItem(StandardActions.EDIT_ENTRY, new OpenEntryEditorAction(this, stateManager)), - factory.createMenuItem(StandardActions.OPEN_CONSOLE, new OpenConsoleAction(stateManager, prefs)) + factory.createMenuItem(StandardActions.OPEN_CONSOLE, new OpenConsoleAction(stateManager, prefs, dialogService)) ); options.getItems().addAll( @@ -867,8 +868,8 @@ private MenuBar createMenu() { ); help.getItems().addAll( - factory.createMenuItem(StandardActions.HELP, HelpAction.getMainHelpPageCommand()), - factory.createMenuItem(StandardActions.OPEN_FORUM, new OpenBrowserAction("http://discourse.jabref.org/")), + factory.createMenuItem(StandardActions.HELP, new HelpAction(HelpFile.CONTENTS, dialogService)), + factory.createMenuItem(StandardActions.OPEN_FORUM, new OpenBrowserAction("http://discourse.jabref.org/", dialogService)), new SeparatorMenuItem(), @@ -876,19 +877,19 @@ private MenuBar createMenu() { new SeparatorMenuItem(), - factory.createMenuItem(StandardActions.DONATE, new OpenBrowserAction("https://donations.jabref.org")), + factory.createMenuItem(StandardActions.DONATE, new OpenBrowserAction("https://donations.jabref.org", dialogService)), factory.createMenuItem(StandardActions.SEARCH_FOR_UPDATES, new SearchForUpdateAction(Globals.BUILD_INFO, prefs.getInternalPreferences(), dialogService, Globals.TASK_EXECUTOR)), factory.createSubMenu(StandardActions.WEB_MENU, - factory.createMenuItem(StandardActions.OPEN_WEBPAGE, new OpenBrowserAction("https://jabref.org/")), - factory.createMenuItem(StandardActions.OPEN_BLOG, new OpenBrowserAction("https://blog.jabref.org/")), - factory.createMenuItem(StandardActions.OPEN_FACEBOOK, new OpenBrowserAction("https://www.facebook.com/JabRef/")), - factory.createMenuItem(StandardActions.OPEN_TWITTER, new OpenBrowserAction("https://twitter.com/jabref_org")), - factory.createMenuItem(StandardActions.OPEN_GITHUB, new OpenBrowserAction("https://github.com/JabRef/jabref")), + factory.createMenuItem(StandardActions.OPEN_WEBPAGE, new OpenBrowserAction("https://jabref.org/", dialogService)), + factory.createMenuItem(StandardActions.OPEN_BLOG, new OpenBrowserAction("https://blog.jabref.org/", dialogService)), + factory.createMenuItem(StandardActions.OPEN_FACEBOOK, new OpenBrowserAction("https://www.facebook.com/JabRef/", dialogService)), + factory.createMenuItem(StandardActions.OPEN_TWITTER, new OpenBrowserAction("https://twitter.com/jabref_org", dialogService)), + factory.createMenuItem(StandardActions.OPEN_GITHUB, new OpenBrowserAction("https://github.com/JabRef/jabref", dialogService)), new SeparatorMenuItem(), - factory.createMenuItem(StandardActions.OPEN_DEV_VERSION_LINK, new OpenBrowserAction("https://builds.jabref.org/master/")), - factory.createMenuItem(StandardActions.OPEN_CHANGELOG, new OpenBrowserAction("https://github.com/JabRef/jabref/blob/main/CHANGELOG.md")) + factory.createMenuItem(StandardActions.OPEN_DEV_VERSION_LINK, new OpenBrowserAction("https://builds.jabref.org/master/", dialogService)), + factory.createMenuItem(StandardActions.OPEN_CHANGELOG, new OpenBrowserAction("https://github.com/JabRef/jabref/blob/main/CHANGELOG.md", dialogService)) ), factory.createMenuItem(StandardActions.ABOUT, new AboutAction()) ); @@ -1043,7 +1044,7 @@ private ContextMenu createTabContextMenuFor(LibraryTab tab, KeyBindingRepository contextMenu.getItems().addAll( factory.createMenuItem(StandardActions.LIBRARY_PROPERTIES, new LibraryPropertiesAction(tab::getBibDatabaseContext, stateManager)), factory.createMenuItem(StandardActions.OPEN_DATABASE_FOLDER, new OpenDatabaseFolder(tab::getBibDatabaseContext)), - factory.createMenuItem(StandardActions.OPEN_CONSOLE, new OpenConsoleAction(tab::getBibDatabaseContext, stateManager, prefs)), + factory.createMenuItem(StandardActions.OPEN_CONSOLE, new OpenConsoleAction(tab::getBibDatabaseContext, stateManager, prefs, dialogService)), new SeparatorMenuItem(), factory.createMenuItem(StandardActions.CLOSE_LIBRARY, new CloseDatabaseAction(tab)), factory.createMenuItem(StandardActions.CLOSE_OTHER_LIBRARIES, new CloseOthersDatabaseAction(tab)), @@ -1341,7 +1342,7 @@ public OpenDatabaseFolder(Supplier databaseContext) { public void execute() { Optional.of(databaseContext.get()).flatMap(BibDatabaseContext::getDatabasePath).ifPresent(path -> { try { - JabRefDesktop.openFolderAndSelectFile(path, prefs); + JabRefDesktop.openFolderAndSelectFile(path, prefs, dialogService); } catch (IOException e) { LOGGER.info("Could not open folder", e); } diff --git a/src/main/java/org/jabref/gui/OpenConsoleAction.java b/src/main/java/org/jabref/gui/OpenConsoleAction.java index 52ddf7fb4a0..b470e1e3ef0 100644 --- a/src/main/java/org/jabref/gui/OpenConsoleAction.java +++ b/src/main/java/org/jabref/gui/OpenConsoleAction.java @@ -19,6 +19,7 @@ public class OpenConsoleAction extends SimpleCommand { private final Supplier databaseContext; private final StateManager stateManager; private final PreferencesService preferencesService; + private final DialogService dialogService; /** * Creates a command that opens the console at the path of the supplied database, @@ -26,10 +27,11 @@ public class OpenConsoleAction extends SimpleCommand { * {@link #OpenConsoleAction(StateManager, PreferencesService)} if not supplying * another database. */ - public OpenConsoleAction(Supplier databaseContext, StateManager stateManager, PreferencesService preferencesService) { + public OpenConsoleAction(Supplier databaseContext, StateManager stateManager, PreferencesService preferencesService, DialogService dialogService) { this.databaseContext = databaseContext; this.stateManager = stateManager; this.preferencesService = preferencesService; + this.dialogService = dialogService; this.executable.bind(ActionHelper.needsDatabase(stateManager)); } @@ -37,15 +39,15 @@ public OpenConsoleAction(Supplier databaseContext, StateMana /** * Using this constructor will result in executing the command on the active database. */ - public OpenConsoleAction(StateManager stateManager, PreferencesService preferencesService) { - this(() -> null, stateManager, preferencesService); + public OpenConsoleAction(StateManager stateManager, PreferencesService preferencesService, DialogService dialogService) { + this(() -> null, stateManager, preferencesService, dialogService); } @Override public void execute() { Optional.ofNullable(databaseContext.get()).or(stateManager::getActiveDatabase).flatMap(BibDatabaseContext::getDatabasePath).ifPresent(path -> { try { - JabRefDesktop.openConsole(path.toFile(), preferencesService); + JabRefDesktop.openConsole(path.toFile(), preferencesService, dialogService); } catch (IOException e) { LOGGER.info("Could not open console", e); } diff --git a/src/main/java/org/jabref/gui/SendAsEMailAction.java b/src/main/java/org/jabref/gui/SendAsEMailAction.java index 6ef1150cbe6..016b4a039ba 100644 --- a/src/main/java/org/jabref/gui/SendAsEMailAction.java +++ b/src/main/java/org/jabref/gui/SendAsEMailAction.java @@ -100,7 +100,7 @@ private String sendEmail() throws Exception { attachments.add(path.toAbsolutePath().toString()); if (openFolders) { try { - JabRefDesktop.openFolderAndSelectFile(path.toAbsolutePath(), preferencesService); + JabRefDesktop.openFolderAndSelectFile(path.toAbsolutePath(), preferencesService, dialogService); } catch (IOException e) { LOGGER.debug("Cannot open file", e); } diff --git a/src/main/java/org/jabref/gui/desktop/JabRefDesktop.java b/src/main/java/org/jabref/gui/desktop/JabRefDesktop.java index 75d22919cb8..96bc258e134 100644 --- a/src/main/java/org/jabref/gui/desktop/JabRefDesktop.java +++ b/src/main/java/org/jabref/gui/desktop/JabRefDesktop.java @@ -12,7 +12,6 @@ import org.jabref.gui.DialogService; import org.jabref.gui.Globals; -import org.jabref.gui.JabRefGUI; import org.jabref.gui.desktop.os.DefaultDesktop; import org.jabref.gui.desktop.os.Linux; import org.jabref.gui.desktop.os.NativeDesktop; @@ -184,7 +183,7 @@ private static void openExternalFilePlatformIndependent(Optional" if the app is specified, and just "open " otherwise: String[] cmd = (application != null) && !application.isEmpty() ? new String[] {"/usr/bin/open", "-a", application, filePath} : new String[] {"/usr/bin/open", filePath}; - Runtime.getRuntime().exec(cmd); + new ProcessBuilder(cmd).start(); } @Override @@ -38,8 +38,8 @@ public void openFolderAndSelectFile(Path file) throws IOException { } @Override - public void openConsole(String absolutePath) throws IOException { - Runtime.getRuntime().exec("open -a Terminal " + absolutePath, null, new File(absolutePath)); + public void openConsole(String absolutePath, DialogService dialogService) throws IOException { + new ProcessBuilder("open", "-a", "Terminal", absolutePath).start(); } @Override diff --git a/src/main/java/org/jabref/gui/desktop/os/Windows.java b/src/main/java/org/jabref/gui/desktop/os/Windows.java index 560a404653c..a5a6acfe79a 100644 --- a/src/main/java/org/jabref/gui/desktop/os/Windows.java +++ b/src/main/java/org/jabref/gui/desktop/os/Windows.java @@ -6,6 +6,7 @@ import java.nio.file.Path; import java.util.Optional; +import org.jabref.gui.DialogService; import org.jabref.gui.externalfiletype.ExternalFileType; import org.jabref.gui.externalfiletype.ExternalFileTypes; @@ -79,7 +80,7 @@ public void openFolderAndSelectFile(Path filePath) throws IOException { } @Override - public void openConsole(String absolutePath) throws IOException { + public void openConsole(String absolutePath, DialogService dialogService) throws IOException { ProcessBuilder process = new ProcessBuilder("cmd.exe", "/c", "start"); process.directory(new File(absolutePath)); process.start(); diff --git a/src/main/java/org/jabref/gui/duplicationFinder/DuplicateResolverDialog.java b/src/main/java/org/jabref/gui/duplicationFinder/DuplicateResolverDialog.java index a890007c220..1dad9cae973 100644 --- a/src/main/java/org/jabref/gui/duplicationFinder/DuplicateResolverDialog.java +++ b/src/main/java/org/jabref/gui/duplicationFinder/DuplicateResolverDialog.java @@ -6,6 +6,7 @@ import javafx.scene.control.ButtonType; import javafx.scene.layout.BorderPane; +import org.jabref.gui.DialogService; import org.jabref.gui.StateManager; import org.jabref.gui.duplicationFinder.DuplicateResolverDialog.DuplicateResolverResult; import org.jabref.gui.help.HelpAction; @@ -39,16 +40,18 @@ public enum DuplicateResolverResult { } private MergeEntries mergeEntries; + private final DialogService dialogService; - public DuplicateResolverDialog(BibEntry one, BibEntry two, DuplicateResolverType type, BibDatabaseContext database, StateManager stateManager) { + public DuplicateResolverDialog(BibEntry one, BibEntry two, DuplicateResolverType type, BibDatabaseContext database, StateManager stateManager, DialogService dialogService) { this.setTitle(Localization.lang("Possible duplicate entries")); this.database = database; this.stateManager = stateManager; + this.dialogService = dialogService; init(one, two, type); } private void init(BibEntry one, BibEntry two, DuplicateResolverType type) { - HelpAction helpCommand = new HelpAction(HelpFile.FIND_DUPLICATES); + HelpAction helpCommand = new HelpAction(HelpFile.FIND_DUPLICATES, dialogService); ButtonType help = new ButtonType(Localization.lang("Help"), ButtonData.HELP); ButtonType cancel = ButtonType.CANCEL; diff --git a/src/main/java/org/jabref/gui/duplicationFinder/DuplicateSearch.java b/src/main/java/org/jabref/gui/duplicationFinder/DuplicateSearch.java index 64af1bc9143..7ccc1b19402 100644 --- a/src/main/java/org/jabref/gui/duplicationFinder/DuplicateSearch.java +++ b/src/main/java/org/jabref/gui/duplicationFinder/DuplicateSearch.java @@ -142,7 +142,7 @@ private DuplicateSearchResult verifyDuplicates() { } private void askResolveStrategy(DuplicateSearchResult result, BibEntry first, BibEntry second, DuplicateResolverType resolverType) { - DuplicateResolverDialog dialog = new DuplicateResolverDialog(first, second, resolverType, frame.getCurrentLibraryTab().getBibDatabaseContext(), stateManager); + DuplicateResolverDialog dialog = new DuplicateResolverDialog(first, second, resolverType, frame.getCurrentLibraryTab().getBibDatabaseContext(), stateManager, dialogService); dialog.titleProperty().bind(Bindings.concat(dialog.getTitle()).concat(" (").concat(duplicateProgress.getValue()).concat("/").concat(duplicateTotal).concat(")")); diff --git a/src/main/java/org/jabref/gui/edit/OpenBrowserAction.java b/src/main/java/org/jabref/gui/edit/OpenBrowserAction.java index 503f0711b3c..c6eb7653ae8 100644 --- a/src/main/java/org/jabref/gui/edit/OpenBrowserAction.java +++ b/src/main/java/org/jabref/gui/edit/OpenBrowserAction.java @@ -1,18 +1,21 @@ package org.jabref.gui.edit; +import org.jabref.gui.DialogService; import org.jabref.gui.actions.SimpleCommand; import org.jabref.gui.desktop.JabRefDesktop; public class OpenBrowserAction extends SimpleCommand { private final String urlToOpen; + private final DialogService dialogService; - public OpenBrowserAction(String urlToOpen) { + public OpenBrowserAction(String urlToOpen, DialogService dialogService) { this.urlToOpen = urlToOpen; + this.dialogService = dialogService; } @Override public void execute() { - JabRefDesktop.openBrowserShowPopup(urlToOpen); + JabRefDesktop.openBrowserShowPopup(urlToOpen, dialogService); } } diff --git a/src/main/java/org/jabref/gui/entryeditor/EntryEditor.java b/src/main/java/org/jabref/gui/entryeditor/EntryEditor.java index 995461c638b..a5b513203a2 100644 --- a/src/main/java/org/jabref/gui/entryeditor/EntryEditor.java +++ b/src/main/java/org/jabref/gui/entryeditor/EntryEditor.java @@ -195,7 +195,7 @@ private void setupKeyBindings() { event.consume(); break; case HELP: - HelpAction.openHelpPage(HelpFile.ENTRY_EDITOR); + new HelpAction(HelpFile.ENTRY_EDITOR, dialogService).execute(); event.consume(); break; case CLOSE: diff --git a/src/main/java/org/jabref/gui/exporter/ExportCommand.java b/src/main/java/org/jabref/gui/exporter/ExportCommand.java index 78198252c98..f3c6812a764 100644 --- a/src/main/java/org/jabref/gui/exporter/ExportCommand.java +++ b/src/main/java/org/jabref/gui/exporter/ExportCommand.java @@ -139,7 +139,7 @@ private void export(Path file, FileChooser.ExtensionFilter selectedExtensionFilt Localization.lang("Export operation finished successfully."), List.of(new Action(Localization.lang("Reveal in File Explorer"), event -> { try { - JabRefDesktop.openFolderAndSelectFile(file, preferences); + JabRefDesktop.openFolderAndSelectFile(file, preferences, dialogService); } catch (IOException e) { LOGGER.error("Could not open export folder.", e); } diff --git a/src/main/java/org/jabref/gui/externalfiles/ImportHandler.java b/src/main/java/org/jabref/gui/externalfiles/ImportHandler.java index 668d2579d2b..7de10cf7b35 100644 --- a/src/main/java/org/jabref/gui/externalfiles/ImportHandler.java +++ b/src/main/java/org/jabref/gui/externalfiles/ImportHandler.java @@ -184,7 +184,7 @@ public void importEntryWithDuplicateCheck(BibDatabaseContext bibDatabaseContext, Optional existingDuplicateInLibrary = new DuplicateCheck(Globals.entryTypesManager).containsDuplicate(bibDatabaseContext.getDatabase(), entryToInsert, bibDatabaseContext.getMode()); if (existingDuplicateInLibrary.isPresent()) { - DuplicateResolverDialog dialog = new DuplicateResolverDialog(existingDuplicateInLibrary.get(), entryToInsert, DuplicateResolverDialog.DuplicateResolverType.IMPORT_CHECK, bibDatabaseContext, stateManager); + DuplicateResolverDialog dialog = new DuplicateResolverDialog(existingDuplicateInLibrary.get(), entryToInsert, DuplicateResolverDialog.DuplicateResolverType.IMPORT_CHECK, bibDatabaseContext, stateManager, dialogService); switch (dialogService.showCustomDialogAndWait(dialog).orElse(DuplicateResolverDialog.DuplicateResolverResult.BREAK)) { case KEEP_LEFT: bibDatabaseContext.getDatabase().removeEntry(existingDuplicateInLibrary.get()); diff --git a/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java b/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java index db615c074aa..89a943d9e1f 100644 --- a/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java +++ b/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java @@ -218,7 +218,7 @@ public void openFolder() { preferences.getFilePreferences()); if (resolvedPath.isPresent()) { - JabRefDesktop.openFolderAndSelectFile(resolvedPath.get(), preferences); + JabRefDesktop.openFolderAndSelectFile(resolvedPath.get(), preferences, dialogService); } else { dialogService.showErrorDialogAndWait(Localization.lang("File not found")); } diff --git a/src/main/java/org/jabref/gui/groups/GroupDialogViewModel.java b/src/main/java/org/jabref/gui/groups/GroupDialogViewModel.java index 1d4d7d97804..0a1de76104c 100644 --- a/src/main/java/org/jabref/gui/groups/GroupDialogViewModel.java +++ b/src/main/java/org/jabref/gui/groups/GroupDialogViewModel.java @@ -446,7 +446,7 @@ public void texGroupBrowse() { } public void openHelpPage() { - HelpAction.openHelpPage(HelpFile.GROUPS); + new HelpAction(HelpFile.GROUPS, dialogService).execute(); } private List getFileDirectoriesAsPaths() { diff --git a/src/main/java/org/jabref/gui/help/HelpAction.java b/src/main/java/org/jabref/gui/help/HelpAction.java index 1cfe14937ff..0447f7331ed 100644 --- a/src/main/java/org/jabref/gui/help/HelpAction.java +++ b/src/main/java/org/jabref/gui/help/HelpAction.java @@ -1,5 +1,6 @@ package org.jabref.gui.help; +import org.jabref.gui.DialogService; import org.jabref.gui.actions.SimpleCommand; import org.jabref.gui.desktop.JabRefDesktop; import org.jabref.logic.help.HelpFile; @@ -10,25 +11,18 @@ */ public class HelpAction extends SimpleCommand { - private HelpFile helpPage; + private final HelpFile helpPage; + private final DialogService dialogService; - public HelpAction(HelpFile helpPage) { + public HelpAction(HelpFile helpPage, DialogService dialogService) { this.helpPage = helpPage; + this.dialogService = dialogService; } - public static void openHelpPage(HelpFile helpPage) { + void openHelpPage(HelpFile helpPage) { StringBuilder sb = new StringBuilder("https://docs.jabref.org/"); sb.append(helpPage.getPageName()); - JabRefDesktop.openBrowserShowPopup(sb.toString()); - } - - public static SimpleCommand getMainHelpPageCommand() { - return new SimpleCommand() { - @Override - public void execute() { - openHelpPage(HelpFile.CONTENTS); - } - }; + JabRefDesktop.openBrowserShowPopup(sb.toString(), dialogService); } @Override diff --git a/src/main/java/org/jabref/gui/help/NewVersionDialog.java b/src/main/java/org/jabref/gui/help/NewVersionDialog.java index 2ab73b250a5..f026d0d7295 100644 --- a/src/main/java/org/jabref/gui/help/NewVersionDialog.java +++ b/src/main/java/org/jabref/gui/help/NewVersionDialog.java @@ -7,6 +7,7 @@ import javafx.scene.control.Label; import javafx.scene.layout.VBox; +import org.jabref.gui.DialogService; import org.jabref.gui.desktop.JabRefDesktop; import org.jabref.gui.util.BaseDialog; import org.jabref.logic.l10n.Localization; @@ -14,7 +15,7 @@ public class NewVersionDialog extends BaseDialog { - public NewVersionDialog(Version currentVersion, Version latestVersion) { + public NewVersionDialog(Version currentVersion, Version latestVersion, DialogService dialogService) { this.setTitle(Localization.lang("New version available")); ButtonType btnIgnoreUpdate = new ButtonType(Localization.lang("Ignore this update"), ButtonBar.ButtonData.CANCEL_CLOSE); @@ -25,7 +26,7 @@ public NewVersionDialog(Version currentVersion, Version latestVersion) { if (button == btnIgnoreUpdate) { return false; } else if (button == btnDownloadUpdate) { - JabRefDesktop.openBrowserShowPopup(Version.JABREF_DOWNLOAD_URL); + JabRefDesktop.openBrowserShowPopup(Version.JABREF_DOWNLOAD_URL, dialogService); } return true; }); @@ -34,7 +35,7 @@ public NewVersionDialog(Version currentVersion, Version latestVersion) { Hyperlink lblMoreInformation = new Hyperlink(Localization.lang("To see what is new view the changelog.")); lblMoreInformation.setOnAction(event -> - JabRefDesktop.openBrowserShowPopup(latestVersion.getChangelogUrl()) + JabRefDesktop.openBrowserShowPopup(latestVersion.getChangelogUrl(), dialogService) ); VBox container = new VBox( diff --git a/src/main/java/org/jabref/gui/help/VersionWorker.java b/src/main/java/org/jabref/gui/help/VersionWorker.java index 66579e67a40..b4760f58c9b 100644 --- a/src/main/java/org/jabref/gui/help/VersionWorker.java +++ b/src/main/java/org/jabref/gui/help/VersionWorker.java @@ -95,7 +95,7 @@ private void showUpdateInfo(Optional newerVersion, boolean manualExecut } } else { // notify the user about a newer version - if (dialogService.showCustomDialogAndWait(new NewVersionDialog(installedVersion, newerVersion.get())).orElse(true)) { + if (dialogService.showCustomDialogAndWait(new NewVersionDialog(installedVersion, newerVersion.get(), dialogService)).orElse(true)) { internalPreferences.setIgnoredVersion(newerVersion.get()); } } diff --git a/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java b/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java index 1eed96197a6..b139a4573c4 100644 --- a/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java +++ b/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java @@ -198,7 +198,7 @@ public void resolveDuplicate(BibEntry entry) { Optional other = new DuplicateCheck(entryTypesManager).containsDuplicate(databaseContext.getDatabase(), entry, databaseContext.getMode()); if (other.isPresent()) { DuplicateResolverDialog dialog = new DuplicateResolverDialog(other.get(), - entry, DuplicateResolverDialog.DuplicateResolverType.INSPECTION, databaseContext, stateManager); + entry, DuplicateResolverDialog.DuplicateResolverType.INSPECTION, databaseContext, stateManager, dialogService); DuplicateResolverDialog.DuplicateResolverResult result = dialogService.showCustomDialogAndWait(dialog) .orElse(DuplicateResolverDialog.DuplicateResolverResult.BREAK); @@ -229,7 +229,7 @@ public void resolveDuplicate(BibEntry entry) { other = findInternalDuplicate(entry); if (other.isPresent()) { DuplicateResolverDialog diag = new DuplicateResolverDialog(entry, - other.get(), DuplicateResolverDialog.DuplicateResolverType.DUPLICATE_SEARCH, databaseContext, stateManager); + other.get(), DuplicateResolverDialog.DuplicateResolverType.DUPLICATE_SEARCH, databaseContext, stateManager, dialogService); DuplicateResolverDialog.DuplicateResolverResult answer = dialogService.showCustomDialogAndWait(diag) .orElse(DuplicateResolverDialog.DuplicateResolverResult.BREAK); diff --git a/src/main/java/org/jabref/gui/importer/fetcher/WebSearchPaneView.java b/src/main/java/org/jabref/gui/importer/fetcher/WebSearchPaneView.java index a37a4b1f670..df252ccc8df 100644 --- a/src/main/java/org/jabref/gui/importer/fetcher/WebSearchPaneView.java +++ b/src/main/java/org/jabref/gui/importer/fetcher/WebSearchPaneView.java @@ -30,9 +30,11 @@ public class WebSearchPaneView extends VBox { private final WebSearchPaneViewModel viewModel; private final PreferencesService preferences; + private final DialogService dialogService; public WebSearchPaneView(PreferencesService preferences, DialogService dialogService, StateManager stateManager) { this.preferences = preferences; + this.dialogService = dialogService; this.viewModel = new WebSearchPaneViewModel(preferences, dialogService, stateManager); initialize(); } @@ -51,7 +53,7 @@ private void initialize() { ActionFactory factory = new ActionFactory(preferences.getKeyBindingRepository()); EasyBind.subscribe(viewModel.selectedFetcherProperty(), fetcher -> { if ((fetcher != null) && fetcher.getHelpPage().isPresent()) { - Button helpButton = factory.createIconButton(StandardActions.HELP, new HelpAction(fetcher.getHelpPage().get())); + Button helpButton = factory.createIconButton(StandardActions.HELP, new HelpAction(fetcher.getHelpPage().get(), dialogService)); helpButtonContainer.getChildren().setAll(helpButton); } else { helpButtonContainer.getChildren().clear(); diff --git a/src/main/java/org/jabref/gui/libraryproperties/constants/ConstantsPropertiesView.java b/src/main/java/org/jabref/gui/libraryproperties/constants/ConstantsPropertiesView.java index 16f43d77a70..0e83f999963 100644 --- a/src/main/java/org/jabref/gui/libraryproperties/constants/ConstantsPropertiesView.java +++ b/src/main/java/org/jabref/gui/libraryproperties/constants/ConstantsPropertiesView.java @@ -12,6 +12,7 @@ import javafx.scene.control.Tooltip; import javafx.util.converter.DefaultStringConverter; +import org.jabref.gui.DialogService; import org.jabref.gui.icon.IconTheme; import org.jabref.gui.libraryproperties.AbstractPropertiesTabView; import org.jabref.gui.libraryproperties.PropertiesTab; @@ -33,6 +34,7 @@ public class ConstantsPropertiesView extends AbstractPropertiesTabView> allValidProperty = EasyBind.map(stringsListProperty, ConstantsItemModel::combinedValidationValidProperty); @@ -90,7 +94,7 @@ public Optional labelAlreadyExists(String label) { } public void openHelpPage() { - HelpAction.openHelpPage(HelpFile.STRING_EDITOR); + new HelpAction(HelpFile.STRING_EDITOR, dialogService).execute(); } public ListProperty stringsListProperty() { diff --git a/src/main/java/org/jabref/gui/libraryproperties/keypattern/KeyPatternPropertiesView.java b/src/main/java/org/jabref/gui/libraryproperties/keypattern/KeyPatternPropertiesView.java index a47eabc2db3..74035d4cd03 100644 --- a/src/main/java/org/jabref/gui/libraryproperties/keypattern/KeyPatternPropertiesView.java +++ b/src/main/java/org/jabref/gui/libraryproperties/keypattern/KeyPatternPropertiesView.java @@ -48,7 +48,7 @@ public void initialize() { bibtexKeyPatternTable.defaultKeyPatternProperty().bindBidirectional(viewModel.defaultKeyPatternProperty()); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP_KEY_PATTERNS, new HelpAction(HelpFile.CITATION_KEY_PATTERN), keyPatternHelp); + actionFactory.configureIconButton(StandardActions.HELP_KEY_PATTERNS, new HelpAction(HelpFile.CITATION_KEY_PATTERN, dialogService), keyPatternHelp); } @Override diff --git a/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java b/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java index 2f203cc4381..68f274e1a2d 100644 --- a/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java +++ b/src/main/java/org/jabref/gui/openoffice/OpenOfficePanel.java @@ -119,7 +119,7 @@ public OpenOfficePanel(PreferencesService preferencesService, manualConnect.setTooltip(new Tooltip(Localization.lang("Manual connect"))); manualConnect.setMaxWidth(Double.MAX_VALUE); - help = factory.createIconButton(StandardActions.HELP, new HelpAction(HelpFile.OPENOFFICE_LIBREOFFICE)); + help = factory.createIconButton(StandardActions.HELP, new HelpAction(HelpFile.OPENOFFICE_LIBREOFFICE, dialogService)); help.setMaxWidth(Double.MAX_VALUE); selectDocument = new Button(); diff --git a/src/main/java/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.java b/src/main/java/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.java index 325493c520f..1b1f2838949 100644 --- a/src/main/java/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.java +++ b/src/main/java/org/jabref/gui/preferences/citationkeypattern/CitationKeyPatternTab.java @@ -60,7 +60,7 @@ public void initialize() { bibtexKeyPatternTable.defaultKeyPatternProperty().bindBidirectional(viewModel.defaultKeyPatternProperty()); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP_KEY_PATTERNS, new HelpAction(HelpFile.CITATION_KEY_PATTERN), keyPatternHelp); + actionFactory.configureIconButton(StandardActions.HELP_KEY_PATTERNS, new HelpAction(HelpFile.CITATION_KEY_PATTERN, dialogService), keyPatternHelp); } @Override diff --git a/src/main/java/org/jabref/gui/preferences/entryeditortabs/CustomEditorFieldsTab.java b/src/main/java/org/jabref/gui/preferences/entryeditortabs/CustomEditorFieldsTab.java index f00fbe24ee8..319f4e83f02 100644 --- a/src/main/java/org/jabref/gui/preferences/entryeditortabs/CustomEditorFieldsTab.java +++ b/src/main/java/org/jabref/gui/preferences/entryeditortabs/CustomEditorFieldsTab.java @@ -37,7 +37,7 @@ public void initialize() { fieldsTextArea.textProperty().bindBidirectional(viewModel.fieldsProperty()); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.GENERAL_FIELDS), generalFieldsHelp); + actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.GENERAL_FIELDS, dialogService), generalFieldsHelp); } @FXML diff --git a/src/main/java/org/jabref/gui/preferences/file/FileTab.java b/src/main/java/org/jabref/gui/preferences/file/FileTab.java index 0fd6bc201e7..f91f08650a1 100644 --- a/src/main/java/org/jabref/gui/preferences/file/FileTab.java +++ b/src/main/java/org/jabref/gui/preferences/file/FileTab.java @@ -52,7 +52,7 @@ public void initialize() { autosaveLocalLibraries.selectedProperty().bindBidirectional(viewModel.autosaveLocalLibrariesProperty()); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.AUTOSAVE), autosaveLocalLibrariesHelp); + actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.AUTOSAVE, dialogService), autosaveLocalLibrariesHelp); } @Override diff --git a/src/main/java/org/jabref/gui/preferences/general/GeneralTab.java b/src/main/java/org/jabref/gui/preferences/general/GeneralTab.java index 2b421129d8b..4f561b8f2a1 100644 --- a/src/main/java/org/jabref/gui/preferences/general/GeneralTab.java +++ b/src/main/java/org/jabref/gui/preferences/general/GeneralTab.java @@ -81,7 +81,7 @@ public void initialize() { addModificationDate.selectedProperty().bindBidirectional(viewModel.addModificationDateProperty()); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.OWNER), markOwnerHelp); + actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.OWNER, dialogService), markOwnerHelp); validationVisualizer.setDecoration(new IconValidationDecorator()); } diff --git a/src/main/java/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.java b/src/main/java/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.java index 6c4adbbdfa9..558ac2db289 100644 --- a/src/main/java/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.java +++ b/src/main/java/org/jabref/gui/preferences/linkedfiles/LinkedFilesTab.java @@ -71,7 +71,7 @@ public void initialize() { fileDirectoryPattern.textProperty().bindBidirectional(viewModel.fileDirectoryPatternProperty()); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP_REGEX_SEARCH, new HelpAction(HelpFile.REGEX_SEARCH), autolinkRegexHelp); + actionFactory.configureIconButton(StandardActions.HELP_REGEX_SEARCH, new HelpAction(HelpFile.REGEX_SEARCH, dialogService), autolinkRegexHelp); validationVisualizer.setDecoration(new IconValidationDecorator()); Platform.runLater(() -> validationVisualizer.initVisualization(viewModel.mainFileDirValidationStatus(), mainFileDirectory)); diff --git a/src/main/java/org/jabref/gui/preferences/nameformatter/NameFormatterTab.java b/src/main/java/org/jabref/gui/preferences/nameformatter/NameFormatterTab.java index 03038872af2..84ccc80d80d 100644 --- a/src/main/java/org/jabref/gui/preferences/nameformatter/NameFormatterTab.java +++ b/src/main/java/org/jabref/gui/preferences/nameformatter/NameFormatterTab.java @@ -103,7 +103,7 @@ public void initialize() { }); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP_NAME_FORMATTER, new HelpAction(HelpFile.CUSTOM_EXPORTS_NAME_FORMATTER), formatterHelp); + actionFactory.configureIconButton(StandardActions.HELP_NAME_FORMATTER, new HelpAction(HelpFile.CUSTOM_EXPORTS_NAME_FORMATTER, dialogService), formatterHelp); } public void addFormatter() { diff --git a/src/main/java/org/jabref/gui/preferences/network/NetworkTab.java b/src/main/java/org/jabref/gui/preferences/network/NetworkTab.java index 0e7e700f074..1002f80b22e 100644 --- a/src/main/java/org/jabref/gui/preferences/network/NetworkTab.java +++ b/src/main/java/org/jabref/gui/preferences/network/NetworkTab.java @@ -110,7 +110,7 @@ public void initialize() { proxyPassword.getRight().addEventFilter(MouseEvent.MOUSE_EXITED, this::proxyPasswordMask); ActionFactory actionFactory = new ActionFactory(Globals.getKeyPrefs()); - actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.REMOTE), remoteHelp); + actionFactory.configureIconButton(StandardActions.HELP, new HelpAction(HelpFile.REMOTE, dialogService), remoteHelp); validationVisualizer.setDecoration(new IconValidationDecorator()); Platform.runLater(() -> { diff --git a/src/main/java/org/jabref/gui/preferences/table/TableTab.java b/src/main/java/org/jabref/gui/preferences/table/TableTab.java index 6014d21ae90..e3ab7004598 100644 --- a/src/main/java/org/jabref/gui/preferences/table/TableTab.java +++ b/src/main/java/org/jabref/gui/preferences/table/TableTab.java @@ -66,7 +66,7 @@ public void initialize() { setupBindings(); ActionFactory actionFactory = new ActionFactory(preferencesService.getKeyBindingRepository()); - actionFactory.configureIconButton(StandardActions.HELP_SPECIAL_FIELDS, new HelpAction(HelpFile.SPECIAL_FIELDS), specialFieldsHelp); + actionFactory.configureIconButton(StandardActions.HELP_SPECIAL_FIELDS, new HelpAction(HelpFile.SPECIAL_FIELDS, dialogService), specialFieldsHelp); } private void setupTable() { diff --git a/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java b/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java index 857a410692d..43bf6f86dac 100644 --- a/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java +++ b/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java @@ -184,7 +184,7 @@ private boolean openSharedDatabase(DBMSConnectionProperties connectionProperties Localization.lang("However, a new database was created alongside the pre-3.6 one."), ButtonType.OK, openHelp); - result.filter(btn -> btn.equals(openHelp)).ifPresent(btn -> HelpAction.openHelpPage(HelpFile.SQL_DATABASE_MIGRATION)); + result.filter(btn -> btn.equals(openHelp)).ifPresent(btn -> new HelpAction(HelpFile.SQL_DATABASE_MIGRATION, dialogService).execute()); result.filter(btn -> btn.equals(ButtonType.OK)).ifPresent(btn -> openSharedDatabase(connectionProperties)); } loading.set(false); diff --git a/src/main/resources/l10n/JabRef_en.properties b/src/main/resources/l10n/JabRef_en.properties index 568136a3534..1cc2c330268 100644 --- a/src/main/resources/l10n/JabRef_en.properties +++ b/src/main/resources/l10n/JabRef_en.properties @@ -1303,6 +1303,7 @@ Please\ open\ %0\ manually.=Please open %0 manually. The\ link\ has\ been\ copied\ to\ the\ clipboard.=The link has been copied to the clipboard. Open\ %0\ file=Open %0 file +Could\ not\ detect\ terminal\ automatically.\ Please\ define\ a\ custom\ terminal\ in\ the\ preferences.=Could not detect terminal automatically. Please define a custom terminal in the preferences. Cannot\ delete\ file=Cannot delete file File\ permission\ error=File permission error diff --git a/src/test/java/org/jabref/gui/util/OpenConsoleActionTest.java b/src/test/java/org/jabref/gui/util/OpenConsoleActionTest.java index e96d8b80591..5ec37c2ee0e 100644 --- a/src/test/java/org/jabref/gui/util/OpenConsoleActionTest.java +++ b/src/test/java/org/jabref/gui/util/OpenConsoleActionTest.java @@ -31,7 +31,7 @@ public void setup() { @Test public void newActionGetsCurrentDatabase() { - OpenConsoleAction action = new OpenConsoleAction(stateManager, preferences); + OpenConsoleAction action = new OpenConsoleAction(stateManager, preferences, null); action.execute(); verify(stateManager, times(1)).getActiveDatabase(); verify(current, times(1)).getDatabasePath(); @@ -39,7 +39,7 @@ public void newActionGetsCurrentDatabase() { @Test public void newActionGetsSuppliedDatabase() { - OpenConsoleAction action = new OpenConsoleAction(() -> other, stateManager, preferences); + OpenConsoleAction action = new OpenConsoleAction(() -> other, stateManager, preferences, null); action.execute(); verify(stateManager, never()).getActiveDatabase(); verify(other, times(1)).getDatabasePath(); @@ -47,7 +47,7 @@ public void newActionGetsSuppliedDatabase() { @Test public void actionDefaultsToCurrentDatabase() { - OpenConsoleAction action = new OpenConsoleAction(() -> null, stateManager, preferences); + OpenConsoleAction action = new OpenConsoleAction(() -> null, stateManager, preferences, null); action.execute(); verify(stateManager, times(1)).getActiveDatabase(); verify(current, times(1)).getDatabasePath(); From d827d17eb910c1fa5cbbc65a39f0d01e59916294 Mon Sep 17 00:00:00 2001 From: Christoph Date: Sun, 5 Jun 2022 18:11:27 +0200 Subject: [PATCH 06/27] Normalize pages in citavi to avoid unicode minus signs (#8881) * Normalize pages in citavi to avoid unicode minus signs * introduce formatter as field --- .../fileformat/CitaviXmlImporter.java | 9 ++- .../fileformat/CitaviXmlImporterTest1.bib | 40 +++++------ .../fileformat/CitaviXmlImporterTest2.bib | 68 +++++++++--------- .../fileformat/CitaviXmlImporterTest3.bib | 70 +++++++++---------- 4 files changed, 97 insertions(+), 90 deletions(-) diff --git a/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java b/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java index 3c009f9c269..4d0608a1586 100644 --- a/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java +++ b/src/main/java/org/jabref/logic/importer/fileformat/CitaviXmlImporter.java @@ -28,6 +28,7 @@ import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamReader; +import org.jabref.logic.formatter.bibtexfields.NormalizePagesFormatter; import org.jabref.logic.importer.Importer; import org.jabref.logic.importer.Parser; import org.jabref.logic.importer.ParserResult; @@ -56,6 +57,7 @@ public class CitaviXmlImporter extends Importer implements Parser { private static final Logger LOGGER = LoggerFactory.getLogger(CitaviXmlImporter.class); private static final byte UUID_LENGTH = 36; private static final byte UUID_SEMICOLON_OFFSET_INDEX = 37; + private final NormalizePagesFormatter pagesFormatter = new NormalizePagesFormatter(); private final Map knownPersons = new HashMap<>(); private final Map knownKeywords = new HashMap<>(); @@ -188,7 +190,12 @@ private BibEntry parseData(CitaviExchangeData.References.Reference data) { .ifPresent(value -> entry.setField(StandardField.DOI, clean(value))); Optional.ofNullable(data.getIsbn()) .ifPresent(value -> entry.setField(StandardField.ISBN, clean(value))); - entry.setField(StandardField.PAGES, clean(getPages(data))); + + String pages = clean(getPages(data)); + // Cleans also unicode minus signs + pages = pagesFormatter.format(pages); + entry.setField(StandardField.PAGES, pages); + Optional.ofNullable(data.getVolume()) .ifPresent(value -> entry.setField(StandardField.VOLUME, clean(value))); Optional.ofNullable(getAuthorName(data)) diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib index e0c2496678f..e0ed0ccfd35 100644 --- a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest1.bib @@ -1,7 +1,7 @@ @Article{, author = {Agbaraji, Emmanuel and Ochulor, Deborah and Ezeh, Gloria}, title = {Food and drug counterfeiting in the developing nations}, - pages = {24-31}, + pages = {24--31}, volume = {3}, year = {2012}, } @@ -16,7 +16,7 @@ @Book{ @Article{, author = {Barlow, Susan and Boobis, Alan and Bridges, Jim and Cockburn, Andrew and Dekant, Wolfgang and Hepburn, Paul and Houben, Geert and König, Jürgen and Nauta, Maarten and Schuermans, Jeroen and Bánáti, Diána}, title = {The role of hazard- and risk-based approaches in ensuring food safety}, - pages = {176-188}, + pages = {176--188}, volume = {46}, abstract = {Background: Food legislation in the European Union and elsewhere includes both hazard- and risk-based approaches for ensuring safety. In hazard-based approaches, simply the presence of a potentially harmful agent at a detectable level in food is used as a basis for legislation and/or risk management action. Riskbased approaches allow consideration of exposure in assessing whether there may be unacceptable risks to health. Scope and approach: The advantages and disadvantages of hazard- and risk-based approaches for ensuring the safety of food chemicals, allergens, ingredients and microorganisms were explored at an ILSI Europe workshop. Key findings and conclusions: It was concluded that both types of approach have their place, depending on the context. However, problems can arise when both types of approach are used in regulation by separate agencies that address different aspects of the same agent/substance present in food. This separation of decision-making can result in hazard-based restrictions on marketing and use, whereas risk-based assessments for those exposed show there is reasonable certainty no harm will result. This in turn can lead to contradictory, confusing and ultimately unnecessary actions. Use of hazard-based approaches for foods also means that comparisons with benefits for nutrition and food security cannot be undertaken. This has the potential to lead to bias in the overall conclusions of regulators and risk managers, who may not have been presented with the benefits of particular foods. The value of riskbased approaches is becoming increasingly recognised.}, year = {2015}, @@ -116,7 +116,7 @@ @Article{ @Article{, title = {Mitigation strategies to protect food against intentional adulteration. Final rule}, - pages = {34165-223}, + pages = {34165--223}, volume = {81}, abstract = {The Food and Drug Administration (FDA or we) is issuing this final rule to require domestic and foreign food facilities that are required to register under the Federal Food, Drug, and Cosmetic Act (the FD&C Act) to address hazards that may be introduced with the intention to cause wide scale public health harm. These food facilities are required to conduct a vulnerability assessment to identify significant vulnerabilities and actionable process steps and implement mitigation strategies to significantly minimize or prevent significant vulnerabilities identified at actionable process steps in a food operation. FDA is issuing these requirements as part of our implementation of the FDA Food Safety Modernization Act (FSMA).}, keywords = {Food industry legislation and jurisprudence, Food safety, Humans, Law and legislation, Legislation, Terrorism prevention and control, United States}, @@ -165,7 +165,7 @@ @Book{ @Article{, author = {Kelepouris, Thomas and Pramatari, Katerina and Doukidis, Georgios}, title = {RFID-enabled traceability in the food supply chain}, - pages = {183-200}, + pages = {183--200}, volume = {107}, year = {2007}, } @@ -187,7 +187,7 @@ @Article{ @Article{, author = {Manning, Louise and Soon, Jan}, title = {Food safety, food fraud, and food defense}, - pages = {R823-R834}, + pages = {R823--R834}, volume = {81}, abstract = {Intentional food crime is plural in nature in terms of the types of crime and the differing levels of financial gain. Successful models of food crime are dependent on how well the crime has been executed and at what point, or even if, detection actually occurs. The aim of this paper is to undertake a literature review and critique the often contradictory definitions that can be found in the literature in order to compare and contrast existing food crime risk assessment tools and their application. Food safety, food defense, and food fraud risk assessments consider different criteria in order to determine the degree of situational risk for each criteria and the measures that need to be implemented to mitigate that risk. Further research is required to support the development of global countermeasures, that are of value in reducing overall risk even when the potential hazards may be largely unknown, and specific countermeasures that can act against unique risks.}, keywords = {Crime, Food safety, Fraud, Humans, Risk Assessment}, @@ -197,7 +197,7 @@ @Article{ @Article{, author = {Meyer, Samantha and Wilson, Annabelle and Calnan, Michael and Henderson, Julie and Coveney, John and McCullum, Dean and Pearce, Alex and Ward, Paul and Webb, Trevor}, title = {In the interest of food safety}, - pages = {1-13}, + pages = {1--13}, volume = {17}, abstract = {BACKGROUND: Food regulatory bodies play an important role in public health, and in reducing the costs of food borne illness that are absorbed by both industry and government. Regulation in the food industry involves a relationship between regulators and members of the industry, and it is imperative that these relationships are built on trust. Research has shown in a variety of contexts that businesses find the most success when there are high levels of trust between them and their key stakeholders. An evidence-based understanding of the barriers to communication and trust is imperative if we are to put forward recommendations for facilitating the (re)building of trusting and communicative relationships. METHODS: We present data from 72 interviews with regulators and industry representatives regarding their trust in and communication with one another. Interviews were conducted in the UK, New Zealand, and Australia in 2013. RESULTS: Data identify a variety of factors that shape the dynamic and complex relationships between regulators and industry, as well as barriers to communication and trust between the two parties. Novel in our approach is our emphasis on identifying solutions to these barriers from the voices of industry and regulators. CONCLUSIONS: We provide recommendations (e.g., development of industry advisory boards) to facilitate the (re)building of trusting and communicative relationships between the two parties.}, year = {2017}, @@ -213,7 +213,7 @@ @Article{ @Article{, author = {Nascimento, Carina and Santos, Poliana and Pereira-Filho, Edenir and Rocha, Fábio}, title = {Recent advances on determination of milk adulterants}, - pages = {1232-1244}, + pages = {1232--1244}, volume = {221}, abstract = {Milk adulteration is a current fraudulent practice to mask the quality parameters (e.g. protein and fat content) and increase the product shelf life. Milk adulteration includes addition of toxic substances, such as formaldehyde, hydrogen peroxide, hypochlorite, dichromate, salicylic acid, melamine, and urea. In order to assure the food safety and avoid health risks to consumers, novel analytical procedures have been proposed for detection of these adulterants. The innovations encompass sample pretreatment and improved detection and data processing, including chemometric tools. This review focuses on critical evaluation of analytical approaches for assay of milk adulteration, with emphasis on applications published after 2010. Alternatives for fast, environmentally friendly and in-situ detection of milk adulterants are highlighted.}, year = {2017}, @@ -234,7 +234,7 @@ @Article{ @Article{, author = {Oliveira, Gislene and Alewijn, Martin and Boerrigter-Eenling, Rita and van Ruth, Saskia}, title = {Compositional signatures of conventional, free range, and organic pork meat using fingerprint techniques}, - pages = {359-375}, + pages = {359--375}, volume = {4}, abstract = {Consumers' interest in the way meat is produced is increasing in Europe. The resulting free range and organic meat products retail at a higher price, but are difficult to differentiate from their counterparts. To ascertain authenticity and prevent fraud, relevant markers need to be identified and new analytical methodology developed. The objective of this pilot study was to characterize pork belly meats of different animal welfare classes by their fatty acid (Fatty Acid Methyl Ester-FAME), non-volatile compound (electrospray ionization-tandem mass spectrometry-ESI-MS/MS), and volatile compound (proton-transfer-reaction mass spectrometry-PTR-MS) fingerprints. Well-defined pork belly meat samples (13 conventional, 15 free range, and 13 organic) originating from the Netherlands were subjected to analysis. Fingerprints appeared to be specific for the three categories, and resulted in 100%, 95.3%, and 95.3% correct identity predictions of training set samples for FAME, ESI-MS/MS, and PTR-MS respectively and slightly lower scores for the validation set. Organic meat was also well discriminated from the other two categories with 100% success rates for the training set for all three analytical approaches. Ten out of 25 FAs showed significant differences in abundance between organic meat and the other categories, free range meat differed significantly for 6 out of the 25 FAs. Overall, FAME fingerprinting presented highest discrimination power.}, year = {2015}, @@ -253,7 +253,7 @@ @Book{ @Article{, author = {Opara, Linus}, title = {Traceability in agriculture and food supply chain}, - pages = {101-106}, + pages = {101--106}, volume = {1}, year = {2003}, } @@ -307,7 +307,7 @@ @Article{ @Article{, author = {Spink, John and Moyer, Douglas}, title = {Defining the public health threat of food fraud}, - pages = {R157-R163}, + pages = {R157--R163}, volume = {76}, abstract = {Food fraud, including the more defined subcategory ofeconomically motivated adulteration, is a food risk that is gaining recognition and concern. Regardless ofthe cause ofthe food risk, adulteration offood is both an industry and a government responsibility. Food safety, food fraud, and food defense incidents can create adulteration offood with public health threats. Food fraud is an intentional act for economic gain, whereas a food safety incident is an unintentional act with unintentional harm, and a food defense incident is an intentional act with intentional harm. Economically motivated adulteration may be just that—economically motivated—but the food-related public health risks are often more risky than traditional food safety threats because the contaminants are unconventional. Current intervention systems are not designed to look for a near infinite number ofpotential contaminants. The authors developed the core concepts reported here following comprehensive research ofarticles and reports, expert elicitation, and an extensive peer review. The intent of this research paper is to provide a base reference document for defining food fraud—it focuses specifically on the public health threat—and to facilitate a shift in focus from intervention to prevention. This will subsequently provide a framework for future quantitative or innovative research. The fraud opportunity is deconstructed using the criminology and behavioral science applications ofthe crime triangle and the chemistry ofthe crime. The research provides a food risk matrix and identifies food fraud incident types. This project provides a starting point for future food science, food safety, and food defense research.}, keywords = {Consumer product safety, Food safety methods, Fraud, Risk Assessment, Risk Factors, Terrorism}, @@ -317,7 +317,7 @@ @Article{ @Article{, author = {Spink, John and Moyer, Douglas and Park, Hyeonho and Wu, Yongning and Fersht, Victor and Shao, Bing and Hong, Miao and Paek, Seung and Edelev, Dmitry}, title = {Introducing food fraud including translation and interpretation to Russian, Korean, and Chinese languages}, - pages = {102-7}, + pages = {102--7}, volume = {189}, abstract = {This paper introduces the topic of Food Fraud with translations to Russian, Korean, and Chinese. The concepts provide a system-wide focus leading to prevention. The goal is not to detect Food Fraud but to adjust entire food supply chains to reduce fraud opportunities. Food Fraud is a recently defined area of Food Protection between Food Safety (such as Salmonella or pesticide residue), and Food Defense (malicious intent to harm such as terrorism). Food Fraud is intentional with no intent to harm but only for economic gain. As with improving Food Safety and Food Defense, preventing Food Fraud is good for society and the economy. Society benefits through fewer public health threats from unauthorized acts. Society also benefits from increased consumer satisfaction and harmony. Food Security is increased through the production of more, higher-value products for consumers, commerce, and exporting. Food Fraud can reduce economic output because sickened citizens cannot work and it also reduces consumer confidence leading to less commerce.}, keywords = {China, Food contamination prevention and control, Food quality, Food safety, Fraud prevention and control, Language, Public Health, Republic of Korea, Russia}, @@ -335,7 +335,7 @@ @Book{ @Article{, author = {Toci, Aline and Farah, Adriana and Pezza, Helena and Pezza, Leonardo}, title = {Coffee adulteration}, - pages = {83-92}, + pages = {83--92}, volume = {46}, abstract = {Coffee is a ubiquitous food product of considerable economic importance to the countries that produce and export it. The adulteration of roasted coffee is a strategy used to reduce costs. Conventional methods employed to identify adulteration in roasted and ground coffee involve optical and electron microscopy, which require pretreatment of samples and are time-consuming and subjective. Other analytical techniques have been studied that might be more reliable, reproducible, and widely applicable. The present review provides an overview of three analytical approaches (physical, chemical, and biological) to the identification of coffee adulteration. A total of 30 published articles are considered. It is concluded that despite the existence of a number of excellent studies in this area, there still remains a lack of a suitably sensitive and widely applicable methodology able to take into account the various different aspects of adulteration, considering coffee varieties, defective beans, and external agents.}, keywords = {Coffee, Electron scanning microscopy, Food contamination analysis}, @@ -361,7 +361,7 @@ @Article{ @Article{, author = {Wang, Yunyu and He, Kai and Fan, Long and Wang, Yushui and Wu, Shifang and Murphy, Robert and Wang, Wenzhi and Zhang, Yaping}, title = {DNA barcoding reveals commercial fraud related to yak jerky sold in China}, - pages = {106-8}, + pages = {106--8}, volume = {59}, keywords = {Cattle genetics, China, DNA Barcoding, Food contamination, Food safety, Fraud, Hazard analysis and critical control points, Meat, Preserved food, RNA}, year = {2016}, @@ -381,7 +381,7 @@ @Misc{ @Article{, author = {Yan, Yunxiang}, title = {Food safety and social risk in contemporary China}, - pages = {705-729}, + pages = {705--729}, volume = {71}, year = {2012}, } @@ -402,39 +402,39 @@ @Article{ @Article{, author = {Fassam, Liam and Dani, Samir and Hills, Mils}, title = {Supply chain food crime & fraud}, - pages = {659-666}, + pages = {659--666}, } @Article{, author = {Karipidis, Philippos and Tselempis, Dimitrios and Tsironis, Loukas}, title = {Eco-certification and transparency in global food supply chains}, - pages = {70-90}, + pages = {70--90}, } @Article{, author = {Manning, L.}, title = {Food Integrity}, - pages = {2-6}, + pages = {2--6}, volume = {119}, } @Article{, author = {Tian, Feng}, title = {An agri-food supply chain traceability system for China based on RFID & blockchain technology}, - pages = {1-6}, + pages = {1--6}, } @Article{, author = {Uyttendaele, Mieke and Franz, Eelco and Schlüter, Oliver}, title = {Food safety, a global challenge}, - pages = {1–6}, + pages = {1--6}, volume = {13}, } @Article{, author = {Whitworth, Elizabeth and Druckman, Angela and Woodward, Amy}, title = {Food scares}, - pages = {131-142}, + pages = {131--142}, volume = {119}, abstract = {Purpose – The purpose of this paper is to describe the development of a comprehensive categorisation of food scares. Design/methodology/approach – Following an initial desktop study, the categorisation was developed collaboratively with industry experts through a workshop and series of semi-structured interviews. Findings – The new categorisation developed is in Venn diagram format allowing overlapping categories. It is organised around the two major types of contamination (biological, and chemical/physical contaminants) and the two major causes of contamination (wilful deception, and transparency and awareness issues). Practical implications – The long and complex supply chains characteristic of current food production systems have resulted in a rising number of food scares. There is thus an increased emphasis on developing strategies to reduce both the number of incidents of food scares, and their associated economic, social and environmental impacts. The new categorisation developed in this study enables experts to address categories of food scares. Inclusion of the cause of contamination is particularly important as the method through which contamination occurs is key in devising food scare prevention strategies. Originality/value – The new categorisation, unlike previous categorisations, enables food scares to fall into multiple categories, as appropriate. Also, again in contrast to previous categorisations, it takes into account not only the physical problem of a food scare but also the mechanism through which it arises.}, keywords = {Classification, Consumer risk, Contamination, Food safety, Risk reduction}, diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib index 0c9c2356a50..db1fc5ae911 100644 --- a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest2.bib @@ -1,7 +1,7 @@ @Article{, author = {Abrahamsen, Rita}, title = {The power of partnerships in global governance}, - pages = {1453-1467}, + pages = {1453--1467}, volume = {25}, year = {2004}, } @@ -16,7 +16,7 @@ @Book{ @Article{, author = {Altan-Olcay, Ozlem and Icduygu, Ahmet}, title = {Mapping Civil Society in the Middle East: The Cases of Egypt, Lebanon and Turkey}, - pages = {157-179}, + pages = {157--179}, volume = {39}, year = {2012}, } @@ -40,7 +40,7 @@ @Book{ @Article{, author = {Blok, Anders}, title = {Mapping the Super‐Whale: Towards a Mobile Ethnography of Situated Globalities}, - pages = {507-528}, + pages = {507--528}, volume = {5}, year = {2010}, } @@ -56,7 +56,7 @@ @Book{ @Article{, author = {Breidenstein, Georg and Hirschauer, Stefan}, title = {Endlich fokussiert? Weder ,Ethno' noch ,Graphie'.}, - pages = {125-129}, + pages = {125--129}, volume = {3}, year = {2002}, } @@ -124,7 +124,7 @@ @Book{ @Article{, author = {Desmond, Matthew}, title = {Relational ethnography}, - pages = {547-579}, + pages = {547--579}, volume = {43}, year = {2014}, } @@ -132,7 +132,7 @@ @Article{ @Article{, author = {Doyle, Jessica}, title = {Civil Society as Ideology in the Middle East: A Critical Perspective}, - pages = {403-422}, + pages = {403--422}, volume = {43}, year = {2016}, } @@ -140,7 +140,7 @@ @Article{ @Article{, author = {DuBois, Marc}, title = {The Governance of the Third World: A Foucauldian Perspective on Power Relations in Development}, - pages = {1-30}, + pages = {1--30}, volume = {16}, year = {1991}, } @@ -156,7 +156,7 @@ @Book{ @Article{, author = {Fechter, A.-M.}, title = {Aid work as moral labour}, - pages = {228-243}, + pages = {228--243}, volume = {36}, year = {2016}, } @@ -164,7 +164,7 @@ @Article{ @Article{, author = {Fechter, Anne-Meike}, title = {The Personal and the Professional: Aid workers' relationships and values in the development process}, - pages = {1387-1404}, + pages = {1387--1404}, volume = {33}, year = {2012}, } @@ -181,7 +181,7 @@ @Book{ @Article{, author = {Fechter, Anne-Meike and Walsh, Katie}, title = {Examining ‘Expatriate’ Continuities: Postcolonial Approaches to Mobile Professionals}, - pages = {1197-1210}, + pages = {1197--1210}, volume = {36}, year = {2010}, } @@ -198,7 +198,7 @@ @Book{ @Article{, author = {Ferguson, James}, title = {The Uses of Neoliberalism}, - pages = {166-184}, + pages = {166--184}, volume = {41}, year = {2010}, } @@ -206,7 +206,7 @@ @Article{ @Article{, author = {Härdig, Anders}, title = {Beyond the Arab revolts: conceptualizing civil society in the Middle East and North Africa}, - pages = {1131-1153}, + pages = {1131--1153}, volume = {22}, year = {2014}, } @@ -230,7 +230,7 @@ @Book{ @Article{, author = {Jaeger, Hans-Martin}, title = {"Global Civil Society" and the Political Depoliticization of Global Governance}, - pages = {257-277}, + pages = {257--277}, volume = {1}, year = {2007}, } @@ -238,7 +238,7 @@ @Article{ @Article{, author = {Jennings, Kathleen and Boas, Morten}, title = {Transactions and Interactions: Everyday Life in the Peacekeeping Economy}, - pages = {281-295}, + pages = {281--295}, volume = {9}, year = {2015}, } @@ -246,7 +246,7 @@ @Article{ @Article{, author = {Knoblauch, Hubert}, title = {Fokussierte Ethnographie : Soziologie, Ethnologie und die neue Welle der Ethnographie}, - pages = {123-141}, + pages = {123--141}, volume = {2}, year = {2001}, } @@ -263,7 +263,7 @@ @Book{ @Article{, author = {Kurki, Milja}, title = {Governmentality and EU Democracy Promotion: The European Instrument for Democracy and Human Rights and the Construction of Democratic Civil Societies1}, - pages = {349-366}, + pages = {349--366}, volume = {5}, year = {2011}, } @@ -271,7 +271,7 @@ @Article{ @Article{, author = {Merry, Sally}, title = {Measuring the World}, - pages = {S83-S95}, + pages = {S83--S95}, volume = {52}, year = {2011}, } @@ -285,7 +285,7 @@ @Article{ @Book{, title = {Methoden der vergleichenden Politik- und Sozialwissenschaft}, editor = {Pickel, Susanne and Jahn, Detlef and Lauth, Hans-Joachim and Pickel, Gert}, - pages = {1 online resource (Online-Ressource.)}, + pages = {1 online resource (Online--Ressource.)}, publisher = {VS Verlag für Sozialwissenschaften / GWV Fachverlage GmbH, Wiesbaden}, year = {2009}, } @@ -293,7 +293,7 @@ @Book{ @Article{, author = {Reichertz, Jo}, title = {"Meine Schweine erkenne ich am Gang" : zur Typisierung typisierender Kriminalpolizisten}, - pages = {194-207}, + pages = {194--207}, volume = {22}, year = {1999}, } @@ -311,7 +311,7 @@ @Book{ @Article{, author = {SENDING, O. and NEUMANN, I. V. E. R.}, title = {Governance to Governmentality: Analyzing NGOs, States, and Power}, - pages = {651-672}, + pages = {651--672}, volume = {50}, year = {2006}, } @@ -328,7 +328,7 @@ @Book{ @Article{, author = {Stirrat, Roderick and Henkel, Heiko}, title = {The Development Gift: The Problem of Reciprocity in the NGO World}, - pages = {66-80}, + pages = {66--80}, volume = {554}, year = {1997}, } @@ -344,7 +344,7 @@ @Article{ @Article{, author = {Vorhölter, Julia}, title = {Studying development organizations – towards a culture of participation?}, - pages = {178-194}, + pages = {178--194}, volume = {1}, year = {2012}, } @@ -359,7 +359,7 @@ @Book{ @Article{, author = {Weidner, Jason}, title = {Governmentality, Capitalism, and Subjectivity}, - pages = {387-411}, + pages = {387--411}, volume = {23}, year = {2009}, } @@ -385,65 +385,65 @@ @Book{ @Article{, author = {Baya-Laffite, Nicolas}, title = {Black-boxing Sustainable Development: Environmental Impact Assessment on the River Uruguay}, - pages = {237-256}, + pages = {237--256}, } @Article{, author = {Cavatorta, Francesco and Elananza, Azzam}, title = {Show Me the Money!}, - pages = {75-93}, + pages = {75--93}, } @Article{, author = {Emerson, Robert and Fretz, Rachel I. and Shaw, Linda}, title = {Participant Observation and Fieldnotes}, - pages = {352-368}, + pages = {352--368}, } @Article{, author = {Kerner, Ina}, title = {Transnational Governmentality and Civil Society: Ambivalences of Power in a Globalized World}, - pages = {85-102}, + pages = {85--102}, } @Article{, author = {Laurent, Brice}, title = {Boundary-making in the International Organization: Public Engagement Expertise at the OECD}, - pages = {217-236}, + pages = {217--236}, } @Article{, author = {Meuser, Michael and Nagel, Ulrike}, title = {Das Experteninterview — konzeptionelle Grundlagen und methodische Anlage}, - pages = {465-479}, + pages = {465--479}, } @Article{, author = {Reichertz, Jo and Hitzler, Ronald and Schröer, Norbert}, title = {Das Arbeitsfeld einer hermeneutischen Wissenssoziologie}, - pages = {9-14}, + pages = {9--14}, } @Article{, author = {Stirling, Andrew}, title = {Knowing Doing Governing: Realizing Heterodyne Democracies}, - pages = {259-286}, + pages = {259--286}, } @Article{, author = {Swetha Rao Dhananka}, title = {Encounters at the margins: situating the researcher under conditions of aid}, - pages = {109-113}, + pages = {109--113}, } @Article{, author = {Sylvester, Christine}, title = {Avoiding the ‘killing’ of lives: representations in academia and fiction}, - pages = {64-73}, + pages = {64--73}, } @Article{, author = {Voß, Jan-Peter and Freeman, Richard}, title = {Introduction: Knowing Governance}, - pages = {1-34}, + pages = {1--34}, } diff --git a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib index 47cd0113d05..c6379b7d3db 100644 --- a/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib +++ b/src/test/resources/org/jabref/logic/importer/fileformat/CitaviXmlImporterTest3.bib @@ -67,7 +67,7 @@ @Book{ @Article{, author = {Bawden, David}, title = {Information and digital literacies}, - pages = {218-259}, + pages = {218--259}, volume = {57}, abstract = {The concepts of `information literacy' and `digital literacy' are described, and reviewed, by way of a literature survey and analysis. Related concepts, including computer literacy, library literacy, network literacy, Internet literacy and hyper-literacy are also discussed, and their relationships elucidated. After a general introduction, the paper begins with the basic concept of `literacy', which is then expanded to include newer forms of literacy, more suitable for complex information environments. Some of these, for example library, media and computer literacies, are based largely on specific skills, but have some extension beyond them. They lead to general concepts, such as information literacy and digital literacy which are based on knowledge, perceptions and attitudes, though reliant on the simpler skills-based literacies.}, keywords = {computer literacy, Library literacy, information literacy}, @@ -105,7 +105,7 @@ @Book{ @Article{, author = {Bruce, Christine}, title = {Workplace experiences of information literacy}, - pages = {33-47}, + pages = {33--47}, volume = {19}, abstract = {The idea of information literacy, broadly defined as the ability to recognise information needs and identify, evaluate and use information effectively, has been of growing concern in the education sectors for a number of years; whilst in the workplace, employers and managers have perhaps attended more to the need for computer and information technology skill. New descriptions of information literacy, that may be of value to the business sector, are now beginning to appear as a result of qualitative research into how professional employees experience the effective use of information. This paper summarises the outcomes of an investigation into the experience of information literacy amongst various types of professionals; and explores the possible differences and interrelations between individual and organisational information literacy suggested by these outcomes. Seven different ways of experiencing information literacy were identified. These experiences are closely related to important workplace processes such as environmental scanning, information management, corporate memory, and research and development; confirming that information literacy should be considered a significant part of the character of learning organisations as well as being a key characteristic of the organisation's employees. Implications of individual and organisational information literacy for beginning and continuing professional education are explored.}, year = {1999}, @@ -123,7 +123,7 @@ @Book{ @Article{, author = {Cacchione, Pamela and Zurkowski, Paul}, title = {Nurse scientists' information literacy is supported by librarians}, - pages = {3-6}, + pages = {3--6}, volume = {23}, year = {2014}, } @@ -131,7 +131,7 @@ @Article{ @Article{, author = {Carder, Linda and Willingham, Patricia and Bibb, David}, title = {Case-based, problem-based learning}, - pages = {181-190}, + pages = {181--190}, volume = {18}, abstract = {Case-based, problem-based learning (CBPBL) is a student-centered approach that uses tightly focused minicases to help students demonstrate their ability to identify their information needs. It has been used successfully in science and medical learning, and lends itself easily to helping students develop the critical thinking skills that lead to information literacy. In this approach, after students are provided with a minicase, they control the chalkboard and direct their own learning by initiating the topics and setting the agenda that will lead to solving the case. The instructor's task is to serve as a facilitator, asking questions only when it serves to help clarify students' thinking, and guiding group processes when necessary.}, year = {2001}, @@ -140,7 +140,7 @@ @Article{ @Article{, author = {Clairoux, Natalie and Desbiens, Sylvie and Clar, Monique and Dupont, Patrice and St-Jean, Monique}, title = {Integrating information literacy in health sciences curricula: a case study from Québec}, - pages = {201-211}, + pages = {201--211}, volume = {30}, abstract = {OBJECTIVE To portray an information literacy programme demonstrating a high level of integration in health sciences curricula and a teaching orientation aiming towards the development of lifelong learning skills. The setting is a French-speaking North American university. METHODS The offering includes standard workshops such as MEDLINE searching and specialised sessions such as pharmaceutical patents searching. A contribution to an international teaching collaboration in Haiti where workshops had to be thoroughly adapted to the clientele is also presented. Online guides addressing information literacy topics complement the programme. RESULTS AND EVALUATION A small team of librarians and technicians taught 276 hours of library instruction (LI) during the 2011-2012 academic year. Methods used for evaluating information skills include scoring features of literature searches and user satisfaction surveys. DISCUSSION Privileged contacts between librarians and faculty resulting from embedded LI as well as from active participation in library committees result in a growing reputation of library services across academic departments and bring forth collaboration opportunities. Sustainability and evolution of the LI programme is warranted by frequent communication with partners in the clinical field, active involvement in academic networks and health library associations, and reflective professional strategies.}, keywords = {information retrieval, curriculum, information literacy, Universities, Organizational Case Studies}, @@ -157,7 +157,7 @@ @Book{ @Article{, author = {Correia, Ana and Teixeira, José}, title = {Information literacy}, - pages = {311-320}, + pages = {311--320}, volume = {27}, abstract = {This paper aims to provide an overview of some of the most recent developments in concepts and practices associated with information literacy worldwide, revealing the paradox that, while information literacy is a key discipline of the information society and knowledge economy and is well-understood in its broader sense, it has made little progress educationally, save for a few exceptions in countries such as Australia, the USA, Canada and the UK. Deriving from the authors' background as university professors, the paper concentrates on approaches to promote information literacy in higher education. The paper concludes by pointing to the need to expand the debate on information literacy and how to raise ethical and moral concerns in the use of the Internet and the new technologies. It also explores the potential role that the European Commission eSafe (2003-2004) programme can play to encourage research and practice on information literacy in its widest sense, as an intrinsic competency in the fight against the effects of disseminating illegal and harmful content through online and other new technologies.}, keywords = {internet, information literacy}, @@ -222,7 +222,7 @@ @Book{ @Article{, author = {Gormally, Cara and Brickman, Peggy and Lutz, Mary}, title = {Developing a Test of Scientific Literacy Skills (TOSLS): measuring undergraduates' evaluation of scientific information and arguments}, - pages = {364-377}, + pages = {364--377}, volume = {11}, abstract = {Life sciences faculty agree that developing scientific literacy is an integral part of undergraduate education and report that they teach these skills. However, few measures of scientific literacy are available to assess students' proficiency in using scientific literacy skills to solve scenarios in and beyond the undergraduate biology classroom. In this paper, we describe the development, validation, and testing of the Test of Scientific Literacy Skills (TOSLS) in five general education biology classes at three undergraduate institutions. The test measures skills related to major aspects of scientific literacy: recognizing and analyzing the use of methods of inquiry that lead to scientific knowledge and the ability to organize, analyze, and interpret quantitative data and scientific information. Measures of validity included correspondence between items and scientific literacy goals of the National Research Council and Project 2061, findings from a survey of biology faculty, expert biology educator reviews, student interviews, and statistical analyses. Classroom testing contexts varied both in terms of student demographics and pedagogical approaches. We propose that biology instructors can use the TOSLS to evaluate their students' proficiencies in using scientific literacy skills and to document the impacts of curricular reform on students' scientific literacy.}, keywords = {Demography, learning, Knowledge}, @@ -238,7 +238,7 @@ @Article{ @Article{, author = {Grafstein, Ann}, title = {A discipline-based approach to information literacy}, - pages = {197-204}, + pages = {197--204}, volume = {28}, abstract = {This article, which proposes a discipline-based approach to teaching information literacy, argues that the responsibility for teaching information literacy should be shared throughout an academic institution, rather than limited to the library. An outline of the complementary responsibilities of librarians and classroom faculty in teaching information literacy is presented.}, keywords = {training sessions, evaluation, information literacy, teaching}, @@ -269,7 +269,7 @@ @Article{ @Article{, author = {Heinrichs, John and Lim, Jeen-su}, title = {Information literacy and office tool competencies}, - pages = {153-164}, + pages = {153--164}, volume = {85}, year = {2010}, } @@ -286,7 +286,7 @@ @Book{ @Article{, author = {Hyldegård, Jette}, title = {Beyond the search process - Exploring group members' information behavior in context}, - pages = {142-158}, + pages = {142--158}, volume = {45}, abstract = {This paper reports on the findings from a longitudinal case study exploring Kuhlthau’s information search process (ISP)-model in a group based academic setting. The research focus is on group members’ activities and cognitive and emotional experiences during the task process of writing an assignment. It is investigated if group members’ information behavior differ from the individual information seeker in the ISP-model and to what extent this behavior is influenced by contextual (work task) and social (group work) factors. Three groups of LIS students were followed during a 14 weeks period in 2004/2005 (10 participants). Quantitative and qualitative methods were employed, such as demographic surveys, process surveys, diaries and interviews. Similarities in behavior were found between group members and the individual in Kuhlthau’s ISP-model with regard to the general stages of information seeking, the cognitive pattern associated with focus formulation and the tendency towards an increase in writing activities while searching activities decreased. Differences in behavior were also found, which were associated with contextual and social factors beyond the mere search process. It is concluded that the ISP-model does not fully comply with group members’ problem solving process and the involved information seeking behavior. Further, complex academic problem solving seems to be even more complex when it is performed in a group based setting. The study contributes with a new conceptual understanding of students’ behavior in small groups.}, keywords = {information search process}, @@ -302,7 +302,7 @@ @Article{ @Article{, author = {Janke, Robert and Pesut, Barbara and Erbacker, Lynnelle}, title = {Promoting information literacy through collaborative service learning in an undergraduate research course}, - pages = {920-923}, + pages = {920--923}, volume = {32}, abstract = {Information literacy is an important foundation for evidence-based nursing practice. Librarians, the experts in information literacy, are important collaborators in the process of teaching nursing students information literacy skills. In this article we describe a service learning project, offered in a third year nursing research course, designed to teach information literacy and to enhance students' appreciation of the role of evidence in nursing practice. Students worked in groups, and under the guidance of a nursing instructor and librarian, to answer a question posed by practice-based partners. Through the project students learned essential skills of refining a question, identifying systematic search strategies, gleaning essential information from a study and using a bibliographic management tool. Evaluation of the project indicated that although the project was challenging and labour intensive students felt they learned important skills for their future practice. Several recommendations for further enhancing the collaboration are made.}, keywords = {learning, Attitude of Health Personnel, information literacy, Cooperative Behavior}, @@ -312,7 +312,7 @@ @Article{ @Article{, author = {Johnston, Bill and Weber, Sheila}, title = {Information Literacy in Higher Education}, - pages = {335-352}, + pages = {335--352}, volume = {28}, abstract = {The aim of this article is to review and critique the current state of information literacy education, and propose a way forward. Key developments in the UK, USA and Australia are reviewed, including standards and models of information literacy. The place of information literacy in the higher education curriculum is discussed. Problems with current practice are identified, in particular, prescriptive guidelines which encourage a surface learning approach; delivery by librarians who may lack both educational training and power to influence the curriculum; and poor assessment methods. Alternative approaches are highlighted. A case study of a credit bearing information literacy class, offered by the authors to undergraduates at Strathclyde Business School, is analysed, to argue that information literacy can stand alone as a subject of study, with appropriate learning and teaching methods. The article concludes by proposing models for the information literate student and the information literate university.}, keywords = {ACRL, curriculum, CAUL}, @@ -322,7 +322,7 @@ @Article{ @Article{, author = {Joint, Nicholas}, title = {Information literacy evaluation}, - pages = {322-334}, + pages = {322--334}, volume = {21}, abstract = {Evaluates the evidence for and against the effectiveness of electronically delivered information literacy programmes in comparison with personal contact teaching. Shows that computer-aided learning approaches to user education have great strengths but also undeniable weaknesses. The way to promote higher levels of information literacy in the electronic library environment is to increase the levels of computer-led delivery, as long as this is done in such a way as to maximise the strengths of the format. This is best done in the context of an integrated virtual learning environment (VLE). Such an environment would promote information literacy synergistically as one of a suite of multiple electronic literacies that can be learnt alongside each other. Exploiting a VLE in this way would also facilitate the integration of information literacy into the broader curriculum. Computer-based user education to date could be viewed as having been constrained by a need to imitate well-established, tutor-delivered user education methods. Without an ambitious programme of integration into larger scale e-learning models, this pattern of constraint will continue.}, keywords = {evaluation, E-Learning}, @@ -332,7 +332,7 @@ @Article{ @Article{, author = {Joint, Nicholas}, title = {eLiteracy or information literacy: which concept should we prefer?}, - pages = {505-507}, + pages = {505--507}, volume = {54}, abstract = {Purpose - To give a comparative analysis of the validity of the concepts of eLiteracy (eL) and Information Literacy (IL). Design/methodology/approach - A purely abstract, conceptual discussion. Findings - That eLiteracy and Information Literacy are different but mutually compatible concepts with validity within specific contexts. Research limitations/implications - An entirely abstract discussion of theoretical descriptions. Practical implications - By defining concepts clearly, this paper attempts to inform and clarify the framework for practical LIS research. Originality/value - In contrast to other discussions (which tend to focus either on eLiteracy, or on Information Literacy) this editorial squarely addresses criticism of the eL concept in comparison to IL. It sets out the difference with IL and recognises the strength of both ideas, as long as they are each applied within their appropriate frame of reference.}, keywords = {learning, information literacy, e-literacy}, @@ -342,7 +342,7 @@ @Article{ @Article{, author = {Julien, Heidi and Breu, Reegan}, title = {Instructional practices in Canadian public libraries}, - pages = {281-301}, + pages = {281--301}, volume = {27}, abstract = {This article reports on a national survey of information literacy (IL) instruction in urban and rural public libraries in Canada and public librarians' attitudes towards these services. The survey is the first phase of a study exploring the actual and potential role of Canadian public libraries in developing the public's IL skills. Despite an urgent need to develop such skills, and expectations that public libraries fulfill that role (specifically articulated by the federal government through its “Connecting Canadians” initiative), the real experiences of public librarians and of public library customers may not bear out this expectation. The survey analyzes the role of the public library, as a non-profit institution and primary stakeholder, in advancing federal government information policy. In addition, the study gives voice to a community of professionals expected to fulfill an important federal policy function, but provided with few resources with which to do so.}, keywords = {information literacy, investigation, public library}, @@ -362,7 +362,7 @@ @Article{ @Article{, author = {Knapp, Patricia}, title = {A Suggested Program of College Instruction in the Use of the Library}, - pages = {224-231}, + pages = {224--231}, volume = {26}, year = {1956}, } @@ -370,7 +370,7 @@ @Article{ @Article{, author = {Kreps, Dennis}, title = {Information Literacy: The Search for Practices and Policies}, - pages = {9-12}, + pages = {9--12}, volume = {16}, year = {2014}, } @@ -378,7 +378,7 @@ @Article{ @Article{, author = {Lacy, Meagan}, title = {Sources: Information Literacy Instruction That Works: A Guide to Teaching by Discipline and Student Population}, - pages = {367-368}, + pages = {367--368}, volume = {53}, year = {2014}, } @@ -391,7 +391,7 @@ @Article{ @Article{, author = {Lloyd, Annemaree}, title = {Information Literacy: The Meta-Competency of the Knowledge Economy?}, - pages = {87-91}, + pages = {87--91}, volume = {35}, abstract = {Information literacy is a meta-competency that encapsulates the generic skills of defining, locating and accessing information. It is an essential and integral competency for both the knowledge worker and effective knowledge management. Librarians need to realign their roles from providers and organizers of information, to facilitators and educators of clients’ information access and process. This requires librarians to develop partnerships with workplace communities so as to understand the role that information plays in the knowledge economy; and to develop a new language that is relevant to workplace communities and ties information literacy instruction to the authentic situations of the workplace. Information literacy is a meta-competency: it is the currency of the knowledge economy. The themes introduced in this paper are drawn from the current doctoral research of the author. The research examines what it means to individuals to be information literate in a workplace context, and how information literacy manifests and transfers in to workplace practice.}, keywords = {information literacy}, @@ -401,7 +401,7 @@ @Article{ @Article{, author = {Lloyd, Annemaree}, title = {Information literacy}, - pages = {82-88}, + pages = {82--88}, volume = {37}, abstract = {This article reports on doctoral research which explored the meaning and role of information literacy among a specific group of workers - firefighters. An alternative concept of information literacy and a broader definition of information literate people are introduced. The article suggests that librarians are currently bound by an educational concept of what information literacy is and how it manifests itself. They must begin to engage with and explore other contexts and practices that facilitate becoming information literate, in order to understand the role of information literacy in learning outside educational settings. By engaging with different contexts, concepts and truths, our provision of information literacy education will be enhanced and contribute towards learning practices which are transformative, generic and transferable.}, keywords = {information literacy}, @@ -532,7 +532,7 @@ @Article{ @Article{, author = {Rogow, Faith}, title = {Shifting from Media to Literacy}, - pages = {30-34}, + pages = {30--34}, volume = {48}, abstract = {Reflecting on how media literacy has changed in the United States in recent years, this article argues that the field has shifted from an emphasis on media to an emphasis on literacy. The result is a change in practice that makes more pedagogical sense than media literacy conceived of as an ideological or political movement.}, keywords = {information literacy, media literacy}, @@ -559,7 +559,7 @@ @Book{ @Article{, author = {Senkbeil, Martin and Ihme, Jan and Wittwer, Jörg}, title = {The Test of Technological and Information Literacy (TILT) in the National Educational Panel Study}, - pages = {139-161}, + pages = {139--161}, volume = {5}, abstract = {#englisch#In this article, we present an assessment framework for assessing information and communication technologies literacy (ICT literacy) in the context of the National Educational Panel Study (NEPS). NEPS is the first study aiming to examine ICT literacy longitudinally across the lifespan using objective paper-pencil test instruments. To do so, it is necessary to develop reliable and valid test instruments that are capable of assessing ICT literacy longitudinally. On the basis of an assessment framework, we developed in an initial step an item pool for assessing the ICT literacy of secondary school students and tested the item pool in three pilot studies (Grade 5, 7 and 9). The item and scale analyses provided satisfying results and the item pool proved to be suitable for assessing ICT literacy longitudinally. In addition, validity analyses showed a satisfactory content validity and a high test fairness with regard to gender and school type. Concerning criterion validity, there were expected correlations with variables of computer familiarity. (DIPF/Orig.).;;#deutsch#Im Mittelpunkt dieses Beitrags steht die Vorstellung und empirische Erprobung einer Rahmen- und Testkonzeption zur Erfassung von Information and Communication Technologies Literacy (ICT Literacy) im Rahmen der National Educational Panel Study (NEPS). Das Ziel dieser Studie ist es, ICT Literacy anhand längsschnittlich angelegter Datenerhebungen über die gesamte Lebensspanne und mit Hilfe objektiver und zunächst Papier-und-Bleistiftbasierter Testverfahren zu erfassen. Deshalb ist es notwendig, reliable und valide Testinstrumente zu entwickeln, die sich für die längsschnittliche Erfassung von ICT Literacy eignen. Hierfür wurde auf der Grundlage der Rahmen- und Testkonzeption zunächst ein Itempool für Schülerinnen und Schüler der Sekundarstufe I entwickelt und in drei Pilotstudien (Klassenstufen 5, 7 und 9) erprobt. Für den Itempool wurden zufriedenstellende Item- und Skalenwerte ermittelt. Die Ergebnisse wiesen darüber hinaus auf die Eignung des Instrumentariums für längsschnittliche Erhebungen hin. Die Validitätsprüfungen sprachen für eine ausreichende inhaltliche Validität des Itempools und seine Fairness im Hinblick auf Geschlecht und Schulart. Im Sinne der Kriteriumsvalidität ergaben sich inhaltlich gut interpretierbare Zusammenhänge mit Merkmalen der Computervertrautheit. (DIPF/Orig.).}, year = {2013}, @@ -568,7 +568,7 @@ @Article{ @Article{, author = {Sharp, Laurie}, title = {Literacy in the Digital Age}, - pages = {74-82}, + pages = {74--82}, volume = {24}, abstract = {21st century learners arrive at school with technological knowledge and skills that necessitate the need for educational systems to transform instructional practices to meet learners’ needs. The International Society for Technology in Education (ISTE) developed ISTE Standards for students, teachers, administrators, coaches, and computer science educators that define best practices and standards of excellence with technology. Literacy educators are greatly impacted by the technological shift in education and require a deep level of proficiency with the ISTE Standards for Teachers. The purpose of this article is to provide an overview of the ISTE Standards for Teachers and provide literacy educators with an evaluative tool to measure their adeptness with the knowledge and skills needed to teach in the digital age.}, year = {2014}, @@ -596,7 +596,7 @@ @Book{ @Article{, author = {Snavely, Loanne and Cooper, Natasha}, title = {The information literacy debate}, - pages = {9-14}, + pages = {9--14}, volume = {23}, abstract = {The issues surrounding the term and the meaning of the phrase information literacy have propelled academic librarians into a debate over their role in meeting the educational mission of an institution of higher education and over what they should be calling what they are doing.}, year = {1997}, @@ -622,7 +622,7 @@ @Book{ @Article{, author = {Strong, Diane and Lee, Yang and Wang, Richard}, title = {10 Potholes in the Road to Information Quality}, - pages = {38-46}, + pages = {38--46}, volume = {30}, keywords = {information quality}, year = {1997}, @@ -657,7 +657,7 @@ @Book{ @Article{, author = {Trauth, Eileen}, title = {A college curriculum for information literacy}, - pages = {251-258}, + pages = {251--258}, volume = {2}, abstract = {Educators are currently being challenged to develop curricula which will prepare students for life in an information-based society. Given the computer literacy efforts at the elementary and secondary levels, a college-level curriculum should build upon those skills by focusing on information literacy. Information literacy is the ability to acquire, process, use and communicate the information which is needed in one's personal and work life, regardless of the technology involved. There are three components of this information literacy curriculum. The Information Environment provides the motivation for understanding about technology and its uses. The Components of an Information System considers the acquisition and proper use of computer-based tools. Information Management is concerned with ensuring that relevant information is available, accurate and in a useful format. The intended students for this course are the end users, the non-computer science majors.}, keywords = {computer literacy, curriculum, information literacy}, @@ -675,7 +675,7 @@ @Book{ @Article{, author = {Urquhart, Christine and Thomas, Rhian and Spink, Siân and Fenton, Roger and Yeoman, Alison and Lonsdale, Ray and Armstrong, Chris and Banwell, Linda and Ray, Kathryn and Coulson, Graham and Rowley, Jennifer}, title = {Student use of electronic information services in further education}, - pages = {347-362}, + pages = {347--362}, volume = {25}, abstract = {This paper presents a profile of user behaviour in relation to the use of electronic information services (EIS), information skills, and the role of training and wider learning experiences in UK further education colleges. The research was conducted under the JISC User Behaviour Monitoring and Evaluation Framework. Work was conducted in two strands, by two project teams, JUSTEIS and JUBILEE. JUSTEIS profiled the use of EIS and assessed the availability of EIS. JUBILEE objectives focussed on understanding the barriers and enablers, with a view to developing success criteria. JUSTEIS used a multi-stage stratified sampling process, and collected data from 270 respondents from 17 departments in the baseline survey (2001/2002). JUBILEE conducted in-depth fieldwork in five institutions and snapshot fieldwork in 10 institutions, collecting data from 528 respondents. Information skills and experience develop across work, home and study. There is a growing use of EIS in curriculum, but practice varies between institutions and disciplines. Tutors express concern about student's ability to evaluate and use the information that they find. Assignments can promote EIS use. The main categories of EIS used by students are search engines and organisational web sites. Search engines are the preferred search tools and search strategies are basic. Information skills are acquired through a variety of routes, with peer instruction, surfing and personal experience, instruction from tutors, and LIS induction and training all making an important contribution. The solutions to improving students’ information skills may include use of the Virtual Training Suites, but librarians need to adopt different roles in promoting and evaluating use of such tools.}, keywords = {digital libraries, electronic information services, information literacy, continuing education, digital information resources}, @@ -685,7 +685,7 @@ @Article{ @Article{, author = {van Acker, Frederik and Vermeulen, Marjan and Kreijns, Karel and Lutgerink, Jan and van Buuren, Hans}, title = {The role of knowledge sharing self-efficacy in sharing Open Educational Resources}, - pages = {136-144}, + pages = {136--144}, volume = {39}, year = {2014}, } @@ -702,7 +702,7 @@ @Article{ @Article{, author = {Warmkessel, Marjorie and McCade, Joseph}, title = {Integrating information literacy into the curriculum}, - pages = {80-88}, + pages = {80--88}, volume = {15}, abstract = {This article describes a two-week graduate course on information literacy, developed and taught by a librarian and a professor of industry and technology, and intended for teachers and librarians in elementary and secondary schools. Information literacy is not only the content of the course but also the basis of its structure: active, student-centered learning with several group assignments helps students develop skills in finding information, analyzing and interpreting it, and putting it to practical use. Both pedagogical and evaluation methods reflect recent educational reforms, and the team teaching provides a model of collaboration between teachers and librarians.}, keywords = {curriculum}, @@ -739,7 +739,7 @@ @Book{ @Article{, author = {Williamson, Kirsty and Asla, Terryl}, title = {Information behavior of people in the fourth age: Implications for the conceptualization of information literacy}, - pages = {76-83}, + pages = {76--83}, volume = {31}, year = {2009}, } @@ -754,7 +754,7 @@ @Article{ @Article{, author = {Yaminfirooz, Mousa and Siamian, Hasan and Shahrabi, Afsaneh}, title = {Librarians' Role in Development and Achievement of Central Library Users' Information Literacy}, - pages = {238-241}, + pages = {238--241}, volume = {25}, abstract = {INTRODUCTION Due to the development of technologies, communications, databases and information resource varieties in today's information age, our various social, economic, cultural and political needs cannot be fulfilled by relying merely on past knowledge and skills as done previously. Information literacy (IL) as a set of necessary skills for all of us is an effective way of treating new technologies and their effective application in our lives. The study aimed to survey the library users' views in the Central Library of Babol University of Medical Sciences (The Library), Iran, on the role and influences of librarians on their IL development and improvement. METHODS This analytical survey used a researcher-made questionnaire for data collection. Research population consisted of all users referring Information Unit of The Library during 22 September - 20 December 2010. Of them, 150 users participating in at least 5 workshops held by The Library were selected as the study sample. RESULTS Based on the findings, 52.7 percent of the subjects rated the influence of the librarians on their IL development much and very much. 44.7 percent claimed that they more acquired IL skills from librarians rather than others. 100 (63.3%) subjects preferred workshops held by the librarian to other workshops. CONCLUSION The users of Information Unit of The Library perceived the training IL skills by librarians as a main influencing factor in their IL development and achievement. This emphasized the necessity of teaching IL to users and training the librarians in better teaching IL skills to library user.}, year = {2013}, @@ -776,7 +776,7 @@ @Article{ @Article{, author = {Lewis, Karron}, title = {The Process of Individual Consultation}, - pages = {59-73}, + pages = {59--73}, } @Article{, @@ -788,17 +788,17 @@ @Article{ @Article{, author = {Sorcinelli, Mary}, title = {Ten Principles of Good Practice in Creating and Sustaining Teaching and Learning Centers}, - pages = {9-23}, + pages = {9--23}, } @Article{, author = {Tiberius, Richard}, title = {Problem-Based Learning}, - pages = {180-194}, + pages = {180--194}, } @Article{, author = {Weber, Max}, title = {Wissenschaft als Beruf [1919]}, - pages = {1–23}, + pages = {1--23}, } From 6fa37b12fcae5ed45d96b1ec3bd5e40f9e52525f Mon Sep 17 00:00:00 2001 From: Christoph Date: Mon, 6 Jun 2022 22:01:24 +0200 Subject: [PATCH 07/27] test linux terminal (#8890) --- src/main/java/org/jabref/gui/desktop/os/Linux.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/org/jabref/gui/desktop/os/Linux.java b/src/main/java/org/jabref/gui/desktop/os/Linux.java index d12eb3b4339..924e456181e 100644 --- a/src/main/java/org/jabref/gui/desktop/os/Linux.java +++ b/src/main/java/org/jabref/gui/desktop/os/Linux.java @@ -133,8 +133,6 @@ public void openConsole(String absolutePath, DialogService dialogService) throws if (emulatorName != null) { emulatorName = emulatorName.substring(emulatorName.lastIndexOf(File.separator) + 1); - absolutePath = "\"" + absolutePath + "\""; - String[] cmd = {}; if (emulatorName.contains("gnome")) { cmd = new String[] {"gnome-terminal", "--working-directory=", absolutePath}; From 6fd3be598acbe25b9dabf540715e33c4754d2444 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Mon, 6 Jun 2022 22:01:23 +0200 Subject: [PATCH 08/27] Revert "Fix right clicking a group and choosing "remove selected entries from this group" leads to error when Bibtex source tab is selected (#8821)" This reverts commit 7257350b60427fbd6ee5b6f65641fe912ae8e78a. --- src/main/java/org/jabref/gui/entryeditor/SourceTab.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/org/jabref/gui/entryeditor/SourceTab.java b/src/main/java/org/jabref/gui/entryeditor/SourceTab.java index b9b534d30eb..d1773f9563f 100644 --- a/src/main/java/org/jabref/gui/entryeditor/SourceTab.java +++ b/src/main/java/org/jabref/gui/entryeditor/SourceTab.java @@ -306,9 +306,7 @@ private void storeSource(BibEntry outOfFocusEntry, String text) { new FieldWriter(fieldWriterPreferences).write(fieldName, newValue); compound.addEdit(new UndoableFieldChange(outOfFocusEntry, fieldName, oldValue, newValue)); - if (outOfFocusEntry.getField(fieldName).isPresent()) { - outOfFocusEntry.setField(fieldName, newValue); - } + outOfFocusEntry.setField(fieldName, newValue); } } From 5fe375d51fc580b081677496199d85a227415d04 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Mon, 6 Jun 2022 22:03:08 +0200 Subject: [PATCH 09/27] Remove obsolte CHANGELOG.md entry --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e3d23b986ec..e505e0fc3a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -41,7 +41,6 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We fixed an issue where an exception for DOI search occurred when the DOI contained urlencoded characters. [#8787](https://github.com/JabRef/jabref/issues/8787) - We fixed an issue which allow us to select and open identifiers from a popup list in the maintable [#8758](https://github.com/JabRef/jabref/issues/8758), [8802](https://github.com/JabRef/jabref/issues/8802) - We fixed an issue where the escape button had no functionality within the "Filter groups" textfield. [koppor#562](https://github.com/koppor/jabref/issues/562) -- We fixed an issue where right clicking a group and choose "remove selected entries from this group" leads to error when Bibtex source tab is selected. [#8012](https://github.com/JabRef/jabref/issues/8012) - When the proxy configuration removed the proxy user/password, this change is applied immediately. - We fixed an issue where removing several groups deletes only one of them. [#8390](https://github.com/JabRef/jabref/issues/8390) From 45b40a7e352db58ea53bb73d360b56036e5ec173 Mon Sep 17 00:00:00 2001 From: Stone Zhang <51976945+the-star-sea@users.noreply.github.com> Date: Tue, 7 Jun 2022 04:08:32 +0800 Subject: [PATCH 10/27] Fix exception if linked file has masked umlauts / invalid characters in path (#8851) Co-authored-by: Christoph --- CHANGELOG.md | 1 + .../jabref/logic/util/io/FileNameCleaner.java | 26 ++--------- .../org/jabref/model/util/FileHelper.java | 45 ++++++++++++++++++- .../org/jabref/model/util/FileHelperTest.java | 9 ++++ 4 files changed, 57 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e505e0fc3a5..1d2f9fcc458 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -41,6 +41,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We fixed an issue where an exception for DOI search occurred when the DOI contained urlencoded characters. [#8787](https://github.com/JabRef/jabref/issues/8787) - We fixed an issue which allow us to select and open identifiers from a popup list in the maintable [#8758](https://github.com/JabRef/jabref/issues/8758), [8802](https://github.com/JabRef/jabref/issues/8802) - We fixed an issue where the escape button had no functionality within the "Filter groups" textfield. [koppor#562](https://github.com/koppor/jabref/issues/562) +- We fixed an issue where the exception that there are invalid characters in filename. [#8786](https://github.com/JabRef/jabref/issues/8786) - When the proxy configuration removed the proxy user/password, this change is applied immediately. - We fixed an issue where removing several groups deletes only one of them. [#8390](https://github.com/JabRef/jabref/issues/8390) diff --git a/src/main/java/org/jabref/logic/util/io/FileNameCleaner.java b/src/main/java/org/jabref/logic/util/io/FileNameCleaner.java index 33733a3a900..83d764509e7 100644 --- a/src/main/java/org/jabref/logic/util/io/FileNameCleaner.java +++ b/src/main/java/org/jabref/logic/util/io/FileNameCleaner.java @@ -1,6 +1,6 @@ package org.jabref.logic.util.io; -import java.util.Arrays; +import org.jabref.model.util.FileHelper; /** * This class is based on http://stackoverflow.com/a/5626340/873282 @@ -9,22 +9,6 @@ */ public class FileNameCleaner { - /** - * MUST ALWAYS BE A SORTED ARRAY because it is used in a binary search - */ - // @formatter:off - private static final int[] ILLEGAL_CHARS = { - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 34, - 42, - 58, - 60, 62, 63, - 123, 124, 125 - }; - // @formatter:on - private FileNameCleaner() { } @@ -38,7 +22,7 @@ public static String cleanFileName(String badFileName) { StringBuilder cleanName = new StringBuilder(badFileName.length()); for (int i = 0; i < badFileName.length(); i++) { char c = badFileName.charAt(i); - if (FileNameCleaner.isCharLegal(c) && (c != '/') && (c != '\\')) { + if (FileHelper.isCharLegal(c) && (c != '/') && (c != '\\')) { cleanName.append(c); } else { cleanName.append('_'); @@ -58,7 +42,7 @@ public static String cleanDirectoryName(String badFileName) { StringBuilder cleanName = new StringBuilder(badFileName.length()); for (int i = 0; i < badFileName.length(); i++) { char c = badFileName.charAt(i); - if (FileNameCleaner.isCharLegal(c)) { + if (FileHelper.isCharLegal(c)) { cleanName.append(c); } else { cleanName.append('_'); @@ -66,8 +50,4 @@ public static String cleanDirectoryName(String badFileName) { } return cleanName.toString().trim(); } - - private static boolean isCharLegal(char c) { - return Arrays.binarySearch(FileNameCleaner.ILLEGAL_CHARS, c) < 0; - } } diff --git a/src/main/java/org/jabref/model/util/FileHelper.java b/src/main/java/org/jabref/model/util/FileHelper.java index 25509e50c69..5eddefb724e 100644 --- a/src/main/java/org/jabref/model/util/FileHelper.java +++ b/src/main/java/org/jabref/model/util/FileHelper.java @@ -6,6 +6,7 @@ import java.net.URL; import java.nio.file.Files; import java.nio.file.Path; +import java.util.Arrays; import java.util.List; import java.util.Locale; import java.util.Objects; @@ -22,8 +23,27 @@ import org.apache.tika.mime.MimeType; import org.apache.tika.mime.MimeTypeException; import org.apache.tika.parser.AutoDetectParser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class FileHelper { + /** + * MUST ALWAYS BE A SORTED ARRAY because it is used in a binary search + */ + // @formatter:off + private static final int[] ILLEGAL_CHARS = { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 34, + 42, + 58, + 60, 62, 63, + 123, 124, 125 + }; + // @formatter:on + + private static final Logger LOGGER = LoggerFactory.getLogger(FileHelper.class); /** * Returns the extension of a file or Optional.empty() if the file does not have one (no . in name). @@ -105,6 +125,26 @@ public static Optional find(String fileName, List directories) { .findFirst(); } + /** + * Detect illegal characters in given filename. + * + * @param fileName the fileName to detect + * @return Boolean whether there is a illegal name. + */ + public static boolean detectBadFileName(String fileName) { + for (int i = 0; i < fileName.length(); i++) { + char c = fileName.charAt(i); + if (!isCharLegal(c)) { + return true; + } + } + return false; + } + + public static boolean isCharLegal(char c) { + return Arrays.binarySearch(ILLEGAL_CHARS, c) < 0; + } + /** * Converts a relative filename to an absolute one, if necessary. Returns * an empty optional if the file does not exist. @@ -112,9 +152,12 @@ public static Optional find(String fileName, List directories) { public static Optional find(String fileName, Path directory) { Objects.requireNonNull(fileName); Objects.requireNonNull(directory); - // Explicitly check for an empty String, as File.exists returns true on that empty path, because it maps to the default jar location // if we then call toAbsoluteDir, it would always return the jar-location folder. This is not what we want here + if (detectBadFileName(fileName)) { + LOGGER.error("Invalid characters in path for file {} ", fileName); + return Optional.empty(); + } if (fileName.isEmpty()) { return Optional.of(directory); } diff --git a/src/test/java/org/jabref/model/util/FileHelperTest.java b/src/test/java/org/jabref/model/util/FileHelperTest.java index 6d047662b12..9584a7b53f8 100644 --- a/src/test/java/org/jabref/model/util/FileHelperTest.java +++ b/src/test/java/org/jabref/model/util/FileHelperTest.java @@ -4,6 +4,8 @@ import java.util.Optional; import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.ValueSource; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -25,4 +27,11 @@ public void testFileNameEmpty() { Path path = Path.of("/"); assertEquals(Optional.of(path), FileHelper.find("", path)); } + + @ParameterizedTest + @ValueSource(strings = { "*", "?", ">", "\"" }) + public void testFileNameIllegal(String fileName) { + Path path = Path.of("/"); + assertEquals(Optional.empty(), FileHelper.find(fileName, path)); + } } From 082e9cf480807f6f5d6423d82d9e81e73498b646 Mon Sep 17 00:00:00 2001 From: Christoph Date: Mon, 6 Jun 2022 22:11:15 +0200 Subject: [PATCH 11/27] Fix linux terminal opening process error (#8891) * test linux terminal * use stream gobbler on terminal process --- src/main/java/org/jabref/gui/desktop/os/Linux.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/jabref/gui/desktop/os/Linux.java b/src/main/java/org/jabref/gui/desktop/os/Linux.java index 924e456181e..c522f172c55 100644 --- a/src/main/java/org/jabref/gui/desktop/os/Linux.java +++ b/src/main/java/org/jabref/gui/desktop/os/Linux.java @@ -146,10 +146,10 @@ public void openConsole(String absolutePath, DialogService dialogService) throws ProcessBuilder builder = new ProcessBuilder(cmd); builder.directory(new File(absolutePath)); - builder.start(); + Process processTerminal = builder.start(); - StreamGobbler streamGobblerInput = new StreamGobbler(process.getInputStream(), LOGGER::debug); - StreamGobbler streamGobblerError = new StreamGobbler(process.getErrorStream(), LOGGER::debug); + StreamGobbler streamGobblerInput = new StreamGobbler(processTerminal.getInputStream(), LOGGER::debug); + StreamGobbler streamGobblerError = new StreamGobbler(processTerminal.getErrorStream(), LOGGER::debug); JabRefExecutorService.INSTANCE.execute(streamGobblerInput); JabRefExecutorService.INSTANCE.execute(streamGobblerError); From e3b2ab2264d184fafdf347d2ac3cca59b7b9c0f5 Mon Sep 17 00:00:00 2001 From: John Moore <39682+jakkarth@users.noreply.github.com> Date: Sun, 12 Jun 2022 07:10:14 -0400 Subject: [PATCH 12/27] Increase the network connection timeout and improve error message (#8894) In some instances, connecting to an existing JabRef instance may take longer than the original 200ms timeout. Here we increase that timeout to a full second. If it takes longer than that to connect to an existing instance, chances are something else bad is going on. Additionally, in a case where we attempt a ping but it fails for some reason, but we're also unable to bind the port to listen ourselves, we give the user a more informative error message about the potential cause of that problem, and offer two possible solutions: figure out what other process is already binding the port, or file a bug if that process happens to be JabRef (since that would indicate that a 1s timeout isn't sufficient). --- CHANGELOG.md | 1 + src/main/java/org/jabref/logic/remote/client/RemoteClient.java | 2 +- .../logic/remote/server/RemoteListenerServerLifecycle.java | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d2f9fcc458..f0fb2cba24c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,6 +30,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - The Medline/Pubmed search now also supports the [default fields and operators for searching](https://docs.jabref.org/collect/import-using-online-bibliographic-database#search-syntax). [forum#3554](https://discourse.jabref.org/t/native-pubmed-search/3354) - We improved group expansion arrow that prevent it from activating group when expanding or collapsing. [#7982](https://github.com/JabRef/jabref/issues/7982), [#3176](https://github.com/JabRef/jabref/issues/3176) - When configured SSL certificates changed, JabRef warns the user to restart to apply the configuration. +- We fixed an issue that caused JabRef to sometimes open multiple instances when "Remote Operation" is enabled. [#8653](https://github.com/JabRef/jabref/issues/8653) ### Fixed diff --git a/src/main/java/org/jabref/logic/remote/client/RemoteClient.java b/src/main/java/org/jabref/logic/remote/client/RemoteClient.java index 6942a902522..8090a73b9d5 100644 --- a/src/main/java/org/jabref/logic/remote/client/RemoteClient.java +++ b/src/main/java/org/jabref/logic/remote/client/RemoteClient.java @@ -18,7 +18,7 @@ public class RemoteClient { private static final Logger LOGGER = LoggerFactory.getLogger(RemoteClient.class); - private static final int TIMEOUT = 200; + private static final int TIMEOUT = 1000; private final int port; public RemoteClient(int port) { diff --git a/src/main/java/org/jabref/logic/remote/server/RemoteListenerServerLifecycle.java b/src/main/java/org/jabref/logic/remote/server/RemoteListenerServerLifecycle.java index 2f148bfdad4..e1ee48cbf75 100644 --- a/src/main/java/org/jabref/logic/remote/server/RemoteListenerServerLifecycle.java +++ b/src/main/java/org/jabref/logic/remote/server/RemoteListenerServerLifecycle.java @@ -43,7 +43,8 @@ public void open(MessageHandler messageHandler, int port, PreferencesService pre try { result = new RemoteListenerServerThread(messageHandler, port, preferencesService); } catch (BindException e) { - LOGGER.warn("Port is blocked", e); + LOGGER.warn("There was an error opening the configured network port {}. Please ensure there isn't another" + + " application already using that port.", port); result = null; } catch (IOException e) { result = null; From 5d3eb0864c3e4d9b2e92752008d110a208624512 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sun, 12 Jun 2022 20:31:31 +0200 Subject: [PATCH 13/27] Update to MADR 3.0.0-beta.2 (#8896) --- docs/adr.md | 37 ------- docs/adr/template.md | 71 -------------- ...0000-use-markdown-any-decision-records.md} | 18 ++-- .../0001-use-crowdin-for-translations.md | 2 +- .../0002-use-slf4j-for-logging.md | 2 +- .../0003-use-gradle-as-build-tool.md | 2 +- .../0004-use-mariadb-connector.md | 2 +- ...fully-support-utf8-only-for-latex-files.md | 2 +- ...nly-translated-strings-in-language-file.md | 2 +- .../0007-human-readable-changelog.md | 2 +- ...008-use-public-final-instead-of-getters.md | 2 +- .../0009-use-plain-junit5-for-testing.md | 2 +- .../0010-use-h2-as-internal-database.md | 2 +- ...11-test-external-links-in-documentation.md | 2 +- ...-different-bibEntry-formats-of-fetchers.md | 2 +- ...13-add-native-support-biblatex-software.md | 2 +- ...e-URL-creation-to-enable-proper-logging.md | 2 +- ...tract-query-syntax-for-query-conversion.md | 2 +- .../0016-mutable-preferences-objects.md | 2 +- .../0017-allow-model-access-logic.md | 2 +- ...ssion-to-split-multiple-sentence-titles.md | 2 +- ...ement-special-fields-as-separate-fields.md | 8 +- .../0020-use-Jackson-to-parse-study-yml.md | 6 +- .../0021-keep-study-as-a-dto.md | 8 +- ...-stop-words-during-query-transformation.md | 14 +-- .../0023-localized-preferences.md | 4 +- ...s-indicator-for-BibTeX-string-constants.md | 22 ++--- .../0025-reviewdog-reviews.md | 3 +- docs/decisions/adr-template.md | 96 +++++++++++++++++++ docs/decisions/index.md | 12 +++ 30 files changed, 165 insertions(+), 170 deletions(-) delete mode 100644 docs/adr.md delete mode 100644 docs/adr/template.md rename docs/{adr/0000-use-markdown-architectural-decision-records.md => decisions/0000-use-markdown-any-decision-records.md} (63%) rename docs/{adr => decisions}/0001-use-crowdin-for-translations.md (94%) rename docs/{adr => decisions}/0002-use-slf4j-for-logging.md (98%) rename docs/{adr => decisions}/0003-use-gradle-as-build-tool.md (99%) rename docs/{adr => decisions}/0004-use-mariadb-connector.md (98%) rename docs/{adr => decisions}/0005-fully-support-utf8-only-for-latex-files.md (97%) rename docs/{adr => decisions}/0006-only-translated-strings-in-language-file.md (98%) rename docs/{adr => decisions}/0007-human-readable-changelog.md (95%) rename docs/{adr => decisions}/0008-use-public-final-instead-of-getters.md (95%) rename docs/{adr => decisions}/0009-use-plain-junit5-for-testing.md (98%) rename docs/{adr => decisions}/0010-use-h2-as-internal-database.md (94%) rename docs/{adr => decisions}/0011-test-external-links-in-documentation.md (98%) rename docs/{adr => decisions}/0012-handle-different-bibEntry-formats-of-fetchers.md (99%) rename docs/{adr => decisions}/0013-add-native-support-biblatex-software.md (98%) rename docs/{adr => decisions}/0014-separate-URL-creation-to-enable-proper-logging.md (99%) rename docs/{adr => decisions}/0015-support-an-abstract-query-syntax-for-query-conversion.md (99%) rename docs/{adr => decisions}/0016-mutable-preferences-objects.md (95%) rename docs/{adr => decisions}/0017-allow-model-access-logic.md (98%) rename docs/{adr => decisions}/0018-use-regular-expression-to-split-multiple-sentence-titles.md (97%) rename docs/{adr => decisions}/0019-implement-special-fields-as-separate-fields.md (93%) rename docs/{adr => decisions}/0020-use-Jackson-to-parse-study-yml.md (90%) rename docs/{adr => decisions}/0021-keep-study-as-a-dto.md (78%) rename docs/{adr => decisions}/0022-remove-stop-words-during-query-transformation.md (50%) rename docs/{adr => decisions}/0023-localized-preferences.md (87%) rename docs/{adr => decisions}/0024-use-#-as-indicator-for-BibTeX-string-constants.md (88%) rename docs/{adr => decisions}/0025-reviewdog-reviews.md (98%) create mode 100644 docs/decisions/adr-template.md create mode 100644 docs/decisions/index.md diff --git a/docs/adr.md b/docs/adr.md deleted file mode 100644 index 23a98d057ac..00000000000 --- a/docs/adr.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -nav_order: 3 -has_children: true -has_toc: false ---- -# Architectural Decisions - -Architectural decisions for JabRef: - -* [ADR-0000](./adr/0000-use-markdown-architectural-decision-records.md) - Use Markdown Architectural Decision Records -* [ADR-0001](./adr/0001-use-crowdin-for-translations.md) - Use Crowdin for translations -* [ADR-0002](./adr/0002-use-slf4j-for-logging.md) - Use slf4j together with log4j2 for logging -* [ADR-0003](./adr/0003-use-gradle-as-build-tool.md) - Use Gradle as build tool -* [ADR-0004](./adr/0004-use-mariadb-connector.md) - Use MariaDB Connector -* [ADR-0005](./adr/0005-fully-support-utf8-only-for-latex-files.md) - Fully Support UTF-8 Only For LaTeX Files -* [ADR-0006](./adr/0006-only-translated-strings-in-language-file.md) - Only translated strings in language file -* [ADR-0007](./adr/0007-human-readable-changelog.md) - Provide a human-readable changelog -* [ADR-0008](./adr/0008-use-public-final-instead-of-getters.md) - Use public final instead of getters to offer access to immutable variables -* [ADR-0009](./adr/0009-use-plain-junit5-for-testing.md) - Use Plain JUnit5 for advanced test assertions -* [ADR-0010](./adr/0010-use-h2-as-internal-database.md) - Use H2 as Internal SQL Database -* [ADR-0011](./adr/0011-test-external-links-in-documentation.md) - Test external links in documentation -* [ADR-0012](./adr/0012-handle-different-bibEntry-formats-of-fetchers.md) - Handle different bibentry formats of fetchers by adding a layer -* [ADR-0013](./adr/0013-add-native-support-biblatex-software.md) - Add Native Support for BibLatex-Software -* [ADR-0014](./adr/0014-separate-URL-creation-to-enable-proper-logging.md) - Separate URL creation to enable proper logging -* [ADR-0015](./adr/0015-support-an-abstract-query-syntax-for-query-conversion.md) - Query syntax design -* [ADR-0016](./adr/0016-mutable-preferences-objects.md) - Mutable preferences objects -* [ADR-0017](./adr/0017-allow-model-access-logic.md) - Allow org.jabref.model to access org.jabref.logic -* [ADR-0018](./adr/0018-use-regular-expression-to-split-multiple-sentence-titles.md) - Use regular expression to split multiple-sentence titles -* [ADR-0019](./adr/0019-implement-special-fields-as-separate-fields.md) - Implement special fields as separate fields -* [ADR-0020](./adr/0020-use-Jackson-to-parse-study-yml.md) - Use Jackson to parse study.yml -* [ADR-0021](./adr/0021-keep-study-as-a-dto.md) - Keep study as a DTO -* [ADR-0022](./adr/0022-remove-stop-words-during-query-transformation.md) - Remove stop words during query transformation -* [ADR-0023](./adr/0023-localized-preferences.md) - Localized Preferences -* [ADR-0024](./adr/0024-use-%23-as-indicator-for-BibTeX-string-constants.md) - Use `#` as indicator for BibTeX string constants -* [ADR-0025](./adr/0025-reviewdog-reviews.md) - Reviewdog findings are code reviews - -For new ADRs, please use [template.md](https://github.com/JabRef/jabref/tree/main/docs/adr/template.md) as basis. More information on the used format is available at [https://adr.github.io/madr/](https://adr.github.io/madr/). General information about architectural decision records is available at [https://adr.github.io/](https://adr.github.io). Then add them to the above list. diff --git a/docs/adr/template.md b/docs/adr/template.md deleted file mode 100644 index 14168d85de4..00000000000 --- a/docs/adr/template.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -parent: Architectural Decisions -nav_order: 100 ---- -# MADR Template - -The template of [MADR](https://adr.github.io/madr/) is available at . -You can omit the `<-- optional -->` parts, which lead to a very minimal ADR: - -```markdown -# [short title of solved problem and solution] - -## Context and Problem Statement - -[Describe the context and problem statement, e.g., in free form using two to three sentences. You may want to articulate the problem in form of a question.] - -## Considered Options - -* [option 1] -* [option 2] -* [option 3] -* … - -## Decision Outcome - -Chosen option: "[option 1]", because [justification. e.g., only option, which meets k.o. criterion decision driver | which resolves force force | … ]. -``` - -In case you want to include the pros and cons of the options, the template is as follows: - -```markdown -# [short title of solved problem and solution] - -## Context and Problem Statement - -[Describe the context and problem statement, e.g., in free form using two to three sentences. You may want to articulate the problem in form of a question.] - -## Considered Options - -* [option 1] -* [option 2] -* [option 3] -* … - -## Decision Outcome - -Chosen option: "[option 1]", because comes out best (see below). - -## Pros and Cons of the Options - -### [option 1] - -* Good, because [argument a] -* Good, because [argument b] -* Bad, because [argument c] -* … - -### [option 2] - -* Good, because [argument a] -* Good, because [argument b] -* Bad, because [argument c] -* … - -### [option 3] - -* Good, because [argument a] -* Good, because [argument b] -* Bad, because [argument c] -* … -``` diff --git a/docs/adr/0000-use-markdown-architectural-decision-records.md b/docs/decisions/0000-use-markdown-any-decision-records.md similarity index 63% rename from docs/adr/0000-use-markdown-architectural-decision-records.md rename to docs/decisions/0000-use-markdown-any-decision-records.md index 2bf93013d01..508c6461700 100644 --- a/docs/adr/0000-use-markdown-architectural-decision-records.md +++ b/docs/decisions/0000-use-markdown-any-decision-records.md @@ -1,33 +1,29 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 0 --- -# Use Markdown Architectural Decision Records +# Use Markdown Any Decision Records ## Context and Problem Statement -We want to record architectural decisions made in this project. Which format and structure should these records follow? +We want to record any decisions made in this project independent whether decisions concern the architecture ("architectural decision record"), the code, or other fields. +Which format and structure should these records follow? ## Considered Options -* [MADR](https://adr.github.io/madr/) 2.1.2 – The Markdown Architectural Decision Records * [Michael Nygard's template](http://thinkrelevance.com/blog/2011/11/15/documenting-architecture-decisions) – The first incarnation of the term "ADR" * [Sustainable Architectural Decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions) – The Y-Statements -* Other templates listed at [https://github.com/joelparkerhenderson/architecture\_decision\_record](https://github.com/joelparkerhenderson/architecture_decision_record) +* Other templates listed at * Formless – No conventions for file format and structure ## Decision Outcome -Chosen option: "MADR 2.1.2", because +Chosen option: "MADR", because * Implicit assumptions should be made explicit. - Design documentation is important to enable people understanding the decisions later on. - See also [A rational design process: How and why to fake it](https://doi.org/10.1109/TSE.1986.6312940). - +* MADR allows for structured capturing of any decision. * The MADR format is lean and fits our development style. * The MADR structure is comprehensible and facilitates usage & maintenance. * The MADR project is vivid. -* Version 2.1.2 is the latest one available when starting to document ADRs. - diff --git a/docs/adr/0001-use-crowdin-for-translations.md b/docs/decisions/0001-use-crowdin-for-translations.md similarity index 94% rename from docs/adr/0001-use-crowdin-for-translations.md rename to docs/decisions/0001-use-crowdin-for-translations.md index 44cd179dbde..5ded77562e0 100644 --- a/docs/adr/0001-use-crowdin-for-translations.md +++ b/docs/decisions/0001-use-crowdin-for-translations.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 1 --- # Use Crowdin for translations diff --git a/docs/adr/0002-use-slf4j-for-logging.md b/docs/decisions/0002-use-slf4j-for-logging.md similarity index 98% rename from docs/adr/0002-use-slf4j-for-logging.md rename to docs/decisions/0002-use-slf4j-for-logging.md index 951ed82e573..0edd6ca4bb2 100644 --- a/docs/adr/0002-use-slf4j-for-logging.md +++ b/docs/decisions/0002-use-slf4j-for-logging.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 2 --- # Use slf4j together with log4j2 for logging diff --git a/docs/adr/0003-use-gradle-as-build-tool.md b/docs/decisions/0003-use-gradle-as-build-tool.md similarity index 99% rename from docs/adr/0003-use-gradle-as-build-tool.md rename to docs/decisions/0003-use-gradle-as-build-tool.md index 9dbcf81eb61..995ad60c781 100644 --- a/docs/adr/0003-use-gradle-as-build-tool.md +++ b/docs/decisions/0003-use-gradle-as-build-tool.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 3 --- # Use Gradle as build tool diff --git a/docs/adr/0004-use-mariadb-connector.md b/docs/decisions/0004-use-mariadb-connector.md similarity index 98% rename from docs/adr/0004-use-mariadb-connector.md rename to docs/decisions/0004-use-mariadb-connector.md index a79401ff4a3..f45f5d6bc66 100644 --- a/docs/adr/0004-use-mariadb-connector.md +++ b/docs/decisions/0004-use-mariadb-connector.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 4 --- # Use MariaDB Connector diff --git a/docs/adr/0005-fully-support-utf8-only-for-latex-files.md b/docs/decisions/0005-fully-support-utf8-only-for-latex-files.md similarity index 97% rename from docs/adr/0005-fully-support-utf8-only-for-latex-files.md rename to docs/decisions/0005-fully-support-utf8-only-for-latex-files.md index d10a7e3126c..44d98cf8a0d 100644 --- a/docs/adr/0005-fully-support-utf8-only-for-latex-files.md +++ b/docs/decisions/0005-fully-support-utf8-only-for-latex-files.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 5 --- # Fully Support UTF-8 Only For LaTeX Files diff --git a/docs/adr/0006-only-translated-strings-in-language-file.md b/docs/decisions/0006-only-translated-strings-in-language-file.md similarity index 98% rename from docs/adr/0006-only-translated-strings-in-language-file.md rename to docs/decisions/0006-only-translated-strings-in-language-file.md index e068388bd66..609af7ef1ca 100644 --- a/docs/adr/0006-only-translated-strings-in-language-file.md +++ b/docs/decisions/0006-only-translated-strings-in-language-file.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 6 --- # Only translated strings in language file diff --git a/docs/adr/0007-human-readable-changelog.md b/docs/decisions/0007-human-readable-changelog.md similarity index 95% rename from docs/adr/0007-human-readable-changelog.md rename to docs/decisions/0007-human-readable-changelog.md index 3cef23fc372..3fec7c2b680 100644 --- a/docs/adr/0007-human-readable-changelog.md +++ b/docs/decisions/0007-human-readable-changelog.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 7 --- # Provide a human-readable changelog diff --git a/docs/adr/0008-use-public-final-instead-of-getters.md b/docs/decisions/0008-use-public-final-instead-of-getters.md similarity index 95% rename from docs/adr/0008-use-public-final-instead-of-getters.md rename to docs/decisions/0008-use-public-final-instead-of-getters.md index 6475eab8d11..e18becde55c 100644 --- a/docs/adr/0008-use-public-final-instead-of-getters.md +++ b/docs/decisions/0008-use-public-final-instead-of-getters.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 8 --- # Use `public final` instead of getters to offer access to immutable variables diff --git a/docs/adr/0009-use-plain-junit5-for-testing.md b/docs/decisions/0009-use-plain-junit5-for-testing.md similarity index 98% rename from docs/adr/0009-use-plain-junit5-for-testing.md rename to docs/decisions/0009-use-plain-junit5-for-testing.md index 71b871fd59c..3d88c5989e3 100644 --- a/docs/adr/0009-use-plain-junit5-for-testing.md +++ b/docs/decisions/0009-use-plain-junit5-for-testing.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 9 --- # Use Plain JUnit5 for advanced test assertions diff --git a/docs/adr/0010-use-h2-as-internal-database.md b/docs/decisions/0010-use-h2-as-internal-database.md similarity index 94% rename from docs/adr/0010-use-h2-as-internal-database.md rename to docs/decisions/0010-use-h2-as-internal-database.md index 3c8f91698fd..e19640fbb1f 100644 --- a/docs/adr/0010-use-h2-as-internal-database.md +++ b/docs/decisions/0010-use-h2-as-internal-database.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 10 --- # Use H2 as Internal SQL Database diff --git a/docs/adr/0011-test-external-links-in-documentation.md b/docs/decisions/0011-test-external-links-in-documentation.md similarity index 98% rename from docs/adr/0011-test-external-links-in-documentation.md rename to docs/decisions/0011-test-external-links-in-documentation.md index fcfcc4246db..d77ac25ea29 100644 --- a/docs/adr/0011-test-external-links-in-documentation.md +++ b/docs/decisions/0011-test-external-links-in-documentation.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 11 --- # Test external links in documentation diff --git a/docs/adr/0012-handle-different-bibEntry-formats-of-fetchers.md b/docs/decisions/0012-handle-different-bibEntry-formats-of-fetchers.md similarity index 99% rename from docs/adr/0012-handle-different-bibEntry-formats-of-fetchers.md rename to docs/decisions/0012-handle-different-bibEntry-formats-of-fetchers.md index e07c57fb48d..3f454d61bbe 100644 --- a/docs/adr/0012-handle-different-bibEntry-formats-of-fetchers.md +++ b/docs/decisions/0012-handle-different-bibEntry-formats-of-fetchers.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 12 --- # Handle different bibentry formats of fetchers by adding a layer diff --git a/docs/adr/0013-add-native-support-biblatex-software.md b/docs/decisions/0013-add-native-support-biblatex-software.md similarity index 98% rename from docs/adr/0013-add-native-support-biblatex-software.md rename to docs/decisions/0013-add-native-support-biblatex-software.md index 33930158625..cedc2a75178 100644 --- a/docs/adr/0013-add-native-support-biblatex-software.md +++ b/docs/decisions/0013-add-native-support-biblatex-software.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 13 --- # Add Native Support for BibLatex-Software diff --git a/docs/adr/0014-separate-URL-creation-to-enable-proper-logging.md b/docs/decisions/0014-separate-URL-creation-to-enable-proper-logging.md similarity index 99% rename from docs/adr/0014-separate-URL-creation-to-enable-proper-logging.md rename to docs/decisions/0014-separate-URL-creation-to-enable-proper-logging.md index 9e6f7835ef3..8a13e206a45 100644 --- a/docs/adr/0014-separate-URL-creation-to-enable-proper-logging.md +++ b/docs/decisions/0014-separate-URL-creation-to-enable-proper-logging.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 14 --- # Separate URL creation to enable proper logging diff --git a/docs/adr/0015-support-an-abstract-query-syntax-for-query-conversion.md b/docs/decisions/0015-support-an-abstract-query-syntax-for-query-conversion.md similarity index 99% rename from docs/adr/0015-support-an-abstract-query-syntax-for-query-conversion.md rename to docs/decisions/0015-support-an-abstract-query-syntax-for-query-conversion.md index aa84c5cede5..5b51e0cc062 100644 --- a/docs/adr/0015-support-an-abstract-query-syntax-for-query-conversion.md +++ b/docs/decisions/0015-support-an-abstract-query-syntax-for-query-conversion.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 15 --- # Query syntax design diff --git a/docs/adr/0016-mutable-preferences-objects.md b/docs/decisions/0016-mutable-preferences-objects.md similarity index 95% rename from docs/adr/0016-mutable-preferences-objects.md rename to docs/decisions/0016-mutable-preferences-objects.md index 31bb98c860f..74822d48712 100644 --- a/docs/adr/0016-mutable-preferences-objects.md +++ b/docs/decisions/0016-mutable-preferences-objects.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 16 --- # Mutable preferences objects diff --git a/docs/adr/0017-allow-model-access-logic.md b/docs/decisions/0017-allow-model-access-logic.md similarity index 98% rename from docs/adr/0017-allow-model-access-logic.md rename to docs/decisions/0017-allow-model-access-logic.md index 000e38eefb0..d254d0b1b27 100644 --- a/docs/adr/0017-allow-model-access-logic.md +++ b/docs/decisions/0017-allow-model-access-logic.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 17 --- # Allow org.jabref.model to access org.jabref.logic diff --git a/docs/adr/0018-use-regular-expression-to-split-multiple-sentence-titles.md b/docs/decisions/0018-use-regular-expression-to-split-multiple-sentence-titles.md similarity index 97% rename from docs/adr/0018-use-regular-expression-to-split-multiple-sentence-titles.md rename to docs/decisions/0018-use-regular-expression-to-split-multiple-sentence-titles.md index a6056ab5a2d..21d6a269656 100644 --- a/docs/adr/0018-use-regular-expression-to-split-multiple-sentence-titles.md +++ b/docs/decisions/0018-use-regular-expression-to-split-multiple-sentence-titles.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 18 --- # Use regular expression to split multiple-sentence titles diff --git a/docs/adr/0019-implement-special-fields-as-separate-fields.md b/docs/decisions/0019-implement-special-fields-as-separate-fields.md similarity index 93% rename from docs/adr/0019-implement-special-fields-as-separate-fields.md rename to docs/decisions/0019-implement-special-fields-as-separate-fields.md index cddfb652d01..77188d32ed3 100644 --- a/docs/adr/0019-implement-special-fields-as-separate-fields.md +++ b/docs/decisions/0019-implement-special-fields-as-separate-fields.md @@ -1,12 +1,12 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 19 --- # Implement special fields as separate fields ## Context and Problem Statement -How to implement special fields in bibtex databases? +How to implement special fields in BibTeX databases? ## Considered Options @@ -52,7 +52,7 @@ keywords = {prio1, printed, read} ``` * Good, because does not bloat the BibTeX file. Typically, 50% of the lines are special fields -* Good, because the user can easily assign a special field. E.g, typing “, prio1” into keywords instead of “\n priority = {prio1},” +* Good, because the user can easily assign a special field. E.g, typing “, prio1” into keywords instead of “`\n priority = {prio1},`” * Bad, because they need to be synchronized to fields (because otherwise, the maintable cannot render it) * Bad, because keywords are related to the actual content * Bad, because some users want to keep publisher keywords @@ -70,7 +70,7 @@ jabrefspecial = {prio1, printed, red} ### Special fields as sub-feature of groups -* Good, because one concept rulez them all +* Good, because one concept rules them all * Good, because groups already provide [explicit handling of certain cases](https://docs.jabref.org/finding-sorting-and-cleaning-entries/groups#types-of-groups): groups based on keywords and groups based on author's last names * Bad, because main table implementation changes: Currently, each column in the main table represents a field. The main may [mark entries belonging to certain groups](https://docs.jabref.org/finding-sorting-and-cleaning-entries/groups#group-color-bars-in-the-entry-table), but does offer an explicit rendering of groups * Bad, because groups are more a query on data of the entries instead of explicitly assigning entries to a group diff --git a/docs/adr/0020-use-Jackson-to-parse-study-yml.md b/docs/decisions/0020-use-Jackson-to-parse-study-yml.md similarity index 90% rename from docs/adr/0020-use-Jackson-to-parse-study-yml.md rename to docs/decisions/0020-use-Jackson-to-parse-study-yml.md index 652e93b7017..ac58c3f7689 100644 --- a/docs/adr/0020-use-Jackson-to-parse-study-yml.md +++ b/docs/decisions/0020-use-Jackson-to-parse-study-yml.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 20 --- # Use Jackson to parse study.yml @@ -7,7 +7,7 @@ nav_order: 20 ## Context and Problem Statement The study definition file is formulated as a YAML document. -To accessed the definition within JabRef this document has to be parsed. +To access the definition within JabRef this document has to be parsed. What parser should be used to parse YAML files? ## Considered Options @@ -20,7 +20,7 @@ What parser should be used to parse YAML files? ## Decision Outcome -Chosen option: Jackson, because as it is a dedicated library for parsing YAML. yamlbeans also seem to be viable. They all offer similar functionality +Chosen option: Jackson, because as it is a dedicated library for parsing YAML. `yamlbeans` also seem to be viable. They all offer similar functionality. ## Pros and Cons of the Options diff --git a/docs/adr/0021-keep-study-as-a-dto.md b/docs/decisions/0021-keep-study-as-a-dto.md similarity index 78% rename from docs/adr/0021-keep-study-as-a-dto.md rename to docs/decisions/0021-keep-study-as-a-dto.md index 1463ad463ee..94ff587450d 100644 --- a/docs/adr/0021-keep-study-as-a-dto.md +++ b/docs/decisions/0021-keep-study-as-a-dto.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 21 --- # Keep study as a DTO @@ -7,7 +7,7 @@ nav_order: 21 ## Context and Problem Statement The study holds query and library entries that could be replaced respectively with complex query and fetcher instances. -This poses the question: should the study remain a pure DTO object or should it contain direct object instances? +This poses the question: should the study remain a pure DTO object, or should it contain direct object instances? ## Considered Options @@ -16,7 +16,7 @@ This poses the question: should the study remain a pure DTO object or should it ## Decision Outcome -Chosen option: "Keep study as DTO and use transformators", because comes out best (see below). +Chosen option: "Keep study as DTO and use transformers", because comes out best (see below). ## Pros and Cons of the Options @@ -30,5 +30,5 @@ Chosen option: "Keep study as DTO and use transformators", because comes out bes * Good, because no need for database and query entries * Bad, because custom de-/serializers for fetchers and complex queries needed -* Bad, because harder to maintain than using "vanilla" jackson de-/serialization +* Bad, because harder to maintain than using "vanilla" Jackson de-/serialization * … diff --git a/docs/adr/0022-remove-stop-words-during-query-transformation.md b/docs/decisions/0022-remove-stop-words-during-query-transformation.md similarity index 50% rename from docs/adr/0022-remove-stop-words-during-query-transformation.md rename to docs/decisions/0022-remove-stop-words-during-query-transformation.md index 538ebd25bc9..f8331410aec 100644 --- a/docs/adr/0022-remove-stop-words-during-query-transformation.md +++ b/docs/decisions/0022-remove-stop-words-during-query-transformation.md @@ -1,12 +1,12 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 22 --- # Remove stop words during query transformation ## Context and Problem Statement -When quering for a title of a paper, the title might contain stop words such as "a", "for", "and". Some data providers return 0 results when querying for a stop word. When transforming a query to the lucene syntax, the default Boolean operator `and` is used. When using IEEE, this often leads to zero search results. +When querying for a title of a paper, the title might contain stop words such as "a", "for", "and". Some data providers return 0 results when querying for a stop word. When transforming a query to the Lucene syntax, the default Boolean operator `and` is used. When using IEEE, this often leads to zero search results. ## Decision Drivers @@ -27,11 +27,11 @@ Chosen option: "Remove stop words from the query", because comes out best. ### Remove stop words from the query -* Good, because Good search results if no Boolean operators are used -* Bad, because When using complex queries and stop words are used alone, they are silently removed +* Good, because good search results if no Boolean operators are used +* Bad, because when using complex queries and stop words are used alone, they are silently removed ### Automatically enclose in quotes if no Boolean operator is contained -* Good, because Good search results if no Boolean operators are used -* Bad, because Silently leads to different results -* Bad, because Inconsistent to Google behavior +* Good, because good search results if no Boolean operators are used +* Bad, because silently leads to different results +* Bad, because inconsistent to Google behavior diff --git a/docs/adr/0023-localized-preferences.md b/docs/decisions/0023-localized-preferences.md similarity index 87% rename from docs/adr/0023-localized-preferences.md rename to docs/decisions/0023-localized-preferences.md index 3515ef8031f..ab0701dae3a 100644 --- a/docs/adr/0023-localized-preferences.md +++ b/docs/decisions/0023-localized-preferences.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 23 --- # Localized Preferences @@ -9,7 +9,7 @@ nav_order: 23 ## Context and Problem Statement -Currently, JabRef uses some localized preferences. We want to remove the Localization-dependency from the JabRefPreferences and move the Localization to where the String is used. +Currently, JabRef uses some localized preferences. We want to remove the Localization-dependency from the `JabRefPreferences` and move the Localization to where the String is used. The problem is how to store the default values. ## Considered Options diff --git a/docs/adr/0024-use-#-as-indicator-for-BibTeX-string-constants.md b/docs/decisions/0024-use-#-as-indicator-for-BibTeX-string-constants.md similarity index 88% rename from docs/adr/0024-use-#-as-indicator-for-BibTeX-string-constants.md rename to docs/decisions/0024-use-#-as-indicator-for-BibTeX-string-constants.md index 522359e3a81..881408c56ab 100644 --- a/docs/adr/0024-use-#-as-indicator-for-BibTeX-string-constants.md +++ b/docs/decisions/0024-use-#-as-indicator-for-BibTeX-string-constants.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 24 --- # Use `#` as indicator for BibTeX string constants @@ -25,7 +25,7 @@ Affected code is (at least) `org.jabref.logic.importer.fileformat.BibtexParser#p ## Decision Outcome -Chosen option: "Wrap string constants in #", because already existing behavior +Chosen option: "Wrap string constants in #", because already existing behavior. ## Pros and Cons of the Options @@ -66,10 +66,10 @@ field2 = {value} -> value field1 = value # value --> §value§ # §value§ ``` -* Good, because Easy to implement -* Good, because No conflict with BibTeX's `#` sign -* Bad, because Documentation needs to be updated -* Bad, because `§` is not available on an US keyboard +* Good, because easy to implement +* Good, because no conflict with BibTeX's `#` sign +* Bad, because documentation needs to be updated +* Bad, because `§` is not available on a US keyboard ### Replace the internal `#` in JabRef by the non-used character `%` @@ -86,7 +86,7 @@ field2 = {value} -> value field1 = value # value --> %value% # %value% ``` -* Good, because A user does not write LaTeX comments inside a string +* Good, because a user does not write LaTeX comments inside a string * Bad, because `%` could be used in Markdown, too * Bad, because `%` is used for comments in LaTeX and thus migtht cause confusion * Bad, because `%` could appear in URLs: There is [url percent encoding](https://www.w3schools.com/tags/ref_urlencode.asp) @@ -124,7 +124,7 @@ field2 = {value} -> value field1 = value # value --> &value # &value ``` -* Good, because Near to C syntax +* Good, because near to C syntax * Bad, because `&` is a LaTeX command for tables * Bad, because `&` could appear in URLs @@ -132,6 +132,6 @@ field1 = value # value --> &value # &value `org.jabref.model.entry.BibEntry#setField(org.jabref.model.entry.field.Field, java.lang.String)` changes to `org.jabref.model.entry.BibEntry#setField(org.jabref.model.entry.field.Field, org.jabref.model.entry.field.Value)` (org.jabref.model.entry.BibEntry#setField(org.jabref.model.entry.field.Field, java.lang.String)). This would bring JabRef's internal data model even more close to BibTeX -* Good, because More object-orientated design of BibTeX field storage -* Good, because Easies implementation of an advanced field editor -* Bad, because High effort to implement +* Good, because more object-orientated design of BibTeX field storage +* Good, because eases implementation of an advanced field editor +* Bad, because high effort to implement diff --git a/docs/adr/0025-reviewdog-reviews.md b/docs/decisions/0025-reviewdog-reviews.md similarity index 98% rename from docs/adr/0025-reviewdog-reviews.md rename to docs/decisions/0025-reviewdog-reviews.md index d7c2ea9477b..512aed39d13 100644 --- a/docs/adr/0025-reviewdog-reviews.md +++ b/docs/decisions/0025-reviewdog-reviews.md @@ -1,5 +1,5 @@ --- -parent: Architectural Decisions +parent: Decision Records nav_order: 25 --- # Reviewdog findings are code reviews @@ -21,7 +21,6 @@ How to quickly provide feedback to contributors that checkstyle was not matched? ## Considered Options - * Use [Reviewdog's PullRequest review reporter](https://github.com/reviewdog/reviewdog#reporter-github-pullrequest-review-comment--reportergithub-pr-review) * Use [Reviewdog's check reporter](https://github.com/reviewdog/reviewdog#reporter-github-checks--reportergithub-check) * Use [comment-failure-action](https://github.com/quipper/comment-failure-action) diff --git a/docs/decisions/adr-template.md b/docs/decisions/adr-template.md new file mode 100644 index 00000000000..47b62f5a815 --- /dev/null +++ b/docs/decisions/adr-template.md @@ -0,0 +1,96 @@ +--- +# Configuration for the Jekyll template "Just the Docs" +# Remove it when creating a new ADR +title: ADR Template + +# Replace this with the number of the ADR +nav_order: 100 + +# Keep this +parent: Decision Records + +# These are optional elements. Feel free to remove any of them. +# status: {proposed | rejected | accepted | deprecated | … | superseded by [ADR-0005](0005-example.md)} +# date: {YYYY-MM-DD when the decision was last updated} +# deciders: {list everyone involved in the decision} +# consulted: {list everyone whose opinions are sought (typically subject-matter experts); and with whom there is a two-way communication} +# informed: {list everyone who is kept up-to-date on progress; and with whom there is a one-way communication} +--- + + +# {short title of solved problem and solution} + +## Context and Problem Statement + +{Describe the context and problem statement, e.g., in free form using two to three sentences or in the form of an illustrative story. + You may want to articulate the problem in form of a question and add links to collaboration boards or issue management systems.} + + +## Decision Drivers + +* {decision driver 1, e.g., a force, facing concern, …} +* {decision driver 2, e.g., a force, facing concern, …} +* … + +## Considered Options + +* {title of option 1} +* {title of option 2} +* {title of option 3} +* … + +## Decision Outcome + +Chosen option: "{title of option 1}", because +{justification. e.g., only option, which meets k.o. criterion decision driver | which resolves force {force} | … | comes out best (see below)}. + + +### Positive Consequences + +* {e.g., improvement of one or more desired qualities, …} +* … + + +### Negative Consequences + +* {e.g., compromising one or more desired qualities, …} +* … + + +## Validation + +{describe how the implementation of/compliance with the ADR is validated. E.g., by a review or an ArchUnit test} + + +## Pros and Cons of the Options + +### {title of option 1} + + +{example | description | pointer to more information | …} + +* Good, because {argument a} +* Good, because {argument b} + +* Neutral, because {argument c} +* Bad, because {argument d} +* … + +### {title of other option} + +{example | description | pointer to more information | …} + +* Good, because {argument a} +* Good, because {argument b} +* Neutral, because {argument c} +* Bad, because {argument d} +* … + + +## More Information + +{You might want to provide additional evidence/confidence for the decision outcome here and/or + document the team agreement on the decision and/or + define when this decision when and how the decision should be realized and if/when it should be re-visited and/or + how the decision is validated. + Links to other decisions and resources might here appear as well.} diff --git a/docs/decisions/index.md b/docs/decisions/index.md new file mode 100644 index 00000000000..f6f60378dd3 --- /dev/null +++ b/docs/decisions/index.md @@ -0,0 +1,12 @@ +--- +nav_order: 3 +has_children: true +--- +# Decision Records + +Below, all "any decision records" for JabRef are listed. +This list uses the TOC functionality of the [Just the Docs Jekyll template](https://just-the-docs.github.io/just-the-docs/). + +For new ADRs, please use [adr-template.md](adr-template.md) as basis. +More information on MADR is available at . +General information about architectural decision records is available at . From 12945ce7c1f98c7a7c44b8236118bb32d01c1657 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Jun 2022 17:00:12 +0200 Subject: [PATCH 14/27] Bump antlr-runtime from 3.5.2 to 3.5.3 (#8897) Bumps [antlr-runtime](https://github.com/antlr/antlr3) from 3.5.2 to 3.5.3. - [Release notes](https://github.com/antlr/antlr3/releases) - [Commits](https://github.com/antlr/antlr3/compare/3.5.2...3.5.3) --- updated-dependencies: - dependency-name: org.antlr:antlr-runtime dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index a40a29da337..ce228baebb4 100644 --- a/build.gradle +++ b/build.gradle @@ -137,7 +137,7 @@ dependencies { implementation 'info.debatty:java-string-similarity:2.0.0' antlr3 'org.antlr:antlr:3.5.3' - implementation 'org.antlr:antlr-runtime:3.5.2' + implementation 'org.antlr:antlr-runtime:3.5.3' antlr4 'org.antlr:antlr4:4.9.3' implementation 'org.antlr:antlr4-runtime:4.9.3' From 53e3d7a086274a7e09aca61a58632aa34b07bca8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Jun 2022 17:00:32 +0200 Subject: [PATCH 15/27] Bump mockito-core from 4.6.0 to 4.6.1 (#8899) Bumps [mockito-core](https://github.com/mockito/mockito) from 4.6.0 to 4.6.1. - [Release notes](https://github.com/mockito/mockito/releases) - [Commits](https://github.com/mockito/mockito/compare/v4.6.0...v4.6.1) --- updated-dependencies: - dependency-name: org.mockito:mockito-core dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index ce228baebb4..9751cd6123a 100644 --- a/build.gradle +++ b/build.gradle @@ -210,7 +210,7 @@ dependencies { testRuntimeOnly group: 'org.apache.logging.log4j', name: 'log4j-core', version: '3.0.0-SNAPSHOT' testRuntimeOnly group: 'org.apache.logging.log4j', name: 'log4j-jul', version: '3.0.0-SNAPSHOT' - testImplementation 'org.mockito:mockito-core:4.6.0' + testImplementation 'org.mockito:mockito-core:4.6.1' testImplementation 'org.xmlunit:xmlunit-core:2.9.0' testImplementation 'org.xmlunit:xmlunit-matchers:2.9.0' testRuntimeOnly 'com.tngtech.archunit:archunit-junit5-engine:0.23.1' From 7c4e22c4ca6d12973696f10bc1985f43a14d1bf5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Jun 2022 17:08:52 +0200 Subject: [PATCH 16/27] Bump postgresql from 42.3.5 to 42.4.0 (#8900) Bumps [postgresql](https://github.com/pgjdbc/pgjdbc) from 42.3.5 to 42.4.0. - [Release notes](https://github.com/pgjdbc/pgjdbc/releases) - [Changelog](https://github.com/pgjdbc/pgjdbc/blob/master/CHANGELOG.md) - [Commits](https://github.com/pgjdbc/pgjdbc/compare/REL42.3.5...REL42.4.0) --- updated-dependencies: - dependency-name: org.postgresql:postgresql dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 9751cd6123a..148414c2a68 100644 --- a/build.gradle +++ b/build.gradle @@ -149,7 +149,7 @@ dependencies { implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.7.5' - implementation 'org.postgresql:postgresql:42.3.5' + implementation 'org.postgresql:postgresql:42.4.0' implementation ('com.oracle.ojdbc:ojdbc10:19.3.0.0') { // causing module issues From d241606679b47229da4009d0767e12333181e14e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Jun 2022 17:09:09 +0200 Subject: [PATCH 17/27] Bump flowless from 0.6.9 to 0.6.10 (#8898) Bumps [flowless](https://github.com/FXMisc/Flowless) from 0.6.9 to 0.6.10. - [Release notes](https://github.com/FXMisc/Flowless/releases) - [Changelog](https://github.com/FXMisc/Flowless/blob/master/CHANGELOG.md) - [Commits](https://github.com/FXMisc/Flowless/compare/v0.6.9...v0.6.10) --- updated-dependencies: - dependency-name: org.fxmisc.flowless:flowless dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 148414c2a68..102060d8177 100644 --- a/build.gradle +++ b/build.gradle @@ -169,7 +169,7 @@ dependencies { implementation 'de.saxsys:mvvmfx-validation:1.9.0-SNAPSHOT' implementation 'de.saxsys:mvvmfx:1.8.0' implementation 'com.tobiasdiez:easybind:2.2' - implementation 'org.fxmisc.flowless:flowless:0.6.9' + implementation 'org.fxmisc.flowless:flowless:0.6.10' implementation 'org.fxmisc.richtext:richtextfx:0.10.9' implementation group: 'org.glassfish.hk2.external', name: 'jakarta.inject', version: '2.6.1' implementation 'com.jfoenix:jfoenix:9.0.10' From cb5fe6084fb84a854e3edcd5340afcbde63bcb47 Mon Sep 17 00:00:00 2001 From: Oliver Kopp <1366654+koppor@users.noreply.github.com> Date: Wed, 15 Jun 2022 08:45:04 +0200 Subject: [PATCH 18/27] Squashed 'buildres/csl/csl-styles/' changes from e740261c4c..845dee0a3b (#8903) Co-authored-by: github actions --- .../csl-styles/economie-et-statistique.csl | 197 ++-- buildres/csl/csl-styles/isnad-dipnotlu.csl | 18 +- .../csl-styles/journal-of-neuroimaging.csl | 4 +- buildres/csl/csl-styles/meta.csl | 938 +++++++++++++++ buildres/csl/csl-styles/population.csl | 197 ++-- buildres/csl/csl-styles/pour-reussir-note.csl | 1012 +++++++++++------ ...rn-institut-fur-musikwissenschaft-note.csl | 2 +- ...versitat-mainz-geographisches-institut.csl | 2 +- .../universite-du-quebec-a-montreal.csl | 4 +- 9 files changed, 1827 insertions(+), 547 deletions(-) create mode 100644 buildres/csl/csl-styles/meta.csl diff --git a/buildres/csl/csl-styles/economie-et-statistique.csl b/buildres/csl/csl-styles/economie-et-statistique.csl index 3e77cb301d7..3bbcb4313ee 100644 --- a/buildres/csl/csl-styles/economie-et-statistique.csl +++ b/buildres/csl/csl-styles/economie-et-statistique.csl @@ -1,5 +1,5 @@ - diff --git a/buildres/csl/csl-styles/isnad-dipnotlu.csl b/buildres/csl/csl-styles/isnad-dipnotlu.csl index 5f363c76d2c..02d7c7d67e5 100644 --- a/buildres/csl/csl-styles/isnad-dipnotlu.csl +++ b/buildres/csl/csl-styles/isnad-dipnotlu.csl @@ -17,7 +17,7 @@ ISNAD Citation Style full notes and bibliography format. - 2020-04-08T12:59:16+00:00 + 2022-05-31T12:59:16+00:00 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License + + Meta + http://www.zotero.org/styles/meta + + + + + Maya de Wit + mail@tolkngt.nl + + + Patrick O'Brien + + + + 0026-0452 + 1492-1421 + 2022-06-13T09:02:50+00:00 + This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License + + + + ed. + ed. & Trans. + trans. + n.d. + in + retrieved + consulted on + presented at + chap. + section + vol. + number + scale + v. + interview + registered by + n&#7506; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/buildres/csl/csl-styles/population.csl b/buildres/csl/csl-styles/population.csl index 4a650687147..3e75caa2912 100644 --- a/buildres/csl/csl-styles/population.csl +++ b/buildres/csl/csl-styles/population.csl @@ -1,5 +1,5 @@ - diff --git a/buildres/csl/csl-styles/pour-reussir-note.csl b/buildres/csl/csl-styles/pour-reussir-note.csl index 884c78ffe94..4cc02a54b98 100644 --- a/buildres/csl/csl-styles/pour-reussir-note.csl +++ b/buildres/csl/csl-styles/pour-reussir-note.csl @@ -1,19 +1,25 @@ -