XSL/XSLT
1名無しさん@お腹いっぱい。
01/09/05 10:49ID:dYMWGvtU 語ろう。ていうか教えて。
262nobodyさん
04/03/29 13:12ID:??? 貼っときますね
260 :nobodyさん :sage :04/03/26 13:09 ID:???
----- test.xsl -----
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:h="http://www.w3.org/1999/xhtml">
<xsl:template match="/h:html"/>
</xsl:stylesheet>
-----------------
あるいは
----- test.xsl -----
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:h="http://www.w3.org/1999/xhtml">
<xsl:template match="/"><xsl:apply-templates select="h:html" /></xsl:template>
<xsl:template match="h:html"/>
</xsl:stylesheet>
-----------------
とかどうですか。
xmlns:h=".." は xmlns=".." にしておいて
match="/html" あるいは match="/h:html" などでもいいだろうけど。
260 :nobodyさん :sage :04/03/26 13:09 ID:???
----- test.xsl -----
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:h="http://www.w3.org/1999/xhtml">
<xsl:template match="/h:html"/>
</xsl:stylesheet>
-----------------
あるいは
----- test.xsl -----
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:h="http://www.w3.org/1999/xhtml">
<xsl:template match="/"><xsl:apply-templates select="h:html" /></xsl:template>
<xsl:template match="h:html"/>
</xsl:stylesheet>
-----------------
とかどうですか。
xmlns:h=".." は xmlns=".." にしておいて
match="/html" あるいは match="/h:html" などでもいいだろうけど。
263nobodyさん
04/03/29 13:14ID:???264nobodyさん
04/03/29 13:20ID:??? 以上削除前の263でした。
262 :260 :sage :04/03/26 14:48 ID:???
>>260 の訂正
>xmlns:h=".." は xmlns=".." にしておいて
>match="/html" あるいは match="html" などでもいいだろうけど。
>>261
test.xsl で xmlns:h="http://www.w3.org/1999/xhtml" が無い場合、
match="html" でマッチするのは
名前空間無し + "html"
という要素だと思う。
で、XHTML のほうは
<html xmlns="http://www.w3.org/1999/xhtml"> ... </html>
なってたら、html 要素は内部的には
名前空間 "http://www.w3.org/1999/xhtml" + "html"
になってる。
名前空間無し + "html"
と
名前空間 "http://www.w3.org/1999/xhtml" + "html"
は違ってる。なのでマッチしない。
そこで、>>260 に書いたみたく、XSLT の側でマッチさせる対象を後者の
ような名前空間 + "html" なものになるよう指定しなきゃいけない。
<html xmlns:xhtml="http://www.w3.org/1999/xhtml"/>
と書いた場合は、<html の html は「名前空間無し + "html"」になる。
プリフィックスで xhtml に "http://www.w3.org/1999/xhtml" を割りあててる
から、これはデフォルトプリフィックス使ってる <html そのものには影響しない。
262 :260 :sage :04/03/26 14:48 ID:???
>>260 の訂正
>xmlns:h=".." は xmlns=".." にしておいて
>match="/html" あるいは match="html" などでもいいだろうけど。
>>261
test.xsl で xmlns:h="http://www.w3.org/1999/xhtml" が無い場合、
match="html" でマッチするのは
名前空間無し + "html"
という要素だと思う。
で、XHTML のほうは
<html xmlns="http://www.w3.org/1999/xhtml"> ... </html>
なってたら、html 要素は内部的には
名前空間 "http://www.w3.org/1999/xhtml" + "html"
になってる。
名前空間無し + "html"
と
名前空間 "http://www.w3.org/1999/xhtml" + "html"
は違ってる。なのでマッチしない。
そこで、>>260 に書いたみたく、XSLT の側でマッチさせる対象を後者の
ような名前空間 + "html" なものになるよう指定しなきゃいけない。
<html xmlns:xhtml="http://www.w3.org/1999/xhtml"/>
と書いた場合は、<html の html は「名前空間無し + "html"」になる。
プリフィックスで xhtml に "http://www.w3.org/1999/xhtml" を割りあててる
から、これはデフォルトプリフィックス使ってる <html そのものには影響しない。
265”削除”後の260
04/03/29 18:58ID:??? (´・ω・`)
266nobodyさん
04/04/02 00:28ID:I+SOWEa+ ・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="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.or/Profiles/XHTML-transitional">
<xsl:output indent="yes" method="html"/><xsl:template match="/">
<html><body>
<xsl:for-each select="body">
<xsl:for-each select="ruby">
<xsl:value-of select="rb" />
</xsl:for-each>
</xsl:for-each>
</body></html>
</xsl:template>
</xsl:stylesheet>
で、
<html xmlns="http://www.w3.or/Profiles/XHTML-transitional">
<body>This is a pen!</body></html>
と出力させたいんだけど、
<html xmlns="http://www.w3.or/Profiles/XHTML-transitional">
<body>Thisisapen</body></html>
実際にはこう。どなたか知恵をお貸しください。おながいします。
<?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="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.or/Profiles/XHTML-transitional">
<xsl:output indent="yes" method="html"/><xsl:template match="/">
<html><body>
<xsl:for-each select="body">
<xsl:for-each select="ruby">
<xsl:value-of select="rb" />
</xsl:for-each>
</xsl:for-each>
</body></html>
</xsl:template>
</xsl:stylesheet>
で、
<html xmlns="http://www.w3.or/Profiles/XHTML-transitional">
<body>This is a pen!</body></html>
と出力させたいんだけど、
<html xmlns="http://www.w3.or/Profiles/XHTML-transitional">
<body>Thisisapen</body></html>
実際にはこう。どなたか知恵をお貸しください。おながいします。
267nobodyさん
04/04/02 03:16ID:??? '!'あたりを見ると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="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</body></html>
</xsl:template>
テストしてないので自信はないですが。頭と尻に余計なものがくっつくヨカン。
<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="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</body></html>
</xsl:template>
テストしてないので自信はないですが。頭と尻に余計なものがくっつくヨカン。
268267
04/04/02 03:21ID:??? 化けた。スマン。
<xsl:when test=".='&#10;'">
全角を置き換えて。
<xsl:when test=".='&#10;'">
全角を置き換えて。
269266
04/04/02 20:40ID:??? ありがとうございました。"!"は拾ってくれるようになりました。
<html xmlns="http://www.w3.or/Profiles/XHTML-transitional"><body>
Thisisapen!
</body></html>
しかし、上のように単語間のスペースは拾われないみたいです。
おっしゃるとおりXSLTはまだかじりたてなので、自分でも調べてみます。
<html xmlns="http://www.w3.or/Profiles/XHTML-transitional"><body>
Thisisapen!
</body></html>
しかし、上のように単語間のスペースは拾われないみたいです。
おっしゃるとおりXSLTはまだかじりたてなので、自分でも調べてみます。
270nobodyさん
04/04/02 20:50ID:??? 自己レスです。xmlのほうのbodyタグに
xml:space="preserv"
と属性を加えたら期待通りの結果が得られました。
重ね重ねありがとうございました。
xml:space="preserv"
と属性を加えたら期待通りの結果が得られました。
重ね重ねありがとうございました。
271267
04/04/02 21:33ID:??? <xsl:preserve-space>というタグがありますけど…
あとxhtmlの識別子が間違ってますよ。
あとxhtmlの識別子が間違ってますよ。
272nobodyさん
04/04/08 12:47ID:Pkn49QjT <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>
<C>○あいう</C>
<D>100</D>
<D>200</D>
</B>
<B>
<C>○いうえ</C>
<D>50</D>
</B>
</A>
に書き換えたいのですが、xpathで
1. /A/B/Cで○があるもの、もしくは○がないもの
2. 自分の一番近い兄で/A/B/Cで○があるもの
というのはどう表記されるでしょうか?
<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>
<C>○あいう</C>
<D>100</D>
<D>200</D>
</B>
<B>
<C>○いうえ</C>
<D>50</D>
</B>
</A>
に書き換えたいのですが、xpathで
1. /A/B/Cで○があるもの、もしくは○がないもの
2. 自分の一番近い兄で/A/B/Cで○があるもの
というのはどう表記されるでしょうか?
274nobodyさん
04/04/08 16:06ID:??? >>272
>1. /A/B/Cで○があるもの、もしくは○がないもの
starts-with(.,'○') か これを not() で囲う
>2. 自分の一番近い兄で/A/B/Cで○があるもの
>というのはどう表記されるでしょうか?
preceding::C[starts-with(.,'○')][1]
こんなでしょうか。ここから
<xsl:template match="/A">
<A>
<xsl:apply-templates select="B/C[starts-with(.,'○')]"/>
</A>
</xsl:template>
<xsl:template match="B/C[starts-with(.,'○')]">
<xsl:variable name="val" select="."/>
<B>
<C><xsl:value-of select="."/></C>
<xsl:for-each select="following::C[substring(.,1,1) != '○']">
<xsl:if test="preceding::C[starts-with(.,'○')][1] = $val">
<D><xsl:value-of select="."/></D>
</xsl:if>
</xsl:for-each>
</B>
</xsl:template>
これでとりあえずできるかと。要素数増えるとfor-each以下が効率悪そうだけ
ど。(.,'○')が顔文字にしか見えないのが欠点。
>1. /A/B/Cで○があるもの、もしくは○がないもの
starts-with(.,'○') か これを not() で囲う
>2. 自分の一番近い兄で/A/B/Cで○があるもの
>というのはどう表記されるでしょうか?
preceding::C[starts-with(.,'○')][1]
こんなでしょうか。ここから
<xsl:template match="/A">
<A>
<xsl:apply-templates select="B/C[starts-with(.,'○')]"/>
</A>
</xsl:template>
<xsl:template match="B/C[starts-with(.,'○')]">
<xsl:variable name="val" select="."/>
<B>
<C><xsl:value-of select="."/></C>
<xsl:for-each select="following::C[substring(.,1,1) != '○']">
<xsl:if test="preceding::C[starts-with(.,'○')][1] = $val">
<D><xsl:value-of select="."/></D>
</xsl:if>
</xsl:for-each>
</B>
</xsl:template>
これでとりあえずできるかと。要素数増えるとfor-each以下が効率悪そうだけ
ど。(.,'○')が顔文字にしか見えないのが欠点。
275nobodyさん
04/04/08 18:38ID:???277nobodyさん
04/04/18 17:14ID:??? >>275
いや、C言語とかだと自分自身を出力するプログラムが書けるんですが
http://www.ice.nuie.nagoya-u.ac.jp/~h003149b/lang/quine.html
xsltの場合ネームスペースとかの関係で無理なんじゃないかと思って。
でもネームスペースを明示的に指定してやればできるのか?
documentで参照するのはアリなのかなぁ。
いや、C言語とかだと自分自身を出力するプログラムが書けるんですが
http://www.ice.nuie.nagoya-u.ac.jp/~h003149b/lang/quine.html
xsltの場合ネームスペースとかの関係で無理なんじゃないかと思って。
でもネームスペースを明示的に指定してやればできるのか?
documentで参照するのはアリなのかなぁ。
278nobodyさん
04/04/18 21:38ID:??? >>277
document('')で自分を参照するのは割と普通に使いますよ。自分は、ですが。
使ってるソースを目にすることもあります。
参照したデータはテンプレートとして使われることはないのでネームスペース
は(自分の少ない知識の範囲内では)そんなに問題にならないと思います。た
とえば
<xsl:template match="/">
<xsl:copy-of select="document('')//xsl:template[@match='/']"/>
</xsl:template>
これでも無限ループになる事はないです。もちろんこんなの意味ないので、別
のネームスペースを使って設定ファイル的なことをする方が一般的だと思います。
document('')で自分を参照するのは割と普通に使いますよ。自分は、ですが。
使ってるソースを目にすることもあります。
参照したデータはテンプレートとして使われることはないのでネームスペース
は(自分の少ない知識の範囲内では)そんなに問題にならないと思います。た
とえば
<xsl:template match="/">
<xsl:copy-of select="document('')//xsl:template[@match='/']"/>
</xsl:template>
これでも無限ループになる事はないです。もちろんこんなの意味ないので、別
のネームスペースを使って設定ファイル的なことをする方が一般的だと思います。
279nobodyさん
04/05/07 01:25ID:??? XSLTXTって使ってる人いますか?
ttps://xsltxt.dev.java.net/
ttp://www.zanthan.com/ajm/xsltxt/index.html
とりあえず < とか書かなくていいのがいい。
ttps://xsltxt.dev.java.net/
ttp://www.zanthan.com/ajm/xsltxt/index.html
とりあえず < とか書かなくていいのがいい。
280nobodyさん
04/05/07 01:26ID:??? あ、&lt; です↑
282nobodyさん
04/05/27 16:04ID:??? <li a="2300" b="hoge"/>
<li a="jiro" b="もっこり"/>
<li a="義雄" b="boke"/>
といったようなリストがあったとして、
属性b の値が hoge の時だけ 属性a の値を取りたいんですけど、
xpathではどうすればいいのでしょうか?
<li a="jiro" b="もっこり"/>
<li a="義雄" b="boke"/>
といったようなリストがあったとして、
属性b の値が hoge の時だけ 属性a の値を取りたいんですけど、
xpathではどうすればいいのでしょうか?
284nobodyさん
04/06/04 12:24ID:??? <a>
<b>bbb</b>
<c>ccc</c>
</a>
こんな感じのものを、「<b>要素が存在すればattributeにbを書き、<b>要素が存在しないまたは<b>要素の中身が空の場合はattributeにcを書く」というふうにしたいのですが、
<xsl:attribute name="foo">
<xsl:choose>
<xsl:when test="条件">
<xsl:value-of select="b" />
<xsl:/when>
<xsl:otherwise>
<xsl:value-of select="c" />
<xsl:/otherwise>
</xsl:choose>
</xsl:attribute>
whenの条件にどのように書けばいいのでしょうか?そもそもchooseは間違っているのでしょうか?
<b>bbb</b>
<c>ccc</c>
</a>
こんな感じのものを、「<b>要素が存在すればattributeにbを書き、<b>要素が存在しないまたは<b>要素の中身が空の場合はattributeにcを書く」というふうにしたいのですが、
<xsl:attribute name="foo">
<xsl:choose>
<xsl:when test="条件">
<xsl:value-of select="b" />
<xsl:/when>
<xsl:otherwise>
<xsl:value-of select="c" />
<xsl:/otherwise>
</xsl:choose>
</xsl:attribute>
whenの条件にどのように書けばいいのでしょうか?そもそもchooseは間違っているのでしょうか?
287nobodyさん
04/06/10 09:00ID:??? 1ページの表示件数を10とかに指定して、
続きは<a>で次のページを表示させる…ってことは、
xsltでできるんでしょうか?
それともほかのプログラムと組み合わせたほうが賢明なんでしょうか?
続きは<a>で次のページを表示させる…ってことは、
xsltでできるんでしょうか?
それともほかのプログラムと組み合わせたほうが賢明なんでしょうか?
288nobodyさん
04/06/11 16:14ID:??? サーバーサイドでやればできる。実際動かしてみたことある。
しかし素直にDOMとか使った方がいいかと。
しかし素直にDOMとか使った方がいいかと。
289287
04/06/11 20:00ID:??? >>288
DOMっすかあ・・・。
最近XMLに興味を持ち始めて、あとPHPも気になりだしたような、
プログラミングなんてまったくできない人間なので。
これから勉強していきたいと思います。ありがとう。
DOMっすかあ・・・。
最近XMLに興味を持ち始めて、あとPHPも気になりだしたような、
プログラミングなんてまったくできない人間なので。
これから勉強していきたいと思います。ありがとう。
290nobodyさん
04/06/11 21:21ID:??? 俺も一年くらい前からそんな感じで勉強してます。
291nobodyさん
04/06/14 05:46ID:??? PHP を使おうとは思うんだが、サーバーで動的生成か、ローカルで静的生成かで迷ってる。
ブログ程度なら静的にすべきなのかな。でも、動的だとコンテントネゴシエーションとかブラウザ振り分けなどの恩恵が……うーむ。
ブログ程度なら静的にすべきなのかな。でも、動的だとコンテントネゴシエーションとかブラウザ振り分けなどの恩恵が……うーむ。
292nobodyさん
04/06/14 06:23ID:??? blog≠xml blog∩xml=Φ
blog≠xslt blog∩xslt=Φ
だと思うけど、違うのかな
blog≠xslt blog∩xslt=Φ
だと思うけど、違うのかな
293nobodyさん
04/06/14 06:47ID:???294nobodyさん
04/06/15 10:23ID:??? Φは空集合やろ
blog∩xslt = Lenyaに附属してたblogのサンプル
だと思うが、出来はいまいちだった
blog∩xslt = Lenyaに附属してたblogのサンプル
だと思うが、出来はいまいちだった
295nobodyさん
04/06/23 11:34ID:1zBprzUE <item id="a">
<created>2004-01-03T00:00</created>
<modified>2004-01-04T00:00</modified>
</item>
<item id="b">
<created>2004-01-02T00:00</created>
<modified>2004-03-01T00:00</modified>
</item>
<item id="c">
<created>2004-02-01T00:00</created>
</item>
これら item 要素の子 created・modified 両要素の内容を選別して親の item 要素を新しい順 (b・c・a) に並べ替えたいのですが、例えば以下のように xsl:sort 要素を使ってもうまくできません。
<xsl:apply-templates select="item">
<xsl:sort select="created or modified" order="descending"/>
</xsl:apply-templates>
助けてくださいお願いします。
<created>2004-01-03T00:00</created>
<modified>2004-01-04T00:00</modified>
</item>
<item id="b">
<created>2004-01-02T00:00</created>
<modified>2004-03-01T00:00</modified>
</item>
<item id="c">
<created>2004-02-01T00:00</created>
</item>
これら item 要素の子 created・modified 両要素の内容を選別して親の item 要素を新しい順 (b・c・a) に並べ替えたいのですが、例えば以下のように xsl:sort 要素を使ってもうまくできません。
<xsl:apply-templates select="item">
<xsl:sort select="created or modified" order="descending"/>
</xsl:apply-templates>
助けてくださいお願いします。
296nobodyさん
04/06/23 14:51ID:???298nobodyさん
04/06/25 16:19ID:??? xsl:copy-of で属性値を取得できません。
xsl:value-of なら属性値を取得できました。
-- xml --
<a href="http://example.org/"> example </a>
-- xsl --
<xsl:copy-of select="/a/@href" /> <br />
<xsl:value-of select="/a/@href" /> <br />
-- output --
<br />
http://example.org/ <br />
--
xsl:copy-of を使用して属性値を取得する方法をご存知の方がいらっしゃいましたら、
その方法をお教え下さいませ。
xsl:value-of なら属性値を取得できました。
-- xml --
<a href="http://example.org/"> example </a>
-- xsl --
<xsl:copy-of select="/a/@href" /> <br />
<xsl:value-of select="/a/@href" /> <br />
-- output --
<br />
http://example.org/ <br />
--
xsl:copy-of を使用して属性値を取得する方法をご存知の方がいらっしゃいましたら、
その方法をお教え下さいませ。
299nobodyさん
04/06/26 05:29ID:??? それだと copy-of でコピーされるのは属性ノードだからそのままでは出力で
きない。どうしてもしたいならこんな感じで、
<xsl:copy-of select="string(/a/@href)"/>
非ノードにしたものを渡せばよい。でも value-of のほうが適切。
きない。どうしてもしたいならこんな感じで、
<xsl:copy-of select="string(/a/@href)"/>
非ノードにしたものを渡せばよい。でも value-of のほうが適切。
300298
04/06/26 21:02ID:??? value-of を使うことに致します。ありがとう
301nobodyさん
04/07/03 03:02ID:??? 次のようなXMLデータがあるとき、
name="foo"の前後のitemのname属性値を表示するようなXSLTはどう書けばいいんでしょうか?
<list>
<item name="hoge" />
<item name="foo" />
<item name="bar"/>
</list>
name="foo"の前後のitemのname属性値を表示するようなXSLTはどう書けばいいんでしょうか?
<list>
<item name="hoge" />
<item name="foo" />
<item name="bar"/>
</list>
302nobodyさん
04/07/03 04:31ID:??? <xsl:value-of select="item[@name='foo']/preceding-sibling::item[1]/@name"/>
<xsl:value-of select="item[@name='foo']/following-sibling::item[1]/@name"/>
かな。試してないけど。
<xsl:value-of select="item[@name='foo']/following-sibling::item[1]/@name"/>
かな。試してないけど。
304nobodyさん
04/08/25 17:25ID:ly9L2Z7D <root>
<mage>
<mage>
<take>
<toge>
みたいな構造になっているXMLファイルがあって(上では閉じタグ省略)、
いまrootから何階層目にいるのかを知るにはどうしたら良い?
<mage>
<mage>
<take>
<toge>
みたいな構造になっているXMLファイルがあって(上では閉じタグ省略)、
いまrootから何階層目にいるのかを知るにはどうしたら良い?
306nobodyさん
04/09/06 20:13ID:koFx6bH6 天気予報は既存の配信ビジネスを守るためにRSS配信できない
http://neta.ywcafe.net/000339.html
国民の税金で気象データの収集・解析までしておきながら、
気象庁の官僚の天下り先である
・財団法人 気象業務支援センター
・財団法人 日本気象協会
の利権保護の為、未だRSS配信が拒まれているのだ。
将来的に行われるであろう地震予知の情報も、有料で国民に販売するつもりだろうか?
http://neta.ywcafe.net/000339.html
国民の税金で気象データの収集・解析までしておきながら、
気象庁の官僚の天下り先である
・財団法人 気象業務支援センター
・財団法人 日本気象協会
の利権保護の為、未だRSS配信が拒まれているのだ。
将来的に行われるであろう地震予知の情報も、有料で国民に販売するつもりだろうか?
307nobodyさん
04/09/07 09:26ID:??? 二重徴税で叩けないのかな。
309nobodyさん
04/09/07 14:14ID:??? XMLのスレにマルチしまくってるから放置しとけ
311nobodyさん
04/09/07 21:05ID:??? 気象庁職員必死だな(w
312nobodyさん
04/09/08 11:32ID:??? 306,307 は気象庁を、
310 はガソリンを、
308,311 は住民を、
各自、自由に叩いてください。
313 は XSL/XSLT ネタ、よろしく。
310 はガソリンを、
308,311 は住民を、
各自、自由に叩いてください。
313 は XSL/XSLT ネタ、よろしく。
313nobodyさん
04/09/09 02:59ID:??? 気象庁住民はガソリンで逝ってよし。
314nobodyさん
04/09/09 09:57ID:??? XSL/XSLT/ネタではなく
XSL/XSLTのネタよろしく。
XSL/XSLTのネタよろしく。
315nobodyさん
04/09/24 05:09:23ID:/pWgzu1/ <a id="a0">
<b id="b0">
<c>foo0</c>
<c>bar0</c>
</b>
<b id="b1">
<c>foo1</c>
<c>bar1</c>
</b>
</a>
のようなデータから、<c>の値を2つ指定して最初に出てくる共通の親要素を
見つけるにはどうすればよいでしょうか?
例えば、"foo0"と"bar0"なら "b0"、"foo0"と"foo1"なら"a0"がほしいです。
共通の親をすべてならなんとかなるのですが、
その中で最初にマッチする親だとさっぱりわかりません。
よろしくおねがいします。
<b id="b0">
<c>foo0</c>
<c>bar0</c>
</b>
<b id="b1">
<c>foo1</c>
<c>bar1</c>
</b>
</a>
のようなデータから、<c>の値を2つ指定して最初に出てくる共通の親要素を
見つけるにはどうすればよいでしょうか?
例えば、"foo0"と"bar0"なら "b0"、"foo0"と"foo1"なら"a0"がほしいです。
共通の親をすべてならなんとかなるのですが、
その中で最初にマッチする親だとさっぱりわかりません。
よろしくおねがいします。
316nobodyさん
04/09/25 10:50:09ID:???317316
04/09/26 08:08:17ID:??? 後で考えたら、えらい無駄な事をしてるな、と。
/descendant::c[self::node() = 'foo0']/ancestor::*[descendant::c = 'foo1'][position() = 1]
これでも、共通且つ最初にマッチする先祖を得られると思う。
/descendant::c[self::node() = 'foo0']/ancestor::*[descendant::c = 'foo1'][position() = 1]
これでも、共通且つ最初にマッチする先祖を得られると思う。
319nobodyさん
04/09/28 17:39:48ID:??? 質問です。
XSLT で <a href="javascript:foo('bar')">...</a> のようなタグを生成したいのですが、
引用符のエスケープの仕方がよくわかりません。ご存知の方、ご回答をお願いいたします。
現在はこんなコードを書いてます (エラーになります)
<a href="{concat('javascript:foo(', ''', @bar, ''', ')')}">
XSLT で <a href="javascript:foo('bar')">...</a> のようなタグを生成したいのですが、
引用符のエスケープの仕方がよくわかりません。ご存知の方、ご回答をお願いいたします。
現在はこんなコードを書いてます (エラーになります)
<a href="{concat('javascript:foo(', ''', @bar, ''', ')')}">
322nobodyさん
04/09/28 20:00:16ID:???こういう事ですね?
<xsl:element name="a">
<xsl:attribute name="href">javascript:foo(&apos;bar&apos;)</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
コピペするならこっち
<xsl:element name="a">
<xsl:attribute name="href">javascript:foo('bar')</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
アンカー・テキスト不変なら、こっち
<xsl:element name="a">
<xsl:attribute name="href">javascript:foo('bar')</xsl:attribute>
アンカー・テキスト
</xsl:element>
323nobodyさん
04/10/11 13:28:18ID:??? XSLT Standard Library
ttp://xsltsl.sourceforge.net/
exsltみたいなライブラリ集だけど、こっちの方が実用的?
ttp://xsltsl.sourceforge.net/
exsltみたいなライブラリ集だけど、こっちの方が実用的?
324nobodyさん
04/10/14 23:53:23ID:DOJgSO2G XML SchemaからXSLTの雛形というかスケルトンというか
土台を出力してくれるようなツールって無いでしょうか?
フルスクラッチで作るの、面倒じゃないですか?
土台を出力してくれるようなツールって無いでしょうか?
フルスクラッチで作るの、面倒じゃないですか?
325nobodyさん
04/10/15 00:48:57ID:???326nobodyさん
04/12/06 00:30:36ID:??? data1.xmlというファイルがあって中にxslファイルの参照先も書いてあるとします。
<xml...
<xslt:sheet1.xsl.....
<DataList>
<Data ID="0">
<String>データ0</String>
</Data>
<Data ID="0">
<String>データ0</String>
</Data>
<Data ID="0">
<String>データ0</String>
</Data>
</DataList>
このdata1.xmlファイルをdata1.xml?id=0みたいな呼び出し方をしてxslファイルにid=0という値を渡す方法ってあるのでしょうか?
<xml...
<xslt:sheet1.xsl.....
<DataList>
<Data ID="0">
<String>データ0</String>
</Data>
<Data ID="0">
<String>データ0</String>
</Data>
<Data ID="0">
<String>データ0</String>
</Data>
</DataList>
このdata1.xmlファイルをdata1.xml?id=0みたいな呼び出し方をしてxslファイルにid=0という値を渡す方法ってあるのでしょうか?
327nobodyさん
04/12/06 15:30:17ID:??? 何言いたいんだかようわからん
328nobodyさん
04/12/06 15:34:45ID:jrlDRA4f URLを打ち込むときに
data1.xml?id=0と打ち込み、ID=0の商品に関する情報だけを
表示したいんです。
URLで打ち込んだデータをXSL内の変数に取り込みたいのです。
現在だと、hrefつかってもIDの数だけxmlファイルを作成しないと
いけなくなってしまうんです。
data1.xml?id=0と打ち込み、ID=0の商品に関する情報だけを
表示したいんです。
URLで打ち込んだデータをXSL内の変数に取り込みたいのです。
現在だと、hrefつかってもIDの数だけxmlファイルを作成しないと
いけなくなってしまうんです。
329nobodyさん
04/12/23 23:41:54ID:??? >>328
今更ながら、xsltで全て作成してjavascriptでlocation.queryから引数受け取ってwindowのロード時に違うノードサクージョ
今更ながら、xsltで全て作成してjavascriptでlocation.queryから引数受け取ってwindowのロード時に違うノードサクージョ
330nobodyさん
05/01/08 15:33:14ID:??? すいません質問があります。
MSXSLを用いて変換を行おうとしているのですが
コマンドを打ち込んだときに
必要な属性'{http://www.w3.org/1999/XSL/Transform}version' が見つかりません
という変なエラーメッセージが出てしまいます。これはどうすればいいんでしょうか?
MSXSLを用いて変換を行おうとしているのですが
コマンドを打ち込んだときに
必要な属性'{http://www.w3.org/1999/XSL/Transform}version' が見つかりません
という変なエラーメッセージが出てしまいます。これはどうすればいいんでしょうか?
331nobodyさん
05/01/08 17:10:58ID:??? 330ですが
解決しちゃいました どうもです
解決しちゃいました どうもです
332nobodyさん
05/01/10 19:16:25ID:??? すみませんが誰かご教授下さい。 (マルチポストで申し訳ありません)
XMLのあるタグの属性が同じレベルのタグの属性とダブっっている時、
変換後にその属性のダブった部分を除きながら属性を並べたい場合は
どうすればよいでしょうか?
例えば
xml
<a>
<ele id="1"/>
<ele id="2"/>
<ele id="2"/>
<ele id="3"/>
<ele id="4"/>
<ele id="4"/>
<ele id="4"/>
<ele id="5"/>
</a>
を変換して
1 2 3 4 5
にするようなXSLを教えていただきたいのです。
よろしくお願いします。
XMLのあるタグの属性が同じレベルのタグの属性とダブっっている時、
変換後にその属性のダブった部分を除きながら属性を並べたい場合は
どうすればよいでしょうか?
例えば
xml
<a>
<ele id="1"/>
<ele id="2"/>
<ele id="2"/>
<ele id="3"/>
<ele id="4"/>
<ele id="4"/>
<ele id="4"/>
<ele id="5"/>
</a>
を変換して
1 2 3 4 5
にするようなXSLを教えていただきたいのです。
よろしくお願いします。
333nobodyさん
05/01/10 19:48:07ID:??? アホか。マルチポストに返答するわけ無いだろ。
334nobodyさん
05/01/22 19:16:33ID:WsL3wQoU <xsl:stylesheet xmlns:xsl="http://www.w3.org/(ry xmlns:aws="http://abc.com/"
exclude-result-prefixes="human">
<xsl:for-each select="people/person/age">
ここで別のXMLを取ってくる
<xsl:apply-templates select="human:hobbies/human:hoby" />
</xsl:for-each>
<xsl:template match="human:hobby">
exclude-result-prefixes="human">
<xsl:for-each select="people/person/age">
ここで別のXMLを取ってくる
<xsl:apply-templates select="human:hobbies/human:hoby" />
</xsl:for-each>
<xsl:template match="human:hobby">
335334
05/01/22 19:17:52ID:WsL3wQoU336nobodyさん
05/01/24 03:30:34ID:???337nobodyさん
05/01/30 14:52:43ID:0RSaGusl xmlをエクセルから作ってるんですが、日付が1900年形式でだされてしまいます。
それを表示する際に、dd-mmm-yyのフォーマットで表示したいんですが、どうすればよいでしょうか?
それを表示する際に、dd-mmm-yyのフォーマットで表示したいんですが、どうすればよいでしょうか?
338nobodyさん
05/01/30 20:37:49ID:0RSaGusl339nobodyさん
2005/04/09(土) 23:05:41ID:0FjmIeSR ノード名じゃなくて値がQNameのときに、それが特定のNSに属してるかってどうやって判断できる?
<先祖のどこか xmlns:x="http://pc8.2ch.net/test/read.cgi/php/">
...中略...<ここ この属性の値をチェックしたい="x:999654569"/>
node系関数のnamespace-uri()は値は見れないし、
string系の関数じゃ、xが本当にhttp://pc8.2ch.net/test/read.cgi/php/なのかわからん。
ずうっと名前空間宣言を全部フォローして自分で覚えとくしかないのか?
<先祖のどこか xmlns:x="http://pc8.2ch.net/test/read.cgi/php/">
...中略...<ここ この属性の値をチェックしたい="x:999654569"/>
node系関数のnamespace-uri()は値は見れないし、
string系の関数じゃ、xが本当にhttp://pc8.2ch.net/test/read.cgi/php/なのかわからん。
ずうっと名前空間宣言を全部フォローして自分で覚えとくしかないのか?
340nobodyさん
2005/04/21(木) 17:08:59ID:??? XMLもXSLもXSLTも何も知りません。
Aに1・2という情報?属性?を付けて
Bに2・3を付けて
Cに1を付けて
1が付いているのはA・C
2が付いているのはA・B
3が付いているのはB
というように表示するにはどうすればいいでしょう
Aに1・2という情報?属性?を付けて
Bに2・3を付けて
Cに1を付けて
1が付いているのはA・C
2が付いているのはA・B
3が付いているのはB
というように表示するにはどうすればいいでしょう
342nobodyさん
2005/04/21(木) 22:02:56ID:??? System.out.println("1が付いているのはA・C");
System.out.println("2が付いているのはA・B");
System.out.println("3が付いているのはB");
System.out.println("2が付いているのはA・B");
System.out.println("3が付いているのはB");
343nobodyさん
2005/04/21(木) 23:30:22ID:??? いや>>340的にはこっちのほうがわかりやすかろう。
MsgBox "1が付いているのはA・C", vbInformation
MsgBox "2が付いているのはA・B", vbInformation
MsgBox "3が付いているのはB", vbInformation
MsgBox "1が付いているのはA・C", vbInformation
MsgBox "2が付いているのはA・B", vbInformation
MsgBox "3が付いているのはB", vbInformation
344nobodyさん
2005/07/29(金) 15:21:12ID:??? デフォルトの名前空間が指定されている時、プレフィックスの無い Element は XPath でどう表現すればいいの?
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="design.xsl"?>
<hage:root xmlns="http://example.com" xmlns:hage="http://example.com/hage/">
<item1>あいうえお</item1>
<item2>かきくけこ</item2>
</hage:root>
こんな XML から "あいうえお"を取り出したいんだけど /hage:root/item1 じゃうまくいかないみたい。
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="design.xsl"?>
<hage:root xmlns="http://example.com" xmlns:hage="http://example.com/hage/">
<item1>あいうえお</item1>
<item2>かきくけこ</item2>
</hage:root>
こんな XML から "あいうえお"を取り出したいんだけど /hage:root/item1 じゃうまくいかないみたい。
345nobodyさん
2005/08/04(木) 10:02:40ID:??? スタイルシート側(desin.xslのことか?)の名前空間の設定はどうなってる?
携帯だからアドバイスしづらいな…。
まあ多分スタイルシートではxmlns="XHTMLのURI"とかやってると思う。
(これ自体は問題ないし下手にprefixつけるとUAが出力結果をXHTMLとして認識できない。)
でもこの場合あんたのスタイルシート内のXpath式内でitem1を指定しても
それはXHTMLでのitem1要素を指定していることになっている。
もちろんあんたはそんなもの扱った覚えは無いだろうしXHTMLにもそんな要素はない。
正しく処理させるには名前空間について勉強してくれ。
ソースXML文書のprefix無い方の名前空間のURIを$aとおくと、
スタイルシート側にxmlns:omanko="$a"を書き加えXPathではomanko:item1と
指定すればいい。xsl:の部分とかも不都合があればばんばん書き換えればいいから。
携帯からだから妙ちくりんな書き方になったが頑張ってくれ
んじゃ
携帯だからアドバイスしづらいな…。
まあ多分スタイルシートではxmlns="XHTMLのURI"とかやってると思う。
(これ自体は問題ないし下手にprefixつけるとUAが出力結果をXHTMLとして認識できない。)
でもこの場合あんたのスタイルシート内のXpath式内でitem1を指定しても
それはXHTMLでのitem1要素を指定していることになっている。
もちろんあんたはそんなもの扱った覚えは無いだろうしXHTMLにもそんな要素はない。
正しく処理させるには名前空間について勉強してくれ。
ソースXML文書のprefix無い方の名前空間のURIを$aとおくと、
スタイルシート側にxmlns:omanko="$a"を書き加えXPathではomanko:item1と
指定すればいい。xsl:の部分とかも不都合があればばんばん書き換えればいいから。
携帯からだから妙ちくりんな書き方になったが頑張ってくれ
んじゃ
346nobodyさん
2005/08/14(日) 13:37:07ID:XDX8Ip5H 質問です。
UTF8で配信されるXMLをSHIFT_JISでHTML化したい
場合は
@JAVAのXMLパーサーとか使う
AperlとかphpでSOAP
なんていう方法しかありませんか?
現在はXSLTで簡単にスタイルシートあててやってますが
SHIFT_JISで出力するのは無理ぽ。。です。
どうにか方法はありますのでしょうか。。
携帯サイトを運営しているのですが
UTF8じゃ文字ばけするぞゴラァ!という
クレームが多くて困ってます。
UTF8で配信されるXMLをSHIFT_JISでHTML化したい
場合は
@JAVAのXMLパーサーとか使う
AperlとかphpでSOAP
なんていう方法しかありませんか?
現在はXSLTで簡単にスタイルシートあててやってますが
SHIFT_JISで出力するのは無理ぽ。。です。
どうにか方法はありますのでしょうか。。
携帯サイトを運営しているのですが
UTF8じゃ文字ばけするぞゴラァ!という
クレームが多くて困ってます。
347nobodyさん
2005/08/14(日) 15:10:24ID:??? >>346
XSLTのoutput要素のencoding属性使ってもうまくいくと思う。
まぁ、XMLパーサ使ってフィルタプログラム作成するなり、既存のフィルタツールなり使ったほうが
柔軟性はあるが。
<<サンプル>>
■data.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="data.xsl" ?>
<root>
<data>あああ</data>
<data>いいい</data>
</root>
■data.xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="Shift_JIS" />
<xsl:template match="root">
<html><head><title>utf8->SJIS</title></head><body>
<xsl:for-each select="data">
<xsl:value-of select="text()" /><br />
</xsl:for-each>
</body></html>
</xsl:template>
</xsl:stylesheet>
XSLTのoutput要素のencoding属性使ってもうまくいくと思う。
まぁ、XMLパーサ使ってフィルタプログラム作成するなり、既存のフィルタツールなり使ったほうが
柔軟性はあるが。
<<サンプル>>
■data.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="data.xsl" ?>
<root>
<data>あああ</data>
<data>いいい</data>
</root>
■data.xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="Shift_JIS" />
<xsl:template match="root">
<html><head><title>utf8->SJIS</title></head><body>
<xsl:for-each select="data">
<xsl:value-of select="text()" /><br />
</xsl:for-each>
</body></html>
</xsl:template>
</xsl:stylesheet>
348nobodyさん
2005/08/14(日) 18:40:08ID:??? >>347氏
ご丁寧に有難う御座います。
<xsl:output method="html" encoding="Shift_JIS" />
なんてタグがあるなんて知りませんでした。。orz
早速、その方法を試してみました。
結果報告
@PCブラウザで見る(IE)
ホワイトアウトしてしまいました。
右クリでエンコード指定でシフトジスにすると表示されました。
A元からUTF8対応携帯で見る
文字化けしてしまいました。
Bシフトジスしか対応していない携帯で見る
うまく表示されるようになりました。
つまり 今まで見えてた@Aは見えなくなりましたが
Bは見えるようになりました。
恐らくブラウザ側ではUTF8として認識しているためだと
思います。
素直にphpのxmlパーサーとかでやりつかね・・・
(php5入ってないので・・・SOAP無理ぽ)
ご丁寧に有難う御座います。
<xsl:output method="html" encoding="Shift_JIS" />
なんてタグがあるなんて知りませんでした。。orz
早速、その方法を試してみました。
結果報告
@PCブラウザで見る(IE)
ホワイトアウトしてしまいました。
右クリでエンコード指定でシフトジスにすると表示されました。
A元からUTF8対応携帯で見る
文字化けしてしまいました。
Bシフトジスしか対応していない携帯で見る
うまく表示されるようになりました。
つまり 今まで見えてた@Aは見えなくなりましたが
Bは見えるようになりました。
恐らくブラウザ側ではUTF8として認識しているためだと
思います。
素直にphpのxmlパーサーとかでやりつかね・・・
(php5入ってないので・・・SOAP無理ぽ)
349nobodyさん
2005/08/14(日) 18:50:00ID:???350nobodyさん
2005/08/14(日) 19:36:51ID:??? >>348
phpでサーバサイドでのXSLT変換か。取りあえず、UTF-8からShift_JISへの変換はできたみたいだね。
phpの話になってスマンが、もしかして、header('Content-Type: text/html; charset=UTF-8');とかなってる?
header('Content-Type: text/html; charset=Shift_JIS');にしてみたら、もしかしたら動くかもね。
phpでサーバサイドでのXSLT変換か。取りあえず、UTF-8からShift_JISへの変換はできたみたいだね。
phpの話になってスマンが、もしかして、header('Content-Type: text/html; charset=UTF-8');とかなってる?
header('Content-Type: text/html; charset=Shift_JIS');にしてみたら、もしかしたら動くかもね。
351nobodyさん
2005/08/14(日) 22:31:27ID:???352344
2005/08/17(水) 20:33:45ID:??? >345
わざわざ携帯から長いレスをサンクス
俺のレスの前が3ヶ月前だったので回答は期待できないと思ってスレみてなかったよorz
結局質問してから別の場所で答えを見つけたんだけど、
XSL で XPATH 書いても XSL で定義した既定のネームスペースは XPath には適用されないってことなんだよな。
なんでそんな変な仕様なのか理解に苦しむけど。
てことで、 XML の既定のネームスペースを XSL 側では Prefix 付きで定義することで解決しました。
わざわざ携帯から長いレスをサンクス
俺のレスの前が3ヶ月前だったので回答は期待できないと思ってスレみてなかったよorz
結局質問してから別の場所で答えを見つけたんだけど、
XSL で XPATH 書いても XSL で定義した既定のネームスペースは XPath には適用されないってことなんだよな。
なんでそんな変な仕様なのか理解に苦しむけど。
てことで、 XML の既定のネームスペースを XSL 側では Prefix 付きで定義することで解決しました。
353nobodyさん
2005/08/18(木) 19:39:40ID:??? ちょっとYOUはまだ勘違いしてるかも…。そこらへんはXSLTはまともな仕様でつよ。
もっと名前空間のよさを感じてちょうだい!!!!
そして私は
もっと名前空間のよさを感じてちょうだい!!!!
そして私は
354344
2005/08/18(木) 22:02:59ID:??? ttp://www2.xml.gr.jp/log.html?MLID=xmlusers&N=5831
あたりを見て >352 のような結論に至ったわけだが、なんか勘違いがある?と思って
改めてリンク先のスレッドを読んでると
ttp://www2.xml.gr.jp/log.html?MLID=xmlusers&N=5842
に
> さらに、XPath式中のQNameを展開するときには、以下のルールが成り立ちます。
> 2. プリフィックスがついていない場合、ネームスペースURIはnullになる。
とあるな。確かに勘違いしてたかも。
> そして私は
続きが気になるよ(´・ω・`)
あたりを見て >352 のような結論に至ったわけだが、なんか勘違いがある?と思って
改めてリンク先のスレッドを読んでると
ttp://www2.xml.gr.jp/log.html?MLID=xmlusers&N=5842
に
> さらに、XPath式中のQNameを展開するときには、以下のルールが成り立ちます。
> 2. プリフィックスがついていない場合、ネームスペースURIはnullになる。
とあるな。確かに勘違いしてたかも。
> そして私は
続きが気になるよ(´・ω・`)
355初心者
2005/09/04(日) 03:53:09ID:??? どうか教えてください。
AWSでxsltを始めたばかりです。
<img>
<xsl:attribute name="src">
<xsl:value-of select="aws:MediumImage/aws:URL" />
</xsl:attribute>
<xsl:attribute name="width">
<xsl:value-of select="aws:MediumImage/aws:Width" />
</xsl:attribute>
<xsl:attribute name="height">
<xsl:value-of select="aws:MediumImage/aws:Height" />
</xsl:attribute>
<xsl:attribute name="alt">
<xsl:value-of select="$amazon_item_name" />
</xsl:attribute>
</img>
とすると、<img src="http://images.amazon.com/images/P/xxx.jpg" width="xxx" height="xxx" alt="xxx">になってしまい、閉じタグをいれることができません。
xsltでどう指定すると閉じタグをいれることができるのでしょうか?
AWSでxsltを始めたばかりです。
<img>
<xsl:attribute name="src">
<xsl:value-of select="aws:MediumImage/aws:URL" />
</xsl:attribute>
<xsl:attribute name="width">
<xsl:value-of select="aws:MediumImage/aws:Width" />
</xsl:attribute>
<xsl:attribute name="height">
<xsl:value-of select="aws:MediumImage/aws:Height" />
</xsl:attribute>
<xsl:attribute name="alt">
<xsl:value-of select="$amazon_item_name" />
</xsl:attribute>
</img>
とすると、<img src="http://images.amazon.com/images/P/xxx.jpg" width="xxx" height="xxx" alt="xxx">になってしまい、閉じタグをいれることができません。
xsltでどう指定すると閉じタグをいれることができるのでしょうか?
356nobodyさん
2005/09/04(日) 10:59:31ID:??? <xsl:output method="xml"/>
をxsl:stylesheetの直下に入れる、かな。
XHTMLでないHTMLとして出力されていると思われ。
をxsl:stylesheetの直下に入れる、かな。
XHTMLでないHTMLとして出力されていると思われ。
357初心者
2005/09/05(月) 02:29:25ID:??? >>356
どうもありがとうございます。
おっしゃる通りの方法でできました。
ただ、新しい問題が発生しました。
お付き合いいただけましたら嬉しいです。
xslt で出力される html は単独の html ではなく
ある html ファイルの <body> 内に include させたいと考えています。
今までは <xsl:output method="html" /> としていて、問題はありませんでしたが
<xsl:output method="xml" /> や <xsl:output method="xhtml" /> にすることにより
xslt によって出力される html の1行目には <?xml version="1.0" encoding="UTF-8"?>
が入ってしまうようになってしまいました。
つまり、<body> 内に <?xml version="1.0" encoding="UTF-8"?> が入ってしまいます。
文法的には問題ないようですが、なんだか気持ち悪いです。
xhtml や xml で出力するのではなく、text みたいな形で出力した方が適当でしょうか?
どうもありがとうございます。
おっしゃる通りの方法でできました。
ただ、新しい問題が発生しました。
お付き合いいただけましたら嬉しいです。
xslt で出力される html は単独の html ではなく
ある html ファイルの <body> 内に include させたいと考えています。
今までは <xsl:output method="html" /> としていて、問題はありませんでしたが
<xsl:output method="xml" /> や <xsl:output method="xhtml" /> にすることにより
xslt によって出力される html の1行目には <?xml version="1.0" encoding="UTF-8"?>
が入ってしまうようになってしまいました。
つまり、<body> 内に <?xml version="1.0" encoding="UTF-8"?> が入ってしまいます。
文法的には問題ないようですが、なんだか気持ち悪いです。
xhtml や xml で出力するのではなく、text みたいな形で出力した方が適当でしょうか?
358初心者
2005/09/05(月) 02:47:17ID:??? ゴメンナサイ。
ググったら見つけました。
<xsl:output method="xml" omit-xml-declaration="yes" /> とすると、XML 宣言をしないようにできるようですが
実際には出力されてしまいます。
なにかおかしいですかね?
ググったら見つけました。
<xsl:output method="xml" omit-xml-declaration="yes" /> とすると、XML 宣言をしないようにできるようですが
実際には出力されてしまいます。
なにかおかしいですかね?
359nobodyさん
2005/09/10(土) 01:33:29ID:??? どっちでもいいけど
alt="{$変数名}"
とは書かないの?
call-templateする予定があるとか??
あと最初以外にXML宣言入るのは文法の問題あるよ。
ただUAが無視してくれているだけだけど。
alt="{$変数名}"
とは書かないの?
call-templateする予定があるとか??
あと最初以外にXML宣言入るのは文法の問題あるよ。
ただUAが無視してくれているだけだけど。
360nobodyさん
2005/09/29(木) 03:07:41ID:??? age
どなたかXSLT2.0の話でも…
どなたかXSLT2.0の話でも…
レスを投稿する
ニュース
- 【自維】鮭おにぎり198円に絶望、コンビニすら遠い存在に…「生き延びられない」物価高で広がる生活苦★5 [ひぃぃ★]
- 【サッカー】ブラジル戦、NHKは地上波なし 本田圭佑はBSで解説… 悲鳴続出「マジかよ」 地上波はフジテレビが生中継、解説は小野伸二 [冬月記者★]
- 【芸能】田中みな実、実名告白「めっちゃ格好いい」「インスタもフォローした」 W杯日本代表にメロメロも「狙ってないからね?」 [冬月記者★]
- 【W杯】韓国が大窮地 悪夢のシナリオ止まらず 決勝T進出順位ボーダーの8位に転落 セネガル、イランに抜かれる ★5 [尺アジ★]
- 【サッカー】「世紀の談合マッチになる予感」J組の一戦が話題…ドローで両チーム決勝T進出の“異例事態” [ゴアマガラ★]
- 野党が全法案審議に応じない方針、自民ベテラン「先が見通せず打開策がない」 国会緊迫化 [蚤の市★]
- 生殖器と排泄器が一緒なのは手抜き
- ぶー
- 経団連「年内には訪中して習主席と面会したい😢レアアースもタングステンももう限界😢」 ★2 [904151406]
- 【高市悲報】今国会の全法案が廃案へ。。。飲みィのヤリィのしてきた結果がこれなのか・・・ [252835186]
- 新宿古着屋ワタナベ
- 2026現在の生まれる国ガチャSランクってどこ?