データの保存、インポート、およびエクスポート > サポートされているインポートおよびエクスポートファイルフォーマット > XML 形式
 

XML 形式

XML (Extensible Markup Language) は、構造化されたデータを交換するための言語です。XML は厳密なファイル形式ではなく、複数のグループがデータ交換に使用することができる合意済みの形式を定義するための言語です。多くの個人、組織、および企業が、XML を使用して製品情報、取引、在庫データなどの業務データを転送しています。

XML のインポートおよびエクスポートのサンプルファイルは、ダウンロードとリソースページからダウンロードできます。XML の一般情報、XML に関する役立つ情報へのリンクについては、FileMaker の Web サイトを参照してください。

XML のインポート

FileMaker Pro Advanced は、XML のインポート用に FMPXMLRESULT 文法をサポートしています。XML が別の形式の場合は、インポートの際に XSLT (Extensible Stylesheet Language for Transformations) スタイルシートを適用して、XML を FMPXMLRESULT 文法に変換することができます。

XML のエクスポート

FileMaker Pro Advanced では、FMPXMLRESULT と FMPDSORESULTという 2 つの XML 文法でデータをエクスポートすることができます。エクスポートの際に XSLT スタイルシートを適用して、これらのいずれかの文法を別の XML 形式に変換したり、HTML や標準のテキストなどの別の形式に変換することができます。たとえば、XML のエクスポート機能を使用して、データ駆動型の Web ページや、カスタムフィールド区切り記号を使用するデータのテキストファイルを作成することができます。

メモ  FileMaker Pro Advanced の XML のインポートとエクスポートの機能では、Xerces という XML パーサと、Xalan という XSLT スタイルシートプロセッサを使用します。XML および XSL の開発中に、Xerces ベースのパーサと Xalan ベースのプロセッサを使用して、開発した XML と XSL をテストできます。これらは、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 Advanced では、FMPXMLRESULT 文法でのインポートとエクスポートの両方がサポートされているため、この形式は、複数の FileMaker Pro Advanced ファイルの間でデータを転送する場合に便利です。

メモ  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 Advanced は、XSLT スタイルシート (指定した場合) を適用し、XML データを変換します。エラーメッセージが表示される場合は、エラーを修正してから再度インポートしてください。

インポートする XML は FMPXMLRESULT 文法に準拠していなければなりませんが、特定の要素と属性はインポート中には使用されません。次の表は、XML のインポート中に使用される要素と属性、および属性に対して使用可能なデフォルト値の一覧を示します。ほとんどの場合、属性値は、NULL (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 Advanced へのデータのインポート

FileMaker Pro Advanced からのデータのエクスポート