XML を利用した技術

Web サービスにおいて、システム間のデータのやり取りには、標準規格と して XML を使用する。XML データを実際にやり取りするためのプロトコル には、SOAP を使用する。SOAP は XML 文書をネットワーク経由で送受信す るためのメッセージ仕様を定めた標準プロトコルである。 従来はプロトコルが統一されていなかったため、ファイアウォールを越え てのインターネット接続は難しいものだった。SOAP は伝送プロトコルとし て、HTTP, FTP, SMTP などの標準プロトコルをベースとするため、ファイ アウォール越しの接続も容易になった。 手紙の本文→XML 封筒の形式→SOAP 配達の手段→HTTP, FTP, SMTP

2008-06-29 (Sun) · masutaka

データ操作するための API

DOM Document Objects Model の略。XML 文書を解析し、木構造でメモリに展 開する。展開されたデータのことを DOM ツリーと呼ぶ。 SAX Simples API for XML の略。その都度解析するので、DOM に比べて省メ モリ。ただし、プログラムが複雑になってしまうことがある。

2008-06-29 (Sun) · masutaka

名前空間の定義方法

各要素に接頭辞となる任意の文字列を加えることにより、名前空間を定義 できる。各要素に加える都合上、DTD とは対応していない。 以下の例では、支店Aの金額は1ヶ月、支店Bの金額は1週間を示すため、 名前空間を分けている。 構文 <要素 xmlns:接頭辞="名前空間を示すURI"> 例 <売上 xmlns:支店A="http://www.example.com/a" xmlns:支店B="http://www.example.com/b"> <支店A:金額>500000</支店A:金額> <支店B:金額>20000</支店B:金額> </売上>

2008-06-29 (Sun) · masutaka

エンティティ宣言

DTD <!ENTITY xml "XML(eXtensible Markup Language)"> XML インスタンス <詳細>&xml;とは拡張可能なマークアップ言語のことです</詳細> 結果 <詳細>XML(eXtensible Markup Language)とは拡張可能なマークアップ言語のことです</詳細>

2008-06-29 (Sun) · masutaka

属性リスト宣言

DTD <!ATTLIST 部門 場所 CDATA "東京"> XML インスタンス <部門 場所="神奈川">営業部</部門>

2008-06-29 (Sun) · masutaka

要素型宣言

DTD <!ELEMENT 氏名 (姓,名)> XML インスタンス <氏名> <姓>山田</姓> <名>太郎</名> </氏名>

2008-06-29 (Sun) · masutaka

DTD

XML 文書内に直接記述する方法を「内部サブセット」、別ファイルに記述 する方法を「外部サブセット」と呼ぶ。外部 DTD は開発者が用意したもの も、標準の DTD も使用することができる。前者の識別子として SYSTEM、 後者の識別子として PUBLIC が指定される。 両方使用することもできる。XML パーサは最初に内部、次に外部サブセッ トを読み込む。もし同じ名前の要素が定義されていた場合は、内部が優先 されて使用される。 DTD では、以下の 4 つの定義を行うことができる。 要素型宣言(ELEMENT) 属性リスト宣言(ATTLIST) エンティティ宣言(ENTITY) 記法宣言(NOATION) DTD のように XML 文書内にどのような要素名が含まれるのか、要素の出現 順序や属性などを事前に定義したものを「スキーマ」という。スキーマの 規格には「DTD」と「XML Schema」がある。

2008-06-29 (Sun) · masutaka

XML 文書の記述の種類

整形式 (well-formed) XML 文書 「開始タグと終了タグの対応が正しく取られている」「要素の親子関係も正 しく保たれている」を満たすもの。従って、全ての XML 文書は整形式 XML 文書でなければならない。 検証済み (valid) XML 文書 上記に加え、要素や属性が DTD の定義に従っているかどうかも検証した XML 文書のこと。検証済み XML 文書は「妥当な XML 文書」とも呼ばれる。

2008-06-29 (Sun) · masutaka

XML の構造

XML 宣言(省略可) バージョンや文字エンコーディングの宣言 DTD(省略可) 要素型、属性リスト、エンティティ、記法宣言 XML インスタンス(必須) 実際のタグ付き文書

2008-06-29 (Sun) · masutaka

XML の特徴

インターネットに対応した世界標準である。 構造化データをテキスト形式で記述できる。 テキストデータなので OS やプラットフォームに依存しない。 タグの作成が自由に出来る。 デザインデータは持たずに、スタイルシートとして分離している。

2008-06-29 (Sun) · masutaka