OAI logo

Open Archives Initiative メタデータ・ハーベスティング・プロトコル実装ガイドライン

-  レコードの "about" 部の出自情報を保持する XML スキーマ

プロトコル バージョン 2.0 (2002-06-14)
ドキュメント バージョン (2002/12/10T11:00:00Z)
http://www.openarchives.org/OAI/2.0/guidelines-provenance.htm

編集者

OAI 執行部 :
Carl Lagoze <lagoze@cs.cornell.edu> -- コーネル大学 - コンピュータサイエンス
Herbert Van de Sompel <herbertv@lanl.gov> -- ロスアラモス国立研究所 - 研究図書館

OAI 技術委員会委員 :
Michael Nelson <m.l.nelson@larc.nasa.gov> -- NASA - ラングレー研究センタ
Simeon Warner <simeon@cs.cornell.edu> -- コーネル大学 - コンピュータサイエンス

本ドキュメントは、 Open Archives Initiative メタデータ・ハーベスティング・プロトコル (OAI-PMH) の付録実装ガイドライン』の一部です。

レコードの "about" 部の出自情報を保持する XML スキーマ

データプロバイダの一つにアグリゲータ というタイプがあり、これは別のデータプロバイダから生成されたメタデータを抽出するリポジトリ (OAI-PMH を自らサポートするリポジトリ) を保持します。 アグリゲータ発信リポジトリ との実際の関係は、たとえばアグリゲータ "A1" がリポジトリ "R1" と "R2" からレコードをハーベストし、次にアグリゲータ "A2" がアグリゲータ "A1" からレコードをハーベストするというふうに、再帰する場合があります (may)

こうしたデータの再分配が生じる場合、アグリゲータにはメタデータレコードの出自についての情報が about コンテナに追加されます。 XML スキーマは、出自情報のシンプルなフォーマットを定義します。このスキーマは、メタデータレコードの出自を特定する originDescription 要素のシーケンスで構成された出自コンテナ、すなわち発信リポジトリの連鎖を定義します。各アグリゲータはそのコンテナの中に最新の originDescription を追加することになります。それぞれの originDescription には、以下の情報が含まれます。

originDescription には、データ・ハーベストの動作とその後の処理に関する以下の2つの属性も必要です (must)

なお、 datestampresponseDate の値のフォーマット (単位) がそれぞれ datestampharvestDate の要素に含まれる場合、それらのフォーマットは保存される必要があり (must)、ローカルのリポジトリの単位に合わせて変更されてはなりません (must not)

<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://www.openarchives.org/OAI/2.0/provenance" 
  xmlns="http://www.w3.org/2001/XMLSchema" 
  xmlns:provenance="http://www.openarchives.org/OAI/2.0/provenance" 
  elementFormDefault="qualified" attributeFormDefault="unqualified">

  <annotation>
    <documentation>
      Schema for the description of the provenance of metadata that is 
      re-exposed by an OAI repository, i.e. metadata that has previously 
      been harvested before being exposed by the repository.
      See: http://www.openarchives.org/OAI/2.0/guidelines-branding.htm
      Validated with http://www.w3.org/2001/03/webdata/xsv on 16May2002
      Simeon Warner - $Date: 2002/05/16 19:48:39 $
     </documentation>
   </annotation>

  <element name="provenance">
    <complexType>
      <sequence>
        <element name="originDescription"
                 type="provenance:originDescriptionType"/>
      </sequence>
    </complexType>
  </element>

  <complexType name="originDescriptionType">
    <sequence>
      <element name="baseURL" type="anyURI"/>
      <element name="identifier" type="anyURI"/>
      <element name="datestamp" type="provenance:UTCdatetimeType"/>
      <element name="metadataNamespace" type="anyURI"/>
      <element name="originDescription" minOccurs="0" 
               type="provenance:originDescriptionType"/>
    </sequence>
    <attribute name="harvestDate" type="provenance:UTCdatetimeType" use="required"/>
    <attribute name="altered" type="boolean" use="required"/>
  </complexType>

  <simpleType name="UTCdatetimeType">
    <union memberTypes="date dateTime"/>
  </simpleType>

</schema>
本スキーマの入手先 http://www.openarchives.org/OAI/2.0/provenance.xsd

以下の例は、メタデータレコードと関連付けられた about 部の provenance コンテナの用法を示しています。この例は2つの要素の出自の連鎖を示しており、その連鎖には baseURL が http://some.oa.org. のリポジトリから最初にハーベストされたレコードが含まれています。その後、そのレコードはハーベストされてから、 baseURL が http://the.oa.org. のリポジトリによって提供されました。 metadataNamespace 要素を見ると、メタデータフォーマットは変更されていません。また、altered 属性を見ると、メタデータは最初のハーベストから提供の間には変更されていませんが、2度目のハーベストから提供の間に変更されているのが分かります。

