モジュール java.xml
パッケージ javax.xml.catalog

インタフェース・カタログ


public interface Catalog
Catalogクラスは、「XMLカタログ、OASIS Standard V1.1、2005年10月7日」によって定義されたエンティティ・カタログを表します。

カタログは、カタログ・エントリのリストを含むルートcatalogエントリを含むXMLファイルです。 エントリは、groupエントリでグループ化することもできます。 カタログおよびグループ・エントリでは、preferおよびxml:base属性を指定できます。この属性は、相対URIを解決するために、エントリのパブリックまたはシステム・タイプのプリファレンスおよびベースURIを設定します。

カタログは、次の2つの状況で使用できます:

  • パブリックまたはシステム識別子を使用して外部リソースを特定
  • URIを含む代替URI参照を検索します。

ケース1では、標準で6つの外部識別子エントリが定義されています:
public, system, rewriteSystem, systemSuffix, delegatePublic, and delegateSystem

ケース2では、4つのURIエントリを定義します:
uri, rewriteURI, uriSuffix and delegateURI

前述のエントリ・タイプに加えて、カタログはnextCatalogエントリを定義して、カタログ・エントリ・ファイルを追加できます。

導入されたバージョン:
9
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    現在のカタログのnextCatalogエントリを使用して指定された代替カタログの順次ストリーム、およびCatalogManagerによってカタログ・オブジェクトが作成されたときに現在のカタログ(つまり、入力リストの先頭です)を除くカタログ・ファイルの入力として戻されます。
    matchPublic(String publicId)
    カタログ内の一致するエントリをpublicIdで検索します。
    matchSystem(String systemId)
    カタログ内の一致するエントリをsystemIdで検索します。
    uri要素によるカタログ内の一致するエントリの検索を試行します。
  • メソッドの詳細

    • matchSystem

      String matchSystem(String systemId)
      カタログ内の一致するエントリをsystemIdで検索します。

      このメソッドは、一致を検索するために、現在のカタログのsystem, rewriteSystem, systemSuffix, delegateSystemおよびgroupエントリを含むシステム・タイプのエントリを検索します。

      解像度は以下のステップに従います:

      • 一致するsystemエントリが存在する場合は、ただちに返されます。
      • 複数のrewriteSystemエントリが一致する場合、正規化されたsystemIdStartString値が最も長い一致するエントリが返されます。
      • 複数のsystemSuffixエントリが一致する場合、正規化されたsystemIdSuffix値が最も長い一致するエントリが返されます。
      • 複数のdelegateSystemエントリが一致する場合、一致するsystemIdStartString値が最も長い一致するエントリが返されます。

      パラメータ:
      systemId - 一致するエンティティのシステム識別子
      戻り値:
      マッピングが見つかった場合はURI文字列、それ以外の場合はnull
    • matchPublic

      String matchPublic(String publicId)
      カタログ内の一致するエントリをpublicIdで検索します。 このメソッドは、一致を検索するために、現在のカタログのpublic, delegatePublicおよびgroupエントリを含むpublic-typeエントリを検索します。

      クラスCatalogFeatures「表のカタログ機能の優先機能」についての説明を参照してください。 パブリック・エントリは、preferpublicで、systemエントリが見つからない場合にのみ考慮されます。

      解像度は以下のステップに従います:

      • 一致するpublicエントリが見つかった場合は、ただちに返されます。
      • 複数のdelegatePublicエントリが一致する場合、一致するpublicIdStartString値が最も長い一致するエントリが返されます。

      パラメータ:
      publicId - 一致するエンティティの公開識別子
      戻り値:
      マッピングが見つかった場合はURI文字列、それ以外の場合はnull
      関連項目:
    • matchURI

      String matchURI(String uri)
      uri要素によるカタログ内の一致するエントリの検索を試行します。

      このメソッドは、一致を検索するために、現在のカタログのuri, rewriteURI, uriSuffix, delegateURIおよびgroupエントリを含むURIタイプのエントリを検索します。

      解像度は以下のステップに従います:

      • 一致するuriエントリが見つかった場合は、ただちに返されます。
      • 複数のrewriteURIエントリが一致する場合、正規化されたuriStartString値が最も長い一致するエントリが返されます。
      • 複数のuriSuffixエントリが一致する場合、正規化されたuriSuffix値が最も長い一致するエントリが返されます。
      • 複数のdelegatePublicエントリが一致する場合、一致するuriStartString値が最も長い一致するエントリが返されます。

      パラメータ:
      uri - 一致するエンティティのURI参照
      戻り値:
      マッピングが見つかった場合はURI文字列、それ以外の場合はnull
    • catalogs

      Stream<Catalog> catalogs()
      現在のカタログのnextCatalogエントリを使用して指定された代替カタログの順次ストリーム、およびCatalogManagerによってカタログ・オブジェクトが作成されたときに現在のカタログ(つまり、入力リストの先頭です)を除くカタログ・ファイルの入力として戻されます。

      返されるストリームのカタログの順序は、対応するnextCatalogエントリが現在のカタログに表示される順序と同じです。 入力ファイル・リストの代替カタログは、入力された順序でストリームの最後に追加されます。

      戻り値:
      カタログの連続ストリーム