<XML総合 part="3"/>

■ このスレッドは過去ログ倉庫に格納されています
2008/10/07(火) 17:40:09
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/
2011/05/01(日) 08:05:44.95
日本語でおk
2011/05/01(日) 08:36:18.03
1. スレ違い
2. 板違い
3. 環境変数QUERY_STRING
4. その他

さあどれだ
680677
垢版 |
2011/05/01(日) 09:33:19.49
すみません。
えーと、xmlのことまったくわかってない初心者です。phpならそこそこわかります。
例えばtest.xml?id=123にアクセスして変数idの値123を表示することは可能でしょうか?
2011/05/01(日) 09:46:44.07
>>672
昔XIncludeというものがあったが完全に無視された
2011/05/01(日) 09:47:55.76
>>675
XSLTは一応チューリング完全らしいが
2011/05/01(日) 10:01:26.71
>>680
XMLにそんな機能は無いよ。index.html?id=123とかと一緒

仮にApache+PHPならAddHandlerとActionディレクティブ使って
test.xmlへのアクセスをtest.phpへのアクセスにすりかえたうえで$_GET['id']
これで解決しないなら基本的には板違いなので
実行環境(Webサーバ、言語、フレームワーク)を沿えてWebProg板へ
2011/05/01(日) 10:30:47.89
データを含むスクリプトと思いきや
ただの言語であり、ステップ実行もトレースもできない
バグったらどうしようもない書くだけ時間の無駄の糞フォーマット
だったが、最近は違うのかね?
685677
垢版 |
2011/05/01(日) 10:58:26.20
>>683
そうなんですか。ありがとうございます。
データの受け渡しできないんですか。残念。。
2011/05/01(日) 20:55:30.79
> データを含むスクリプトと思いきや

なぜそんな勘違いをしたのかの方が興味深い。
2011/05/01(日) 23:01:20.16
>>686
そこは重要じゃないな

>ステップ実行もトレースもできない
>バグったらどうしようもない書くだけ時間の無駄の糞フォーマット
ここに関してはどうかね?
最近、少しはましになってるのかね?
2011/05/02(月) 06:36:08.92
>>685
残念とかそういうレベルの問題じゃない
たぶんお前のやりたいことはtest.php?id=123でできそうな気がするけど
板違いすぎるからWebProg行けと言っただろ
689683
垢版 |
2011/05/02(月) 23:16:36.30
他人を罵倒するのが僕の生きがいです、まで読んだ
2011/06/01(水) 00:21:34.46
SAXONで変換を行った際に、文字数字参照をさせない方法ってある??
691デフォルトの名無しさん
垢版 |
2011/06/09(木) 23:20:29.09
DOMオブジェクトとしてメモリにロードできないような超巨大XMLデータを扱う機会ってどういう場面ででくわすんでしょうか?
692デフォルトの名無しさん
垢版 |
2011/06/15(水) 10:39:41.84
      l、、_     _,/'}
      |ヽ''~ ̄ ̄ ̄~`ヾ
     /_,,,..   ..,,,_.`v_'`、
    /:  ━     ━  | ニ_}  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    |::    ∈∋    ヽ  | < <response action="age" period="regularly" />
  //::    -=,=.ヮ.     |ヽ、|  \________
  /'../::    /∠.._     |、.ノ
 /':::|:::      ̄ ̄      |./
 !-'L|::.             v'
.   ヾ:::..           /
.    , ゞ、、;;;,,_,,,..._;;;;;__,,..ノ、
    'ー┐,,..、_ ノ  l_,,,...、 _,,一
2011/06/27(月) 18:59:04.63
>>691
XDBとか?
2011/06/28(火) 20:14:16.61
XSDをオッサンSEでも理解できる仕様書HTMLに変換するXSLTファイルくれ
2011/08/17(水) 15:18:35.53
アプリケーションの設定を保存するのにMSXMLを使おうとしているのですが、
XMLでは要素名や属性名は必ず大文字小文字が区別されてしまうものなのでしょうか?
それとも、事前のパラメータなどによって同一視させることもできるのでしょうか?
2011/08/17(水) 15:48:26.01
XMLについて1から学ぶべきだ
2011/08/19(金) 01:08:26.18
XSLで <!DOCTYPE html> とか、どうやって出せと。
2011/08/19(金) 01:20:15.55
xsl:outputで
@methodをtextに
@media-typeをtext/htmlにする
2011/09/12(月) 23:03:29.84
>>665
基本的に下だな。
上の文字列ノードは、HTMLと違ってネストで修飾できるようなメリットがない。
あと、タグを拡張しようとしたとき、文字列ノードとタグのノードは共存できないから、
文字ノードが邪魔になる。
2011/09/13(火) 00:06:49.86
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)>
2011/09/13(火) 00:43:41.82
<?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/
2011/09/13(火) 00:49:35.73
>>701
おお!!エラー出た!!
こんなものがあるとは、ありがとうございます!!

