[表示 : 全て 最新50 1-99 101- 201- 301- 2ch.scのread.cgiへ]
Update time : 02/25 04:45 / Filesize : 103 KB / Number-of Response : 347
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

XML



1 名前:名無しさん@お腹いっぱい。 [ 2001/03/18(日) 02:50 ID:laaa63cU.net ]
PHP で XML を利用するスレ

php Javaページより「XML関連情報」
www.cityfujisawa.ne.jp/~louis/apps/phpfi/xml/


62 名前:61 [01/10/07 01:11 ID:pScy9kEw.net]
>61へ自己レス

<xsl:stylesheet exclude-result-prefixes="#default 独自のNS">で出力側にNSがコピーされることは避けられるみたいだけど、うちの環境(XT+Xerces)だとなぜか、子孫要素中にここで回避したNSがあらわれる…なぜ?

63 名前:45 [01/10/08 19:45 ID:TROemo9Q.net]
>>61
そうです。その通りでした。今日たまたま仕様書を読んでいたら、
doctype-systemとdoctype-publicを両方指定しないといけないと書かれ
ているのに気がつきました。やっぱりちゃんと読まなきゃ駄目ですね。
Sablotronのせいじゃあなかったんだ(Xalanも試してみて同じ動作だった
ので仕様書を読もうと思った)

で、このスレを思い出したら、ピンポイントで回答いただいてたんですね。
ありがとうございます。

64 名前:名無しさん@お腹いっぱい。 [01/10/15 03:28 ID:BxPPcakJ.net]
XERCES-Jを使って、<TEXTAREA>に入力された文字データを
XML形式で保存しようとしています。
通常、<TEXTAREA>から来た改行コードはXMLに保存したときに
空白文字になってしまうので、XMLからデータを<TEXTAREA>に
データを戻すときに、もとのデータとは変わってしまいます。

XMLに改行つきテキストを保存させる場合どうしてますでしょうか?

65 名前:名無しさん@お腹いっぱい。 [01/10/16 17:59 ID:RIJnalaN.net]
ここでいいかわからないのですがXMLと言うことでここで質問させていただきます。
もし違った場合、どのスレに行ったらいいか教えていただければうれしいです。

XMLのことはまったくの初心者なんですが、参考書としてこれは読んどけ!みたいな本って
ありますか??教えてください。あとオライリーから発売されば入門xmlはどうですか?
読んだ人いましたら感想きかせてください。

66 名前:名無しさん@お腹いっぱい。 mailto:sage [01/10/16 18:55 ID:???.net]
>>65
日本語なら「標準XML完全解説」かしら。

67 名前:名無しさん@お腹いっぱい。 mailto:sage [01/10/22 21:38 ID:???.net]
>>65

XML"以外"だったら何が得意かを書いたほうがアドバイスしやすい。

68 名前:独学XML [01/10/25 14:56 ID:9/96eztC.net]
うひゃひゃ

69 名前:名無しさん@お腹いっぱい。 [01/11/14 11:58 ID:vArBZbrO.net]
XML勧告で名前につかえる文字っつーところで

名前開始文字は,Ll, Lu, Lo, Lt, Nlカテゴリ内の一つでなければならない。

ってあるんだけど、このLl, Lu, Lo, Lt, Nlって何?
誰か教えてプリーズ

70 名前:名無しさん@お腹いっぱい。 mailto:sage [01/11/14 19:53 ID:???.net]
www.unicode.org/Public/UNIDATA/UnicodeData.html#General%20Category
Ll Letter, Lowercase
Lu Letter, Uppercase
Lo Letter, Other
Lt Letter, Titlecase
Nl Number, Letter
だそうだ。



71 名前:名無しさん@お腹いっぱい。 mailto:sage [01/11/15 10:36 ID:???.net]
わー。ありがとうございます。感謝感激>>70

72 名前:nobodyさん mailto:sage [02/03/07 22:00 ID:???.net]
既存のhtmlをxmlに変換してくれるcgiとかはないかね?

73 名前:nobodyさん mailto:sage [02/03/08 01:45 ID:???.net]
HTML を XHTML にってのはあったような。
もっとも、当然元の文書が valid であることが前提だろうね。

74 名前:nobodyさん [02/07/06 02:33 ID:MKHdJ5OB.net]
XMLファイルがキャッシュされてしまい
XMLファイルを更新したときに、キャッシュを消さないと反映されないんですが
HTMLのMETAタグのような回避方法はないんですか?
どなたか教えてください、お願いします。

75 名前:nobodyさん [02/07/11 01:55 ID:jvFTY4N6.net]
Tidyは別に元HTMLにちょっとくらい間違いがあっても
適当に修正してXHTMLにしてくれるよ

76 名前:nobodyさん mailto:age [02/07/16 03:22 ID:???.net]
DB初心者です。
  アクセスDBとXMLのDBの違いってあるんですか?
  XMLでDB作るんだったら、アクセスで作った方が楽ですよね?

77 名前:nobodyさん mailto:sage [02/07/16 03:59 ID:???.net]
XMLをDB用途にしようと思うなら、それはまちがっとる。

78 名前:nobodyさん mailto:age [02/07/16 15:16 ID:???.net]
77さん、どういうことですか?
教授に「そんなんアクセスで十分じゃん。XMLなんて意味ないよ。
違いがないならアクセスでやれ」って言われて…。
聞かせてください。

79 名前:nobodyさん mailto:age [02/07/17 19:21 ID:???.net]
eXcelonって無料?

80 名前:77 [02/07/21 02:28 ID:8SLFqm/R.net]
>78
卒研やるんだったら、これ読んでみては。
www.rpbourret.com/xml/XMLAndDatabases.htm



81 名前:nobodyさん [02/07/30 17:38 ID:???.net]
携帯向けサイト作ってます。
 いつもXSLとXMLをsablotronで処理してるんだけど
 そろそろ飽きてきたんで、
 違うやり方があったら教えてください。


82 名前:nobodyさん mailto:sage [02/07/30 19:15 ID:???.net]
Accessの方が簡単で、適しているなら、Accessでやれば?
仕様にXMLを使う理由がないなら、あえて使う必要はない。

もちろん、XMLにできて、Accessだけではとてもやる気が起きない
ことは沢山ある。というか、組み合わせて使うこともあるわけだし。

持ち歩く構造化DBとしてはXMLは適してると思うがね。


83 名前:nobodyさん mailto:  [02/08/07 10:21 ID:???.net]
本にはcssはhtmlとxml用に、xslはxml用に開発されたとありますが、
xmlのスタイルシートはxslで書いてもcssで書いてもどっちでもいいんですか?
<?xml-stylesheet type="text/xsl" href="hoge.css"?>
こういう感じでもOKって事ですよね。

84 名前:nobodyさん mailto:  [02/08/07 10:26 ID:???.net]
ていうか今試したら、
拡張子は*.unkoとかでも平気みたいなんですけど。
中身がちゃんとしてれば拡張子なんてどうでもいいんですか?

85 名前:nobodyさん mailto:  [02/08/07 14:58 ID:???.net]
xmlを書いて、DTDも設定したんですけど、
確認のためにDTDで定義されていない要素を書いたら
なんのこともなしにxmlは表示されました。
IEで検証されるはずなのになんでですか。

86 名前:nobodyさん mailto:オーマディソーン [02/08/07 16:25 ID:???.net]
>>84
どうでもいいんです。
仕様で規制されてません。
>>85
IEは標準で検証をおこないません。

87 名前:nobodyさん mailto:  [02/08/07 16:58 ID:???.net]
>86
でも<タグ></タグ>という風になっていないとエラーが出ますよ。
これは検証されているとは言えないのですか?

88 名前:nobodyさん mailto:オーマディソーン [02/08/07 18:37 ID:???.net]
>>87
それは「DTDが」検証されているかどうか
ということとは関係ありません。


89 名前:nobodyさん mailto:  [02/08/08 10:49 ID:???.net]
<xsl:variable name="hoge">AAA</xsl:variable>
$hoge

とやっても変数がうまく使えないんですが。

90 名前:nobodyさん mailto:  [02/08/08 11:05 ID:???.net]
あと、$hoge + 3 を $hoge_new に代入したい場合はどう書けばいいんですか。



91 名前:nobodyさん [02/08/08 17:33 ID:xB7tXMmH.net]
長い文章をXMLで扱いたいのですが、
xsltやcssを使って
<br>のように簡単に改行する方法は
無いでしょうか?
(<br>は不作法というのは簡便してね)

よろしくお願いします <(_ _)>


92 名前:nobodyさん [02/08/08 17:41 ID:n0IVOtDi.net]
そもそも元がどういうXMLでどういうUAを想定しているのか


93 名前:267 mailto:sage [02/08/10 02:32 ID:???.net]
>>91

