トップページtech
40コメント9KB

xml相談室

■ このスレッドは過去ログ倉庫に格納されています
0001htmlNGNG
スレが無いようなので。あったらごめんね。
0002デフォルトの名無しさんNGNG
 技術板で何か話題にする事でもあるの?あんた>1
0003デフォルトの名無しさんNGNG
>>2
1じゃないけど。
あると思います。
0004デフォルトの名無しさんNGNG
Attributesにするか、TextNodeにするか迷うときがある。
0005デフォルトの名無しさんNGNG
そだね。だいたいNodeにしちゃうけど
0006デフォルトの名無しさんNGNG
たとえば
取引先コードと取引先名はどれがベストかな?

(1)
<取引先 取引先コード = xxx >
取引先名
</取引先>

(2)
<取引先>
<取引先コード> xxx </取引先コード>
<取引先名> xxx </取引先名>
</取引先>

(3)
<取引先 取引先コード = xxx 取引先名 = xxxx/>
0007デフォルトの名無しさんNGNG
(3)が速そう
0008デフォルトの名無しさんNGNG
俺も(3)に一票。
0009名無しさんi486NGNG
じゃ(2)に1票
取引先コード、取引先名
がしっかりと分別してまとまってるし。
個人的な見た目の好みだけだけど(藁
0010デフォルトの名無しさんNGNG
(3)だと取引先の下に新しいNodeを追加できないよ。
それにタグが長過ぎると見た目きれいじゃないし。よって(2)に一票。
0011無党派さんNGNG
確かにノードが追加できないね。例えば将来の拡張(取引先名に外字等)のた
めには、(2)が良い。
0012デフォルトの名無しさんNGNG
(2)に決まってる。
あと、(1)(3)はXMLの文法として間違ってるよ。
0013デフォルトの名無しさんNGNG
どこが??>>12
0014デフォルトの名無しさんNGNG
>>12
属性値が引用符で括られてないということか?
0015デフォルトの名無しさんNGNG
だとしたらちょっとくだらん
001614NGNG
>>15
まったくだ。
xxxなんだから、別にいいじゃんと思う。
0017無党派さんNGNG
逆に聞きたいんだけど、どのようなケースで(3)を使う必然性がありますか?
僕もよくわかんないんだけど。
0018デフォルトの名無しさんNGNG
>>17
結局試行錯誤して決めるしかないとは思うが、
・ネストする必要性が無い
・必ず文字列
なデータは属性にしてもいいような気がする。
例えば俺が属性化しているのは日付(作成日・更新日。値はISO形式)だけ。
0019デフォルトの名無しさんNGNG
絶対(2)だろ。
(1)や(3)がいいとか言ってるやつはもう少しXMLを勉強せえや。
0020デフォルトの名無しさんNGNG
(2)だと、DOMなり、XPATHで取得するのが面倒じゃない?
0021名無しさん@お腹いっぱい。NGNG
場合によるだろうけど
(1)もしくは
<取引先 取引先コード="xxx">
<取引先名>xxx</取引先名>
</取引先>
かなぁ.
0022デフォルトの名無しさんNGNG
>>19
実際つかってみると (2)は不便なんだけど。
勉強、勉強もいいけど、実践もね&hearts;
0023デフォルトの名無しさんNGNG
>22
まあでもうちに送られてくるXMLは(2)のタイプが多いですね。
扱いが統一できるという利点もありそうです。
0024デフォルトの名無しさん NGNG
Perlのパーサーが無い・・。Windowsのはあるけど、Linixのが
見つからない。どこにあるのか教えてよ・・。
0025デフォルトの名無しさんNGNG
>>24
Active PerlのExpatじゃダメ?
0026無党派さんNGNG
SEやってます。
ある業界団体で作成した特定分やのXMLスキーマがあるのですが、これがもうダメダメ
です。ダサダサですヤッツケ仕事で作られたのが三重三重です。これに従ってゆくと
、将来システムが破綻することが容易に想像できます。自社で全部作り直してタグも全
部定義し直して、独自のスキーマを作ってしまって良いものでしょうか?コンバータ
を後で作れば許されますか?
0027デフォルトの名無しさんNGNG
>>26
あなたの立場にもよるから、よくわかんないけどね。
元フォーマットが変わったとき、コンバータの変更分の
お金が出ないとか、ならない?
0028デフォルトの名無しさんNGNG
>>26-27

>元フォーマットが変わったとき、コンバータの変更分の
>お金が出ないとか、ならない?

独自スキーマにしといた方が、元フォーマット変更の影響は受けにくいんじゃないか?
接続(変換)部分を独立させとけばいいんだし。
0029デフォルトの名無しさんNGNG
遅レスですが>>18さんの意見がいいですね。
ただ私の場合は、属性を取っ払ってもデータとしての意味が残るように
しています。>>6の場合ですと、取引先コードがデータベース上の用途に
しか使わないんであれば、>>21、一般的なコードで、伝票に記入する
必要があるなどの場合には>>6(2)ですね。
0030デフォルトの名無しさんNGNG
JDOMのSAXBuilderでも、もちろんxercesのXMLParser使えるんですよね?
0031デフォルトの名無しさんNGNG
>>30
SAXBuilder builder = new SAXBuilder ("org.apache.xerces.parsers.SAXParser");
ってやればいいみたいですね。
0032デフォルトの名無しさんNGNG
Delphiで使えるXMLParserはありませんでしょうか?
0033名無しさんダーバードNGNG
"xerces"ってなんて発音するんですか? カーセス?ザーセス?
0034デフォルトの名無しさんNGNG
>>32
ttp://www.philo.de/xml/
ttp://www.delphihome.com/XML/

こっちは商用。
ttp://www.dev-soft.com/ipwdlp.htm

IE5が入っていればMSXML.DLLをOLEオートメーションで
利用も可。
0035デフォルトの名無しさんNGNG
>>33
ザーセスっぽい。俺はザーセスで逝く。
xalanはザランだろうにゃ。

003634NGNG
そうそう、一番目のはDelマガVol.14で紹介されてます。
003734NGNG
>>32
一番下のは違った。スマン。
0038デフォルトの名無しさんNGNG
>Xerces
この前の Java Worldに読み方があった
ザーシスだったっけ?
しらべとく
0039名無しさんダーバードNGNG
SOAPを勉強してるけど、勉強以上のことって、なかなか出来ないね。
0040デフォルトの名無しさんNGNG
>34
どうもありがとうございます。
早速試してみます。
■ このスレッドは過去ログ倉庫に格納されています