2012年09月プログラム115: <XML総合 part="3"/> (756)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
【魔法】リリカル☆Lisp【言語】 (212)
なぜポインタで引っかかる人が多いのか (796)
C++11が動的言語よりも開発効率が良くなってる… (222)
Visual Studio 2012 Part4 (348)
CLDC+MIDP+携帯電話用Javaスレッド part 9 (928)
Cygwin + MinGW + GCC 相談室 Part 6 (945)
<XML総合 part="3"/>
1 :2008/10/07 〜 最終レス :2012/10/20 XMLなんでもスレ。 前スレ: 【XML】xmlns, XSLT, RelaxNG, JAXP, etc.【総合】 http://pc11.2ch.net/test/read.cgi/tech/1133280488/ 前々スレ: 【必須?】XML技術【使ってる?】 http://pc8.2ch.net/test/read.cgi/tech/1090253584/
2 : 1乙
3 : スレタイに<>使えたのか
4 : なにこのスレタイ 好き
5 : <スレッド name="XML総合" part="3" /> の方が一般的じゃね?
6 : スレタイに入れるのは明らかに無駄だろw
7 : </XML総合>
8 : >>1000 でそれやったら美しいだろうな スレタイ空要素だけど
9 : 空要素w
10 : エレメントとノードってどう違うの?
11 : ノードは、ツリーとみなした場合の用語
12 : エレメントはxmlの用語。ノードはDOMの用語。 ruby厨でアンチxml厨はこういう基本も分かってないで批判するよな。 DOMの操作が複雑だとか用語が沢山あって分かりづらいとか、じゃあSAXでもStAXでも使えとry
13 : どっとねっとうとかだと両方あるんだけど
14 : >>10-13 ノードはXML文書の構成要素のこと。 ノードには、ドキュメント・テキスト・エレメント・アオリビュート・コメントなどの種類がある。
15 : ×アオリビュート ○アトリビュート
16 : XSDで、アトリビュートによってエレメントの内容を変えるってことできる? たとえば <person type="child"> <name>hogehoge</name> <age>20</age> </person> <person type="adult"> <name>hogehoge</name> <age>20</age> <income>300000</income> </person> みたいな。 personってのを変えないと無理?
17 : どうだろう。おれの拙い知識だと、出来ない気がするなあ。 <adult>と<child>が<person>を拡張する形式にするとか…
18 : >>17 ありがと
19 : 0x00 含む任意の文字列を XML に保存したい場合、どうすればいいんでしょうか? 他のコントロールコードは数値文字参照でいけたんですけど、これだけどうにも パーサーが受け付けてくれません。 http://www.w3.org/International/questions/qa-controls 確かに iilegal とされていますが、じゃぁどうすればいいのかがわかりませんでした。
20 : base64
21 : Binary XML
22 : そもそもそんなもん含めるのは想定されてない
23 : 時々出る質問だけど、PIでいいと思うよ。
24 : PIって使い道がよくわからん
25 : Cのpragmaみたいなもんだよ
26 : PIを直訳してみろ。そのまんまだ。
27 : >>20-23 ありがとうございます。 PI でいけそうな感じです。
28 : >>26 「R房」? こうですか?
29 : XMLやRDFあたりを勉強する必要が出てきたのですが,何かよい書はないですか?
30 : >>29 http://pc11.2ch.net/test/read.cgi/tech/1223368809/
31 : XMLを「勉強する」ってのがどういうことかっていうのは難題というか禅問答な気がする
32 : >>31 自分でXMLパーサ書けるようになることを目指すというのはどうだろう?
33 : ascii文字しか使ってないxmlを読むにはexpatでも無駄になっちゃうよね… LC_CTYPE=Cのgrep並の効率を持ったパーザは自作するしか無いのかな?
34 : XMLって一過性の流行でしょ?もう終わったんじゃないの?
35 : マークアップ言語としてのXMLは滅びないでしょ。 少なくとも今現在は代替テクノロジがないし。
36 : XMLというか、SOAPとかWS-*系のは何とかならないのかなぁと思う。 あと、フレームワークの設定で使われてる系とか。 必要性はわかるんだが、どうしても冗長過ぎるという感覚が拭えない。
37 : Protocol Bufferとか
38 : 通信系のXML(に限らないかもしれないけど)ってのは要するに、 「プロトコルは自分自身の則るコンテクストを相手に対して説明可能である必要がある」 って発想に基づいているかなぁ、と最近思うようになったんだけど、これは正しい? だとすると、Protocol BufferはXMLの代替にならないだろうな、という気はする。 伝統的なプロトコルは、回線の両端でコンテクストが一致していることを前提にしているけど、 XMLは、ネットワーク上に多様なコンテクストに則ったプロトコルが氾濫する状況に 対して有効に働く方式であると言える気がするんだけど、どうだろう。 とはいえ、冗長なことには違いないわけで、もう一つくらいブレークスルーはないのかという 期待というか懸念は依然としてある。
39 : <Keywords> <Keyword>あ</Keyword> <Keyword>い</Keyword> <Keyword>う</Keyword> </Keywords> みたいなXMLがあって、それをXSLで perlで書くと --- my @Keyword = qw( あ い う ); my $out = join(',', @Keyword); print $out, "\n"; ## 出力:あ,い,う --- と同じことがしたんだけど、Javascriptを使わないで出来ますか? 詳しい人方法をplz
40 : >>39 xsl:for-each と xsl:value-of で検索。
41 : XMLマスターのスレってある? いろんな板見たけど見つからなかったんだけど
42 : 探して見つからなかったならないと思うよ。
43 : 立てたら?
44 : >>42 なんかお前イライラする
45 : そうですね!
46 : yes we can.
47 : 楽天APIで出力されるXMLをPHP5で解析しようとしてるんだが、 $xml = new SimpleXMLElement($xmlstr); echo $xml->Body->itemRanking->Item[0]->title; こんな感じでデータ取り出せないのかな。 どうしてもうまくいかない。
48 : 出力されるXMLを見ないとなんとも言えん
49 : 基本的な質問 タグ内にテキスト(PCDATA)とタグを混在させるのはありらしいですが、 なんか気持ち悪いのです <title>テキスト1<keyword>テキスト2</keyword>テキスト3</title> ↑こういう書き方は普通にありなんでしょうか?
50 : 普通にあり。 title要素が、テキストノード、keyword要素、テキストノード、をchild nodes
51 : >>50 ありがとうございます テキスト1とテキスト2とテキスト3は意味的には1つの繋がった文章なのですが (要するにプログラム解釈としてkeyword要素を強調解釈させたい(文字装飾とかリンクのため) テキストの中にタグを入れるというと文章が分断されてしまう感じがしたもので 普通にありならば堂々と使っていきたいと思います
52 : HTMLとか見たことないのかい?
53 : XMLみたいな文法厳しいものの前にHTML理解してこいって感じだな(汗
54 : そもそもXMLはテキストをマークアップするための言語なわけだが…
55 : 51だけど HTML見たことないわけねーだろ DTDでいう<!ELEMENT tag1 (#PCDATA | tag2)*>って 気持ち悪くないのか? なんかXMLって扱いにくいね こういうとお前が馬鹿な(ryとか来そうだが
56 : PCDATAが気持ち悪いっていうことがもう爆笑なんだがwww お前終わってるだろ
57 : #PCDATAとtag2の混合が気持ち悪いって言ってんだろ ちなみに爆笑するお前も気持ち悪い
58 : もっと罵って欲しい
59 : 気持ち悪いとか爆笑とか、感性や感情を吐露されても 具体的なXMLとの関係はさっぱりわからん。 なぜ気持ち悪いのか、なぜ爆笑するのか、そこを掘り下げろよ。
60 : <dig>そこ掘れワンワン</dig>
61 : 参考になるかどうか分からないけど、かつてTed NelsonはHTMLでは 次のような記法が出来ないから嫌いだと言ったとか何とか。 HTML is <U>precisely <B>what</U> we were trying to PREVENT.</B> 最近のブラウザでは上記例も無理矢理表示するかも知れないけど、 HTML規格に合わせるなら未だに次の記法でないとダメだと思う。 HTML is <U>precisely <B>what</B></U><B> we were trying to PREVENT.</B> つまり、彼のクレームは「何故フォントスタイル指定は入れ子構造を 強制されるのか」と言うこと。 赤ボールペンと蛍光マーカーを使って文書に線を入れる作業をする 例を考えると、赤線や蛍光マークは入れ子など考えずに好きな場所 に入れて好きなようにオーバーラップ出来るよね。 (上の例で言えばpreciselyからwhatまでピーッと赤アンダーラインを 引いて、whatからPREVENTまで蛍光マーカーでなぞる) これと比べればHTMLやXMLの「要素の入れ子構造」はいささかか 不自然さを文書作成者に強制している、といえなくもない。 もちろんTed NelsonがHTMLに対して述べたクレームはこれだけじゃ ないし、彼の主張が全てと言うわけでもないけど、HTMLやXMLには 文書を表現する上では不自然さも持っている、完璧ではないという 意見も存在すると言うことで。 XMLを用いて修飾された文書からDOMを作ると確かに元の文書が ブツ切りのTextNodeとして出てくるので、個人的には>>51 のいう 「気持ち悪い」感覚は何となく理解できます。
62 : プログラマとそうでない人、両方の視点が必要というわけか 非プログラマからは文書を表現しにくいと言われ かといってプログラマからはJSONで十分じゃんと言われ ・・・でもそんなXMLが大好きです(AA略
63 : そういわれてみて気づいたが、俺は HTML は文章の一部をマークアップするためのもの、 XML はデータをツリー構造で表現するためのもの、 として捉えていたようだ。 文章の一部をマークアップするということが本来的に マークアップがきれいな入れ子構造を持つことを要請するわけじゃないよね。 そう考えるとたしかに言葉通りの「マークアップランゲージ」の仕様としては「要素の入れ子構造」は無理な部分もあるのかも。 そもそもなぜ「要素の入れ子構造」は要請されたのかね?
64 : 入れ子だとXMLパーサを作りやすいからだろう。 実装の手間とインタフェースの使いやすさのバランスを取った結果が こういう仕様になったんだと思う。
65 : なるほど、やはりプログラムでの処理からの要請か…。ありがとう。 たしかにプログラムで処理するためのマークアップだもんね。
66 : >>64 >入れ子だとXMLパーサを作りやすいからだろう。 つ SAX しかし今度はパーサを使うプログラマが苦労するという罠。
67 : > つ SAX ああその通り。失礼しました。 入れ子ならDOMパーサを作りやすい、なら問題ないかな。 > しかし今度はパーサを使うプログラマが苦労するという罠。 要素のオーバーラップしたXMLをSAXパーサに食わせて プログラマ側が構造化するとか、考えただけでクラクラする。
68 : 人間が直接パーサを作るなんてひどい拷問だ 自動生成させようよ 機械的に扱わせやすいための入れ子構造なんだし 処理そのものだけでなく処理をさせるものの生成にも構造が簡易なのが効いてくる
69 : 盛り上がってきたな
70 : SGMLパーサーの実装が不可能に近かったのでxmlを作りましたとさって経緯もあるからなぁ
71 : XSLTで、<xsl:template match="processing-instruction('xml')"> というテンプレートを見かけたんだけど、これってマッチすることあるの?
72 : >>71 PITargetは[Xx][Mm][Ll]という値をとり得ないから、 何らかのPIにマッチすることは決してない。
73 : XMLって何て読むんですか?
74 : シャマル
75 : 命題1:XMLはデータをツリー構造で表現するデータ形式である 命題2:XMLはあらゆるデータ構造の表現に用いられている 命題3:世の中に存在するデータ構造はツリー構造のみではない というわけで質問なんだけど、 1. XMLのデータ表現にツリー構造が採用されたのはなぜ? 2. XMLと相性の良い、あるいは悪いデータ構造って例えばどういうの?
76 : その命題の真偽は?
77 : まず、命題1は偽だな
78 : 安易に全称を使わないで欲しい
79 : 命題1と命題2のどちらかが偽だな 1. XMLのデータ表現にツリー構造が採用されたのはなぜ? 括弧の入れ子構造は自然にツリーになるから (() ((()) ()))) 2. XMLと相性の良い、あるいは悪いデータ構造って例えばどういうの? 相性が悪いのはグラフ(任意の矢印でつなげた構造) ------- +→| | | | +--|--+ +-----+ みたいな自分自身を指す構造とか。
80 : >>79 なるほど。 あと、それを見てふと思ったんだけど、ラムダ式ってXMLで表現できるんだろうか
81 : S式と1対1に対応できるから可能
82 : 何も悩まず <lambda arg="x"><lambda arg="y"> <add><value expr="x"/><value expr="y"/></add> </lambda></lambda> でいいじゃん。
83 : 大抵のデータ構造は二項関係の集合にバらして表現できるから 大概のデータはその気になればXMLで「書ける」はずです。 ただ本当にバラバラ事件になるので、機械可読だけど人間様は 読みたくないXML文書になることは請け合いです。 「相性」にも広い意味がありますが元のデータ構造をバらさない ままXMLの構造に対応づけることが出来るか、という意味では やはり相性の良いデータは「木」に見立てることが出来るもの に限られると思います。 ちなみに先日の下線とアンダーラインの例も次のように書けば 入れ子もオーバーラップも気にせずにXMLで表現できます。 <decoratedText> <text>HTML is precisely what we were trying to PREVENT.</text> <underline start="9" end="22"/> <bold start="19" end="48"/> ... </decoratedText> 確かTed NelsonのHyperTextにおけるHyperLinkの定義もこんな アプローチ(参照元と参照先の開始点と終了点)だったと記憶して います。ただ、手書きでは絶対に書きたくないな、これ。
84 : XSLTがチューリング完全だからそれで変換すればなんでもありじゃね?
85 : XSLTは "Sun, 28 ほにゃらら +0900(JST)" みたいな日付の書き方とかを始めとした 色んなデータ表現形式をサポートしてくれないとちょっと使いにくい。 JavaScriptでStringを引数としたString戻り値の関数を定義できる機能とかないのかね。
86 : 暇つぶしに論文漁ったらこんなのが。 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.108.9959&rep=rep1&type=pdf http://www.tei-c.org/release/doc/tei-p5-doc/en/html/NH.html Overlap(上記の下線と太線の例の様なケース)をどのようにSGMLや XMLで表現するか、「技」の事例が揃ってます。 いや、苦労しているなぁ、皆さん(笑)。 個人的には次のようなアプローチが一番面白かった。 HTML is <U_start/>precisely <B_start/>what<U_end/> we were trying to PREVENT.<B_end/>
87 : もはや要素の概念が・・・
88 : >>86 rtfとかこんなんだよね。
89 : 昔のワープロデータの保存形式は、こんなのが多かった気がする。 HTML is <U length="14"/>precisely <B length="25"/>what we were trying to PREVENT.
90 : >>88 RTFはHTMLと一緒だよ。
91 : >>38 でぼそぼそと書いたことの続きなんだけど、 XMLが冗長に感じる一番の理由って名前空間宣言と終了タグなのかな、 と>>89 とかを見て思った。 いや、XMLの趣旨から言って必須なのは分かってるんだけど、 XMLのバイナリ化みたいな話って、この辺をやってバイト数減らしたりしてるのかな。
92 : あと、>>79 について、完全に歴史の話だと思うけど、 > 括弧の入れ子構造は自然にツリーになるから というのは、XML仕様の作成者の意図は、「括弧の入れ子構造」を使った データフォーマットを作ることが先にあって、ツリーになったのは結果論という認識でいい?
93 : INIファイルをXMLファイルに変換する方法を教えてください
94 : >>93 ファイルの頭に <ini><![CDATA[ ファイルの尻に ]]></ini> とかく。
95 : 鬼才現る
96 : >>94 できなかったです+_+
97 : 【サンタクロース、トナカイの酒気帯び運用で逮捕。有罪判決に、マジ逆切れ&大暴れw(動画有り)】(ZDNet) http://builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_03_400x300.jpg http://builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_01_400x300.jpg http://builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_02_400x300.jpg
98 : hoge要素に対するhoe要素、hogehoge要素に対するhoehoe要素が 別のXML文書(hoe.xml)内にあるものとして、 そこへそれぞれにリンクを設定する必要がある時、 <root> <hoge xml:base="hoe.xml#xpointer(hoe[1])"> <hogehoge xlink:href="#xpointer(hoe[1]/hoehoe[1])" /> </hoge> </root> "hoe[1]"を2回書くの嫌なんですが、こう書かなきゃだめ? xml:baseはXPath部分は含んでくれない?
99 : 画像処理の実験データを記録するのに、勉強がてらxmlを使うことにしたのですが 例えば、目標位置を記録する場合の要素Targetがあったとして 例@ <Target num="0" x="315" y="292"> 例A <Target> <Num>0</Num> <X>315</X> <Y>292</Y> </Target> この二通りを考えたとき、どちらの書き方が『正しい』と言えるのでしょうか。 自分はどちらでもいいのではと思っており、例@を採用していたのですが、報告会で先輩から 「そういう属性だけの要素が存在してもいいの?」や「そういうのを書くとき、一般的な決まりごととか無いの?」などの 質問を受けました。考えたことも無かったので調べてはみたのですが これといった答えが見つからず、質問に参った次第です。 好みの問題なのでしょうか。それとも、何か決まりごとのようなものがあるのでしょうか。 参考になるwebサイトなどでも構いません。知っている方がおりましたら、どうかご教授ください。
100 : ないからどういう風に書くかスキーマを書いて決める。
101 : 特に num や x が二つ以上あれば属性ではなく要素を選択するしかないけど、 構造体やハッシュ/辞書みたいなデータ構造を XML に落とす場合は どっちでもいいと思うよ ちなみに XML Hacks って本が言うには 要素にするか属性にするかは論争の種ではあるけれど 相互変換が可能なのでお好みでどうぞというのが結論だった気がする
102 : num や x が2つ以上あっても例えば空白区切りで書けるけど。
103 : >>102 例えばどんな感じ?よかったら教えて あと前掲書からのリンク貼っとくね http://xml.coverpages.org/elementsAndAttrs.html http://xml.silmaril.ie/developers/attributes/ http://www.ibm.com/developerworks/xml/library/x-eleatt.html
104 : 属性にできるなら属性にしたほうがコードは書き易い印象がある。
105 : >>104 DOMにしてもSAXにしても確かに属性にした方が楽ですね。
106 : >>103 <svg:path d="M 0 0 L 0 100 100 100 100 0 0 0" />
107 : >>99 「XML 要素 属性 使い分け」でググるといくつか出てくるから参考にするとよろし
108 : xsltで質問です。 xmlをxslでhtmlにしたいのですが、 できるhtmlに文書型宣言を入れることはできるのでしょうか。 よろしくお願いします。
109 : >>108 omit-xml-declaration を no にして doctype-public, doctype-system を指定。
110 : >>109 xml:outputのところですよね。 うまくいきました。 どうもありがとうございます!
111 : 自分のホームページの資料的コンテンツのところをXML&XSLTにしようと思って勉強しはじめました。 友人に貰った何年も前の「10日で覚えるXML入門」とかいうの本を見てるんですが、いまいち分かりにくいので、他の入門書があったら教えて貰えませんか? 分けあって今PCがネットに繋げられない状況なので、ぐぐれってのは無しでお願いします(^_^;)
112 : どっちかというとXSLTの本を買うべきなんじゃないかという気がするけど、 俺は全然わからないのでえろい人たのむ
113 : Webになっちゃうけど「万葉の想い」には時々お世話になります。 とても説明が丁寧なので大変助けられます。 同僚が近くにいるときには微妙に利用しにくいのが何ですが(笑)。
114 : >>113 Webは見たこと無いけど、書籍( ttp://www.amazon.co.jp/dp/4881662201/ )はよかったな
115 : とりあえずオライリーいっとけ
116 : >>112->>115 レスありがとうございます。 さっそく探してみようと思います。 あともう一ついいですか; >>111 で書いた資料部分だけじゃなくて、サイト全部をXML&XSLTで作るってのはアリでしょうか? やるなら徹底的にやりたくなってきてしまいました;
117 : なし。 ブラウザ実装のXSLTトランスフォーマは屑だらけな上、互換性ないから。 そういうことしたいならphpとかjspとかそっち系。
118 : 標準準拠してない処理系を切り捨てる気があるなら十分アリ。
119 : 挑戦してみて一度挫折してみるのも技術の可能性と限界、適切な適用領域 を理解するために良いかも。 以前「元データのXMLをこのXSLTで変換すると、こ〜んなインタラクティブ なHTMLページに!」なんてものを紹介された事があって、その実装の詳細 をみて驚愕した事がある。 それはまさにJavaScriptコードを生成するXSLT。HTML要素を出力する templateの記述はほんの数行で、あとはJavaScript変数に値を代入する templateやJavaScript関数を実行するtemplateが延々と続く。 これでXMLデータを変換すると殆ど空っぽのHTML文書に巨大JavaScript プログラムが埋め込まれたものを生成。 で、具体的なHTML文書中の表示要素の生成やインタラクティブ云々は 全てJavaScriptプログラム側に丸投げされているという、そういう代物。 で、見て関心しているだけだったら良かったのだけど、そのXSLTのデバッグ を仕事に振られて・・・(´Д⊂
120 : ろくにクロスブラウザされてなくて動作チェックに苦労したと・・・。
121 : クロスブラウザとかライブラリ側でやってくれてないとRるな。
122 : クロスブラウザも苦労しましたが、一番RたのがXSLTとJavaScriptが 素晴らしくフュージョンしてコンバインしていた点です。 XSLTのtemplateとしてJavaScriptの関数宣言が記述されていて、その 関数定義中の所々にまたXSLTのapply-templatesやfor-eachが記述 されている。 で、変換するXMLデータに応じて新しい関数を動的にバキバキ宣言して、 そのロジックをニョキニョキと自動生成するのです。 その技術ロマンは理解出来ないわけでもありません。ですが、 ・変換対象のXMLデータに応じて、毎回JavaScript関数の内容が変化(涙) ・JavaScriptのデバッグをするのに、書き換えるのはXSLT、そのもどかしさ ・・・最終的にはXMLデータをJSON風のJavaScript Objectの配列に変換 するところだけにXSLTは用いて、「静的な」JavaScriptプログラムとして ロジックを一から書き直して放り込んで始末しました。 プログラムの世界には、時々「混ぜては危険」なものもあると実感しました。
123 : >関数定義中の所々にまたXSLTのapply-templatesやfor-eachが記述 されている。 > >で、変換するXMLデータに応じて新しい関数を動的にバキバキ宣言して、 >そのロジックをニョキニョキと自動生成するのです。 さすがチューリング完全のXSLT・・・と言いたいが、 そういうのは実行中にオブジェクトのプロパティに関数突っ込むのがプロトタイプベースOOPの流儀なんだが。 ろくにjavascript触れないPGの苦肉の策にしか見えない。 てかHTML+DOMだけでできる気がする。
124 : 言語のコンパイラひとつ丸ごとデバッグしろっていうのに等しいなw
125 : 実際、言語コンバータ一つ丸ごとデバッグしてるので間違ってないな。
126 : >>123 元々はSVGによるグラフをXSLTを使って生成する事が目的だった様です。 ところがSVGの代わりにFlashのグラフコンポーネントを使う事になって、 そのFlashではパラメーターをJavaScriptで渡す必要があった。 で、「よ〜しJavaScriptコードもXSLTで生成しちゃうぞ〜」となった様です。 やがてXSLTを用いたJavaScriptコードの生成技術にもますます磨きが かかり、関数宣言やロジック実装までXSLTでバキバキ行うように。 いや動く、確かに動くんです。デバッグの手間や拡張さえ考えなければ。 技術の無駄遣いというか、どこで磨き方の方向を誤ったのやら・・・ >>124 いや、まさにそんな感じです。プログラムだけではなくコンパイラの面倒も 見なくちゃいけない、そんな感じでした。
127 : 俺はPHPでXSLTでXML整形してかきだすWikiみたいの作ってるけど 未実装関数とか多いわ挙動おかしいわで苦労することだけは伝えておこう。 あとhtml5で書こうとしてXSLTからはDOCTYPE生成できないとか、 妙に新しいことやるのもダメポ。
128 : >>127 DOCTYPE が生成できないとか嘘だろ。
129 : >>126 なんか見る人が見たら一発で特定されそうだなw まぁ、なんというかお疲れ様
130 : xml好きの俺が仕事納めに一言申します php, jsp, aspとかのソース見てると罪悪感 嫌悪感を感じます <e name="<%= value %>" /> なんか、いや、もうっやめてあげてえーー
131 : こういうXMLに変数値を埋め込む方法は悩ましいですねぇ。 E4Xではどうでしょう(以下はActionScript3の例)。 var value:String ="Foo bar" var xml:XML = <e name={value} /> 二重引用符が必要無いのが素敵。
132 : hamlとか割といいと思いますヨ
133 : 普通にDOMで吐き出してるなあ
134 : 亀だが、JSPならXML構文使えば? 数値文字参照とかELとかでいくらでも解消できるだろ。
135 : データをCSVからXMLに移行しようと思ったのですが、本が古くて今でも通用するのか心配です。 XMLでデータを作成して、XSLTでIEに表示させるようにするのが主流であってますか? CSSという奴はどういう位置付けなんでしょうか?
136 : すいません上げさせてください。
137 : >>135 XML で作成したデータを XSLT で変換するのは IE じゃなくて Java とかのプログラムを使うのが普通かと。 ユーザーが全員 IE を使ってるわけではないし 全てのブラウザが正しく XSLT に対応しているわけでもない。 自分だけで使うなら IE でも全然かまわないが。 XSLT が文書構造(スタイル)を決定するのに対して CSS は見た目(スタイル)を決める。 例えばデータを XSLT で表構造に変換して CSS で表に枠を付けるみたいに。
138 : Java入れるくらいならそのページは見ない。 IE使ってる人 > そのページを見るためにJava入れてもいい人 この式が成り立つなら、IE対応で良いのでは? サーバーサイドに関してはどうでもいいと思いますね。
139 : これほどまでに珍妙なレスは久々に見た気がする
140 : >>138 JavaってXMLをHTMLに変換して表示するだけならサーブレットでいいんじゃないの。 ユーザー側は何も「入れる」必要なく見れる。 サーブレットまで行かなくてもPHP(笑)とかRubyとかPython使ってサーバー側で変換して、 ユーザーには変換後のHTML(+CSS)のみ返すのが主流じゃないか? …それともjavascriptで変換するつもりじゃないよね?
141 : >>135 >XMLでデータを作成して、XSLTでIEに表示させるようにするのが主流であってますか? そういう未来は結局来なかった、というのが正解では。 まずWebブラウザ上のXSLTプロセッサを利用してクライアントサイドで XMLをHTML等に変換して表示、これはあまりポピュラーではない。 問題はつい最近までのブラウザのXSLT実装状況のばらつき。 積極的に使われるのは趣味か、イントラ等でクライアント環境が揃って いる場合ぐらいではないかと思う。。 次にJava等のライブラリを用いてサーバーサイドで変換、変換結果の HTML等をクライアントに送信する用途では、案外使われる。 ただしこの場合にはJSP等が対抗技術になる。 XMLで表現されたデータをそのまま表示する事というのは案外少なくて、 大抵はビューとの間にロジックを噛ます。そういう場合はXML上のデータ を一旦Java等のオブジェクトにマッピングする必要があるし、この場合は JSP等でビューを定義して出力した方が簡単。 サーバーサイドでの利用に関しては、ビューのテンプレートを記述する 技術のワンオブゼムという扱いだと思う。
142 : IEのXSLTエンジンが一番屑な気がするんだが
143 : XML+XSLTの本しかないのでわからないのですが XSLTを勉強するのは意味無駄だということでしょうか? 今のIEコンポーネントで自分のアプリ内だけでXMLデータを表示させるにはなんら問題はないんでしょうか? どのみちきれいに見えるようにCSSも勉強しないといけないということですね。
144 : 無意味って事はないよ。勉強という意味では学んでみるのも 悪くない。ただその本が書かれていた頃に期待されていたほど 大活躍はしていないというのも事実だと思う。 CSSについては書いてある通り。XSLTによってHTMLを出力する にせよ、そのHTMLを見栄えのするものにするには結局CSS等の Webオーサリング界隈で使われている技術を用いる必要がある。
145 : CSS Lv3が控えてるからなぁ。あれは組版にも耐える仕様。XSLTと衝突する。 まあ日本語組版に耐えうるかは知らんが・・・日本語は手でやるのが最強だしな。
146 : http://www.w3.org/1999/XSL/Transform はなんで書かないといけないんですか? 情報収集されているということなんでしょうか?
147 : なんだ釣りか
148 : いやまぁ、俺もそれで大分悩んだクチだが。 >>146 結論から言うと、それは「ただの一意な文字列」であるという以上の意味はない。 「xmlns:xsl="http://www.w3.org/1999/XSL/Transform "」と書けば、 <xsl:〜>というタグはXSLT的に意味があるよ、というお約束なだけ。 ブラウザで開いてみれば分かるけど、そのアドレス自体は仕様へのリンクが 張ってあるだけのページで、XSLT処理系もパースの度にそこにアクセスしたりはしない。
149 : ありがとう!全XMLを一括管理されてるのかと思ってXMLやめようかと思ったよ
150 : 全xml管理を想像した… すごいスペックだ
151 : THcompを思い出した。
152 : XMLのシンプルなデータ構造をブラウザで表示する場合一番いい方法はなんですか? XMLにXSLTを参照させてXMLを表示 HTMLにXMLを参照させてHTMLを表示
153 : Firefox なら xml を見るモードがあるけど、そういうのはダメなの?
154 : 見た目を調整したいのですが、いろいろ実現する方法があるので、違いがわからず 決めかねてるんですが、組み合わせは実現できればどうでもいいんでしょうか?
155 : xhtmlにしてfirefoxでエディットモードでいじればいいんじゃないだろうか。 表示周りはCSSごりごり書いて。
156 : html として解釈できない xml から html として解釈できる xml に変換するのが XSLT html のレンダリング方法をいじる情報を付加するのが CSS
157 : >>152 xsltかjavascriptかってことなんかな?
158 : Linux使えばいい。
159 : XMLにXSLTを参照させてXMLを表示 HTMLにXMLを参照させてHTMLを表示 この2つだとどっちが自然ですか? 両方HTMLにXMLの情報を取り込んでレイアウトできるんですが。
160 : >>159 「自然」の定義と、 >HTMLにXMLを参照させてHTMLを表示 これでちょっとよく分からない。フレームやJavaScriptで取り込む と言うこと? あとはサーバを介すか全てクライアントで処理するかでも変わる。 現状WebブラウザのXSLTプロセッサの利用は現実的ではない。
161 : 便乗質問しても良い? XML+XSLT(サーバーサイド)がメインのサイトって、やっぱりテンプレートメインのサイトより少数派なんかな。
162 : >>148 でもちょっとくらいそういう欲目はあったかもしれない。 未知構造の文書でも動的にnamespaceの参照先URLにアクセスして きっちりオンザフライでバリデーションします!なんてエレガント! 俺って天才! みたいな。
163 : >>162 ていうか、最初そういうものだと思ってスッゲー!って感動していた俺ガイル
164 : RubyのREXML(3.1.7.3)使っているんですが こんなデータがあって data1//---- <root> <elem>1</elem> <elem>2</elem> <elem>3</elem> </root> ----// data2//---- <root><elem>1</elem><elem>2</elem><elem>3</elem></root> ----// こんなコードで動かすと //---- require "rexml/document" xmldata = REXML::Document.new(File.new("data.xml")) for i in 1..3 puts(xmldata.elements["/root"].elements[i,"elem"]) puts(xmldata.elements["/root"].elements[i,"elem"].index_in_parent) end 続く
165 : データ1での結果//---- <elem>1</elem> 2 <elem>2</elem> 4 <elem>3</elem> 6 ----// データ2での結果//---- <elem>1</elem> 1 <elem>2</elem> 2 <elem>3</elem> 3 ----// こんな結果になります。 改行を一要素として数えている? これってバグですかね? それとも自分がバグ?
166 : xmldata.elements["/root"].size でもそれぞれ7と3が返っている XMLの仕様?パーサの仕様?バグ? どなたかおしえてー
167 : 改行がTEXTノードとして間に挟まっていると思われ。 xmldata.elements["/root"].elements.each {|e| p e} とかで確認してみては。
168 : >>167 試してみました 結果は両方同じで以下のように表示されます ---- <elem> ... </> <elem> ... </> <elem> ... </> ---- CR+LFをLFやCRにしてみても同じでした なぜだー
169 : index は要素だけじゃなくて全てのノードなのに対して elements が要素しか返さないからじゃないのか?
170 : 要素名指定なしで、indexのみで表示してみました for i in 1..3 puts(xmldata.elements["/root"].elements[i]) end 結果はまた両方同じで <elem>1</elem> <elem>2</elem> <elem>3</elem>
171 : こんどはrootから直indexで for i in 1..3 puts(xmldata.elements["/root"][i]) end ---- <elem>1</elem> <elem>2</elem> ---- <elem>2</elem> <elem>3</elem> ---- む、微妙な差が。
172 : もちついてレスを検証したほうがいいぞ
173 : for i in 0..3 でやったらこんな感じ ---- <elem>1</elem> <elem>2</elem> ---- <elem>1</elem> <elem>2</elem> <elem>3</elem> ---- index_in_parentはelements単位のindexじゃなくて、 parent[index]のindexを返すのか で、これには何故か改行コードも一要素として数えられる、と むぅ、なんか使いにくいぞ>index_in_parent
174 : えーと、ていうことは、今着目してる"elem"elementsが 親要素の中の何番目の"elem"elementsなのかを 直接知る方法が無いってことかい? とりあえずもうちょっと検証してみます ヒントくれた人ありがとー
175 : うりゃ for i in 1..3 puts(xmldata.elements["/root"].elements[i,"elem"]) e = xmldata.elements["/root"].elements[i,"elem"] puts e.parent.elements.index(e) #ここ注目 end index_in_parentはNodeクラスで定義されているので、 index_in_parentがelementだけではなくTEXTノードも 含めた全ての子Nodeの中での位置を指し示すのは 当然の仕様なんですよ。 なのでelementの並びの中での位置を知りたければ 親elementのelements配列中でのindexを求めれば 良いわけで、上記の解。
176 : >>175 うおー、ばっちりです これでコーディングが進みます 本当にありがとー
177 : >>157 最近jQueryを弄っていたので試しにXML Viewerを作ってみようと したら、案外めんどくさかった。 Tree表示のjQuery Pluginを使えば数行でサクッと出来るかもと 思ったけど、DOMの12のNodeタイプにそれぞれ対応した処理を 書かなければならなかったのが面倒。
178 : 以下のXMLをその下のXSLで変換してFireFoxで表示させようとしてます。 変換はFireFoxにやらせてます。 <?xml version="1.0" ?> <?xml-stylesheet type="text/xsl" href="hoge.xsl" ?> <books> <logo>http://www2.2ch.net/2ch.html</logo> </books> <?xml version="1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform " version="1.0"> <xsl:template match="/"> <html><body> <xsl:element name="img"> <xsl:attribute name="src"> <xsl:value-of select="logo" /> </xsl:attribute> </xsl:element> </body></html> </xsl:template> </xsl:stylesheet> でもなにも表示されません。これって何か間違ってますでしょうか?
179 : >>178 画像じゃないじゃん
180 : <xsl:value-of select="books/logo" />
181 : >>179 ありがとうございます。 そうか、と思って直してIEで表示させたら表示できました。 でもFirefoxではやっぱり何も表示されませんでした。 IEとFirefoxってXSLの動きが違うのでしょうか?
182 : >>180 すいません。 180のとおりにやったらIEでもFirefoxでも同じように表示されました。 エラそうなこと言って失礼しました。
183 : Firefox3.0.5でローカルファイルのXMLでXSLでHTML出力させていますが 一階層上のXSLファイルを相対パスで指定するとXSLが適用されず テキストのみの表示になります。 <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="../style.xsl"?> 同一のファイル構成で以下のブラウザでは問題なく表示できました。 IE7/Opera9.63/Safari3.2.1/Chrome1.0.154.43/Seamonkey1.1.14/Netscape9.0.0.5 Firefox3.1beta等でも試してみたところ3.05と同じです。 ただしWebにあげるとどのバージョンのFirefoxでも問題なく表示できます。 Geckoの問題?
184 : >>183 先日俺も同じ状況に陥った。 結局 Saxon で前処理してから表示するようにしたけど やっぱ Firefox が原因なのか。
185 : >>184 これはFirefoxのバグになるのかな? 仕様・・・ってわけにもいかないよね
186 : ローカルだとなんかセキュリティがかかっちゃうとか?
187 : ローカルだとローカルにあるファイル参照できないよ。mozilla系は。doctypeでSYSTEM指定しないとだめだったはず。
188 : Win2008のイベントログをXMLDOMで読み込んで使いたいんですが、XPathクエリがうまく動きません。 何が悪いか見ていただけませんか。 コード(test.vbs) -- Set dom = CreateObject("Microsoft.FreethreadedXMLDOM") dom.async = False dom.setProperty "SelectionLanguage", "XPath" dom.load "event.xml" strPath = "*[System/EventID=12012]" Set colNodes = dom.documentElement.selectNodes(strPath) WScript.Echo "nodes:" & colNodes.length -- XML -- <?xml version="1.0" encoding="SHIFT_JIS"?> <root> <Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System><EventID>12011</EventID></System></Event> <Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System><EventID>12012</EventID></System></Event> </root> -- xmlns='http://schemas.microsoft.com/win/2004/08/events/event' がないとうまく動くのですが、xmlnsを指定している場合に XPathクエリの指定方法が調べた限りで見つからなかったので。
189 : >>188 XPathではプレフィックスなしの要素名は名前空間なしと決まっているんだ。 MSXMLだと名前空間コンテキストを指定する方法があったはず。それでプ レフィックス⇒名前空間の対応を指定して、XPath中ではプレフィックス 付きで書く。
190 : 回答ありがとうございます。 こんな感じですかね? エラーは出ないけれどノードは認識しないので、まだ何かが足りない風味ですが。 ---- Set dom = CreateObject("Microsoft.FreethreadedXMLDOM") dom.async = False dom.setProperty "SelectionLanguage", "XPath" dom.setProperty "SelectionNamespaces", "xmlns:evt='http://schemas.microsoft.com/win/2004/08/events/event' " dom.load "event.xml" strPath = "/root/evt:Event[System/EventID=12012]" Set colNodes = dom.documentElement.selectNodes(strPath) WScript.Echo "nodes:" & colNodes.length ---- 理解が足りてないようなので、もう少しぐぐってみます。
191 : 連続で失礼します。 --- strPath = "/root/evt:Event[evt:System/evt:EventID=12012]" --- でいいんですね。 うまく取得できるようになりました。 ちなみに、検索の[]内をwevtutil.exeに投げるXPathと同じにしたかったのですが、evt:Systemとかつけなくて済む方法はあったりしますか? もしご存じであれば教えてください。
192 : /root/evt:Event/evt:System[evt:EventID=12012]/..
193 : 書き方が悪かったですね、失礼しました。 wevtutilと同じように、System以下をプレフィックスなしで書きたかったのですが、仕様で無理みたいなので今回はこのまま進めようと思います。 回答ありがとうございました。
194 : Xerces C++を使っています。 とあるアプリケーション(A)のモジュール(B)が返したXMLツリーを Aで管理しているXML文書の子要素として取り込むという処理を行いたいのですが、 BからAが管理するXML文書にアクセスできないようにしたいと思っています。 AからBにドキュメントオブジェクトを渡さないようにして、 Bの内部でXMLツリーを作成したいのですが、どのようにしたらいいでしょうか? AとBの間の受け渡しはXMLのテキストで行います。 Bの中でドキュメントを作成して、ルート以下をメモリ上にシリアライズして それをコピーする方法が考えられるのですが、もう少しスマートな方法はないでしょうか?
195 : XML の内容を比較するようなツールってありますかね? XML のデータをツリーとしてみたときに、2つのツリーで異なるノードがあったとき それを報告してくれるツールといいますか... あと XML のフォーマットの任意性 (改行やインデントの差、順序に寄らないノードのXMLでの出現順序等)を ちゃんと考慮して、内容としての差のみ表示してくれるとうれしいのですが。 とりあえず linux でコマンドラインから使えたりすると非常にいいです。 が、Win や Mac 等の環境もあり、とにかく差分を表示してくれるようなソフトが あるなら見てみたいなと思うので、ご紹介いただけると助かります。
196 : 「xml diff」でググれ
197 : xmlstarletでselすると&とか数字とかに文字化けするんですが どうしたらなおりますか?
198 : 文字化け…?
199 : >>196 どうもありがとうございます。しかし何だか古い情報にしかヒットしない感が。 よほど需要が少ないのか、すでにソフトが枯れているのか... とりあえず一つ一つ当たっていますが、もし個人的にお勧めなのとかあれば 教えてくださいますか?
200 : XML Schemaについて質問なんですが。 実体参照を定義したいんですがどうやればいいかわかりません。 なお、すでにググってあります。
201 : さらにググったらないとか…orz かといって列挙が必要なのでDTDは不可能。 なんかいいスキーマ言語はないもんかね。 必要条件 実体参照をサポートするもの 列挙をサポートするもの 範囲指定が容易であればなおよい もしDTDとXML Schemaの連携ができればそれで終わりなんですがね。
202 : >>195 例えばxmlstarletってツールだと xmlstarlet fo file.xml でxmlファイルを、フォーマットの任意性を排除した形に整形できる 整形した後のファイルをdiffツールで比較すれば、とにかく差分を表示できると思う >>197 xmlstarlet sel ... した結果を xmlstarlet unesc すればいいんじゃないかな 要はselの出力が数値文字参照になって(エスケープされて)困ってるんだと思う
203 : >>200-201 何がしたいのかよくわからんが、 実体を宣言できるのはDTDだけ。
204 : そうかなあ
205 : そうだよ。規格でそう決まってる
206 : >>203 やりたいこと wdicのV6というフォーマットをXMLに移植すること
207 : 何の説明にもなってないんだが……
208 : Microsoft.XMLDOMでProcessing Instructionの要素を取得する方法と Processing Instructionの属性の値を読み書き方法を教えてください。 <?xml version="1.0" encoding="SHIFT_JIS"?> <root> <?aaa c="0" ?> <eee g="0"/> </root> というようなXMLが有った場合、 eee要素の取得は XmlDom.documentElement.selectSingleNode("eee") 属性gの値の書き換えは、.Attributes.getNamedItem("g").text = "1" で出来ますが、これと同じようにaaaのProcessing Instruction要素、 つまり<?aaa c="0" ?>を取得し、属性cの値を読み書きしたいのです。 この場合なら要素の取得は XmlDom.documentElement.childNodes(0) で出来ますが、インデックス指定ではなaaaの名前指定で取得する方法をお願いします。 Microsoft.XMLDOMのバージョンは6.0です。
209 : >>208 できないんじゃないかな。PIは要素じゃないし、普通は使わないし。
210 : と、思ったけど、 selectSingleNode("processing-instruction('aaa')") でできるような気がする。 PIの内容は単なる文字列で、属性という概念はないので、「c="0" 」は 自分でパーズするしかないと思う。
211 : ものすごく初歩的な質問だったらすみません。 xmlのツリー表示って"任意のツリーだけ最初から閉じた状態で"表示することってできるんですか?
212 : 初歩的というか、意味不明です。 XMLを解釈して表示するのは、個々の処理系の責任なので、XMLとしてできるかできないかという話ではありません。 そういうソフトウェアを作りたいという話なら、答えはyesです。
213 : xml単体ではできないということですね。 普段FireFoxでxmlファイルを開いて確認しているのですが、最初から全部のツリーが開いているのが個人的に気になったもので質問させていただきました。 答えてくださってありがとうございます。
214 : >>213 それはFireFoxがそういう風に作られていると言うだけのことですから、XMLがどうかと言う話ではありませんね。 因みに、私の手元にあるXMLビューワは始めから全部閉じた状態で表示されます。
215 : >>214 件の質問者じゃないが、そのビューアがノード名だけのツリー表示ではなく Webブラウザのような一覧性のある表示が出来るならソフト名教えて
216 : >>213 納得するのはいいが、今日が何の日か知ってるのか?
217 : 一部のバカが、普段より更にバカなこと企てるが 一般人は何事もなく過ごす日
218 : すみませんが、質問です。 たのしいXML: XSLT基礎編: xsl:copy-of http://www6.airnet.ne.jp/manyo/xml/xslt/step30.html に載っている http://www6.airnet.ne.jp/manyo/xml/xslt/sample30/flights.xml ですが、IE7だときれいにテーブルとして表示されますが、それ以外のブラウザ (Firefox 3.02, Opera 9.64, Safari 3.1.2)だと、テーブルとして表示されま せん。 これって、IEとその他、どちらが正しいのでしょうか? ちなみにFirefoxだけエラーになるので、ローカルに保存して試しました。
219 : >>218 xsl:output が指定されていないから table 要素をどう表示するかは処理系次第なんじゃね?
220 : >>219 なるほど! xsl:stylesheet 要素の次に、 <xsl:output method="html" encoding="Shift_JIS" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" /> これを挿入すると、他のブラウザでも見事にテーブルになりました。 ありがとうございました。
221 : ちょっとしつもん。 空白だけのドキュメントは、XMLデータと してvalidでしたっけ?
222 : >>221 XMLドキュメントとしてはinvalid。ルート要素が必須。 External parsed entityとしては、OK。
223 : >>222 ありがと。 やっぱり要素はなんか必須なのか。 >External parsed entity 初耳。 調べたら「外部解析実体」とかいうやつね。 well-formedからルートをなくした感じ? いつもスキーマなしのstandaloneしか 使わないから知らなかったよ。
224 : ちょw
225 : XPATH で名前空間によらずとにかく a というローカル名の要素に一致させたいんですけど、 名前空間のワイルドカードみたいな指定はできます?
226 : >>225 *[local-name()='a']
227 : お聞きしたいんですけど、どこかに、ユーザスタイルシートとしてXSLTを適用 できるWEBブラウザはありませんか?Operaは駄目でした。あとIEは使いづらい ので避けたいです。 Amazon APIを使った開発をするとき、レスポンスをブラウザで全部表示すると、 量が多すぎて困るんで、XSLTを適用して見られたら便利かなと思うんですよ。 それとも、他にもっと便利なXMLブラウザはありますか?
228 : 必要な情報だけ抜き出して表示するんじゃダメなん?
229 : >>227 Firefox
230 : Amayaはmathだけだっけ?
231 : >>229 > Firefox すみません、どうやって設定するのでしょうか? ↓の記事によると、Firefoxは userContent.css というファイルをプロファイ ルディレクトリに置くことでユーザスタイルシートを指定するようです。 ユーザスタイルシートによるカスタマイズ(1) - えむもじら http://level.s69.xrea.com/mozilla/index.cgi?id=20070114_sdfx2_2 このファイル名からして、XSLTは指定できないように思えます。実際、 userContent.cssの内容をXSLTにしてみましたが、動作しませんでした。
232 : そういうアドオンを書けってはなしでしょw
233 : foo要素かbar要素を選択するXPathってどう書けばいいんでしょうか。 イメージ的には //foo or //barみたいな感じです。
234 : ああ、|が使えるんだ。 どうもスレ汚し済みませんでした。
235 : 文法で質問です。解析しようとするXML中に [adlcp:datafrom]abc[/adlcp:datafrom] [adlcp:mast]80[/adlcp:mast] という「:」で区切られたタグがありました。この要素中のabcや80といった内容 を抽出したく思っています。 この場合、[A:B]のAとBはそれぞれ何という文法名称を持っているのしょうか? (Aは単に要素?) ※書き込みCGIの都合上、タグ記号を<>→[ ]にしています。
236 : 名前空間
237 : A -> 接頭辞 B -> 局所名
238 : >>236-237 どれが(どっちが)本当なんですかあ?
239 : 以下の様なXML(ちなみにjava.util.Propertiesが吐く出力です) ================検証対象================ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd "> <properties> <entry key="fooKey">fooValue</entry> <entry key="barKey">barValue</entry> </properties> ======================================== に対応するXML Schemaを記述したいのですが、以下ではエラーになりました 曰く「entryは子どもに要素は持てないよ(※1)」とのことなのですが、 どこが誤っていますでしょうか・・・ (改行規制が入ったため、スキーマだけ次に記述させていただきます) (※1)パーザーからのエラー原文 [Error] :5:21: cvc-complex-type.2.4.d: Invalid content was found starting with element 'entry'. No child element is expected at this point.
240 : =================定義================= <?xml version="1.0" encoding="UTF-8" standalone="no"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema "> <xsd:element name="properties"> <xsd:complexType> <xsd:sequence> <xsd:element name="entry"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="key" type="xsd:string" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> ======================================
241 : >>238 <A:B /> A:B -- qualified name A -- namespace prefix B -- local name
242 : >>241 てんきゅう。
243 : >>239-240 エラーメッセージを読み間違えてる。 「要素'entry'から始まる不正な内容を発見しました。ここには子要素は認められません」 <sequence>は指定した要素を指定した個数だけ指定した順番で要求する定義。
244 : >>243 ありがとうございます。sequence のままの場合、 データ側を試しに一つのentry要素1つにしてみると成功しました。 何度も質問してすみませんが、「entry要素が任意個並ぶ」の場合は どうなるのでしょうか。any と choice は×でした。
245 : >>244 っmaxOccurs, minOccurs
246 : >>245 ありがとうございます。min=0, max=unboundedで出来ました。 <?xml version="1.0" encoding="UTF-8" standalone="no"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema "> <xsd:element name="properties"> <xsd:complexType> <xsd:sequence> <xsd:element name="entry" minOccurs="0" maxOccurs="unbounded"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="key" type="xsd:string" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> そもそも>>239 のXMLに対して妥当な書き方なのか分かりませんが…
247 : XSLTでhtml出力したいと思っているのですが、 MSXSL6でhtml出力されると <!--hogehoge--> <?php include("./include/index.php"); ?> が出力されません。 コメントタグなどテキスト出力できる方法はありませんでしょうか? よろしくお願いします。 hoge.xsl <?xml version="1.0" encoding="shift_jis" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform " > <xsl:output method="xml" omit-xml-declaration="yes" indent="yes" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd " media-type="text/html" /> <xsl:template match="/"><html> <head> <link rel="stylesheet" href="../../css/import.css" media="print,screen" charset="shift_jis" type="text/css" /> </head> <body> <!--hogehoge start--> <div id="hogehoge"> <?php include("./include/index.php"); ?> </div> <!--hogehoge end--> </body> </html> </xsl:template> </xsl:stylesheet>
248 : <!--hogehoge-->は <xsl:comment> <xsl:text>hogehoge</xsl:text> </xsl:comment> <?php ?> のほうはわかんね。
249 : VB.net2005で要素探して文字列置換する関数教えて
250 : 言語に由来するAPIは言語のスレじゃないの?
251 : >>247 > <?php include("./include/index.php"); ?> 処理命令ならxsl:processing-instructionを使えばいいんでないかな。 XSLT 1.0仕様書だとここらへん。 ttp://www.w3.org/TR/xslt#section-Creating-Processing-Instructions
252 : >>248 、251 ありがとうございました。 <xsl:processing-instruction name="php"> include("../../../include/business/index.php"); </xsl:processing-instruction> でOKでした
253 : Java(6)でXHTML文書をorg.w3c.dom.Documentに読み込んだあと、そのまま javax.xml.transform.Transformerで出力すると、 出力結果の文書に、元の文書にはなかった属性(たとえば<a>に shape="rect")が 追加されてしまいます。 これを抑止する方法はないでしょうか? これらの属性値は暗黙のデフォルト値のようで、 出力前にElement#removeAttributeNode()で削除することができません。 (削除してもデフォルト値で復活してしまう) Transformerのパラメータ等で属性のデフォルト値出力を抑止できると 大変たすかるのですが、対処法をご存じないでしょうか?
254 : aじゃなくてareaじゃないの?
255 : >254 ttp://w3g.jp/xhtml/dic/a#shape あと、ttp://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtdに <!ELEMENT a %a.content;> <!ATTLIST a %attrs; %focus; charset %Charset; #IMPLIED type %ContentType; #IMPLIED name NMTOKEN #IMPLIED href %URI; #IMPLIED hreflang %LanguageCode; #IMPLIED rel %LinkTypes; #IMPLIED rev %LinkTypes; #IMPLIED shape %Shape; "rect" coords %Coords; #IMPLIED target %FrameTarget; #IMPLIED > とあります。
256 : XMLとDTDをテキストファイルに書いて データベースを作ったんだけど、 それらのファイルを開いて検索したり手軽にするには どうしたらいいですか?
257 : データベースというものがあってだな
258 : XMLのフリーのDBMで定番ってあるの? PostgreSQLとかMySQLみたいな。
259 : DBMじゃなくてDBMSでした。
260 : COBOLのフリーのJAVAで定番ってあるの? EclipseとかNetBeansみたいな。
261 : XULに未来はあるの?
262 : 俺メモ //div/div より //div[parent::div] //div//div より //div[ancestor::div] の方が早い
263 : >>262 へぇーへぇーへぇーだけど、もろ実装依存じゃないの? ちなみに、どういう要因でそうなってるの?
264 : 実装依存ではあるけど、たいていはスラッシュって閉じタグの検出用じゃないか? だから省略するより軸は正規構文で書く方が早いのは納得できる
265 : 実装毎に差はあると思いますが、自分の知る限りでは全部早いです 先祖は1本腺で辿れるが、子孫は無数。とか構造的なもん? 漠然としてますが、自分なりの解釈です 俺メモ //div//div//div より //div[count(ancestor::div)=2] の方が若干早い
266 : 誘導されてきました。 【OS】 Windows XP SP2 【PC】 VAIO typeT 【質問内容】 xslファイルのエラー解決法を教えて下さい。@の部分がエラーですと言われるのですが、文法は間違ってないハズなのに… ファイル名:Sample1.xsl <?xml version="1.0" encoding="Shift_JIS" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform "> <xsl:output method="xml" encoding="Shift_JIS" /> <!-- 文章 --> <xsl:template match="/"> <root> <xsl:apply-templates select="cars"/> </root> </xsl:template> <!-- 車リスト --> <xsl:template match="cars"/> <cars>車リストを処理しました。</cars> @→</xsl:template> </xsl:stylesheet>
267 :
268 : <xsl:template match="cars"/> のケツに付いてる/でtemplate要素が終わっちゃってるからじゃない?
269 : 文法間違ってないって自信はどこからくるんだ? バカでも文法知ってれば、このイージーミスは一目でわかるだろ
270 : >@→</xsl:template> missmatched closed tag xsl:template.
271 : >>268 さんの方法で試したら動きました。ありがとうございましたm( )m
272 : XML専用機能の付いたテキストエディタを使えば こんな凡ミスは防げるのに。
273 : mozilla系に読み込ませればexpatが怒ってくれる
274 : >>273 わざわざそんなモノをひきあいに 出さなくても、IEでおk。
275 : ごめんねカーチャンOSがOpenSolarisだから IEが使えなくてごめんね
276 : むしろ今時winでしか使えないIEを出す方が間違ってる
277 : macの無くなっちゃったんだよね…… 10年ぐらい前に親が買ってきたmacにIE4.5を入れてはしゃいでたのが懐かしい
278 : カーチャンやめろw 知人スレかと思ったわw
279 : C言語からexpatを使っているんですけど、タグの要素内容を取得するのってどうすればよいのでしょうか? 属性は取得できたのですが。
280 : <xsl:sort>で躓いているのですが、data-type="text" でのascending, descending というのは 文字列の何を基準に並び替えているんですかね?文字数? 例えばxmlファイル<book>配下にそれぞれ下記の出現順に<publish>が並んでいて <publish>昭和システム</publish> <publish>昭和システム</publish> <publish>ハードバンク</publish> <publish>頌栄社</publish> xslファイルで下記のように並び替えると <xsl:for-each select="book"> <xsl:sort select="publish" data-type="text" order="ascending" /> ハードバンク 昭和システム 昭和システム 頌栄社 の順で並びます。 何故、ハードバンクが一番上にくるのでしょうか? ハードバンクと昭和システムの昇順の差異はどこでしょうか?
281 : Unicodeのコードポイント順だろうけどちゃんと調べたほうがいいぞ
282 : ありがとうございます。 なるほど、深いですね・・・ とりあえず飛ばして先進みます。
283 : あるXMLに任意のXSLTを適用した結果のXMLを出力するような、 コマンドラインで使えるフリーのツールって知りませんか? 検索の仕方が悪いのかもしれないけれど、 ブラウザしか見あたらなくて
284 : 検索ワードに「コマンドライン」って入れるのを忘れてましたw ぼろぼろ出てきたけれどどれが良いのやら お勧めがあったら教えてください
285 : Xalanでいいだろ
286 : >>285 どもです。試してみます。 ありがとうございました。
287 : 以下の条件を満たすe1要素を取得するXPathはどう書けばいいんでしょうか ・a1属性の値がv1である ・a2属性の値が共通しているe2要素が同文書中に存在する ・そのe2要素のa3属性の値がv2である サンプル: ... <e1 a1="v1" a2="hoge">...</e1> ... <e2 a2="hoge" a3="v2">...</e2> ...
288 : @a1="v1"のe1要素リストを取得する ↓ @a3="v2"のe2要素リストを取得する ↓ e1@a2の値を一つ取り出して、e2@a3と照合←繰り返す おわり
289 : ああすまん三つ目を間違えた リストのe1@a2の値を一つ取り出して、リストのe2@a2と照合←繰り返す
290 : >>287 xsltのように外部で変数を定義できる環境があれば一本のxpath式でかけるが、そうでないなら無理。
291 : 任意のXMLを任意のXSLでするCOBOLのJAVAってどこにありますか? 任意の検索をしてみましたが、あらゆるサイトは私を苦しめました。 あなたたちの力は私を大いに助けるでしょう。そして、は、にだけ、私のもので。
292 : 回答が欲しいので、あげておきます。
293 : japanese please
294 : どう見ても日本語だろwww
295 : >>293 は面白いと思って書き込んだんだよ・・・
296 : どう見ても機械翻訳だけど なんでわざわざ2chの過疎スレに投げるのw
297 : ここって過疎スレなのか? 俺たちがいるってことは世界の中心なんだろ?
298 : どこが機械翻訳やねん
299 : どこが機械語やねん
300 : 神ktkr
301 : http://studiokingyo.fc2web.com/ 天才プログラマーって本当にいるんだな・・・
302 :
303 : >>301 そのページのどこを読めばそういう感想に至るのかについてkwsk
304 : >>301 ライブラリ開発といえばそこだよな そこのC言語ライブラリはマジで最強
305 : そこのTipsはプログラマなら必見の内容
306 : >>303 まぁ、プログラマじゃなきゃ分からんわなwww
307 : なんという乞食サイト
308 : kwskとかないわ・・・
309 : 具体的な指摘もできないで何が「乞食サイト」だ
310 : 技術情報が豊富だな
311 : >>301 こっちも参考になるよ http://dkingyoutility.sourceforge.jp/ 最先端の技術をハッキングしているし、将来有望なプログラマだね
312 : 失せろスレチども
313 : なんでこんな過疎スレに荒らし沸いてるん?
314 : >>312-313 スレ違い うせろ
315 : 一度アク禁喰らってきたらいいよ
316 : お前がな
317 :
318 : -->
319 :
320 : <!-- age -->
321 : 結局、>>291 の質問に答えられる奴はここにはいないんだなwww
322 : 不覚にもワラタw 当たり前だろwww
323 : ローカルのXMLをXSLスタイルシートを使ってブラウザ表示させていますが、 IE8では問題なく表示可能。FireFox3.0では何も表示されません。 ただし、<?xml-stylesheet type="text/xsl" href="http://hoge.hoe/hoge.xsl " ?> としている場合。 XSLファイルもローカルにおき、<?xml-stylesheet type="text/xsl" href="hoge.xsl" ?>とすると問題なく表示されます。 サーバの返すMIME-Typeの問題かと思いましたが、text/xmlでもtext/xslでもapplication/xslでもやはりだめです。 # 関係ないですが、IE8はtext/xmlだとXSLスタイルシートは適用されないよう。 どういう原因が考えられるでしょうか?
324 : よく分からんけど、別ドメインへのアクセスを抑制するセキュリティ上の問題じゃねえの。 ちなみにXSLスタイルシートのMIMEタイプはapplication/xslt+xmlまたはapplication/xml
325 : なるほど。 ありがとうございます。 その線で調べてみます。
326 : 表示ですが、それは支障なくIE8のローカルのXMLを表示できます。 XSLスタイルシートがあるブラウザ。 FireFox3.0に何も表示しません = あります。 「/テキストはxsl(xml)です。」. . xmlに喜ばせられます。 そして、あなたが言われて、タイプがあったとき<それを表現しました>、それを仮定するとき、 それが「テキスト/xsl」<の「Http://hoge.hoe/hoge.xsl」と等しい謝意Hrefに言われた、--スタイルシートになるのが、等しかったときに。 そのうえ、XSLがファイルする地元住民は、置かれます。 Hrefは「Hoge.xsl?」です。 問題、大部分へのMIMEの種類について。 サーバそれでテキスト/xml、テキスト/xsl、および>さえ役に立たなくて、リターンのときに等しい方が静まっているのを見て、支障なくそれを表示しました。 アプリケーション/xsl。 しかしながら、IE8がテキスト/xmlであるときに、それは #、が関係ないXSLスタイルシートです: それを適用させないでください。 どんな原因が考えられますか?
327 : japanese please again
328 : (来世で再び日本人になってください)
329 : とりあえず地元住民についてkwsk
330 : 定期あげ
331 : 定期あげ
332 : 定期あげ
333 : 定期あげ
334 : <age period="regularly"/>
335 : <age period="regularly"/>
336 : <response action="age" period="regularly" />
337 : ――すなわち、過去のある時点である人が「ほげ」を使用すると、そこには「ほげ」の場が作られる。 そのとき、たまたま「ほげ」に共鳴した人がいれば「ほげ」の場は強められ、他の人にも影響を与える。 共鳴が繰り返されるうちにやがて、「ほげ」の場がより強力になり、日本全国で「ほげ」を使う人が増え、「ほげ症候群」と呼ばれるほど共鳴した人々が現われたのである。 また、「形の場」は現在だけでなく未来に対しても影響を与える。 すなわち、一度「ほげ」の場が構成されてしまうと、それ以後に生まれた人にすらその影響が及ぶのである。 特に、ユングの言うところの「集合的無意識」に影響を与え、意識が低下しているときに「ほげ症候群」の症状が現われやすい。 例えば、納期に追われながら、朦朧となりつつもプログラムを組む職業プログラマはソースプログラムの中に "hoge" を使用する傾向が高いと言われている。 しかし、最も顕著な例は、最 近 の 赤 ん 坊 が 「 ほ げ ぇ 、 ほ げ ぇ 」 と 産 声 を あ げ つ つ こ の 世 に 生 ま れ て く る こ と で あ ろ う 。 http://kmaebashi.com/programmer/hoge.html
338 : <response action="age" period="regularly" />
339 : XML 「ひ、あ……ん、や、だめぇ……んッ!」
340 : <response action="age" period="regularly" />
341 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
342 : またスクリプトか
343 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
344 : このスレに何が起きたage
345 : <thread name="XML総合" part="3"> <wadai is_empty="true" damepo="true" /> </thread>
346 : element thread { content & attribute name { text } & attribute part { xsd:positiveInteger } } content = empty
347 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} |:: ∈∋ ヽ | //:: -=,=.ヮ. |ヽ、| /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一 class thread extends Thread { private String name = "XML総合"; private int part = 3; public void run() { while (true) System.out.println("<response action=\"age\" period=\"regularly\" />"); } }
348 : dtdの属性値列挙型みたいに同じ属性に複数の値を持たせるにはどうするの? ビットフラグみたいな扱いで、 <encode available=(shift_jis|euc|utf-8) /> みたいにやりたいんだが。 <encode shift_jis="true" euc="true" /> こういうのがいいのかもしれんが、既存定義の属性名が重複してて、 新たに追加するのは避けたい。
349 : >>348 XMLの仕様としては何も決まっていない。 属性値はただの文字列だから、好きなように区切り文字を定義すればいい。 参考までにXML Schemaでは、スペースを区切り文字としてList型が定義されている。 http://www.w3.org/TR/xmlschema11-2/#list-datatypes
350 : >>349 ありがとう。調べてみます。 org.xml.sax.Attributes#getValue(int index)が > If the attribute value is a list of tokens (IDREFS, ENTITIES, or NMTOKENS), the tokens will be concatenated into a single string with each token separated by a single space. と言ってるのも同じポリシーかな。 パーサまかせじゃなくてjavaで処理するなら何を区切り文字にしてもいいんだけど、 なるべくなら標準に近い形で組み込みたくて。 (変な仕様だとかっこ悪いし)
351 : だから標準なんてないんだと…
352 : SGML/XML的には空白区切りが流儀ということで合ってるよ。 それに合わせる必要はないけども。
353 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
354 : XMLにバイナリ(base64)を仕込むのはアイコン程度なら断然有りだな。 XMLスキーマは何か一部で不評みたいだけど個人的には好き。
355 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
356 : >>354 HTMLにもデータURLってのが追加された みたいだしな。 早く普及してほしい。
357 : このスレの最初の方で、バイナリデータにはPI使えってあるけど それだとデータ内に?>が入っていた場合に破綻するよね? BASE64も読むのに結構時間かかりそうだし、 巨大なバイナリデータを表現したい時は、別ファイルにするしかないのか。 サイズ指定して、生のバイナリデータそのまま埋め込めるように ならないかな。
358 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
359 : >>357 BASE64で埋め込んで、XML自体をバイナリXMLにして送る、とかだとどーなるんだろ
360 : BASE64はデータ量がきっちり1.333..倍になる。 単位時間が求められる変換は基本的にちょっぱやで終わるよ。 ただBASE64で送って良いサイズはメールと同じだと思う。 だいたい1MB以下、もうちょっと許容して2MB以下って所。
361 : それなんてドット絵復権フラグ?
362 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
363 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
364 : プラットフォーム非依存で構造的(階層的)なメッセージを 転送効率が問題になるほどの大量データ転送を実装したいのなら、 (テキスト形式である)XMLではなく、バイナリ形式のメッセージ仕様を 採用するのがよいと思う。もちろんソケットプログラミングの知識が 必要であったり、(Webキャッシュが利用できなくなることによる) スケーラビリティの課題を抱えるというデメリットもあるが。 バイナリエンコーディング例 [詳細はWikipedia等を参照] ・XDR(Externel Data Representation, ONC/RPC) ・BER(Basic Encoding Rules, OSI/ASN.1) ・AMF(Action Message Format, Adobe ActionScript)
365 : バイナリデータでもキャッシュはできるだろ…
366 : ここでは、HTTPを使用せずに(ソケット上で)独自のプロトコルを 実装することを提案している。 HTTPではないから、当然Webキャッシュは利用できない。 もちろんBase64等でテキストエンコードしてからHTTPで転送することは 論理的には実現可能だが、(トンネリング実装の場合を除き)実質的には無意味。
367 : Base64とか通さずapplication/octet-streamとか*/x-ナントカにして 直接HTTP上でバイナリデータ送ったらだめなの?
368 : 節子それ画像ファイルやないウィルスや、ってことにならなければ いいんじゃないかな
369 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
370 : いやぁよく寝た やっぱXML最高だわさ
371 : ttp://www.w3.org/XML/Binary/
372 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
373 : <response action="age" period="regularly" />
374 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
375 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
376 : XSLTについて聞きたいのですが… ・<xsl:with-param><xsl:value-of select="要素"/></xsl:with-param> で他のテンプレートに値を渡したとき、受け取った側では型は どうなってしまうのでしょうか。 単に「要素の値(テキストノード?)」しかとれないでしょうか。 ・受け取った側で要素の名前が知りたいのですが 良い方法があったら教えてください。 いろいろ調べたのですがネット上に情報が少なく 本屋にも本が少なくこの分野は大変ですね… リファレンス的に使える本などありましたら併せて紹介ください。
377 : ああ…どこが理解できてないのか段々わかってきた。 何渡しても「結果ツリーフラグメント」っつー奴になってんのね。 型判別できるわけじゃないし、ノードとしても見えないし 使いづらいですなぁ…
378 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
379 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
380 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
381 : ギャラクシーエンジェルTV版のノーマッドなのはわかるんだが、なぜ…
382 : このコピペが貼られる度、糞スレ度合いが3上昇
383 : だれかこのスクリプト荒らし報告してる?かなり前からいるけど
384 : 荒らされて困っている人がいないので……
385 : XML SpyみたいにC++用のコードが吐けるツールを探してるんだけど、Linuxで動作するコードを吐けるツールってあるかな。 XML SpyはWindows用のみ吐けるっぽいんだよね。
386 : >>385 XMLSpy for Linux
387 : WEB上のHTMLやらXMLを読み込んで自動でデータ収集するソフトを作ってるけど ちゃんとタグで閉じてなかったりへんな文字が入ってたりするページが多すぎ。 結局手動で処理する部分は必要だね。
388 : >へんな文字 実態参照や数値参照ではないのか
389 : 質問です。 Windows XP Professional C#、 .NET 3.5、 Visual Studio 2008 Proの環境で開発をしています。 たとえば、書きのようなXmlドキュメントがあったとして、 属性kensakutaishougai、kensakutaishougai1、kensakutaishougai2以外の属性をすべて検索したいのですが、 どのようなXPathを書けばよいでしょうか? とりあえず、 "//@*" で、属性全てを検索できるのはわかったのですが、これだとkensakutaishougaiXも検索されてしまうため、適切ではありません。 宜しくお願いします。 <node1 attr1="abc"> <node2 attr1="def" attr2="ghi" /> <node3 attr3="def" attr4="ghi" /> <node4 attr5="def" attr6="ghi" kensakutaishougai="xxx" /> <node4 kensakutaishougai1="xxx" kensakutaishougai2="yyy" /> </node1>
390 : >>389 追記 ちなみに、ノードnode1,node2を検索しようと思った場合に "//*[self::node1 or self::node2]" とやれば良い事は分かってます。同じようにしたいのですが……
391 : >>390 ヒント: local-name() で文字列比較
392 : >>389 許されるならXPathよりLINQ to XMLつかったほうが楽だと思うよ。
393 : VB6でもXMLのタグを読み込んだり書き出したり出来るんでしょうか?
394 : >>393 参照設定からMSXMLを探すんだ。ただし、少なくともバージョン3以上、3か4か6。
395 : >>394 サンキューです。やってみますね。
396 : >>387 むかしむかしトライデントのパーサーが糞すぎて IEでしか読めないhtmlが出回りだしたころNNがHTMLの正規化という方法を考案してな。 1)必ず必要なものはパース前に存在すると仮定する 2)パース中に必要になったものはとりあえず付け足してみる 3)エラーでパースを止めずに無視して進める とりあえずこれやれば多少は読めるよ。 まあこれだけだといわゆるお尻pの処理がめんどくさいんだが。 HotJavaのパーサーですら実装してるからJDKのソース読んでみ。 ちなみにHTMLの正規化という単語はもう死語だからググっても出てこないよ。 実装して当たり前くらいに浸透してるからソース読んだ方が早い。
397 : ああ、xmlパーサでこれやると破定するから。そういうパーサもあるけど。
398 : ちなみに破定という単語はもう死語だからググっても出てこないよ。
399 : 破綻の百姓読み「はじょう」の当て字だろ?
400 : xmlを読み込んで適当なサイズのバッファに格納しといてそれをパーサーに食わせたときに、バッファサイズが小さくて要素名を途切れさせてしまったらパースに失敗するんでしょうか?
401 : てかパーサに食わせるxmlが千切れてたら、そりゃダメだろ
402 : タグの開始と終わりがちゃんとバッファ内に収まるように担保してあげないといけないということですか?
403 : そんなへぼい実装のわけないだろ
404 : 文字列変数相手にしかパースできない汎用パーサはあまり見たことない。一度それっぽいのを正規表現ぐちゃぐちゃのやっつけで作ったけど。 オブジェクト指向環境用のパーサなら普通、その都度「もっと字をよこせ」と供給側オブジェクト(何ちゃらストリーム)に要求するような仕組みになってんじゃないかな。 JavaでいうならXMLReaderとInputSourceとか。 オブジェクト指向でないなら、おそらく呼び出し元の方へ「字が足りないから、途中の状態はキープしてるから、残りもよろしく」と結果を返してきそう。 ・・・ところで fxis さんとこの日本語情報はどこにいってしまったんだー
405 : >>396 糞だったのはNN。 IEのほうがずっとマシだった。
406 : いつの時代の話だ?まさかNN5とか言わないよな
407 : だんだん はなしが ずれて…
408 : そもそもリカバー続行するようなパーサは「XMLプロセッサ」名乗れないんじゃなかったっけ?
409 : XMLプロセッサを名乗る基準なんて定められてないよ
410 : まず>>387 がHTMLとXMLをごっちゃにしたカキコして(これは問題なし)、 それに対して>>396 が、(このXMLスレで)HTMLパーサのRくを 語りはじめたものだから、それ以降はスレの流れがグタクタに。 >>405 ,406もグダグダな流れに気が付かず。 タグの閉じていない(>>387 )SGML文書はHTMLであるかもしれないけど、 XMLじゃありません。HTMLとXMLをごっちゃにして議論しないでーーー!!
411 : end-tagのないxmlをパースできるパーサもある
412 : >>416 タグの閉じていない(end-tag)のないSGML文書はXMLではありません。 >>416 のパーサはSGMLパーサ(あるいはHTMLパーサ)と呼ばれるもの。 けっしてXMLパーサ(あるいはXMLプロセッサ)なんかじゃありません。 ごっちゃにしないでくださーーーい!!
413 : >>412 - タグが閉じていてもSGML文書はXML文書とは限らない。 - XML文書だからといってタグが閉じてるとは限らない(ie. well-formedでないXML文書) - XMLプロセッサはヴァリデーションを行わない場合、well-formedでない文書も受け入れてよい。
414 : >>416 に期待
415 : 416 ズザー >>409 すまん、名乗るのは勝手だよな。 XML1.0規格の5章あたりのうろ覚え知識で、規格書上の「定義」の話をしてみた。 今読み直したら、「エラー報告」さえあれば整形式エラーのリカバーを継続しても構わないみたい。 >>413 >- XMLプロセッサはヴァリデーションを行わない場合、well-formedでない文書も受け入れてよい。 同じ話かな? いずれにせよ、XMLプロセッサが異常系も上げずに変なXML読んで、ベンダ間で違う解釈されるのは勘弁なんだな。 XHTMLぐらいならいいんだけど。いや、よくない。
416 : VC++2003でアンマネージド開発してます MSXML4.DLLをインポートしてXML処理の実験をしてたのですが <ROOT><TestNode>TestText</TestNode></ROOT> 上記のXMLデータをIXMLDOMDocument、IXMLDOMElement、IXMLDOMTextを使用して生成し Test.xmlというファイルに保存するまではできました しかし、その後このXMLファイルをIXMLDOMDocument::loadで読み込んで documentElementからfirstChildを取得しようとするとエラーが起きてしまいます 「場所 0x00000000 の読み込み中にアクセス違反が発生」等と表示されるので たぶんfirstChildが無いと言うことなんだと思いますが あるはずのものがなぜ無いのでしょう? ためしにIXMLDOMDocument::getElementByName(_bstr_t("TestText"))をして 取得したIXMLDOMNodeListのlengthを調べると0でした ちなみに、loadはちゃんと戻り値がVARIANT_TRUEであることを確認しています 何かおかしなXMLだったりするのでしょうか?
417 : >>416 MSXMLは詳しくないけど、 > 「場所 0x00000000 の読み込み中にアクセス違反が発生」等と表示されるので firstChild がない以前に、親ノードがぬるぽになってない? > getElementByName(_bstr_t("TestText")) _bstr_t("TestNode") じゃないの?
418 : >>417 > 親がぬるぽ 最初は自分もそう思ったのですが デバッグしてポインタ値を見る限り、0x03aなんとかとちゃんと有効なアドレスが入ってるようでした _bstr_t("TestNode")ですね コピペじゃなくて書き写ししたので、書き込んだ時に間違えてました・・・
419 : getElementByName() って存在するの? getElementsByTagName() では?
420 : コメントをブラウザ上で流れるようにしたい っていうかぶっちゃけらいつべっていう動画配信サイトでニコニコ仕様を作りたいんだけれども どうなってるの
421 : >>419 すいません、そこも書き込み間違いです・・・orz
422 : >>420 なんでこのスレに書き込もうと思ったの?
423 : >>421 IXMLDOMDocumentを得てからクラッシュするまでのコードを*ぜんぶ* 見せたほうが良いと思われる。
424 : >>422 なんか調べたところによると、ブラウザってXMLで作られてるらしいんだぜ……?
425 : >>423 そうですね、ソースのその部分を載せてみます VOID XmlTest() { MSXML4::IXMLDOMDocument* w_lpDocument; MSXML4::IXMLDOMElement* w_lpRoot; MSXML4::IXMLDOMNode* w_lpNode; TCHAR w_szAppPath[MAX_PATH]; std::wstring w_strAppPath; std::wstring w_strXmlFile; _variant_t w_varText(_TEXT("ChangeTestText")); ::GetModuleFileName(NULL, w_szAppPath, MAX_PATH); w_strAppPath = w_szAppPath; w_strXmlFile = w_strAppPath.substr(0, (w_strAppPath.rfind(_TEXT('\\')) + 1)); w_strXmlFile += _TEXT("Test.xml"); ::CoInitialize(NULL); if (SUCCEEDED(CoCreateInstance(MSXML4::CLSID_DOMDocument, NULL, CLSCTX_INPROC_SERVER, MSXML4::IID_IXMLDOMDocument, (LPVOID*)(&w_lpDocument)))) { w_lpDocument->async = VARIANT_FALSE; if(w_lpDocument->load(_variant_t(_TEXT("XMLファイルのパス"))) == VARIANT_TRUE) { w_lpRoot = w_lpDocument->documentElement; w_lpNode = w_lpRoot->firstChild; ←※ここでエラー w_lpNode->nodeValue = w_varText.GetVARIANT(); w_lpDocument->save(_variant_t(w_strXmlFile.c_str())); } w_lpDocument->Release(); } ::CoUninitialize(); }
426 : >>425 古い知識かもしれなくて悪いんだけど w_lpDocument->get_documentElement(&w_lpRoot) じゃないか。 こういうの煩雑で嫌ならIXMLDOMDocumentPtrとか使えばよかったんだと思う。
427 : >>425 IDEが提示してくれるプロパティらしきものはフェイクなんですかね・・・ とりあえず、仰るとおりにメソッド使用にして、各操作にSUCCEEDEDをかませて見たのですが 今度はDOMDocumentのloadで読み込みに失敗してるみたいです・・・もう何がなにやら・・・ if(SUCCEEDED(::CoCreateInstance(MSXML4::CLSID_DOMDocument, NULL, CLSCTX_INPROC_SERVER, MSXML4::IID_IXMLDOMDocument, (LPVOID*)(&w_lpDocument)))) { w_lpDocument->put_async(VARIANT_FALSE); if(SUCCEEDED(w_lpDocument->load(_variant_t(w_strXmlFile.c_str())))) { if(SUCCEEDED(w_lpDocument->get_documentElement(&w_lpRoot))) { if(SUCCEEDED(w_lpRoot->get_firstChild(&w_lpNode))) { if(SUCCEEDED(w_lpNode->put_nodeValue(w_varText.GetVARIANT()))) { if(SUCCEEDED(w_lpDocument->save(_variant_t(w_strXmlFile.c_str())))) { MessageBox(NULL, _TEXT("保存終了"), NULL, MB_OK); } else { w_lpDocument->get_parseError(&w_lpParseErr); w_lpParseErr->get_reason(&w_bstrErr); w_strErr = _bstr_t(w_bstrErr, false); MessageBox(NULL, (TCHAR*)w_strErr, _TEXT("Faild"), MB_OK); } } } } } w_lpDocument->Release(); } ためしにload失敗のところでIXMLDOMParseErrorを取得してみたら errorCodeは0、reasonは空でした・・・
428 : 試行錯誤の結果自己解決しました スマートポインタの使用に変更して、 w_lpNode->nodeValueをw_lpNode->firstChild->nodeValueにしたら ちゃんと値の変更、保存ができました お騒がせしました
429 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
430 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
431 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
432 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
433 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
434 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
435 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
436 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
437 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
438 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
439 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
440 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
441 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
442 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
443 : 糞スレ
444 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
445 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
446 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
447 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
448 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
449 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
450 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
451 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
452 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
453 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
454 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
455 : OOoのXForms文書は便利だな。 XMLファイルの入力フォームがこんなに簡単に作れるとは。 うまく作ればXMLデータベースみたいなのを作れるのかな? てかOOoの問題だろうけど、相対パスでファイル保存する方法が分からない。
456 : まあXFormsはHTML5に入れて貰えなかった時点で死んでしまったがな
457 : はぁ? Web Forms 2.0のことも知らんのか? そんな程度の知識で知ったかぶりされてもな…
458 : XFormsとWeb formsは考え方からして全く別物だろ
459 : xmlはじめようと思うんだけど、おすすめのエディタやソフトなどはありますでしょうか・・・?
460 : emacs
461 : メモ帳
462 : Eclipse
463 : vi
464 : MSXMLとIMXWriterPtrを使って、XMLをインデント付きで出力しているのですが、 アトリビュートの部分を一つごとに(または任意の文字数を超えた時点で) 改行して折り返すようなことは可能ですか? Visual Studioのプロジェクトファイルのような記述をしたいのですが。
465 : 知らんがその手のレイアウトに拘るなら手書きの方が早いんじゃないかな。 値中の < > & " をそれぞれ < > & " に書き換えることだけ気をつければ あとはプレーンテキストの出力とさして変わらないかと。
466 : ・・・まさかの参照文字変換w < > & " ね。
467 : MSのXMLライブラリは触った事がないので役に立つかは分からんが....。 公式ドキュメントに出力形式を指定するオプションが明記されていないのなら、 >>465 の手書きするという提案に賛成する。 というか、メソッドをフックするとかオーバーライトするような仕掛けは、 そのMSライブラリには用意されていないのかねえ? 自分の場合は、Rubyの標準XMLライブラリ(REXML)の出力形式に 不満があったのと、そのライブラリのAPI仕様の汚さにうんざりしていたので、 XMLライブラリを(手書きで)自作した。入力(パーズ)だけは標準ライブラリにまかせ、 あとは自作ライブラリで加工&出力するという形。 他のアプローチとしては、XSLTの採用も検討すべきかと。インデント加工を含め、 後々になってXML出力をカスタマイズしたいという要望はたびたび起こるもの。 だから、その加工処理をプログラムのロジックとして埋め込むのではなく、 XSLTプロセッサに変換(Transform)をまかせるという考え方。 MSもXSLTライブラリは提供しているのではないかと思う。
468 : >>467 XSLTで、属性ごとの改行もできる?
469 : >>465-467 たしかに読み込みとは違ってパーサ処理も不要ですし、 文字列をUTF8にするルーチンさえ作ってしまえば、 自前でテキストファイルに出力して折り返しなども自由にできますね。 そっちの方向でも調査してみたいと思います。 このスレッドは定期的に見させていただきますので、 もしMSXMLやIMXWriterPtrの使いかた次第で可能になる方法をご存じであれば、 引き続き情報を教えていただけると嬉しいです。 ありがとうございます。
470 : XMLって、HTMLの延長線上かと思ってなめてかかったんだけれど、そんなレベルじゃなかったね 他プログラミング言語やってたから何とかなったが、いきなり最初からXMLとなったら難しいだろうな、と思う
471 : XMLのいいリファレンスサイトってどっか無いですか? ココ(http://msdn.microsoft.com/ja-jp/library/ms256177.aspx )はごちゃごちゃしてて見にくいです
472 : >>471 直に規格に当たるのが一番
473 : >>472 W3Cって事ですか? 自分、英語があまり得意ではないとです・・・
474 : 英語ドキュメントが読めないと、この世界じゃ生きられないぞ 翻訳サイト使ってでも頑張って読め
475 : 『10日で覚えるXML』にXMLSchemaの部分で書かれていたのですが、 <ym:books xmlns:ym="urn:books" title"一覧"> の<ym: > って何ですか? その記述に関しては何も書かれていないし、ネットで検索しても自分には出てきませんでした この<ym: >の部分の意味、そしてこの構文の名前(又はこの説明の載っているサイト)を教えていただけませんか?
476 : >>475 >>235
477 : >>476 あぁ、名前空間だという事ですね
478 : 違う、それは名前空間接頭辞。ymをmyと置き換えてもhhhhと置き換えても同じ。 なんならym:booksをただのbooksにして、xmlns:ymをただのxmlnsに置き換えても同じ。
479 : XMLParsedErrorオブジェクトに属するerrorCodeプロパティのエラーコードについて質問させていただきます ココでのエラーコードは http://msdn.microsoft.com/en-us/library/ms681382%28VS.85%29.aspx http://msdn.microsoft.com/ja-jp/library/bb166520.aspx http://msdn.microsoft.com/ja-jp/library/cc189020%28VS.95%29.aspx これらのどれに属する(又はどれでもない)のでしょうか? このプロパティの各エラーコードの内容を確認したいのですが、出てきませんでした
480 : CSVの時代遅れで、XMLの時代と聞いたので調べてみたのですが http://www.atmarkit.co.jp/fwcr/rensai/imasara01/imasara01_01.gif すごく見づらくないか 各要素が何を指しているのかがわかりやすいが、こんなもん? それとも表示するソフトとかあるの?
481 : テーブル状のデータを見たいだけなら CSV でもいいんじゃね? 表示するソフトってどういう形式での表示を求めているかしらんが メジャーなインターネットブラウザならスタイルシートに紐付けて表示できる。 その画像は IE のデフォルト表示だと思う。
482 : 見づらいですよ。 ていうか、適材適所です。 たとえば表計算のexport程度なら、私は迷わずCSVを選びます。 何かすでに使えるものがあって、それがxmlの入力を必要とするとかでなければ。
483 : CSVはカンマや空白、ダブルクォーテーション等の扱いがめんどい
484 : JavaだとJAXBであっさりデータバインドできるからXMLのが便利だな。 あとXMLだとCSVと似たようなことすると、構造体配列のように扱えるから、 テキストとして開いた時に可読性がいい。(好きにインデント付けられる) 何十万件というデータ量でもなければCSVでプログラム組むことはないなぁ。
485 : ミニマムに何かexportするときは"T"SVをまず選ぶかなぁ。 次にXML。CSVは他所とのやり取りで必要が無い限り回避。
486 : xml下の書き方であってる? <勇者> <HP>100</HP> <MP>100</MP> <Str>100</Str> </勇者> それと、属性はどのような場合使うべき?
487 : >100の人気に嫉妬
488 : べつに属性をどう使おうが自由だ。 個人的には <勇者 xml:id=”ChID20091124T193800”/> って感じで識別IDを置くくらいだと思う あとどうでもいいが、それだとHPとMPのMaxが分からんぞ
489 : xml:idの xml:ってどういう意味?
490 : >>489 >>475 >>235
491 : 名前空間はC++/Java/C#のプログラマとかじゃないとしっくりこないよなぁ。 iniファイルより設定ファイルとしての機能は上だけど、やりたいこと以外の情報が多すぎる。 配列にしたって [DataSet01] [DataSet02] のようにセクションに連番した方が一般人には分かりやすい
492 : >>491 むしろ XML の名前空間を理解してから Java のパッケージや C# の名前空間を理解できるようになった。
493 : >>489-490 xml接頭辞の名前空間は常にhttp://www.w3.org/XML/1998/namespace 明示的に宣言はできるけど、 他の名前空間と結びつけたり、他の接頭辞をこの名前空間と結びつけることはできない。 @xmlns:xml="http://www.w3.org/XML/1998/namespace "(可) @xmlns:xml="http://www.example.jp/namespace "(不可) @xmlns:example="http://www.w3.org/XML/1998/namespace "(不可)
494 : ドメイン取る金なんて無いから、個人のプログラムで名前空間は使わないな。 どうしても付けるなら、urn:UUIDだな。ルール上、確か有りだったはず。
495 : 名前空間URIってmailto:でもいいんじゃね?
496 : ドメイン取る金がないって .com なら年間1,000円未満、 .jp でも年間3,000円程度だぞ。
497 : >>494 data: でもOK >>495 OK
498 : >>496 しかしそのドメインをXML名前空間として使うなら、ドキュメントが存在する限り永劫にドメインを保持し続ける必要があるだろう
499 : ドキュメントがパブリックなものならドメインを保持する価値はあると思うが。 逆に非公開のドキュメントなら名前空間のドメインの存在・所有者うんぬんなんて瑣末な問題だろ。
500 : それならそもそもドメインの必要なスキームのURIなんか使わなくていいし
501 : 名前空間にドメインが必要ってのがそもそも間違った考えだな 別に他人のドメインだろうがなんだろうが、使おうと思えば使えるさ。 ただパブリックな文書でそれやると恥ずかしいだけで。
502 : http://[::1]/
503 : スタンドアローン最強!
504 : XSLTにて、基点となるカレントノードが移動するのは<xsl:apply-templates>と<xsl:for-each>の他にどのようなものがあるのでしょうか?
505 : 『10日でおぼえるXML』やたのしいXML(http://www6.airnet.ne.jp/manyo/xml/) でXMLを勉強しているのですが、どうもIEだと動作するのに、FireFoxではエラーになる(又は作動しない)コードばかりです 例えば、このページ(http://www6.airnet.ne.jp/manyo/xml/xslt/step13-1.html )の下の方にあるコードを実行するとIEでは動くのに、 Firefoxでは『スタイルシートの読み込みエラーです: XSLT スタイルシートの MIMEタイプ が XML ではありません:』と表示されます どのようにすればFirefoxでも表示されるようになるのでしょうか? IEとFirefoxの表示方法の違いが分かりません 『10日でおぼえるXML』には一言も書かれていなかったのですが、XMLにもJavaScriptのようにIEとIE以外で書き分けをしなければいけないのでしょうか?
506 : XMLは実行するものではありません。
507 : こまけぇ事はいいんだよ
508 : >>505 XSLTのMIMEタイプをtext/xsltにしてるとか? まさかね……
509 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
510 : XMLドシロウトです。 OBLIVIONというゲームのUIをカスタマイズ してるんですが、解らない所があるので教えてください。 <x> <copy src="Imp_UI_Settings" trait="_wepx"/> <copy src="screen()" trait="width" /> <sub> 277 </sub> <add> <copy> 510 </copy> <!-- Defoult 510 --> <sub> <copy src="screen()" trait="width" /> </sub> <onlyif> <copy src="HUDMainMenu" trait="user3"/> <eq> 0 </eq> </onlyif> </add> </x> この、<copy src="screen()" trait="wides"> って、なにやってるんでしょうか? その前は、他のソースから値を拾ってるのは解るんですが、 screenが良く解らないのと、値の参照後に再度別のを拾っている場合、値はどうなるのか知りたいです。
511 : >>510 それはまったくXMLと関係がない。OBLIVIONとやらに限定した話。 なので、ここで聞いてもムダ。
512 : >>511 ゲームのUIですが、XMLで記述されています。 なんでここで聞くのが無駄なんですか?
513 : >>512 日本国憲法が日本語で記述されてるからといって、日本語学者に憲法について尋ねたりはしない。 ゲームのUIがXMLで記述されているからといって、XMLスレで尋ねるのはスレ違い。
514 : つまりだ、XMLが決めているのは大枠の構造だけであって、 中身のデータがどういう意味なのかは使う人(ここではゲーム作者)次第。 だから、そんなXMLの応用(アプリケーション)について聞かれても答えようがない。
515 : まあまあ。 XSLの書き方をここで尋ねるのと大して変わらんだろよ。 XSL並にメジャーなナニカと思って質問がくるなら仕方ない。 RPG記述の共通インフラとか聞いたことないからなー。 ま、おそらくはOblivion開発サイドしか知らない何かだ。
516 : LSF BOOKSとかもスレ違いなのか、その辺どうよ。 そういやXMLじゃないけど、LinuxのQ&AってSGMLじゃなかったか。
517 : Q&Aってなんだ……ミスった
518 : XSLはXML処理系だから許せるが、XHTMLとかSVGとかのXMLアプリケーションはスレ違いだろう。
519 : けど、XHTMLスレとかSVGスレってあったっけ。 さすがにゲームの設定ファイルとかは「開発元に聞け」と思うけど。 XMLが、未だに何かのアプリケーションだと思われてるのは何でだろうねぇ。
520 : 自分は、W3C・ISO・IETFで策定されたXML関連規格なら許容かな。
521 : >519 Web制作板にある。 【みらくる】XHTML 2.0 (その2)【ドリーム】 http://pc11.2ch.net/test/read.cgi/hp/1098711758/ 【XML】SVGってどうなの2【DOM】 http://pc11.2ch.net/test/read.cgi/hp/1155267046/
522 : XSL-FO「たまにでいいので思い出してください」 固有のAPIの実装由来の話もスレチじゃないか? XMLバリデータ通りませんならここだろうが。
523 : >>521 みらくるドリームて。w なにがそういわしめたんだ?
524 : そして忘れられるOASIS
525 : 書院とかあったなぁ
526 : それOASYSだから
527 : Firefox で <mo>(</mo> とかの描写が XHTML+MathML と MathML では異なるのが気になるなあ。
528 : XMLって人間が書くのではなくソフトウェアに生成させて、ソフトウェアに読み込ませるものだとか書かれているのを見てふと疑問に思って質問させていただきたいのですが、本当ですか? XMLの資格試験のようなものもあるし普通に人間がXML、XSLT、Schemaなど作るのだと思っていました あまり良くXMLの事知らないのですが、例えばどのような自動作成ソフトウェアがあるのでしょうか?
529 : >>528 その文はXMLがプレーンテキストであることの意義を見失っている 別に人間が書いてもいいし人間が読んでもいい ただXMLがソフトウェア(を作るプログラマ)にとって扱いやすいフォーマットだっていうのは確か 例えばXMLは終了タグの省略を許さないから、省略の有無を判定する必要が無い またプログラマにとってお馴染みの木構造をしているから処理するコードが書きやすい XMLを生成するソフトは山ほどあるから自分で調べてね
530 : >>529 SGML,XMLはコンピュータで文章を管理するために作られたものでそもそもは人間が扱うことは考慮してない。 プレーンテキストだから人間でも読める書けるは後付け的な結果論でしかない。 実質の問題としてSGMLの仕様は人間にはでか過ぎて複雑だし、XMLはXML hellを生んだ。 それでも手書きしようってのはコンピュータで管理するという本質から外れることになる。
531 : 簡単なXHTMLやXSLTは人間が手打ち。 逆に複雑なものやデータ交換用のものなら機械が作る でFAだろう? 違うのか?
532 : 話を外れるけどプレーンテキストって言葉を間違って使ってた http://en.wikipedia.org/wiki/Plain_text http://www.artima.com/intv/plain.html テキストファイルと同じような意味で使ってしまったけど formatted text (XML等)と対置されるものなのね
533 : 何を言ってるんだ漏れは 意味付けと書式化を分けるのがXMLなのにXMLがformatted textなわけないじゃないか >>532 のバカRとか言わずにスルーしてくださいね
534 : >>530 > プレーンテキストだから人間でも読める書けるは後付け的な結果論でしかない。 人が読めると言うことも仕様の目標に入ってるよ
535 : >>530 >SGML,XMLはコンピュータで文章を管理するために作られたものでそもそもは人間が扱うことは考慮してない。 ウソを書くのはイケナイ。 SGMLやXMLは、歴史的にROFFやTexと同様な書式付きテキストである。 従って、その作成が手作業で行われる(=人間があつかう)ことは考慮されている。 コンピュータによる自動作成こそ後付け的な結果論である。 >>530 のバカR
536 : 人間が扱うの考慮しなかったら、バイナリでいいがなw わざわざパースするのに時間かけている訳だし
537 : 殺伐としているようで実に和やかなスレだなw
538 : XMLってバイナリバージョンもあった気ガス
539 : 転送効率上げるためのやつだっけ
540 : >>535 自動生成とは言ってないだろ。管理と言ってる。 管理とは紙媒体の電子化およびその文章の長期間に渡る参照だ。 ついでにプレーンテキストなのはバイナリにするとソフトのバージョンアップで互換性が失われるのを避けたからだ。
541 : なんでやねん。
542 : >>540 長期間参照可能なものにするには 人が読めるってのは絶対条件じゃないか ソフトは容易に紛失しうるし手に入らなくなったりもする もし文書がバイナリで保存されていたらお手上げ そういったときに人が読める(=解釈できる)ってのは凄く大きい
543 : >>長期間参照可能なものにするには >>人が読めるってのは絶対条件じゃないか いや、それはさすがに無理がある
544 : >538 そーいや検討してたよなーと思って見に行ったらつい先頃 Candidate Recommendation になってたわ。 ttp://www.w3.org/TR/2009/CR-exi-20091208/
545 : Opera 10.10というブラウザを使っての XMLの表示について質問があります。 hoge.xmlとhoge.xslファイルを書きまして、 hoge.xslファイル内の<xsl:copy-of>要素を使って、 hoge.xml内の<table>要素をHTMLとして表示しようとしています。 IEでは表示出来てしまったのですが、 OperaとFireFoxでは数珠つなぎのテキストが表示されてしまいます。 hoge.xml内の<table>を抜き出して HTMLファイルとしてOperaやFireFoxに渡せばキチンと表示してくれるので、 XMLの<xsl:copy-of>要素が反映されていない…と推測しているんですが、 いかんせん当方力量不足なもんで… ちなみにソースは「たのしいXML」というサイトの ■XMLをIEで表示(基礎編-1) - 34. xsl:copy-of ttp://www6.airnet.ne.jp/manyo/xml/xslt/step30.html です。 こちらのサイトではあくまで「IEで」と謳っているので、 何かしら手を加えなくてはならないのは重々承知しています。 もしヒントなどありましたらご教授お願いします。
546 : <xsl:output method="html" />
547 : >>546 ちゃんと出力方法を指定しなくてはならなかったんですね。 お陰様でしっかり表示されるようになりました。 ありがとうございます。
548 : DOMを使用して、以下のfoobarstringを除去したいのですが、 どのように記述すればよいでしょうか? <test>に対してnodeValue =''にすると中身がすべて消えてしまいました。 <test> foobarstring <attr>aaa</attr> <vava>bbb</vava> </test>
549 : >>548 <test>のfirstChildをremoveNode()
550 : appendChildなどであるノードの子にDocumentFragmentを追加するとします。 DocumentFragmentが5つの子ノードを持っていて、例えば3番目のノードがappendChildで 許されないノードタイプだったときに、1,2番目のノードは正常にappendされて3番目で 例外が発生して終了。それとも、5つすべてのノードがappendされずに例外で終了する。の どちらでしょうか?DOM仕様にはそのときの動作の記述が書いてないように見えるのですが。
551 : そのようなDocumentFragmentってどうやって作るの?
552 : え? 普通にdoc.createDocumentFragmentで空のDocumentFragmentを作って、例えば、 DocumentFragmentにTextノードを追加。それと他のCDataSectionノードを追加。 それで、doc自体にこのDocumentFragmentを追加する。doc自体はCDataSectionは子ノードと して許すが、Textノードは許さない。
553 : textにバイナリを記述する場合はやはりbase64などで変換しておく必要があるのでしょうか?
554 : XMLで始まる要素名は予約されてるからスレタイは規格違反
555 : Relax NGについてお尋ねします W3CのXML Schemaだと xmlns:foo="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://example.com/boo-namespace boo.xsd" としてXML側で妥当性検証用のスキーマを指定することができますが、 Relax NGにはこのような仕様はありますか? 仕様書のどこそこを読めばいいかだけでもいいので、アドバイスお願いします。
556 : すみません、訂正です。 xmlns:foo="http://www.w3.org/2001/XMLSchema-instance " foo:schemaLocation="http://example.com/boo-namespace boo.xsd" 正しくはこうです。すみません。
557 : 自己解決しました。 一通り仕様に目を通したんですが、それっぽいものが見つからなかったので 多分ISO/IEC 19757のPart10〜11辺りで策定されるのだと思います。 スレ汚し失礼しました。
558 : 勝手な思い込みで自己解決とか言わないでください。 RELAX NGとXMLボキャブラリは1対1で対応する物ではなく、 ・検証したいときに使う ・別のスキーマ使ったって構わない ・無くたって別に構わない ので、インスタンス側で何か特別な記述がある訳じゃない。 あくまで、 ・バリデータが持っている ・バインディングルールを生成する ・その他スキーマがいりそうなことに使う ためのスキーマです。
559 : >>558 反論になってねーぞ RelaxNGの内容はそうだけど、 RelaxNGをXML側から一対一対応させる別規格がISO/IEC 19797の別パートで策定される という話だろ
560 : コメントおねがいします。 書籍などのXMLアプリケーションはよく見ますが、“人”のXMLアプリケーションは 技術的にも倫理的にも可能でしょうか。 研究書の書誌情報をXML化しているのですが、このたび著者のデータベースも XML化したいと考えたのですが、氏名ぐらいしか情報が集まらない。。。 というか、集めてよいものなのか。。。 公開済みの文書とはいえほぼ無名の研究者の情報は、やはりプライベートなもの として保護されるべきなのでしょうか。 そもそも有名と無名の線引きはどこなのでしょうか。
561 : 仮に作ったとしても、 <person id="00000001"> . . . </person> というように、IDで管理することになると思うのですが、国民総背番号制みたいで なんか気が引けてしまうんですよね^^ みなさんだったらどのように作成しますか?
562 : じゃあXMLに限らず電子データとして人の情報を扱うこと自体倫理的に問題があるんじゃね? じゃあ紙ならいいの? 人間の情報を文字だけで扱うことは倫理的に問題ないの?
563 : >>560 > 公開済みの文書とはいえほぼ無名の研究者の情報は、やはりプライベートなもの > として保護されるべきなのでしょうか。 おまえ研究者じゃないな。そんなアホなこと言い出すってことは。
564 : 著者情報ということなら既存の図書DBでも参考にしてみたら? だいたい、漢字の著者名とその読み、同姓同名の場合の同定情報として生年、 というぐらいの情報が普通。
565 : DNAデータバンクとか卒倒モノだなw
566 : よく分からんから適当にアドバイスするが、 書誌情報のXMLデータベースがあるなら、普通はそこに著者名も埋めておいて 後からXQueryで取り出すなり、著者のデータを後から追加で埋めるなりするわな そこから著者データを取り出して別に管理しようってことなら XLinkで相互参照させるとかすればいいだけだろ ってか>>560 はあんまXMLがどういうものか分かってなさそうだ
567 : foafでいいんでない?
568 : DublinCoreまで話が広がるかもしれないがまあ待て。 >>560 「書籍などのXMLアプリケーションはよく見ますが」 まずはどこでなにを見たのかkwsk聞こうじゃないか。
569 : 銀行のシステムしかり、住民基本台帳しかりID使っていないデータベースが(ry >>561 にリレーショナルDBの基礎から小一時間(ry
570 : 髪の毛一本もらってきてXMLに貼り付けておくのはどうだろう
571 : 名簿って「人」のデータベースだよね 以上
572 : お前ら、>>560 に釣られ過ぎw
573 : >>570 *ML
574 : urn:dna:xxxx-xxxx...
575 : 簡単にXML読みたいのだけど ttp://hidemon-memo.blogspot.com/2009/01/codesynthesis-xsd.html これは使える?
576 : >>569 戸籍ってIDふってあるのかな?かな?
577 : DBなら内部ではふってあるだろう。 国民総背番号制は、共通のIDを使いまわすことじゃないの
578 : XMLパーサーで、C++対応しているものでお奨めは?色々あり過ぎてどれを使えばいいか分かりません。 XMLスキーマ使って妥当性検証が出来るのがいいんですが、軽量なものは無いでしょうか? Xerces-C++はDLLのサイズが大きすぎます。
579 : CodeSynthesis XSDというのも使ってみたのですが、 動作にXerces-C++が必要なようなので・・
580 : >>578 「xml parser generator」でググったらこんなの出てきた。 http://www.xmlbooster.com/
581 : XMLBoosterは・・すいませんパスです。 なんとかDLできましたが、ドキュメントはダウンロードできないし、使い方が分かりません・・。 libxml++というのはどうなんでしょう。
582 : >>579 XSD/e はダメなの?parser generatorの方。
583 : >>582 良さそうですね。 これを使ってみることにします。 ありがとうございました!
584 : Xerces-C++
585 : 専ブラでTab→Wを押してしまい間違って書き込まれちゃった。 Xerces-C++を静的リンクするには XERCES_STATIC_LIBRARYというマクロを定義しなくちゃいけないことを初めて知った・・。
586 : XMLマスターの勉強のために、XQueryのサンプルを実行したいのですが、 良い方法はないでしょうか。 準備にあまり時間がかからず、なるべく仕様に忠実なものが望ましいのですが。
587 : フリーのXMLDBなら eXistとかIBMのDB2お試し版とかOracleのBerkeleyDBXMLとか とりあえずOracleが手軽では?
588 : 自分はSaxon-HE 9.2で遊んでた http://saxon.sourceforge.net/
589 : >>587 、>>588 ありがとうございます、試してみます!
590 : フリーのXMLエディターでおすすめって何でしょう。 100KB超えるXMLファイルを編集したいのですが、 そんな大きなファイルを編集すると固まってしまうようなのばかりです。 Visual C++ 2008 Express EditionについているXMLエディタは、バリデーションやオートコンプリートも可能で重くもなりませんが、 手軽にインストール出来ないのが難点です・・。 EclipseのXMLエディタも高機能ですが、大きなファイルを編集しようとすると結構重いんです。
591 : >>590 テキストエディタ以上の部分で何を必要としてるかわからないんだけど、 ハイライト、バリデーション、補完ぐらいなら jEdit + XML プラグインを 試してみるといいかもしれない。 jEdit - Programmer's Text Editor http://pc12.2ch.net/test/read.cgi/software/1196182758/
592 : 申し訳ないのですが,ご質問させてください. vc++2008のexpress editionの環境で,msxml6.hをインクルードし, xpathで要素を指定し,任意の要素のtextを取得することはできるのですが. 要素の内容を書き換えることができません. 例)<width unit="millimeters">230</width>→<width unit="millimeters">100</width> 上記のような操作を行うためのサンプルコードなどが記載されているサイトをご存じないでしょうか. それとも,msxmlは,ただ読み込むだけの機能しか持たないのでしょうか. お教えください.よろしくお願いいたします.
593 : >>592 > 要素の内容を書き換えることができません. どういうコードで書き換えができなかった? ふつうにDOM操作するだけですよ。
594 : XPathは文書中の場所を表現するだけXPathで表された場所にあるものをDOMなど文書を書き換えれるAPIに渡せば可能。 XPathは操作用の仕様ではない。 もし、意味が分からんならそーすうp。
595 : >>591 jEdit使ってみました。 確かに軽いのはいいんですが、Eclipseについてるものほど高機能ではないのがちょっと (スキーマにdocumentationを設定していても表示されないとか、 属性の値の補完が出来ないとか)
596 : 「タグの間にデータまたはノードが存在しない部分」のマッチで困っております。 お分かりの方、ご教授ください。 サンプルのような文書で、<c id="2" x="val2"> と <c id="3" x="val3"> の間に 何も無い場合にマッチしたいのですが、どのようにすればマッチできますか。 マッチしたい部分: <c id="2" x="val2">str a - 3</c><c id="3" x="val3">str a - 5</c> サンプル: <?xml version="1.0" encoding="utf-8"?> <root> <pair> <a><c id="1" x="val1">str a - 1</c>str a - 2<c id="2" x="val2">str a - 3</c>str a - 4<c id="3" x="val3">str a - 5</c></a> <b><c id="1" x="val1">str a - 1</c>str a - 2<c id="2" x="val2">str a - 3</c><c id="3" x="val3">str a - 5</c>str a - 4</b> </pair> <pair> <a><c id="1" x="val1">str b - 1</c>str b - 2<c id="2" x="val2">str b - 3</c>str b - 4<c id="3" x="val3">str b - 5</c></a> <b><c id="1" x="val1">str b - 1</c>str b - 2<c id="2" x="val2">str b - 3</c>str b - 4<c id="3" x="val3">str b - 5</c></b> </pair> </root> 自分で「//b/c[@x=val3]/preceding-sibling::text()[1]」や 「//b/c[@x=val3]/preceding-sibling::*[1]」などを試して「前一つのノードを マッチ」するところまで来ましたが、問題の部分のマッチはできませんでした。
597 : ttp://www.w3.org/TR/2010/WD-xml-c14n2-20100304/ C14n2の最新ドラフトが出てた
598 : あと、これすごく重要なDraftだと思う Associating Schemas with XML documents 1.0 (First Edition) ttp://www.w3.org/XML/2010/01/xml-model/ PIでXMLとスキーマを関連付ける仕様。>>555-557 で言ってるようなやつね。 代わりにISO/IEC 19757の10部がcancelledになってる
599 : たとえばDTDの代わりに <?xml-model href="urn:publicid:-:W3C:DTD+XHTML+1.1:EN"?> みたいな風に書けるわけだ。
600 : xslt(xpath?)の質問です。 入れ子のこんな文書でそれぞれの深さの"node"でテンプレートを呼び出したいと思います。 <node name="root"> <node name="node1"> <node name="node11"> <node name="node111"> </node> <node name="node12"/> <node name="node23"/> </node> <node name="node2"> <node name="node21"/> <node name="node22"/> </node> </node> </node> しかし<xml:template match="node">とやると一番上の<node name="root">しかマッチしません. match="//node"でも同じです. "/*/node"とか"/*/*/node"とかするとそれぞれの深さのnodeにはマッチ するのですが、全ての深さでマッチするにはどういう記述式があるのでしょうか?
601 : >>600 × <xml:template match="node"> ○ <xsl:template match="node">
602 : <apply-templates select="//node" />
603 : >>602 お〜出来た。 ありがとうございます!
604 : W3C XML Schemaをちょこっと拡張して使うという手法はあるのでしょうか? データモデリングに使いたいと検討しているのですが、例えば <xsd:element name="hoge" type="xsd:string" access="readOnly"> というような感じで"access"というような感じの属性を追加したいと思います。 それ以外はほとんど流用出来る様な気がするのでわざわざそれだけの為に 自分でスキーマ言語を定義したくないと希望しているのですが。
605 : スキーマに属性を追加できたとしてどうなるの? その例の readOnly の意味が分からないんだが。
606 : XMLのドキュメントを表す為のスキーマでは無く、あくまでも抽象的なデーターモデルとして スキーマとして使おうと思ってます。 で、例えばデータが読み書き出来る種類なのか、 読む事だけが出来るデータであるかでそのスキーマを使った派生物(データのアクセス層のコード、 UI等)を生成しやすくしたいと。 (SNMPのMIBのACCESS属性の概念が頭にあります) もちろんその情報を全く別に供給することも可能でしょうが、スキーマを拡張出来ればより コンパクトに表現が出来ると期待してます。
607 : 名前空間別にすればいくらでもやって構わない気がする 気がするだけでスキーマ読んだ上で発言してるわけじゃないけど
608 : なんでそれをスキーム側だけでやるんだ。 例えばだが、スキームを適用するXMLの方を@xmlns:xreadと@xread:readOnlyで拡張して XML Schemaで@xread:readOnlyの値を制限する方が 使いやすい上に便利だと思うけど
609 : >>608 すみません、申し訳ないのですが理解出来ません.@は何を意味するのでしょうか?
610 : つ at
611 : at -> atr -> atrb
612 : しっくり来ないのでやっぱりRelax NGにしようかなとしばらく検討。 これで まあ行けそうかなと思ってたらYANGというIETFで開発しているデータモデル言語に 巡り会いました。 自分の希望している機能は全てある感じですのでこれに決定。 なによりもXMLでないので読みやすくていい(YINというXMLバージョンもあり)。 Relax NGのcompact syntaxよりさらに簡素でこんな感じ; list interface { key "name"; leaf name { type string; } leaf speed { type enumeration { enum 10m; enum 100m; enum auto; } } leaf observed-speed { type uint32; config false; } }
613 : YANGてドラフトの途中じゃなかったっけ。 性質的にはスキーマやMLやIDLと同じもんなんだがスキーマ定義がいやとか言ってる奴が使える代物なのか? 普通こういう生な部分触りたくない場合はジェネレータに吐かせるもんだと思うんだが。
614 : >>613 現在ドラフト12まで改訂され、この版でRFCになるためのlast callがかけられてますので ほぼ最終版に近いと言っていいと思います。 > スキーマ定義がいやとか言ってる奴が使える代物なのか? とりあえず一週間ほどいじってみて、スキーマからCLIのコマンド自動生成、コマンドパーザー、 CLI<->アプリケーション間のメッセージ定義、エンコーダー、デコーダー、ディスパチャーのコードを 全て自動生成するプロトタイプが出来ました。 YANGパーザーはPythonで書かれたPyang、コード生成には Pythonテンプレートエンジンのcheetahを使用。 生成されたコードは全てCのみ。 一度完成すると、ひとつデータをスキーマに追加してフルビルドすると、アプリ側でディスパチャーから 呼ばれる関数が1つundefinedと出るので、その関数を書いて、値を引っぱって自動生成されたエンコーダー 関数を書くだけ。 今まで色んな「フレームワーク」を使って来ましたが、これは自分の必要な機能だけを生成する、 「フレームワーク生成フレームワーク」とでも言える、自分に取って理想の開発環境です。
615 : データにバイナリ記述できるXML仕様ってないですか?
616 : Base64エンコードという発想はないのか君は
617 : XML バイナリ、で検索すればわらわら出てくる。
618 : 結果をよくみろ。xml バイナリで検索したらEXIとかのバイナリーxmlが出てくる。 バイナリを直接埋め込むんじゃなくてリンクすればいいんじゃないの? 直接だとbase64くらいが妥当。
619 : >>618 リンクってのはどういった方法でしょうか?
620 : >>619 1. バイナリをどっかにおいとく 2. おいた場所へのリンクをXML中に記述する
621 : SOAPならSOAP with attachments
622 : 懐かしいな、MTOMとかストリーミングできなくて昔悩んだ。
623 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
624 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
625 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
626 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
627 : ここ http://www6.airnet.ne.jp/manyo/xml/schema/step46-2.html とか見てるんですけど namespace の解釈の仕方がよくわからないので教えてほしいです testA.xsd <?xml version="1.0" encoding="UTF-8" ?> <xsd:schema targetNamespace="http://test/nsA " xmlns:xsd="http://www.w3.org/2001/XMLSchema "> … testB.xsd <?xml version="1.0" encoding="UTF-8" ?> <xsd:schema targetNamespace="http://test/nsB " xmlns:xsd="http://www.w3.org/2001/XMLSchema "> <import namespace="http://test/nsC " schemaLocation="testA.xsd"/> … として testB.xsd が testA.xsd をインポートすると、targetNamespace のネームスペースがhttp://test/nsC に置換されたものと解釈すればいいのか それとも、targetNamespace 等が設定されていない時に http://test/nsC が適用されると考えればよいのか、もっと別の解釈なのかと 正しい所はどこなんでしょうか?
628 : eclipseで人気のあるxmlプラグインの名前を教えていただけませんか?
629 : ごめんなさい、eclipseスレがありました そちらへ移動します
630 : >>627 testB.xsdの<import>はエラーになるんでない? <import namespace="http://test/nsC " ... />は、"http://test/nsC "という名前空間がついた スキーマ(が世界のどこかにあって、それ)をインポートするよ、という宣言。 schemaLocationはオマケで、スキーマ定義を入手できるであろう場所のヒントでしかない。 XML SchemaプロセッサがschemaLocationにしたがってtestA.xsdをゲットして処理したら、 targetNamespaceが"http://test/nsC "じゃないんで、エラーになるんじゃないかと思う。 XML Schema Part 1の§4.2.3のSchema Representation Constraint: Import Constraints and Semantics(スキーマ表現の制約:importの制約と意味) ttp://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#src-import の3つ目の条件では、次のいずれかだ、と書いてある(意訳)。 ・namespace属性がある場合は、importされるスキーマのtargetNamespaceと一致しろ。 ・namespace属性がない場合は、importされるスキーマにtargetNamespaceがあってはダメ。
631 : いやまぁ
632 : 確実にエラー出る
633 : XSLTの質問なんですが、以下のxslを自分自身に作用させると a a b の後にcontent以下のテキストが表示されます。(aは何故2回出力される?) その後、コメントアウトすると組み込みテンプレートルールを上書きするためcontent以下のテキストは消えます。 ただ、bも表示されなくなるのは何故なのでしょうか 優先度の問題かとも思いましたが、priority="3"とかにしても同じ結果になります。 変換はmsxmlでやってます <?xml version="1.0" encoding="Shift_JIS" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform " xmlns = "http://www.w3.org/1999/xhtml " > <xsl:template match="/">a <xsl:apply-templates /></xsl:template> <xsl:template match="/xsl:stylesheet/content/child/text()">b <xsl:value-of select="."/></xsl:template> <!-- <xsl:template match="text()">c </xsl:template> --> <content xmlns="http://www.w3.org/1999/xhtml "> <child name="kebin"> this is child <grandchild>this is grandchild</grandchild> child end </child> <child name="john"> this is child2 <grandchild>this is grandchild2</grandchild> child end2 </child> </content> </xsl:stylesheet>
634 : 自己解決しました。 xmlns = "http://www.w3.org/1999/xhtml " これが原因
635 : <a>hoge<b>fuga</b>piyo</a> hogeだけ、やpiyoだけ、はXPathでどう表すの?
636 : a/text()[1], a/text()[2]
637 : >>636 おお、出来た!ありがとう。こんな書式があったんだ 今、xml->xhtmlなxsltを書いてて <mail href="hoge@fuga.bar.foo.bar.baz.com">メールを送る</mail> 自分の名前空間でこんなタグを作ったんだけど この時のhrefの値を入力としてメールアドレスを 暗号化するようなことってxsltで実現は出来るの? xsltでどこまで出来るのかわからなくて
638 : どういう暗号化なのか知らんけど、使ってるXSLTエンジンが自作関数を組み込める機構をもっていれば何でもできるんじゃね。
639 : MSXMLには<msxml:script>なる拡張機能があるね。 tp://msdn.microsoft.com/en-us/library/ms256042(v=VS.85).aspx こりゃなんでもできそうだな。
640 : いい情報をありがとう JavascriptやらC#,perlなんかも呼べるみたいだね perlが使えるとか、もうね、ワクワクしてきた 暗号化っていっても、スパム先アドレス集めてる クローラがだませればいい程度なんで シーザー暗号/HTMLエスケープ/実体参照あたりを 組み合わせるぐらいの簡単なやつだよ
641 : >>640 クローラ程度なら独自定義の実体参照でもうお手上げなんじゃない?
642 : 既にあるHTML/XHTMLコードをコピペして、それを使いたいんですが XSLTで変換せずにXHTMLとして実行するような方法ってありますか? <![CDATA[ を付ければ完全にエスケープしてしまう value-ofを使ってもエスケープされて実行はされない 一つ一つ変換するXSLTコードを書けば出来るが、作業が大変過ぎる
643 : >>642 実行というのがよくわからんが、copy-of ?
644 : ありがとうございます。やってみました(下のB)。 望みの動作に少し近づいたのですが 元のコードの修正が必要な可能性があるのと、名前空間がくっつく問題が出てきました 質問の仕方が悪かったのと勘違いもあったので状況整理します xml -> xslt -> xhtml という状況で、xmlにHTMLのコード(XMLとして妥当でない可能性もある)を貼り付けたい xmlはこんな感じです <?xml version="1.0"?><code xmlns:my="http://a.com "> <!--例えば<html><br></html>みたいなのを張りたい--> </code> A xml側で<![CDATA[ <html><br></html> !]]>とするとエスケープされてしまい、出力結果では文字になってしまう B brは妥協して手動で<br/>になおしてxml側に記述することにして xslt側でcopy-ofを使うと <html xmlns:my="http://a.com "><br/></html>のように不要なxmlnsがついてしまう 貼り付けるコードは修正したくないので<html xmlns="http://www.w3.org/1999/xhtml "><br/></html>のようにはしたくない C brは妥協して手動で<br/>になおしてxml側に記述することにして <xsl:template match="my:html"><xsl:element name="html">... </xsl:template> こんなのを必要なだけ書く。大変 しかも、上の例ではMSXMLのバグなのかmatch="my:html"ではマッチせずmatch="html"でマッチする 出力結果にはちゃんと<html xmlns:my="http://a.com. ">みたいなのがついてくるのに。
645 : Cを動作させたときのサンプルです <?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns="http://www.w3.org/1999/xhtml " xmlns:my="http://a.com " xmlns:xsl="http://www.w3.org/1999/XSL/Transform " > <xsl:template match="html"> <xsl:copy-of select="."/> </xsl:template> </xsl:stylesheet>
646 : >>645 Cじゃなくて、Bでした、すみません
647 : 方法その1 入力: <code xmlns="http://example.com/code "> <html><head><title></title></head><body></body></html> </code> XSLT: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform " xmlns:code="http://example.com/code "> <xsl:template match="/"><xsl:apply-templates/></xsl:template> <xsl:template match="code:code"><xsl:apply-templates mode="enhtml"/></xsl:template> <xsl:template mode="enhtml" match="*"> <xsl:element name="{local-name(.)}" namespace="http://www.w3.org/1999/xhtml "> <xsl:apply-templates mode="enhtml" select="@*|node()"/> </xsl:element> </xsl:template> <xsl:template mode="enhtml" match="@*|text()|comment()|processing-instruction()"> <xsl:copy> <xsl:apply-templates mode="enhtml" select="@*|node()"/> </xsl:copy> </xsl:template> </xsl:stylesheet>
648 : 方法その2 入力: <code xmlns="http://example.com/code "> <![CDATA[ <html> <head> <title></title> </head> <body> <br> </body> </html> ]]> </code> XSLT: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform " xmlns:code="http://example.com/code " > <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> <xsl:template match="code:code"> <xsl:value-of select="." disable-output-escaping="yes"/> </xsl:template> </xsl:stylesheet>
649 : あと、HTMLのXHTML化にはHTML Tidyとか。
650 : まさか2つとも解決方法があるとは思いませんでした TidyってW3Cの中に人が作ってるツールなんですね [―{}@{}@{}-]さん、色々とありがとうございました。 初心者には、XSLTは本当に罠が多いです apply-templatesの規則(C++のtemplateみたいなのが良かった) 組み込みテンプレートルール XPATHは添え字が1から MSXMLはXHTML1.1で動かない xmlnsはバックスラッシュの有無で動作しない xsl:ifにelseがない(choose) 独自定義したnsのマッチの仕方 最近は、最初にこんなの書いてます <xsl:template match="*|@*|text()|q:*" priority="-1.0" />
651 : >MSXMLはXHTML1.1で動かない xmlしょりするのにmsxml使うのが間違い
652 : <articles> <article id="1234"> <np>政府</np>が<pred>発表し</pred>た経済政策では・・・ </article> </articles> みたいなXMLがあるとき、<pred>発表し</pred>をコンテキストノードとして 同じarticle内のこれより前のテキストノードをすべて取得するには どういうxpathを書くのが効率的でしょうか。 "preceding::text()[ancestor::article[@id=1234]]"で一応できたんですが 文書中で前にあるテキストノードをすべてテストしているのか 文書の後の方になるにつれて極端に処理が遅くなります。 使用しているのはRubyとMSXMLです。
653 : preceding-sibling::text()|preceding-sibling::*/descendant::text()
654 : ヤフーファイナンスから株価を取得するのをEXCELのVBEとXMLで作ったんですが、遅いです。 もっと高速化するにはどうしたらいいのでしょうか?
655 : >>654 全然詳しくないけど、まずはどこがボトルネックになってるのか調べるのが良 いんでは?
656 : マジレスするとEXCELで作るのがそもそも間違い VB.NETかC#なんで拾ってEXCEL操縦して吐き出させた方が良い
657 : msxmlならボトルネックはExcelだろうから VBやC#使ったって一緒だろ Excelのセルに出力する方法を工夫しないと
658 : 質問です。 <xs:element>の子要素に<xs:complexType>を書くのと、 <xs:element>と<xs:complexType>を別々にして<xs:schema>の子要素とするのは、 何が違いますか? 簡単で結構ですので、教えてください。 1. <xs:schema (属性省略)> <xs:element name="customer"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> 2. <xs:schema (属性省略)> <xs:complexType name="customer"> <xs:sequence> <xs:element name="name" type="xs:string" /> </xs:sequence> </xs:complexType> <xs:element name="customer" type="customer" /> </xs:schema>
659 : 何も違わない あえて言うなら使いまわせるかどうか・見た目
660 : 下見たいな感じでxml⇔csvの相互変換掛けられる物ってない? <data> <chara> <hp>11</hp> <mp>12</mp> <magic> <fire>13</fire> </magix> <gold>14</gold> </chara> <chara> <hp>21</hp> <mp>22</mp> <magic> <fire>23</fire> <ice/>24</ice> </magix> <gold>25</gold> </chara> </data> data chara hp,mp,magic,,gold hp,mp,fire,ice,gold 11,12,13,,14 21,22,23,24,25
661 : ルールがわからん
662 : XMLパーサとスクリプト言語で自作したほうが早そう
663 : 949 :Name_Not_Found :sage :2011/04/14(木) 18:08:19.21 ID:??? Efficient XML Interchange (EXI) Format 1.0 (p)ttp://www.w3.org/TR/2011/REC-exi-20110310/ 出たな。なあ、これWebで使えると思う? XHTML5をはじめ、 MathML, SVG, SMIL, XBRL, Atom, RDF/XML, ebXML, XML Schema, DSDLのXML構文を使うもの、etc…… これらがコンパイルされてWebがもっと高速になる日は来るのだろうか
664 : ないない、SCSUとBOCUさえ禁止されたのに
665 : <video> <title>動画のタイトル</title> <url>http://</url> </video> <video title="動画のタイトル" url="http:// " /> イマイチ使い分けがわからないのですがどちらがお勧めなのでしょうか?
666 : 好きにすればいい
667 : とりあえずHTMLではtitleを属性ではなく要素にしたのは失敗だったって言ってるな
668 : >>665 親要素に対して1:1対応だから属性ってルールにしてみたり、 長くてウザいから子要素に逃がすってルールにしてみたり、 必須項目だから属性ってルールにしてみたり、 複数になる可能性もあるかもしれないなぁとか思いながら子要素にしてみたり、 適当に悩む。そして>>666 の境地に達する
669 : XMLは糞
670 : だがIT業界の堆肥となる
671 : XMLファイルのツリー構造をそのままディレクトリ構造に出力するツールってありませんかね
672 : 超絶なげぇスパゲッティコードそのものだよな>xml 関数とか構造体とかファイルのインクルードも入れるべきじゃね?
673 : >>671 JKでないだろ。 汎用用途がなさそうだから。 SAXパーサーで自作しても、すぐに できそうだが。
674 : xml書くよりシェルスクリプト書いた方が手っ取り早そう
675 : XMLで記述するようなプログラミング言語ってあるのかねえ。
676 : ゲームエンジンのスクリプトとかだったらあるようだよ
677 : 初心者ですが質問させてください test.xml?id=123とかやってid=123をGETで取得することってできますか?
678 : 日本語でおk
679 : 1. スレ違い 2. 板違い 3. 環境変数QUERY_STRING 4. その他 さあどれだ
680 : すみません。 えーと、xmlのことまったくわかってない初心者です。phpならそこそこわかります。 例えばtest.xml?id=123にアクセスして変数idの値123を表示することは可能でしょうか?
681 : >>672 昔XIncludeというものがあったが完全に無視された
682 : >>675 XSLTは一応チューリング完全らしいが
683 : >>680 XMLにそんな機能は無いよ。index.html?id=123とかと一緒 仮にApache+PHPならAddHandlerとActionディレクティブ使って test.xmlへのアクセスをtest.phpへのアクセスにすりかえたうえで$_GET['id'] これで解決しないなら基本的には板違いなので 実行環境(Webサーバ、言語、フレームワーク)を沿えてWebProg板へ
684 : データを含むスクリプトと思いきや ただの言語であり、ステップ実行もトレースもできない バグったらどうしようもない書くだけ時間の無駄の糞フォーマット だったが、最近は違うのかね?
685 : >>683 そうなんですか。ありがとうございます。 データの受け渡しできないんですか。残念。。
686 : > データを含むスクリプトと思いきや なぜそんな勘違いをしたのかの方が興味深い。
687 : >>686 そこは重要じゃないな >ステップ実行もトレースもできない >バグったらどうしようもない書くだけ時間の無駄の糞フォーマット ここに関してはどうかね? 最近、少しはましになってるのかね?
688 : >>685 残念とかそういうレベルの問題じゃない たぶんお前のやりたいことはtest.php?id=123でできそうな気がするけど 板違いすぎるからWebProg行けと言っただろ
689 : 他人を罵倒するのが僕の生きがいです、まで読んだ
690 : SAXONで変換を行った際に、文字数字参照をさせない方法ってある??
691 : DOMオブジェクトとしてメモリにロードできないような超巨大XMLデータを扱う機会ってどういう場面ででくわすんでしょうか?
692 : l、、_ _,/'} |ヽ''~ ̄ ̄ ̄~`ヾ /_,,,.. ..,,,_.`v_'`、 /: ━ ━ | ニ_} / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |:: ∈∋ ヽ | < <response action="age" period="regularly" /> //:: -=,=.ヮ. |ヽ、| \________ /'../:: /∠.._ |、.ノ /':::|:::  ̄ ̄ |./ !-'L|::. v' . ヾ:::.. / . , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、 'ー┐,,..、_ ノ l_,,,...、 _,,一
693 : >>691 XDBとか?
694 : XSDをオッサンSEでも理解できる仕様書HTMLに変換するXSLTファイルくれ
695 : アプリケーションの設定を保存するのにMSXMLを使おうとしているのですが、 XMLでは要素名や属性名は必ず大文字小文字が区別されてしまうものなのでしょうか? それとも、事前のパラメータなどによって同一視させることもできるのでしょうか?
696 : XMLについて1から学ぶべきだ
697 : XSLで <!DOCTYPE html> とか、どうやって出せと。
698 : xsl:outputで @methodをtextに @media-typeをtext/htmlにする
699 : >>665 基本的に下だな。 上の文字列ノードは、HTMLと違ってネストで修飾できるようなメリットがない。 あと、タグを拡張しようとしたとき、文字列ノードとタグのノードは共存できないから、 文字ノードが邪魔になる。
700 : MSのxml notepad使いながらxmlの勉強してるんだが、 下のエラー出るはずのコードがパースエラーにならないんだが、何でか教えてくれ。 xmlマスターの教科書に載ってたサンプルだ。 ------test.xml------- <?xml version="1.0" encoding="Shift_JIS" ?> <!DOCTYPE root SYSTEM "test.dtd"> <root attr="16000"> ------test.dtd------- <!ATTLIST root attr CDATA #FIXED "20000"> <!ELEMENT root (#PCDATA)>
701 : <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE root [ <!ATTLIST root attr CDATA #FIXED "20000"> <!ELEMENT root (#PCDATA)> ]> <root attr="16000" /> 要はこれが通るってこと? そりゃ、チェックが甘いだけ。ちゃんとしたValidator使いなよ W3Cのとかに通せばエラー出るよ ttp://validator.w3.org/
702 : >>701 おお!!エラー出た!! こんなものがあるとは、ありがとうございます!! 他にも2つパースしてくれるXMLエディタで試したんですけど、 エラーが出なくって、途方に暮れておりました。 Validatorで検索すればいいのか。
703 : VC#2005なんですが XPATHで属性値にダブルクォーテーションが含まれる値を探す方法教えてください ------------------------------ <?xml version="1.0"> <root> <data key=""1"" value="あ"/> <data key=""2"" value="い"/> <data key=""3"" value="う"/> </root> ------------------------------ この文書のvalue「い」を得ようとkeyの値から探そうとして SelectSingleNode("/data[@value=""2""]/@value") とやると全くヒットしないし SelectSingleNode("/data[@value="\"2\""]/@value") SelectSingleNode("/data[@value="""2"""]/@value") とやってもInvalid Tokenって怒られるし じゃあどうすればValidなんですか?
704 : 訂正orz ------------------------------ <?xml version="1.0"> <root> <data key=""1"" value="あ"/> <data key=""2"" value="い"/> <data key=""3"" value="う"/> </root> ------------------------------
705 : なんでXPathのほうでは実体参照してないの?
706 : XmlNode node = doc.SelectSingleNode("/root/data[@key='\"2\"']/@value"); Console.WriteLine(node.Value); これでとりあえず取れるようだけど本当はどう書くべきなんだろう
707 : & " '
708 : 706の方法では'と"が混在してるとダメだと思う
709 : たしかにそうなんだけど、次のコードがnullを返すので困っちゃう doc.SelectSingleNode("/root/data[@key='"2"']/@value"); 処理系が絡む話でもあるしC#書ける人あとはまかせた
710 : これもダメなの? doc.SelectSingleNode("/root/data[@key='&quot;quot;2&quot;quot;']/@value");
711 : それよりもこの板の実体参照を何とかして欲しいorz
712 : >>700 MSXML自体はちゃんとエラー検出したからxml notepadが妥当性検証を 行なっていないだけじゃね > errorReason=属性 'attr' の値は、DTD またはスキーマで定義されている > 固定値と一致しません。
713 : すみません。 プログラムの実行結果がxmlで吐き出されるので、それをパースして 変数に格納したいと思っています。 以前、Javaでxmlpullparserを利用したときは、タグを探し、 そのタグの中身を取り出すようにしていました。 今回、吐き出されるxmlの記述様式が以前扱ったことのある <タグA>変数</タグA> という形ではなく、 <タグB var_a=x var_b=y var_c=z></タグB> という形式で出力されています。 これらの変数をそれぞれ取得し、それを変数に格納したいとき それはどのようにして実現できるのでしょうか? また、言語がCなのですが、Cでも使えるXml parserのオススメがありましたらご教示願います。
714 : >>713 オプソかつ英語可でよければ libxml がある The XML C parser and toolkit of Gnome http://www.xmlsoft.org/
715 : 名前空間って深くできる? xmlns:tanaka:taro="http://hello "
716 : http://www.w3.org/TR/REC-xml-names/ [1] NSAttName ::= PrefixedAttName | DefaultAttName [2] PrefixedAttName ::= 'xmlns:' NCName [3] DefaultAttName ::= 'xmlns' [4] NCName ::= Name - (Char* ':' Char*) /* An XML Name, minus the ":" */ 何で規格読まないの?バカなの?
717 : >>716 つんでれぇ乙w
718 : というかxmlns:tanaka:taro="http://hello " はあくまで例示であって 質問の本質は名前空間をネストできるかどうかだろうに
719 : BNFもわからないようじゃXMLいじるのやめた方がいいよ
720 : ネストはできないと思うが"tanaka:taro"セットで1つの名前空間になると思う
721 : >>720 いや、xmlns: に続ける文字列には : は含められない Name - (Char* ':' Char*) は 「 Name にマッチするけど (Char* ':' Char*) にはマッチしない文字列」って意味 だよね? >>716
722 : だな。
723 : facebookのプラグインが:を含めててその要素を指定できずにStylishで消すのが面倒でしょうがない
724 : コメントに /* */ って使えるんですか? <!-- <hoge /> /* unko */ --> みたいにネストしたいんですが
725 : むしろどうして使えるかもと思うんだ?
726 : 質問です。 ヤフー知恵袋でみつけて疑問におもったんですが ------ <!ATTLIST 商品 code ID #REQUIRED> <!ATTLIST 店舗 code ID #IMPLIED> <!ATTLIST 顧客 pro_ref IDREF #IMPLIED> <!ELEMENT root (商品|店舗|顧客)*> <!ELEMENT 商品 (#PCDATA)> <!ELEMENT 店舗 (#PCDATA)> <!ELEMENT 顧客 (#PCDATA)> これだと、顧客要素のpro_ref属性が、商品要素のcode属性を参照するのか、 店舗要素のcode属性を参照するのか、分からないですよね。。 ----- これって商品要素のcode属性と店舗要素のcode属性 それぞれに一意のIDが割り振られた場合 pro_refはどっちも参照できる、であってますか?
727 : >>726 > これだと、顧客要素のpro_ref属性が、商品要素のcode属性を参照するのか、 > 店舗要素のcode属性を参照するのか、分からないですよね。。 うん。分からない。 > これって商品要素のcode属性と店舗要素のcode属性 > それぞれに一意のIDが割り振られた場合 > pro_refはどっちも参照できる、であってますか? その通り。 というか、IDREF 型となっている以上、ID 型となっているものを参照する。 ID は文書内で一意の名前を示すものなので ID 型として指定してある場合、どの要素の属性とか関係なく XML 文書全体で 一意になっていなくてはならない。 このため、商品要素の code 属性と店舗要素の code 属性の値が被ることはない。 そして、IDREF 型の顧客要素の pro_ref 属性は、商品要素の code 属性か、店舗要素の code 属性の一致するものを参照する。
728 : IDREFの対象となるのはIDだけなのですか? というのは、idとして番号を扱って、後で参照したいのです IDでは最初の1文字目に数字を用いることができません IDの代わりにNMTOKENを用いて、これを後で参照することはできないのですか?
729 : まず日本語を自由に使えるようになってからこい
730 : 虐められた(´・ω・`)
731 : >>728 仕様書のIDREFのとこの定義がそうなってるなら、そうなんじゃない。 何としても数字にしたいなら、prefixに決まった文字を付けるとかでも良いのでは。
732 : このエラーはどういう意味なのでしょうか? courses.xsd:35: element element: Schemas parser error : Element '{http://www.w3.org/2001/XMLSchema}complexType': The content is not valid. Expected is (annotation?, (simpleContent | complexContent | ((group | all | choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?)))).
733 : >>732 courses.xsdの35行目がなんかおかしいぞ、という意味です。 本来そこにあるべき文法は (annotation?, (simpleContent | complexContent | ((group | all | choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?)))) に従うべきだと言っています。
734 : <hello world="tokihatomaru"/> <hello> <world>tokihatomaru</world> </hello> アトリビュートと子エレメントはいったいぜんたいどう使い分ければいいというんですか?
735 : >>734 迷わず全部要素で表現すればよろしい。
736 : 全部アトリビュートで表現されてるXMLはそもそも設計がおかしい っていうか要件定義から失敗してるにほいがするって暴言してみる
737 : 最近はXML自体狂ったシロモノとしか思えなくなってきた 余計な技術多すぎ
738 : 具体的には?
739 : >最近はXML自体狂ったシロモノとしか思えなくなってきた 漏れは昔から思ってるよ
740 : >>738 XML本体なら名前空間かなあ 周辺技術ならXSLTや(怒られそうだけど)スキーマ 広く使われてきたXPathですらCSSセレクタの台頭でこれも立場が危うい それでもラベル付きコンテナとしてのXMLはまだだ優秀だと思う
741 : アトリビュートがいらないと思う 子要素ですべて解決するのになんであんなもの付けたんだろう
742 : JSONやCSS selectorsが主流になってwebからはほぼいらない子扱いになってきたもんな 型がないのと子要素がリストかリストでないか判別できないのも面倒 それだけのためにスキーマとかアホみたいだし
743 : >>740 >XML本体なら名前空間かなあ これには異論があるかなぁ。 例えばXHTMLに独自タグを埋め込んでビュー定義するようなテンプレート記述言語 の場合は独自タグのセットがユニークな名前空間で他から「避妊」されているから 安心して埋め込むことが出来るよね。混ぜても安全な拡張性が保証されていてしかも 可読性を下げないのは名前空間のおかげ。 特にRDFとかその応用としてのLODとかは名前空間の仕組みがないと面倒くさくて やってられん。というか、読めんw XML namespaceはXMLの面倒な機能の中でも一番便利に使われているものの一つ だと思うよ。 あとXMLスキーマは人間様が直接使うには面倒だけど、機械に書かせたり使わせ たりするにはすこぶる便利だと思う。 >>742 >子要素がリストかリストでないか判別できないのも面倒 JavaのJsonライブラリで、Beansを内部で一旦XMLに変換してそれをJsonに変換 することでBeansをJsonにシリアライズするものがあるのだけれども、仮にBeans 上でその値が配列であってもXMLに変換される際にその情報が落ちてしまい、結果 として配列に入っている要素数によってJson上では配列になったりならなかったり するという恐ろしいことになっているw
744 : ごめん。テンプレート言語はよくよく考えると関係ないか。
745 : >743 は何の価値もない糞レス
746 : JSONはJavascriptの異常な普及で台頭しているだけな気がする。
747 : 同じような型を持ってるスクリプト言語は多いし はっきり言ってXMLよりはるかに分かりやすい XML固有の用語・概念・技術なんていらねーよ
748 : >>747 言語中立な技術でよろしく。
749 : Jsonも地味に方言が酷い。 サーバ側でデータバインディングのライブラリを差し替えた途端にWebブラウザの JavaScriptコンソールが真っ赤になるとか珍しくない。 その点XMLはちゃんと整備されて使われているスキーマ記述言語を持っているので それを使ってシリアライズ結果を検証したりトップダウン的にスタブを生成したりと 特に通信周りはJson使うよりもかっちり感がある。
750 : 最近はもうテキストデータはLuaでさっと済ませてしまうことが多い
751 : 厳密なデータ受け渡しならやはりXMLですな スキーマは人間が書いた仕様書とは違って嘘をつかないw まあ、物事にはいつも例外があるけどね……
752 : ちゃんとXML Schemaが定義されていればXML文書を手打ちするときもXMLエディタが 要素の名前をサジェスチョンしてくれたり勝手にバリデーションして間違いを指摘して くれるので楽。 これで何より重宝するのがXML Schemaを手打ちするとき。XML Schemaのスキーマ 自体XML Schemaで定義されているからw
753 : 急にスレのレベル落ちたのは気のせいか?
754 : 下がったのは君のレベルじゃないのかね?
755 : レベル落ちたのはきみのせい
756 :2012/10/20 XMLソケットをはじめから勉強したいんだけど、情報が少なすぎて積んでいます。 入門に最適なサイトを教えてください
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
【QBASIC互換!?】FreeBasic【GPL】 (512)
【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (496)
【C++】高速化手法【SSE】 (864)
【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (496)
Androidプログラミング質問スレ Part26 (419)
【QBASIC互換!?】FreeBasic【GPL】 (512)
--log9.info------------------
【エロ】青春コンプレックスに悩む人2【R】 (542)
いじめる奴らは悪くない (638)
【人生】誰かがあなたの悩みに答えます514【相談】 (970)
【中部大学】Fランク大学進学3【明星大学】 (302)
男の娘に恋した話 (285)
【エロ厳禁】青春コンプレックスに悩む人Part3 (334)
虐待した親に一番いい仕返しは?5回目 (438)
鬱だ…死にたい…誰か助けて… (763)
糞親父を殺したい4 (656)
自分の人生を一言で表すなら… (805)
人を殺してもいいじゃん!弱肉強食なんだし (676)
■ 早く糞2ちゃんを辞めたい 5 ■ (824)
努力ができない。集中力が続かない。 (668)
家族といる時間が一番ストレスになる (282)
学校や街で「(頭、顔が)デカイ」と言われる悩み4 (899)
皆嫌い 皆Rばいいのに 皆大嫌い (450)
--log55.com------------------
苦手板に出没する愛誤ちゃんの研究スレ2
【ID表示】INFP型の雑談スレ【難民板避難所】 Part.2
【マオタ禁止】まったりフぃギュアスレ【アンチ禁止】15
またーりちわわヌコ6
ジェジュン🌹ヲタをヲチするスレ
【実力以上の持ち上げ】紀平梨花アンチスレ3【へらへら妖怪】
【自称】あに受け会 ヲチスレ★21
BTSの雑談スレ1555