データの保存、インポート、およびエクスポート > サポートされているインポートおよびエクスポートファイルフォーマット > XML 形式
 
XML 形式
XML (Extensible Markup Language) は、構造化されたデータを交換するための言語です。XML は厳密なファイル形式ではなく、複数のグループがデータ交換に使用することができる合意済みの形式を定義するための言語です。多くの個人、組織、および企業が、XML を使用して製品情報、取引、在庫データなどの業務データを転送しています。
XML のインポートおよびエクスポートのサンプルファイルは、http://www.filemaker.com/jp/support/downloads でダウンロードできます。XML の一般情報、XML に関する役立つ情報へのリンクについては、FileMaker の Web サイト http://www.filemaker.com/jp を参照してください。
XML のインポート
FileMaker Pro は、XML のインポート用に FMPXMLRESULT 文法をサポートしています。XML が別の形式の場合は、インポートの際に XSLT (Extensible Stylesheet Language for Transformations) スタイルシートを適用して、XML を FMPXMLRESULT 文法に変換することができます。
XML のエクスポート
FileMaker Pro では、FMPXMLRESULT と FMPDSORESULTという 2 つの XML 文法でデータをエクスポートすることができます。エクスポートの際に XSLT スタイルシートを適用して、これらのいずれかの文法を別の XML 形式に変換したり、HTML や標準のテキストなどの別の形式に変換することができます。たとえば、XML のエクスポート機能を使用して、データ駆動型の Web ページや、カスタムフィールド区切り記号を使用するデータのテキストファイルを作成することができます。
メモ  FileMaker Pro の XML のインポートとエクスポートの機能では、Xerces という XML パーサと、Xalan という XSLT スタイルシートプロセッサを使用します。XML および XSL の開発中に、Xerces ベースのパーサと Xalan ベースのプロセッサを使用して、開発した XML と XSL をテストできます。これらは、http://www.apache.org や他のサードパーティのサイトからダウンロードできます。
XML FMPDSORESULT 文法
FMPDSORESULT 文法は、CSS (Cascading Style Sheets) または XSL を使用して書式設定するデータベースをエクスポートする場合に便利です。この文法は、Internet Explorer で使用されている Microsoft XML データソースオブジェクトと互換性があります。
メモ  データフィールドの名前の先頭に数字を付けたり、半角カタカナを含む名前を使用したりしないでください (「7」など)。FMPDSORESULT 文法では、数字または半角カタカナ文字をフィールド名タグとして使用することはできないため、生成された XML ファイルがブラウザに表示されません。
エクスポートされた FMPDSORESULT 文法の各 ROW 要素には、エクスポートするフィールド名に対応する FIELD 要素が数多く格納されています。
フィールド名に含まれるスペースや 1 つのコロンは、要素名では下線に変換されます (たとえば、<FIRST_NAME>)。ポータルフィールド内の 2 つのコロンは、ピリオドに変換されます (たとえば、<PHONE.PHONE_NUMBER>)。これは、XML ではコロンが名前空間の指定のために予約されているという理由と、XML 要素名ではスペースを使用することができないという理由によります。
繰り返しフィールドおよび関連フィールドの場合、各 FIELD 要素に、各繰り返しレコードまたはポータルレコードに対応する DATA 要素が格納されます。
XML のエクスポートでは、オブジェクトフィールドデータのエクスポートはサポートされません。
XML の制限のため、各関連フィールドからエクスポートできるのは 1 レコードのみです。
XML FMPXMLRESULT 文法
FMPXMLRESULT 文法には、レコード数、フィールドタイプ、フィールド書式など、FMPDSORESULT 文法にない、データベースに関する追加の情報が含まれます。これらの要素と属性は、XML を正しく検証するために必要となります。
FMPXMLRESULT 文法は、この文法で提供される METADATA 情報が必要な場合に使用します。FileMaker Pro では、FMPXMLRESULT 文法でのインポートとエクスポートの両方がサポートされているため、この形式は、複数の FileMaker Pro ファイルの間でデータを転送する場合に便利です。
メモ  FMPXMLRESULT の文法は、CSS (Cascading Style Sheet) との併用には適しません。XML データで CSS を使用する場合は、FMPDSORESULT 文法を使用してください。
FMPXMLRESULT 文法では、DATABASE 要素に、NAME、RECORDS、DATEFORMAT、LAYOUT および TIMEFORMAT 属性が含まれます。
DATEFORMAT 属性は、XML ドキュメントの日付の書式を指定します。
 
