Goto (trpg-xml ML) HTML Log homepage
Date: Mon, 23 Aug 1999 23:05:13 +0900
From: 梶田晃一 <kajita@trpg.net>
Subject: [trpg-xml:00062] システム関連情報
To: trpg-xml@trpg.net (送る用)
Message-Id: <199908231402.XAA19646@pk.highway.ne.jp>
X-Mail-Count: 00062
こんばんは、梶田です。
システム関連情報に関してレス&なんかを書いてみます。
──────────────────────→
>花本さん
> 梶田さんの「最初は特定のシステムだけでも良いから」という発想は、C の様に各
> システムに特化して汎用性を失ってしまう事になりかねません。シナリオ DB などと
> しての利用を考えるのであれば、まずは仮想システム(抽象化したデータ)を想定して
> シナリオ DTD 全体の構成をはっきりとさせ、そこに各システム固有の情報をどう当
> てはめていくかを考えた方が Java 的でいいんじゃないかと思いますよ。
アリガトウございます。
考え方が定まらなければ何も始まりませんから、こういう指摘はとても嬉しいです。
(涙モノです)
って良く考えてみると、XML(要素の書き方)みたいな事でしか「システムの情報」を
捕らえていませんでした。実際にシステムの情報がどの様になっているのか、何を
XMLの要素として書くのがふさわしいのかってことや、XMLの構造はどの様に作った
方が拡張性が高く、より抽象化されているのかとかを考えていませんでした。
(さすが素人って自分のことを振り返っちゃいました)
小林さんやはたまた森田さんが提案している方向性の先に面白い回答があるってこと
ですか?(興味津々)それとも、別の所にあるのかなぁ?(混乱気味)
──────────────────────→
>小林さん
>> って花本さんがおっしゃる「抽象的なデータ**だけ**というのは・・・」のも
>> 共感できます。
>>
>> (ソードワールド用シナリオって銘打ったシナリオを書くことすら出来にくく
>> なりますからね)
>
> えーと、私としても「*だけ*」にしてしまうのは、結局のところ意味が無
> いと思っているんですが... ^^;
スイマセン。
メールをちゃんと理解できていなかったです。〈反省〉
では、もしかすると私と小林さんの意識の違いは抽象的なデータの比率って
事でしょうか?〈かなり胡散臭い書き方ですが〉
・出来るだけシステム依存のDTDで〈要素名等で明らか〉梶田
・出来るだけ抽象的なDTDで 小林さん
って所なんでしょうか?
あと、シナリオDTDの位置付けも違うんだと思いました。
〈下記参照〉
> えーと、私としては、可能なかぎりシナリオを書く人に任せても良いんでは
> ないかと思います。ただし、その結果DTDが氾濫しては意味が無いので、
> DTD定義の方向性は明確に示しておくと。で、誰かが特定システムのDTDを書いたら、
> それを採用させてもらうということで良いんじゃないかと思います。
> ま、それも「推奨」程度で良いかなとは思いますが。
これまた私としては逆に
・出来るだけ統一的なDTDを使用すべきだと思う。〈カスタマイズは可能だが)梶田
という思いです。
(良く考えると上の抽象化の事象と下の統一化の事象は、かなり繋がって
いるのでしょうかね。)
──────────────────────→
>森田さん
よろしくお願いします。
私は見てもらえば判るかもしれませんが、あんましXMLとかには強くないんで
間違っちゃう事を言ってしまうかもしれませんがご注意ください。
> <optional>
> <node>
> <kind>gift</kind>
> <item type="integer">
> <name>Strength</name>
> <value>10</value>
> </item>
> <item type="integer">
> <name>Intelligence</name>
> <value>10</value>
> </item>
> </node>
> <node>
> <kind>skill</kind>
> <item type="percentage">
> <name>Sport</name>
> <value>50%</value>
> </item>
> </node>
> <node>
> <kind>misc</kind>
> <item type="dice-roll">
> <name>Damage</name>
> <value>2D6+2</value>
> </item>
> </node>
> </optional>
これで示したい情報は、以下のような事だと読み取りました。
・gift(能力値?)は「Strength」と「Intelligence」がある
・能力値「Strength」の値は「10(integer)」
・能力値「Intelligence」の値は「10(integer)」
・skill(技能)は「Sport」がある
・技能「Sport」の値は「50%(percentage)」である
・misc(その他?)は「Damage」がある
・その他「Damage」の値は「2D6+2(dice-roll)」である
もし上記のような情報を伝えたいのであれば、十分良いものだと
思います。
一応、私も「私だったら・・・」を考えて見ました。
・花本さんの意見を聞く前([trpg-xml:00059]より前)← 特定の要素とかを明確に示したいつもり
<X_caracter>
<ability>
<Strength datatype = "integer" >10</Strength>
<Intelligence datatype = "integer" >10</Intelligence>
</ability>
<skill_list>
<skill datatype = "percentage" >
<name>Sport</name>
<value>50%</value>
</skill>
</skill_list>
<misc_list>
<misc datatype = "percentage" >
<name>Damage</name>
<value>2D6+2</value>
</misc>
</misc_list>
</X_caracter>
・花本さんの意見を聞く後([trpg-xml:00059]より後)← 出来る限り抽象化したいつもり
って示そうと思ったけど、森田さんや小林さんのと同じ事しか
考えれなかったので、やめときます。
今の所、提案(質問)としてあげたいのは
・特殊能力や職業、装備など一つの選択(オブジェクト)が多方面に"影響"するものを
どの様に示すのか?
ex. サイバーパンク2.0.2.0.
重織筋繊維:SDPを25に、ダメージ2倍、足なら跳躍距離1.5倍 HC:2 価格250
提案:datatype はcalueに付けた方が良いと思います。
<item id = "重織筋繊維">
<name>重織筋繊維</name>
<infomation>
<name>SDP</name>
<value datatype = "integer">25</value>
</infomation>
<infomation>
<name>Damage</name>
<value datatype = "multiply">2</value>
</infomation>
<infomation>
<name>跳躍距離</name>
<value datatype = "multiply">1.5</value>
</infomation>
<infomation>
<name>HC</name>
<value datatype = "integer">2</value>
</infomation>
<infomation>
<name>価格</name>
<value datatype = "integer">250</value>
</infomation>
</item>
この datatype に関しては、赤本「標準XML完全解説」に、興味深いことが
書かれています。(読み直していて見つけました)
7.6.2 属性の方としての記法
例えば、在る要素の文字データが日付を表現する"yyyy-mm-dd"と言う形式に
従っている事をアプリケーションに通知したい時、その要素の属性に記法名を
書くことが出来ます。
記芳名を各属性は、属性リスト宣言でNOTSTIONキーワードを使って定義します。
記法を表す属性定義の書き方
<!ATTLIST 要素名 属性名 NOTATION 記法名候補 デフォルト値 >
例
属性リスト宣言
<!ATTLIST time datatype NOTATION (UTF) #REQUIRED>
記法宣言
<!NOTATION UTF PUBLIC "ISO/IEC 8601//NOTATION Unicersal Time Format //EN" >
^^^^^^^ ここは "ENTITY”の間違いと思われる
XMLインスタンス
<date datatype ="UTF"></date>
~~~ ここは "time" の間違いと思われる
ってな感じで、どの用なデータが入るかをアプリケーションに伝える事が
出来るって言うものがあるそうです。詳しい事(公開識別子に何を指定するのか等)は
判りませんが、参考までに。
あと、森田さんに対して小林さん挙げたレスに間して
>「1 から 10 」のつもり... "," で区切るんでしたっけ?
たしか、
> " " だったかな?
だと思います。
> <name-cano>Strength</name-cano>
> <!- cano = canonical (綴りがあやしいが)のつもりです -->
> <value-cano>10</value-cano>
これは、「規範」を示している???
何を示しているのでしょうか?
・システムに依存しない
(と言うか、あらゆるシステムを公平な視点で見ようとした)値
なのかな???
──────────────────────→
最初(このMLに入ったばかりの頃)は、あっさり決まるかと思ってましたが、
ちゃんと考えないと駄目ですね。
ただ、上記の様で小林さんや、森田さんが示されている方法なら
キャラクターだけでなく、アイテムなどの数値で示せる部分は
同様の方法を使って示せるわけですね。
(本当に勉強になります)
それでは。
p.s. 油蝉が夜になっても鳴いてます。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
梶田晃一(KZ → KAH)
Email:kajita@trpg.net TRPG用
kajita@pk.highway.ne.jp 個人用
WWW:http://www.trpg.net/user/a-GoGo/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━