You are here

erudit.inc in Views OAI-PMH 7.3

Definition of the Erudit Schema data format.

File

includes/formats/erudit.inc
View source
<?php

/**
 * @file
 * Definition of the Erudit Schema data format.
 */

/**
 * Class views_oai_pmh_format_erudit.
 */
class views_oai_pmh_format_erudit extends views_oai_pmh_format {

  /**
   * Construct.
   */
  public function __construct() {
    parent::__construct('erudit', t('Erudit'));
    $this->schema = 'http://www.erudit.org/xsd/article/3.0.0/eruditarticle.xsd';
    $this->namespaces = array(
      'xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
      'erudit' => 'http://www.erudit.org/xsd/article',
      'xlink' => 'http://www.w3.org/1999/xlink',
    );
    $this->metadata_namespace_prefix = 'mods';
    $this->root_element = 'article';

    // Root attributes.
    $this->root_attributes = array(
      'xmlns:xsi' => $this->namespaces['xsi'],
      'xmlns' => $this->namespaces['erudit'],
      'xsi:schemaLocation' => $this->namespaces['erudit'] . ' ' . $this->schema,
      'xmlns:xlink' => $this->namespaces['xlink'],
    );
    $this->attributes = array(
      // Admin element.
      'admin/infoarticle/idpublic' => array(
        'scheme',
      ),
      'admin/numero' => array(
        'id',
      ),
      'admin/numero/grtheme' => array(
        'id',
      ),
      'admin/numero/pubnum/date' => array(
        'typedate',
      ),
      'admin/numero/notegen' => array(
        'lang',
        'typenoteg',
      ),
      'admin/numero/notegen/alinea/liensimple' => array(
        'xlink:type',
        'xlink:href',
      ),
      'admin/revue' => array(
        'id',
        'lang',
      ),
      'admin/revue/directeur' => array(
        'sexe',
      ),
      'admin/revue/redacteurchef' => array(
        'idrefs',
        'sexe',
        'typerc',
      ),
      'admin/schema' => array(
        'lang',
        'nom',
        'version',
      ),
      // Corps element.
      'corps' => array(
        'lang',
      ),
      'corps/texte' => array(
        'typetexte',
      ),
      // Liminaire element.
      'liminaire/grauteur/auteur' => array(
        'id',
      ),
      'liminaire/grauteur/auteur/contribution' => array(
        'typecontrib',
      ),
      'liminaire/grauteur/auteur/autorite' => array(
        'cleautorite',
      ),
      'liminaire/grmotcle' => array(
        'lang',
      ),
      'liminaire/resume' => array(
        'lang',
        'typeresume',
      ),
      'liminaire/notegen' => array(
        'lang',
        'typenoteg',
      ),
      'liminaire/notegen/alinea/liensimple' => array(
        'xlink:type',
        'xlink:href',
      ),
      // Partiesann element.
      'partiesann' => array(
        'lang',
      ),
      'partiesann/grbiblio/biblio/refbiblio' => array(
        'id',
      ),
      'partiesann/grnotebio/notebio' => array(
        'id',
        'idrefs',
      ),
    );
    $this->elements = array(
      'none' => t('- None -'),
      // Root attributes.
      '_horstheme' => t('(Root attribute) horstheme'),
      '_idref' => t('(Root attribute) idref'),
      '_lang' => t('(Root attribute) lang'),
      '_ordseq' => t('(Root attribute) ordseq'),
      '_qualtraitement' => t('(Root attribute) qualtraitement'),
      '_typeart' => t('(Root attribute) typeart'),
      '_idproprio' => t('(Root attribute) idproprio'),
      // Attributes.
      '@cleautorite' => t('(Attribute) cleautorite'),
      '@id' => t('(Attribute) id'),
      '@idrefs' => t('(Attribute) idrefs'),
      '@lang' => t('(Attribute) lang'),
      '@nom' => t('(Attribute) nom'),
      '@scheme' => t('(Attribute) scheme'),
      '@sexe' => t('(Attribute) sexe'),
      '@typecontrib' => t('(Attribute) typecontrib'),
      '@typedate' => t('(Attribute) typedate'),
      '@typerc' => t('(Attribute) typerc'),
      '@typeresume' => t('(Attribute) typeresume'),
      '@typetexte' => t('(Attribute) typetexte'),
      '@version' => t('(Attribute) version'),
      '@typenoteg' => t('(Attribute) typenoteg'),
      '@xlink:type' => t('(Attribute) @xlink:type'),
      '@xlink:href' => t('(Attribute) @xlink:href'),
      // Admin element.
      'admin/infoarticle/idpublic[]' => 'admin > infoarticle > idpublic (multiple)',
      'admin/revue/titrerev' => 'admin > revue > titrerev',
      'admin/revue/sstitrerev' => 'admin > revue > sstitrerev',
      'admin/revue/titrerevabr' => 'admin > revue > titrerevabr',
      'admin/revue/idissnnum' => 'admin > revue > idissnnum',
      'admin/revue/directeur[]/nompers/prenom' => 'admin > revue > directeur (multiple) > nompers > prenom',
      'admin/revue/directeur[]/nompers/nomfamille' => 'admin > revue > directeur (multiple) > nompers > nomfamille',
      'admin/revue/redacteurchef[]/nompers/prenom' => 'admin > revue > redacteurchef (multiple) > nompers > prenom',
      'admin/revue/redacteurchef[]/nompers/nomfamille' => 'admin > revue > redacteurchef (multiple) > nompers > nomfamille',
      'admin/numero/volume' => 'admin > numero > volume',
      'admin/numero/nonumero' => 'admin > numero > nonumero',
      'admin/numero/pub/periode[]' => 'admin > numero > pub > periode (multiple)',
      'admin/numero/pub/annee[]' => 'admin > numero > pub > annee (multiple)',
      'admin/numero/pubnum' => 'admin > numero > pubnum',
      'admin/numero/pubnum/date[]' => 'admin > numero > pub > date (multiple)',
      'admin/numero/grtheme/theme' => 'admin > numero > grtheme > theme',
      'admin/numero/notegen/alinea' => 'admin > numero > notegen > alinea',
      'admin/numero/notegen/alinea/liensimple' => 'admin > numero > notegen > alinea > liensimple',
      'admin/editeur[]/nomorg' => 'admin > editeur (multiple) > nomorg',
      'admin/prodnum[]/nomorg' => 'admin > prodnum (multiple) > nomorg',
      'admin/diffnum[]/nomorg' => 'admin > diffnum (multiple) > nomorg',
      'admin/schema' => 'admin > schema',
      'admin/droitsauteur[]/declaration' => 'admin > droitsauteur (multiple) > declaration',
      'admin/droitsauteur[]/annee' => 'admin > droitsauteur (multiple) > annee',
      'admin/droitsauteur[]/nomorg' => 'admin > droitsauteur (multiple) > nomorg',
      // Corps element.
      'corps[]/texte' => 'corps (multiple)> texte',
      // Liminaire element.
      'liminaire/grtitre/surtitre' => 'liminaire > grtitre > surtitre',
      'liminaire/grtitre/titre' => 'liminaire > grtitre > titre',
      'liminaire/grtitre/sstitre' => 'liminaire > grtitre > sstitre',
      'liminaire/grauteur' => 'liminaire > grauteur',
      'liminaire/grauteur/auteur[]/contribution' => 'liminaire > grauteur > auteur (multiple) > contribution',
      'liminaire/grauteur/auteur[]/autorite' => 'liminaire > grauteur > auteur (multiple) > autorite',
      'liminaire/grauteur/auteur[]/autorite/nompers/prenom' => 'liminaire > grauteur > auteur (multiple) > autorite > nompers > prenom',
      'liminaire/grauteur/auteur[]/autorite/nompers/nomfamille' => 'liminaire > grauteur > auteur (multiple) > autorite > nompers > nomfamille',
      'liminaire/grauteur/auteur[]/affiliation[]/nomorg' => 'liminaire > grauteur > auteur (multiple) > affiliation (multiple) > nomorg',
      'liminaire/resume[]/alinea' => 'liminaire > resume (multiple) > alinea',
      'liminaire/grmotcle[]/titre' => 'liminaire > grmotcle (multiple) > titre',
      'liminaire/grmotcle[]/motcle[]' => 'liminaire > grmotcle (multiple) > motcle (multiple)',
      'liminaire/notegen/alinea' => 'liminaire > notegen > alinea',
      'liminaire/notegen/alinea/liensimple' => 'liminaire > notegen > alinea > liensimple',
      // Partiesann element.
      'partiesann/grnotebio/notebio[]/alinea' => 'partiesann > grnotebio > notebio (multiple) > alinea',
      'partiesann/grbiblio/biblio/titre' => 'partiesann > grbiblio > biblio > titre',
      'partiesann/grbiblio/biblio/refbiblio[]' => 'partiesann > grbiblio > biblio > refbiblio (multiple)',
    );
  }

}

Classes

Namesort descending Description
views_oai_pmh_format_erudit Class views_oai_pmh_format_erudit.