XML:XSL:XSLTとは?(簡単な概要、XMLデータについて)
XML (18 items)
2004年08月30日
XML、XSL(XSLT)についての簡単な概要を以下に記す。
基本的な概要は、各書籍・各サイトで説明されている為、
ここでは、XMLを”データ”として利用する部分に絞って記述する。
基本的な概要は、各書籍・各サイトで説明されている為、
ここでは、XMLを”データ”として利用する部分に絞って記述する。
<スポンサードリンク>
○XML・・・”Extensible Markup Language”
HTMLのようにタグでマークアップしながら記述する。
HTMLはWEBブラウザで見る為に特化したものの為、タグ表記は限られるが、
XMLはタグに何を記述してもよい。
XMLをデータとして利用しないシステム開発において、
例えば下図で記述しているように、
A企業とB企業との企業間でのデータのやり取りは、
・CSV、TEXT(タブ区切りデータ)
・DB(データベース)
などを用いる事が一般的であるが、
その際はデータを各企業が読みやすい形に変換する為に、
”データを加工(編集)するプログラム”が必要となる。
ここでXMLデータを使用すると、
データの変換がXSLTなどの使用により容易に且つ汎用的に実現できる。
また、XMLデータ自体が意味付けされた各タグによってマークアップされているので、
特にCSVデータ等に比べて、情報管理の一元化が可能となる。
(図1)XMLを使用しない場合
(図2)XMLを使用する場合
○XSL・・・”Extensible Stylesheet Language”
○XSLT・・・”XSL Transformations”
XML文書を様々な形に加工する為のものであり、XMLのスタイルシートと定義される。
すなわち、HTMLのスタイルシートがCSSであれば、XMLのスタイルシートはXSLである。
XSLの仕様は多機能な為に膨大なものになり、XSL仕様の標準化の際に、
フォーマット変換に特化した規約として、新たに標準化されたものがXSLTである。
XSLTを使用する事で、
例えば前述の図のように、通常あるデータからあるデータに変換する際は、
必ず何らかのプログラムが必要となるが、
XMLデータのフォーマット変換という処理においては、
プログラムを作成しなくても、XSLTを使用する事で容易に可能となる。
−−−−−−−−−− メモ −−−−−−−−−−
基本的にXMLデータを扱う(プログラミングで扱う)仕組みは、
DBからデータを抽出するように、
「このデータからこの条件に合うものを取り出す」といったものではなく、
論理的に考えられたツリー構造のXMLデータを、
「ルートから順にノードを辿っていき、対象データを取り出す」といったものとなる。
(この際に必要な考え方が、”XPath”であったりする)
この辺りの考えが、従来のDB利用のコーディングに慣れたプログラマーにとって、
取っ付きにくいかもしれない。
現在、XML技術(XPath、XQuery等)は発展段階であり、
それらの仕様の動向が注目されているが、
まだ決まっていない、もしくは変更がある仕様も多い。
ただ、先に上げた「このデータからこの条件に合うものを取り出す」という仕組みも、
”XQuery”によって実現可能となる。
これらの仕様確定が非常に待ち望まれている。
HTMLのようにタグでマークアップしながら記述する。
HTMLはWEBブラウザで見る為に特化したものの為、タグ表記は限られるが、
XMLはタグに何を記述してもよい。
XMLをデータとして利用しないシステム開発において、
例えば下図で記述しているように、
A企業とB企業との企業間でのデータのやり取りは、
・CSV、TEXT(タブ区切りデータ)
・DB(データベース)
などを用いる事が一般的であるが、
その際はデータを各企業が読みやすい形に変換する為に、
”データを加工(編集)するプログラム”が必要となる。
ここでXMLデータを使用すると、
データの変換がXSLTなどの使用により容易に且つ汎用的に実現できる。
また、XMLデータ自体が意味付けされた各タグによってマークアップされているので、
特にCSVデータ等に比べて、情報管理の一元化が可能となる。
(図1)XMLを使用しない場合
★A企業
Aデータ
↓
(編集処理:プログラム)
↓
データ(DB、CSV、TEXT)
↓
(編集処理:プログラム)
↓
★B企業
Bデータ
(図2)XMLを使用する場合
★A企業
Aデータ(XML)←AデータのXSLT(スタイルシート)
↓
XMLデータ(変換無し)
↓
★B企業
Bデータ(XML)←BデータのXSLT(スタイルシート)
○XSL・・・”Extensible Stylesheet Language”
○XSLT・・・”XSL Transformations”
XML文書を様々な形に加工する為のものであり、XMLのスタイルシートと定義される。
すなわち、HTMLのスタイルシートがCSSであれば、XMLのスタイルシートはXSLである。
XSLの仕様は多機能な為に膨大なものになり、XSL仕様の標準化の際に、
フォーマット変換に特化した規約として、新たに標準化されたものがXSLTである。
XSLTを使用する事で、
例えば前述の図のように、通常あるデータからあるデータに変換する際は、
必ず何らかのプログラムが必要となるが、
XMLデータのフォーマット変換という処理においては、
プログラムを作成しなくても、XSLTを使用する事で容易に可能となる。
−−−−−−−−−− メモ −−−−−−−−−−
基本的にXMLデータを扱う(プログラミングで扱う)仕組みは、
DBからデータを抽出するように、
「このデータからこの条件に合うものを取り出す」といったものではなく、
論理的に考えられたツリー構造のXMLデータを、
「ルートから順にノードを辿っていき、対象データを取り出す」といったものとなる。
(この際に必要な考え方が、”XPath”であったりする)
この辺りの考えが、従来のDB利用のコーディングに慣れたプログラマーにとって、
取っ付きにくいかもしれない。
現在、XML技術(XPath、XQuery等)は発展段階であり、
それらの仕様の動向が注目されているが、
まだ決まっていない、もしくは変更がある仕様も多い。
ただ、先に上げた「このデータからこの条件に合うものを取り出す」という仕組みも、
”XQuery”によって実現可能となる。
これらの仕様確定が非常に待ち望まれている。
<スポンサードリンク>
前の記事 次の記事