XSL/XSLT (558レス)
上下前次1-新
263: 04/03/29 13:14 ID:??? AAS
続き
261 :nobodyさん :sage :04/03/26 13:27 ID:???
>>260
で、できた!ありがとう!
でも、なんでこうなるの?
XML側にネームスペースがなかったり、名前付けされてたらマッチして、
デフォルトネームスペースがあるとマッチしない理屈がわかんない。
仕様?バグ?ポインタだけでも教えてもらえるとありがたい。
あと、>>260さんは何で知ってるの?(まさか、これFAQ?)
264: 04/03/29 13:20 ID:??? AAS
以上削除前の263でした。
262 :260 :sage :04/03/26 14:48 ID:???
>>260 の訂正
>xmlns:h=".." は xmlns=".." にしておいて
>match="/html" あるいは match="html" などでもいいだろうけど。
>>261
test.xsl で xmlns:h="外部リンク:www.w3.org" が無い場合、
match="html" でマッチするのは
名前空間無し + "html"
という要素だと思う。
省15
265: ”削除”後の260 04/03/29 18:58 ID:??? AAS
(´・ω・`)
266(1): 04/04/02 00:28 ID:I+SOWEa+(1) AAS
・foo.xml
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="foo.xsl"?>
<body>
<ruby><rb>This</rb><rt>ディス</rt></ruby> <ruby><rb>is</rb><rt>イズ</rt></ruby>
<ruby><rb>a</rb><rt>ア</rt></ruby> <ruby><rb>pen</rb><rt>ペン</rt></ruby>!
</body>
・foo.xml
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="外部リンク:www.w3.org" xmlns="外部リンク:www.w3.or">
省17
267(2): 04/04/02 03:16 ID:??? AAS
'!'あたりを見るとXSLを理解してないような。
<xsl:template match="/">
<html><body>
<xsl:for-each select="(body|.//rb)/text()">
<xsl:choose>
<xsl:when test=".='?'">
<xsl:text> </xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
省6
268: 267 04/04/02 03:21 ID:??? AAS
化けた。スマン。
<xsl:when test=".='&#10;'">
全角を置き換えて。
269: 266 04/04/02 20:40 ID:??? AAS
ありがとうございました。"!"は拾ってくれるようになりました。
<html xmlns="外部リンク:www.w3.or"><body>
Thisisapen!
</body></html>
しかし、上のように単語間のスペースは拾われないみたいです。
おっしゃるとおりXSLTはまだかじりたてなので、自分でも調べてみます。
270: 04/04/02 20:50 ID:??? AAS
自己レスです。xmlのほうのbodyタグに
xml:space="preserv"
と属性を加えたら期待通りの結果が得られました。
重ね重ねありがとうございました。
271: 267 04/04/02 21:33 ID:??? AAS
<xsl:preserve-space>というタグがありますけど…
あとxhtmlの識別子が間違ってますよ。
272(2): 04/04/08 12:47 ID:Pkn49QjT(1) AAS
<A>
<B><C>○あいう</C></B>
<B><C>100</C></B>
<B><C>200</C></B>
<B><C>○いうえ</C></B>
<B><C>50</C></B>
</A>
を
<A>
<B>
省13
273: 04/04/08 13:10 ID:??? AAS
>>272
よく読んでいないけれど、ツリー構造の変更は XSL ではなくて、
DOM じゃないのか?
274(1): 04/04/08 16:06 ID:??? AAS
AA省
275(1): 04/04/08 18:38 ID:??? AAS
>>257
遅レスですが
<xsl:copy-of select="document('')/...."/>
ってこと?テンプレートとしては使えないけど。使えても意味ないけどね。
276: 04/04/09 10:37 ID:??? AAS
>>274
ありがとう。
元の処理に教えていただいたコードを入れて動かしたいと思います。
277(1): 04/04/18 17:14 ID:??? AAS
>>275
いや、C言語とかだと自分自身を出力するプログラムが書けるんですが
外部リンク[html]:www.ice.nuie.nagoya-u.ac.jp
xsltの場合ネームスペースとかの関係で無理なんじゃないかと思って。
でもネームスペースを明示的に指定してやればできるのか?
documentで参照するのはアリなのかなぁ。
278: 04/04/18 21:38 ID:??? AAS
>>277
document('')で自分を参照するのは割と普通に使いますよ。自分は、ですが。
使ってるソースを目にすることもあります。
参照したデータはテンプレートとして使われることはないのでネームスペース
は(自分の少ない知識の範囲内では)そんなに問題にならないと思います。た
とえば
<xsl:template match="/">
<xsl:copy-of select="document('')//xsl:template[@match='/']"/>
</xsl:template>
これでも無限ループになる事はないです。もちろんこんなの意味ないので、別
省1
279(1): 04/05/07 01:25 ID:??? AAS
XSLTXTって使ってる人いますか?
外部リンク:xsltxt.dev.java.net
外部リンク[html]:www.zanthan.com
とりあえず < とか書かなくていいのがいい。
280: 04/05/07 01:26 ID:??? AAS
あ、&lt; です↑
281: 04/05/09 20:35 ID:??? AAS
>>279
> とりあえず < とか書かなくていいのがいい。
まともな XML オーサリングツール使えよ。
282(1): [age] 04/05/27 16:04 ID:??? AAS
<li a="2300" b="hoge"/>
<li a="jiro" b="もっこり"/>
<li a="義雄" b="boke"/>
といったようなリストがあったとして、
属性b の値が hoge の時だけ 属性a の値を取りたいんですけど、
xpathではどうすればいいのでしょうか?
上下前次1-新書関写板覧索設栞歴
あと 276 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.026s