<br/> とか?

94 名前:91 [02/08/10 11:02 ID:6065tzLx.net]
>>93さん、ありがとうです。

ワタシも先程気付いて試してみたんですが、
パーサーに無視されます(>_<)


95 名前:nobodyさん [02/08/10 13:39 ID:iWj3ppL3.net]
92への答えは無しかよ

96 名前:nobodyさん mailto:sage [02/08/10 14:00 ID:???.net]
>>95 泣くなよ

それより「簡便」ってのはワザト?

かんべん 【簡便】
(1)取り扱いが簡単で、便利な・こと(さま)。「扱いの―な道具」
(2)手っ取り早いこと。「―に済ます」

97 名前:91 [02/08/10 23:42 ID:6065tzLx.net]
質問しているだけなのに、なんで叩かれるの?

XMLやっている人は心が狭い人間が多いっていうのは
本当だね。


98 名前:nobodyさん mailto:sage [02/08/11 01:02 ID:???.net]
>97
<br/>無視するパーザって何?

xslt使えば、簡単に改行ぐらい入れられるだろうに...
クライアントサイドのxslt処理対応のUAとかcoccon使ってる、とかわかんないとな。
>92 の発言の意図も酌めてないみたいだが。

>XMLやっている人は心が狭い人間が多いっていうのは
>本当だね。

