はじめに
UiPathでXMLファイルの形式を扱うことが多くなったことをきっかけに、
ゼロからXMLを勉強しようと思ったので、メモとして残します。
今回の学習内容
今回勉強した内容です。
XMLの関連技術
XMLの関連技術は主に以下のようなものがある。
XSLT(XML Stylehseet Language Transform)
XML文書をXMLを含めたほかの文書に変換するためのルールを記述するための言語。
主にXML→HTMLへの変換に利用される。変換ルールを記述した文書は「スタイルシート」と呼ばれる。
また、XSLT文書に則ってCML文書を変換するプログラムを「XSLTプロセッサ」と呼ぶ。
DOM(Document Object Model)・SAX(Simple API for XML)
XML文書の解釈や検証を行うプログラムがXML文書をどのように利用するのか、その処理手順を標準化したもの。
DOMでは、XML文書を一つの木構造として処理するのに対し、SAXではXML文書を先頭から順番に読み込んで、要素が現れるたびに対応する処理手順を呼び出す。
DOMは文書の構造を自由にたどれるため、複雑な処理に適している。
しかし、すべてのXML文書をメモリに読み込んで処理するため、大きなXML文書の扱いには注意が必要。
それに対してSAXは、処理のたびに先頭からXML文書を読み込むため時間はかかるが巨大なXML文書を扱ってもメモリに負担がかからないメリットがある。
XPath
XML文書の、要素や属性などの場所(アドレス)を指定するための言語。
HTML文書のように、アンカーが埋めこまれていなくても、文書中の任意の位置をさし示すことができる。
XLink(XML Linkng Language)・XPointer(XML Pointer Language)
XML文書にHTMLのような、ハイパーリンク機能を持たせるための書式。
Xlinkは、オブジェクト間のリンクを記述し、XPointerはオブジェクトの参照方法を規定する。XLinkは文書中のどの要素もリンクすることができ、一つのリンクに3つ以上のリンク先を定義することもできる。
XHTML(Extensible HyperText Markup Language)
HTMLをXMLで定義しなおしたマークアップ言語。
HTMLはWebブラウザメーカー主導で、独自の拡張が続いてきたためHTMLの使用自体に限界が見えてきていた。
そこで従来のブラウザでも問題なく表示ができ、XMLに準拠した文書を作成する言語仕様としてXHTMLが作成された。
XHTMLはHTMLではなくXML文書なので終了タグのない文書は許されない。
また、タグ名がすべて小文字に統一されていたり、XMLベースのMathML
MathML(Mathematics Markup Language)
XMLを利用した数式を記述するための言語。
1998年にW3C韓国となった、MathMLは2種類のタグを使い、数式の表記と数式の意味を表現する。
SVG(Scalable Vector Graphics)
Web向けに開発された画像データフォーマット。
SVGでは直線や曲線といったベクトル譲歩王で画像を表現するため、ファイルサイズが小さく、拡大縮小してもデータのクオリティが変化しないといった特徴がある。
VoiceXML
XMLによる、音声対応型Web記述言語。
コールセンターの音声案内やカーナビなどへの応用が期待されている。
今まではこれらの技術はベンダーごとに別々に開発されていたが、
VoiceCMLに統合されることで、既存データの再利用やほかのシステムとの相互運用が可能となる。
SOAP(Simple Object Access Protocol)
サーバなどによる、分散オブジェクトの構築に使用されるプロトコル。
SOAPは一般的に下位プロトコルとしてHTTPが用いられるため、サーバに余分なポートを開く必要がないという利点がある。
おわりに
続きはまた今度書きます。
余談ですが、「自分の調べたことをまとめて、未来の自分や他人に伝わるように咀嚼する」ってすごいパワー使うなと思いました。