Ejemplo n.º 1
0
 def json(self):
     """
     Dumps the OAI record as a JSON object (for dataset dumping purposes)
     """
     result = {}
     if self.publisher:
         result['policy'] = self.publisher.json()
     if self.journal:
         result['issn'] = self.journal.issn
     result.update({
             'source': self.source.identifier,
             'identifier': self.identifier,
             'splash_url': self.splash_url,
             'pdf_url': self.pdf_url,
             'doi': self.doi,
             'abstract': self.description,
             'keywords': self.keywords,
             'contributors': self.contributors,
             'type': self.pubtype,
             'publisher': self.publisher_name,
             'journal': self.full_journal_title(),
             'container': self.container,
             'issue': self.issue,
             'volume': self.volume,
             'pages': self.pages,
             })
     return remove_nones(result)
Ejemplo n.º 2
0
 def json(self):
     """
     Dumps the OAI record as a JSON object (for dataset dumping purposes)
     """
     result = {}
     if self.publisher:
         result['policy'] = self.publisher.json()
     if self.journal:
         result['issn'] = self.journal.issn
     result.update({
             'source': self.source.identifier,
             'identifier': self.identifier,
             'splash_url': self.splash_url,
             'pdf_url': self.pdf_url,
             'doi': self.doi,
             'abstract': self.description,
             'keywords': self.keywords,
             'contributors': self.contributors,
             'type': self.pubtype,
             'publisher': self.publisher_name,
             'journal': self.full_journal_title(),
             'container': self.container,
             'issue': self.issue,
             'volume': self.volume,
             'pages': self.pages,
             })
     return remove_nones(result)
Ejemplo n.º 3
0
 def json(self):
     """
     JSON representation of the paper, for dataset dumping purposes
     """
     return remove_nones({
         'title': self.title,
         'type': self.doctype,
         'date': self.pubdate.isoformat(),
         'authors': [a.json() for a in self.authors],
         'records': [r.json() for r in self.oairecords],
         'pdf_url': self.pdf_url,
         'classification': self.oa_status,
         })
Ejemplo n.º 4
0
 def json(self):
     """
     JSON representation of the paper, for dataset dumping purposes
     """
     return remove_nones({
         'title': self.title,
         'type': self.doctype,
         'date': self.pubdate.isoformat(),
         'authors': [a.json() for a in self.authors],
         'records': [r.json() for r in self.oairecords],
         'pdf_url': self.pdf_url,
         'classification': self.oa_status,
         })
Ejemplo n.º 5
0
 def json(self):
     """
     JSON representation of the author for dataset dumping purposes,
     or for the public API.
     """
     orcid_id = self.orcid
     affiliation = None
     if not orcid_id and self.affiliation:
         affiliation = self.affiliation
     return remove_nones({
             'name': self.name.json(),
             'affiliation': affiliation,
             'orcid': orcid_id,
             })
Ejemplo n.º 6
0
 def json(self):
     """
     JSON representation of the author for dataset dumping purposes,
     or for the public API.
     """
     orcid_id = self.orcid
     affiliation = None
     if not orcid_id and self.affiliation:
         affiliation = self.affiliation
     return remove_nones({
             'name': self.name.json(),
             'affiliation': affiliation,
             'orcid': orcid_id,
             })
Ejemplo n.º 7
0
 def test_remove_nones(self):
     self.assertEqual(remove_nones({'orcid':None,'wtf':'pl'}), {'wtf': 'pl'})
     self.assertEqual(remove_nones({'orcid':'blah','hey':'you'}), {'orcid': 'blah', 'hey': 'you'})
     self.assertEqual(remove_nones({None:1}), {None: 1})