(´Д`)ハァ?被害者意識ですか?妄想してんな。デンパ?

99 名前:91 [02/08/11 16:28 ID:0JshOq90.net]
>>98
無視するパーサはsablotron0.95。

DB化されている情報を、
PostgreSQL→PHP→XML→PHP(sablotron)→HTML
という形でHTML化しようとしてるんだけど。


100 名前:nobodyさん [02/08/11 18:26 ID:oWdfA3/I.net]
XSLTがちゃんと書けてないんだと思うよ。普通にいって



101 名前:.com masterさん [02/08/12 16:44 ID:UdGcdsPU.net]
漏れのIE6も<br/>を無視するぞ。

test.xml------------------------------------
<?xml version="1.0" encoding="Shift-JIS" ?>
<?xml-stylesheet type="text/xsl" href="test.xsl" ?>
<nanashi>
1<br/>
2<br/>
3<br/>
<nanashi>

test.xsl------------------------------------
<?xml version="1.0" encoding="Shift_JIS" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="4.01" encoding="Shift-JIS" indent="yes" />
<xsl:template match="/">
<html>
<body>
<xsl:value-of select="." />
</body>
</html>
</xsl:template>
</xsl:stylesheet>


102 名前:nobodyさん [02/08/12 16:55 ID:I4N87l8f.net]
ぜんぜんIEのせいじゃないし。
おなじ間違いしてる人がいるからここみな。
www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=1639&forum=9&4


103 名前:nobodyさん mailto:sage [02/08/12 21:35 ID:???.net]
<br />
じゃないのか。

104 名前:nobodyさん mailto:sage [02/08/12 21:38 ID:???.net]
そういうことじゃない。

105 名前:nobodyさん mailto:sage [02/08/12 22:32 ID:???.net]
ここにいる連中のレベルは底が知れているな。


106 名前:nobodyさん mailto:  [02/08/17 21:07 ID:???.net]
 

107 名前:nobodyさん [02/08/21 14:32 ID:Opn2Rq2W.net]
89 :nobodyさん :02/08/08 10:49 ID:???
<xsl:variable name="hoge">AAA</xsl:variable>
$hoge

とやっても変数がうまく使えないんですが。


90 :nobodyさん :02/08/08 11:05 ID:???
あと、$hoge + 3 を $hoge_new に代入したい場合はどう書けばいいんですか。

108 名前:nobodyさん mailto:sage [02/08/21 16:00 ID:???.net]
>>107
> とやっても変数がうまく使えないんですが。

うまく使えない、って言い方が曖昧。どううまく使えないんだ?
などと意地悪いっても仕方がないので、予測で回答。

> <xsl:variable name="hoge">AAA</xsl:variable>
この書き方だと、hogeにはAAAというテキストノードを持つ”ノード集合”が割当たってることになる。
単純に文字列AAAを割り当てたいなら、
<xsl:variable name="hoge" select="AAA" />
とすべき。

> あと、$hoge + 3 を $hoge_new に代入したい場合はどう書けばいいんですか。
単純に<xsl:variable name="hoge_new" select="$hoge + 3" />でイイと思うが。
つか、パラメーター渡しなら<xsl:param>と<xsl:with-param>の方がイイと思うが。

109 名前:nobodyさん [02/08/22 09:49 ID:zTnODq90.net]
>>108
レスありがとうございます。
えっと、「うまく使えない」というのは
変数を当然参照したいわけなんですが、まずはただ単純に変数に値を入れて
それをxmlで表示しようとしています。
しかし、
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="www.w3.org/1999/XSL/Transform">

<xsl:param name="hoge" select="5" />

<xsl:template match="/">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<title>練習</title>
</head>
<body>
$hoge
</body>
</html>
</xsl:template>
</xsl:stylesheet>
とやっても$hogeのところはそのまま「$hoge」としか表示されないのです。
たぶん馬鹿なことやってると思うので指摘してもらえればと思ってます。
最終的に、xmlから特定の値を見て$hogeに代入→$hogeに数値を足して$hoge_newに代入→それを表示する
という感じにしたいのです。

110 名前:nobodyさん mailto:sage [02/08/22 11:58 ID:???.net]
すいません、調べたらできました。
<xsl:value-of select="$hoge"/>
こうやらないとだめだったんですね。



111 名前:nobodyさん [02/08/22 14:15 ID:zTnODq90.net]
<xsl:param name="counter" select="1" />
<xsl:for-each select="./ほげ">

<xsl:param name="counter" select="$counter + 1" />
<xsl:value-of select="$counter"/>

</xsl:for-each>

繰り返しを何回したか知りたいので回数を知ろうと思ったんですけど
これだとエラーが出ちゃいます。
おそらく<xsl:param name="counter" select="$counter + 1" />
がいけないんだと思うんですが。$counterに1を加えてさらにcounterに代入してるのがいけないんですかね。

112 名前: mailto:afghan@brain.net.pk [02/08/22 14:36 ID:???.net]
Internet Explorer Can Read Local Files (XML Datasource)
www.securiteam.com/windowsntfocus/5OP0H2K80I.html
<html>
<head>
<base href="file:///C:/">
</head><body>
<!--let code="com.ms.xml.dso.XMLDSO.class" width="0" height="0" id="xmldso" MAYSCRIPT="true"
<?xml version="1.0"?
<!DOCTYPE file [ <!ELEMENT file (#PCDATA)
<!ENTITY contents SYSTEM "file:///C:/jelmer.txt"
] <file
&contents;</file
</appl-->
<!--ipt language="javascript" setTimeout("showIt()",2000);
function showIt() {var jelmer = xmldso.getDocument();
alert(jelmer.Text);}
</scri--></body></html>

113 名前:108 mailto:sage [02/08/22 16:30 ID:???.net]
>>111=>>109?
for-eachって、select属性で指定したノードの数だけループするわけでしょ。
そしたらループする数を数えるんじゃなくて、そのノードの数でもよいのでは?
つまり、
<xsl:variable name="conter" select="count(//ほげ)" />
(何処で定義するのかワカランから、とりあえずxsl:stylesheet直下で定義して使えるよう「//ほげ」とした)

これじゃダメ?

114 名前:108 mailto:ageてみる [02/08/23 12:26 ID:???.net]
>>113自己レス。

> >>111=>>109?
ID見れば一目瞭然でしたね。

> そしたらループする数を数えるんじゃなくて、そのノードの数でもよいのでは?
と思ったのは、>111で「繰り返しを何回したか」ってのを「繰り返しを”最終的に”何回したか」
という風に読んだため。「今何回目?」はこれじゃダメですよね。
そういう場合はposition()関数使うか、xsl:numberエレメント使ってみてください。
<xsl:variable name="counter" select="position" />とか
<xsl:variable name="counter"><xsl:number count="ほげ" /></xsl:variable>とか。

でも、どっちも<xsl:template match="ほげ">〜</xsl:template>内でしか使えないけど。

115 名前:nobodyさん mailto:sage [02/08/23 14:23 ID:???.net]
>>114
何度もすいません。
<xsl:variable name="counter"><xsl:number count="ほげ" /></xsl:variable>
このやり方でうまくいきました。
どうもありがとうございました。

116 名前:nobodyさん mailto:sage [02/08/23 15:43 ID:???.net]
<xsl:variable name="hoge" select="name()"/> と、
ある変数を宣言してから、別のテンプレートをapplyして、その中から
先ほどのhogeを取り出したいのですが、参照できない・・・これが
いわゆるスコープなんでしょうか?

だったらというんで、
<xsl:variable name="hoge">
 <xsl:value-of select="name()"/>
 <xsl:apply-templates select="なにか" />
</xsl:variable>
を思いついたんですが、冷静に考えるとダメ。
お馬鹿ですみません、良い方法はないものでしょうか。

117 名前:nobodyさん mailto: [02/08/23 16:45 ID:???.net]
xmlでデータ構造を決めてxslでレイアウトするわけですが、
レイアウトが複雑なほどxslでのコーディングは大変になります。
これは当然だと思うのですが、
xmlのデータ構造をxslをコーディングする時のことを考えて
やりやすいツリー構造にするというのはやはり当然なのでしょうか。
xmlはデータの構造、意味が大事だと思うのですが、
xslの時の事を考えて少しくらいやりやすい用に変えるというのはありですか?
使いたい値を
<hoge value="1">
<aiu></aiu>
</hoge>
の属性valueのように用意しておくとか。

118 名前:108 mailto:sage [02/08/23 16:45 ID:???.net]
>>116
> いわゆるスコープなんでしょうか?
そうです。で、こういう時こそパラメータ渡しでしょう。

<xsl:apply-templates select="なにか">
 <xsl:with-palam name="hoge" select=name()" />
</xsl:apply-templates>

<xsl:template match="なにか">
<xsl:palam name="hoge" />
<!-- 適当な処理を。ここで$hoge使って参照できます。 -->
</xsl:template>

119 名前:nobodyさん mailto:sage [02/08/23 17:14 ID:???.net]
>>118
あっ、パラメータとしてテンプレートに渡せるんですね。
ありがとうございます。やってみます。
(学校でXSLTバイブル借りてきて必死で読解中;)

120 名前:nobodyさん mailto:sage [02/08/23 17:18 ID:???.net]
>>117
element nodeをattribute nodeにしたところで、どちらもchild nodeだから
「コーディング」の手間はそんなに変わらないと思われ。
ただ、冗長になるxmlを簡素にするため子エレメントを属性にするというのはアリなんだろうけど。

<member>
  <name>ひろゆき</name>
  <age>35</age>
</member>

ってのを、

<member age="35">ひろゆき</member>

みたいに。



121 名前:nobodyさん mailto:sage [02/08/23 17:35 ID:???.net]
>>119
> あっ、パラメータとしてテンプレートに渡せるんですね。
そうです。
で、>118、誤記が多すぎますね、ゴメンナサイ。

 ×with-palam → ○with-param
 ×select=name()" → ○select="name()"
 ×palam → ○param

ちなみに、テンプレート内の<xsl:param name="hoge">にselect属性を書いてやると、
それがwith-paramで渡してないときに使うデフォルト値になります。

122 名前:nobodyさん mailto:sage [02/08/23 17:48 ID:???.net]
>>121
あ、ちょうど今それで真剣に悩んでいました。(w
(英語力つけなあかん・・・。)

キチンと渡ってるのが確認できました。ありがとうございます〜。

123 名前:nobodyさん [02/08/27 13:16 ID:708yYzJe.net]
javaの中でxmlにxslを適用してhtmlを吐き出すことって出来ますか?

124 名前:nobodyさん mailto:sage [02/08/27 14:40 ID:???.net]
>>123
javascript?

125 名前:nobodyさん mailto:sage [02/08/27 14:49 ID:???.net]
>>123
できますよ。Javaで。

126 名前:nobodyさん [02/08/29 17:23 ID:9rDVXmvU.net]
質問なんですが、たとえば

<aa>bbb
<cc>ddd</cc>
</aa>

というXMLがあったとして

<xsl:value-of select="aa" />
と指定すると
bbbddd
と出力されるじゃないですか。

これを

bbb
のみに指定したい場合、どうすればいいのでしょうか?

127 名前:nobodyさん mailto:sage [02/08/29 18:22 ID:???.net]
>>126
<xsl:value-of select="aa/text()" />

128 名前:nobodyさん [02/08/29 18:38 ID:9rDVXmvU.net]
thanks!

129 名前:nobodyさん [02/09/03 07:30 ID:AvKW2Hmg.net]
domをいじってて行き詰まってしまいました。
例えばXMLが以下のようにあるとして

<aa>
<bb id="1">cc1</bb>
<bb id="2">cc2</bb>
<bb id="3">cc3</bb>
</aa>

で、XSLT で表示させたいんですが、

<xsl:template match="aa/bb">
<html>
<body>
<xsl:if test="@id='1'"> ← @
<xsl:value-of select="." />
</xsl:if>
</body>
</html>
</xsl:template>

のようにし、domを使って@の部分の @id='1' を変数にしたいのです。ようするに@id=xとしたいのです。
で、xの値をformのselectなどを使って選択できるようにしたいのです。
まあようするにjavascriptからxsltの内容を少しだけ操作したいのですが、、。

項目が40くらいに増えそうなのでxsl:chooseを使うのは現実的ではないとは思います。
どうかご教授ください。お願いします。

130 名前:108 mailto:sage [02/09/03 09:19 ID:???.net]
>>129
私の場合、クライアントのmsxml.dllの事を考え、クライアントサイド(JavaScript)でなく
サーバーサイド(ASP)でやっつけてます。

MSXMLの4.0なら、まずXSLTで
  <xsl:param name="hoge"/>
をxsl:stylesheetの直下に置いて、
  <xsl:if test="@id=$hoge">
としておく。で、DOMでは
  xslProc.addParameter "hoge", 1
とする。
この、最後の1をフォームなりで取得した値にすればいいです。
まぁ、>>129の場合で言えばxですか。
addParameterについてはMSDNででも調べてみてください。

他のパーサーはわかんないです。



131 名前:nobodyさん [02/09/04 03:11 ID:ZMCjz8y0.net]
>>130
なるほど、ありがとうございます。

でもしんどいなぁそれ。俺はサーバーサイドのスクリプトは全く知らないもんで。

でも表示させたいバリエーションの数だけXSLTを作るものじゃないし。
みなさんはどうやって解決させてるのか知りたいです。

132 名前:nobodyさん mailto:sage [02/09/04 12:27 ID:???.net]
>>131
自分以外の不特定多数のクライアントサイドから
サーバに置いてある*.xslを書き換えられるのは、いかがなものかと...


133 名前:nobodyさん [02/09/10 22:07 ID:hmjbWsYD.net]
InfoteriaとかでXMLライブラリが高価な値段で売ってるけど、
あれってそんなに必要なの?
なんか、無くても全然問題ないような気がするんだけど・・・

134 名前:nobodyさん mailto:sage [02/09/11 02:21 ID:???.net]
>>133
全然必要ないんだけど、多少払ってもいいから XML 使いたいっていう客もいる。
まぁ設計だけするけど開発は外に出すような企業の情シス相手の怪しい商売だな。

135 名前:133 [02/09/11 08:30 ID:qQMSK36W.net]
>134
めちゃめちゃ判りやすい例えで説明してくれてありがとう。

136 名前:nobodyさん [02/09/12 01:25 ID:oCfEAb9q.net]
XMLはじめて2日目の者なのですが、
ちょっと質問させてください。

たとえば、XMLの方で、

<root>
<文章>あいうえお、<強調>かきくけこ</強調>さしすせそ<強調>たちつてと</強調>なに・・・</文章>
</root>
だとして、


これを、XSLで、

<p>あいうえお、<b>かきくけこ</b>さしすせそ<b>たちつてと</b>なに・・・</p>

みたいにするには、どうすればよいのでしょうか?
なんかうまくいかないのです。

137 名前:nobodyさん [02/09/12 02:15 ID:wHFPtXre.net]
答えてもいいけどやってみたことを書いてよ

138 名前:136 mailto:sage [02/09/12 02:56 ID:???.net]
>>137 さん、返答ありがとうございます。
まだ、XSLの方が、よくわかっていないのですが、次のように書いてみて、うまくいきませんでした。

<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet xmlns:xsl="www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html><head></head><body>
<xsl:apply-templates select="root/文章"/>
</body></html>
</xsl:template>
<xsl:template match="文章">
<xsl:apply-templates select="強調"/>
<xsl:value-of select="."/>
</xsl:template>
<xsl:template match="強調">
<b><xsl:value-of select="."/></b>
</xsl:template>
</xsl:stylesheet>

上のほうの投稿で、text() というのがあったので、「これがヒントになるかな?」
ともおもったのですが、うーん、ちょっとわからないというところです。

アプローチとして、
1) xsl:for-eachとxsl:if を組み合わせて、タグを見て判定しながら、
 順次連結してゆくような感じなのだろうか。。。
2)それとも、<強調> タグを<b>へと「ポン」と置き換えるようなアプローチ?
 (できるんでしょうか。。。)

というところで現在考えているところなんです。。。

139 名前:nobodyさん [02/09/12 03:41 ID:wHFPtXre.net]
それだと「match="文章"」のテンプレまで来た後
1.まず<文章>の下位の<強調>要素のみにテンプレを適用させる
 a. <強調>かきくけこ</強調>に「match="強調"」テンプレが適用
 b. <強調>たちつてと</強調>に「match="強調"」テンプレが適用
2.そのあと「文章」のvalue(=「あいうえお、かきくけこさしすせそたちつてとなに・・・ 」)を出力

になっちゃうでしょ。(続く)

140 名前:nobodyさん [02/09/12 03:41 ID:wHFPtXre.net]
素直に書けばこうなんだけど、

<?xml version="1.0" encoding="shift_jis" ?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="www.w3.org/1999/XSL/Transform"
>

<xsl:template match="/root">
<html><body>
<xsl:apply-templates />
</body></html>
</xsl:template>

<xsl:template match="文章">
<p>
<xsl:apply-templates />
</p>
</xsl:template>

<xsl:template match="強調">
<b>
<xsl:apply-templates />
</b>
</xsl:template>

</xsl:stylesheet>



141 名前:nobodyさん [02/09/12 03:42 ID:wHFPtXre.net]
これだと「match="文章"」まできたところで
1.<xsl:apply-templates />なので<文章>のすべての子にテンプレを適用
 a.あいうえお、→テンプレがないのでそのまま出力
 b.<強調>かきくけこ</強調>→「match="強調"」テンプレが適用
 c.さしすせそ
 d.<強調>たちつてと</強調>
 e.なに・・・

ってなる。

142 名前:136 mailto:sage [02/09/12 04:03 ID:???.net]
>>139-141

おおなるほど、そういう風に書いていけばよいのですね。

WEBの内容をXML+XSLにするときに、これ系のものが一番頻繁に
発生しそうだったので、なんとか解決したいと思っていました。

ご親切にありがとうございました。

143 名前:nobodyさん [02/09/12 10:51 ID:8Gsi2jrn.net]
XML マスター、認定制度開始後11カ月で2,000名突破
japan.internet.com/webtech/20020911/5.html


144 名前:nobodyさん [02/09/13 20:39 ID:cekDek5K.net]
W3Cはドキュン

145 名前:nobodyさん [02/09/15 06:41 ID:SF6N5Qb4.net]
すみません、
XSL(T)で、乱数を発生させるにはどうすればよいのでしょうか?
乱数関数のようなものがありますか?

146 名前:b [02/09/15 06:50 ID:l/2nwin0.net]
profiles.yahoo.co.jp/tengaiten2002

147 名前:nobodyさん mailto:sage [02/09/17 21:34 ID:???.net]
<sage>


148 名前:nobodyさん [02/09/17 22:52 ID:HVpscvY7.net]
<age/>

149 名前:研修中 [02/09/18 00:16 ID:wp6aYjv8.net]
最近XMLを勉強し始めた者です.
XMLでもともと構造化されている文書を記述したのですが,思った通りに
表現できません.調べたんですが,よくわかりません...
ちなみにプログラムの知識はまったくないです.
やりたいことは,下のXMLのtag3について,ID毎に中身のテキストを表示
したい.(IDが1ならば「あえおおお」,IDが2ならば「いか」と表示したい)
そこで,下記のXML,XSLを作ったのですが,なぜかIDが2のものしか表示されま
せんでした.
どなたかわかる方,よろしくお願いします.

XML----------------------------------------------------------------
<root>
<tag1>
  <tag2>
   <tag3 ID="1">あ
   <tag3 ID="2">い
   <tag3 ID="3">う
     <tag3 ID="1">え
       <tag3 ID="2">か
       </tag3>
     </tag3>
   </tag3>
  </tag3>
  おおお
  </tag3>
 </tag2>
</tag1>
</root>
---------------------------------------------------------------------


150 名前:研修中(149の続き) [02/09/18 00:17 ID:wp6aYjv8.net]
XSL------------------------------------------------------------------
<xsl:template match="/">
<HTML>
<HEAD><TITLE>テスト</TITLE></HEAD>
<BODY><xsl:apply-templates select="root"/></BODY>
</HTML>
</xsl:template>

<xsl:template match="/root/tag1/tag2">
<xsl:apply-templates select="tag3"/>
</xsl:template>
<xsl:template match="text()">
<xsl:if test="../@ID='1'">
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>

<xsl:template match="text()">
<xsl:if test="../@ID='2'">
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>
--------------------------------------------------------------------




151 名前:nobodyさん mailto:sage [02/09/18 01:14 ID:???.net]
>>149 マルチうざい
pc3.2ch.net/test/read.cgi/hp/984950028/l50

152 名前:nobodyさん [02/09/22 22:55 ID:Q8AxY753.net]
ホスティングサーバーを探してるんですが、PHPにlibxmlがインストールされて、domが使えるサーバーの中で、
一番安いところといえばどこでしょうか?
なるべく独自ドメインが持ち込めて、月1000円程度を探してるんですが。


153 名前:nobodyさん mailto:sage [02/09/22 23:42 ID:???.net]
板違い

154 名前:nobodyさん [02/10/04 23:41 ID:c6CF/QD0.net]
W3C=DQN;

155 名前:nobodyさん mailto:sage [02/11/04 18:36 ID:???.net]
鯖にあるcsvファイル→PerlでXMLに変換XSL参照挿入
→クライアントに送りつけた後でXSLと結合→ウマー

を実現しようとしてるんですが、IE(ver6)だと、何故か

アクセスが拒否されました。リソース[XSLファイルへのパス]の実行エラーです。

が表示されます、NN6で見たところ大丈夫でした。


hpcgi3.nifty.com/sepura/br/room_main/britemlist.cgi
↑これ、なんですが、中身がDQNなのはいいとして、どなたか原因おしえてくだされ。

156 名前:nobodyさん [02/11/29 22:21 ID:z9IknihB.net]
プログラム技術板から紹介され,こちらで質問させていただく
ことにいたしました.どうぞよろしくお願いいたします.

XQueryの話なのですが...

<hoge>foo1,foo2,foo3</hoge>
のように,デリミタ区切りのXMLソースから,XQueryを使って,
<hoge>foo1</hoge>
<hoge>foo2</hoge>
<hoge>foo3</hoge>
としたいのですが,できるのでしょうか?
そもそもXQueryはデリミタを解釈できるのでしょうか.
お手数ですが,よろしくお願いいたします.

157 名前:nobodyさん [03/01/04 02:09 ID:ukfjDXrF.net]
xml のフリーのエディターで使えるの何?

158 名前:nobodyさん mailto:sage [03/01/04 12:40 ID:???.net]
eXeed

159 名前:山崎渉 mailto:(^^)sage [03/01/15 13:36 ID:???.net]
(^^)

160 名前:かざぐるま [03/01/23 00:53 ID:GTmtrOGV.net]
最近XMLをいじり始めた者です。とても初歩的な質問かと思いますが・・・
<mydata>
<info>
<aaa>あはん</aaa>
<bbb>いひん</bbb>
<ccc>うふん</ccc>
<ddd>えへん</ddd>
<eee>おほん</eee>
</info>
<info>
</mydata>
のようなXMLから、 $searchnode(xsl:paramで定義してVBからAddParameterで値を代入)という名前のノードの値が $searchkey(同上)である<info>を抽出する というプログラムを作っています。

<xsl:variable name="resultCount" select="count(info[.=contains(.,$searchkey)])" />
<xsl:if test="$resultCount > 0">
<table border="1" width="540px">
<xsl:for-each select="info">
<xsl:variable name="infodata" select="." />
<xsl:if test="contains($infodata,$searchkey)">
<tr><xsl:apply-templates /></tr>
</xsl:if>
</xsl:for-each>
</table>
</xsl:if>
という、雑誌で拾ってきたXSLTのコードの1行目 contains(.,$searchkey)を contains($searchnode,$searchkey)にしたり、
<xsl:variable name="infodata" select="." /> を<xsl:variable name="infodata" select="$searchnode" /> にしたりしているのですが、どうにもうまくいきません。
エラーを出すわけではなく、サーチに1つもかからないようです。
$searchnodeのかわりに、直接bbbやcccといった名前を書いてやるとうまくいくようなのですが・・・
お力を貸してください。



161 名前:nobodyさん [03/04/11 17:09 ID:O/+uIxRO.net]
XSLTで、値から特定の文字を除去するにはどうしたらよいのでしょうか。
具体的には
tel="090-1234-5678"
のような属性値から
num="09012345678"
のようなデータを作りたいのです。

162 名前:http://www.agemasukudasai.com/movie/ [03/04/11 17:32 ID:IQV1zmiC.net]
society.2ch.net/giin/






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<103KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef