[trpg-xml:00040] Re: シナリオ DTD の紹介と

Goto (trpg-xml ML) HTML Log homepage


Index: [Article Count Order] [Thread]

Date: Sun, 08 Aug 1999 14:12:17 +0900
From: 梶田晃一 <kajita@trpg.net>
Subject: [trpg-xml:00040] Re: シナリオ DTD の紹介と
To: trpg-xml@trpg.net
Message-Id: <199908080510.OAA18307@pk.highway.ne.jp>
In-Reply-To: Your message of "Mon, 2 Aug 1999 10:29:10 +0900" 	<007b01bedc86$6c9b5480$411ea8c0@toyotatsi.co.jp>
References: <007b01bedc86$6c9b5480$411ea8c0@toyotatsi.co.jp>
X-Mail-Count: 00040


 夏休みを使って旅行をしている間に、皆さんアリガトウございます。
 レスを書いていきます。

 XSLの話 > 花本さん

花本>  構造が全く同じで各要素や属性の名前だけが違う複数の DTD があった場合に、要
花本> 素名を 1 対 1 で変換する XSL を用意しておく事で、どの DTD にしたがって書かれ
花本> た XML ファイルも同等に扱う事ができるという事です。であれば、使用する言語は
花本> 日本語であろうが英語であろうがドワーフ語であろうが気にする必要はあまり無いと
花本> 思います。

 了解しました。〈多分ですが〉
 個人的解釈を書いてみますと・・・。

 ・XSL とは、XML に対するスタイル指定言語(画面に表示する為のスタイルを指定する)
 ・DTDの構造さえ同じであれば、要素名とかにかかわらず XSL によって同じスタイルで
   (同じ結果ツリーで)表示する事が出来る

 てなところですか。
 ブラウザで表示する際に XSL を利用する事で、要素名等を気にせずに XML 文章を
 作成する事が出来ると言う事ですね。

 XSL(XMLのアプリケーション使用例の一つ)が要素名とかによって理解をするのではなく
 ソースツリーの構造で理解をすると言うことですね。
 (っていうと、今後アプリケーションを作る時にもXSLの理解の仕方を真似した方が
   良いって事でしょう)

 後、XSLの解説紹介をアリガトウございます。
 旅行から帰ってきたのでちょこちょこと見ていきたいと思います。


 シナリオ情報部の話 > 小林さん

小林> <scenario_infomation system ="対象システム" genre = "対象ジャンル">

 下の要素と属性の分け方の部位の具体だとおもいます。

 下にも書きますが、現時点では

 「アプリケーションだけが理解する部位以外は要素として情報を持つ」

 としたいと思いますのでここも情報(systemとgenre)を要素に出したいと思います。

小林> >                       <locator herf = "リンク先" />
小林> 
小林>     著者の名前(現状では リンク先扱い?)も EMPTYタグの中に入れるよりはタ
小林> グで挟む形式のほうが良いような気がします。

 解説:なぜリンクなのか

 現時点での考えでは、author要素(作成者情報)の作成者名(上で示したlocator)は
 リンク先(作成者の character 要素)で示しています。ですのでリンクって事に
 しています。

 で、なぜ EMPTY であるとかと言うと

   ・HTMLのリンク情報先のロケーション情報が属性で指定されている
   ・(無意識的に)好き嫌いで、要素の情報として書くことを拒んでいる(笑)

 ってことです。
 
 属性情報がアプリケーションが理解する情報と言う事にも(ある程度は)合致している
 気がしますし、どうでしょうか?


小林> >                 <version date ="日時" number ="ヴァージョン情報" />

 これも、下の要素と属性の話のように要素情報にしておきます。


小林> >                 <exhibit_place uri ="公開場所" />
小林>     えーと、例えばWebPage で公開しているとして、そのページの名前とかを
小林> 書く必要がありませんか? というわけで、これも URI (href?) は属性で良いと
小林> 思うのですが、公開場所の名称などを明示できるように、EMPTYタグでは
小林> *なくす*ほうが良いと思います。

 アリガトウございます。確かに場所の名称を示した方が良いですね。
 その様に変更しておきます。


小林>    <member>
小林>        <min></min>
小林>        <max></min>
小林>        <fit></fit>
小林>    </member>

 これも下の要素と属性の話のように上記の小林さんの仰る様に変更します。



