Open Monograph Press  3.3.0
OAIStruct.inc.php
1 <?php
2 
17 define('OAIRECORD_STATUS_DELETED', 0);
18 define('OAIRECORD_STATUS_ALIVE', 1);
19 
23 class OAIConfig {
25  var $baseUrl = '';
26 
28  var $repositoryId = 'oai';
29 
33  var $granularity = 'YYYY-MM-DDThh:mm:ssZ';
34 
36  var $tokenLifetime = 86400;
37 
39  var $maxIdentifiers = 500;
40 
43 
45  var $maxSets = 50;
46 
47 
52  $this->baseUrl = $baseUrl;
53  $this->repositoryId = $repositoryId;
54 
55  $this->maxRecords = Config::getVar('oai', 'oai_max_records');
56  if (!$this->maxRecords) $this->maxRecords = 100;
57  }
58 }
59 
63 class OAIRepository {
64 
67 
69  var $adminEmail;
70 
73 
75  var $delimiter = ':';
76 
79 
81  var $toolkitTitle;
82 
85 
87  var $toolkitURL;
88 }
89 
90 
95 class OAIResumptionToken {
96 
98  var $id;
99 
101  var $offset;
102 
104  var $params;
105 
107  var $expire;
108 
109 
113  function __construct($id, $offset, $params, $expire) {
114  $this->id = $id;
115  $this->offset = $offset;
116  $this->params = $params;
117  $this->expire = $expire;
118  }
119 }
120 
121 
127 
129  var $prefix;
130 
132  var $schema;
133 
135  var $namespace;
136 
141  $this->prefix = $prefix;
142  $this->schema = $schema;
143  $this->namespace = $namespace;
144  }
145 
146  function getLocalizedData($data, $locale) {
147  foreach ($data as $element) {
148  if (isset($data[$locale])) return $data[$locale];
149  }
150  return '';
151  }
152 
159  function toXml($record, $format = null) {
160  return '';
161  }
162 }
163 
164 
169 class OAISet {
170 
172  var $spec;
173 
175  var $name;
176 
178  var $description;
179 
180 
184  function __construct($spec, $name, $description) {
185  $this->spec = $spec;
186  $this->name = $name;
187  $this->description = $description;
188  }
189 }
190 
191 
197  var $identifier;
198 
200  var $datestamp;
201 
203  var $sets;
204 
206  var $status;
207 }
208 
209 
214 class OAIRecord extends OAIIdentifier {
215  var $data;
216 
220  function __construct() {
221  $this->data = array();
222  }
223 
224  function setData($name, &$value) {
225  $this->data[$name] =& $value;
226  }
227 
228  function &getData($name) {
229  if (isset($this->data[$name])) $returner =& $this->data[$name];
230  else $returner = null;
231 
232  return $returner;
233  }
234 }
235 
236 
OAIMetadataFormat\__construct
__construct($prefix, $schema, $namespace)
Definition: OAIStruct.inc.php:206
OAIMetadataFormat\$schema
$schema
Definition: OAIStruct.inc.php:195
OAIRepository\$repositoryName
$repositoryName
Definition: OAIStruct.inc.php:90
OAIRepository\$toolkitURL
$toolkitURL
Definition: OAIStruct.inc.php:132
OAIRecord\$data
$data
Definition: OAIStruct.inc.php:302
OAIConfig\$granularity
$granularity
Definition: OAIStruct.inc.php:42
OAIRepository
Definition: OAIStruct.inc.php:84
OAIResumptionToken\$params
$params
Definition: OAIStruct.inc.php:158
OAIRecord
Definition: OAIStruct.inc.php:301
OAISet\$spec
$spec
Definition: OAIStruct.inc.php:241
OAIConfig\$baseUrl
$baseUrl
Definition: OAIStruct.inc.php:28
OAIRecord\setData
setData($name, &$value)
Definition: OAIStruct.inc.php:311
OAISet\$description
$description
Definition: OAIStruct.inc.php:253
OAIConfig\$tokenLifetime
$tokenLifetime
Definition: OAIStruct.inc.php:48
OAIMetadataFormat
Definition: OAIStruct.inc.php:183
OAIResumptionToken\__construct
__construct($id, $offset, $params, $expire)
Definition: OAIStruct.inc.php:170
OAIRepository\$delimiter
$delimiter
Definition: OAIStruct.inc.php:108
OAIMetadataFormat\toXml
toXml($record, $format=null)
Definition: OAIStruct.inc.php:225
OAIResumptionToken\$expire
$expire
Definition: OAIStruct.inc.php:164
OAIMetadataFormat\$namespace
$namespace
Definition: OAIStruct.inc.php:201
OAISet
Definition: OAIStruct.inc.php:235
OAIConfig\$maxIdentifiers
$maxIdentifiers
Definition: OAIStruct.inc.php:54
Config\getVar
static getVar($section, $key, $default=null)
Definition: Config.inc.php:35
OAIResumptionToken
Definition: OAIStruct.inc.php:140
OAISet\__construct
__construct($spec, $name, $description)
Definition: OAIStruct.inc.php:259
OAIConfig\$maxRecords
$maxRecords
Definition: OAIStruct.inc.php:60
OAISet\$name
$name
Definition: OAIStruct.inc.php:247
OAIResumptionToken\$id
$id
Definition: OAIStruct.inc.php:146
OAIRepository\$earliestDatestamp
$earliestDatestamp
Definition: OAIStruct.inc.php:102
OAIIdentifier\$status
$status
Definition: OAIStruct.inc.php:293
OAIRepository\$toolkitVersion
$toolkitVersion
Definition: OAIStruct.inc.php:126
OAIRepository\$toolkitTitle
$toolkitTitle
Definition: OAIStruct.inc.php:120
OAIMetadataFormat\getLocalizedData
getLocalizedData($data, $locale)
Definition: OAIStruct.inc.php:212
OAIIdentifier\$sets
$sets
Definition: OAIStruct.inc.php:287
OAIConfig\$maxSets
$maxSets
Definition: OAIStruct.inc.php:66
OAIConfig\$repositoryId
$repositoryId
Definition: OAIStruct.inc.php:34
OAIRepository\$sampleIdentifier
$sampleIdentifier
Definition: OAIStruct.inc.php:114
OAIConfig\__construct
__construct($baseUrl, $repositoryId)
Definition: OAIStruct.inc.php:72
OAIIdentifier\$identifier
$identifier
Definition: OAIStruct.inc.php:275
OAIConfig
Data structures associated with the OAI request handler.
Definition: OAIStruct.inc.php:23
OAIRecord\__construct
__construct()
Definition: OAIStruct.inc.php:307
OAIResumptionToken\$offset
$offset
Definition: OAIStruct.inc.php:152
OAIMetadataFormat\$prefix
$prefix
Definition: OAIStruct.inc.php:189
OAIRepository\$adminEmail
$adminEmail
Definition: OAIStruct.inc.php:96
OAIRecord\getData
& getData($name)
Definition: OAIStruct.inc.php:315
OAIIdentifier
Definition: OAIStruct.inc.php:270
OAIIdentifier\$datestamp
$datestamp
Definition: OAIStruct.inc.php:281