【XML】xmlns, XSLT, RelaxNG, JAXP, etc.【総合】
at TECH
[前50を表示]
100:デフォルトの名無しさん
06/03/03 13:38:36
>>97
いまいち
<xsl:template match="/ns0:boards/board">
<xsl:if test="text() = concat(substring-before(name(parent::*), ':'), ':tech')">
<xsl:value-of select="text()"/>
</xsl:if>
</xsl:template>
101:デフォルトの名無しさん
06/03/04 01:09:54
いや、それではちょっと…。
XML名前空間の仕様上、
<ns0:boards xmlns:ns0="URLリンク(2ch.net)<)">ns1:tech</board>
<board xmlns:ns2="URLリンク(2ch.net)<)">ns3:news</board>
</ns0:boards>
こんなパターンや、
<boards xmlns="URLリンク(2ch.net)<)">ns0:tech</board>
<board xmlns:ns0="URLリンク(2ch.net)<)">ns0:news</board>
</ns0:boards>
こんなパターンもあるので。先にちゃんと言ってなかったですが。
102:デフォルトの名無しさん
06/03/04 01:12:29
あ、あとのやつは、
<boards xmlns="URLリンク(2ch.net)<)">ns0:tech</board>
<board xmlns="" xmlns:ns0="URLリンク(2ch.net)<)">ns0:news</board>
</boards>
の間違えです。
親要素も考えたら、もっとバリエーションがあります。
103:デフォルトの名無しさん
06/03/04 01:37:34
詞ね
104:デフォルトの名無しさん
06/03/04 13:10:45
せっかくなので、こっちにも答え?
<xsl:template select="/ns0:boards/board/@nick[../namespace::*[local-name(.)=substring-before(string(../@nick),':')] and substring-after(.,':')='tech']">
<xsl:value-of select="."/>
</xsl:template>
いまいちの答えだが、いまいちなのは、俺なのかXML仕様の方なのか。
105:デフォルトの名無しさん
06/03/04 13:33:33
<xsl:template select="/ns0:boards/board/@nick[prefix()=namespace('ns0') and local()='tech']">
<xsl:value-of select="."/>
</xsl:template>
とか、
<xsl:template select="/ns0:boards/board/@nick[qname()=qname('ns0','tech')]">
<xsl:value-of select="."/>
</xsl:template>
とか、
書けないもんかねぇ。
106:デフォルトの名無しさん
06/03/04 13:50:59
>>97
俺が無知なだけかもしれないけど、そもそも
TEXT要素に名前空間ってつけれるんだっけ?
たとえば、このXMLインスタンスはどうなるの?
<ftp:hosts xmlns:ftp="URLリンク(hogehoge.hoge)">
<url>fURLリンク(2ch.net)
</hosts>
URLリンク(hogehoge.hoge)に属するのは
要素hostsとテキスト要素//2ch.netってこと?
107:デフォルトの名無しさん
06/03/04 17:49:45
テキスト要素なんて妙な言葉使わないでテキストノードとお呼び。
>>106
Syntax Error。正しくは:
<ftp:hosts xmlns:ftp="URLリンク(hogehoge.hoge)">
<url>fURLリンク(2ch.net)
</ftp:hosts>
>URLリンク(hogehoge.hoge)に属するのは
>要素hostsとテキスト要素//2ch.netってこと?
×要素hosts → ○hosts要素
テキストノード自体にはどこに属しているとかそういうのは無い。
みんなもっと落ち着いて書き込みしようね。
108:デフォルトの名無しさん
06/03/04 18:58:53
>>106
スレリンク(php板:403番)
段階がある。
単なるDOMではテキストや属性痴にネームスペースプロパティはない。
しかし、スキーマでバリデーションしてそれがQName型の場合には、
QName値としてネームスペースプロパティを持つ事になる。
<element name="host">
<sequence><element name="url" type="xsd:QName"></sequence>
</element>
なんてスキーマに沿ってるとしたら、url要素の値は、URLリンク(hogehoge.hoge)を
ネームスペースとして、ローカル名が//2ch.netのQNameと解釈される、
…ということなんだが、//2ch.netはローカル名として多分不正なので、バリデーションをパスしないと思われる。
つまりは、単なるDOMにはないが、値もそういう風に解釈する作法がある、ということ。
109:デフォルトの名無しさん
06/03/08 01:48:49
XMLマスタースレにも貼ってみたんだがここにもスマソ。。
・DOMで読み込んだ後、「&」が文字参照であったかどうかを知る術はない
これって正しい?教えてエロイ人
110:デフォルトの名無しさん
06/03/08 02:30:26
DOMのAPIだけで知りたい、のなら、DOMのAPIを調べればいいだろ?
なんでもありならどうにでもなる。
111:デフォルトの名無しさん
06/03/08 10:03:05
誤り。
112:デフォルトの名無しさん
06/03/08 13:09:00
>>109
・CDATAセクションの中の場合、文字参照ではない
・テキストや属性値の中の場合、&は必ず文字参照か実体参照であり、
実体参照はEntityReferenceノードとして認識できる場合がある。
その場合に限り、EntityReference以外の&は文字参照である。
113:デフォルトの名無しさん
06/03/08 19:39:19
>>110-112
サンクスコ。納得。
114:デフォルトの名無しさん
06/03/15 20:53:11
SVGってここでいいのかな?
illustratorで書いた文字をSVG保存して、batikでJPEGに変換すると、フォントが指定フォントで出力されないんだけど。
(SVGの時点では正常にフォントが指定フォントで表示されている)
教えて、エロエロな人
115:デフォルトの名無しさん
06/03/15 21:44:58
どう見てもbatikを取り扱うスレに行けです。
本当にありがとうございました。
116:デフォルトの名無しさん
06/03/15 22:11:09
>>115
取り扱ってる場所ないんじゃないの?
117:デフォルトの名無しさん
06/03/16 22:21:06
<SOAP-ENV:Envelope xmlns:SOAP-ENV="URLリンク(schemas.xmlsoap.org)"
xmlns:SOAP-ENC="URLリンク(schemas.xmlsoap.org)"
xmlns:xsi="URLリンク(www.w3.org)"
xmlns:xsd="URLリンク(www.w3.org)">
↑みたいに複数の名前空間を宣言している要素を Java の DOM で
作りたいんだけどどうやるか分からない…。
118:デフォルトの名無しさん
06/03/17 01:11:38
final String XMLNSURI="URLリンク(www.w3.org)";
final String NSURI_SOAP="URLリンク(schemas.xmlsoap.org)";
final String NSURI_SOAPENC="URLリンク(schemas.xmlsoap.org)";
final String NSURI_XSI="URLリンク(www.w3.org)";
final String NSURI_XSD="URLリンク(www.w3.org)";
Element env = doc.createElementNS(NSURI_SOAP, "SOAP-ENV:Envelope");
env.setAttributeNS(XMLNSURI,"xmlns:SOAP-ENV",NSURI_SOAP);
env.setAttributeNS(XMLNSURI,"xmlns:SOAP-ENC",NSURI_SOAPENC);
env.setAttributeNS(XMLNSURI,"xmlns:xsi",NSURI_XSI);
env.setAttributeNS(XMLNSURI,"xmlns:xsd",NSURI_XSD);
これじゃ何かあかんのか?
つうか、JavaでSOAPやるならAxisとかあると思うんだが。
119:http://www.vector.co.jp/soft/win95/util/se072729.html
06/03/18 19:36:43
TextSS のWindowsXP(Professional)64bit化おながいします
もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
120:デフォルトの名無しさん
06/03/19 23:44:15
>118
サンクス。それでよかったのね…。
Axis 使いたいんですけど、
事情があって自分で SOAP エンベロープを作らなくてはならなくて…。
121:デフォルトの名無しさん
06/03/24 17:52:53
xmlでマクロや定数を使いたい場合はどうすればいいですか?
こんな風にやりたいのですが↓
#define HOGE 1
<TEST value="HOGE" />
122:デフォルトの名無しさん
06/03/24 17:54:58
〉〉1
123:デフォルトの名無しさん
06/03/24 18:10:16
>>121
DTD内で
<!ENTITY HOGE "1">
本文で
<TEST value="&HOGE;"/>
124:デフォルトの名無しさん
06/03/24 20:59:33
>123のコンパクトな書式でどばーーーと羅列したのを
<!ENTITY %ent1 SYSTEM "entity1.ent">
%ent1;
<!ENTITY ent2 SYSTEM "entity2.ent">
&ent2;
とかいくつかきめると古いIE落ちる説。ってのを耳にした
ご自愛ください
125:121
06/03/24 21:59:33
>>123
実体参照というやつですか。
ありがとうございます。
126:デフォルトの名無しさん
06/03/29 15:12:14
<?xml version="1.0" encoding="UTF-8"?>
<Hoge>
:
</Hoge>
というようなXMLのencodingが何か、DOMで操作して知りたいんですが
方法がわかりません。教えてください。
127:デフォルトの名無しさん
06/03/29 15:34:24
よく分からんがDOMの仕様書開いてencodingで検索
128:デフォルトの名無しさん
06/03/29 16:49:51
>>126
DOM Level 3 の org.w3c.dom.Document.getXmlEncoding()
DOM Level 1や2では不可能。
129:126
06/03/29 17:08:00
>>128
きー
DOM Level3ですか。
ありがとうございます。いさぎよくあきらめます。
130:デフォルトの名無しさん
06/03/30 00:39:03
もとがストリームなんて決まってないっつうか
DOMのネタがすでに処理系内部文字列かも知れないのに、
なんでそんなのが解るんだ?
131:デフォルトの名無しさん
06/03/30 10:59:25
なぜXML宣言があるのかよーく考えてください
132:デフォルトの名無しさん
06/03/30 12:27:56
>>130
encoding="..."が存在すれば返すってだけで、なければnullが返るだけ
ですから。
133:デフォルトの名無しさん
06/03/30 18:34:52
なるほど。
そんなん、当てになるっつうか、実用性あんのかね?
134:デフォルトの名無しさん
06/03/30 18:53:57
そもそも変なencoding指定したらパース失敗するよ。
運よく文字化けで済んでもそれは生成した側の責任。
encoding省略されてればUTF-8だよ。どこに疑う余地があるのん?
135:デフォルトの名無しさん
06/03/31 00:54:27
実用性の理由になってないよ…。
責任がどこにあろうと、間違った値が取れてトラブルになるのは読む側。
間違った値が取れるってことは、当てにならんってこった。
136:デフォルトの名無しさん
06/03/31 01:27:34
仕様を満たしたデータからは正しい情報を得ることができ
仕様を満たさないデータからは正しい情報を得られないってのは
至極一般的なことなのだが135はなにが不満なのだろう。
137:デフォルトの名無しさん
06/03/31 10:07:07
>>135
噛み付けばいいってもんじゃないぞ。
(↓以下たとえ話)
たとえば素数を返すメソッドを読んだとして、偶数が返ってきたらどう思う?
バナナで釘を打つ予定だったのに、マンゴーを渡されたらどうする?
仕様が守られるのは当たり前。仕様を守らないならそんなもの捨てちまえ。
>間違った値が取れるってことは、当てにならんってこった。
どこも間違っていない。仕様どおり。
きちんとルールは守りましょう。
変なencoding吐くシステムならアダプタかましてください。
何度もいいますが、encoding指定なしならUTF-8、それ以外で指定されていればその文字コードになります。
XMLを読み込むときはそれを基準にして読み込みます。
文字コードの予想なんてしません。必ずencodingは指定されているというのは大前提です。
138:デフォルトの名無しさん
06/03/31 11:01:44
あ、メモリとかにそのまんま作った木のencodingは>>132がいうとおりnullになる。
これはシステムが文字コードを関知し続けていればいいね。
139:デフォルトの名無しさん
06/03/31 13:58:21
xmlでentityというので別のxmlファイルを読み込むようにしたのですが、IEでは表示されるのにmozilla系では表示されません。
何か問題があるのだと思いますが、気付いたことがありましたら教えてください。
##### index.xml #####
<?xml version="1.0" encoding="Shift_JIS" ?>
<?xml-stylesheet type="text/xsl" href="index.xsl"?>
<!DOCTYPE hoge [ <!ENTITY piyo SYSTEM "./piyo.xml"> ] >
<hoge>
&piyo;
</hoge>
140:デフォルトの名無しさん
06/03/31 21:05:40
>>137
揚げ足取ると、2は偶数であり素数でもありますよ。
141:デフォルトの名無しさん
06/03/31 21:50:36
>>137
確かに、間違った値が取れるってのは正確ではなかったな。
XML宣言のencodingが取れるという仕様に対しては。
だが、現実の要求はそんなことではなくて、元も文字コードが何であったかが知りたいんじゃないのか?
現実の要求に対して期待通りの値が取れないんなら、やっぱり当てにはならんてこった。
学生じゃないんだから、仕様仕様ってそんなヌルい事じゃオープンな実用システムは作れんよ。
142:デフォルトの名無しさん
06/03/31 22:30:48
141はxmlデータを扱ったことがないんだろうな。XMLにおいて
encodingというメタ情報が取得できないっていうがどういう
状況かわからないらしい。
143:デフォルトの名無しさん
06/03/31 22:51:38
自分の世界だけのローカルファイルだけ扱ってるなら、そう割り切るのも手だろうね。
ただ、普通のオープンなシステムでは、データ入手の際の、
MIMEのcontent-typeのcharsetのような外部情報があるんだよ。
144:デフォルトの名無しさん
06/03/32 01:40:21
>>141
コンテンツがどんな文章であってもencodingが自動判別できるのなら
君の言うことは正しいように感じる。
145:デフォルトの名無しさん
06/03/32 02:21:54
>>141
うん、ちょっと待って。
>元も文字コードが何であったかが知りたいんじゃないのか?
これの意味がわからないの。元ってどーこ?
>現実の要求
って誰がこんなとち狂った要求を?
そんなことやってたらAPIの作者が首吊りますがな。
アテになるって何が?アダプタかませよ。
DOMはDOMのドメインで問題解決してるんだよ。
そんなに仕様を肥満させてAPI作者に首をつってもらいたいのかゐ?
146:デフォルトの名無しさん
06/03/32 02:23:00
あれか?>>141の言っているのはお行儀の悪いメールサーバと
やりとりできるメーラーを開発したいとでも言っているのか?
で、標準仕様をそっちに合わせろと…
147:デフォルトの名無しさん
06/03/32 03:32:12
>そんなに仕様を肥満させてAPI作者に首をつってもらいたいのかゐ?
もともと無理で無駄だと書いてるわけだが、なんでそんな話になるかね…。
148:デフォルトの名無しさん
06/03/32 03:51:05
いやだから無理でもないし無駄でもないってば。
あんまり使うケース思いつかないけど。
149:デフォルトの名無しさん
06/03/32 06:11:22
>>145
>>元も文字コードが何であったかが知りたいんじゃないのか?
>
>これの意味がわからないの。元ってどーこ?
「元」って、元のXML文書のことだろ。
XML文書はいろんな文字コードの可能性があって、それをDOMに変換すると、JavaならUTFに変換される。
変換されるのはかまわないけど、もとのXML文書がどの文字コードだったかを知りたい人もいて、それがDOM3じゃないとできないので困っているということだよね。
そんなことを必要とするのがおかしいというやつがいるけど、自分が必要ないからといって他人が必要としていることを否定するのはどうかと。
例えばXML文書を読み込んでHTMLに変換するツールを作るとき、もとのXML文書がSJISならSJISで、EUCならEUCで出力するような仕様にしたい、というのはごくごく普通に考えられるんじゃないかな。
おれもXML宣言のencodingぐらいとってこれてもいいじゃんと思うけど、なんでできないんだろうね。getEncoding()を付け加えるぐらいなら、仕様の肥大化にはならないと思うけどね。
ちなみにおれは、XMLパーサのpublicでない内部変数をリフレクションを使って取得することで回避した。あまりいいやり方じゃないけど、他に方法がなかったから仕方ない。
150:デフォルトの名無しさん
06/03/32 08:12:46
やっぱS式が最強ってことか
151:145
06/03/32 11:42:50
inputEncoding
An attribute specifying the encoding used for this document
at the time of the parsing. This is null when it is not known,
such as when the Document was created in memory.
URLリンク(www.w3.org)
('A`)生意気言ってゴメン
152:デフォルトの名無しさん
06/03/32 14:34:58
>>149
>>141はDOM3でも満足できないように読めるが。
153:139
06/03/32 20:14:01
レスがもらえないあたりを考えると、
IE使いの方ばかりなのでしょうか。
それともentityなどを利用して複数のxmlを読み込むようにしている人は居ないということでしょうか。
154:デフォルトの名無しさん
06/04/02 23:16:00
>>153
DTDに<!ELEMENT hoge ANY>を加えてもだめ?
155:139
06/04/03 00:55:27
>>154
やってみましたがダメでした。
どうやらmozilla系は外部エンティティが使えないみたいなので諦めムード。
156:デフォルトの名無しさん
06/04/05 07:01:50
>139
試すのにファイル足らな過ぎだよ、
mozillaのrdfやっばい高機能なのにそれ無理っぽいね
SYSTEMじゃなくPUBLICでも?chrome:とかフルパス試した?
解決する可能性-80%ぐらいだけど是非試して
157:デフォルトの名無しさん
06/04/05 11:11:45
>>139へのレスは自演としか思えない。
まともな本を一冊通読した方がいいよ。急がば回れだ。
158:デフォルトの名無しさん
06/04/05 19:54:01
IEやNetscapeなどの一般的なブラウザでレンダリングされるxhtmlファイルに
XSLTの要素を埋め込んでXPathを使い、
XML文書からデータを取り出してきたいのですがうまくできません。
ブラウザはxhtmlをXML文書として解析しているのでしょうか?
動きを見ているとhtml文書としてレンダリングしているように思えます。
159:デフォルトの名無しさん
06/04/05 20:00:09
>>158
XHTMLを使ったからって、XSLTとか任意のXML語彙を埋めこんでレンダリ
ングできるというわけではない。SVGぐらいなら埋めこめるかもしれん
けど、XSLTを埋めこんだ場合にどう動くかというのは誰も定義してない
し実装してない気がする。
160:デフォルトの名無しさん
06/04/05 20:11:15
>>159
勘違いしておりました。xhtmlからXPathを使うのは無理なのですね。
上記のようなことを実現するにはJavascriptとDOMを使うのでしょうか?
Web制作みたいな質問ですみません。
161:デフォルトの名無しさん
06/04/05 21:41:19
そうでございます。
162:デフォルトの名無しさん
06/04/06 00:11:35
横やりすんませんがさ
ブラウザってどこからxmlって判断してるの?
レスポンスヘッダで */xml かつ中身 <?xml なんちゃら見たらってこと?
URLリンク(www.w3.org)
これじかに開いた時のIEはきちがいなん?
163:デフォルトの名無しさん
06/04/06 00:35:21
整形式が崩れたときにエラーを返したらXML。
整形式が崩れたときに自力で何とかしようとしたらHTML。
164:デフォルトの名無しさん
06/04/06 08:14:28
>162
Firefoxしか知らんが、レスポンスヘッダ次第。
text/htmlで送ると整形式になってなくてもエラー出ないし、
text/plainで送るとそのまま表示されたり。
165:デフォルトの名無しさん
06/04/06 13:42:27
<?xml〜は、xmlかどうかの判断には使ってない漢字。 エンコーディングだけ判断してるような。
これ無しで日本語使うと、IEではエラーになるしFirefoxでは文字化けする。
正しく設定してあれば、どちらでも正しく表示可能。 まあ当然か。
・ http経由なら content-type で判断
・ ローカルファイルなら 拡張子 で判断
って幹事かな。 Windowsでは。
166:デフォルトの名無しさん
06/04/06 20:03:52
XML宣言は省略可能。
ただし省略した場合はencoding="UTF-8"と見なされる。
167:デフォルトの名無しさん
06/04/07 16:21:48
HTTP経由でXMLをやりとりするときは
Content-Type: application/xml; charset=EUC-JP
<?xml version="1.0" ?>
...
と
Content-Type: application/xml
<?xml version="1.0" encoding="EUC-JP"?>
...
と、どっちが望ましいのかなあ
また、Content-Type:が application/x-hogehogeだったり
text/xmlだったりした時とか。
168:デフォルトの名無しさん
06/04/07 16:52:57
両方指定するのはだめ?
Content-Type: application/xml; charset=EUC-JP
<?xml version="1.0" encoding="EUC-JP"?>
169:デフォルトの名無しさん
06/04/07 17:03:04
>167
それはそれでいいんだけど、
そうなると、どっちが優先? っていう話あるし...
HTML(4.0?)だと
1. HeaderのContent-Type: charset
2. Bodyの<めた charset=...>
の順だから
これに合せると XML宣言の方を無視するってことになって
それはそれで変だろって。どっちかならXML宣言の方が優先かなあ。
170:デフォルトの名無しさん
06/04/07 18:55:21
RFC 2376 読みなされ。
171:デフォルトの名無しさん
06/04/07 19:05:36
村田真はどこかでContent-Type優先だろと言ってた。
だからなんだと言われても困るが。
172:デフォルトの名無しさん
06/04/07 19:37:57
>>170
お、そういうのを待っていたよ。2376ね。ありがとー
173:デフォルトの名無しさん
06/04/07 19:44:09
ここに解説あるね
URLリンク(www.fxis.co.jp)
>text/xmlの場合はXML文書中にある encoding declarationを
>無視することを明言しています
へえ
>application/xmlの場合もcharsetパラメタが推薦されています。
>ただし、こちらはcharsetパラメタが省略されるとXML文書中の
>encoding declarationを見て判定します。
ほう
勉強になりましたよ。Content-Type優先か。
application/x-hogehogeの場合は好きにしていいのかなあ。
174:デフォルトの名無しさん
06/04/09 11:34:13
まだ勉強し始めたばっかでよく理解してないのですが次の様なXSLTがあるとしますと
パーサ(IE6を使用してます)が</xsl:template>はMetaと一致しないとかエラーが返されてしまいます
<xsl:template match="Hoge">
<Meta http-equiv="Content-Type" content="text/html ; charset=Shift_JIS">
</xsl:template>
この問題は<Metaの行を<Meta http-equiv="Content-Type" content="text/html ; charset=Shift_JIS" />
と閉じれば解決されるのですが、Metaタグについて調べるとどこの解説ページもMetaを閉じていないようです
公式ではどのように説明されているのでしょうか
175:デフォルトの名無しさん
06/04/09 11:45:08
わからないけどとにかく閉じないと整形式が崩れて文書が成立しないね。
何処を参考にしたのかわからないが閉じないほうが間違いです。
176:デフォルトの名無しさん
06/04/09 12:23:38
閉じない方が間違いなのですか、ありがとうございます
適当にMetaタグとググったり他人様のソースを読んだりして勝手に勉強してたのですが・・・
177:デフォルトの名無しさん
06/04/09 17:45:22
そもそもXHTMLならばMetaタグなるものは存在しませんが。
metaタグの間違いでしょう。
#その調子だと<xsl:value-of select="<xsl:apply-…>"/>
#とか書く日も近いかも
178:デフォルトの名無しさん
06/04/09 18:12:49
HTMLに変換されるのでMetaも間違いではありません。
179:デフォルトの名無しさん
06/04/10 10:46:57
FirefoxのMIMEタイプ判断はこんな感じらすい
URLリンク(www-06.ibm.com)
180:デフォルトの名無しさん
06/04/10 14:01:27
すげー svg って image/svg+xml だったんだ
驚くところじゃないのかもしれないけど、xml は化けたね
181:デフォルトの名無しさん
06/04/11 11:02:09
XSLについて教えてください。
RSSを以下内容のXSLファイルで変換をかけてブラウザ上にItem一覧を
表示しています。
これをRSSのItem内のdc:dateが当日のものだけに絞りたいのですが
可能でしょうか?
XSLファイル
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="uri:xsl">
<xsl:template match="/">
<html><body>
<xsl:for-each select="rdf:RDF/item">
<div><a target="blank"><xsl:attribute name="href"><xsl:value-of select="link"/></xsl:attribute><xsl:value-of select="title"/></a></div>
</xsl:for-each>
</body></html>
</xsl:template>
</xsl:stylesheet>
RSS XMLのItem部分
<item rdf:about="URLリンク(www.test.jp)">
<title>テストタイトル</title>
<link>URLリンク(www.test.jp)
<dc:date>2006-04-10T13:01:00+09:00</dc:date>
<description>テスト内容です</description>
</item>
182:デフォルトの名無しさん
06/04/11 13:07:32
>>181
rdf:RDFと書いてあるが、rdf:の名前空間はどこで定義してる?
んで、当日という日付に関しては外部から指定するか、
あるいはdc:dateが最大のものを選ぶか、どっち?
183:デフォルトの名無しさん
06/04/11 16:40:56
返事ありがとうございます。
名前空間はこんな感じです。
<rdf:RDF
xmlns:rdf="URLリンク(www.w3.org)"
xmlns="URLリンク(purl.org)"
xmlns:taxo="URLリンク(purl.org)"
xmlns:dc="URLリンク(purl.org)"
xmlns:syn="URLリンク(purl.org)"
xmlns:admin="URLリンク(webns.net)"
>
日付に関しては、外部から渡せそうにないので最大のものという方が良いです。
184:デフォルトの名無しさん
06/04/11 17:47:29
う〜ん。
どう考えても汚くなりそうだなあ…
時間がないので、詳細書けたら後で書けるが、ロジックとしては
for-eachでソートされたitem/dc:dateをxsl:value-ofで取り出して、それを変数に一度格納。
(便宜的にconcatDateとする。ソートはもちろん、item/dc:dateで降順に。)
↓中身はこんな感じ
$concatDate = "2006-04-10T13:01:00+09:002006-04-10T01:01:00+09:00…"
というようになっているような感じ。そこから先頭10文字を取り出して、
それと合致するdc:date要素を持っているitemノードを取り出す。
ノイズがあると即アボン。
どうみてもお粗末です。ありがとうございました。
185:184
06/04/11 17:48:51
それと合致する ⇒ それを含む
にしておいてください。
186:デフォルトの名無しさん
06/04/11 19:15:23
>>184
今のところソートまでしか理解できていませんが、もうちょっと勉強してみます。
丁寧にありがとうございます。
187:デフォルトの名無しさん
06/04/11 19:22:27
無駄に俺まで考えたけどだめだ、xslだけだとそんぐらいえぐくなる
<xsl:key name="today" match="item" use="substring-before(item/dc:date,'T')"/>
こゆーのて取れないのかな?まー取れてもな
ブラウザで表示だけなら無理に減らさないでCSSで今日以外隠す?
ごめん論点すりかえた
188:デフォルトの名無しさん
06/04/11 21:01:22
もうDOMでいいじゃん
189:デフォルトの名無しさん
06/04/12 00:58:41
E4Xで、要素名や、要素のローカル名が予約後の時ってどうすればいいのでしょうか?
<var xmlns:p="puge">
<p:function>ぢ</p:function>
</var>
var p=new Namespace("puge")
var func = var.p::function ←エラー
190:デフォルトの名無しさん
06/04/13 12:27:18
>>189
俺はE4X使ったことなかったけど、その例を使って、Firefox1.5で試してみた。
var xml = <var xmlns:p="puge">
<p:function>ぢ</p:function>
</var>;
var p = new Namespace("puge")
var func = xml.p::["function"];
["function"]は連想配列でのプロパティの参照って言うのかな。
名前空間からのアクセスにも使えるみたいね。
191:デフォルトの名無しさん
06/04/16 16:58:16
なんだ、ただの(?)プロパティだったのか。
サンクス…って、
xml.var.p::["function"]
だよな?
192:デフォルトの名無しさん
06/04/25 02:34:30
おまいらは、XSLT プロセッサなに使ってんの?
XT?
Xalan?
193:デフォルトの名無しさん
06/04/25 09:41:05
Xalanだよん。アスランXalan。
194:デフォルトの名無しさん
06/04/27 19:33:20
>>193
thx。
このスレ人気ない w
ついでに質問。
xalan に -xml、-html、-plain フラグがあるけど、
デフォルトは -xml ですよね?
スタイルシート内に <HR> って書いたら怒られた。
195:デフォルトの名無しさん
06/04/30 04:18:58
質問です
XSLTで名前つきテンプレートの引数に文字定数"a"を渡したいのですが
<xsl:with-param name="b" select="a"/>
と書くと"a"がパスと解釈されてしまってうまくいきません
解決策教えてください
196:195
06/04/30 07:45:21
自己解決しました.
<xsl:with-param name="b">a</xsl:with-param>
197:デフォルトの名無しさん
06/04/30 13:01:11
<xsl:with-param name="b" select="'a'"/>
あるいは、
<xsl:with-param name="b" select=""a""/>
とすればよかったものを…。
>>194
<hr>はXML?
198:デフォルトの名無しさん
06/05/01 16:57:15
XMLの仕様書よんでもよくわからないので教えてください。
XMLの処理命令には < や > や & をそのまま含めても仕様上は問題ないのでしょうか。
処理命令というのは例えばPHPの<?php echo $var; ?>というやつですけど、
この中に例えば
<?php if ($i > 0 && $i < 100) { ?>OK<?php } ?>
のように < や > や & を、< や > や & にエスケープせずにそのまま埋め込んでもいいのですか。
XML仕様書読んでみたのですが難しすぎてわかりませんでした。
199:デフォルトの名無しさん
06/05/01 17:08:42
>>198
PIデータの中ではエスケープする仕組みがないので、<>&などはそのま
ま書いていい。
ちなみに、「?>」という文字列はどうやっても入れられない(PIターゲッ
トで独自の解釈方法を定義してない限りは)。
200:デフォルトの名無しさん
06/05/02 17:56:05
>>199
さんくすです。助かりました。
今、PHPを使っているんですけど、「?>」という演算子はないので、大丈夫っぽいです。
でもPHPは値を表示するのに「<?php echo $var; ?>」としなきゃいけないんですけど、
これだと属性値のときに困るんですよね。
<span class="<?php echo $class; ?>">text</span>
みたいなかんじで、この部分がHTML的に構文エラーになってしまいます。
ここだけなんとかしてほしいよー。
201:デフォルトの名無しさん
06/05/07 11:27:17
しかし、アレだね
XMLスキーマの章、問題が長文すぎてスクロールしまくりなのはキツイね
紙で欲しい
202:デフォルトの名無しさん
06/05/09 23:34:41
>>201
なんかの本の話?
203:194
06/05/12 04:20:20
>>197
XSLT 内の HTML の話なんでしたが、自己解決しました。
テンプレート定義内に HTML の空タグ (BR、HR 等) を書くときにも、
XML 仕様に従って、バックスラッシュを入れないとダメなんですね。
気付けば簡単な問題なんですが、
気が付かないとわけが分かりません。
盲目。
204:デフォルトの名無しさん
06/05/12 12:12:13
>>203
(俺の脳内統計によると、)九割の初心者がそういうミスしてきてるから安心汁!
XMLを知る
↓
XSLTをやってみる
↓
ミスをする。
・<xsl:value-of select="<xsl:apply-templates select="" />"/>
・HTMLをべた書き
↓
XSLTもXMLなんだと自覚し始める。
↓
XPathやDOMなどが役割を果たす階層を意識しはじめる。
↓
ほかのXMLの語彙も同じように認識できるようになる。
名前空間もよく理解できるようになり、「拡張できる言語」というXMLへの
幻想も消え、正しくXMLを使えるようになる。
205:デフォルトの名無しさん
06/05/12 12:16:49
↑
でも、冗長だから、面倒なんだよ。
使えるか、こんなモン!!
206:デフォルトの名無しさん
06/05/12 12:23:03
>>205
強力なインフラが欲しくなければ使わなければいいと思うぞ。
まあパフォーマンス上いろいろ問題あるしな。
俺は別にファイルサイズとかタイピング数とか気にしない口なので、
XSLTでdocument関数から要素を取得しつつその値で再起構造書くとか平気。
f( URI ) = f(document( URI )/someElement)
↑こんなの。さすがに重くなる。
207:デフォルトの名無しさん
06/05/12 23:19:31
XMLデータをインデントする時に、
空白の影響をなくすために、
<p
>hoge</p
>
とするのが良いという話をどこかで読んだ記憶があるのですが、
どなたが言っていたか、誰かご存知じゃないでしょうか?
こうしている人いますか?
208:デフォルトの名無しさん
06/05/13 11:55:31
XSLの開発環境ってあるんですか?
コーダー出身なのでDreawerverでやっていますが
テキストエディタ同然なので効率が悪いです。
209:デフォルトの名無しさん
06/05/13 12:47:58
>>208
作ったり、提案してみては如何かな?
210:デフォルトの名無しさん
06/05/13 13:05:30
>>208
XML SpyにXSLTデバッガがある。俺はこれがないと
XSLTなんて書けない。
211:デフォルトの名無しさん
06/05/15 11:37:56
>>207
ジェームズ・クラーク式記法
URLリンク(jp.rubyist.net)
とあるけど他に情報が出てこない
URLリンク(jp.rubyist.net)
って突っ込まれてるし
James Clark氏の書いてる文書だと
URLリンク(www.jclark.com)
で不完全だけど扱っている様子が分かる
212:207
06/05/17 20:03:19
>>211
XML の偉い人だというのは記憶があるので、
James Clark で間違いないと思います。
ありがとうございます。助かりました。
213:デフォルトの名無しさん
06/05/18 22:27:23
質問なんですが、今、JAVAをやっててその中でXMLやXSPもやっているんですが、
その中でXSP中に<xsp:logic>内でJAVAを使うんですが、そのときどうしても
IF文で < や > 比較演算子が使えません。
他に ==や ||は使えるんですが、教えてくださいペコm(_ _;m)三(m;_ _)mペコリ
214:デフォルトの名無しさん
06/05/18 22:58:55
そういう質問はJavaのスレッドに行ってください。
あと日本語でおkwww
215:デフォルトの名無しさん
06/05/19 00:58:15
xspってなんだかしらんが(cocoonか?)、<と>じゃないの?
というか、釣りとしか思えんが。
216:215
06/05/19 01:50:06
2chて、文字参照そのままなのかよ…。
×<と>じゃないの?
○<と>じゃないの?
217:デフォルトの名無しさん
06/05/19 06:10:17
>>213
JSPなら < や > や <= や >= のかわりに lt や gt や le や ge が使えたと思ったけど。
>>215
そうみたいだね。
URLリンク(www.onjava.com)
218:デフォルトの名無しさん
06/05/19 06:13:05
>>213
>>217の2ページ目にのってあったわ。<や>のかわりに&lt;や&gt;をつかうみたい。
219:デフォルトの名無しさん
06/05/19 11:01:22
&lt;を書こうとして、&amp;lt;を書こうとして
220:デフォルトの名無しさん
06/05/19 11:03:52
>>216
最強に細かいことだが:
×文字参照 (Character Reference) ○実体参照 (Entity Reference)
221:デフォルトの名無しさん
06/05/25 03:25:33
<product>
<name>PC</name>
<assembly>memory</assembly>
<assembly>HDD</assembly>
<assembly>CPU</assembly>
</product>
↑のようなXML文書を
<xsl:value-of select="assembly">
というXSLTにかけたら、最初の要素しか
表示されないのですが、全部の要素を表示することは
できないのでしょうか?
できればカンマで区切って表示したいのですが・・・
よろしくお願いいたします。
222:デフォルトの名無しさん
06/05/25 04:42:20
>>221
URLリンク(www.google.com)
223:デフォルトの名無しさん
06/05/25 06:39:07
>>222
<xsl:value-of select="."/>っていうのを使いましたが、
これは任意のノードにヒットするという意味ですか?
224:デフォルトの名無しさん
06/05/25 07:30:53
>>223
カレントのノード。
225:デフォルトの名無しさん
06/05/25 15:58:44
XML って人気なさげ。
でも age。
226:デフォルトの名無しさん
06/05/25 17:35:23
人気…?
227:デフォルトの名無しさん
06/05/25 22:14:41
これだけそこら中で使われてるものが人気がないって・・・
228:デフォルトの名無しさん
06/05/25 22:15:42
>>225
大人気だと思います
229:デフォルトの名無しさん
06/05/26 00:13:00
人気(にんき)はあるが人気(ひとけ)は無い。それがXML。
230:デフォルトの名無しさん
06/05/26 00:20:07
>>229
多くの人がXMLについて研究している(た)と思います
231:デフォルトの名無しさん
06/06/07 10:24:05
Microsoft Core XML Services (MSXML) 6.0
URLリンク(www.microsoft.com)
バージョン : 6.0
公開された日付 : 2006/06/06
言語 : 日本語
ダウンロード サイズ : 1.5 MB - 7.6 MB*
232:デフォルトの名無しさん
06/06/07 10:56:26
スキーマ言語(?)って、今から使うとしたら、どういうのがいいのかな
XML Schema? RELAX NG?
233:デフォルトの名無しさん
06/06/07 11:40:33
どんなXML文書のルール書きたいの?
ガチガチに固い構造でなきゃならなくて、そのためには難解な仕組みの理解を惜しまないか、W3Cの作ったものしか信じないならXML Schema
そんなでもないならRELAX NG
あるいはスキーマはツールが自動生成してくれて触る必要がないなら、それに越したことはない
234:デフォルトの名無しさん
06/06/07 12:07:07
俺アプリで SVGもどきを設計しているんだけど、
そのデータを XMLで保存しようとしているのね。
* ストロークデータ(x:float, y:float, pressure:float)
* カンヴァスデータ(演算式)
* ペンデータ(演算式)
* アンカー ← HTMLの Aタグっぽいやつ
こんな感じ。
それで、データ構造の仕様をどう表現しようかなと考えて、
今使われているスキーマ言語は何なのかな、と質問した次第。
235:デフォルトの名無しさん
06/06/07 12:58:41
スキーマ言語としてはRELAXNGの方が優れてるらしいけど、
標準ボキャブラリは大抵DTDかXML Schemaで書かれてるからね。
ネットワーク外部性って奴か。
236:デフォルトの名無しさん
06/06/07 23:33:12
XML Schemaにしておいたほうが無難。
本当に簡単な文法ならDTDのほうがより無難。
237:デフォルトの名無しさん
06/06/07 23:36:34
XML Schemaはとんでもない長さになる
238:デフォルトの名無しさん
06/06/08 01:03:25
そんな隙間だらけのXML Schemaなんて…!!
239:デフォルトの名無しさん
06/06/08 01:04:34
>>238
>>238
>>238
240:デフォルトの名無しさん
06/06/08 20:18:31
使ってもないのに質問なんだけど、XML SchemaやRelaxNGでスキーマ書いたとして、
バリデーションってどんなかんじで実行するんでしょうか。
XMLをパースするときに同時にバリデーションも行われるのか、それとも
パース後のDOMツリーに対してバリデーションをするんでしょうか。
前者ならXMLパーサがスキーマ言語を理解してないといけないのでパーサとバリデータが一体化するので
パーサが肥大化するのかなと思って、あまり現実的じゃないような気がします。
だから後者のほうで実装されているのかなとも思ったけど、それだとDOMパーサでしか使えないことになるし、
どっちなんでしょうか。
241:デフォルトの名無しさん
06/06/08 20:48:49
>>234
なぜSVGを使わないのか
242:デフォルトの名無しさん
06/06/08 21:06:51
後生だから読んでくれ。皆の力が必要なんだ!
朝鮮人を日本に大量移住させる法案、今月中に成立予定
スレリンク(news板)
簡単にまとめると
北朝鮮への経済制裁等を行なう為の 「北朝鮮人権法案」だが
↓
「脱北者を出さないように北朝鮮の人権状況を改善させることが主眼」(与党関係者)とし
経済制裁のみの法案となった。
↓
一方、民主党が二月に国会提出した北朝鮮人権侵害救済法案は脱北者を
「難民に準じた扱いをする」ことで日本の定住資格を与える条項を盛り込んだ。
URLリンク(news.goo.ne.jp)
だったのだが 今回、白紙に戻して、自民・民主共同で
法案成立を目指すという事なので どんな中身かは不明
とりあえずは 自民党本部への「脱北者受け入れ反対」のメール、各板にコピペしてくれ。
243:240
06/06/09 22:16:29
うーむ、反応なし。だれもRelaxNG使ってないのかな。
244:デフォルトの名無しさん
06/06/09 22:32:28
DOMが便利すぎるからSAXを習得するのが苦痛だ
245:デフォルトの名無しさん
06/06/10 00:59:37
横着な俺は、DOMもめんどくさいけど…。
XPathとかE4Xじゃないとやってられない。
246:デフォルトの名無しさん
06/06/10 09:47:45
DOMは確かに面倒。
247:デフォルトの名無しさん
06/06/10 10:42:02
>>240
貴族とボヘミアン
248:デフォルトの名無しさん
06/06/10 13:11:21
えっ!?
XPATHってDOMじゃないの??
249:デフォルトの名無しさん
06/06/10 14:14:07
えっ!?
XHTMLってXMLじゃないの??
250:デフォルトの名無しさん
06/06/10 14:17:05
えっ!?
米のとぎ汁って飲み物じゃないの??
251:デフォルトの名無しさん
06/06/10 15:20:30
えっ!?
Apache AntってEclipseじゃないの??
252:デフォルトの名無しさん
06/06/10 15:31:53
えっ!?
Apache ってインディアンじゃないの??
253:デフォルトの名無しさん
06/06/10 17:46:57
えっ!?
おまいらって仕事してないの??
254:デフォルトの名無しさん
06/06/11 11:03:08
えっ!?
土日くらい休ませてくれないの??
255:デフォルトの名無しさん
06/06/11 13:46:02
えっ!?
休みって存在しないんじゃなかったの??
256:デフォルトの名無しさん
06/06/11 23:59:16
えっ!?
マ○コって理論上のものだったんじゃなかったの??
257:デフォルトの名無しさん
06/06/13 01:16:35
まんこはホロコーストですよ、
戦勝国によるプロバカンダです
258:デフォルトの名無しさん
06/06/14 12:20:01
|
\ __ /
_ (m) _ピコーン
|ミ|
/ `´ \
('A`)
ノヽノヽ
くく
そうだ。 SAXで読んでいって木構造を作ればDOMより速くなるんじゃね?
259:デフォルトの名無しさん
06/06/14 16:57:39
>>258
そうやって木構造を作ってるのがDOMなわけだが。
DOMのライブラリがSAXに依存するのはよくあるよ。
260:デフォルトの名無しさん
06/06/14 17:43:39
('A`)マジレスありがとう
261:デフォルトの名無しさん
06/06/16 03:18:15
XSLT、xpathは使わないとすぐ忘れてしまう。
262:デフォルトの名無しさん
06/06/18 04:47:46
あるノードをグループ化して其々の値を元にカウントする処理は
作れたのですが、その結果をソートするというのは無茶な話なので
しょうか?
<a>
<b>ほげ1</b>
</a>
<a>
<b>ほげ2</b>
</a>
<a>
<b>ほげ2</b>
</a>
結果
ほげ1 1件
ほげ2 2件
を
ほげ2 2件
ほげ1 1件
に並び替えたい。。
263:デフォルトの名無しさん
06/06/18 12:44:05
decending
264:デフォルトの名無しさん
06/06/18 12:47:16
>>263
>>262が訊きたいのはそーゆーことではないような気がするんだが。
>>262
ソートのやり方自体はわかるんだよね?
265:262
06/06/18 14:04:42
はい、ソートはfor-eachの後にノードを指定するとありますが、
実際並べたいカラムというのは関数呼び出しをしているカラムなのです。
グループ化して其々をカウントするには他に方法が思いつかなかったのです。
下のような感じで「ここ」がソートできればいいんですが・・
<xsl:for-each selectほげ[not(id = preceding-sibling::ほげ)]">
<xsl:sort select="ここ" order="ascending" />
<xsl:variable name="ここ">
<xsl:call-template name="関数">
<xsl:with-param name="引数">
<xsl:value-of select="値"/>
</xsl:with-param>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="$ここ"/>
</xsl:for-each>
266:デフォルトの名無しさん
06/06/18 22:23:55
>>265
俺の場合、for-each のブロックを個別の xsl:template として外に出して
その xsl:template を呼び出す xsl:call-template の引数に中間結果を渡す。
イメージとしては同じ元データに対し二重にxsltをかけるようなもの。
ただ、今はどうか知らんが、以前試した時は msxml ぐらいでしかこの技は使えんかった。
267:デフォルトの名無しさん
06/06/19 09:55:40
XML初心者です。
複合型で値の制限は出来ますか?
268:デフォルトの名無しさん
06/06/19 21:21:54
XML初心者です。
わかりません!
269:デフォルトの名無しさん
06/06/19 21:41:53
>>262-266
はいはいワロスワロスwww
<xsl:for-each select="a">
<xsl:sort select="b" order="decending" />
<xsl:if test="not(preceding-sibling::a[b = current()/b])">
<!-- あとはご自由にどうぞ -->
</xsl:if>
</xsl:for-each>
270:デフォルトの名無しさん
06/06/19 22:07:55
スキーマとしてはどれがメジャーなんでしょうか
やっぱりXMLSchema?
271:デフォルトの名無しさん
06/06/19 22:08:28
はいそのとおりです。
272:デフォルトの名無しさん
06/06/19 23:02:10
レスありがとうです。
XMLSchemaが一番難しそうなんだよなぁ・・・
勉強してきます
273:デフォルトの名無しさん
06/06/19 23:27:46
>>269
お前馬鹿だろ?
274:デフォルトの名無しさん
06/06/20 00:04:40
>>273
馬鹿でーす★ 何か問題あるのー?
275:デフォルトの名無しさん
06/06/20 17:26:19
馬鹿ってだけで周囲には有害だからね。自覚できないからこそ馬鹿なんだろうけど
276:デフォルトの名無しさん
06/06/20 20:38:15
馬鹿を語る馬鹿にはなりたくないものだ
277:デフォルトの名無しさん
06/06/20 20:46:11
馬鹿がいるw
278:デフォルトの名無しさん
06/06/20 22:45:07
俺の事馬鹿って言うなー!
279:デフォルトの名無しさん
06/06/21 00:16:45
頭がいいのは俺だけか?
280:デフォルトの名無しさん
06/06/28 01:24:22
「200万円以上の車は●台あります」 と表示させたいのですが
carsの中にpriceが200であるcarがひとつでも入っていたら全てをカウントしてしまうみたいで困っています
どうしたらいいのでしょうか?
<?xml version="1.0" encoding="Shift_JIS" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="URLリンク(www.w3.org)
<xsl:output method="html" encoding="Shift_JIS"/>
<!--文章-->
<xsl:template match="/">
<html>
<xsl:apply-templates select="cars"/>
</html>
</xsl:template>
<!-- 車 -->
<xsl:template match="cars">
200万円以上の車は
<xsl:if test="(car/price) > 200">
<xsl:value-of select="count(car)"/>
</xsl:if>
台あります。
</xsl:template>
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4879日前に更新/254 KB
担当:undef