小林> >         <hints name = "ヒントの名称">
小林> >                 <locator herf = "リンク先" />
小林> >         </hints>
小林> 
小林>     えーと、こうすると、ここ以外の hints でも locator を使えるように
小林> 定義するしか無いと思うのですが、構わないのでしょうか?
小林> あと、hints の名称、locator の指す先の名称も、 属性としてしまうよりも
小林> タグで囲むほうが良いのではないでしょうか?

 名称に関しては、今まで同様要素として出しておきます。
 locatorのほうは author要素 と同様にチト待ってください。

 また、hints要素(ヒントの情報を示す)は現時点では以下のように考えています。


<!-- hints は ヒントを示す                              -->
<!ELEMENT hints ((p)*,(locator)*) >

<!-- 属性 xml::link は リンクの種別を示す。             -->
<!ATTLIST hints xml::link CDATA #FIXED "extended">

<!-- 属性 name は 名前を示す。                          -->
<!ATTLIST hints name ID #REQUIRED >

 例として
                    ex.1 :
                    <hints name = "雨が降った場合の情報の与え方">
                           <p>
                                  この情報を渡す時は紙等(特定のPLだけに伝わる方法)を使用してください。
                           </p>
                    </hints>
                    
                    ex.2 :
                    <hints name = "ヒントの一覧">
                           <locator herf = "#雨が降った場合の情報の与え方" />
                           <locator herf = "#画像を表示する時の注意点" />
                           <locator herf = "#ペーパーフィギアの取り扱いについて" />
                    </hints>
                    
                    ex.3 :
                    <hints name = "画像を表示する時の注意点">
                           <p>
                                  画像を見せる時の注意点をそれぞれの場合に対して示しておきます。
                           </p>
                           <locator herf = "#風景画像を表示する時の注意点" />
                           <locator herf = "#フレッドの画像1を表示する時の注意点" />
                           <locator herf = "#フレッドの画像2を表示する時の注意点" />
                           <locator herf = "#アンダーソンの画像を表示する時の注意点" />
                    </hints>
                    

 てなことを考えています。
 使い方としては、

     ・ヒントを書く
     ・ヒントの一覧を書く
     ・ヒントとそれに関係するヒントの一覧を書く

 見たいな感じです。


 要素と属性の話 > 花本さん、小林さん

花本>  XML を処理するアプリケーションから見た場合には、属性は「アプリケーションが
花本> データを処理するために必要とする(かもしれない)情報」であり、要素内容は「アプ
花本> リケーションが処理の対象とするデータそのもの」であるといえます。

花本>  CSS2 によるスタイル指定で表示する場合を考慮すると、ユーザーに対してはっき
花本> りと呈示したい情報は全て要素内容とするべきです。属性として定義されている情報
花本> はユーザーが見る事が出来るとは限りません。

 理解の悪い生徒でスイマセン。(笑)

 花本さんのCSS2の話には参りました。これでは表示したい情報は全て
 要素内容とするしかないですね。
 ですので、

 ・アプリケーションだけが理解する(処理の対象とする)情報は属性がもつ
 ・アプリケーションが処理の対象としない情報は要素が持つ

 との様に変更します。ただ、

 ・アプリケーションも使用し、使用者も情報を理解しようとする情報

 はどの様にしたら良いのでしょうか?
 具体的には以下のものです。(単純な話リンク関連です)

 ・author要素のherf属性
 ・hints要素のlocator要素のherf属性
 ・exhibit_place要素のuri属性

 上の二つは単純なリンク情報でありますが、htmlでは属性として扱っていた事からも
 属性として考えています。

 最後のはタダのリンクだけでなくそれ自体が情報である事が問題だと
 思います。

 これらはどの様にしたら良いのでしょうか?


小林>     あと、ソースを見たときの人間にとっての可読性 (いや、本当はこれは
小林> 考えちゃいけないんだけど...) とか、書き易さ (XMLエディタを使え!という話も
小林> 有りますが)なんかを考えると、また混乱してきますしね。

 うーん。これらはどの様にすれば良いのですかね。
 ちゃんと考えていかなきゃいけないはずですよね。


 それにしても好き嫌いじゃあ駄目っすね。(笑)


 では。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
梶田晃一(KZ → KAH)
  Email:kajita@trpg.net                              TRPG用
         kajita@pk.highway.ne.jp                      個人用
                   
    WWW:http://www.trpg.net/user/a-GoGo/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    

Goto (trpg-xml ML) HTML Log homepage