• 沒有找到結果。

OAI 詮釋資料擷取協定指令說明

第三章 OAI 詮釋資料擷取協定

第四節 OAI 詮釋資料擷取協定指令說明

以下列舉OAI-PMH 的命令(verb),包括命令使用方式、所有參數、及錯誤 處理,並舉例說明。其中Identify、ListMetadataFormats、ListSets 屬於支援命令,

負責提供與資料庫相關的資訊;ListRecords、ListIdentifiers、GetRecord 則屬於擷 取命令,負責取回所指定的詮釋資料。

參數中若指明為必需(required)者,則一定要要包含在要求(request)之中(除非 要求中使用了具唯一性的參數)。若為非必需(optional),則視要求的情況是否需 要而選用。若為唯一的(exclusive),則表示這項參數不能與其他參數合用。意即 可以不使用,但若使用了,則它會是唯一使用的參數,不會同時出現其他參數。

(一)GetRecord

1.使用方式:當欲從資料庫(repository)中,單獨取得一筆特定的資料紀錄時使 用。使用時必須指定其資料物件的識別碼(identifier),及所要的詮釋資料格 式。若資料庫能夠追蹤刪除資料,則在回應時,對於已刪除的資料可以在 header 欄加入 status 參數,其值為“deleted”。

2.可用參數:

(1)identifier:必需,用以指示一個資料物件(item)在資料庫中的唯一識別碼。

(2)metadataPrefix:必需,用以指示回應時使用何種詮釋資料格式。資料庫 能提供的所有詮釋資料格式,可以藉ListMetadataFormats 命令取得。

3.錯誤狀況:

(1)badArgument : 使用了不合法的參數,或缺失了必需的參數。

(2)cannotDisseminateFormat : 由 identifier 所指定的資料物件並不支援由 metadataPrefix 所指定的詮釋資料格式。

(3)idDoesNotExist : 指定的 identifier 不合法,或在資料庫中根本不存在。

(二)Identify

1.使用方式:用以取得資料庫的各項基本資訊。資料庫也可以將一些敘述性 的資訊放在這個命令的回應裡。

2.可用參數:無。

3.錯誤狀況:

(1)badArgument : 使用了不合法的參數。

(三)ListIdentifiers

1.使用方式:這個命令可以看作 ListRecords 的縮減版,與 ListRecords 的差別 在於它只取回每一筆資料紀錄的標頭(header)部分,而不是完整的紀錄(一筆 完整的紀錄還必須包括詮釋資料部分,以及非必需的相關(about)部分)。可 以利用資料集(set)與時間戳記(datestamp)兩個參數,作選擇性擷取(selective harvesting)。若資料庫能夠追蹤刪除資料,則在回應時可以在標頭(header) 部分加入status 參數,並設定其值為“deleted” ,來表示該筆資料已刪除。

2.可用參數:

(1)from:非必需,其值必須符合 UTC(Coordinated Universal Time)的標準格 式。當我們依某一段日期時間範圍進行選擇性擷取時,用以指示開始的 時間點。

(2)until:非必需,其值必須符合 UTC(Coordinated Universal Time)的標準格 式。當依某一段日期時間範圍進行選擇性擷取時,用以指示終止的時間 點。

(3)metadataPrefix : 必 需 , 用 以 指 示 回 應 時 只 取 回 詮 釋 資 料 格 式 符 合 metadataPrefix 的標頭(若資料庫能夠追蹤刪除資料,則已刪除的資料標 頭 也 會 被 取 回) 。 資 料 庫 能 提 供 的 所 有 詮 釋 資 料 格 式 , 可 以 藉 ListMetadataFormats 命令取得。

(4)set:非必需,當進行選擇性擷取,想將範圍限制在某一個資料集內時使 用。

(5)resumptionToken:唯一,其值為前一個 ListIdentifiers 命令未傳完全部的 資料時,所傳回來的一個流量控制用的標記。在要求中放入該傳回來的 resumptionToken,則資料提供者會延續之前未完成的 ListIdentifiers 命 令,繼續傳送接下去的資料。

3.錯誤狀況:

(1)badArgument:使用了不合法的參數,或缺失了必需的參數。

(2)badResumptionToken:所給予的 resumptionToken 是無效的,或是已經過 期。

(3)cannotDisseminateFormat:資料庫不支援要求中 metadataPrefix 所指定的 詮釋資料格式。

(4)noRecordsMatch:由 from,until,set 三個參數所構成的選取範圍裡沒有 任何一筆紀錄。

(5)noSetHierarchy:資料庫未支援資料集。

(四)ListMetadataFormats

1.使用方式:這個命令的用途是取得資料庫所有可用的詮釋資料格式。可以 利用非必需的identifier 參數,將傳回的結果限制為資料庫中某一個資料物 件所有可用的詮釋資料格式。

2.可用參數:

(1)identifier:非必需,其值應該要是資料庫中某個資料物件的唯一識別碼,

