XSL/XSLT
1名無しさん@お腹いっぱい。
01/09/05 10:49ID:dYMWGvtU 語ろう。ていうか教えて。
2名無しさん@お腹いっぱい。
01/09/05 10:50ID:dYMWGvtU XSLT文書の実行時書き換えってどうやるんでしょう。涙。
3名無しさん@お腹いっぱい。
01/09/05 12:46ID:rFbk2SFA DOMでXSLTを生成すりゃいいんでないの?
4名無しさん@お腹いっぱい。
01/09/05 19:00ID:.fOk25kQ XSLTで読み書き可能なグローバル変数を使うにはどうしたらいいの?
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="." version="1.0" exclude-result-prefixes="msxsl user">
<xsl:output method="html" version="4.0" encoding="Shift_JIS"/>
<xsl:variable name="default_name"/>
<xsl:template match="/root">
<html lang="ja">
<head>
<title><xsl:value-of select="title"/></title>
</head>
<body>
<h1><xsl:value-of select="title"/></h1>
<xsl:apply-templates select="book" />
</body>
</html>
</xsl:template>
<xsl:template match="talk">
<xsl:if test="@name!=''">
<xsl:value-of select="@name"/>「
</xsl:if>
<xsl:if test="@name=''">
<xsl:value-of select="$default_name"/>「
</xsl:if>
</xsl:template>
<xsl:template match="defaultname">
<xsl:variable name="default_name" select="."/>
</xsl:template>
こんな感じで書いてるんだが、変数の書き換えができないみたい。
環境は MSXML3.0SP1 + MSXSL.exe
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="." version="1.0" exclude-result-prefixes="msxsl user">
<xsl:output method="html" version="4.0" encoding="Shift_JIS"/>
<xsl:variable name="default_name"/>
<xsl:template match="/root">
<html lang="ja">
<head>
<title><xsl:value-of select="title"/></title>
</head>
<body>
<h1><xsl:value-of select="title"/></h1>
<xsl:apply-templates select="book" />
</body>
</html>
</xsl:template>
<xsl:template match="talk">
<xsl:if test="@name!=''">
<xsl:value-of select="@name"/>「
</xsl:if>
<xsl:if test="@name=''">
<xsl:value-of select="$default_name"/>「
</xsl:if>
</xsl:template>
<xsl:template match="defaultname">
<xsl:variable name="default_name" select="."/>
</xsl:template>
こんな感じで書いてるんだが、変数の書き換えができないみたい。
環境は MSXML3.0SP1 + MSXSL.exe
01/09/06 03:57ID:cEL2v6yw
「読み書き可能なグローバル変数」の直接の解では無いし
元の XML ややりたい事がはっきりしないので的外れかもしれんが
<xsl:variable name="default_name"/>
のところを
<xsl:variable name="default_name">
<xsl:value-of select="/root/defaultname" />
</xsl:variable>
とかにするだけではダメなのか?
元の XML ややりたい事がはっきりしないので的外れかもしれんが
<xsl:variable name="default_name"/>
のところを
<xsl:variable name="default_name">
<xsl:value-of select="/root/defaultname" />
</xsl:variable>
とかにするだけではダメなのか?
01/09/06 23:44ID:???
7名無しさん@お腹いっぱい。
01/09/10 14:21ID:CV8.18JQ XSLTの文法チェッカってあり?
8名無しさん@お腹いっぱい。
01/09/11 12:11ID:liJMw8bE9名無しさん@お腹いっぱい。
01/09/11 14:24ID:liJMw8bE XSLTで、たくさんある要素をテーブルにしたいんだけど
どう書けばいいんだろう???
<datalist>
<data>a</data>
<data>b</data>
<data>c</data>
<data>d</data>
<data>e</data>
<data>f</data>
</datalist>
を
a b c
d e f
という表にするイメージ。
どう書けばいいんだろう???
<datalist>
<data>a</data>
<data>b</data>
<data>c</data>
<data>d</data>
<data>e</data>
<data>f</data>
</datalist>
を
a b c
d e f
という表にするイメージ。
01/09/11 14:30ID:???
(´-`).。oO(HTMLのtable要素なのか、
データベースのテーブルなのか、TeXのテーブルなのか、
一体どのテーブルなんだろう?)
データベースのテーブルなのか、TeXのテーブルなのか、
一体どのテーブルなんだろう?)
11名無しさん@お腹いっぱい。
01/09/11 15:05ID:liJMw8bE あーごみんなさい。HTMLのtable要素です。
<table>
<tr><td>a</td><td>b</td><td>c</td></tr>
<tr><td>d</td><td>e</td><td>f</td></tr>
</table>
にしたいのです。
<table>
<tr><td>a</td><td>b</td><td>c</td></tr>
<tr><td>d</td><td>e</td><td>f</td></tr>
</table>
にしたいのです。
12名無しさん@お腹いっぱい。
01/09/13 14:48ID:botIizDw <xsl:for-each select="datalist/data">
<xsl:if test="position() mod 3 = 0"><tr></xsl:if>
<td>…</td>
<xsl:if test="position() mod 3 = 0"></tr></xsl:if>
</xsl:for-each>
のようにやってみたのですが、
(1)<td>〜</td><td>〜</td><tr><td>〜</td></tr>の順に出力される
(2)<tr>が<tr>と出力されるためタグとして機能しない
という状態になっています。かなりしょんぼりしています。
<xsl:if test="position() mod 3 = 0"><tr></xsl:if>
<td>…</td>
<xsl:if test="position() mod 3 = 0"></tr></xsl:if>
</xsl:for-each>
のようにやってみたのですが、
(1)<td>〜</td><td>〜</td><tr><td>〜</td></tr>の順に出力される
(2)<tr>が<tr>と出力されるためタグとして機能しない
という状態になっています。かなりしょんぼりしています。
14名無しさん@お腹いっぱい。
01/09/14 21:41ID:LySoniQw XSLTの文法チェッカってありますか?
15名無しさん@お腹いっぱい。
01/09/14 21:44ID:LySoniQw あ。>>7さんとだぶってた。すんません。
16名無しさん@お腹いっぱい。
01/09/19 19:09ID:xIy8M15c <xsl:for-each select=".." >
...
</xsl:for-each>
の中で、<xsl:value-of select="javascript:test(.)">
などとやった場合、
function test( arg )
に渡される引数argを文字列として扱いたいんですが、
どうにもうまく行きません。どなたか分かる方いらっしゃいますか?
...
</xsl:for-each>
の中で、<xsl:value-of select="javascript:test(.)">
などとやった場合、
function test( arg )
に渡される引数argを文字列として扱いたいんですが、
どうにもうまく行きません。どなたか分かる方いらっしゃいますか?
17独学XML
01/10/25 14:59ID:9/96eztC ふーん
18乙葉
01/10/27 19:23ID:F9QxoFrS 9に便乗なんだけど、9のXMLを <xsl:for-each> を使わずに
1 a
2 b
3 c
4 d
5 e
6 f
のように出力することってできます?<xsl:variable>をインクリメントさせながら
変換していくようなイメージ…。for-eachのカウンタを変数としてとれるならそれで
もいいんですけど…。
1 a
2 b
3 c
4 d
5 e
6 f
のように出力することってできます?<xsl:variable>をインクリメントさせながら
変換していくようなイメージ…。for-eachのカウンタを変数としてとれるならそれで
もいいんですけど…。
19名無しさん@お腹いっぱい。
01/11/04 04:55ID:90OzPiaz01/11/09 01:11ID:???
>>18
<OL>
<LI>a</LI>
<LI> (以下略.............ワラ
<OL>
<LI>a</LI>
<LI> (以下略.............ワラ
21名無しさん@お腹いっぱい。
01/12/07 15:09ID:7lK3vz6F >>9
かなーり遅レスですがこんな感じじゃだめですか?
<table border="1">
<tr>
<xsl:for-each select="datalist/data">
<td><xsl:value-of select="..."/><br/></td>
<xsl:if test="position() mod 3 = 0"></tr><tr></xsl:if>
</xsl:for-each>
</tr>
</table>
かなーり遅レスですがこんな感じじゃだめですか?
<table border="1">
<tr>
<xsl:for-each select="datalist/data">
<td><xsl:value-of select="..."/><br/></td>
<xsl:if test="position() mod 3 = 0"></tr><tr></xsl:if>
</xsl:for-each>
</tr>
</table>
22名無しさん@お腹いっぱい。
01/12/08 21:23ID:Tssb4f+E 他鯖にあるXMLファイルを取り込んで表示とかはできるの?
24名無しさん@お腹いっぱい。
01/12/20 15:56ID:04pPLyWb >>22
document()関数を使えばできそげ。
http://www.infoteria.com/jp/REC-xslt-19991116-jpn.htm#document
URI指定で他鯖を指定すれば良いんでないの?
ところでdocument()関数の説明に第2引数云々ってあるんだけど、
引数を2つ書くとinvalid number of function argumentsっていう
エラーがでてしまって鬱。
document()関数を使えばできそげ。
http://www.infoteria.com/jp/REC-xslt-19991116-jpn.htm#document
URI指定で他鯖を指定すれば良いんでないの?
ところでdocument()関数の説明に第2引数云々ってあるんだけど、
引数を2つ書くとinvalid number of function argumentsっていう
エラーがでてしまって鬱。
25名無しさん@お腹いっぱい。
01/12/27 18:06ID:2WckNNJE XSLTの仕様を見ていて湧いた素朴な疑問なんですが…
Syntax Summaryの属性で、{}がついてるのとついていないのの
違いって何なのでしょう???
たとえば↓のqnameと{ qname }です
<xsl:apply-templates
select = node-set-expression
mode = qname>
<!-- Content: (xsl:sort | xsl:with-param)* -->
</xsl:apply-templates>
<xsl:attribute
name = { qname }
namespace = { uri-reference }>
<!-- Content: template -->
</xsl:attribute>
Syntax Summaryの属性で、{}がついてるのとついていないのの
違いって何なのでしょう???
たとえば↓のqnameと{ qname }です
<xsl:apply-templates
select = node-set-expression
mode = qname>
<!-- Content: (xsl:sort | xsl:with-param)* -->
</xsl:apply-templates>
<xsl:attribute
name = { qname }
namespace = { uri-reference }>
<!-- Content: template -->
</xsl:attribute>
26名無しさん@お腹いっぱい。
02/01/22 17:26ID:kIM5fYXv HTMLを出力するXSLTの中にJavaScriptを書いているのですが、
スクリプトの中で、"<"を使うにはどうしたら良いのでしょう?
&gt;や&lt;を使うと、そのまま出力されてしまい実行できません。
<[CDATA[ 〜 ]]>で囲んでも同じ感じです。
アイディアきぼんぬ、です。
可能なところは、!= で逃げているのですが、やはり大小比較は必要なのです。
スクリプトの中で、"<"を使うにはどうしたら良いのでしょう?
&gt;や&lt;を使うと、そのまま出力されてしまい実行できません。
<[CDATA[ 〜 ]]>で囲んでも同じ感じです。
アイディアきぼんぬ、です。
可能なところは、!= で逃げているのですが、やはり大小比較は必要なのです。
2726
02/01/22 17:41ID:s+GnOL1u >>26 すんまそん。<xsl:text>でできましたでやんす。
28助けてー
02/01/22 22:03ID:IcXQR5Jq XML+XSLTでSVGを書き出し、Adobe SVGViewerで出力したいのですが
表示できません。
表示できません。
02/01/23 00:21ID:???
>>28
XML+XSLT→SVGの変換は何使ってやるの? IEとかmozilaとか?
XML+XSLT→SVGの変換は何使ってやるの? IEとかmozilaとか?
30助けてー
02/01/23 00:59ID:aDpAhdJs あ、ごめんなさい。書き忘れていました。
Apache+Jakarta-tomcat+cocoonです。。
Apache+Jakarta-tomcat+cocoonです。。
02/01/23 01:19ID:???
32名無しさん@お腹いっぱい。
02/01/24 09:53ID:CFRaDXx602/01/28 11:04ID:???
3430
02/01/29 08:17ID:UyexUS1t >31
image/svg+xml指定してもだめでした。
なんどやってもAdobeのビューアーで表示できなかったんだけど
荒業でぬけることができました。
xml(+xslt→svg)をsmilのドキュメントに
<img src="target.xml">
という感じでうめこみRealPlayerでsmilを読み込ませると
svgが表示サレマした。うーん‥
image/svg+xml指定してもだめでした。
なんどやってもAdobeのビューアーで表示できなかったんだけど
荒業でぬけることができました。
xml(+xslt→svg)をsmilのドキュメントに
<img src="target.xml">
という感じでうめこみRealPlayerでsmilを読み込ませると
svgが表示サレマした。うーん‥
35名無しさん@お腹いっぱい。
02/02/02 23:39ID:KwUwsoRo XSLTで遊んでる好例ハケーン→ http://moso.borogrammers.net/newlin/
36名無しさん@お腹いっぱい。
02/02/21 18:16ID:a4ipQQMG <xsl:choose>
<xsl:when test="...">
<xsl:variable name="foo" select="..."/>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="foo" select="..."/>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="$foo"/>
で、最後の行、fooなんて変数しらねえYO!と怒られるのが不満なのは漏れだけですか?
xsl:value-of 自体を場合わけすりゃいいのはわかりますけど、なんどもそういう
場合わけをしなければならない場合はウツなんですけども…。
みなさんどうしてるか教えてYO
<xsl:when test="...">
<xsl:variable name="foo" select="..."/>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="foo" select="..."/>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="$foo"/>
で、最後の行、fooなんて変数しらねえYO!と怒られるのが不満なのは漏れだけですか?
xsl:value-of 自体を場合わけすりゃいいのはわかりますけど、なんどもそういう
場合わけをしなければならない場合はウツなんですけども…。
みなさんどうしてるか教えてYO
37名無しさん@お腹いっぱい。
02/02/21 18:19ID:a4ipQQMG あああああ
テンプレート分けて xsl:when 内で xsl:call-template すりゃ済む話か…
逝ってきます…………
テンプレート分けて xsl:when 内で xsl:call-template すりゃ済む話か…
逝ってきます…………
38
02/03/08 18:28ID:EI/igJgK スレ違い覚悟。
apache + tomcat + 横浜ベイキットCocoon にて XSL:FO 運用を目指してます。
フォント埋め込みになっちゃうんだけど、外字を表示させるにはどうしたらいいんでしょ。
apache + tomcat + 横浜ベイキットCocoon にて XSL:FO 運用を目指してます。
フォント埋め込みになっちゃうんだけど、外字を表示させるにはどうしたらいいんでしょ。
39nobodyさん
02/03/09 21:16ID:gH82xLKm40
02/03/11 09:34ID:ktAR11by41
02/03/14 14:42ID:U7MOt75j ところで Cocoon2 って日本語対応してるの?
42
02/03/16 12:29ID:aNCStdKB >>41
対応してるよん。
バージョン2.0.1の時点ではリクエストパラメータの処理に
問題がありますが、2.0.2で改善されます。
>>40
TTEditなんかで作ったフォントを
使いたいということでよろしいかな?
まずFOP単独で出力できないと話が進まないので
FOPの最新版バイナリを落してきてください。
http://xml.apache.org/dist/fop/#
対応してるよん。
バージョン2.0.1の時点ではリクエストパラメータの処理に
問題がありますが、2.0.2で改善されます。
>>40
TTEditなんかで作ったフォントを
使いたいということでよろしいかな?
まずFOP単独で出力できないと話が進まないので
FOPの最新版バイナリを落してきてください。
http://xml.apache.org/dist/fop/#
4338
02/03/17 21:51ID:Xcs9LUc94438
02/03/17 21:54ID:Xcs9LUc9 ↑当然ながら Cocoon2 最新版までです
4542
02/03/19 07:45ID:Vm7v8Ppz46qqq<
02/03/19 08:43ID:??? asd
4738
02/03/19 09:55ID:ENr4RQ8P TTEditの質問になってしまうかもしれないのですが
Windowsについてくるフォント(MSゴシックとか)だと
外字領域に直接フォント作れるけど
他の市販モノだと「・」となっていじれないんですよねぇ。
そういったプロテクトはずす方法知ってます?
Windowsについてくるフォント(MSゴシックとか)だと
外字領域に直接フォント作れるけど
他の市販モノだと「・」となっていじれないんですよねぇ。
そういったプロテクトはずす方法知ってます?
4842
02/03/20 20:14ID:VQ4jw/To >>47
外字領域書き込み可能にしたTTEDITで
新規のフォントを作って、
そこに市販のフォントを一括コピーしたら
出来るかも知れんです。
とりあえず入手した
fop-0.20.3-bin.tar.gz
を適当な場所に解凍してください。
OSはLinuxでよいですか?
外字領域書き込み可能にしたTTEDITで
新規のフォントを作って、
そこに市販のフォントを一括コピーしたら
出来るかも知れんです。
とりあえず入手した
fop-0.20.3-bin.tar.gz
を適当な場所に解凍してください。
OSはLinuxでよいですか?
4938
02/03/22 00:11ID:nXgMXn315042
02/03/23 00:22ID:KjUoYuvr >>49
外字領域に文字を作ったフォントを用意しておいてください。
あとはFOPをインストールしたディレクトリ(fop.shがある場所)に
移動して
java -cp build/fop.sh:lib/xerces-1.2.3.jar org.apache.fop.fonts.apps.TTFReader フォントファイル 出力ファイル.xml
としてやります。
例えばフリーの東風ゴシックを流用して
x-kochi-gothic.ttfというファイルを作ったとします。
/usr/local/fopにfopがあり、
/usr/local/fop/jaにフォントファイルを置いた場合は
次のようにします。
cd /usr/local/fop
java -cp build/fop.jar:lib/xerces-1.2.3.jar org.apache.fop.fonts.apps.TTFReader ja/x-kochi-gothic.ttf ja/x-kochi-gothic.ttf.xml
とりあえず以上の方法で、ちゃんと出力ファイルが出来るか
試してみてください。
外字領域に文字を作ったフォントを用意しておいてください。
あとはFOPをインストールしたディレクトリ(fop.shがある場所)に
移動して
java -cp build/fop.sh:lib/xerces-1.2.3.jar org.apache.fop.fonts.apps.TTFReader フォントファイル 出力ファイル.xml
としてやります。
例えばフリーの東風ゴシックを流用して
x-kochi-gothic.ttfというファイルを作ったとします。
/usr/local/fopにfopがあり、
/usr/local/fop/jaにフォントファイルを置いた場合は
次のようにします。
cd /usr/local/fop
java -cp build/fop.jar:lib/xerces-1.2.3.jar org.apache.fop.fonts.apps.TTFReader ja/x-kochi-gothic.ttf ja/x-kochi-gothic.ttf.xml
とりあえず以上の方法で、ちゃんと出力ファイルが出来るか
試してみてください。
5138
02/03/25 11:23ID:XPZyIH2e うおー出た出たすげー。
説明ありがとうございます。
これで世間に顔向けできます。
説明ありがとうございます。
これで世間に顔向けできます。
5238
02/03/25 20:12ID:moXJH3iy というわけで、一応出力ファイル
(これがメトリクスファイル?)
が出力されました。
この後は如何に。。。
(これがメトリクスファイル?)
が出力されました。
この後は如何に。。。
レスを投稿する
ニュース
- 【自維】鮭おにぎり198円に絶望、コンビニすら遠い存在に…「生き延びられない」物価高で広がる生活苦★5 [ひぃぃ★]
- 【サッカー】ブラジル戦、NHKは地上波なし 本田圭佑はBSで解説… 悲鳴続出「マジかよ」 地上波はフジテレビが生中継、解説は小野伸二 [冬月記者★]
- 【芸能】田中みな実、実名告白「めっちゃ格好いい」「インスタもフォローした」 W杯日本代表にメロメロも「狙ってないからね?」 [冬月記者★]
- 小学校で英語必修化→学力の格差拡大が深刻…英語嫌いだった夏目漱石に学ぶ、現代の「迷走する早期教育」への処方箋 [バイト歴50年★]
- 【サッカー】「世紀の談合マッチになる予感」J組の一戦が話題…ドローで両チーム決勝T進出の“異例事態” [ゴアマガラ★]
- 【サッカー】W杯の「日本VSブラジル」を他で例えると…Xで問いかけ話題「湘北vs山王」「明徳義塾vs大阪桐蔭」「ドトウvsオペラオー」★2 [o(^・-・^)o★]
- 【高市悲報】今国会の全法案が廃案へ。。。飲みィのヤリィのしてきた結果がこれなのか・・・ [252835186]
- 経団連「年内には訪中して習主席と面会したい😢レアアースもタングステンももう限界😢」 ★2 [904151406]
- 経団連「年内には訪中して習主席と面会したい😢レアアースもタングステンももう限界😢」 [931948549]
- 蒲焼さん太郎めっちゃ小さくなってない?
- ジジイになって柔らかいうどんの美味さに気づけた
- お台場、次々閉館してただの廃墟と化してしまう [709039863]