package eu.dnetlib.dhp.schema.solr; import java.io.Serializable; import java.util.List; import com.fasterxml.jackson.annotation.JsonProperty; public class Result implements Serializable { /** * Type of the result: one of 'publication', 'dataset', 'software', 'other' (see also https://api.openaire.eu/vocabularies/dnet:result_typologies) */ private String resulttype; /** * Authors of the result */ private List author; /** * The Subject. */ private List subject; /** * The result language */ private Language language; /** * The list of countries associated to this result */ private List country; /** * A name or title by which a scientific result is known. May be the title of a publication, of a dataset or the name of a piece of software. */ private String maintitle; /** * Explanatory or alternative name by which a scientific result is known. */ private String subtitle; private List description; /** * Main date of the research product: typically the publication or issued date. In case of a research result with * different versions with different dates, the date of the result is selected as the most frequent well-formatted date. * If not available, then the most recent and complete date among those that are well-formatted. * For statistics, the year is extracted and the result is counted only among the result of that year. * Example: * Pre-print date: 2019-02-03, * Article date provided by repository: 2020-02, * Article date provided by Crossref: 2020, * OpenAIRE will set as date 2019-02-03, because it’s the most recent among the complete and well-formed dates. * If then the repository updates the metadata and set a complete date (e.g. 2020-02-12), then this will be the new * date for the result because it becomes the most recent most complete date. * However, if OpenAIRE then collects the pre-print from another repository with date 2019-02-03, then this will be * the “winning date” because it becomes the most frequent well-formatted date. */ private String publicationdate; // dateofacceptance /** * The name of the entity that holds, archives, publishes prints, distributes, releases, issues, or produces the resource. */ private String publisher; /** * Date when the embargo ends and this result turns Open Access */ private String embargoenddate; /** * See definition of Dublin Core field dc:source */ private List source; private List format; /** * Contributors for the result */ private List contributor; private List coverage; /** * The openest of the access rights of this result. */ private BestAccessRight bestaccessright; /** * The direct link to the full-text as collected from the data source */ private List fulltext; /** * Journal has information about the conference or journal where the result has been presented or published */ private Journal journal; /** * Only for results with type 'software': URL to the software documentation */ private List documentationUrl; // software /** * Only for results with type 'software': the URL to the repository with the source code */ private String codeRepositoryUrl; // software /** * Only for results with type 'software': the programming language */ private String programmingLanguage; // software /** * Only for results with type 'software': Information on the person responsible for providing further information regarding the resource */ private List contactperson; // orp /** * Only for results with type 'software': Information on the group responsible for providing further information regarding the resource */ private List contactgroup; // orp /** * Only for results with type 'other': tool useful for the interpretation and/or re-used of the research product */ private List tool; // orp /** * Only for results with type 'dataset': the declared size of the dataset */ private String size; // dataset /** * Version of the result */ private String version; // dataset @JsonProperty("isGreen") private Boolean isGreen; private OpenAccessColor openAccessColor; @JsonProperty("isInDiamondJournal") private Boolean isInDiamondJournal; private Boolean publiclyFunded; private String transformativeAgreement; /** * Each instance is one specific materialisation or version of the result. For example, you can have one result with * three instance: one is the pre-print, one is the post-print, one is te published version */ private List instance; }