<about>
<provenance xmlns="http://www.openarchives.org/OAI/2.0/provenance"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/provenance
                      http://www.openarchives.org/OAI/2.0/provenance.xsd">

<originDescription harvestDate="2002-02-02T14:10:02Z" altered="true">
  <baseURL>http://the.oa.org</baseURL>
  <identifier>oai:r2.org:klik001</identifier>
  <datestamp>2002-01-01</datestamp>
  <metadataNamespace>http://www.openarchives.org/OAI/2.0/oai_dc/</metadataNamespace>
  <originDescription harvestDate="2002-01-01T11:10:01Z" altered="false">
    <baseURL>http://some.oa.org</baseURL>
    <identifier>oai:r2.org:klik001</identifier>
    <datestamp>2001-01-01</datestamp>
    <metadataNamespace>http://www.openarchives.org/OAI/2.0/oai_dc/</metadataNamespace>
  </originDescription>
</originDescription>

</provenance>
</about>

以下の例は、要求と応答のシーケンスによって provenance コンテナを含む応答が得られたことを示しています。

Consider a request from crosswalker.oa.org:
http://odd.oa.org?verb=GetRecord&identifier=oai:odd.oa.org:z1x2y3
                 &metadataPrefix=odd_fmt

and the following response from odd.oa.org:

<?xml version="1.0" encoding="UTF-8"?> 
<GetRecord xmlns="http://www.openarchives.org/OAI/2.0/OAI-PMH" 
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
           xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/OAI-PMH 
           http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd"> 
  <responseDate>2002-02-08T08:55:46</responseDate>
  <request verb="GetRecord" metadataPrefix="odd_fmt" 
           identifier="oai:odd.oa.org:z1x2y3">http://odd.oa.org</request>
  <record> 
    <header>
      <identifier>oai:odd.oa.org:z1x2y3</identifier> 
      <datestamp>1999-08-07T06:05:04Z</datestamp>
    </header>
    <metadata>
      <md:odd_fmt ...>
        ...metadata record in odd_fmt...
      </md:odd_fmt> 
    </metadata>
  </record>
</GetRecord>

Imagine that crosswalker.oa.org cross-walks the metadata from odd_fmt into oai_marc and then re-exposes the new metadata record with a new identifier.

A request from getmarc.oa.org:

http://crosswalker.oa.org?verb=GetRecord
                         &identifier=oai:crosswalker.oa.org:a9b8c7
                         &metadataPrefix=oai_marc

might then yield the following response from crosswalker.oa.org:

<?xml version="1.0" encoding="UTF-8"?> 
<GetRecord xmlns="http://www.openarchives.org/OAI/2.0/OAI-PMH" 
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
           xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/OAI-PMH 
           http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd"> 
  <responseDate>2002-02-08T08:55:46Z</responseDate>
  <request verb="GetRecord" metadataPrefix="oai_marc"
           identifier="oai:crosswalker.oa.org:a9b8c7">http://crosswalker.oa.org</request>
  <record> 
    <header>
      <identifier>oai:crosswalker.oa.org:a9b8c7</identifier> 
      <datestamp>2002-02-09T01:15:24Z</datestamp>
    </header>
    <metadata>
      <marc:oai_marc ...>
        ...metadata record in oai_marc...
      </marc:oai_marc> 
    </metadata>
    <about>
      <provenance xmlns="http://www.openarchives.org/OAI/2.0/provenance"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/provenance
                            http://www.openarchives.org/OAI/2.0/provenance.xsd">
        <originDescription harvestDate="2002-02-08T08:55:46Z" altered="true">
          <baseURL>http://odd.oa.org</baseURL>
          <identifier>oai:odd.oa.org:z1x2y3</identifier>
          <datestamp>1999-08-07T06:05:04Z</datestamp>
          <metadataNamespace>http://odd.oa.org/odd_fmt</metadataNamespace>
        </originDescription>
      </provenance>
    </about>
  </record>
</GetRecord>

謝辞

OAI-PMH の策定およびその他の Open Archives Initiative の活動に対して、 デジタル図書館連盟ネットワーク情報連合、そして全米科学財団(Grant No. IIS-9817416)からご支援をいただきました。 OAI-PMH バージョン 2.0 の策定で多大なご協力をいただいた個人の皆様に、プロトコルドキュメントにおいて感謝の意を表します

ドキュメント履歴

2002-06-14: OAI-PMH バージョン 2.0 のリリースに合わせて本ドキュメントをリリース
2002-07-02: OAI-PMH バージョン 2.0 datestampoai-identifier の仕様に準拠し、また、メタデータが変更される場合の識別子を変更するよう改訂