Overview

Namespaces

  • Scopus
    • Exception
    • Response
    • Util

Classes

  • Scopus\Response\AbstractAuthor
  • Scopus\Response\AbstractCoredata
  • Scopus\Response\AbstractItem
  • Scopus\Response\Abstracts
  • Scopus\Response\Affiliation
  • Scopus\Response\Author
  • Scopus\Response\AuthorGroup
  • Scopus\Response\AuthorName
  • Scopus\Response\AuthorProfile
  • Scopus\Response\BaseLinks
  • Scopus\Response\Bibrecord
  • Scopus\Response\BibrecordHead
  • Scopus\Response\Correspondence
  • Scopus\Response\CorrespondencePerson
  • Scopus\Response\Entry
  • Scopus\Response\EntryAuthor
  • Scopus\Response\EntryLinks
  • Scopus\Response\SearchLinks
  • Scopus\Response\SearchResults
  • Scopus\Response\Source
  • Scopus\ScopusApi
  • Scopus\SearchQuery
  • Scopus\Util\XmlUtil

Interfaces

  • Scopus\Response\IAbstract
  • Scopus\Response\IAuthor
  • Scopus\Response\IAuthorName

Exceptions

  • Scopus\Exception\JsonException
  • Scopus\Exception\XmlException
  • Overview
  • Namespace
  • Class
  1: <?php
  2: 
  3: namespace Scopus\Response;
  4: 
  5: class AbstractCoredata
  6: {
  7:     /** @var array */
  8:     protected $data;
  9:     
 10:     public function __construct(array $data)
 11:     {
 12:         $this->data = $data;
 13:     }
 14: 
 15:     public function getUrl()
 16:     {
 17:         return $this->data['prism:url'];
 18:     }
 19:     
 20:     public function getIdentifier()
 21:     {
 22:         return isset($this->data['dc:identifier']) ? $this->data['dc:identifier'] : null;
 23:     }
 24:     
 25:     public function getScopusId()
 26:     {
 27:         $identifier = $this->getIdentifier();
 28:         if (substr($identifier, 0, 10) === 'SCOPUS_ID:') {
 29:             return explode(':', $identifier, 2)[1];
 30:         }
 31:     }
 32: 
 33:     public function getDoi()
 34:     {
 35:         return isset($this->data['prism:doi']) ? $this->data['prism:doi'] : null;
 36:     }
 37: 
 38:     public function getTitle()
 39:     {
 40:         return isset($this->data['dc:title']) ? $this->data['dc:title'] : null;
 41:     }
 42: 
 43:     public function getDescription()
 44:     {
 45:         return $this->data['dc:description'];
 46:     }
 47: 
 48:     public function getPageRange()
 49:     {
 50:         return isset($this->data['prism:pageRange']) ? $this->data['prism:pageRange'] : null;
 51:     }
 52: 
 53:     public function getStartPage()
 54:     {
 55:         $pageRange = $this->getPageRange();
 56:         if ($pageRange) {
 57:             return explode('-', $pageRange)[0];
 58:         }
 59:     }
 60: 
 61:     public function getEndPage()
 62:     {
 63:         $pageRange = $this->getPageRange();
 64:         if ($pageRange) {
 65:             $startEndPage = explode('-', $pageRange);
 66:             if (count($startEndPage) > 1) {
 67:                 return $startEndPage[1];
 68:             }
 69:         }
 70:     }
 71: 
 72:     public function getCoverDate()
 73:     {
 74:         return $this->data['prism:coverDate'];
 75:     }
 76: 
 77:     public function getPublicationName()
 78:     {
 79:         return isset($this->data['prism:publicationName']) ? $this->data['prism:publicationName'] : null;
 80:     }
 81:     
 82:     public function getIssn()
 83:     {
 84:         return $this->data['prism:issn'];
 85:     }
 86: 
 87:     public function getEIssn()
 88:     {
 89:         return $this->data['prism:eIssn'];
 90:     }
 91: 
 92:     public function getVolume()
 93:     {
 94:         return $this->data['prism:volume'];
 95:     }
 96: 
 97:     public function getCitedbyCount()
 98:     {
 99:         return $this->data['citedby-count'];
100:     }
101: 
102:     public function getAggregationType()
103:     {
104:         return $this->data['prism:aggregationType'];
105:     }
106: }
API documentation generated by ApiGen