pages)) foreach ((array) $record->sources as $a => $b) {
$record->sources[$a] .= '; ' . $record->pages;
}
$response = "\n" .
$this->formatElement('title', $record->titles, true) .
$this->formatElement('creator', $record->creator) .
$this->formatElement('subject', $record->subjects, true) .
$this->formatElement('description', $record->descriptions, true) .
$this->formatElement('publisher', $record->publishers, true) .
$this->formatElement('contributor', $record->contributors, true) .
$this->formatElement('date', $record->date) .
$this->formatElement('type', $record->types, true) .
$this->formatElement('format', $record->format) .
$this->formatElement('identifier', $record->url) .
$this->formatElement('source', $record->sources, true) .
$this->formatElement('language', $record->language) .
$this->formatElement('relation', $record->relation) .
$this->formatElement('coverage', $record->coverage, true) .
$this->formatElement('rights', $record->rights) .
"\n";
return $response;
}
/**
* Format XML for single DC element.
* @param $name string
* @param $value mixed
* @param $multilingual boolean optional
*/
function formatElement($name, $value, $multilingual = false) {
if (!is_array($value)) {
$value = array($value);
}
$response = '';
foreach ($value as $key => $v) {
if (!$multilingual) $response .= "\t" . $this->oai->prepOutput($v) . "\n";
else {
if (is_array($v)) {
foreach ($v as $subV) {
$response .= "\t" . $this->oai->prepOutput($subV) . "\n";
}
} else {
$response .= "\t" . $this->oai->prepOutput($v) . "\n";
}
}
}
return $response;
}
}
?>