1: <?php
2:
3: namespace Scopus\Response;
4:
5: class CitationCount
6: {
7: const STATUS_FOUND = 'found';
8: const STATUS_NOT_FOUND = 'not_found';
9:
10: /**
11: * @var array
12: */
13: protected $data;
14:
15: /**
16: * @var CitationCountLinks
17: */
18: protected $links;
19:
20: public function __construct(array $data)
21: {
22: $this->data = $data;
23: }
24:
25: public function getStatus(): bool
26: {
27: return $this->data['@status'];
28: }
29:
30: public function getIdentifier()
31: {
32: return $this->data['dc:identifier'];
33: }
34:
35: public function getUrl()
36: {
37: return isset($this->data['prism:url']) ? $this->data['prism:url'] : null;
38: }
39:
40: public function getDoi()
41: {
42: return isset($this->data['prism:doi']) ? $this->data['prism:doi'] : null;
43: }
44:
45: public function getPii()
46: {
47: return isset($this->data['pii']) ? $this->data['pii'] : null;
48: }
49:
50: public function getPumbedId()
51: {
52: return isset($this->data['pubmed_id']) ? $this->data['pubmed_id'] : null;
53: }
54:
55: public function getEID()
56: {
57: return isset($this->data['eid']) ? $this->data['eid'] : null;
58: }
59:
60: public function getArticleNumber()
61: {
62: return isset($this->data['article-number']) ? $this->data['article-number'] : null;
63: }
64:
65: public function getCitationCount()
66: {
67: return isset($this->data['citation-count']) ? $this->data['citation-count'] : null;
68: }
69:
70: public function getLinks()
71: {
72: return $this->links ?: $this->links = new CitationCountLinks($this->data['link']);
73: }
74: }
75: