XSLT 変換(XSLT Transformation) (変換)

ライセンス レベル:BasicStandardAdvanced

サマリ

ArcGIS アイテムのメタデータ、または XSLT 1.0 スタイルシート使用の XML ファイルを変換し、その結果を XML ファイルに保存するには、.NET 3.5 XML ソフトウェアを使用します。

XSLT スタイルシートを使用して、ArcGIS メタデータまたは XML ファイルに対してさまざまな変更を行うことができます。ArcGIS for Desktop には、いくつかの XSLT スタイルシートが付属しています。XSLT スタイルシートは、<ArcGIS インストール場所>\Metadata\Stylesheets フォルダに格納されています。次の表で、これらのスタイルシートを説明します。

次のスタイルシートは HTML ドキュメントを生成し、[説明] タブのアイテムに関する情報を表示するのに使用されます。アイテムのメタデータからコンテンツを抽出し、それに HTML の書式に関する指示を加えます。これらのスタイルシートは他のファイルから多くの XSLT テンプレートを ArcGIS_Imports フォルダにインポートします。インポートしたテンプレートは業務の大半を行います。カスタム スタイルシートを作成して表示させたい場合は、ArcGIS Metadata Toolkit のドキュメントを参照するとこれらのスタイルシートについて知ることができます。

ArcGIS.xsl

アイテムの完全なメタデータ コンテンツの表示。デフォルトのアイテム説明スタイルを除いて、すべてのメタデータ スタイルから参照されます。

ArcGIS_ItemDescription.xsl

アイテムの簡潔な説明のみを表示します。デフォルトのアイテム説明メタデータ スタイルから参照されます。

次のスタイルシートは <ArcGIS インストール場所>\Metadata\Stylesheets\gpTools フォルダで提供され、アイテムのメタデータを抽出して処理し、作成された XML ドキュメントを新しい XML ファイルとして保存します。この操作の目的はアイテムのメタデータを ArcGIS 以外で使用する前にフィルタリングすることかもしれません。あるいは、アイテムのメタデータを変更することかもしれません。この場合、生成された XML ファイルは [メタデータ インポータ(Metadata Importer)] ツールを使用して、そのメタデータとして元のアイテムに保存できます。次の処理を行うモデルまたはスクリプトを作成できます: 初めは、このツールを実行してスタイルシートでメタデータ コンテンツを更新し、そしてすぐに、変更点を元のアイテムに保存します。次のスタイルシートは ArcGIS for Desktop に付属していて、明確に定義されたメタデータ タスクを実行します。

add unique identifier.xslt

一意の ID の追加または変更はアイテムのメタデータに格納されます。このスタイルシートで変更された ID は Esri PublishedDocID メタデータ エレメントに格納され、ArcIMS メタデータ サービスあるいはジオポータルのようなメタデータ カタログ内のドキュメントを特定するのに使用されます。

exact copy of.xslt

アイテムのメタデータの正確なコピーを XML ファイルとして作成。このスタイルシートを使って、たとえばジオデータベース アイテムのメタデータのコピーをローカル ファイルに保存し、そのファイルを開いてメタデータを確認できます。

generate metadata template.xslt

ArcGIS メタデータ コンテンツを、他のアイテムがメタデータ テンプレートとしてインポートできるように、新しい XML ファイルにコピーします。同期したメタデータ コンテンツはテンプレートから除外され、空のエレメントは削除されます。

remove empty elements.xslt

空の XML エレメントを削除します。他のスタイルシートを使用して不要なメタデータ コンテンツを削除した後も、空の XML エレメントが残ることがあります。アイテムのメタデータを後で整合チェックしたい場合、空の XML エレメントは問題を引き起こすことがあります。たとえば、エレメントがオプションで、かつ空だと、頻繁にエラーメッセージを受け取ることになります。エレメントが空だからです。エレメントごと削除してしまえばエラーにはならず、メタデータは正しいと認識されます。

remove entries from FGDC lineage.xslt

ArcGIS Desktop 9.3.1 によって FGDC 形式の系統に追加されたプロセス手順を削除します。プロセス手順は、メタデータがアイテムにインポートされた場合、ならびにアイテムが別の場所にコピーされた場合に FGDC 形式の系統に追加されました。現在のバージョンの ArcGIS では、この情報がアイテム系統に追加されることはありません。また、この情報が、アイテム系統の他の部分と共に ArcGIS メタデータ形式にアップグレードされることもありません。

remove FGDC required hints.xslt

REQUIRED というテキストを含む FGDC 形式のメタデータ エレメントを削除します。これらのテキスト文字列は、有効な FGDC CSDGM メタデータを作成するためにはどのメタデータ エレメントが必要かを示すため、FGDC 形式のメタデータが作成されたときに ArcGIS Desktop 9.3.1 によって追加されました。しかし、アイテムのメタデータを後で整合チェックしたい場合、これらの文字列は問題を引き起こすことがあります。デフォルトのテキストが存在する場合、エレメントは有効であると見なされます。なぜなら、テキストがアイテムについていかなる情報も持たないとしても、とにかく何らかのテキストを格納しているからです。デフォルトのテキスト文字列は、現在のバージョンの ArcGIS によっては追加されません。また、これらの文字列は、アイテムのメタデータ コンテンツと一緒に ArcGIS メタデータ形式にアップグレードされることもありません。

remove geoprocessing history.xslt

アイテムのジオプロセシング履歴を削除します。すべてのメタデータのジオプロセシング ツールはアイテムのジオプロセシング履歴を保持するように作られているため、時間が経つと履歴が巨大になり、アイテムのメタデータは XML ドキュメントとして処理するのが難しくなります。このような状況ではアイテムのジオプロセシング履歴を削除する必要があります。

remove local storage info.xslt

アイテムのメタデータ内にコンピュータ名があれば、すべて削除します。コンピュータ名がどこで見つかったかにより、処置が異なります。コンピュータ名を持つメタデータ エレメントごと削除される場合もあります。UNC パスからコンピュータ名が削除される場合もあります。あるいは、そのコンピュータの場所が「保留」状態であることを示すよう、エレメントの値が更新される場合もあります。

remove pre94 metadata elements.xslt

ArcGIS メタデータ形式に含まれていない ESRI-ISO 形式 XML エレメントおよび FGDC CSDGM 形式 XML エレメントをすべて、アイテムのメタデータから削除します。

remove synchronized elements.xslt

ArcGIS メタデータ同期プロセスによってアイテムのメタデータに加えられた情報を削除します。

remove thumbnail.xslt

アイテムのサムネイルを削除します。メタデータのジオプロセシング ツールはアイテムのサムネイルを保持するように作られていますが、場合によってはアイテムのサムネイルを削除したい場合があります。[説明] タブ内でメタデータを編集する時に、1 つのアイテムのサムネイルを削除することができます。このスクリプトを使って、多くのアイテムからサムネイルを削除するためのバッチ プロセスを実行することができます。

remove unique identifiers.xslt

アイテムのメタデータから、すべての一意のID(ArcGIS によって追加された ID およびメタデータ エディタを使って作成された ID を含む)を削除します。ID は他のアイテムにコピーすることはできません。

_MPXML2.xsl

アイテムのメタデータに FGDC CSDGM 形式の XML エレメントが存在する場合は、それを抽出し、正しい順序に並べます。このスタイルシートで抽出された情報は、FGDC メタデータ(読み取り専用)の元に、[説明] タブ内で表示されるコンテンツです。

ArcGIS for Desktop に付属しているスタイルシートの中には、メタデータ ジオプロセシング ツールによってインポート、エクスポートならびに更新プロセスそれぞれを実行するために使われるものもあります。

サンプルとして付属しているスタイルシートを使ってタスクを実行する、ユーザ独自の XSLT スタイルシートを作成することもできます。たとえば、次のような処理を実行するスタイルシートを作成できます。

ArcGIS の外部で出力 XML を使用する場合を除き、Esri メタデータ エレメントおよびバイナリ メタデータ エレメント内の情報が ArcGIS メタデータ変更用 XSLT スタイルシートに削除されるのを回避する必要があります。

使用法

構文

XSLTransform_conversion (source, xslt, output, {xsltparam})
パラメータ説明データ タイプ
source

メタデータが変換されるアイテム、または変換されるスタンドアロン XML ファイル。

Data Element; Layer
xslt

実行される変換を定義する W3C 準拠の XSLT 1.0 スタイルシート ファイル

いくつかのスタイルシートが ArcGIS から提供されており、<ArcGIS インストール場所>\Metadata\Stylesheets フォルダで利用可能です。

File
output

作成される変換済みのメタデータを含んでいるファイル。

作成されるファイルのタイプは、XSLT スタイルシート内に指定されている出力メソッドに応じて決まります。

File
xsltparam
(オプション)

XSLT スタイルシートに渡される XML ファイルまたは文字列

このパラメータを XSLT スタイルシートでキャプチャするには、<xsl:param name="gpparam" /> を XSLT スタイルシート上部の xsl:output エレメントから最初の xsl:template までの間に追加します。例については、add unique identifier.xslt をご参照ください。

File; String

コードのサンプル

HTML ファイルへのメタデータのエクスポート

ArcGIS に付属している ArcGIS.xsl XSLT スタイルシートを使用して、メタデータを Web サイトで使えるように HTML ファイルへエクスポートします。

import arcpy
from arcpy import env
env.workspace = "C:/data"
#set local variables
dir = arcpy.GetInstallInfo("desktop")["InstallDir"]
xslt = dir + "Metadata/Stylesheets/ArcGIS.xsl"
arcpy.XSLTransform_conversion("vegetation", xslt, "vegetation.html", "#")

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: ○
ArcGIS for Desktop Standard: ○
ArcGIS for Desktop Advanced: ○
9/14/2013