XSL/XSLTat PHP
XSL/XSLT - 暇つぶし2ch490:nobodyさん
06/10/26 13:25:08 5D6Zlz9T
変鉄もないxmlファイルのルート以下のタグ名をmethodはhtmlで表示させるだけのxsltがなにも表示されません。
環境のせいだと思うのですがIE5で動作しますか?
起動時は拡張子xslのファイルをダブルクリックするだけです。
事情により環境をいじれないので確認させてください。
よろしくおねがいします

491:nobodyさん
06/10/26 18:28:24 Ni4Tuu8+
ウンコ

492:nobodyさん
06/10/26 18:34:48
元となるXMLにXSLTを<?xml-stylesheet ...?>で関連付けて、そっちを開けばOK。


493:nobodyさん
06/10/26 18:38:30 5D6Zlz9T
492
記述が漏れていてごめんなさい。
手順はそのようにしています。

494:nobodyさん
06/10/30 11:26:45
XML+XSLTのformからPostされたページをリロードすると、
データの再送信が行われないんだけど、
これってXSLで再送信するように変更することはできる?

495:nobodyさん
06/11/18 20:13:39
ブラウザの仕様のような気がする。

496:nobodyさん
06/11/19 06:15:00
JavaScript のリテラル部分に値を埋め込みたいんだけど、" → \" とかの変換て XSL でどうやるの?

497:nobodyさん
07/01/25 13:51:41
テンプレートの呼び出しについてですが、
呼び出されたテンプレートで、呼び出し元の要素名を使いたいです。
どのようにすればいいですか?

498:nobodyさん
07/01/25 14:20:29 GKXwIW4P
俺もテンプレートで聞きたいことが。
例えば

<fruit>
<apple>うまい</apple>
<banana>あんまりすきじゃない。</banana>
フルーツ。
</fruit>

っていうXMLがあったとして、
「フルーツ。」の部分にテンプレート適用したいんだが、
XPathとかで指定できないの?

499:nobodyさん
07/01/26 01:44:49
XQuery, XSLT 2 and XPath 2 Are W3C
Recommendations

だそうな。


>>497
呼び出し元が親の場合:
select="local-name(..)"
そのほか、親の親なら"local-name(../..)"


親以外から呼ばれる場合:

呼ぶ方:
<xsl:apply-template select="ほげほげ">
<xsl:with-param name="parent" select"."/>
</xsl:apply-template>

呼ばれる方:
<xsl:template match="ほげほげ">
<xsl:param name="parent"/>

<xsl:value-of select="local-name($parent)"/>
</xsl:template>

>>498
<xsl:apply-template select="text()"/>
ただし、appleとbananaの間などの空白や改行にも適用される。


500:498
07/01/26 06:55:42 BzbrIFkB
>>499
どうも!できた

501:nobodyさん
07/02/14 12:09:05
>>455
半年以上経っているが…

Firefoxでページほぼ全てを選択(全部はダメ)→
右クリックから「選択した部分のソースを表示」
これで行ける。

502:nobodyさん
07/02/14 14:32:44
半年経ってりゃVerもあがるわな

503:nobodyさん
07/03/15 02:01:11 Qxvsm42D
手詰まってます。質問させてください。
servletでIEにXMLを返却して、サーバに置いてあるXSLTを読ませて画面を表示させたいです。
↓レスポンスのXML
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="サーバに置いてあるXSLTのパス"?>

画面の表示はできたのですが、レスポンスが異常に遅いです。
HTTPのリクエストを確認したところ、
IEがサーバからXMLを受け取ってから、XSLTに対して再度HTTPリクエストを投げるのに時間がかかっているようです。
これはIEのXMLプロセッサ(MSXML)の問題なのでしょうか?
そうなのであれば、レスポンスを向上させる手段としてどういった方法が一般的なのでしょうか?
何かご存知の方、いらっしゃいましたら助言いただきたいです。
よろしくお願いします。


504:nobodyさん
07/03/15 02:18:33
XMLのサイズ小さくしてみたらどうなる?

505:503
07/03/15 02:32:34 Qxvsm42D
XSLT入門ページにあるような簡単なXMLで試してみましたが、結果は同じでした。


506:nobodyさん
07/03/30 22:01:54
>503
IEにXMLの変換をやらせるんじゃなくて、サーバ側で変換した結果をクライアントにかえしたら?

507:nobodyさん
07/03/31 11:26:38 jJ1h8S+F
XSLT2.0/XPATH2.0が勧告されているんだが...

興味無いか...○| ̄|_

508:nobodyさん
07/04/03 01:44:44
具体的に何が変わったのかは気になる

509:nobodyさん
07/04/05 19:40:38
力いっぱい亀レスしてみる。

>>484
<xsl:template match="foo">
<xsl:text>var msg = "</xsl:text>
<xsl:call-template name="escape">
<xsl:with-param name="str" select="."/>
</xsl:call-template>
<xsl:text>";</xsl:text>
</xsl:template>

<xsl:template name="escape">
<xsl:param name="str"/>
<xsl:if test="string-length($str) != 0">
<xsl:variable name="char" select="substring($str,1,1)"/>
<xsl:choose>
<xsl:when test="$char = '\'">\\</xsl:when>
<xsl:when test="$char = '&quot;'">\"</xsl:when>
<xsl:when test="$char = '&#10;'">\n</xsl:when>
<xsl:when test="$char = '&#9;'">\t</xsl:when>
<xsl:otherwise><xsl:value-of select="$char"/></xsl:otherwise>
</xsl:choose>
<xsl:call-template name="escape">
<xsl:with-param name="str" select="substring($str,2)"/>
</xsl:call-template>
</xsl:if>
</xsl:template>

510:nobodyさん
08/03/05 06:00:45 d95zJRJ0
SourceForge.net: PHP - XML_XSLT2Processor
URLリンク(sourceforge.net)
JavaのXSLT2.0プロセッサ(SaxonとAltovaXML)をPHPで使えるようにするためのクラスらしい

URLリンク(xiss.g.hatena.ne.jp) 経由


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch