package eu.dnetlib.dhp.sx.bio.pubmed; import java.io.Serializable; import java.util.ArrayList; import java.util.List; /** * This class represent an instance of Pubmed Article extracted from the native XML * * @author Sandro La Bruzzo */ public class PMArticle implements Serializable { /** * the Pubmed Identifier */ private String pmid; /** * the DOI */ private String doi; /** * the Pubmed Date extracted from Specifies a date significant to either the article's history or the citation's processing. * All dates will have a , , and elements. Some may have an , , and element(s). */ private String date; /** * This is an 'envelop' element that contains various elements describing the journal cited; i.e., ISSN, Volume, Issue, and PubDate and author name(s), however, it does not contain data itself. */ private PMJournal journal; /** * The full journal title (taken from NLM cataloging data following NLM rules for how to compile a serial name) is exported in this element. Some characters that are not part of the NLM MEDLINE/PubMed Character Set reside in a relatively small number of full journal titles. The NLM journal title abbreviation is exported in the element. */ private String title; /** * English-language abstracts are taken directly from the published article. * If the article does not have a published abstract, the National Library of Medicine does not create one, * thus the record lacks the and elements. However, in the absence of a formally * labeled abstract in the published article, text from a substantive "summary", "summary and conclusions" or "conclusions and summary" may be used. */ private String description; /** * the language in which an article was published is recorded in . * All entries are three letter abbreviations stored in lower case, such as eng, fre, ger, jpn, etc. When a single * record contains more than one language value the XML export program extracts the languages in alphabetic order by the 3-letter language value. * Some records provided by collaborating data producers may contain the value und to identify articles whose language is undetermined. */ private String language; /** * NLM controlled vocabulary, Medical Subject Headings (MeSH®), is used to characterize the content of the articles represented by MEDLINE citations. * */ private final List subjects = new ArrayList<>(); /** * This element is used to identify the type of article indexed for MEDLINE; * it characterizes the nature of the information or the manner in which it is conveyed as well as the type of * research support received (e.g., Review, Letter, Retracted Publication, Clinical Conference, Research Support, N.I.H., Extramural). */ private final List publicationTypes = new ArrayList<>(); /** * Personal and collective (corporate) author names published with the article are found in . */ private List authors = new ArrayList<>(); /** * contains the research grant or contract number (or both) that designates financial support by any agency of the United States Public Health Service * or any institute of the National Institutes of Health. Additionally, beginning in late 2005, grant numbers are included for many other US and non-US funding agencies and organizations. */ private final List grants = new ArrayList<>(); /** * get the DOI * @return a DOI */ public String getDoi() { return doi; } /** * Set the DOI * @param doi a DOI */ public void setDoi(String doi) { this.doi = doi; } /** * get the Pubmed Identifier * @return the PMID */ public String getPmid() { return pmid; } /** * set the Pubmed Identifier * @param pmid the Pubmed Identifier */ public void setPmid(String pmid) { this.pmid = pmid; } /** * the Pubmed Date extracted from Specifies a date significant to either the article's history or the citation's processing. * All dates will have a , , and elements. Some may have an , , and element(s). * * @return the Pubmed Date */ public String getDate() { return date; } /** * Set the pubmed Date * @param date */ public void setDate(String date) { this.date = date; } /** * The full journal title (taken from NLM cataloging data following NLM rules for how to compile a serial name) is exported in this element. * Some characters that are not part of the NLM MEDLINE/PubMed Character Set reside in a relatively small number of full journal titles. * The NLM journal title abbreviation is exported in the element. * * @return the pubmed Journal Extracted */ public PMJournal getJournal() { return journal; } /** * Set the mapped pubmed Journal * @param journal */ public void setJournal(PMJournal journal) { this.journal = journal; } /** * English-language abstracts are taken directly from the published article. * If the article does not have a published abstract, the National Library of Medicine does not create one, * thus the record lacks the and elements. However, in the absence of a formally * labeled abstract in the published article, text from a substantive "summary", "summary and conclusions" or "conclusions and summary" may be used. * * @return the extracted pubmed Title */ public String getTitle() { return title; } /** * set the pubmed title * @param title */ public void setTitle(String title) { this.title = title; } /** * English-language abstracts are taken directly from the published article. * If the article does not have a published abstract, the National Library of Medicine does not create one, * thus the record lacks the and elements. However, in the absence of a formally * labeled abstract in the published article, text from a substantive "summary", "summary and conclusions" or "conclusions and summary" may be used. * * @return the Mapped Pubmed Article Abstracts */ public String getDescription() { return description; } /** * Set the Mapped Pubmed Article Abstracts * @param description */ public void setDescription(String description) { this.description = description; } /** * Personal and collective (corporate) author names published with the article are found in . * * @return get the Mapped Authors lists */ public List getAuthors() { return authors; } /** * Set the Mapped Authors lists * @param authors */ public void setAuthors(List authors) { this.authors = authors; } /** * This element is used to identify the type of article indexed for MEDLINE; * it characterizes the nature of the information or the manner in which it is conveyed as well as the type of * research support received (e.g., Review, Letter, Retracted Publication, Clinical Conference, Research Support, N.I.H., Extramural). * * @return the mapped Subjects */ public List getSubjects() { return subjects; } /** * * the language in which an article was published is recorded in . * All entries are three letter abbreviations stored in lower case, such as eng, fre, ger, jpn, etc. When a single * record contains more than one language value the XML export program extracts the languages in alphabetic order by the 3-letter language value. * Some records provided by collaborating data producers may contain the value und to identify articles whose language is undetermined. * * @return The mapped Language */ public String getLanguage() { return language; } /** * * Set The mapped Language * * @param language the mapped Language */ public void setLanguage(String language) { this.language = language; } /** * This element is used to identify the type of article indexed for MEDLINE; * it characterizes the nature of the information or the manner in which it is conveyed as well as the type of * research support received (e.g., Review, Letter, Retracted Publication, Clinical Conference, Research Support, N.I.H., Extramural). * * @return the mapped Publication Type */ public List getPublicationTypes() { return publicationTypes; } /** * contains the research grant or contract number (or both) that designates financial support by any agency of the United States Public Health Service * or any institute of the National Institutes of Health. Additionally, beginning in late 2005, grant numbers are included for many other US and non-US funding agencies and organizations. * @return the mapped grants */ public List getGrants() { return grants; } }