XSL/XSLT (558レス)
上下前次1-新
512: 2008/03/26(水)23:41 ID:??? AAS
いいんでないの
ほかにスレもないし
513: 2008/04/12(土)16:43 ID:??? AAS
すいません、XSLTの使用を今日から検討し始めたド初心者です。
掲示板の様な物を作成する為に、掲示板のタイトルと本文と書き込み日時をXMLで出力するPHPを書き、
別途表示の為のXSLTをスキンとして固定ファイルで用意しようと考えているのですが、
この方式で何処まで出来るのかがわからず、戸惑っています。
質問1:
例えば掲示板で良くある処理として、「3日以内の書き込みの場合にタイトルの最後に[最新情報]と追記する」等がありますが、
掲示板XMLのデータが「タイトル」「本文」「書き込み日時」しかなかったとした場合に、
XSLT側で[最新情報]と追記する方法はあるのでしょうか?
質問2:
仮に固定ファイルのXSLTでは「質問1」の処理が出来ないと仮定した場合での質問なのですが、
省10
514: 2008/04/12(土)17:46 ID:??? AAS
A1.
無理
A2.
俺だったら要素じゃなくて属性を使うかもだけど
まあ好きにすればいいんじゃないの
A3.
世の中XSLTに対応したブラウザばかりじゃないとか
XSLTで込み入ったことをやろうとすると果てしなく面倒くさいとか
そもそもXMLにこだわる必要がどれだけあんのかとか
いろいろ思うことはあるけど
省1
515: 2008/04/12(土)18:11 ID:??? AAS
XSLTってどうみても帯に短し襷に長しだよな
もっと割り切った仕様にすればいいのに
中途半端に文字列処理とか入れるから
516: 2008/04/19(土)01:12 ID:??? AAS
A4.
お前が好きだ
517: 2008/04/20(日)18:54 ID:??? AAS
つまんね
518: 2008/06/11(水)03:05 ID:??? AAS
xalanを実行するときに元のXML文書に文書型宣言が含まれていると、xalanが
validationを行いDTDを毎回ダウンロードしてしまうのですが、これを止める
ことはできないでしょうか。xalanはjava版でバージョンは2.7.0-5です。
519: 2008/06/21(土)10:42 ID:k45WphEu(1) AAS
AA省
520: 2008/06/21(土)10:43 ID:??? AAS
だいぶずれてしまいましたねorz
521: 2008/06/21(土)23:22 ID:Cd2mCbay(1/2) AAS
XMLファイルAの中の要素1に入っている、
「〜〜.html%3FA」
というURLを
xslで、
<xsl:value-of select="要素1"/>
と指定して変換したXMLを見ると、%3FAの部分が「?」に
なってしまって、リンクできないんですけど、対処法
ご存知の方居ませんかね?
522: 2008/06/21(土)23:41 ID:Cd2mCbay(2/2) AAS
521ですが、どうも勘違いしていたようで。。。
<xsl:value-of select="要素1"/> の指定でも出力されたXML自体は
のソースちゃんと%3FAになってました。
%3FAを エンコード済みの?と解釈してしまっている側の問題ですね、
本質的には。
ただ、ブラウザを弄るのは現実的ではないので、何とかxsl側で対処
出来ないでしょうか。
523: 2008/06/21(土)23:53 ID:??? AAS
お騒がせしてすみません。
出力されたXMLをhtmlにもう一回変換して
ブラウザから見たらちゃんとしたURLへの
リンクに成ってました。
RSS出力してた時はリンクが上手く飛ばなかった
んですが、同じ<a〜〜>のタグでも、ブラウザは
RSSとHTMLで違う解釈するんですね、、、
524: 2008/08/23(土)12:22 ID:??? AAS
相変わらずの過疎スレ
需要ないのかなあ
525: 2008/08/24(日)23:33 ID:??? AAS
使い方によっては面白いんで適当に使い始めたけど
PHPだと言語側の対応がイマイチで使いづらいんだ。
526: 2008/08/25(月)09:55 ID:??? AAS
「なにがなんでもXML」みたいな風潮じゃなくなったのもあるかな
527: 2008/10/31(金)11:22 ID:??? AAS
XSLTバイブルだれか譲ってくれませんか?
528(1): 2009/02/13(金)15:22 ID:X83R2PAW(1/2) AAS
for-each使って、指定したノードが存在する回数分、テキストを配置していくプログラムが作りたいです。
fo:block-containerで直接的に画面内での座標指定をしているため、その時の周回の回数から座標をY方向に計算してズラしながら配置していきたいです。
CやJavaでは、forの構文では、この中でiを見ればいま何週目か?を参照できます。
for(int i=0;i<回数;i++){
〜処理〜
}
が、
XSLTのfor-each文(もしくはその他)で、これと同じように、内部から「現在何回目か」を見る方法ってありますか?
xsl:variableでは変数なのに代入はできないそうで困ってます。
529(1): 2009/02/13(金)15:31 ID:??? AAS
>>528
ループの中で何番目か調べるのはposition()
<xsl:for-each select="/parent/child">
<xsl:value-of select="position()" />番目のノードです
</xsl:for-each>
ただし最初が0でなく1なので要注意
530: 2009/02/13(金)16:09 ID:X83R2PAW(2/2) AAS
>>529
ありがとうございます。
ループに関しては思ったとおりのことができました。
XSLTでは、再代入できる変数のようなものを使うことは不可能ですか?
ループ以外でも、XSLT内で計算するために、蓄積的に数値を足していける変数を使いたいのですが。
531: 2009/02/13(金)18:12 ID:??? AAS
そういうのはcall-templateのパラメータを使う
上下前次1-新書関写板覧索設栞歴
あと 27 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.016s