他にも2つパースしてくれるXMLエディタで試したんですけど、
エラーが出なくって、途方に暮れておりました。
Validatorで検索すればいいのか。
2011/09/13(火) 21:24:25.75
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なんですか?
2011/09/13(火) 21:26:57.08
訂正orz
------------------------------
<?xml version="1.0">
<root>
<data key="&quot;1&quot;" value="あ"/>
<data key="&quot;2&quot;" value="い"/>
<data key="&quot;3&quot;" value="う"/>
</root>
------------------------------
2011/09/14(水) 05:35:27.11
なんでXPathのほうでは実体参照してないの?
2011/09/14(水) 07:15:43.76
XmlNode node = doc.SelectSingleNode("/root/data[@key='\"2\"']/@value");
Console.WriteLine(node.Value);

これでとりあえず取れるようだけど本当はどう書くべきなんだろう
2011/09/14(水) 07:49:04.27
&amp;
&quot;
&apos;
2011/09/14(水) 07:50:29.99
706の方法では'と"が混在してるとダメだと思う
2011/09/14(水) 08:26:13.93
たしかにそうなんだけど、次のコードがnullを返すので困っちゃう

doc.SelectSingleNode("/root/data[@key='&quot;2&quot;']/@value");

処理系が絡む話でもあるしC#書ける人あとはまかせた
2011/09/14(水) 08:41:57.35
これもダメなの?
doc.SelectSingleNode("/root/data[@key='&quot;quot;2&quot;quot;']/@value");
2011/09/14(水) 22:52:07.74
それよりもこの板の実体参照を何とかして欲しいorz
2011/09/21(水) 06:10:58.94
>>700
MSXML自体はちゃんとエラー検出したからxml notepadが妥当性検証を
行なっていないだけじゃね
> errorReason=属性 'attr' の値は、DTD またはスキーマで定義されている
> 固定値と一致しません。
2011/10/06(木) 17:38:41.27
すみません。
プログラムの実行結果がxmlで吐き出されるので、それをパースして
変数に格納したいと思っています。

以前、Javaでxmlpullparserを利用したときは、タグを探し、
そのタグの中身を取り出すようにしていました。

今回、吐き出されるxmlの記述様式が以前扱ったことのある

<タグA>変数</タグA>

という形ではなく、
<タグB var_a=x var_b=y var_c=z></タグB>
という形式で出力されています。

これらの変数をそれぞれ取得し、それを変数に格納したいとき
それはどのようにして実現できるのでしょうか?

また、言語がCなのですが、Cでも使えるXml parserのオススメがありましたらご教示願います。
2011/10/06(木) 17:51:28.03
>>713
オプソかつ英語可でよければ libxml がある

The XML C parser and toolkit of Gnome
 http://www.xmlsoft.org/
2012/02/02(木) 23:34:07.97
名前空間って深くできる?

xmlns:tanaka:taro="http://hello"
2012/02/03(金) 10:50:03.36
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 ":" */

何で規格読まないの?バカなの?
2012/02/03(金) 14:21:32.04
>>716
つんでれぇ乙w
2012/02/03(金) 14:41:11.46
というかxmlns:tanaka:taro="http://hello" はあくまで例示であって
質問の本質は名前空間をネストできるかどうかだろうに
2012/02/03(金) 17:57:07.78
BNFもわからないようじゃXMLいじるのやめた方がいいよ
2012/02/03(金) 21:05:49.19
ネストはできないと思うが"tanaka:taro"セットで1つの名前空間になると思う
2012/02/03(金) 22:11:58.78
>>720
いや、xmlns: に続ける文字列には : は含められない
Name - (Char* ':' Char*) は
「 Name にマッチするけど (Char* ':' Char*) にはマッチしない文字列」って意味