フィールド
完全な形式
短い形式
yyyy (4 桁)
yy (2 桁)
mm (2 桁)
M (1 桁または 2 桁)
dd (2 桁)
d (1 桁または 2 桁)
TIMEFORMAT 属性は、XML ドキュメントの時刻の書式を指定します。
 
フィールド
完全な形式
短い形式
時 (1-12)
hh (2 桁)
h (1 桁または 2 桁)
時 (1-24)
kk (2 桁)
k (1 桁または 2 桁)
mm
 
ss
 
AM/PM
a
 
METADATA 要素には 1 つまたは複数の FIELD 要素が含まれ、各 FIELD 要素には 1 つのフィールド/列の情報が含まれます。この情報には、データベースで定義されているフィールドの名前、フィールドタイプ、空白フィールドの使用可否 (EMPTYOK 属性) を指定する Yes または No、および繰り返しフィールドの最大数 (MAXREPEAT 属性) が含まれます。フィールドタイプに対して有効な値は、TEXT、NUMBER、DATE、TIME、および CONTAINER です。
RESULTSET 要素には、XML 内のレコードデータを指定する ROW 要素がすべて含まれます。各 ROW 要素には、対象レコード内の 1 つの行に対するフィールド/列データが含まれます。これには、行のレコード ID、行の修正 ID、および行内の 1 つのフィールド/列のデータを含む COL 要素が含まれます (複数の DATA 要素は、繰り返しフィールドまたはポータルフィールドの値の 1 つを表します)。
XML のエクスポートでは、オブジェクトフィールドデータのエクスポートはサポートされません。
XML の制限のため、各関連フィールドからエクスポートできるのは 1 レコードのみです。
COL 要素の順序は、METADATA 要素内の FIELD 要素の順序に対応します。たとえば、METADATA に「First Name」、「Last Name」、および「Department」要素が記述されている場合、「Joe」、「Smith」、および「Engineering」が同じ順序で RESULTSET ROW に記述されます。
メモ 
XML をインポートする前に、Xerces ベースの XML パーサ および Xalan ベースの XSLT プロセッサを使用し、FileMaker Pro は、XSLT スタイルシート (指定した場合) を適用し、XML データを変換します。エラーメッセージが表示される場合は、エラーを修正してから再度インポートしてください。
インポートする XML は FMPXMLRESULT 文法に準拠していなければなりませんが、特定の要素と属性はインポート中には使用されません。次の表は、XML のインポート中に使用される要素と属性、および属性に対して使用可能なデフォルト値の一覧を示します。ほとんどの場合、属性値は、ヌル (TIMEFORMAT=""など) にすることができます。また、必ず FMPXMLRESULT 要素で、この文法に対する FileMaker 名前空間を宣言してください。
 
要素
属性
XML インポート時の使用有無
デフォルト値
FMPXMLRESULT
 
はい
xmlns="http://www.filemaker.com/ fmpxmlresult"
ERRORCODE
 
いいえ
 
PRODUCT
 
いいえ
" "
 
NAME
いいえ
" "
 
VERSION
いいえ
" "
 
BUILD
いいえ
" "
DATABASE
 
いいえ
 
 
NAME
いいえ
" "
 
RECORDS
いいえ
" "
 
DATEFORMAT
いいえ
" "
 
TIMEFORMAT
いいえ
" "
 
LAYOUT
いいえ
" "
METADATA
 
はい
 
    FIELD
 
はい
 
 
NAME
はい
" "
 
TYPE
はい
"TEXT"、"DATE"、"NUMBER"、"TIME"、"TIMESTAMP"、または "CONTAINER"
 
EMPTYOK
いいえ
"YES" または "NO"
 
MAXREPEAT
いいえ
" "
RESULTSET
 
はい
 
 
FOUND
いいえ
" "
    ROW
 
はい
 
 
RECORDID
いいえ
" "
 
MODID
いいえ
" "
    COL
 
はい
 
      DATA
 
はい
 
関連項目 
FileMaker Pro へのデータのインポート
FileMaker Pro からのデータのエクスポート