並且將傳回的結果限制為該資料物件所有可用的詮釋資料格式。當省略 這個參數時,傳回的結果則是資料庫所有可用的詮釋資料格式。特別要 注意的是:資料庫支援某種詮釋資料格式,並不表示資料庫裡的所有資 料物件都能使用該種詮釋資料格式。

3.錯誤狀況:

(1)badArgument:這個要求包含了不合法的參數,或缺失了必需的參數。

(2)idDoesNotExist:指定的 identifier 不合法,或在資料庫中根本不存在。

(3)noMetadataFormats: identifier 所指定的資料物件目前並沒有可以使用的 詮釋資料格式。

(五)ListRecords

1.使用方式:此命令用於從資料庫擷取大批資料紀錄。它提供一些非必需的 參數,協助我們運用資料集、時間戳記,進行選擇性擷取。若資料庫能夠追 蹤刪除資料,則在回應時可以在標頭(header)部份加入 status 參數,並設定 其值為“deleted” ,來表示該筆資料已刪除。已刪除的資料物件,其紀錄中 不會包含有詮釋資料(metadata)部份。

2.可用參數:

(1)from:非必需,其值必須符合 UTC(Coordinated Universal Time)的標準格 式。當我們依某一段日期時間範圍進行選擇性擷取時,用以指示開始的 時間點。

(2)until:非必需,其值必須符合 UTC(Coordinated Universal Time)的標準格 式。當我們依某一段日期時間範圍進行選擇性擷取時,用以指示終止的 時間點。

(3)set:非必需,當進行選擇性擷取,想將範圍限制在某一個資料集內時使 用。

(4)resumptionToken:唯一,其值為前一個 ListRecords 命令未傳完全部的資 料紀錄時,所傳回來的一個流量控制用的標記。在要求中放入該傳回來 的resumptionToken,則資料提供者應該要延續之前未完成的 ListRecords 命令,繼續傳送接下去的資料紀錄。

(5)metadataPrefix:必需,用以指示回應的資料紀錄中,詮釋資料的部份應 該要使用的詮釋資料格式,並且每筆紀錄只有能夠照metadataPrefix 所指 定之格式發佈詮釋資料,才會被取回。資料庫能提供的所有詮釋資料格 式,可以藉ListMetadataFormats 命令取得。

3.錯誤狀況:

(1)badArgument : 這個要求包含了不合法的參數,或缺失了必需的參數。

(2)badResumptionToken : 所給予的 resumptionToken 是無效的,或是已經 過期。

(3)cannotDisseminateFormat : 資料庫不支援要求中 metadataPrefix 所指定 的詮釋資料格式。

(4)noRecordsMatch : 由 from,until,set 三個參數所構成的選取範圍裡沒 有任何一筆紀錄。

(5)noSetHierarchy : 資料庫未支援資料集。

(六)ListSets

1.使用方式:這個命令的用途,在於取得資料庫內,資料集的階層架構,以 協助選擇性擷取之處理。

2.可用參數:

(1)resumptionToken:唯一,其值為前一個 ListSets 命令未傳完全部的資料 集架構時,所傳回來的一個流量控制用的標記。在要求中放入該傳回來的 resumptionToken,則資料提供者應該要延續之前未完成的 ListSets 命令,

繼續傳送接下去的資料集架構。

3.錯誤狀況:

(1)badArgument : 這個要求包含了不合法的參數。

(2)badResumptionToken : 所給予的 resumptionToken 是無效的,或是已 經過期。

(3)noSetHierarchy : 資料庫未支援資料集之使用。

(七)實例

下面的命令使用OAI-PMH 來要求單一一筆資料的詮釋資料,資料的識別碼 為oai:arXiv:cs/0112017,並要求詮釋資料必需以 Dublin Core 來呈現。

Request:

Response:

<?xml version="1.0" encoding="UTF-8"?>

<OAI-PMH xmlns=http://www.openarchives.org/OAI/2.0/

xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/

http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">

<responseDate>2002-02-08T08:55:46Z</responseDate>

<request verb="GetRecord" identifier="oai:arXiv:cs/0112017"

metadataPrefix="oai_dc">http://arXiv.org/oai2</request>

<GetRecord>

<record>

<header>

<identifier>oai:arXiv:cs/0112017</identifier>

<datestamp>2001-12-14</datestamp>

<setSpec>cs</setSpec>

<setSpec>math</setSpec>

</header>

<metadata>

<oai_dc:dc

xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/"

xmlns:dc="http://purl.org/dc/elements/1.1/"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/

http://www.openarchives.org/OAI/2.0/oai_dc.xsd">

<dc:title>Using Structural Metadata to Localize Experience of Digital Content</dc:title>

<dc:creator>Dushay, Naomi</dc:creator>

<dc:subject>Digital Libraries</dc:subject>

<dc:description>With the increasing technical sophistication of both information consumers and providers, there is

particular communities of users.

</dc:description>

<dc:description>Comment: 23 pages including 2 appendices, 8 figures</dc:description>

<dc:date>2001-12-14</dc:date>

</oai_dc:dc>

</metadata>

</record>

</GetRecord>

</OAI-PMH>

相關文件