3 ー 1 1 文字参照 文字コードを使って文字をあらわす方法があります。これを「文字参照」といい ます。文字参照を使えば、 XML 文書内で特殊な意味を持つ記号や文字を容易に記 述することができます。 0 文字参照 、 & などの文字だけでなく、任意の文字に対してもコード番号 を指示して文字を表現できる方法があります。これが文字参照という方法で す。ただし、 XML では文字参照に使う文字コード体系は、ひとつだけで、 ISO/IEC 10646 という、世界中の文字を表現するために ISO ( 国際標準化機構 ) で作られた文字コード体系です。この文字コード体系は Unicode と同じですの で、コード番号は Unicode と同じと考えて構いません。 0 文字参照の書き方 文字参照は、次のように記述します。 & # 12. 進コードー & # 16. 進コード : たとえば 16 進の文字コード番号を使うと、次のようになります。 マ 1 6 進コードを文字参照に使った場合の XML 」 く ? n1 version= ” 1 . ” encoding= "Shift—J 工 S ” ? > く記事 > く題名 > < 見出し >< 経済 >:B N P 、バリバを買収く / 見出し > く / 題名 > 70
DTD の書き方入門 / は & g です。参照が & で始まり、一で終わることに注意してください。 次の例で gh はエンティティ名、「技術評論社」はエンティティで、参照名 Chapter ・ XML 文書内で照指定 103 工ンティティ名をつけ、 %ADDRESS; の参照名で複数箇所から参照しています。 次の例では、 (z 工 P,COUNTRY,C 工 (Y) という内容モデルに ADDRESS という 工ンティティ名ー 定します。 パラメータ工ンティティを参照するときは、次のようにエンティティ名を指 く ! ENT ェ TY 宅工ンティティ名“内容モテルなど以 'D 宣言に出てくる文字列 " > します。 DTD では特に有効な機能です。以下のように、 パラメータ工ンティティを宣言 イティ宣言を変更するだけですべての参照個所が一括変更できます。複雑な を短いエンティティ名で置き換えておくと、 DTD を変更する場合にも、エンテ 同じパターンの内容モデルカ舸度も出てくる場合、内容モデルの長い記述内容 で、おもに一箇所で定義した内容を複数の個所で引用する場合に使われます。 バラメータ工ンティティは、 DTD の中だけで参照できる特別なエンティティ ・ DTD 内での定義内容の置き換え く ! ENT 工 TY gh 。技術評論社。 > ・ DTD でのエンティティ宣言 <company> 技評は技術評論社の略称ですく /company> ・ノ←サーによる置換後唳素内容 <company> 技評は &gh; の略称です </company>
0 スタイルシートの参照と スタイルシート指定 ここからは、現時点で XSL を実装している唯一のブラウサであるマイクロソフト 社の旧 5. O を中心に XSL の機能とそ似吏い方を見ていきましよう。まず、スタイル シートの利用の際に必須のスタイルシートの参照方法を解説します。 ・ XML 文書からのスタイルシ - ト参照 &ml-stylesheet XML 文書の表示には XSL が必要なので、どこかに XML と XSL の対応関係を 指定しなければなりません。 XML 文書中に利用する XSL を指定する方法と、 c + + や Java 、あるは VisualBasic などのプログラムで動的に対応させる方法とがあ ります。以下に、 XML 文書中で XSL の参照を指定する方法を示します。 <?xnü-stylesheet type="text/xsl" href = “スタイノレシートのありカい ? > 最後の属性 href は、 XSL スタイルシートの所在場所を URI で示すもので す。 XSL スタイルシートをサーバーや共通ファイル上に置き、同一の表示様式 や処理を複数のアプリケーションで共有することもできます。 XML 文書では、 <?xrnl—stylesheet type=ntext/xs10 href="simplel . xsl"?> く ? 刈 1 version=" 1 . “ encoding= "Shift—Jis “ ? > XML 宣言の次に参照するスタイルシートの宣言を行います。 <Order> <Purchaser> 134 <Phone>03-32XX-XXXX く /Phone> く Address> 新宿区く /Address> <Company> 太陽製作所 </Company> 参照するスタイルシートの
ーまるごと一 ー図解 3-8. 属性 属性と属性値 ひとつのタグ内に同し属性名を何度も使ってはいけない 3-9. 空要素 空要素 3-10. 工ンティティ参照 要素内でくや > を文字として使うと、エラーか起きる 工ンティティ参照 3-11. 文字参照 文字参照 文字参照の書き方 3-12. コメント コメントの記述方法 コメントのいろいろな使い方 3-13. XML 文書を作ってみよう ~ その 1 要素の抜き出しと構造化 サンカレ記事 要素の抜き出し ツリー図の作成 3-14. XML 文書を作ってみよう ~ その 2 XML 化と表示確認 XML 化作業 旧 5.0 での確認 URI と URL コラム ・ 64 最新 X -J がわかる ・ 66 ・ 68 ・ 70 ・ 72 ・・・ 74 ・・ 76 4 章 DTD の書き方入門 4-1. XML で情報を階層化する 情報をプロック分割し、関連情報ごとに分類 XML 文書ではタグで関連情報をグループ化 データをあらわすタグとグループ化のためのタグ 4-2. DTD は XML 文書の設計図である DTD とは DTD で宣言するもの DTD か必要なわけ 4-3. 内部 DTD と外部 DTD 内部 DTD 外部 DTD 外部 DTD を使用するかとうかの指定 4-4. 簡単な DTD 4-5. 文書型宣 DTD とルート要素の指定 79 ・ 80 ・・ 82 ・・ 84 ・・ 86 ・・ 87
DTD の書き方入門 Chapter ・属性を宣言する ~ ATTL ェ ST 言中に詳細な属性情報を記述します。属性の宣言には ATTL 工 ST 宣言を使い、 属性の記述は、 DTD 中で、属性設定の対象とする要素名を指定し、同じ宣 の次の行に追加されたく !ATTL 工 ST で始まる行カ嘱性の定義です。 したがって、発注内容要素に対する DTD は、次のようになります。発注要素 く !ATTL ェ ST 要素名属性名データ型省略指定 > 以下のように指定します。 く !ATTL 工 ST 発ラ主緊急 . 度 CDATA # 工 MPL 工 ED > く ! ELEMENT 発注 ( 発注内容 ) + > く ! DOCTYPE 発注書 [ 以下のものが指定できます。 0 属性のデータ型 要素名属性名データ型 属性のデータ型は、属性値のデータ型を指定するものです。ァータ型には、 省略指定 マ属性のデータ型 ( 一部省略 ) データ型の指定 CDATA 1 TOKEN 、 NMTOKENS ENT 工 TY 、 ENT 工 T 工 ES 属性の値として許されるデータ 文字データ 数値 (NMTOKENS は、複数の数値 ) 97 る。工ンティティについては、 P. 102 参照 TY に亘言された参照名を経て指定内容が参照され ENT 工 TY で宣言された参照名。実際の参照は ENT 工ー
く ! ENT 工 TY く ! ELEVENT く ! ELEMENT < ! ELEVENT く ! ELEMENT く ! ELEVIENT 工ンティティを宣ー 宅 ADDRESS Z 工 P, COUNTRY, C 工 TY Ⅱ > URCHASE ′工 T 4 + ′ SH PMENT ′ SELLER) > PURCH4SEX ( ( %ADDRESS ー ) + , —NAPE, PHONE + , FAX + , E—MA 工 L? ) > 工 T 齢 1 (NUMBER ′ PR 工 CE, CO SH 工 PB•IFNT ( (%ADDRESS;) + , ONE + , FAX + ) > SELLE\ ( s ー E , 工 D) > ①参照 ②置き換え ・外部ファイルを参照して XML 文書に読み込む XML 文書は、単一のファイル内にすべての XML 文書を持っこともできます が、部分データを外部に置いて UR1 で引用することもできます。複数の XML 文書間で共通に用いる部分データを外に出し、各ドキュメントは共通部分を参 照することによって共有するのが一 - 一般的な使い方です。もとの XML 文書から 参照する外部ファイルを外部工ンティティと呼び、次のように指定します。 <!ENT 工 TY 工ンティティ名 SYSTEM “参照するファイルのありか“ > 工ンティティを参照するときは、次のようにエンティティ名を指定します。 & 工ンティティ名ー マ外部ファイルを XML 文書に読み込む XML データ部分データ ファイル 複数の文書で 共有するデータは 外部に置いて、 要に応じて読み込む ファイル 104
工ンティティ参照 XML では、タクで使用しているく、 > 、 / 、などの記号をデータそのものとして記 述するときに、エンティティ参照という方法をとります。通常は DTD で定義して使 いますが、ここでは、定義なしに利用できるものを紹介します。 0 要素内でくや > を文字として使うと、エラーカきる 次の XML をパーサーで処理したり IE5.0 で見ると、エラーになります。 このエラーは、 IE が見出し要素内にあるく、 > を開始タグ、あるいは終了タ 記事 > く / 題名 > く見出し > く経済 > BNP 、バリバを買収く / 見出し > く題名 > 己事 > <?XInI version= “ 1 . の“ encoding= “ Shift—J 工 S ” ? > 68 これらの文字を文字そのものとして認識させるには、次のように記述します。 ・エンティティ参照 く 1 疋 der > く経冫斉ン日 N P 、パリバを買収く / h 已己 r > 了タグ・ he ・か始タグ・済・と一致していません . ライン 4 、位者 27 ください。匣新 ] ボタンをクリックするか、または後でやり直してください。 XSL スタイルシートを使用した XML 入力は表示できません。工ラーを訂正して XML べージを表示できません マエンティティ参照を使わなかった場合のエラー グと認識してしまったために起こったものです。
XML 文書窈冓成と文法概要 "Shift-J 工 S" ? > Chapter く / 記事 > 4 題名 > く見出し > & に経済 > BNP 、パリバを買収 4 見出し > く題名 > く記事 > く ? version= “ 1 . “ encoding= マ DTD なしで使用できるエンティティ できます。 次の 5 つのエンティティは DTD なし、あるいはエンティティの宣言なしで使用 工ンティティ名は、通常 DTD 内のエンティティ宣言で定義します。しかし、 & 工ンティティ名 : います。工ンティティ参照は次のように記述します。 めに、その文字を置き換える文字列 (lt) を指定し、実際の文字を参照して ここでは XML 文書で特殊な意味を持つ文字 ( く ) を文字そのものとして扱うた る情報の記億単位で、 XML で取り扱うデータの固まりやファイルのことです。 のことをエンティティ参照といいます。工ンティティとは「実体」とも訳され このように書くと、 IE5.0 ではちゃんとく、 > が表示されます。 & 1 、 > 表現したい文字 工ンティティ名 gt apos quot amp マエンティティ参照がうまくいった く ? xrn い ve 巧 ion = " 1. encQding="Shift-JlSll ? > ーく記事 ) ーく題名 > く見出し : : 。経済 BNP 、バリバを買収く / 見出し > く楚名 > く / 記事 > く > カ症常に表示された 69
4 ー 10 工ンティティの 利用 102 & 工ンティティ名ー 工ンティティを参照するときは、次のようにエンティティ名を指定します。 く ! ENT ェ TY 工ンティティ名“置き換える文字列 " > です。一般工ンティティは、以下のように指定します。 ンティティといいます。長い文字列に短いエンティティ名をつけて扱うと便利 字列を定義してその文字列に名前をつける役割を果たす工ンティティを一般工 ことで、もとの文字列に展開することができます。このように、ユーザーが文 ( 短縮名 ) を宣言しておき、 XML 文書から対応するエンティティ名を参照する 長い文字列などを利用するときは、 DTD 中でその文字列とエンティティ名 ・文字列の置き換え れていて、この名前をもとに、実際のエンティティを参照します。 のファイルを指します。工ンティティには、名前 ( 工ンティティ名 ) がつけら XML では直接扱えないようなグラフィックデータやマルチメディアデータなど 納されている情報の記憶単位のことです。具体的には、ファイルや文字列、 工ンティティ (entity) は「実体」とも訳されますが、コンピュータ上に格 ・エンティティとは を別のプログラムから実行したりするときに、エンティティという概念を用います。 り、外部ファイルを XML 文書から参照したり、 XML では直接扱えないようなデータ XML では、文書中で繰り返しあらわれる文字列を置換文字列に置き換えて使った
XML の応用展開 ~ 文書管理システム Chapter ①教育シナリオは XML で記述されていて、 Web サーバーにいったんアッ プロードされる ② Web サーバーは、そのファイル名をアプリケーションサーバーに通知する のようなことからも、 XML は、コンピュータにとっても取り扱いやすい形式だ ンサーバーを通過するときに、参照できない部分が自動的に削除されます。 部分とに分かれています。受講者がシステムを利用する場合、アプリケーショ 教育シナリオは、受講者が自由に参照できる部分と、講師のみが参照できる 書として XDS サーバーに登録する ③アプリケーションサーバーはファイル名からその内容を取得し、 XML 文 ということがわかります。 マ教育シナリオ登録の流れ 教育シナリオ登録の流れ 教育 シナリオ We b サーバー ①教育シナリオを Web サーバーに登録 工デイタ シナリオ 教育 ②登録されたファイ ル名をアプリケーシ ョンサーバーに通知 み、 XML 文書とし 登録内容を読み込 ③ファイル名から て登録 アプリケーション サーバー XDS サーバー (Java) 241 各種教材