Web サービスにおいて、システム間のデータのやり取りには、標準規格と
して XML を使用する。XML データを実際にやり取りするためのプロトコル
には、SOAP を使用する。SOAP は XML 文書をネットワーク経由で送受信す
るためのメッセージ仕様を定めた標準プロトコルである。
従来はプロトコルが統一されていなかったため、ファイアウォールを越え
てのインターネット接続は難しいものだった。SOAP は伝送プロトコルとし
て、HTTP, FTP, SMTP などの標準プロトコルをベースとするため、ファイ
アウォール越しの接続も容易になった。
- 手紙の本文→XML
- 封筒の形式→SOAP
- 配達の手段→HTTP, FTP, SMTP
XML 文書内に直接記述する方法を「内部サブセット」、別ファイルに記述
する方法を「外部サブセット」と呼ぶ。外部 DTD は開発者が用意したもの
も、標準の DTD も使用することができる。前者の識別子として SYSTEM、
後者の識別子として PUBLIC が指定される。
両方使用することもできる。XML パーサは最初に内部、次に外部サブセッ
トを読み込む。もし同じ名前の要素が定義されていた場合は、内部が優先
されて使用される。
DTD では、以下の 4 つの定義を行うことができる。
- 要素型宣言(ELEMENT)
- 属性リスト宣言(ATTLIST)
- エンティティ宣言(ENTITY)
- 記法宣言(NOATION)
DTD のように XML 文書内にどのような要素名が含まれるのか、要素の出現
順序や属性などを事前に定義したものを「スキーマ」という。スキーマの
規格には「DTD」と「XML Schema」がある。