だよね? >>716
2012/02/06(月) 05:19:16.24
だな。
2012/02/22(水) 23:25:23.52
facebookのプラグインが:を含めててその要素を指定できずにStylishで消すのが面倒でしょうがない
2012/03/28(水) 01:15:39.08
コメントに /* */ って使えるんですか?
<!--
<hoge /> /* unko */
-->
みたいにネストしたいんですが
2012/03/28(水) 05:15:30.91
むしろどうして使えるかもと思うんだ?
2012/05/30(水) 01:42:27.83
質問です。
ヤフー知恵袋でみつけて疑問におもったんですが

------
<!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はどっちも参照できる、であってますか?
2012/06/03(日) 15:21:59.99
>>726
> これだと、顧客要素のpro_ref属性が、商品要素のcode属性を参照するのか、
> 店舗要素のcode属性を参照するのか、分からないですよね。。
うん。分からない。

> これって商品要素のcode属性と店舗要素のcode属性
> それぞれに一意のIDが割り振られた場合
> pro_refはどっちも参照できる、であってますか?
その通り。

というか、IDREF 型となっている以上、ID 型となっているものを参照する。

ID は文書内で一意の名前を示すものなので ID 型として指定してある場合、どの要素の属性とか関係なく XML 文書全体で
一意になっていなくてはならない。
このため、商品要素の code 属性と店舗要素の code 属性の値が被ることはない。
そして、IDREF 型の顧客要素の pro_ref 属性は、商品要素の code 属性か、店舗要素の code 属性の一致するものを参照する。
2012/06/19(火) 19:49:21.32
IDREFの対象となるのはIDだけなのですか?

というのは、idとして番号を扱って、後で参照したいのです

IDでは最初の1文字目に数字を用いることができません

