典拠標目ルールの操作
典拠標目ルールを使用するには、次の役職が必要です。
- 目録管理者
典拠標目には、優先レコード/非優先レコードの結果が表示され、(MDエディタでF3を使用)オプションを設定することで詳細を表示するといった拡張 機能を使用することができます。次の図に示すように、標準の典拠標目結果には限られた量の情報しか表示されない場合があります。典拠標目結果リストには同じ情報を持つ複数のレコードが表示される場合があり、目的のレコードを選択することが困難な場合があります。
標準的な典拠の標目結果の表示
典拠標目ルールを使用すると、同じ結果を展開して詳細を表示できるため、目録作成者は次のレコードを選択するのが簡単になります。
拡張設定済みの典拠標目表示
優先典拠標目と非優先典拠標目の操作の詳細については、MDエディタにおける典拠レコードの管理を参照してください。
Droolsタイプのロジックを使用した典拠標目ルールは、拡張した典拠の標目に表示する内容と形式を指定します。典拠標目ルールに使用される構文は、典拠標目ルールの構文と例で説明されています。
詳細については、典拠の標目の表示オプションの動画(4分33秒)を参照してください。
典拠標目ルールの実装
MDエディタで拡張した典拠標目を表示するには、次の手順を実行します。
- 複数の典拠標目ルールを作成することで、拡張した典拠標目に表示する内容と形式を識別します。詳細については、典拠標目ルールの作成を参照してください。
- 典拠単語セクションの[メタデータ設定リスト]ページ([設定メニュー > リソース > 目録 > メタデータの設定])で設定した、拡張する単語それぞについて、典拠標目ルールを選択します。優先/非優先標目でF3を選択すると、特定の単語の典拠レコードが呼び出され表示されるため、典拠標目ルールを(ローカルまたはコミュニティで管理されている)特定の典拠ボキャブラリに関連付ける必要があります。行アクションのリストから[典拠標目ルールの設定]を選択し、ルールを選択し、[送信]を選択することで、ルールを特定の単語に関連付けます。 [メタデータ設定リスト]ページの詳細については、目録の設定を参照してください。
典拠標目ルールの作成
典拠標目ルールはMDエディタで作成され、[典拠標目ルール]フォルダの[ルール]タブに表示されます。必要に応じて、典拠標目ルールを[複製]または[コピー]し、それらを変更して新しいルールを作成できます。
ネットワークゾーンコンソーシアム メンバーの場合、ユーザーは 新しい ルールをローカルに保存する か、ネットワーク機関に保存するかを制御できます。この選択を行うには、[レコード]または[テンプレート]領域を開き、[新規] > [配置オプション]に移動します。この選択はユーザーごとに行われることに注意してください。
典拠標目ルールを作成する方法
- MDエディタページを開きます([リソース > 目録 > メタデータエディタを開く])。
- [新規] > [典拠標目]を選択し、[正規化ルールプロパティ]ダイアログボックスで典拠標目ルールのプロパティを入力します。
- [保存]を選択します。ルールエディタが開きます。
- ルールの詳細を入力します。使用される構文の詳細については、典拠標目ルールの構文と例を参照してください。
-
[保存]を選択します。保存された典拠標目ルールは、ナビゲーションパネルの [ルール]タブ
に表示されます。保存された典拠標目ルールは、編集、削除、(新しいルールを作成するために)複製、もしくは(他のユーザーがアクセスできるようにコミュニティに)投稿することができます。ルールのプロパティを変更することもできます。
典拠標目ルールの構文と例
典拠標目のルールは、特定の構文に従います。例については、以下を参照してください。
rule "Expand Headings"
when
not preferred
then
add to text displayValue
add to text " | "
add to text preferredDisplay
add to text " | "
add to text from "079.b" if (exists "079.b")
add to text " | "
add to text from "035.a" if (exists "035.a.*588*")
add to text " | "
add to text from headingSourceField "[9,w]"
end
when
not preferred
then
add to text displayValue
add to text " | "
add to text preferredDisplay
add to text " | "
add to text from "079.b" if (exists "079.b")
add to text " | "
add to text from "035.a" if (exists "035.a.*588*")
add to text " | "
add to text from headingSourceField "[9,w]"
end
典拠標目ルールの構文の説明については、以下の表を参照してください。 サポートされている条件のリストについては、典拠標目ルールでサポートされている条件セクションを参照してください。条件とアクションは、MARCレコード、フィールド(1つ以上)、インジケーター、サブフィールド(1つ以上)、フィールド/サブフィールドの内容などのレコード要素に適用されます。
表現 | 意味 |
---|---|
when not preferred then | 標目が非優先標目の場合にのみアクションが実行されます。 |
when preferred then | 標目が優先標目である場合にのみ、アクションが実行されます。 |
when (exists/not exists "<element>") then | (通常の正規化ルール同様)典拠レコードのフィールドの存在を確認します。 例: when (not exists "100.d") then |
add to text preferredDisplay | 優先する標目をディスプレイに追加します。MARC 21やUNIMARCなどのレコードの形式に一致する優先標目が表示されます。 |
add to text displayValue | 表示された標目値を追加します。 |
add to text "<hard coded value>" | ハードコードされた値をパイプ文字(|)などのテキストに連結します。 例: add to text "|" |
add to text from "<element>" | レコードから値を追加します。これには、フィールド/サブフィールドの仕様と条件を含めることができます。サポートされている条件のリストの詳細については、典拠標目ルールでサポートされている条件セクションを参照してください。 繰り返しフィールドの場合、最初に出現する構文(onlyfirst)を使用することで、繰り返しフィールドの最初のインスタンスのみを表示できます。 連結されたサブフィールドの場合、delimited by構文を使用することで、サブフィールド間に区切り文字を追加できます。 例: add to text from "005" if (not existsControl "005.{0,2}.19") add to text from "005" if (existsControl "005.{0,2}.19") add to text from "005.{0,4}" if (not existsControl "005.{0,2}.19") add to text from "005.{0,4}" if (existsControl "005.{0,2}.19") add to text from "005" add to text from "005.a" add to text from "005.{0,4}" add to text from "400.a" if (not exists "400.d.1808*") add to text from "400.a" if (exists "400.d.1808*") add to text from onlyfirst "035.a" if (not exists "035.a") add to text from onlyfirst "035.a" if (exists "035.a.(OCoLC)*") add to text from "400.a" delimited by "; " |
add to text from headingSourceField | 典拠標目のソースフィールドからテキストを追加します。 例: add to text from headingSourceField "[a-z]" |
add to text from headingSourceField excluding "<field.subfield>" | 典拠標目のソースフィールドからテキストを追加し、指定されたフィールドを除外します。 例: add to text from headingSourceField excluding "[0-9]|e|E" |
典拠標目ルールでサポートされる条件
典拠標目ルールでは、次の条件がサポートされています。
- preferred
- not preferred
- existsControl "{element}"
- not existsControl "{element}"
- exists "{element}"
- not exists "{element}"
- existsMoreThanOnce "{element}"