def publication_date(self): pd = xutil.xp_first_text(self.xml, "firstPublicationDate") if pd is not None: return pd pd = xutil.xp_first_text(self.xml, "electronicPublicationDate") if pd is not None: return pd pd = xutil.xp_first_text(self.xml, "//journalInfo/printPublicationDate") return pd
def issns(self): issn = xutil.xp_first_text(self.xml, "//journalInfo/journal/ISSN") essn = xutil.xp_first_text(self.xml, "//journalInfo/journal/ESSN") issns = [] if issn is not None: issns.append(issn) if essn is not None: issns.append(essn) return issns
def doi(self): return xutil.xp_first_text(self.xml, "DOI")
def pmcid(self): return xutil.xp_first_text(self.xml, "pmcid")
def doi(self): return xutil.xp_first_text(self.xml, "//art-admin/doi")
def publisher(self): return xutil.xp_first_text(self.xml, "//publisher/orgname/nameelt")
def copyright_statement(self): return xutil.xp_first_text(self.xml, "//journalref/cpyrt")
def title(self): return xutil.xp_first_text(self.xml, "title")
def title(self): # 2018-01-31 TD : adding the default value "no title" # 2018-01-30 TD : insert the string(...) to handle html-in-xml cases correctly return xutil.xp_first_text(self.xml, "string(//art-front/titlegrp/title)", default="no title")
def publication_type(self): return xutil.xp_first_text(self.xml, "//pubTypeList/pubType")
def doi(self): return xutil.xp_first_text(self.xml, "//article-meta/article-id[@pub-id-type='doi']")
def pmcid(self): id = xutil.xp_first_text(self.xml, "//article-meta/article-id[@pub-id-type='pmcid']") if id is not None and not id.startswith("PMC"): id = "PMC" + id return id
def publisher(self): return xutil.xp_first_text(self.xml, "//publisher/publisher-name")
def copyright_statement(self): return xutil.xp_first_text(self.xml, "//copyright-statement")
def language(self): return xutil.xp_first_text(self.xml, "language")
def author_string(self): return xutil.xp_first_text(self.xml, "//authorString")
def title(self): return xutil.xp_first_text(self.xml, "//title-group/article-title")