IDの代わりにNMTOKENを用いて、これを後で参照することはできないのですか?
2012/06/19(火) 20:49:17.24
まず日本語を自由に使えるようになってからこい
730728
垢版 |
2012/06/19(火) 20:55:39.47
虐められた(´・ω・`)
2012/06/20(水) 20:56:31.65
>>728
仕様書のIDREFのとこの定義がそうなってるなら、そうなんじゃない。
何としても数字にしたいなら、prefixに決まった文字を付けるとかでも良いのでは。
732デフォルトの名無しさん
垢版 |
2012/09/11(火) 11:47:49.46
このエラーはどういう意味なのでしょうか?

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?)))).
2012/09/11(火) 14:33:23.94
>>732
courses.xsdの35行目がなんかおかしいぞ、という意味です。
本来そこにあるべき文法は
(annotation?, (simpleContent | complexContent | ((group | all | choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?))))
に従うべきだと言っています。
2012/09/26(水) 19:42:41.76
<hello world="tokihatomaru"/>

<hello>
<world>tokihatomaru</world>
</hello>

アトリビュートと子エレメントはいったいぜんたいどう使い分ければいいというんですか?
2012/09/26(水) 20:25:43.04
>>734
迷わず全部要素で表現すればよろしい。
2012/09/29(土) 01:02:42.17
全部アトリビュートで表現されてるXMLはそもそも設計がおかしい
っていうか要件定義から失敗してるにほいがするって暴言してみる
2012/09/29(土) 03:33:35.63
最近はXML自体狂ったシロモノとしか思えなくなってきた
余計な技術多すぎ
2012/09/29(土) 08:01:02.84
具体的には?
2012/09/29(土) 12:12:46.79
>最近はXML自体狂ったシロモノとしか思えなくなってきた

漏れは昔から思ってるよ
2012/09/29(土) 12:31:19.69
>>738
XML本体なら名前空間かなあ
周辺技術ならXSLTや(怒られそうだけど)スキーマ
広く使われてきたXPathですらCSSセレクタの台頭でこれも立場が危うい
それでもラベル付きコンテナとしてのXMLはまだだ優秀だと思う
2012/09/29(土) 12:43:19.04
アトリビュートがいらないと思う
子要素ですべて解決するのになんであんなもの付けたんだろう
2012/09/29(土) 12:51:35.99
JSONやCSS selectorsが主流になってwebからはほぼいらない子扱いになってきたもんな
型がないのと子要素がリストかリストでないか判別できないのも面倒
それだけのためにスキーマとかアホみたいだし
2012/09/29(土) 17:25:12.74
>>740
>XML本体なら名前空間かなあ

これには異論があるかなぁ。
例えばXHTMLに独自タグを埋め込んでビュー定義するようなテンプレート記述言語
の場合は独自タグのセットがユニークな名前空間で他から「避妊」されているから
安心して埋め込むことが出来るよね。混ぜても安全な拡張性が保証されていてしかも
可読性を下げないのは名前空間のおかげ。

特にRDFとかその応用としてのLODとかは名前空間の仕組みがないと面倒くさくて
やってられん。というか、読めんw

XML namespaceはXMLの面倒な機能の中でも一番便利に使われているものの一つ
だと思うよ。

あとXMLスキーマは人間様が直接使うには面倒だけど、機械に書かせたり使わせ
たりするにはすこぶる便利だと思う。

>>742
>子要素がリストかリストでないか判別できないのも面倒

JavaのJsonライブラリで、Beansを内部で一旦XMLに変換してそれをJsonに変換
することでBeansをJsonにシリアライズするものがあるのだけれども、仮にBeans
上でその値が配列であってもXMLに変換される際にその情報が落ちてしまい、結果
として配列に入っている要素数によってJson上では配列になったりならなかったり
するという恐ろしいことになっているw
2012/09/29(土) 17:40:14.67
ごめん。テンプレート言語はよくよく考えると関係ないか。
2012/09/29(土) 18:39:14.80
>743 は何の価値もない糞レス
2012/09/30(日) 02:45:37.54
JSONはJavascriptの異常な普及で台頭しているだけな気がする。
2012/09/30(日) 03:06:55.08
同じような型を持ってるスクリプト言語は多いし
はっきり言ってXMLよりはるかに分かりやすい
XML固有の用語・概念・技術なんていらねーよ
2012/09/30(日) 03:14:08.17
>>747
言語中立な技術でよろしく。
2012/09/30(日) 03:31:33.67
Jsonも地味に方言が酷い。
サーバ側でデータバインディングのライブラリを差し替えた途端にWebブラウザの
JavaScriptコンソールが真っ赤になるとか珍しくない。

その点XMLはちゃんと整備されて使われているスキーマ記述言語を持っているので
それを使ってシリアライズ結果を検証したりトップダウン的にスタブを生成したりと
特に通信周りはJson使うよりもかっちり感がある。
2012/09/30(日) 08:40:01.69
最近はもうテキストデータはLuaでさっと済ませてしまうことが多い
2012/09/30(日) 10:33:37.96
厳密なデータ受け渡しならやはりXMLですな
スキーマは人間が書いた仕様書とは違って嘘をつかないw
まあ、物事にはいつも例外があるけどね……
2012/09/30(日) 16:08:11.38
ちゃんとXML Schemaが定義されていればXML文書を手打ちするときもXMLエディタが
要素の名前をサジェスチョンしてくれたり勝手にバリデーションして間違いを指摘して
くれるので楽。

これで何より重宝するのがXML Schemaを手打ちするとき。XML Schemaのスキーマ
自体XML Schemaで定義されているからw
2012/10/01(月) 09:20:30.08
急にスレのレベル落ちたのは気のせいか?
2012/10/04(木) 23:47:22.19
下がったのは君のレベルじゃないのかね?
2012/10/05(金) 04:26:44.10
レベル落ちたのはきみのせい
756デフォルトの名無しさん
垢版 |
2012/10/20(土) 12:44:45.33
XMLソケットをはじめから勉強したいんだけど、情報が少なすぎて積んでいます。
入門に最適なサイトを教えてください
2012/11/06(火) 14:48:36.10
詰む*
2012/12/08(土) 17:21:25.27
測定実験結果のように
・二次元配列形式で表現できるデータ群1つ
・日付や入力パラメータなどを複数
といった構造の情報がある場合に
二次元配列形式のデータをそのままXMLに書き込むのはよくないんでしょうか?
<Data>
<Date>yyyy/mm/dd</Data>
<Table>#Key1, Key2, Key3
0, 100, 200
1, 110, 300
3, 120, 400</Table>
</Data>
といった感じで書いてるのですがテーブルをほかの単一のファイルに分離して
そのファイルのパスを<Table>要素に記述するなどとしたほうがよいでしょうか?
2012/12/08(土) 17:42:57.23
残念ながら当スレのエスパーは全員出払っておりまして。

そのXMLファイルを何に使うのかわからんことにはなんとも。
データ交換とか、何かのプログラムへの入力とか。

リストや行列を要素毎にタグでくくるのではなく空白等で区切ったベタのテキストとして
突っ込むファイル形式は、特に大きなリストや行列を扱う用途だとままある。
2012/12/08(土) 19:06:18.93
> Prnglibは、64ビットシステム用に設計された擬似乱数生成ライブラリです。
2012/12/09(日) 13:47:41.71
xml:space 属性とかまだ知らないのなら、
空白や改行に頼るデータ構造はお勧めしないとだけ
2013/02/15(金) 20:27:02.03
vbsでXMLをloadXMLで読み込むものを作っています。
Windows2008サーバ上では正常動作しているXMLを一旦WindowsXPのPCに退避しておいて
再度Windows2008サーバ上にコピーすると、「・・・無効な文字が見つかりました。」で読めなくなってしまいます。
どういう原因が考えられるのでしょうか。XMLはコピーしただけで一切更新していません。
2013/02/15(金) 20:36:58.20
正常動作しているXMLと正常動作しなくなったXMLを比較すればいいじゃない
2013/02/15(金) 21:56:15.76
BOM
2013/02/17(日) 19:41:43.65
Xml Schemaを人間用仕様書に変換できるXSLT何かありませんかね?
2013/03/02(土) 08:38:54.70
>>764
BOMの意味からして分からないけど、サーバー内でコピーして保存したものだと問題なかったので
今後保存はサーバー内ですることにしました。
ありがとうございました。
2013/03/02(土) 15:52:11.88
ここで問題解決しておかないと、後でハマるよ
2013/03/10(日) 14:29:05.78
誰か答えてやれよ。

テストしにくいコードをテストする方法教えて下さい
http://toro.2ch.net/test/read.cgi/tech/1334408391/405
769デフォルトの名無しさん
垢版 |
2013/03/16(土) 02:21:05.15
例えば、以下のようなXML文書があるとして、
<doc>
<p>波動砲発射準備</p>
<p>エネルギー充填120%</p>
<p>発射!</p>
</doc>

これは、以下のように解釈される可能性もあるってことですよね?
<doc>
<p>発射!</p>
<p>波動砲発射準備</p>
<p>エネルギー充填120%</p>
</doc>

だとすると、小説やレポートなどの文章データを本来の意味を損なわずに
正常な形でXMLで扱うのは不可能なような気がするのですが。
タグにシリアルナンバーを振るという手もありますが、
そうすると、人間が手で編集するのは、
現実的ではなくなりまますよね。
2013/03/16(土) 05:50:57.20
> これは、以下のように解釈される可能性もあるってことですよね?

ねーよボケ
2013/03/16(土) 06:22:27.92
>>769
>これは、以下のように解釈される可能性もあるってことですよね?

解釈は解釈する側の問題。

よく使われる仕様の範囲内で例の二つの文章を別な物として扱えるかと問われれば扱える。
例えばDOMは子ノードの列びは順序つきと定義している。

文章を自然なかたちで表現できるか否かに関してはまた別のレベルで興味深いネタはある。
例えばText Encoding Initiativeという団体の出している文章に結構面白い話はある。
772デフォルトの名無しさん
垢版 |
2013/03/16(土) 10:22:33.50
>>771
>解釈は解釈する側の問題。
>例えばDOMは子ノードの列びは順序つきと定義している。

それは、「このページはIEでないと正常な表示が保証できません」
と言っているのと変わらないですよね。
2013/03/16(土) 10:34:57.96
違います
2013/03/16(土) 12:29:56.96
順序を保証したいならスキーマを用意してXML文書と紐づけすればいい
大抵は順不同にしようとする方がめんどくさいが

とはいっても「こう解釈するのが正しい」と示せるだけで正しく解釈されるかは別問題
「このページはIEでないと正常な表示が保証できません」が
「このページはスキーマに対応したシステムでないと正常な表示が保証できません」
に変わるだけと言われれば否定はできない
775デフォルトの名無しさん
垢版 |
2013/03/16(土) 12:35:00.42
同じ要素の並び順ってスキーマーで規定できたっけ?
776デフォルトの名無しさん
垢版 |
2013/03/16(土) 12:37:40.99
夜空と星奈と俺の3P
2013/03/16(土) 12:43:34.43
最高の思い出
2013/03/16(土) 18:12:19.66
>>775
XML Schemaでいうsequence要素内は同じ要素であってもsequenceなんじゃないかなぁ?
仕様でどうなっているかは未確認。

再帰を使って多重度を表現すれば
確実に順不同でないことを示せると思うけど。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況