diff --git a/CHANGELOG.md b/CHANGELOG.md index 8425b90db04..65c3e9bed6d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,7 +74,8 @@ We refer to [GitHub issues](https://github.com/JabRef/jabref/issues) by using `# ## [5.0-alpha] – 2019-08-25 ### Changed - +- We added eventitle, eventdate and venue fields to @unpublished entry type. +- We added @software and @dataSet entry type to biblatex. - All fields are now properly sorted alphabetically (in the subgroups of required/optional fields) when the entry is written to the bib file. - We fixed an issue where some importers used the field `pubstatus` instead of the standard BibTeX field `pubstate`. - We changed the latex command removal for docbook exporter. [#3838](https://github.com/JabRef/jabref/issues/3838) diff --git a/src/main/java/org/jabref/model/entry/types/BiblatexEntryTypeDefinitions.java b/src/main/java/org/jabref/model/entry/types/BiblatexEntryTypeDefinitions.java index 1e50af39b65..9344c2faff4 100644 --- a/src/main/java/org/jabref/model/entry/types/BiblatexEntryTypeDefinitions.java +++ b/src/main/java/org/jabref/model/entry/types/BiblatexEntryTypeDefinitions.java @@ -351,8 +351,8 @@ public class BiblatexEntryTypeDefinitions { StandardField.PUBSTATE, StandardField.URL, StandardField.URLDATE) .withRequiredFields(StandardField.AUTHOR, StandardField.TITLE, StandardField.DATE) .withDetailFields(StandardField.SUBTITLE, StandardField.TITLEADDON, StandardField.LANGUAGE, StandardField.HOWPUBLISHED, - StandardField.NOTE, StandardField.LOCATION, StandardField.ADDENDUM, StandardField.PUBSTATE, - StandardField.URL, StandardField.URLDATE) + StandardField.NOTE, StandardField.LOCATION, StandardField.ADDENDUM, StandardField.PUBSTATE, StandardField.EVENTTITLE, + StandardField.EVENTDATE,StandardField.VENUE, StandardField.URL, StandardField.URLDATE) .build(); private static final BibEntryType CONFERENCE = new BibEntryTypeBuilder() @@ -414,8 +414,34 @@ public class BiblatexEntryTypeDefinitions { .withRequiredFields(ONLINE.getRequiredFields()) .build(); + private static final BibEntryType SOFTWARE = new BibEntryTypeBuilder() + .withType(StandardEntryType.Software) + .withImportantFields( + StandardField.SUBTITLE, StandardField.TITLEADDON, StandardField.HOWPUBLISHED, StandardField.LOCATION, StandardField.DOI, + StandardField.EPRINT, StandardField.EPRINTCLASS, StandardField.EPRINTTYPE, StandardField.URL, StandardField.URLDATE) + .withRequiredFields(new OrFields(StandardField.AUTHOR, StandardField.EDITOR), StandardField.TITLE, StandardField.DATE) + .withDetailFields(StandardField.SUBTITLE, StandardField.TITLEADDON, StandardField.LANGUAGE, StandardField.HOWPUBLISHED, + StandardField.TYPE, StandardField.VERSION, StandardField.NOTE, StandardField.ORGANIZATION, StandardField.LOCATION, + StandardField.ADDENDUM, StandardField.PUBSTATE, StandardField.DOI, StandardField.EPRINT, + StandardField.EPRINTCLASS, StandardField.EPRINTTYPE, StandardField.URL, StandardField.URLDATE) + .build(); + + private static final BibEntryType DATASET = new BibEntryTypeBuilder() + .withType(StandardEntryType.DATESET) + .withImportantFields( + StandardField.SUBTITLE, StandardField.TITLEADDON, StandardField.HOWPUBLISHED, StandardField.LOCATION, StandardField.DOI, + StandardField.EPRINT, StandardField.EPRINTCLASS, StandardField.EPRINTTYPE, StandardField.URL, StandardField.URLDATE) + .withRequiredFields(new OrFields(StandardField.AUTHOR, StandardField.EDITOR), StandardField.TITLE, StandardField.DATE) + .withDetailFields(StandardField.SUBTITLE, StandardField.TITLEADDON, StandardField.LANGUAGE, StandardField.EDITION, StandardField.HOWPUBLISHED, + StandardField.TYPE, StandardField.VERSION, StandardField.NOTE, StandardField.ORGANIZATION, StandardField.LOCATION, + StandardField.ADDENDUM, StandardField.PUBSTATE, StandardField.DOI, StandardField.EPRINT, + StandardField.EPRINTCLASS, StandardField.EPRINTTYPE, StandardField.URL, StandardField.URLDATE) + .build(); + + + public static final List ALL = Arrays.asList(ARTICLE, BOOK, MVBOOK, INBOOK, BOOKINBOOK, SUPPBOOK, BOOKLET, COLLECTION, MVCOLLECTION, INCOLLECTION, SUPPCOLLECTION, MANUAL, MISC, ONLINE, PATENT, PERIODICAL, SUPPPERIODICAL, PROCEEDINGS, MVPROCEEDINGS, INPROCEEDINGS, REFERENCE, MVREFERENCE, INREFERENCE, REPORT, SET, - THESIS, UNPUBLISHED, CONFERENCE, ELECTRONIC, MASTERSTHESIS, PHDTHESIS, TECHREPORT, WWW); + THESIS, UNPUBLISHED, CONFERENCE, ELECTRONIC, MASTERSTHESIS, PHDTHESIS, TECHREPORT, WWW, SOFTWARE, DATASET); } diff --git a/src/main/java/org/jabref/model/entry/types/StandardEntryType.java b/src/main/java/org/jabref/model/entry/types/StandardEntryType.java index de5ef6dc8fc..9b2f87d1674 100644 --- a/src/main/java/org/jabref/model/entry/types/StandardEntryType.java +++ b/src/main/java/org/jabref/model/entry/types/StandardEntryType.java @@ -34,7 +34,11 @@ public enum StandardEntryType implements EntryType { SuppCollection("SuppCollection"), SuppPeriodical("SuppPeriodical"), Thesis("Thesis"), - WWW("WWW"); + WWW("WWW"), + Software("Software"), + DATESET("DataSet"); + + private final String displayName;