【XML】xmlns, XSLT, RelaxNG, JAXP, etc.【総合】
1 :
デフォルトの名無しさん :
2005/11/30(水) 01:08:08
7 :
デフォルトの名無しさん :2005/11/30(水) 02:16:02
8 :
デフォルトの名無しさん :2005/11/30(水) 22:53:14
そして誰も使わなくなった
RELAX NGめちゃ楽やん XML Schemaは死滅
さらに言えばLISPの方がめちゃ楽ですよ^^
12 :
デフォルトの名無しさん :2005/12/02(金) 18:23:33
はいはい君たちXSLT 2.0とXPath 2.0勉強しなさいね。
13 :
デフォルトの名無しさん :2005/12/06(火) 15:50:08
スタイルシート(XSLT)って難しいね。 出来ればやりたくない。。。
S式は確かに少し楽かもしれないけど、 LISPは楽とはいえないだろー。 特にマクロふんだんに使ったやつはどう考えても読めません。 本当にありがとうございました。
XSLTなんてXQueryが標準化されたら不必要。 プログラムはXML形式は駄目だね。
>>15 そうだね。あんまり利益がない。
構文とか整合性とか考えるのがマンドイやつにはいいかもしんね。
あと名前空間わければ拡張形式とかを取り入れやすい。
> XSLTなんてXQueryが標準化されたら いつになったら勧告になるのかと。
xformsどうなったん? どっか実装してる?
ごめん
>>16 じゃなくて
>>18 ちなみにChibaは
conforms to the XForms 1.0 W3C Recommendation
だそうな。
>19,21 これクライアントは手を加えず動作させるんだ なんと申しますかsampleの敷居が高い。身の程知らずでした javascriptってどうしてこう文脈のないエラーメッセージばっか吐くんでしょう
<root><elem>aaa</elem></root> と <root> <elem>aaa</elem> </root> は同じですよね? こゆー評価できるdiffとかないんですか?
同じかどうかはアプリケーションの仕様による。 XMLレベルでは全ての空白は保持されるので両者は異なる。 canonical XMLにおいても、開始/終了タグの間の空白は保持される。
S式に変換してequal
mixed contentがあるとそれではうまくいかないよ。
27 :
デフォルトの名無しさん :2005/12/21(水) 00:52:49
altsax という技術に関する文献を探しているんですが、 どなたかご存知でしょうか? altsax は Alternative of "Simple API for XML" の略だそうです。
29 :
デフォルトの名無しさん :2006/01/14(土) 21:08:55
ちょいとお伺いしますがブラウザのbookmarkファイルは XMLということでよろしいでしょうか?
>>29 何のブラウザ?
当然全てのブラウザで同じ実装であるはずがない。
>>31 それが有効なのは古典的な階層型ブックマークを採用している場合だけだよね。
最近だとEpiphanyみたいにブックマークがタグベースになっているやつもあるしなあ。
>28 これなんか意味あるの?気になるんだけど xmlns:ns0:xmlnsにでもなれるの?
色々と駄目だと思うんだが知識が足りなくて完全には分からん。 ・xmlで始まる属性名は使えない。 ・コロンは名前空間の区切りとして最大1個しか使えない。 ・XML Namespaceの名前空間URIを明示的に宣言してはならない。 ・XML Namescpaeの名前空間URIを他の接頭辞に結び付けてはならない。
ああ、下2つはXMLNS 1.1の話だったか。
書き込み失礼します<(_ _)> 今私は学校の研究で、CMSの開発を行っています。 WEBコンテンツはXML形式であり、 XSLT形式のスタイルシートを適用することでWEBコンテンツを生成することとしました。 XMLファイル・XSLTファイルは分割して置いておき、 コンテンツ開発者が様々な組み合わせ方をすることで 様々なタイプのWEBコンテンツが開発できるというシステムにしたいと思っています。 その組み合わせるファイルの選択というのはWEBブラウザ上で行い、選択フォームなどで情報を渡し、 その情報をもとにサーバがファイルの結合を行い、 完成したWEBコンテンツをブラウザで表示という感じで考えているのですが、 どのような手法で 「ブラウザでのファイルの選択」→「ファイルの結合」→「結合し完成したWEBコンテンツの表示」 を行えばよいのかいい案が沸かないので、アドバイスいただければと思います。よろしくおねがいします。 尚、今後開発が進めば組み合わせの部分でAjaxを用いようかと思っているのですが、 この場合javascript用いるので開発もjavascriptで進めるべきなのでしょうか?
>尚、今後開発が進めば組み合わせの部分でAjaxを用いようかと思っているのですが、 進まないから心配するな。
あるtagのattributeに&入りの文字列を書いてIEに読ませたら
エラーになりました。例えば、
<tag url="
http://example.org/?a=a&b=b ">
という書き方をすると、&bの後に;が必要だというエラーになります。
これを回避するにはどうすればいいのでしょうか。
&
と書いてあれば別にエラーにはならんぞ
あ…なるほど、そういう事でしたか。 お恥ずかしいorz ありがとうございます。
今度、XML MasterのBasicを取る予定なんっすけど、 これ持ってて面接とか単価交渉で役に立ったりしますか?
初級シスアドと同程度かそれ以下だよ。 せめてPro取っとけ。
47 :
デフォルトの名無しさん :2006/01/24(火) 01:54:05
>>45 単価1万円/月でもいらないゴミPGではなさそうとは思って貰えるが、
得意げだと10万円/月程度の価値の底辺PGと思われる。
実際のトコはしらんけどね。レベル的にはそんな感じ。
XML関係の技術って大したものないだろ Web2.0とかセマンティックWebとかの中の人が必死こいてさわいでるだけ
それはかなり違う。
50 :
45 :2006/01/24(火) 23:47:41
やはりBasicでは初級シスアドレベルですか…… Basicならほとんど勉強せずに取れそうですが、一踏ん張りしてPro目指してみます。 ありがとうございました。
51 :
デフォルトの名無しさん :2006/01/25(水) 12:30:27
>>48 は、Tomcatのserever.xmlをgoogle&コピペでいじって、
XML関連技術をマスターした気になってる、幸せな人。
どんな問題出るの? DTD見て答えろ。ここ何くる、こここれありか、 見たいな感じ?こんぐらいだったら俺も受けようかな
>>52 Basicはだいたいそんな感じです。
選択問題で、整形式でないXML文書はどれかとか、
DTD見て以下の中からこの定義に当てはまる文書を選べとか。
70%正解で合格になります。
Java(saxon)でXPathのOR記号を使おうとしたんですが、式内に()があるとエラーが出てしまいます。 これって現時点では無理ってことですか?他の方法でどうにかなりますか?
別にエラーは出ない。ただの書き誤り。
>54 結構むずいね、XMLの問題ってよりかなんつーのか 記述 制約 書式 構造 宣言 定義 措置 配置 要素 属性 拡張 前提 こんなんが問題にごっそり入ってて難しく感じる 1回で読めない、選択肢にもごっそりで日本語に自信なくなってきた
58 :
デフォルトの名無しさん :2006/01/31(火) 14:57:29
XSLを用いてXMLデータを表示させているのですが、改行されません。 CSSで考えているのですが、どうすればいいのですか? 教えてください。
XMLをシステムのI/Oにすると 「そんなオナニーするな、CSVにしろ」 と怒られます。 そこで毎回有用性を説いて納得はしてもらいますが、そろそろ疲れますた。 そして、最近は 「XML扱うとIEが落ちる」だの「Excel(2000)に直接とりこめへん」とか反対勢力が増してきました。 最近自分も自信がなくなってきました…。Web屋以外でXMLって必要?
適材適所
>>60 俺もXML大好き人間だからなんでもかんでもやたらとXMLにしているけど、
XMLってオーバーヘッドがでかいのも確かだから場合によってはASN.1でもつかっとけ。
>60 xml中毒の俺の売り文句は、 「文字コードについての悩みがほぼなくなります。」 これ使ってそっちでも騙してって
>>63 お前テラ酷すwww
本当はUNICODE⇔SJISのマッピングの違いなんかで
文字コードのまわりの問題は増えるのにwww
65 :
60 :2006/02/02(木) 00:34:41
>>61 んなこたーわぁーとる。
>>62 ASN.1初めて知った。いつか使ってみる。thanx。
>>63 ,64
うちの会社ではUnicodeはUTF16-LEで統一されている。C言語で一番扱いやすい形式だから。
したがってCSVもUTF16-LE。Excelで取り込むとフィンランド語の一部の文字が化けるので取り扱いムズス。
SJISのデータは扱っていないから今のところは大丈夫くさい。
潰しが利いて冗長なのがXMLなんだ。軽くて融通が利かないのがCSVなんだ。
しかし、xmlファイル開いてIEが落ちるのはmsxmlとIEのバグだよなぁ。
>>45 営業の人が3日勉強しただけで受かった。その程度のもの。
ちなみにプロ受かったけど、何の役にも立ってないよ。
67 :
デフォルトの名無しさん :2006/02/15(水) 13:50:39
みなさんはどういう場合に属性使いますか? <人> <名前 姓="山田" 名="太郎" /> <体型 身長="160" 体重="55" /> </人> みたいなのと <人> <名前> <姓>山田</姓> <名>太郎</名> </名前> <体型> <身長>160</身長> <体重>55</体重> </体型> </人> みたいなのはどっちが妥当ですか?
68 :
デフォルトの名無しさん :2006/02/15(水) 16:39:35
ていうかYggdrasillってPHPで使えないの?
名前とこは下の表記で体系は上の表記、が・・タ・イ・プ 俺の独断で全部決めていいってなったら迷わず 属性数値、要素文字列! プロジェクト燃やしたくなったら <人 xmlns:山田太郎="man://160.cm/55kg/" />
70 :
993 :2006/02/15(水) 21:02:19
ゲハ最高ゥゥゥゥ!! ハゲを崇めろや!!
>>67 <属性>
<ロリコン min_age="6" max_age="16" />
<メガネ />
<ツインテール />
<ブルマ color="紺" side_line_number="1" />
<巨乳 min_cup="D" max_cup="F" />
</属性>
75 :
デフォルトの名無しさん :2006/02/17(金) 16:08:45
初歩的な質問で恐縮なんですが・・・ XQueryをJavaで使うにはどうすればいいですか?
結局のところXMLという技術で誰が得をするのか について考え、やっと答えを見つけた俺は負け組ですか この数年、すげえ時間を無駄にした気になった もっと早くからきづけばよかった
>>77 >やっと答えを見つけた俺は負け組ですか
で、その「答え」とは?
79 :
デフォルトの名無しさん :2006/02/23(木) 22:51:30
XML勉強中なんですが、本読んでたらタグ名に大文字使わない方がいいとか 書いてあったんですけど、みなさん大文字使ってないんでしょうか? 長めのタグ名はVeryLongTagNameじゃなくてvery_long_tag_nameで書くのが普通? それともverylongtagname?
80 :
デフォルトの名無しさん :2006/02/23(木) 23:24:17
>>71 だってまともなS式パーサ存在しないじゃん
>>79 XSLなんかはvery-long-tag-name。
あー、'-'も名前に使えるんですね。 オブジェクトのシリアライズでXML使おうと思ったんだけど、 クラス名をMyClassみたいに書いてるから、 タグ名でもMyClassにしたかったんですけどね。 やはり、大文字使わないのがスタンダードなんでしょうかね。 Visual Studioのプロジェクトファイルでは大文字使ってたけど、 大文字使うのはMSくらい?
XMLとしてのコンベンション的にはvery-long-tag-nameみたいだな。 だが、プログラミング言語へのマッピングで識別子になる場合、 それではアレなので、キャメルケースにしたりもする。でもそうするとXMLがカッコ悪い。 ひたすらDOMでゴリゴリするだけならvery-long-tag-nameの方がカッコイイ。
クラス識別はattributeにGUID持たせてやろうとおもうので、 タグ名にするクラス名は、後で人が見て読めるようにするための 飾りみたいなもんになる予定です。 というわけで、カッコよさ重視でvery-long-tag-nameにしますわ。
W3Cの規格をちょっと眺めてみた。 longName ==> SVG, SMIL LongName ==> XML-Signature, XML-Encryption, XKMS long-name ==> SVG, SSML longname ==> XForms, XHTML SVGはまざっててキモい。
RDF Schemaでも大文字使っとる
よーするにどの書き方も使われてるから、 好きなの選べってことですね...(´・ω・`)
漢字仮名にしよう。これなら大文字小文字で悩む必要ない。
>>86 RDFだと、XMLに関わらず
クラスは大文字から始まる単語、プロパティは小文字から、という慣習が見られるね。
DTD内で小文字使うと目立ちすぎて申し訳ないって思うよね xml内だとDTDおめー目立ってんじゃねーよって立場逆転
DTDなんて今更使わないでしょ。
使うよ…使いたくないのに。
DTDは全然慣れない、特別目疲れる。 そこら中でシンタクスエラー言われてる気分になる
XML Schema
XMLのスキーマのこと。W3C XML Schema、RELAX NG、DTDなど。
96 :
デフォルトの名無しさん :2006/02/26(日) 23:45:37
xmlstarletのlsって、何に使うの? なんらかの条件に合うファイル名が出力できても、 そのファイル名をパイプでxmlstarletに渡せなくない?
97 :
デフォルトの名無しさん :2006/03/02(木) 02:39:02
XSLT(XPath)で、Textや属性のQNameってどうやって調べれば良いんですか?
例えば、
<ns0:boards xmlns:ns0="
http://2ch.net ">
<board>ns0:tech</board>
<board>ns0:unix</board>
<board>ns0:news</board>
</ns0:boards>
で、
「値が、名前空間が"
http://2ch.net "でローカル名が"tech"の値を持つboard要素」って、
どうやって調べればよいのか…。
プレフィックスは、毎回違う可能性があります。
あ、値だと面倒なので属性で構いません。
<ns0:boards xmlns:ns0="
http://2ch.net ">
<board nick="ns0:tech"/>
<board nick="ns0:unix"/>
<board nick="ns0:news"/>
</ns0:boards>
99 :
デフォルトの名無しさん :2006/03/03(金) 12:18:49
WebProgで聞いたら?
>>97 いまいち
<xsl:template match="/ns0:boards/board">
<xsl:if test="text() = concat(substring-before(name(parent::*), ':'), ':tech')">
<xsl:value-of select="text()"/>
</xsl:if>
</xsl:template>
101 :
デフォルトの名無しさん :2006/03/04(土) 01:09:54
102 :
デフォルトの名無しさん :2006/03/04(土) 01:12:29
詞ね
せっかくなので、こっちにも答え? <xsl:template select="/ns0:boards/board/@nick[../namespace::*[local-name(.)=substring-before(string(../@nick),':')] and substring-after(.,':')='tech']"> <xsl:value-of select="."/> </xsl:template> いまいちの答えだが、いまいちなのは、俺なのかXML仕様の方なのか。
105 :
デフォルトの名無しさん :2006/03/04(土) 13:33:33
<xsl:template select="/ns0:boards/board/@nick[prefix()=namespace('ns0') and local()='tech']"> <xsl:value-of select="."/> </xsl:template> とか、 <xsl:template select="/ns0:boards/board/@nick[qname()=qname('ns0','tech')]"> <xsl:value-of select="."/> </xsl:template> とか、 書けないもんかねぇ。
108 :
デフォルトの名無しさん :2006/03/04(土) 18:58:53
>>106 http://pc8.2ch.net/test/read.cgi/php/999654569/403 段階がある。
単なるDOMではテキストや属性痴にネームスペースプロパティはない。
しかし、スキーマでバリデーションしてそれがQName型の場合には、
QName値としてネームスペースプロパティを持つ事になる。
<element name="host">
<sequence><element name="url" type="xsd:QName"></sequence>
</element>
なんてスキーマに沿ってるとしたら、url要素の値は、
http://hogehoge.hoge/fooを ネームスペースとして、ローカル名が//2ch.netのQNameと解釈される、
…ということなんだが、//2ch.netはローカル名として多分不正なので、バリデーションをパスしないと思われる。
つまりは、単なるDOMにはないが、値もそういう風に解釈する作法がある、ということ。
XMLマスタースレにも貼ってみたんだがここにもスマソ。。 ・DOMで読み込んだ後、「&」が文字参照であったかどうかを知る術はない これって正しい?教えてエロイ人
DOMのAPIだけで知りたい、のなら、DOMのAPIを調べればいいだろ? なんでもありならどうにでもなる。
誤り。
>>109 ・CDATAセクションの中の場合、文字参照ではない
・テキストや属性値の中の場合、&は必ず文字参照か実体参照であり、
実体参照はEntityReferenceノードとして認識できる場合がある。
その場合に限り、EntityReference以外の&は文字参照である。
SVGってここでいいのかな? illustratorで書いた文字をSVG保存して、batikでJPEGに変換すると、フォントが指定フォントで出力されないんだけど。 (SVGの時点では正常にフォントが指定フォントで表示されている) 教えて、エロエロな人
どう見てもbatikを取り扱うスレに行けです。 本当にありがとうございました。
118 :
デフォルトの名無しさん :2006/03/17(金) 01:11:38
TextSS のWindowsXP(Professional)64bit化おながいします もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
120 :
デフォルトの名無しさん :2006/03/19(日) 23:44:15
>118 サンクス。それでよかったのね…。 Axis 使いたいんですけど、 事情があって自分で SOAP エンベロープを作らなくてはならなくて…。
121 :
デフォルトの名無しさん :2006/03/24(金) 17:52:53
xmlでマクロや定数を使いたい場合はどうすればいいですか? こんな風にやりたいのですが↓ #define HOGE 1 <TEST value="HOGE" />
〉〉1
>>121 DTD内で
<!ENTITY HOGE "1">
本文で
<TEST value="&HOGE;"/>
>123のコンパクトな書式でどばーーーと羅列したのを <!ENTITY %ent1 SYSTEM "entity1.ent"> %ent1; <!ENTITY ent2 SYSTEM "entity2.ent"> &ent2; とかいくつかきめると古いIE落ちる説。ってのを耳にした ご自愛ください
125 :
121 :2006/03/24(金) 21:59:33
>>123 実体参照というやつですか。
ありがとうございます。
<?xml version="1.0" encoding="UTF-8"?> <Hoge> : </Hoge> というようなXMLのencodingが何か、DOMで操作して知りたいんですが 方法がわかりません。教えてください。
よく分からんがDOMの仕様書開いてencodingで検索
>>126 DOM Level 3 の org.w3c.dom.Document.getXmlEncoding()
DOM Level 1や2では不可能。
129 :
126 :2006/03/29(水) 17:08:00
>>128 きー
DOM Level3ですか。
ありがとうございます。いさぎよくあきらめます。
もとがストリームなんて決まってないっつうか DOMのネタがすでに処理系内部文字列かも知れないのに、 なんでそんなのが解るんだ?
なぜXML宣言があるのかよーく考えてください
>>130 encoding="..."が存在すれば返すってだけで、なければnullが返るだけ
ですから。
なるほど。 そんなん、当てになるっつうか、実用性あんのかね?
そもそも変なencoding指定したらパース失敗するよ。 運よく文字化けで済んでもそれは生成した側の責任。 encoding省略されてればUTF-8だよ。どこに疑う余地があるのん?
実用性の理由になってないよ…。 責任がどこにあろうと、間違った値が取れてトラブルになるのは読む側。 間違った値が取れるってことは、当てにならんってこった。
仕様を満たしたデータからは正しい情報を得ることができ 仕様を満たさないデータからは正しい情報を得られないってのは 至極一般的なことなのだが135はなにが不満なのだろう。
>>135 噛み付けばいいってもんじゃないぞ。
(↓以下たとえ話)
たとえば素数を返すメソッドを読んだとして、偶数が返ってきたらどう思う?
バナナで釘を打つ予定だったのに、マンゴーを渡されたらどうする?
仕様が守られるのは当たり前。仕様を守らないならそんなもの捨てちまえ。
>間違った値が取れるってことは、当てにならんってこった。
どこも間違っていない。仕様どおり。
きちんとルールは守りましょう。
変なencoding吐くシステムならアダプタかましてください。
何度もいいますが、encoding指定なしならUTF-8、それ以外で指定されていればその文字コードになります。
XMLを読み込むときはそれを基準にして読み込みます。
文字コードの予想なんてしません。必ずencodingは指定されているというのは大前提です。
あ、メモリとかにそのまんま作った木のencodingは
>>132 がいうとおりnullになる。
これはシステムが文字コードを関知し続けていればいいね。
139 :
デフォルトの名無しさん :2006/03/31(金) 13:58:21
xmlでentityというので別のxmlファイルを読み込むようにしたのですが、IEでは表示されるのにmozilla系では表示されません。 何か問題があるのだと思いますが、気付いたことがありましたら教えてください。 ##### index.xml ##### <?xml version="1.0" encoding="Shift_JIS" ?> <?xml-stylesheet type="text/xsl" href="index.xsl"?> <!DOCTYPE hoge [ <!ENTITY piyo SYSTEM "./piyo.xml"> ] > <hoge> &piyo; </hoge>
>>137 揚げ足取ると、2は偶数であり素数でもありますよ。
>>137 確かに、間違った値が取れるってのは正確ではなかったな。
XML宣言のencodingが取れるという仕様に対しては。
だが、現実の要求はそんなことではなくて、元も文字コードが何であったかが知りたいんじゃないのか?
現実の要求に対して期待通りの値が取れないんなら、やっぱり当てにはならんてこった。
学生じゃないんだから、仕様仕様ってそんなヌルい事じゃオープンな実用システムは作れんよ。
141はxmlデータを扱ったことがないんだろうな。XMLにおいて encodingというメタ情報が取得できないっていうがどういう 状況かわからないらしい。
自分の世界だけのローカルファイルだけ扱ってるなら、そう割り切るのも手だろうね。 ただ、普通のオープンなシステムでは、データ入手の際の、 MIMEのcontent-typeのcharsetのような外部情報があるんだよ。
>>141 コンテンツがどんな文章であってもencodingが自動判別できるのなら
君の言うことは正しいように感じる。
>>141 うん、ちょっと待って。
>元も文字コードが何であったかが知りたいんじゃないのか?
これの意味がわからないの。元ってどーこ?
>現実の要求
って誰がこんなとち狂った要求を?
そんなことやってたらAPIの作者が首吊りますがな。
アテになるって何が?アダプタかませよ。
DOMはDOMのドメインで問題解決してるんだよ。
そんなに仕様を肥満させてAPI作者に首をつってもらいたいのかゐ?
あれか?
>>141 の言っているのはお行儀の悪いメールサーバと
やりとりできるメーラーを開発したいとでも言っているのか?
で、標準仕様をそっちに合わせろと…
147 :
デフォルトの名無しさん :2006/03/32(土) 03:32:12
>そんなに仕様を肥満させてAPI作者に首をつってもらいたいのかゐ? もともと無理で無駄だと書いてるわけだが、なんでそんな話になるかね…。
いやだから無理でもないし無駄でもないってば。 あんまり使うケース思いつかないけど。
>>145 >>元も文字コードが何であったかが知りたいんじゃないのか?
>
>これの意味がわからないの。元ってどーこ?
「元」って、元のXML文書のことだろ。
XML文書はいろんな文字コードの可能性があって、それをDOMに変換すると、JavaならUTFに変換される。
変換されるのはかまわないけど、もとのXML文書がどの文字コードだったかを知りたい人もいて、それがDOM3じゃないとできないので困っているということだよね。
そんなことを必要とするのがおかしいというやつがいるけど、自分が必要ないからといって他人が必要としていることを否定するのはどうかと。
例えばXML文書を読み込んでHTMLに変換するツールを作るとき、もとのXML文書がSJISならSJISで、EUCならEUCで出力するような仕様にしたい、というのはごくごく普通に考えられるんじゃないかな。
おれもXML宣言のencodingぐらいとってこれてもいいじゃんと思うけど、なんでできないんだろうね。getEncoding()を付け加えるぐらいなら、仕様の肥大化にはならないと思うけどね。
ちなみにおれは、XMLパーサのpublicでない内部変数をリフレクションを使って取得することで回避した。あまりいいやり方じゃないけど、他に方法がなかったから仕方ない。
やっぱS式が最強ってことか
151 :
145 :2006/03/32(土) 11:42:50
153 :
139 :2006/03/32(土) 20:14:01
レスがもらえないあたりを考えると、 IE使いの方ばかりなのでしょうか。 それともentityなどを利用して複数のxmlを読み込むようにしている人は居ないということでしょうか。
>>153 DTDに<!ELEMENT hoge ANY>を加えてもだめ?
155 :
139 :2006/04/03(月) 00:55:27
>>154 やってみましたがダメでした。
どうやらmozilla系は外部エンティティが使えないみたいなので諦めムード。
>139 試すのにファイル足らな過ぎだよ、 mozillaのrdfやっばい高機能なのにそれ無理っぽいね SYSTEMじゃなくPUBLICでも?chrome:とかフルパス試した? 解決する可能性-80%ぐらいだけど是非試して
>>139 へのレスは自演としか思えない。
まともな本を一冊通読した方がいいよ。急がば回れだ。
IEやNetscapeなどの一般的なブラウザでレンダリングされるxhtmlファイルに XSLTの要素を埋め込んでXPathを使い、 XML文書からデータを取り出してきたいのですがうまくできません。 ブラウザはxhtmlをXML文書として解析しているのでしょうか? 動きを見ているとhtml文書としてレンダリングしているように思えます。
>>158 XHTMLを使ったからって、XSLTとか任意のXML語彙を埋めこんでレンダリ
ングできるというわけではない。SVGぐらいなら埋めこめるかもしれん
けど、XSLTを埋めこんだ場合にどう動くかというのは誰も定義してない
し実装してない気がする。
>>159 勘違いしておりました。xhtmlからXPathを使うのは無理なのですね。
上記のようなことを実現するにはJavascriptとDOMを使うのでしょうか?
Web制作みたいな質問ですみません。
そうでございます。
整形式が崩れたときにエラーを返したらXML。 整形式が崩れたときに自力で何とかしようとしたらHTML。
>162 Firefoxしか知らんが、レスポンスヘッダ次第。 text/htmlで送ると整形式になってなくてもエラー出ないし、 text/plainで送るとそのまま表示されたり。
<?xml〜は、xmlかどうかの判断には使ってない漢字。 エンコーディングだけ判断してるような。 これ無しで日本語使うと、IEではエラーになるしFirefoxでは文字化けする。 正しく設定してあれば、どちらでも正しく表示可能。 まあ当然か。 ・ http経由なら content-type で判断 ・ ローカルファイルなら 拡張子 で判断 って幹事かな。 Windowsでは。
XML宣言は省略可能。 ただし省略した場合はencoding="UTF-8"と見なされる。
HTTP経由でXMLをやりとりするときは Content-Type: application/xml; charset=EUC-JP <?xml version="1.0" ?> ... と Content-Type: application/xml <?xml version="1.0" encoding="EUC-JP"?> ... と、どっちが望ましいのかなあ また、Content-Type:が application/x-hogehogeだったり text/xmlだったりした時とか。
両方指定するのはだめ? Content-Type: application/xml; charset=EUC-JP <?xml version="1.0" encoding="EUC-JP"?>
>167 それはそれでいいんだけど、 そうなると、どっちが優先? っていう話あるし... HTML(4.0?)だと 1. HeaderのContent-Type: charset 2. Bodyの<めた charset=...> の順だから これに合せると XML宣言の方を無視するってことになって それはそれで変だろって。どっちかならXML宣言の方が優先かなあ。
RFC 2376 読みなされ。
村田真はどこかでContent-Type優先だろと言ってた。 だからなんだと言われても困るが。
>>170 お、そういうのを待っていたよ。2376ね。ありがとー
ここに解説あるね
http://www.fxis.co.jp/xmlcafe/link/jirei/sample_charset.html >text/xmlの場合はXML文書中にある encoding declarationを
>無視することを明言しています
へえ
>application/xmlの場合もcharsetパラメタが推薦されています。
>ただし、こちらはcharsetパラメタが省略されるとXML文書中の
>encoding declarationを見て判定します。
ほう
勉強になりましたよ。Content-Type優先か。
application/x-hogehogeの場合は好きにしていいのかなあ。
174 :
デフォルトの名無しさん :2006/04/09(日) 11:34:13
まだ勉強し始めたばっかでよく理解してないのですが次の様なXSLTがあるとしますと パーサ(IE6を使用してます)が</xsl:template>はMetaと一致しないとかエラーが返されてしまいます <xsl:template match="Hoge"> <Meta http-equiv="Content-Type" content="text/html ; charset=Shift_JIS"> </xsl:template> この問題は<Metaの行を<Meta http-equiv="Content-Type" content="text/html ; charset=Shift_JIS" /> と閉じれば解決されるのですが、Metaタグについて調べるとどこの解説ページもMetaを閉じていないようです 公式ではどのように説明されているのでしょうか
わからないけどとにかく閉じないと整形式が崩れて文書が成立しないね。 何処を参考にしたのかわからないが閉じないほうが間違いです。
閉じない方が間違いなのですか、ありがとうございます 適当にMetaタグとググったり他人様のソースを読んだりして勝手に勉強してたのですが・・・
そもそもXHTMLならばMetaタグなるものは存在しませんが。 metaタグの間違いでしょう。 #その調子だと<xsl:value-of select="<xsl:apply-…>"/> #とか書く日も近いかも
HTMLに変換されるのでMetaも間違いではありません。
すげー svg って image/svg+xml だったんだ 驚くところじゃないのかもしれないけど、xml は化けたね
XSLについて教えてください。
RSSを以下内容のXSLファイルで変換をかけてブラウザ上にItem一覧を
表示しています。
これをRSSのItem内のdc:dateが当日のものだけに絞りたいのですが
可能でしょうか?
XSLファイル
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="uri:xsl">
<xsl:template match="/">
<html><body>
<xsl:for-each select="rdf:RDF/item">
<div><a target="blank"><xsl:attribute name="href"><xsl:value-of select="link"/></xsl:attribute><xsl:value-of select="title"/></a></div>
</xsl:for-each>
</body></html>
</xsl:template>
</xsl:stylesheet>
RSS XMLのItem部分
<item rdf:about="
http://www.test.jp/test/ ">
<title>テストタイトル</title>
<link>
http://www.test.jp/test/</link >
<dc:date>2006-04-10T13:01:00+09:00</dc:date>
<description>テスト内容です</description>
</item>
>>181 rdf:RDFと書いてあるが、rdf:の名前空間はどこで定義してる?
んで、当日という日付に関しては外部から指定するか、
あるいはdc:dateが最大のものを選ぶか、どっち?
う〜ん。 どう考えても汚くなりそうだなあ… 時間がないので、詳細書けたら後で書けるが、ロジックとしては for-eachでソートされたitem/dc:dateをxsl:value-ofで取り出して、それを変数に一度格納。 (便宜的にconcatDateとする。ソートはもちろん、item/dc:dateで降順に。) ↓中身はこんな感じ $concatDate = "2006-04-10T13:01:00+09:002006-04-10T01:01:00+09:00…" というようになっているような感じ。そこから先頭10文字を取り出して、 それと合致するdc:date要素を持っているitemノードを取り出す。 ノイズがあると即アボン。 どうみてもお粗末です。ありがとうございました。
185 :
184 :2006/04/11(火) 17:48:51
それと合致する ⇒ それを含む にしておいてください。
>>184 今のところソートまでしか理解できていませんが、もうちょっと勉強してみます。
丁寧にありがとうございます。
無駄に俺まで考えたけどだめだ、xslだけだとそんぐらいえぐくなる <xsl:key name="today" match="item" use="substring-before(item/dc:date,'T')"/> こゆーのて取れないのかな?まー取れてもな ブラウザで表示だけなら無理に減らさないでCSSで今日以外隠す? ごめん論点すりかえた
もうDOMでいいじゃん
E4Xで、要素名や、要素のローカル名が予約後の時ってどうすればいいのでしょうか? <var xmlns:p="puge"> <p:function>ぢ</p:function> </var> var p=new Namespace("puge") var func = var.p::function ←エラー
>>189 俺はE4X使ったことなかったけど、その例を使って、Firefox1.5で試してみた。
var xml = <var xmlns:p="puge">
<p:function>ぢ</p:function>
</var>;
var p = new Namespace("puge")
var func = xml.p::["function"];
["function"]は連想配列でのプロパティの参照って言うのかな。
名前空間からのアクセスにも使えるみたいね。
191 :
デフォルトの名無しさん :2006/04/16(日) 16:58:16
なんだ、ただの(?)プロパティだったのか。 サンクス…って、 xml.var.p::["function"] だよな?
192 :
デフォルトの名無しさん :2006/04/25(火) 02:34:30
おまいらは、XSLT プロセッサなに使ってんの? XT? Xalan?
Xalanだよん。アスランXalan。
194 :
デフォルトの名無しさん :2006/04/27(木) 19:33:20
>>193 thx。
このスレ人気ない w
ついでに質問。
xalan に -xml、-html、-plain フラグがあるけど、
デフォルトは -xml ですよね?
スタイルシート内に <HR> って書いたら怒られた。
195 :
デフォルトの名無しさん :2006/04/30(日) 04:18:58
質問です XSLTで名前つきテンプレートの引数に文字定数"a"を渡したいのですが <xsl:with-param name="b" select="a"/> と書くと"a"がパスと解釈されてしまってうまくいきません 解決策教えてください
196 :
195 :2006/04/30(日) 07:45:21
自己解決しました. <xsl:with-param name="b">a</xsl:with-param>
<xsl:with-param name="b" select="'a'"/>
あるいは、
<xsl:with-param name="b" select=""a""/>
とすればよかったものを…。
>>194 <hr>はXML?
XMLの仕様書よんでもよくわからないので教えてください。 XMLの処理命令には < や > や & をそのまま含めても仕様上は問題ないのでしょうか。 処理命令というのは例えばPHPの<?php echo $var; ?>というやつですけど、 この中に例えば <?php if ($i > 0 && $i < 100) { ?>OK<?php } ?> のように < や > や & を、< や > や & にエスケープせずにそのまま埋め込んでもいいのですか。 XML仕様書読んでみたのですが難しすぎてわかりませんでした。
>>198 PIデータの中ではエスケープする仕組みがないので、<>&などはそのま
ま書いていい。
ちなみに、「?>」という文字列はどうやっても入れられない(PIターゲッ
トで独自の解釈方法を定義してない限りは)。
>>199 さんくすです。助かりました。
今、PHPを使っているんですけど、「?>」という演算子はないので、大丈夫っぽいです。
でもPHPは値を表示するのに「<?php echo $var; ?>」としなきゃいけないんですけど、
これだと属性値のときに困るんですよね。
<span class="<?php echo $class; ?>">text</span>
みたいなかんじで、この部分がHTML的に構文エラーになってしまいます。
ここだけなんとかしてほしいよー。
201 :
デフォルトの名無しさん :2006/05/07(日) 11:27:17
しかし、アレだね XMLスキーマの章、問題が長文すぎてスクロールしまくりなのはキツイね 紙で欲しい
203 :
194 :2006/05/12(金) 04:20:20
>>197 XSLT 内の HTML の話なんでしたが、自己解決しました。
テンプレート定義内に HTML の空タグ (BR、HR 等) を書くときにも、
XML 仕様に従って、バックスラッシュを入れないとダメなんですね。
気付けば簡単な問題なんですが、
気が付かないとわけが分かりません。
盲目。
>>203 (俺の脳内統計によると、)九割の初心者がそういうミスしてきてるから安心汁!
XMLを知る
↓
XSLTをやってみる
↓
ミスをする。
・<xsl:value-of select="<xsl:apply-templates select="" />"/>
・HTMLをべた書き
↓
XSLTもXMLなんだと自覚し始める。
↓
XPathやDOMなどが役割を果たす階層を意識しはじめる。
↓
ほかのXMLの語彙も同じように認識できるようになる。
名前空間もよく理解できるようになり、「拡張できる言語」というXMLへの
幻想も消え、正しくXMLを使えるようになる。
205 :
デフォルトの名無しさん :2006/05/12(金) 12:16:49
↑ でも、冗長だから、面倒なんだよ。 使えるか、こんなモン!!
>>205 強力なインフラが欲しくなければ使わなければいいと思うぞ。
まあパフォーマンス上いろいろ問題あるしな。
俺は別にファイルサイズとかタイピング数とか気にしない口なので、
XSLTでdocument関数から要素を取得しつつその値で再起構造書くとか平気。
f( URI ) = f(document( URI )/someElement)
↑こんなの。さすがに重くなる。
XMLデータをインデントする時に、 空白の影響をなくすために、 <p >hoge</p > とするのが良いという話をどこかで読んだ記憶があるのですが、 どなたが言っていたか、誰かご存知じゃないでしょうか? こうしている人いますか?
XSLの開発環境ってあるんですか? コーダー出身なのでDreawerverでやっていますが テキストエディタ同然なので効率が悪いです。
>>208 XML SpyにXSLTデバッガがある。俺はこれがないと
XSLTなんて書けない。
212 :
207 :2006/05/17(水) 20:03:19
>>211 XML の偉い人だというのは記憶があるので、
James Clark で間違いないと思います。
ありがとうございます。助かりました。
213 :
デフォルトの名無しさん :2006/05/18(木) 22:27:23
質問なんですが、今、JAVAをやっててその中でXMLやXSPもやっているんですが、 その中でXSP中に<xsp:logic>内でJAVAを使うんですが、そのときどうしても IF文で < や > 比較演算子が使えません。 他に ==や ||は使えるんですが、教えてくださいペコm(_ _;m)三(m;_ _)mペコリ
そういう質問はJavaのスレッドに行ってください。 あと日本語でおkwww
xspってなんだかしらんが(cocoonか?)、<と>じゃないの? というか、釣りとしか思えんが。
216 :
215 :2006/05/19(金) 01:50:06
2chて、文字参照そのままなのかよ…。 ×<と>じゃないの? ○<と>じゃないの?
>>213 >>217 の2ページ目にのってあったわ。<や>のかわりに&lt;や&gt;をつかうみたい。
&lt;を書こうとして、&amp;lt;を書こうとして
>>216 最強に細かいことだが:
×文字参照 (Character Reference) ○実体参照 (Entity Reference)
221 :
デフォルトの名無しさん :2006/05/25(木) 03:25:33
<product> <name>PC</name> <assembly>memory</assembly> <assembly>HDD</assembly> <assembly>CPU</assembly> </product> ↑のようなXML文書を <xsl:value-of select="assembly"> というXSLTにかけたら、最初の要素しか 表示されないのですが、全部の要素を表示することは できないのでしょうか? できればカンマで区切って表示したいのですが・・・ よろしくお願いいたします。
223 :
デフォルトの名無しさん :2006/05/25(木) 06:39:07
>>222 <xsl:value-of select="."/>っていうのを使いましたが、
これは任意のノードにヒットするという意味ですか?
225 :
デフォルトの名無しさん :2006/05/25(木) 15:58:44
XML って人気なさげ。 でも age。
人気…?
これだけそこら中で使われてるものが人気がないって・・・
228 :
デフォルトの名無しさん :2006/05/25(木) 22:15:42
人気(にんき)はあるが人気(ひとけ)は無い。それがXML。
>>229 多くの人がXMLについて研究している(た)と思います
231 :
デフォルトの名無しさん :2006/06/07(水) 10:24:05
スキーマ言語(?)って、今から使うとしたら、どういうのがいいのかな XML Schema? RELAX NG?
どんなXML文書のルール書きたいの? ガチガチに固い構造でなきゃならなくて、そのためには難解な仕組みの理解を惜しまないか、W3Cの作ったものしか信じないならXML Schema そんなでもないならRELAX NG あるいはスキーマはツールが自動生成してくれて触る必要がないなら、それに越したことはない
俺アプリで SVGもどきを設計しているんだけど、 そのデータを XMLで保存しようとしているのね。 * ストロークデータ(x:float, y:float, pressure:float) * カンヴァスデータ(演算式) * ペンデータ(演算式) * アンカー ← HTMLの Aタグっぽいやつ こんな感じ。 それで、データ構造の仕様をどう表現しようかなと考えて、 今使われているスキーマ言語は何なのかな、と質問した次第。
スキーマ言語としてはRELAXNGの方が優れてるらしいけど、 標準ボキャブラリは大抵DTDかXML Schemaで書かれてるからね。 ネットワーク外部性って奴か。
XML Schemaにしておいたほうが無難。 本当に簡単な文法ならDTDのほうがより無難。
XML Schemaはとんでもない長さになる
そんな隙間だらけのXML Schemaなんて…!!
使ってもないのに質問なんだけど、XML SchemaやRelaxNGでスキーマ書いたとして、 バリデーションってどんなかんじで実行するんでしょうか。 XMLをパースするときに同時にバリデーションも行われるのか、それとも パース後のDOMツリーに対してバリデーションをするんでしょうか。 前者ならXMLパーサがスキーマ言語を理解してないといけないのでパーサとバリデータが一体化するので パーサが肥大化するのかなと思って、あまり現実的じゃないような気がします。 だから後者のほうで実装されているのかなとも思ったけど、それだとDOMパーサでしか使えないことになるし、 どっちなんでしょうか。
241 :
デフォルトの名無しさん :2006/06/08(木) 20:48:49
242 :
デフォルトの名無しさん :2006/06/08(木) 21:06:51
243 :
240 :2006/06/09(金) 22:16:29
うーむ、反応なし。だれもRelaxNG使ってないのかな。
DOMが便利すぎるからSAXを習得するのが苦痛だ
横着な俺は、DOMもめんどくさいけど…。 XPathとかE4Xじゃないとやってられない。
DOMは確かに面倒。
えっ!? XPATHってDOMじゃないの??
えっ!? XHTMLってXMLじゃないの??
えっ!? 米のとぎ汁って飲み物じゃないの??
えっ!? Apache AntってEclipseじゃないの??
えっ!? Apache ってインディアンじゃないの??
えっ!? おまいらって仕事してないの??
えっ!? 土日くらい休ませてくれないの??
えっ!? 休みって存在しないんじゃなかったの??
えっ!? マ○コって理論上のものだったんじゃなかったの??
まんこはホロコーストですよ、 戦勝国によるプロバカンダです
| \ __ / _ (m) _ピコーン |ミ| / `´ \ ('A`) ノヽノヽ くく そうだ。 SAXで読んでいって木構造を作ればDOMより速くなるんじゃね?
>>258 そうやって木構造を作ってるのがDOMなわけだが。
DOMのライブラリがSAXに依存するのはよくあるよ。
('A`)マジレスありがとう
XSLT、xpathは使わないとすぐ忘れてしまう。
262 :
デフォルトの名無しさん :2006/06/18(日) 04:47:46
あるノードをグループ化して其々の値を元にカウントする処理は 作れたのですが、その結果をソートするというのは無茶な話なので しょうか? <a> <b>ほげ1</b> </a> <a> <b>ほげ2</b> </a> <a> <b>ほげ2</b> </a> 結果 ほげ1 1件 ほげ2 2件 を ほげ2 2件 ほげ1 1件 に並び替えたい。。
decending
265 :
262 :2006/06/18(日) 14:04:42
はい、ソートはfor-eachの後にノードを指定するとありますが、 実際並べたいカラムというのは関数呼び出しをしているカラムなのです。 グループ化して其々をカウントするには他に方法が思いつかなかったのです。 下のような感じで「ここ」がソートできればいいんですが・・ <xsl:for-each selectほげ[not(id = preceding-sibling::ほげ)]"> <xsl:sort select="ここ" order="ascending" /> <xsl:variable name="ここ"> <xsl:call-template name="関数"> <xsl:with-param name="引数"> <xsl:value-of select="値"/> </xsl:with-param> </xsl:call-template> </xsl:variable> <xsl:value-of select="$ここ"/> </xsl:for-each>
>>265 俺の場合、for-each のブロックを個別の xsl:template として外に出して
その xsl:template を呼び出す xsl:call-template の引数に中間結果を渡す。
イメージとしては同じ元データに対し二重にxsltをかけるようなもの。
ただ、今はどうか知らんが、以前試した時は msxml ぐらいでしかこの技は使えんかった。
XML初心者です。 複合型で値の制限は出来ますか?
XML初心者です。 わかりません!
269 :
デフォルトの名無しさん :2006/06/19(月) 21:41:53
>>262-266 はいはいワロスワロスwww
<xsl:for-each select="a">
<xsl:sort select="b" order="decending" />
<xsl:if test="not(preceding-sibling::a[b = current()/b])">
<!-- あとはご自由にどうぞ -->
</xsl:if>
</xsl:for-each>
スキーマとしてはどれがメジャーなんでしょうか やっぱりXMLSchema?
はいそのとおりです。
レスありがとうです。 XMLSchemaが一番難しそうなんだよなぁ・・・ 勉強してきます
馬鹿ってだけで周囲には有害だからね。自覚できないからこそ馬鹿なんだろうけど
馬鹿を語る馬鹿にはなりたくないものだ
馬鹿がいるw
俺の事馬鹿って言うなー!
頭がいいのは俺だけか?
280 :
デフォルトの名無しさん :2006/06/28(水) 01:24:22
「200万円以上の車は●台あります」 と表示させたいのですが
carsの中にpriceが200であるcarがひとつでも入っていたら全てをカウントしてしまうみたいで困っています
どうしたらいいのでしょうか?
<?xml version="1.0" encoding="Shift_JIS" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="
http://www.w3.org/1999/XSL/Transform ">
<xsl:output method="html" encoding="Shift_JIS"/>
<!--文章-->
<xsl:template match="/">
<html>
<xsl:apply-templates select="cars"/>
</html>
</xsl:template>
<!-- 車 -->
<xsl:template match="cars">
200万円以上の車は
<xsl:if test="(car/price) > 200">
<xsl:value-of select="count(car)"/>
</xsl:if>
台あります。
</xsl:template>
281 :
デフォルトの名無しさん :2006/06/28(水) 01:27:04
XMLファイルはこれです。 この場合cars以下にprice200以上がひとつでも含まれていたら 台数が3台とカウントされてしまいます。 <?xml version="1.0" encoding="Shift_JIS" ?> <!-- 作成日:2005年10月6日 --> <!DOCTYPE cars SYSTEM "Sample1_DTD.dtd"> <cars> <car> <name>乗用車</name> <price>150</price> </car> <car> <name>トラック</name> <price>500</price> </car> <car> <name>オープンカー</name> <price>200</price> </car> </cars>
>>280-281 確かめてないけど、これでどう?
<!-- 車 -->
<xsl:template match="cars">
200万円以上の車は
<xsl:value-of select="count(car[price >= 200])"/>
台あります。
</xsl:template>
283 :
282 :2006/06/28(水) 02:08:26
「gt;=」で投稿したんだけど勝手に「>=」になってる。 (↑また置き換わるといけないので全角に) 逆向きのときもあるだろうから念のため・・・
&gt;
285 :
282 :2006/06/28(水) 09:42:16
>>284 ん?と思ったけど、なるほど。
一応もう一回書き直し。
<!-- 車 -->
<xsl:template match="cars">
200万円以上の車は
<xsl:value-of select="count(car[price >= 200])"/>
台あります。
</xsl:template>
#284は&amp;gt;と書いて投稿して&gt;となってるわけか
#ややこしいね
286 :
280 :2006/06/28(水) 23:30:04
ありがとうございます。 無事正しく2台と表示させることが出来ました
xsl:keyって使います? 行き当たりばったりの酷いソースの修正でもない限り使う場面はないような。。。 ピンポイントで引っ張らなくてもXSLならいくらでも取り出すチャンスがあると思うの。
>287 xsl:keyは、XMIファイルのparsingの前処理として、idrefを解決するために使った。
289 :
デフォルトの名無しさん :2006/07/09(日) 15:23:16
<xsl:output method="html" encoding="Shift_JIS"/> <!--文章--> <xsl:template match="/"> <html> <xsl:apply-templates select="cars"/> </html> </xsl:template> <!-- 車リスト --> <xsl:template match="car"> <body> <xsl:apply-templates select="car"/> </body> </xsl:template> <!-- 車 --> <xsl:template match="cars"> <div> <xsl:apply-templates select="name"/> <xsl:apply-templates select="price"/> </div> </xsl:template> <!-- 品名 --> <xsl:template match="name"> <xsl:copy-of select="."/> </xsl:template> <!-- 価格 --> <xsl:template match="price"> <xsl:copy-of select="."/> </xsl:template> </xsl:stylesheet> 上記のxslファイルで「2台目以降のcar要素」を、<xsl:if >を使って 抽出したいのですがどうすればいいのでしょうか?
なんかソースがおかしい気がして俺の頭じゃ変換結果が見えないが position関数を使えばいいよ。
たぶんカーズという映画のカース(呪い)なんだろう
292 :
デフォルトの名無しさん :2006/07/09(日) 19:56:36
<xsl:output method="html" encoding="Shift_JIS"/> <!--文章--> <xsl:template match="/"> <html> <xsl:apply-templates select="cars"/> </html> </xsl:template> <!-- 車リスト --> <xsl:template match="cars"> <body> <xsl:apply-templates select="car"/> </body> </xsl:template> <!-- 車 --> <xsl:template match="car"> <div> <xsl:apply-templates select="name"/> <xsl:apply-templates select="price"/> </div> </xsl:template> </xsl:stylesheet> とりあえずこれで全てのcarを表示できますが 挿入するのは <xsl:if car[position() &gt;= 2]> であってるんでしょうか? いろいろな場所で入れてみましたがうまく表示されません
>>292 何食わぬ顔してさっきとソースが違うじゃねーかw
<xsl:apply-templates select="car[position() > 1]"/>
VB.NET2003でXMLをインデント付きでファイルに出力したいのですがどのようなやり方がありますでしょうか? XMLはDOMになってます。
フォーマットを扱うインタフェースがフォーマットに下克上か。
一刀両断
hosyu
一般的なインデントってのを なんでもいいから誰か決めてほしい 目が慣れない
299 :
デフォルトの名無しさん :2006/08/06(日) 14:25:06
どっこいしょっと300げと
ちょっとまて、パーサはinvalidなXMLをパースしちゃいけない(MUST NOT)んじゃなかったっけ
語弊がある
303 :
デフォルトの名無しさん :2006/09/10(日) 01:31:53
inlineで処理する場合、属性を継承させたいのだが、 同じタグがネストすることに 問題はあるだろうか、パースはできるが。 <A attr1="true">XX<A attr2="true">YY</A>ZZ</A> XXはattr1がtrue YYはattr1とattr2がtrue ZZはattr1がtrue
304 :
デフォルトの名無しさん :2006/09/12(火) 01:07:21
XML覚えたらどんな仕事に就けるんですか?
>>303 属性の継承自体はそのデータを扱うアプリ次第としか言いようが。
あとは、ループ可能なネスト構造なんて許容しちゃうと、あとで処理するのがめんどうだと思う…
>>304 XMLダケじゃなんにも
>>304 RDBMSの世界で例えるとXMLはテーブルにすぎない。
はっきりいってXML*だけ*知ってても糞の役にも立たない。
ちなみにXSLはRDBMSの世界でのSQLに相当する。
>>307 > ちなみにXSLはRDBMSの世界でのSQLに相当する。
ま、まじで?!XPointerとかだとおもってたぉ (;^ω^)
309 :
307 :2006/09/12(火) 02:02:27
>>308 感覚でテキトーに吹いただけだから
厳密に捉えちゃいや〜んw
XQueryとか使ってる? Oracleは結構前から、最近DB2、あとさっぱり知らんが T1とかEsterraだっけ? 使えるようだけど。 それで楽になったこととか、支障ない範囲で具体的に教えてくれると嬉しい。
>>307 outputがXMLなXSLTって言ってほしかったなあ。
SELECT文もテーブルを生成するように、
XSLTもXMLを生成するという意味では似ている。
>>310 多分ほとんどの業務系でOracleのXMLとかの機能使われて無い(´・ω・`)
SQLはXPathだ!
SQLに相当するのはXQueryかXPathだと思うお。 XQuery使ったこと無いけど…
JavaでXML操作する方法勉強したいんですが良書はありますか? オライリーのJava&XML第2版2002年発行なんですがこの内容はもう古いんでしょうか?
>>315 ありがとうございます。XMLの本も見てみます。
その本は第1版持ってるんですがAPIが古くて本のとおりような記憶が・・・
317 :
デフォルトの名無しさん :2006/09/30(土) 23:45:31
XSLTをHTML整形以外に使ってる実例ってある?
なんかSNMPの方でXML-SNMPとかいうのがあるらしい
319 :
デフォルトの名無しさん :2006/10/01(日) 00:02:14
ネットワーク監視せんからそのプロトコルが何をするものか知らないけど いちおう使われてるんだなと思うと嬉しいね。
>>317 たぶん、規格乱立で収拾のつかなくなったRSS(+ATOM)のバージョンの違いを
吸収するために各種RSSリーダーでXSLTが利用されているハズ。
322 :
デフォルトの名無しさん :2006/10/01(日) 13:45:36
そうでもない
>>322 じゃぁどうやってんの?
XSLTでRSSのバージョンの違いを吸収させずに他の方法使うなんてアホとしか思えんのだが。
俺が知らないだけでもっといい方法でもあんのか?
あ、サーバサイドのプログラムだと重いXSLTを使うわけにはいかんかったりするか。
それでもクライアントサイドでやる場合は確実にXSLTだろ〜
話の流れぶった切るけど mozilla系列のxul 面白いよね 豪快にrdf使ってプチrdbとかも最高
XSLTぐらいで吸収できるのかな?
>>325 お前では無理かもしれんが、フツーにできる。
というか、ここで使わないでどこでXSLTを使うんだよってくらいキまる。
詰まらん煽りいれる奴の肩もつ気はないが XSLTの表現力は、その印象ほど貧弱じゃないよ。
わざわざXSLTに分離する意義があるかどうかは別だけどね。
330 :
325 :2006/10/03(火) 10:14:43
>>327 いや、俺がXSLT使いまくった経験で言わせてもらってるよ。
ほかのフォーマットとやらには詳しくないんだ。すまない。
>>328 うん。そう思う。
XSLTは存在としては面白いけど、利点はすぐに書き換えられることぐらい…。
使う言語としてはいろいろ面倒すぎるだろう…。
あんまり存在意義がわからない。
>>330 >利点はすぐに書き換えられることぐらい…。
ぐらい...って、おまい、それ、チョー重要だぞ。
すぐに書き換えられるってことはそもそも最初バージョンを書き起こすのも楽ってことだし、
デバッグもメンテナンスも楽ってことだぞ。
大幅賛成だけど、 つ 諸刃の刃 ソースコードだって直ぐ書き直せるし、interfaceだってプログラマの意思で書き換えることができる 便利だけど怖い
流れぶった切ってすみません。
http://www.xmlmaster.org/atelier/mc006.html にあるITunesのXMLをHTMLに変換するXSLTに手を加えて
アーティスト名でソートしようと思い、
<xsl:for-each select="plist/dict/dict/dict">
の下に
<xsl:sort select="key[text()='Artist']" data-type="text" order="descending" lang="ja" />
と加えてみたのですが、ソートされません。
ただ漠然とxsl:sort select=の指定(ロケーションパス?)が誤っている気がするのですが、
具体的にどうすれば良いのかがわかりません。
どなたかご教示いただけませんか。
string[preceding-sibling::key = 'Artist']
335 :
333 :2006/10/04(水) 19:48:54
>334 ありがとうございます。目的は達成できました。 コンテキストノードの前の兄弟ノードでkeyがArtistの stringを指定している? 答えを頂いてもよく理解できてません。もっと勉強します。
とうとうProperty Listが「ITunesのXML」なんて呼ばれる時代がきたのか。
ライブラリのマニュアルをRDFとDublinCoreで記述しようと思うんだけど、 どんな構造にしたらいいのかよくわからないからどうか教えてくれないか? 言語はCとC++でヘッダファイルごとに分けようと思っている。
338 :
デフォルトの名無しさん :2006/10/09(月) 11:19:14
質問です。 XML自体には、フラグメント識別子の扱いに関する定義はないと考えて良いのでしょうか?
>>338 DTDで定義するが、それだと不便なので、
xml:idが勧告されている。
ODFの仕様書邦訳ってない?
Javaとかで、XMLの構造を単純なコレクションに吐き出すAPIって無いもんでしょうか? InputStreamやStringそのままとかDocumentFragmentとかでなしに。 何がしたいかというと、外枠の仕様だけ決めておいて、 中にメタデータをボキャブラリを問わず格納できるようにしたいのですが、 外枠だけを管理するライブラリとしては、中のメタデータには触らずに、 それを処理できるほかのライブラリに処理を渡すといったことができないかと。
Digesterは?
よさそげですね、使ってみます。
Digesterの後継たるBetwixtはいつリリース版になるのかねぇ
Digesterのpluginパッケージを使った事ある方っていますか?
XSL-FOをつかって XMLからPDFを作ったりできるんだよね? Office2007からはXMLを使うみたいだから XSL-FOと組み合わればPDFつくれるんちゃう?
OfficeがXML使うとか一体何度聞いたことか
Office2003でもXML形式はサポートしてるぞ。 Office2007ではそれを(確かZIPで)圧縮した形式がデフォルトになるだけ。
XMLのスキーマ?は違うものになるんじゃないの?
>>351 そうかも。詳しくは知らないけど、確かそのZIPにはドキュメントに埋め込んだ
画像やらがフツーの画像ファイルの形式で保存されててその画像ファイルだけ
そこらの画像編集ソフトで開いて編集したりとかってこともできるようになるらしいね。
そういやVistaはファイル形式の一つにパッケージを採用するんだっけ?
浅海智晴事務所って消えたんでしょうか。 Relaxer、もう終わりなんかなあ。好きなのに。
XMLラベリング手法の「Dewey Order」ってどう読むの? カタカナで全然書いてなくて分からん
dewey decimal classification〜♪
>>354 バグ修正だけど、Relaxer更新されたみたいだな。
XMLを勉強しようと思った。 サンプルファイルを開いて意気込んだ。 2,3回開いて、IE、explorer.exeが落ちた。 ,.――――-、 ヽ / ̄ ̄ ̄`ヽ、 勇者トンファーパーマン惨状 | | (・)。(・)| | |@_,.--、_,> 俺が着たからにはもう色々と駄目だ ヽヽ___ノ /:::::::::::::::::l /77 /::::::::::i:i:::::::i,../ / | l:::/::::::::i:i:::、:::/ / | l;;ノ:::::::::::::::l l;.,.,.! | /::::::::::::::::l/ / 冂 /:::::::;へ:::::::l~ |ヌ| /:::::/´ ヽ:::l .|ヌ| .〔:::::l l:::l 凵 ヽ;;;> \;;>
360 :
デフォルトの名無しさん :2006/11/12(日) 20:36:16
XMLの勉強を始めたばかりの初心者なのです. 私が作成したXMLファイルのエラーをチェックするために コマンドプロンプトから java dom.Counter (XMLファイル) という風にやっているのですが、次のようなエラーが出てしまいます。 [Fatal Error] :-1:-1: Premature end of file. 開始タグと閉じタグが一致してないのが原因なのかとソースを何回も チェックしましたが、そのような記述ミスはありません。 他に原因として考えられること、またはこのエラーの指す意味が お分かりでしたら教えていただけませんか? よろしくお願いします。
エンコーディングに問題がないか、 XMLの記述に本当に問題がないかを調べる。 パーサによっては utf-8 でも BOM ついてると弾くとか、いろいろだよ。
BOMはまじで引っかかるね。 あると怒るやつ、ないと怒るやつ… 狂ってるとしか思えない。
BOMが狂ってるのは確か。 そんなに必要だったら必須にすりゃ良いのに あったりなかったりとか、もう何考えてるのか。
UTF-8の文字列はBOMガないのが正しいはず。
OfficeがXMLでデータ保存するようになると、 データをCVSで管理できるようになるってのがいいな。
366 :
デフォルトの名無しさん :2006/11/14(火) 06:46:23
<?xml version="1.0" encoding="Shift_JIS" standalone="yes"?> <hoge>ほげほげ</hoge> というファイルを、 .load パス .loadxml .xml .save パス すると、 <?xml version="1.0" standalone="yes"?> <hoge>ほげほげ</hoge> になってしまいます。encodingが変わってしまう理由と loadxmlを使っても、encodingが保持される方法について教えてください。 (実際には上記例のように、単純に読み直して保存するだけではありません) WSHからMSXML2.DOMDocumentを利用しています。
MSXMLのxsltプロセッサではJavaによる拡張は可能ですか?
>>367 ActiveScriptか.NETを使える。
beansとして作って、ActiveX化すれば可能なんじゃね?
素直には無理。
Cなどでいうdefineのようなものはありませんか? 設定ファイルの動作を切り替えたいんだけどコメントアウトの修正だとまんどくさいです。
ありますよ。 DTDを解釈するパーザなら使える。
XMLSchemaでDTDのENTITYみたいな実体参照を表現するには、どう書けばいいんでしょうか。 DTDのENTITYだけ使おうかとも思ったんですが、うまくいきませんでした。
Schema知らないからわかんね。
巨大なXMLテキストを、XPATHで高速に検索して引っ張ってくれるオープンソースな XMLデータベースってありませんか? Javaは重いのでできれば遠慮したい、データ本体は静的でReadOnly可、事前にインデックス 作成も可、という条件で。
別に、最近のJavaは気にするほど重くはないと思うけどな。
メモリ大量に食うから仮想メモリのスワップや強制GCが発生して結局重くなる 演算とかの速度は速いと思うんだけどね
>>375 仮想メモリのスワップとかJavaに限った話じゃないような・・・
GCもスカベンジならそれほどコスト高くないし。
あとは、フルGCをなるべく発生させないようにチューニングとか。
すれ違いスマソ
377 :
デフォルトの名無しさん :2006/12/19(火) 01:39:12
巨大なXMLならXMLDB使うしかないんじゃない? オプソでもxindiceだっけ?いくつかあるんじゃない?
>>376 JavaVMのメモリ使用量がでかいから他よりスワップがおきやすい。
まぁ、それは理屈だが。
XMLから脱線しまくりな気もするが JavaDBは速い奴は無駄に速いぞ。H2はMySQLより速いというくらいだ。
ほぅ…それは凄い。 出来ればソースが欲しいけど、自分で探しにいく。
383 :
デフォルトの名無しさん :2006/12/24(日) 06:48:10
XHTMLをXSLで変換したいのですが、次のような文書からtitleを抜き出すことが
できないでいます。
この場合、XSLをどのように書けばいいのでしょうか?
XSLTプロセッサはJava6SEに標準でついているものを使用しています。
□htmlファイル(これを修正することはできない)
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns="
http://www.w3.org/1999/xhtml ">
<head>
<title>ほげ</title>
</head>
<body>
</body>
</html>
□xslファイル(これがうまくいかない)
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="2.0" xmlns:xsl="
http://www.w3.org/1999/XSL/Transform ">
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
<xsl:template match="/">
<result>
<title>
<xsl:apply-templates select="html/head"/>
</data>
</result>
</xsl:template>
<xsl:template match="html/head">
<xsl:copy-of select="title"/>
</xsl:template>
</xsl:stylesheet>
384 :
383 :2006/12/24(日) 06:51:36
すいません、XSLの修正です。
□xslファイル(これがうまくいかない)
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="2.0" xmlns:xsl="
http://www.w3.org/1999/XSL/Transform ">
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
<xsl:template match="/">
<result>
<title>
<xsl:apply-templates select="html/head"/>
</title>
</result>
</xsl:template>
<xsl:template match="html/head">
<xsl:copy-of select="title"/>
</xsl:template>
</xsl:stylesheet>
>>385 別にその程度じゃそんなにキチガイじみてるとは思わんが。
てか、XSLTはもっといろんなことができる。
データ入力まわりの問題をうまく解消しないまま途中でほったらかしにしちゃったけど
XSLTでタスク管理のツールを作ったこととかあるぞ。ちゃんとタスクの親子関係に
基づいてツリー表示もできるヤツ。同じデータをいろんな組み合わせ or いろんな見せ方を
したい場合に XSLT はとっても重宝する。
なんか普通にコード書いたほうが早そうだな・・・
もっとシンプルなテンプレート言語使って、 複数テンプレート用意する方を俺は選ぶ。 あるいは XML 丸投げして、 クライアント側で勝手に描画してください形式にする。 XLST の方が素晴らしいケースってどんな場合?
XMLはD言語みたいなネストできるコメントが欲しい
>>389 同感
あとCDATAセクションもどうにかしてほしかった
>>388 >>385 の人も言ってるように形式的な変換なら、XSLTで一発の方がいいかな。
間にいろいろ挟みたくない場合は少なくないし。
他の言語でも変換は出来ると言われたら確かにそうだけど
>>388 >もっとシンプルなテンプレート言語
ちなみに今何を使ってる?
>>392 velocity 使ってます(java)。
利点は構文がシンプルなのと、
変数は #var の形式だから < > で囲う系と比べて
ブラウザでの確認がしやすい点。
難点はホワイトスペースが意味を持つ場合、
改行その他が表示されないように工夫する必要があって
かえって読みにくくなる点。
テンプレート言語ではないけど e4x も重宝してます。
395 :
デフォルトの名無しさん :2007/01/24(水) 20:10:15
SAXにおいてスキーマはどのような位置づけになるのでしょうか? DOMの場合は解析を終えた状態ですが、SAXはインタプリタですよね?
396 :
デフォルトの名無しさん :2007/01/24(水) 22:49:13
XSLTを使って <A> foo <B> <C> bar </C> <D> baz </D> </B> qux <B> <C> hoge </C> <D> fuga </D> </B> piyo </A> から<A>foo bar qux hoge piyo</A> を抜き出したいんですが、どう書けばいいのでしょうか?
>>393 ども。velocityはちょっといじって投げちゃってた。
>396 xsl:value-of はテキストノードだけ残るんでは。
399 :
396 :2007/01/25(木) 00:52:59
>>398 <xsl:template match="/">
<xsl:apply-templates select="A"/>
</xsl:template>
<xsl:template match="A">
<xsl:copy>
<xsl:value-of select="."/>
</xsl:copy>
</xsl:template>
という感じで書いてみたんですが、Aの子ノードの内容を全部取ってくるので、
必要ないbazやfugaが入ってしまいます。
400 :
デフォルトの名無しさん :2007/01/25(木) 01:56:54
質問があります。 Xalan-C 1.10 を使っています。 入力として以下のような XML があります。 <?xml version="1.0" ?> <article> <title>プログラム技術板について</title> ここの板の住人はとても親切です。 <photo file="hiroyuki.png" /> こんな人にも親切に質問に答えてくれます。きっと。 </article> これを整形して <html> <head><title>プログラム技術板について</title></head> <body>ここの板の住人はとても親切です。<img src="hiroyuki.png" />こんな人にも親切に質問に答えてくれます。きっと。</body> </html> こういう出力を得たいのですが上手くいきません。 具体的には間に別のノードが挟まったテキストノードの扱い方がわかりません。 〜続きます〜
401 :
400 :2007/01/25(木) 01:58:41
〜続きです〜 以下のように書いてみたのですが、テキストと区切りが別々になってしまいます。
<?xml version="1.0" encoding="Shift_JIS" ?><xsl:stylesheet xmlns:xsl="
http://www.w3.org/1999/XSL/Transform " version="1.0">
<xsl:output method="xml" encoding="utf-8" /><xsl:template match="/"><xsl:apply-templates /></xsl:template>
<xsl:template match="article">
<xsl:element name="html">
<xsl:element name="head">
<xsl:element name="title">
<xsl:value-of select="title" />
</xsl:element>
</xsl:element>
<xsl:element name="body">
<xsl:for-each select="../*">
<xsl:apply-templates select="text()"/>
<xsl:apply-templates select="photo"/>
</xsl:for-each>
</xsl:element>
</xsl:element>
</xsl:template>
<xsl:template match="text()">
<xsl:value-of select="."/>
</xsl:template>
<xsl:template match="photo">
<xsl:element name="img">
<xsl:attribute name="src">
<xsl:value-of select="@file" />
</xsl:attribute>
</xsl:element>
</xsl:template>
</xsl:stylesheet> 〜続きます〜
402 :
400 :2007/01/25(木) 01:59:28
〜続きです〜 text() と photo を別々に apply している部分を * にすると欲しいテキストが処理されず、代わりに title の中身のテキストを拾ってきてしまうようです。 このような場合、どう記述すればよいでしょうか? 宜しくお願い致します。
>>395 なんか認識を間違えてる気がする。DOMだろうとSAXだろうとStAXだろうとパース手法とデータの扱い方の違いの問題だろうな。
>SAXにおいてスキーマはどのような位置づけになるのでしょうか?
多分欲しい回答は自分で文書型をパースしてそれにしたがってバリデートするって言って欲しいんだろう。
>DOMの場合は解析を終えた状態ですが、
それは内部で既にパース済みだからだよ。既にパース結果をDOMインターフェイスから扱える形になってる。
>SAXはインタプリタですよね?
そこまで高度なものじゃなくてポピュラーなXML APIは全て字句解析機。
トークナイズしてトークンをハンドラにディスパッチする事によってデータを扱う。
SAXの場合はハンドるした生のデータをプログラマが扱うがDOMの場合はDOMインターフェイスから扱えるように加工されたデータを扱う。
SAXの場合はトークナイズしてディスパッチした時点でデータを破棄するがDOMは
"後で"扱うために保持するのでデータの持ち方をどうするかという観点からも加工されている。
データの持ち方までDOMは関与しないからどう持つかは実装次第で必ずツリーかは別だけどな。
多分
>>395 はPLインタプリタやコンパイラみたいな物を想像しててSAXがインタプリタと言ったんだろうな。
そこまで複雑なものじゃないよ。その中の字句解析機に当たる。
その次の構文解析と意味解析辺りがバリデータと言えるか。
XMLパーサはフレームワークとかじゃなくてただのレイヤーだ。
何やっててスキーマは〜って思ったんだ?何をしたいのか聞いた方が早いと思う。
自力でパーサ実装した事ないだろ?
>>400 元のXMLの構造を見直したら?
<article>
<title>プログラム技術板について</title>
<body>ここの板の住人はとても親切です。</body>
<photo file="hiroyuki.png">こんな人にも親切に質問に答えてくれます。きっと。</photo>
</article>
とかさぁ。
複数ある項目に対してCGIを呼び出すボタンをつけるというのを XML+XSLTでやろうと思っているのですが サンプルページなどを見ると、 表示するだけで項目の編集などをやっていません 項目ごとにCGIなり編集なりを行いたい場合 どのようにするのが一般的でしょうか?
>>400 > <xsl:for-each select="../*">
> <xsl:apply-templates select="text()"/>
> <xsl:apply-templates select="photo"/>
> </xsl:for-each>
もう見てないかもしれないけど、一応。
上の4行を<xsl:apply-templates select="text()|photo"/>の1行だけに書き換えればいい。
もし余計なスペースと改行が邪魔なら
> <xsl:value-of select="."/>
を<xsl:value-of select="normalize_space(.)"/>にでもするといいよ。
>>405 <form>と<input>でボタンをつければいいだけでは?
XFormsでRDFを生成したいんですけど、 namespaceのところでおかしくなるんです。 仕様で無理なのでしょうか? ちなみにFirefoxの拡張で試しています。
>>407 何も知らない俺からすれば
鉛筆でノートに図形を描きたいんですけど、
指先のところでおかしくなるんです。
仕様で無理なのでしょうか?
ちなみに100¥ショップので試しています。
みたいにおもえた
410 :
407 :2007/02/04(日) 05:17:55
すみませんでした。状況説明を補足します。 XFormsでRDFを生成したいのですが、インスタンスに名前空間があると 例) "RDF/Description/creator"というXPathで参照すると入力欄は出ず、 "rdf:RDF/rdf:Description/dc:creator"というXPathで参照すると入力欄は出るけれども エラー: XForms Error (15): Could not bind control to instance data と怒られてしまいます。 XFormsで生成したXMLには、インスタンスで指定した名前空間接頭辞の設定が消えてしまうのですが、 そこが問題なのでしょうか? 解決策をご教授いただければ幸いです。
>>406 XSLTを切り替えたいのでASP.NETを使って
FormとInputでやってみたのですが
xsl:elementとxsl:attributeでinputタグを書くと
終了タグが閉じないinputタグが生成されたり
ASP.NET用のformタグ内で宣言すると
Validateエラーが出たりとなかなか上手くいきません。
asp.netなんて使うなって話ではあるんですが・・・
「XMLマスター教科書 ベーシックV2」という参考書で、 参考書の間違いに気づいた俺に感動した。 参考書だだ暗記癖が抜けてきたよい傾向と受け止めよう。
xmlとhtmlの本て嘘ばっかだぞ。仕様書嫁って言いたくなる。 教本じゃなくて紙媒体の参考書が欲しいだけの人間にはこういうのは困る。
古いアプリ(改訂)で売られてることが多いから、 正誤表(パッチ)で上書きしてから使うのが大切ってこったね。
()の中と外があべこべになっちゃった。恥ず。
XML Schemaは結構強力だな うちもC、Java、VB(VBA)と手広い環境でやってるんで XMLの導入を勧めたいところだ。
スキーマ書くよさげなツールある? ヒューマンフレンドリーな方法で編集したいんだが
>>417 あんまり高度な書き方すると読む側が大変だから程ほどにね。
>>417 WXSは強力すぎてそこら辺の要件には一致しないし、仕様がでか過ぎて実装も困難なんだけどねw
>>418 Altova XMLSpyがおすすめ。
>>420 実装するのは俺じゃないしナー。
世の中の対応もだいぶ進んできた。Eclipse WTPの
XMLエディタはおすすめ。ばりばり補完してくれる。
>>421 スキーマバリデータ書いてみ?死ねるw
文法が可変の言語インタプリタ書いてるみたい。
DTD→RELEXNG→WXSの順に仕様がでかくなるんでDTDじゃ物足らず、WXSじゃでか過ぎるって場合が良くある。
RELEXNGは両端の架け橋として良く出来てる。
Schemaじゃでかすぎるって印象は無いな complexTypeひとつにrestriction施したsimpleTypeを項目数分書くとかで十分だ
>>422 バリデータとか書く側ならともかく、フツーに使う側からしてみりゃ
別に仕様が大きすぎて困ることはないけどね。
XSLTでtext要素のトリム(前後の空白文字の削除) とかするにはどうするの
途中の連続した空白が1個になっていいなら normalize-space
ありがとー
ちょっとvipperが尋ねるお? 今、XMLをメタモデル化してそのモデルに自由にアクセス出来るライブラリ作ってんだけど総称符号化について日本語で読める文書知らない?論文でも良いんだけど・・・。 もう一つ、XML::Twingのようなハイブリッドパーサの実装他に知らない? 一応仕様だけは完成したけど煮詰めたくて、けどやってる事がメタ過ぎて参考になる資料がなくて困ってる。 当方オライリーの入門XML2版だけある。 #簡単に言うとXMLに対してランダムアクセスと順次・逆順次アクセスが自由に可能になる。 但しアクセスのみに焦点を置いてるので生成機能はない。 実装してる人間からすればプログラミング単位がメタ過ぎて発狂する・・・
430 :
デフォルトの名無しさん :2007/04/10(火) 22:35:44
う
431 :
デフォルトの名無しさん :2007/04/10(火) 22:41:17
XMLで質問なのですが、よろしくお願致します。 <?xml version="1.0"encoding="shift_JIS"standalone="yes"?> <books> <book isbn = "ISBN4-7980-0137-6"> <name>今日から使えるAPS3.0サンプル集</name> <author>Yoshinori.Yamada</author> <category>ASP</category> <price>2800</price> <publish>昭和システム</publish> <pDate>2003-08-05</pDate> </book> <book isbn = "ISBN4-7980-0095-7"> <name>今日から使えるXMLサンプル集</name> <author>Nami Kakeya</author> <category>XML</category> <price>2800</price> <publish>昭和システム</publish> <pDate>2003-12-04</pDate> </book> <books/> を実行すると、
432 :
デフォルトの名無しさん :2007/04/10(火) 22:42:59
スペース、タブ、および改行または疑問符 (?) が必要です。リソース 'file:///C:/Documents and Settings/aaa/XML/books.xml' の実行エラーです。ライン 1、位置 20 <?xml version="1.0"encoding="shift_JIS"standalone="yes"?> -------------------^ とエラーが出てしまいます、何処がどう違うのか、 わからないのでご指摘お願い致します
"1.0"の後。encoding=の前。
スペース、タブ、および改行または疑問符 (?) が必要です。 4択問題だなw
2択だろ。 white space or ?
436 :
431 :2007/04/10(火) 23:10:10
ごめんなさい、どうしても変わりません・・・・ 訂正箇所を記述して頂けると幸いです。 直しても変わらないです
直してないから変わらないんです
438 :
431 :2007/04/10(火) 23:22:04
<?xml version="1.0" encoding="shift_JIS"standalone="yes"?> これでも、結果は同じです。
440 :
431 :2007/04/11(水) 00:06:27
できました!!!ありがとうございました!!!
441 :
デフォルトの名無しさん :2007/04/11(水) 22:17:10
XML レ0・ク0・h・yg0M0~0[0・ XSL ケ0ソ0、0・ キ0・ネ0・O(uW0_0 XML eQ娚o0h・yg0M0~0[0・0 ィ0・・・劃kW0f0O0`0U0D00 [ーe] ワ0ソ0・・ッ0・テ0ッ0Y0・K00~0_0o0契g0・・W0f0O0`0U0D00 -------------------------------------------------------------------------------- ニ0ュ0ケ0ネ0n0・ケ[k0!qケRj0eW[L0級d0K0・~0W0_00 ・ス0・ケ0 'file:///C:/Documents and Settings/Yousuke1/ヌ0ケ0ッ0ネ0テ0ラ0/XML/text.xml' n0歇L葵0・・g0Y00 ・、0・ 40MOn 8 name=" こんなエラーを起こしてしまうのですが、何処の箇所が違っているのでしょうか?
442 :
441 :2007/04/11(水) 22:20:30
IEを使っています。
>>441 [表示(V)] - [エンコード(D)]
444 :
デフォルトの名無しさん :2007/04/26(木) 01:28:29
ソースXMLの一部だけ変更する、というのはXSLT向きでしょうか。 他は変えずに/x:abc/y:def@hoge の値だけを書き換えるとか、/x:abc/y:def/hoge にappendChildするとか。 出来ないことはないのかも知れませんが、上記の様なのにXSLTを使うのは適切でしょうか。 matchが、明示より*が強くて /x:abc/y:def だけ引っ掛けてあとはcopy-ofというのができず、悩んでいます。 priorityを明示すれば良いのかも知れませんが、それはまっとうな使い方でしょうか。 (*の方が強いのは理由があるのではないか、それに反するのではないか、と気にしています)
445 :
デフォルトの名無しさん :2007/04/26(木) 03:48:16
XMLで DOMプログラミングの段階まで行きましたが そこで、JavaSprictを使い、XMLの内容を ダイアログを表示させるという事なのですが ダイアログが、どうしても表示されなく 普通にHTML形式で普通に出力されてしまいます。 自分のソースに誤りがあるのかと思い サンプルでやっても同じです。 因みにIEでXPのサービスパック2です。 ご助言、宜しくお願い致します。
446 :
デフォルトの名無しさん :2007/04/26(木) 08:56:47
拡張子がtxtとか。適当ですまん。
>>444 priorityは値が大きい方が優先だぞ。逆だ。
適切かどうかはほかの奴に任せる
448 :
445 :2007/04/26(木) 18:48:03
やはり解決しません
>>448 あんたが何をして何ができないのかがわからんよ。
alert("XMLの内容"); じゃだめなの?
450 :
445 :2007/04/26(木) 19:08:08
JavaSprictを使いダイアログの中にXMLの内容を出力さしたいのですが それができません…サンプルからやってもです
Q. できません A. 頭が悪いからです としか答えようがないんだが
自分のやりたい事をだらだらと書くだけで実際に何をやってどうなったのか具体的な事が書かれてないからなぁ。 >Q. できません >A. 頭が悪いからです 今のところ模範回答だよな・・・。 それにサンプルって何よ? そもそも、ブラウザ実装のjavascriptでxml扱う場合はxmlの話じゃなくてブラウザのjavascriptのお話じゃないか? 板違いではなくて? どうせ何処でも同じ事言われるんだが。
>444 そーゆー、XMLの構造を認識しなければいけないけど、やってること自体は大したこと無い、という領域こそ、XSLT でさくっと済ますべきところだと思う。 >447 も書いてるけど特定が厳しいルールほど優先度が高いから <xsl:template match="@*|node()"> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:template> <xsl:template match="/x:abc/y:def/@hoge"> <xsl:attribute name="hoge">foo</xsl:attribute><!-- やりたいことに置き換える--> </xsl:template> で、いいんじゃねーの?
XML-FOってどこまで対応してるんだろうか。 PDFは行けるみたいだけどWinHelpとかは厳しい?
XSL-FOは中間フォーマットそのものの仕様。変換への対応をしなけらばならないのはアプリケーション側。 XSL-FO自体は印刷物用途に耐えられるほどの仕様。PDF位にしか変換できないのはアプリケーション側の実装の都合によるもの。 よってその質問は的を射てない。
つまり実装するには無駄な仕様が多いってことだな。
457 :
デフォルトの名無しさん :2007/04/27(金) 01:56:01
>>451-
>>452 サンプルとは、この本のです
10日でおぼえるXML入門教室 第2版 (単行本)
山田 祥寛 (著)
>>ブラウザ実装のjavascriptでxml扱う場合はxmlの話じゃなくてブラウザのjavascriptのお話じゃないか?
たぶん、そうだと思います・・・・
458 :
デフォルトの名無しさん :2007/04/27(金) 02:08:40
>>ブラウザ実装のjavascriptでxml扱う場合はxmlの話じゃなくてブラウザのjavascriptのお話じゃないか? もし、これだとしたら、どうすれば宜しいでしょうか?
460 :
デフォルトの名無しさん :2007/05/04(金) 02:14:56
質問です。
↓のRelaxNG文書のrefを展開した形はどのようになるのでしょうか?
<?xml version="1.0" ?>
<grammar
xmlns="
http://relaxng.org/ns/structure/1.0 "
datatypeLibrary="
http://www.w3.org/2001/XMLSchema-datatypes ">
<start>
<ref name="hoge"/>
</start>
<define name="hoge">
<element name="hoge">
<choice>
<ref name="foo"/>
<ref name="hoge"/>
</choice>
</element>
</define>
<define name="foo">
<element name="foo">
<text/>
</element>
</define>
</grammar>
再帰的な構造になる
462 :
460 :2007/05/04(金) 10:28:15
refを展開して、elementだけで書くことができますよね?
理論上は書ける。無限の長さになるが。
464 :
デフォルトの名無しさん :2007/05/07(月) 19:50:38
しろんぼが規格作るとどうしてなんでもぐちゃぐちゃ奇奇怪怪になるの?
くろんぼの規格よりはましじゃ
466 :
デフォルトの名無しさん :2007/05/10(木) 21:22:13
保守点検
多分初歩的な質問だけど、いい感じの答えが見つからんのでき尋ねさせてもらうよ。 サーバにXMLファイルを置いて、chmod 600にした場合、同じサーバにおいてあるプログラムは基本的にXMLの読みができるよな。 んでもブラウザのジャヴァスクからアクセスしようとすると、クライアント側で全ての処理が行われるからXMLにアクセスできなくなっちゃう。 今んとこXMLHTTP使ってデータ取得してるんだけど、できることならXMLのデータをユーザ以外が読めないようにしたいわけなんだわ。 ジャヴァあたりのサーブレットが標準ぽいけど、それやると使えるサーバが少し限られてるからできるだけ避けたいんだよね。 誰かこれやる方法しってる人いない?
スレの趣旨と違うだろ・・
XML(XLS)テーブル表示を作っています。 alldata.xmlでテーブルを表示し、そのリンクがクリックされると、onedata.xmlを表示するという単純なものです。 alldata.xmlはDTDが定義され(alldata.dtd)、その中でENTITYとして、onedata.xmlを持っています。 データを増やすときは、onedata.xml、twodata.xml・・・のようにして対応するENTITYを作ってやれば、 リンク先のページができると同時に、自動的ににalldata.xmlテーブル表示が拡張される、という仕組みを考えています。 実際に作り始め、alldata.xmlの表示はできたのですが、 リンク先のonedata.xmlを作成し(その中でonedata.dtdも定義)、allldata.xmlを表示しようとすると、 「DOCTYPE 宣言は複数行えません」と出てきてしまいます。 onedata.xmlからDTDを削除すれば、alldata.xmlは表示されるのですが、今度はonedata.xmlの表示が真っ白・・・。 この場合、どうやればalldata.xmlとonedata.xmlを両立できますか? (特に複雑なデータ構造ではないと思っていますので、XML使い始めて早々にこんなところで躓くとは・・・。)
470 :
デフォルトの名無しさん :2007/05/16(水) 16:21:19
javaで入力されたxmlにxsdを使用して検証を行おうとしています。 xsdは2種類あり(a.xsd, b.xsd)、a.xsdからb.xsdをincludeしています。 SchemaFactory#newSchema(new Source[]{a.xsdのソース, b.xsdのソース}); でSchemaを取得し、Schema#newValidator()でValidatorを取得しています。 取得できたValidatorで入力されたxmlの検証を行うと以下の例外が発生します。 org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'b.xsdで宣言されている要素名' to a(n) 'element declaration' component. newSchema(new Source[]{b.xsd, a.xsd})でa.xsdとb.xsdの順番を入れ替えると今度は org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'xmlのルート要素名'. newSchema(a.xsdのみ)とすると org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'b.xsdで宣言されている要素名' to a(n) 'element declaration' component. xsdが複数になってしまった場合の検証方法を教えていただけないでしょうか。
XMLとXSLでページを作っています。 XSLでは、さらに他のXMLのデータをdatafldで表示しています。 おそらく、内部ではXML→XSL→他XMLの順に読み込まれていると思いますが、 一旦XSLが表示された後、データバインドするときにリフレッシュが走ってしまいます。 画面をリフレッシュすることなくデータバインドさせたいのですが、何か方法はありますでしょうか?
472 :
471 :2007/05/19(土) 18:52:54
自己解決した。 画面をひとつの巨大なテーブルで作っていて、そのテーブルの最後にデータバインドしていたのがいけなかった。 データバインドをそのテーブルの外に出したらあっさりと解決。
473 :
デフォルトの名無しさん :2007/05/20(日) 00:41:04
みんなXMLで難しい事やってるなぁ・・・、まじでついていけないよ。 ところで、UMLとXMIとコード生成の話なんだけど、XMIってクラスの雛形みたいな ものや継承関係・属性なんかは網羅できているけど、逆にシーケンス図やアクティビティ図 みたいな動的な図に関しては規定が無いようなんだけど。 業界標準みたいなもの無いんですかね、誰か知ってたら教えてください。
474 :
デフォルトの名無しさん :2007/05/20(日) 15:53:20
Windows XP Home EditionでIISを使い サーバーサイドでXMLプログラミングを行いたいのですが 調べたところPrpfessionalにアップデートしなとできないとの 事でしたが、Windows XP Home Editionではできないのでしょうか?
>>474 Home Edition じゃ IIS 使えないんだっけ?
Windows コンポーネントの追加と削除で IIS がなければそうかも。
XPHomeにアプリケーションサーバ入れてだれが使うんだよ? IISのクライアント版は制限つきでXPpro,鯖2kだな。 てかわざわざ、IISなんて使うって事は結局ASPってことでしょ、スレチじゃね? 鯖立てたいだけならlinuxでhttpd走らせるよろし。 もし、その程度ができんなら鯖には手を出すな。
477 :
474 :2007/05/21(月) 16:10:35
ないので、できないみたいですね 入門書ではASPを使う事になっていました
↓のやり方を真似て、データ構造を分割したんだが、
ttp://www.atmarkit.co.jp/fxml/tecs/024xpath/24.html <xsl:for-each select="document(books/book/@href)/book">がFireFoxで動かネェ。
関数の引数を↓のようにシングルクォートで囲めばFireFoxではOKだが、今度はIEがダメだァ・・・
<xsl:for-each select="document('books/book/@href')/book">
そもそもFirefoxって外部のXMLって読み込めないんじゃないか?
480 :
デフォルトの名無しさん :2007/06/05(火) 00:56:30
XSLTにCSSを適用したんだが、font-familyだけ効かないのはなぜ? サイズも色も変更できるのに・・・。
481 :
デフォルトの名無しさん :2007/06/08(金) 15:35:29
TCP/IP 上の通信プロトコルで、階層構造をもつテキストデータをやりとりしたいのだが、 この目的のために XML よりもよい選択肢はあるかな?
S式
484 :
デフォルトの名無しさん :2007/06/10(日) 07:23:33
>>481 その階層構造が属性付き文章の様な陳述文章ならxmlベースの直列化形式で
良いと思うがそうじゃなきゃそれ以外でなんでも良い。
つーか、総称符合化が理解できんならxml使い方間違えるに10000ペソ賭けるぜ
ruby圏でxml批判してるやつらとかさ。
SGMLの時におなじこと聞いたぜ。
総称符合化って何だ? ググっても一件も引っかからないぜ
汎用符号化?
普及すると面白いかも あ、義務なのか ウホッ
XML文書から必要な部分をHTML化したいと思いまして苦戦しております。 XSLTを書いて、ブラウザ上でXMLを表示させることは可能ですが、 これがXMLからのHTML化ということなのでしょうか? ソースを見てたらXML文書が全部見れてしまいます。 ソースも必要なところだけ表示させてみたいのですが・・・。
490 :
デフォルトの名無しさん :2007/06/16(土) 15:00:14
あげ
>>489 XSLTでXMLからXHTMLに変換するんだろうが。
XMLソースを見せたくないなら サーバで(X)HTML化するスクリプトでも動かせ
サーバに変換後のHTMLだけUPすれば万事解決。
むしろ
>>493 の方が望ましい。
現在XSLTのクライアントサイド駆動での動かし方としては
RSSのXHTML表示ぐらいなもんだ。
495 :
489 :2007/06/17(日) 22:03:57
>>491-494 ご回答ありがとうございました。
ローカルでXSLTファイルにXML文書を
D&DすればHTML出力(生成)できるものなのでしょうか?
(#^ω^)ピキピキ
>>495 なんかもう質問がしょーもなさすぎるので細かいところは勝手にしらべろ。
結論だけ教えてやろう。 できる。
498 :
489 :2007/06/19(火) 11:28:26
>>497 出来ることが分かっただけでもうれしいです。
ありがとうございました。
>>497 たしかにできるっちゃ出来るけどw
スタイルシートとソース文章をトランスフォーマに渡すスクリプト書かなきゃ。
>>498 まあ、がんばってここに来ないようにしろ。
スクリプト書くの面倒ならApache Antのstyleタスクで終わらせてもOK
msxsl
MSのxml周りの実装・・・
503 :
デフォルトの名無しさん :2007/06/20(水) 10:12:03
高速な XML DOM パーサには何がある?Xerces でいいと思う?
使ってる言語は何よ?
日本語
506 :
デフォルトの名無しさん :2007/06/20(水) 12:59:44
C++ です。
C++ならどれ使っても一緒だと思うぞw 実装にexpat使ってるライブラリが早いとかその程度の違いでしかないと思う。
そうですか。ありがとう。
509 :
デフォルトの名無しさん :2007/06/20(水) 16:21:07
Xerces-C++ を使うと、MSXML と名前が衝突するね。DOMDocument とか。 わざわざ xerces:: を付けるのも面倒だし、using namespace xerces しても解決しないし、 何かいい方法はありませんですか?
それくらい付ければいいじゃん。 javaで限定名がぶつかる時、完全修飾名で書くとC++の比じゃないぞ。 それにxml関係ない。
まあそのための名前空間だし ところで、MSXMLも#importで読み込めば名前空間MSXML2に入ったと思うが
512 :
デフォルトの名無しさん :2007/06/21(木) 00:00:34
javascriptで作成したxmlファイルに対してencodingを指定したいんだけど どうやってやるの? Javaでのやり方が分かるんだけど・・・
javascriptは入出力の制御は出来ん。 cgiに渡してそっちでcharset見てエンコードするしかない。
method=“xml”を”html”にして、<books>および<book>のテンプレートを次の出力が得られるように変更せよmatch="/", match="books", match="book",
<HTML><HEAD></HEAD><BODY>
<UL>
<LI>本一冊を選びました</LI>
<LI>本一冊を選びました</LI>
<LI>本一冊を選びました</LI>
</UL>
</BODY></HTML>
上記に出力するには下記を用いて修正するみたいです
<?xml version="1.0" encoding="shift_JIS" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="
http://www.w3.org/1999/XSL/Transform ">
<xsl:output method="xml" encoding="shift_JIS"/>
<!-- 文書 -->
<xsl:template match="/">
<root>
<xsl:apply-templates select="book"/>
</root>
</xsl:template>
<!-- 書物リスト -->
<xsl:template match="book">
<book>
書物リストを処理しました。
<xsl:apply-templates select="book"/>
</book>
</xsl:template>
<!-- 書物 -->
<xsl:template match="book">
<book>書物を一冊処理しました。</book>
</xsl:template>
</xsl:stylesheet>
どう修正すれば良いのでしょうか。
そういやXMLの宿題スレがないよね。 かなり専門的な世界だから別れてても良いけど需要ないだろうね。
宿題一つ見ても「普通にスクリプト書いた方が早くないか?」感が漂う。
まあしかしこの程度のことを聞かなきゃできないようじゃ 一から勉強しなおした方がいいような
windows環境にはろくなスクリプトエンジンがなくてだね・・・。 WSH?何を言ってるんだいチミは?
∧_∧ ┌──────────── ◯( ´∀` )◯ < 僕は、PowerShellちゃん! \ / └──────────── _/ __ \_ (_/ \_) lll
PowerShell、RCとれたのか。やっぱWindows PowerToys シリーズ? つか、MSは実装が信用できないw 特にMSXMLとかTrident・・・.netつかってる連中はよくあんな糞実装使ってられるよ。 tasman結構まともなのに。
.NETは前者二つに比べて比較的マシだがな
522 :
512 :2007/06/21(木) 23:00:19
>513 まじですか? 困ったなー。
>>521 やたら変な独自拡張多くない?
>>521 つーか常識、クライアントサイドが勝手にディスク読み書きしたら危ないだろ?
独自拡張が多いと糞実装なのか……?
読み込んだXMLからルートの要素名のみを取得したい場合って Domでルート要素.getElementNameより Saxで1回目のstartElementで取得するほうがいいよね?
いいか悪いかはしらんが、それのほうが処理量少ないことは明らか
始めまして、初心者です。 どうしても解らないので教えてもらいたいです。 XMLファイル内容を、XSLを使って表示することは出来ました。 それなのにXML内にある改行文字のところが改行されていません。 どうしたら改行を表示できるのでしょうか?
>>525 何の効果を期待してるか知らんがメモリの消費量が少ない、か演算量が少ない、
ってんならストーリーム(pull)型も良い。
DOMは結果を保持する必要がある場合、
pushは最終的には文書のすべてについて処理する必要がある場合。
pullはアプリケーション側で処理タイミングを制御したい場合。
xpathはランダムアクセスしたい場合。
JDOMはpullとxpathの性質を併せ持つと言った感じ。
こんな感じで使い分ければいいんじゃないかい?
すべての要求を同時に満たすのは難しいだろうね。
#俺は自前のAPI持ってるから可能だけど。
>>527 空白の扱いはアプリケーション次第。確実にやりたいならまず変換先に空白を保持して
任意の空白の扱いを定義可能なスタイルシートを埋め込む。
意味が分からんなら仕様書読み直すかHTMLで吐け。
529 :
527 :2007/06/23(土) 17:57:32
>>528 すみません、良くわからないのでソースをあげます。
したいことは<br/>の場所で改行をすることです。
お願いします。
diary2000.xml
======================================================
<全体>
<年月>2007年6月24日</年月>
<日記>今日は図書館に行った。<br/>本を2冊借りた</日記>
</全体>
======================================================
template.xsl
======================================================
<xsl:template match="全体">
<table border="3">
<tr>
<td><xsl:value-of select="年月" /></td>
<td><xsl:value-of select="日記" /></td>
</tr>
</table>
</xsl:template>
======================================================
530 :
527 :2007/06/23(土) 19:31:07
なんどもすみません。
ttp://oshiete1.goo.ne.jp/qa2625750.htmlを参考に 。
diary2000.xml
<日記>今日は図書館に行った。<BR/>本を2冊借りた</日記>
template.xsl
<td><xsl:value-of select="日記" disable-output-escaping="yes"/></td>
としましたが・・・、<br/>と表示されます・・・。
なにが違うのでしょう・・・。
531 :
527 :2007/06/23(土) 19:42:18
あ・・・、書き間違ってる・・・。 530はなしです。 diary2000.xml <日記>今日は図書館に行った。<br />本を2冊借りた</日記> template.xsl <td><xsl:value-of select="日記" disable-output-escaping="yes"/></td> が正しいです。
532 :
527 :2007/06/23(土) 19:44:54
あぁ・・・、そゆことか・・・ &lt;BR/&gt;は勝手に、<br/>に変換されるのですね・・・。 <日記>今日は図書館に行った&lt;BR/&gt;本を2冊借りた</日記> が正しいです。
>>528 じゃないけど、<xsl:value-of select="日記" /> で拾えるのは
``今日は図書館に行った。'' と ``本を2冊借りた'' を連結した文字列。
もっといい別解があるだろうけどとりあえず:
<xsl:stylesheet
xmlns:xsl="
http://www.w3.org/1999/XSL/Transform "
version="1.0"
>
<xsl:output method="html" encoding="UTF-8" />
<xsl:template match="全体">
<table border="3">
<tr><xsl:apply-templates /></tr>
</table>
</xsl:template>
<xsl:template match="年月">
<td><xsl:apply-templates /></td>
</xsl:template>
<xsl:template match="日記">
<td><xsl:apply-templates /></td>
</xsl:template>
<xsl:template match="br">
<br />
</xsl:template>
</xsl:stylesheet>
遠回りでも一度ちゃんとXSLT勉強したほうがいいかもしれない。
ハマリどころが結構多いから、下手すると時間めちゃくちゃ食うよ。
Cでなんとなくlibxmlを使ってプログラムを書いているのですが、 2つのXMLを「接ぎ木」したい場合にどうしたらいいのかよくわかりません。 B-B' と A-C-D みたいな構造のXMLがあったときに前者を後者に接ぎ木して |-B'' |-B A-C-D |-B-B' |-B'' みたいな構造のXMLを生成したいのです。あ、単に接ぎ木の操作をどうしたいいか ということなんですが。
535 :
527 :2007/06/24(日) 03:04:42
>>533 さん、お返事ありがとうございます。
あげたソースは短く解りやすくした例のものでした。
本物は表の連結などをしていて、形も固定のものになっています。
なのであげたものから、外れないようにしたいのです。
そうするのは難しいのでしょうか?
それと参考になるサイトがあれば教えてもらいたいです。
よろしく、おねがいします。
536 :
デフォルトの名無しさん :2007/06/27(水) 22:55:57
XML Webサービスで何が凄いのか良く分かりません。
マジレスして良いのか? 変なふうに流行ってるだけだからそんなageるほどの事でもないな。 XMLは直列化形式として採用されてるだけで、直接技術的に関係はない。 そもそも、その技術がすでに枯れきっててなんの目新しいものもない。 Ajaxに限った話じゃない。
ただ、決まったライブラリを使えば楽にネットワーク越しにやりとりできるというだけで、 ネットワーク越しに色々処理できるのが時代の進歩を感じさせる、すごいねえ、 みたいな感じ。
そうなんだけど、「じゃあ、Webサーバ無しでやってくれ」とか 無茶言う上司がいるのはお約束。
無理に決まってんだろwプギャー といって勇者として語り次がれてみるとか。
echoサーバでやるよ
止まってるついでにネタ投下するけどXMLエディタは何使ってる? シェアは格が違うのでシェア以外で・・・。
検索しても見つからない・・ここでいいのか分からないが、質問させておくれ <emp> <name></name> <salary></salary> <age></age> <emp> ※<age>要素はあったりなかったりする ↑こんな感じのがつらなってるテーブルから、 <age>要素のない<emp>だけを取り出したいんだが、どう書けばいいのか分からないorz //employees[!age] //employees[age=null] //employees/!age ・・・orz
ごめん。出直してくる //employees[not(age)]
XPathインジェクションってありますか? あるとすれば、サニタイズはどういうロジックでやればよいでしょうか?
それはXPathエンジンかアプリの実装の問題だろ。 ていうかググればいくらでも出てくるわけだが? インジェクション対策なんてどれも同じ、外から入力される場合は不適切な文字は受け付けないorエスケープする。
>>547 不適切な文字は受け付けないと書くよりも、
適切な文字だけを受け付けると書くようにしたほうがいいと思う。
そのほうがホワイトリスト方式を連想しやすいはず。
普通は不適切な文字のほうが圧倒的に少ないだろ。
だからどうした?
併用が望ましい。
下記のXMLファイルから、XPATHを使用して「inst_gif1」を取得したくて下記を実行したのですが、 「inst_gif1」と「inst_gif2」の両方が取れてしまいます。 正しいXPATHを教えていただけないでしょうか? XPATH = /sqlMap[select = 'SELECT']/select/@id <?xml version="1.0" encoding="Shift_JIS" ?> <sqlMap namespace="xxx"> <select id="inst_gif1" >SELECT</select> <select id="inst_gif2" >UPDATE</select> </sqlMap>
/sqlMap/select[text() = 'SELECT']/@id
>>554 うおおおおお。迅速な回答ありがとうございます。
sqlMap要素をフィルタリングしてもどうしようもない。
DBが文字のバイト単位で決められているから、データ交換でXMLを使用する場合、文字データをバイト数単位で制限したいんだけど、xml schemaでそういう制約はできないですよね?
レイヤが違うと思う、と仕様を読まずに言ってみる
文字数で制約か、hexBinary,base64Binaryに変換しておいてバイト数で制約。
unicodeをそのままバイト単位で制限するとコードポインタの途中でブッタ切るw
っ UTF-32
文字数単位でしていしないでバイト単位で指定するDBなんて、今時存在するのか?
えーっと、どんな資料を見てそう言っているの?
557だけど。 最近は文字数指定がでふぉなの? postgresql,UTF8でつかったときは文字数?だったけど。 ちなみに今はOracleです。
DB の文字コードが Unicode 系エンコーディングなら大抵文字数。
それ以外なら、バイト数が多いと思う。
>>564 Oracle を Unicode で使ったこと無いんだが、
多分、文字コードの設定次第だろ。
566 :
デフォルトの名無しさん :2007/08/02(木) 18:00:09
VB6でn階層のXML書込みをしたいのですけど 参考になるコードなど りませんでしょうか?お願いいたします。再帰する関数になると思います。 (MSXML使用)
>>566 再帰関数書いたことありますか?
もう少し詳しく自分の状況は書けますか?
少なくとも↓のXMLをMSXMLで書き出すぐらいのコーディングはできますか?
<root attribute="value"><child-elem/></root>
MSXMLてDOMの書き出しサポートしてないの?
最低限、DOMを文字列型に直すのは用意されてたと思うよ。
570 :
デフォルトの名無しさん :2007/08/06(月) 11:01:45
>>566 読込は再帰処理でしていますが、サンプルコードを改造したものです
書込みはスキーマが決まっているXMLならできますが、さすがに
状況によって階層がまちまちな書き出し処理は再帰関数を使って標準化しないと
無理そうですので。
再帰すらろくにできないならプッシュ型パーサに XMLストリーム渡してハンドリングしながら順次書き出すのが一番楽だね。 書き出しならDOMかE4X、読み出しならプル型かXPathってところか。 XPathは構文特殊だがハイブリッド型の実装って少ないからなぁ。 特殊な事するならパーサ部分から自前でした方が早いね。
572 :
デフォルトの名無しさん :2007/08/06(月) 17:16:00
>>571 回答ありがとうございます。ただその回答内容を理解できる知識があれば
こんな質問はしていないと思います。学生じゃないのでXMLについて勉強して
なんてちんたらやってられないのが現実です。勉強してもだれもお金
くれないですからね。読込はネットを見てたら誰かが書いてたのでそれを
参考にして作りました。書込み処理もあったような気がしたんですが、
チェックしとけばよかったですね、後悔先に立たず。とりあえず先人が
やってることを真似、使いまわしすればできるのであって、
極端に言うとプログラム作るのに、コンパイラから作成するのは時間が
もったいないですから。VBが2万円ならそっちの方が効率がよい。
XML読込処理も社長が普通にTEXT読込してやろうとしてたので
(MSXMLを知らなかったみたい)
そりゃあんさん無理でっせということでぼくが作りましたが。
仕事でPGする奴ってのはこういう考え方が普通なんだな。オレの周りもそうだし。 理解しなきゃいけないんだろうな…。
仕事だったらこんな愚痴だけの長文書いてる暇はないだろ。
>>573 ふつうじゃないよ。みんな考え方違うよ。
そもそも
>>572 の会社自体が相当な問題だと思う。
下請け辺りの土方なんじゃない? XMLの読み書きだけなら巨大になりがちなXML APIリファレンス理解する 間にXMLの概念勉強する暇があると思うんだが。 XML API理解してもXML理解してないと使えないよ? 多分DOMで改行しようしてハマルのがオチだと思う。 XML理解する気もAPIも使えんなら初めから他の形式使った方が時間の無駄がないよ。 多分元々、学術的・技術的な問題を解決するための SGML/XMLなのにただのデータフォーマットだと思って使おうとする奴がこういう羽目になるんだろうな。
XML は、ただのデータフォーマットだろ
SGML/XMLはdocuments
580 :
sage :2007/08/07(火) 14:02:23
一応できたみたい 参考にならなかったけど ありがとう
そもそも再帰も出来ん奴が参考になるスレじゃないだろ。
いや、だから、できたいうとるでしょ。プログラミングって要は知識よりも CREATIVEな思考能力の方が重要ってことかな。まあIT用語を多発されて さぱりわかんねーってのもNGかもしんねーけどね。
いんや。 職業プログラマにクリエイティビティはそんなにいらないと思うよ。 知識の方がよっぽど大事。知識のないクリエイティビティなんて害悪そのもの。 人それを『思いつき』という。
つうかxmlまわりの専門用語をIT用語だと思ってる奴はマスコミに汚染されすぎ。 そもそも出てきてんのはAPIの固有名詞と一般的なxml parse 方法だろ。 2chに書き込む暇があったら仕様書と本読め。
俺の会社は馬鹿が多いが、流石にこれほどのはいないな。
いや、これには根拠がある。うちの会社に関○大学出身の偏差値ある教科では 100を超えたという人材が来た。すげーやつが来たと喜んだが・・・・。 いざ仕事をやらせるとまず最初の一言目が「ちゃんとした仕様書がないのでできません」 「あ、そうf(^^;じゃあきちんとかくからちょとまってね」で渡す。 「あのー、ここの部分の表題はこうじゃなくてこういう感じでかいてもらえませんか」 ばかかおめ〜そんなんどうでもええじゃねぇかさっさと作業しやがれorz そんな調子だからついに社長も怒らせてくびになった。 知識は豊富でも手取り足取りの作業指示を与えなければ仕事ができない、 つまり自分で「これから何をすればいいのか」「どうすればいいのか」 を考えない、というか考えることができない。常に受身的で能動的でない。 これで知識の方が大事と言えるか? わしの知ってる強力なプログラマーって高卒が多い。勉強ができる、つまり 教えられたことはできるが、それ以外は???な人間は結局仕事なんて できない。必要なのは応用力と適応力、想像力だ。
>>586 一人だけをサンプルにして言われてもなあ。
あなたの会社にまともな人材が来るとでも思ってる?
というよりスレ違い。あなたを見てると品性も大切だと気づかされるよ。
xqueryが使えるフリーソフトって知ってますか? XpathはXPathToolというのがvectorにあって、結構使い勝手がよかったです。
>>587 品性「も」大切ということで、応用力と適応力、想像力が大事
という点は納得ですか?
白馬に乗った王子様を待っててもしょうがないよ。
>xqueryが使えるフリーソフト ってなに?XQueryはソフトウェアアプリケーションじゃないだろ。 何したいの?
ホワイトナイト
>>591 すいません。
xml用のアプリケーション(xml用でなくてもいいのですが)で、要素の検索とかしたいときに
xpath、xqueryを使いたいなと・・・
Xindiceはxpathしか対応していないらしいですね・・・
>xml用のアプリケーション というかXQueryがxmlアプリケーションなんだが。 >要素の検索とかしたいときにxpath、xqueryを使いたい ここはそういうソフトを作りたい人がXML関連技術やAPIの話をするところだから、 出来合いの品の話(エンドユーザー向けのソフト話)ならスレチじゃない? 俺だったらそれくらい自分で作れって言うが。
この板としては「ないなら作れ」でいいだろ。
XQuery2.0を全部実装って相当大変じゃね?
597 :
デフォルトの名無しさん :2007/08/11(土) 18:00:55
>>586 みたいな、サンプル拾って何となく改造したらできたよ、わーい、ってタイプは、
トラブルシュートが一切出来なくて終盤苦しむんだよなー。
周りを巻き込んで。
XSLTなのですが、属性名を動的に記述する方法ってないのでしょうか。 例えば以下のような処理を期待しています。(当然エラーになりますが) <xsl:for-each select="attr"> <xsl:attribute name="@name"> <xsl:value-of select="@value"/> </xsl:attribute> </xsl:for-each>
{@name} じゃダメだっけ。
>>599 ありがとう、できました!
参考書に載ってないから諦めてたんですが、
実は属性値 XPath でぐぐると出てきますね・・・
ネットよりショボイ参考書買っちゃったorz
技評の完全解説がオヌヌメ
>>596 相当大変だからすでに実装されたライブラリを探す。
XQueryの実装ライブラリ探してますって話ならここだが、
XQueryが使えるソフト探してますは板すら違うかも。
XQueryってW3CのRI出てなかったけ?
XML Schemaは「それら以外の属性」のような定義って出来ますか? 例えば type や uuid などの属性名にはルールを設けるけど、 それ以外の属性は好きに書いていいよ。っという書き方です。
605 :
604 :2007/08/13(月) 02:10:12
自己解決。xs:anyAttributeってのがありました。
XMLの規格ってなんで規格ごとに記法に統一性がないんだろう。 schemaのrestriction用に変数や関数が使いたい。 xslやxpathの資産が何も引き継げないとは。。。
>>606 > schemaのrestriction用に変数や関数が使いたい
ただでさえ特盛りのXML Schemaにそれつけたら
完璧なバリデータを書くのが不可能に近くなるぞ。
統一性がないんじゃなくてSGMLで統一して何でも出来るようにして
大失敗したから目的ごとに別の仕様を作るようにしただけ。
以下、
>>607 。WXSなんてW3CのRIですら仕様のフルサポート出来てないけどアレが一番再現度高いんだから。
あれがほしいこれがほしい言ってたらSGMLの二の舞。
むしろWXSはもっとシンプルにすべきだった。
SGMLは複雑、XMLはシンプルなんてよく言われるけど いまじゃXMLのほうがはるかに複雑だよなぁ
XMLでキモく感じるのは属性と要素を区別してしまったことだ。 それでもまだXML自体はマシじゃなかろうか。 関連技術のカオスっぷりには閉口するが。
schemaって属性版のchoiceってないの?
それは単純型の値じゃね?
javaで↓を取ると <a> 1111 2222 3333 </a> 値が 1111 2222 3333 になります。 ↓で取れないですかね 1111 2222 3333
javaで↓を取ると <a> 1111 2222 3333 </a> 値が 1111 2222 3333 になります。 ↓で取れないですかね 1111 2222 3333
>>611 属性と要素の交換を可能にしたSGMLは見事に実装が困難になった訳だが・・・。
>>616 > 1111
> 2222
> 3333
> になります。
ならないだろ。
\n
1111\n
2222\n
3333\n
になるはず。
APIはなんですか? そんなにマイナーなものですか? JAXPもJDOM有名なのがいろいろあるのに APIはなんですか? 結局実装次第でry・・・・ 空白の扱いをxml側で指定がなければ事実上、空白をどう扱うかは実装依存だろ。
>>617 >>611 は XML 仕様策定時に「属性などイラン。すべて要素にしる!」話が
結局そこまで踏み切れなかったことを言ってると思われ。
xsltだけどxsl:variableにDOMを詰める方法ってあります? もしくは文字列をDOMに変換する方法でもいいんですが。
>>620 フォローサンクス。そゆことっす。なんで残したんだろ。
HTMLにあったからじゃない?
データ記述言語として考えれば属性なぞ要らんけど テキストマークアップ言語として考えれば属性がないと不便極まりない
625 :
デフォルトの名無しさん :2007/08/20(月) 23:13:27
だからSGML/XMLはデータ記述言語じゃないとry アトリビュート付き文書を扱うためのフォーマットだ。 アップルはそこら辺分かってない。
マークアップにはXMLよりSGMLの方がはるかに便利 せめてXMLでもNETが使えたらなぁ
現実問題、データ記述に使われてしまってるのがやるせない。 テストデータを YAML で書いてたら なんだコレ、XML にしろと言われて一悶着。 権力に負けた。
目先のベンチマークより、「より標準である」ことを選ぶのは普通でしょ
分野が全くの別もんなんだから適材適所だろ。 そこを理解してない奴が居るとxmlかyamlで揉める。
そこでJSONですよ
つ RSD RSDはデータ記述フォーマットだが文章をヒアドキュメントとして埋め込めるからデータと文章を同列に扱いたいとき良いよ。 文書主体ならやっぱSGMLかXMLしかフォーマットがないけど。独自以外。
>>619 commonsのconfigurationとjxpathです。
両方とも、最初の文字までがクリアされてしまいます。
十分マイナーじゃねーかw 普通、API側にも空白制御を指定できるメソッドかなんかあるはずだけど、 高レベルAPIだと無いかな。リファレンス嫁としか言いようがない。
>>634 それ固有の実装の話な。
ここでそんな話しても意味ないのは分かるかな?
>>635 DOM3以前は実装依存だぞ。という事を示したのだが、それくらい読み取れないのか? 頭ワルッ
テキストデータをXMLの中に入れる場合、可読性を考えてCDATAにする場合が多いと思いますが、 ]]> が入るかもしれない場合、可読性は捨てて全部エスケープするしかないですか?
所詮世間一般ではxmlはデータコンテナのフォーマットか・・・。 PIのdataに突っ込んでアプリケーション側で処理させれば良いじゃない。
]]> を ]]>]]><![CDATA[ にするとか
エスケープしたら結局戻す処理はアプリケーション依存だろ。 だからPIで良いよ。
] と ]> にわけてCDATA2つにするのが普通じゃね?
騙された!PIって何を指してるの? 639じゃない俺が<?ここ?>になんでも含められるの??!と驚き 試してしまったので敗北感があります
何一人でファビョってんだ? どうせエンコーディングが一致せずに <?ここ?> ~~~~ Fatal Err: not well-formed. Line n, Col 3 ってオチだろ。文字化けするから↓か。 <??????> _ _^
エスケープ処理なんて O/X マッピングライブラリに任せてしまうよろし。 人間がやろうとするにはあまりに単純処理だし、 単純処理の割に手間を食うので馬鹿馬鹿しい。
たかだか文字参照ごときにマッピングライブラリは大げさだろ。 それに、質問はエスケープしなきゃいけない文字がテキスト中に大量に入る可能性があって CDATAセクションを使いたいけど]]>が入る可能性もあるから代替策が必要って話で その方法がいくつもあるけど質問者が出てこないから話が代替策ないですか?って所で止まってるんだろう。 まだ、エスケープされた文字をどうするかの問題じゃない。
648 :
デフォルトの名無しさん :2007/10/31(水) 16:57:30
気がついたらJ2SE 6.0でJAXB 2.0がサポートされていたわけですが、 バインディングツールとしてJiBXとどっちがいい感じか、使ってる方使用感などを教えていただけませんか。
JDOMいいよJDOM
650 :
デフォルトの名無しさん :2007/10/31(水) 21:43:57
>>649 パーサーではStAXもサポートされたみたいですけど、どんな感じでしょうか。
J2SE 6.0
StAX最高だよ。
まだドラフトなのに実装とかするところあるのか?
W3Cは変なもの作りすぎです。
WDで実装が作られるって別に珍しくない。 けど、これの実装は知らん。
658 :
デフォルトの名無しさん :2007/11/07(水) 13:01:25
XMLスキーマで、要素集合を定義するときにxs:sequenceとxs:allがあるけど、 いろいろと解説を読んだ感じでは、特別な理由がない限りは順序を指定する xs:sequenceを使え、ということだと理解したんだけど。 ということは、そもそもXML自体が要素の順番を重要視する規格だということ になると思うんだけど、そういう理解であってる?
>>658 そんなことはないと思う。
単に要素の出現順序が決まっていれば処理が楽だからじゃないか?
660 :
658 :2007/11/07(水) 18:08:16
あと、そもそもDTDだと順番自由な要素集合を定義する方法がないことを初めて知った。 もちろん、処理が楽だからというのはそうなんだろうけど、世のパーサー実装がそれを 前提に書かれてるとしたら、俺のXML理解がかなり変わってくるので。
xmlスキーマからどんなxmlがくるか解析するツールって何かありませんか?
どんなxmlがくるか解析したものがスキーマじゃね? データを解析するの?
XMLスキーマからサンプルとしてインスタンスを生成するってこと? XML Spy, oXygenなんかにはそういう機能があったはず フリーソフトウェアも探せばあるかもしれないね
Sun XML Instance Generatorというのがある。
665 :
デフォルトの名無しさん :2007/11/12(月) 03:56:16
例えば URL なんかをこんな感じで表したい場合:
<url scheme="http">
<host>www.foo.com</host>
<port>80</port>
<path>/hoge/unko.txt</path>
</http>
<url scheme="mailto">
<mail>
[email protected] </mail>
</url>
属性の値によって子要素の定義が変わるような定義を Schema で記述できるんでしょうか?
どう表せばよいか悩んでいます。
>>665 ちょっと余計なものが付くがこれで良ければ。
<xsd:element name="url" type="urlType" />
<xsd:complexType name="urlType" abstract="true" />
<xsd:complexType name="httpType">
<xsd:complexContent>
<xsd:extension base="urlType">
<xsd:sequence>
<xsd:element ref="host" />
<xsd:element ref="port" />
<xsd:element ref="path" />
</xsd:sequence>
<xsd:attribute name="scheme" type="schemeType" use="required" fixed="http" />
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexTpe name="mailtoType">(略)</xsd:complexType>
<url scheme="http" xsi:type="httpType">
<host>www.foo.com</host>
<port>80</port>
<path>/hoge/unko.txt</path>
</url>
<url scheme="mailto" xsi:type="mailtoType">(略)</url>
xsi:typeが省略されるとurlTypeはabstractなのでエラーになる。
667 :
デフォルトの名無しさん :2007/11/13(火) 20:42:36
>>666 なるほど、ベースを abstract で宣言しておいて、拡張のほうで "http", "mailto" を
fixed 指定にしておけば属性値ごとに中の定義が変更できるような使い方になりますね。
帰って試してみます。schemaType は string じゃダメなんでしょうか?
>>667 schemeTypeはenumerationにしてたんだが行数の都合で省略したのを忘れてた。
もちろんstringでいいと思う。
669 :
デフォルトの名無しさん :2007/11/14(水) 04:02:31
高橋麻奈の「やさしいXML 第2版」という本で、ちょうどXSLの操作を勉強しています。 練習問題での自分の回答と巻末の模範解答が違うことがあるのですが、同じことができる スタイルシートを作れていれば「正解」としていいのでしょうか? たとえば、 <xsl:template match="car"> <car> <xsl:attribute name="file"> <xsl:value-of select="img/@file"/> </xsl:attribute> <xsl:apply-templates select="name"/> <xsl:apply-templates select="price"/> </car> </xsl:template> とするべき(?)ところで、<car>のかわりに、<xsl:copy>と書いてしまったのですが、 XMLの理解の上では問題ありませんよね? 他にも <xsl: copy-of select="."/>と書く方法と、 <要素> <xsl:value-of select="."/> </要素> と丁寧に書く方法がありますが、XMLの勉強では好きな方選べばよいのかな・・・
>>669 与えられた入力と求める出力(いずれもXMLか)を貼らないと
XSLT知ってる人でも答えにくいと思うぞ。
まずはやさしいシリーズを捨てる所からだな。 悲しいけどこれってマジレスなのよね。
672 :
669 :2007/11/15(木) 00:03:12
>>671 やさしいXML、Java活用編ともに終盤にさしかかっているので・・・
結局3冊買っちゃいました
<foo:bar>ほげほげほげ ふーばー おっぱっぴー</foo:bar> みたいなのを、 <xhtml:div>ほげほげほげ<br/> ふーばー<br/> おっぱっぴー<xhtml:div> みたいにしたいんだけど、どう書けばいいんでしょうか。
あ、XSLTの話です。
substring-before, substring-afterでも駆使して再帰的に変換すればいいんじゃなかろうか。 とはいえ、データ構造から見直したほうがいいとおもうよ
>>673 やってやれないことはないがあまりオススメしない。
HTMLにするならpreじゃいけないのか?
<xsl:param name="line.delimiter" xml:space="preserve">
</xsl:param>
<xsl:template match="foo:bar">
<xhtml:div>
<xsl:call-template name="substitute">
<xsl:with-param name="str" select="text()" />
</xsl:call-template>
</xhtml:div>
</xsl:template>
<xsl:template name="substitute">
<xsl:param name="str" />
<xsl:choose>
<xsl:when test="contains($str, $line.delimiter)">
<xsl:value-of select="substring-before($str, $line.delimiter)" />
<xsl:text disable-output-escaping="yes"><br /></xsl:text>
<xsl:value-of select="$line.delimiter" />
<xsl:call-template name="substitute">
<xsl:with-param name="str" select="substring-after($str, $line.delimiter)" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$str" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
677 :
デフォルトの名無しさん :2007/12/04(火) 00:05:29
XSLTで <a> <elem-a/><elam-b/> </a> <b> <elem-1/><elem-2/> </b> を <c> <elem-a/><elam-b/> <elem-1/><elem-2/> </c> に書き換えたいのですが、 <template match="a|b"> <c> <apply-template select="*"/> </c> </template> とやったら(記憶で書いてるので細かい点、ちょっと嘘かも) <c> <elem-a/><elam-b/> </c> <c> <elem-1/><elam-2/> </c> となってしまいました。どのように書けばよいのでしょう?
んー、OPMLをXHTMLに変換するXSLT書いてるんだけど、 outlineがexpansionStateに含まれているかどうかってどうすれば知ることができるんだろうか
>>677 <a>と<b>の親にテンプレート適用して、
<a>と<b>の子とってくればいいんじゃなかろうか
>>679 なるほどそう書くのですか。それで出来そうですね。
>>678 outlineの親要素のローカル名がexpansionStateかどうかを調べればよいのでは。
もしexpansionState要素の子要素であるoutlineに何かしたいなら
マッチングパターンを変えてテンプレートを作成すればいい。
682 :
デフォルトの名無しさん :2007/12/07(金) 19:54:39
libxml使ってるんだけど、xmlXPathContextPtrってxmlDocPtrがないと生成できないの? xmlNodePtrからいちいちxmlDocPtr生成するの面倒い…
XMLスキーマでユーザー定義の型をつくるとき、同じ型のリストはxsd:list を使えばできますが、例えば int のあと float 2つみたいな型を定義するにはどうすればいいでしょう? <hoge>1 2.0 3.0</hoge> のような。 xsd:pattern で正規表現を指定する他に方法ありますか?
>>683 んーそもそも、XMLというかデータ構造的に、そうした型の設計は
好ましくない気がするんだけど、どうしてもそれじゃなきゃだめなのけ?
XML をいわば Unicode データのコンテナ的に使っていますが、 XML 1.0 で定義されている文字を外れるコードが含まれると(例えば 0x1f 以下の 制御文字とか)エラーになってしまうようで、困っています。 この手の問題ってどうしたらいいと思いますか? とりあえず自前の文字参照みたいのを 定義して、かませようかと思っていますが...
じゃダメなのか。
687 :
orz :2007/12/21(金) 20:41:59
 じゃダメなのか。
>>686 年の瀬も近くてまったりしようと思ってたのに、いまさら自前のコードを起こして
テストするのが面倒でw XML の範疇でなんとかならないかと思って。
>>687 それは「文字」参照なんで、XML の範疇で文字として扱われていないコードに対しては
駄目みたいです、というのが自分の理解。ちなみに CDATA も同様。
689 :
orz :2007/12/21(金) 21:00:17
じゃ Base64 でも何でも使えば良いじゃん。
ちなみに XML 1.1 だと文字コードの範囲が広がってるんですけど、 巷の XML ライブラリってまだ 1.1 をほとんどサポートしてないですよね?
>>689 はい、それもアリなんですが、可読性がなくなるのがちょっと不便というか...
その XML を生でみたいときもあるので。
<char codepoint="0x1f"/> とか適当にでっちあげればいいじゃん。
quoted-printable か URL フォームエンコーディングとかでも。 ちなみに 「ダメです」 ってのは何かアプリ的な不具合なのか、それとも潔癖原理主義的なものなのか。
>>692 すみません、それってどうやって使うんですか?
例えば
<text>制御文字が入ったテキスト 0x1f</text> (0x1f は実際にはバイトデータ(で、不正))
を
<text>制御文字が入ったテキスト <char codepoint="0x1f"/></text>
みたいな?
で、このテキストを取り出すときに何らかの処理で元のバイトデータに戻す?
ちなみに今は XPath でこの要素を取り出したりしているんですが... 変更は簡単かな?
>>693 >quoted-printable か URL フォームエンコーディングとかでも。
日本語が結構入るんで、ちょっと厳しいですかね。
>ちなみに 「ダメです」 ってのは
えっとその「ダメです」がどれを指しているかわかりませんが、要は XML のエラーを
XML を処理しているレイヤーの回りで、なるべく楽に、インパクトを少なく回避するか、
ということです。
PI使えばいんじゃね? でアプリ側で自由に処理すればいい。
まあ、文章をデータコンテナなんかに使おうと思うからそんな矛盾が起きるわけで。 そもそも発想が間違ってる。
なんでもかんでも XML は良い事だ (2001年日経)
XML Schema的にはhexBinaryかbase64Binary
xmlなアプリ実装すると考えればPIのdataにBase64が鉄板か?
もう MD5 で良いじゃん。
きっと、逆変換するアルゴリズムを開発した超絶ウルトラスーパーハッカーなんだよ。
俺はエロ画像のSHA1で抜ける!
なんだこの流れ?
俺もそういう文字扱いたかったから、xml1.1にしたよ。
xml1.1まともに扱えるパーサ教えてください
708 :
706 :2007/12/24(月) 14:07:21
709 :
デフォルトの名無しさん :2007/12/30(日) 18:02:23
<xsl:for-each> でノード集合を逆順に列挙するのってどう書いたら良いですか?
xpath2.0ならreverseが使える。1.0はよう知らん
>>709 <xsl:sort>でソートするんじゃダメ?
712 :
デフォルトの名無しさん :2007/12/30(日) 19:48:56
<xsl:for-each> の直下に <xsl:sort order="descending" /> 置いたらできますた。
XMLでbase64を使う意味が分からない。 Unicode使えるんだから、もっと膨張を抑えたエンコードも出来るはず。
別に必ずしもbase64でエンコードする必要はない。
ish?
イクラちゃんishで
717 :
デフォルトの名無しさん :2008/01/01(火) 20:37:49
XMLDBでxindiche以外でフリーでつかえるものってある?
718 :
デフォルトの名無しさん :2008/01/03(木) 16:53:52
libexpatw の最後の w って何ですかw
wchar_tのw
>>717 eXistかDB2のExpress-Cでも使っとけ
XPath, XQuery の仕様読んでるが何か SQL の再発明めいてきたなこれ。
似せたんじゃなかったけクエリー言語として。
XMLの検証で質問です。 <a> <b>ABC</b> <b>123</b> </a> このようなXMLで、1番目の<b>要素はstring型、2番目の<b>要素は integer型であることを検証したいと思っているのですが、wxsでは 同名の要素を異なる型で定義することができません。 何かうまい方法はないでしょうか?
要素名を変える
string型はinteger型を包含するから無駄な検証だな。
というか1番目の要素はルート要素であるaじゃないの? 色々と間違ってる。
さすがにそうは読めんが。
名前空間を変える。
PIでやってもいいな。
PIって何?
Processing Instruction
>>725 well-formed XML は valid XML を包含するからvalidatorは必要ない?
>>723 そんなスキーマの設計になる納得の行く理由を聞きたいが。
>>732 うん。
non-valid XMLだったら、wel-formed XMLであることを調べる。← これは馬鹿げている。
もっとも、元質問は
> 同名の要素を異なる型で定義することができません。
ではなくて
< 要素の出現順で異なる型を定義したい
という事のようなので、オレの読み違いのようだけど。
>non-valid XMLだったら、wel-formed XMLであることを調べる。 今回は違うが、食わせるxmlが不定の場合、エラーハンドラくらい実装するから、 これはwel-formedかどうか調べる事になるから別に馬鹿げてる訳でもないと思うが。 馬鹿げてるのはnon-wel-formedなxmlでもパース出来るパーサかと。実際にあるが。
if ( i > 0 || i >= 0) ↑これを馬鹿げているといってるんだけど、コンパイラが最適化するから問題ないというならそれでもいい。
>>725 が言っているのは、i の定義が「数値」であるならば「0より大きい数値」を
包含してるから、その比較自体無駄だということだろ?
そういう事か他言語にバインドした後の話ね。そういう使い方はした事ないな。
739 :
723 :2008/01/13(日) 01:12:15
いろいろな意見ありがとうございました。 結局手はないようですね。 背景説明を端折っていましたが、このXML文書は外部で仕様が定められて いるもので、それを定義したスキーマ文書は別に存在します。 ただし汎用的なフォーマットなのでかなり制約は緩いものとなっています。 逆にこれを利用するシステム/装置側はそのすべてのバリエーションを 許容することができないため、その特定用途向けの検証をwxsで行おうと 考えていました。 実際に要求されている制約は「name属性が"aaa"の場合はxxx属性が必須で テキストはxx文字以内」などというものだったりするのですが、さすがに それは無理だろうと考えていたので、要素の出現順を固定して「1番目の 要素はname属性が"aaa"に等しく、〜」という形で検証しようとしていました。 実はその検証用のxsdを作成する際はSunのmsvを確認に使っていて、 そこでは意図したとおりの検証ができていました。ところがこれを利用する プログラムが出来て、そちらに掛けてみたところスキーマ文書が受け付け られず、問題が発覚しました。 ですのでxsdの記述だけで解決できればよかったのですが、別途チェック プログラムを起こしたりする必要がありそうですね。
スキーマの設計が悪い。
すげぇ無駄な事してるな・・・何とかしようと思う723は凄い
>>739 ああ、よくある、上から降りてきた設計のしわ寄せが現場に来るの図ね。
まあそんなことだと思ったよ。
きっとスクリプトで楽することもできないんだろう。
頑張って追加のコードを組んでください。
あら
まぁ文章の完全な正当性なんて DB やホストに問い合わせてみないと保障できない なんてのもよくある話だから、スキーマベースの検証の限界だと思ってプログラムで 確認しなはれ。
それとこれとは別だろ。どうみてもスキーマの設計ミス。 というかバカだろそのスキーマ作った奴。
Processing Instruction の位置づけがよく分からんのですが、例えばどういうときに 自分定義の PI を導入するもんですか?
適当な例が思いつかんが、たとえば、
>>685 の質問をPIで何とかしようと思うと、
<text><?[[Here is an U+00 ->]]><?character U+00?><?[[<-.]]></text>
こんな感じになるかもしれない。
ボケてたよー <text><?[CDATA[Here is an U+00 ->]]><?character U+00?><?[CDATA[<-.]]></text>
ごめん。寝てないんだよー <text><![CDATA[Here is an U+00 ->]]><?character U+00?><![CDATA[<-.]]></text>
まずその XML を特定のプログラムで加工処理するという前提があって、そのプログラム用に データでも文章でもない制御系の情報を埋め込むためのもの、という感じで良いのかな? C で言う #pragma 命令みたいな。<?compiler warning="suppress"?> とか <?scanning very-very-secure?> とか <?verify hash="02F84298FEDFA" algorithm="md5"?> とか。
まあ、そんなもの。 XMLプロセッサは、対応していないPIは無視することになってるから、#pragmaと一緒やね。
XML デービー って何なの? 既存の XML ファイルに SQL で照会掛けたりできるの?
できるものもある。
XSL-FOの話題ってここでいいのか? 組版の話だから違うような気もするんだが。 もし妥当なスレがあったら教えてくれるとありがたい。
関連技術なら何でもいいと思うよ。 答えられる人がいるかどうかは、また別の話だけど。
757 :
デフォルトの名無しさん :2008/01/14(月) 23:01:25
XSL-FOはここだろうけど実装が限られるし仕様自体も紙媒体への印刷を考慮されて巨大化してるから分かる人は少ないよ。 XSLとXSL-FOの関係もろくに理解してない奴らばかりだし。 とりあえず仕様書は嫁。でかいけど。
おまいさんが理解してるんだろう。
XSL で 0 パディングってどうやればいいの?
format-number
XML-FOなんて扱えるソフトすらもってねえ
PDF変換とかに使われてるくらいかな? SVGは使われ始めてるのに、こっちは使われてないんだよな。 WYSIWYG特性はこっちのが強いはずなのに。
764 :
754 :2008/01/18(金) 19:48:36
アクセス規制に引っかかって年末からずっと書けやしない。 今も自宅とは別のマシンから書き込んでる。 で、聞きたかったのはあるブロックがページをまたがないよう に指定ってできるのかねってこと。 ちなみに俺が使ってるのはXSLFormatter体験版。
765 :
デフォルトの名無しさん :2008/01/18(金) 20:49:43
SVGはIEが対応してないからなぁ. しかも Adobe が配布していた SVG ビューアもなんかどっかいっちゃった.
766 :
デフォルトの名無しさん :2008/01/18(金) 21:38:15
IEなんてごみしらね。 xml絡みはまともな実装ができるまでサポートしないってIE7が出たとき開発陣が言ってたが・・・。
IEは、JavaScriptのメモリ関係の酷いバグをさっさと直せと言いたい。
XPath 2.0 でヤケクソ気味に関数増やしやがったな。
XSL って無限ループ書ける? 最悪でもスタックオーバーフローくらいの一時的なの済むなら 客に自由に作ってもらおうかと思ってるんだけど。
XSL か XPath 使って 「全角文字 (Unicode に全角文字も変だが; 日本語ね) に 囲まれた連続した空白は削除する」 って出来ない?
一応xpathには指定した文字のインデックスを得る関数と、部分文字列を得る関数はあるから、出来ないことはないと思うよ。
773 :
デフォルトの名無しさん :2008/01/23(水) 11:09:40
XPathで、 /list/item[number][date] を、[]を含まない書き方にはどうすればいいんでしょうか? parent axisを使えばいいらしいんですが、、、 よろしくお願いします。
そんなのないよ
DTD と XML 名前空間を混在させるにはどうしたら良いですか?
例えば↓のように書くと 「要素 foo に xmlns:bar 属性は使えない」 ということになってしまうんですが。
<!DOCTYPE foo SYSTEM "foo.dtd">
<foo xmlns:bar="
http://... ">
...
</foo>
まぁ Eclipse の XML 構造化エディタ上の話で、Java から読む時は DTD 検証してないんで
問題ないっちゃないんですが。
名前空間が分離できねーからDTDダメダメ、XML Schema開発しようぜ。 という流れなので無理。
DTDにxmlns:bar属性の定義を追加しないと使えんわな
778 :
デフォルトの名無しさん :2008/02/03(日) 13:35:04
規則を表現する能力でいえば,Relax NG の方が高いよな. でも XML エディタの多くは XML Schema 対応だから そっちの方が無難だが. RFC とか IETF での規格書は Relax NG Compact で 記述されていることも多くって,変換が必要.
779 :
本田 :2008/02/04(月) 23:06:03
780 :
本田 :2008/02/04(月) 23:06:39
781 :
本田 :2008/02/04(月) 23:07:05
XMLの論考: 第2回
XML文書をオブジェクトとして "Python 風" に処理する方法 (II)
developerWorks
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2000年 8月 01日
http://www.ibm.com/developerworks/jp/xml/library/xml-matters2/ この記事は、『XML Matters』コラムの第 2 回目となりますが、
XML と Python の間のよりシームレスな統合を実現する絶え間ない探求の一環として、
David Mertz がxml_objectify モジュールを紹介します。
David は、xml_objectify の使用方法と、
XML 文書をオブジェクトとして処理する際にこの "Python 風" モジュールを使用する利点について説明します。
782 :
本田 :2008/02/04(月) 23:07:29
783 :
本田 :2008/02/04(月) 23:07:49
784 :
本田 :2008/02/04(月) 23:33:57
XMLの論考: 第5回
XSLTを使ってDocBook文書を変換する方法
developerWorks
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2000年 11月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters5/ DocBook のサンプルをもとに、David Mertz 氏が、
XSLT (Extensible Stylesheet Language Transformation) を使って、
XML 文書を HTML に変換する方法を示します。
その中では、XML 文書を変換する 4 つの代替手段を取り上げ、
いくつかのオープン・ソース・ツールの使い心地にまで触れているわけですから、
まさに勇気あるコラムニストです。
サンプル・コードとしては、XSLT 文書の断片、
シンプルな DocBook の 1 つの章を XSLT で記述した妥当な HTML 出力コード、
簡単な XSLT ループ例が掲載されています。
785 :
本田 :2008/02/04(月) 23:34:25
786 :
本田 :2008/02/04(月) 23:34:46
XMLの論考: 第7回
W3C XML SchemaとDocument Type Definitions (DTD) の比較
developerWorks
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 3月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters7/ XML文書型の指定として、
XMLスキーマが間もなくDTDに取って代わると多くの開発者は考えています。
David MertzはXMLスキーマが開発者にとって非常に価値のあるツールだと考えますが、
これがDTDに取って代わるかどうかについては、懐疑的です。
「XMLの論考」の今回のコラムでは、
スキーマとDTDの比較という難題に取り組み、
XMLスキーマの世界で今何が起きているかを明らかにします。
787 :
本田 :2008/02/05(火) 01:18:48
788 :
本田 :2008/02/05(火) 01:19:25
XMLの論考: 第9回
SQL照会からのDTDおよびXML文書の生成
developerWorks
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 5月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters9/ このコラムは、ポータブルXML結果セットをRDBMSの種類に依存せず生成できるようにする、
、パブリック・ドメイン sql2dtd および sql2xml ユーティリティーについての考察を取り上げています。
リレーショナル・データベースからデータを抽出するSQL照会は、
照会結果をXMLで表現するもので、
これによりきわめて実用的な形で、非定型の文書タイプの情報を提供できます。
789 :
本田 :2008/02/05(火) 01:22:56
XMLの論考: 第10回
XML文書を索引付けする
developerWorks
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 5月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters10/ XML文書保管形式は、特に散文的で単純な文書向けに普及してきました。
しかし、それにつれて、XML文書の集合内の内容を探す作業は難しくなってきています。
このコラムでは、XML固有の検索および索引付け機能を含めて、
Mertz氏の「魅力的なPython第15回」のコラムで提示された汎用全文検索システム (indexer) について解説します。
このコラムでは、このツール設計が、いかにXML階層ノード構造の利点を生かす索引付けに取り組んだかについて議論します。
790 :
本田 :2008/02/05(火) 01:27:58
XMLの論考 第11回: xml_pickleおよびxml_objectifyの再考
オープン・ソースのレッスンと常識
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 6月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters11/ 著者のDavid Mertzが、高水準言語Pythonによる、
XML文書処理に便利なユーティリティーを初めて紹介して以来、
ユーザーや読者から非常に有用な拡張や提案が数多く寄せられました。
この記事では、彼のモジュール・スイートに対して行われた変更の一部をご紹介するほか、
これらのモジュールの高度な使用とカスタマイズに関するヒントも提示します。
コード・サンプルでは、py_obj._XML 属性、
オブジェクトやリストとして扱われるノード属性、
py_obj マジック属性の振る舞いなどのデモンストレーションを行います。
791 :
本田 :2008/02/05(火) 01:29:07
XMLの論考 第12回: Pythonモジュールxml2sqlおよびdtd2sqlの使用
DTDおよびXML文書からのSQLステートメントの生成
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 6月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters12/ 前回の記事では、SQL照会からのXML文書の生成について探りました。
今回、David Mertzは、それなりの制約と複雑さがあるものの、
XML文書およびDTDからRDBMSストレージ形式への逆方向の変換も同様に可能であることを示します。
ここで論じるPythonのパブリック・ドメイン・ユーティリティーxml2sql およびdtd2sql は、
整合性を保ち逆変換可能な方法で、
データベースを作成しデータを挿入するための、SQLステートメントを生成します。
この技法を7つのコード・サンプルによって示します。
792 :
本田 :2008/02/05(火) 01:31:16
793 :
本田 :2008/02/05(火) 01:35:21
XMLの論考: DOM、SAX、およびXSLTの限界を超える
XML用のHaXml関数型プログラミング
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 10月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters14/ XMLデータを処理するとき、DOMやSAXやXSLTではなく、Haskellの使用を考慮してみてください。
HaXmlライブラリーは、XML文書を関数型言語Haskell固有の再帰的データ構造で表現します。
HaXmlには、こうした「データ構造化された」XML文書を処理するための、高次 (higher order) 関数が提供されています。
DOM、SAX、XSLTといったよく知られている技法と比べて、
HaXml技法は多くの点ではるかに洗練され、しかもコンパクトで強力です。
この技法をサンプル・コードによって示します。
794 :
本田 :2008/02/05(火) 01:38:58
XMLの論考: オブジェクト・モデルとしてのXML-RPC
大衆のためのデータ・バンドルか
レベル: 上級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2001年 12月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters15/ 間違いなくXML-RPCにも欠点がありますが、
この関数呼び出しプロトコルはさまざまな作業に適しています。
ここで、コラムニストDavid Mertzは読者のフィードバックに応え、
オブジェクト・データをモデル化する方法としてXML-RPCを調べます。
また、オブジェクトをシリアライズする手段として、
以前のコラムで説明したxml_pickle モジュールとXML-RPCを比較します。
この比較は、サンプル・コードによって詳しく示されます。
795 :
本田 :2008/02/05(火) 01:40:41
XMLの論考: もう1つのPython/XMLツール・セット4Suite
体重400キロのゴリラのようなPython XMLツールの紹介
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 1月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters16/ Pythonモジュールからなる4Suiteセットは、「くろうとの選ぶ本格派」ツールです。
広範で洗練された機能を持つ4Suiteツールは非常にパワフルで、プログラマーの学習カーブも急上昇します。
4SuiteはPythonの最近のバージョンによって提供された基本的なXML機能以上のものを提供するだけでなく、
いくつかの役立つオプションも含んでいます。
著者Davidが4Suiteの最も注目すべき面を紹介し、
あなたのPython/XML ツール・セットが4Suiteによってますます多機能になる様子を示します。
796 :
本田 :2008/02/05(火) 01:41:08
XMLの論考: PYX入門
行指向のXML
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 2月 02日
http://www.ibm.com/developerworks/jp/xml/library/x-matters17/ XMLのフォーマットは非常にシンプルです。
XMLはバイナリー・エンコードではなくプレーンなUnicodeテキストを使用し、
構造はすべて推測しやすいタグで宣言されます。
にもかかわらず、
XML文書を処理するにはパーサーで注意深くデバッグする必要があるほど、
XML文法には多くの規則が存在します。
しかも、パーサーはそれぞれ独自のプログラミング・スタイルを強制します。
それに代わるのは、XMLをシンプルにすることです。
オープン・ソースであるPYX形式は、XML文書を表現する純粋に行指向の形式です。
この形式を使うことによって、grep、sed、awk、wc、および一般的なUNIXコレクションを使用して、
XML文書の内容を簡単に処理できるようになります。
797 :
本田 :2008/02/05(火) 02:29:29
XMLの論考: REXMLライブラリー
Rubyプログラミング言語におけるXML処理
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 3月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters18/ XMLの処理に立ち向かうには、少なくとも2つの姿勢があります。
1つは、多くのプログラミング言語から呼び出することのできる標準的なAPIを採用するという姿勢です。
2つ目は、
XMLアプリケーションを開発するのに使用するプログラミング言語の力を借りてXML処理ライブラリーを作り出すという姿勢です。
この連載の最初の方の記事で、David Mertz氏は、
彼独自のPythonxml_pickle およびxml_objectify や、HaskellHaXml ライブラリーで、
この第2のアプローチのいくつかのバージョンを検討しました。
かなり新しく、しかも急速に発展しつつあるRubyプログラミング言語用のよく利用されるライブラリーも、
この第2のアプローチを採用しています。
この記事では、David氏が、Ruby Electric XML (REXML) という、
Rubyの機能を活用してXML処理を実行するライブラリーを紹介します。
REXML は、ストリーム・スタイルのSAXにも、ツリー・スタイルのDOMにも似ていますが、
どちらの種類のAPIにも直接には制約を受けていません。
798 :
本田 :2008/02/05(火) 02:34:05
XMLの論考 第19回: 続・XMLと圧縮
ブロック・レベルのアルゴリズムとリソース負荷
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 4月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters19/ この連載の以前の記事で、Davidは、
圧縮率を改善するためにXML文書を可逆的に再構造化する技法について調べました。
しかし、大規模なXML文書と組み込みプロセスの場合、
圧縮パスに先立ってソース文書全体を再構造化するのは実用的でないことがあります。
この記事でDavidは、
再構造化の技法をブロック・レベルの処理にどのように適合させられるかについて、
圧縮率の改善とCPU/メモリーの所要量の面から調べます。
799 :
本田 :2008/02/05(火) 02:53:50
XMLの論考: gnosis.xml.validityライブラリーによって妥当性を確保する
OOPデータをXMLの規則に押し込む
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 7月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters20/ 既存のXML APIの大半は、
整形式であるかどうかの検証作業をプログラム的に実現できますが、
妥当性を保証できるものはほとんどありません。
XML処理の世界では、これが深刻な弱点になっています。
この記事では、
著者が開発したgnosis.xml.validity ライブラリーを取り上げます。
このライブラリーによって、
XMLの直列化を意図したPythonオブジェクトの妥当性を実現してみましょう。
800 :
本田 :2008/02/05(火) 03:00:39
XMLの論考: XMLエディターの総まとめ: 第1回
JavaおよびMacOS用の製品を再び取り上げる
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 8月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters21/ Davidが以前XMLエディターの商用ツールのカテゴリーを調査してから1年半がたちましたが、
その後のXMLエディター商用ツールの進歩をDavid が2回連載で調べていきます。
これらのツールは、概してテキスト・エディターの表面的なラッパーであったものから、
XML指向のテクノロジーを使う作業プロセスをかなり簡単にできる具体的な開発環境へと進歩しています。
この第1回の記事では、JavaおよびMacOSアプリケーションを調べます。
具体的には、Morphon TechnologiesのMorphon 2.0.5、SyncROの <oXygen/> 1.2.1、
およびElfDataのXML Editor 1.14を取り上げます。
(・∀・) ニヤニヤ
802 :
本田 :2008/02/05(火) 03:02:53
XMLの論考: XMLエディターの総まとめ 第2回
Windows用エディターを再び取り上げる
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 9月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters22/ DavidによるXMLエディターの検討の第2回目のこの記事では、Windowsベースの製品を調べます。
具体的には、AltovaのXML Spy、Wattle SoftwareのXMLwriter、NetBryx TechnologiesのEditML Pro、
そしてCorelのXMetalを取り上げます。
Davidが以前このカテゴリーのツールを調べてから1年半が経ちましたが、
その間にこれらのツールは、テキスト・エディターの表面的なラッパーといったようなものから、
XML指向のテクノロジーを使う作業が非常に楽になる具体的な開発環境へと進歩しました。
ひさびさに来たら荒らされてたw カビの生えた記事ばかりひたすら列挙されてもなあ Text Processing in Pythonなんかタダで読めるのに Amazonへのリンクまで貼っちゃうとかもうね
大分前からpc11鯖にコピペまき散らすbotが出ててちょくちょく動いてるよ。
805 :
本田 :2008/02/05(火) 20:00:57
XMLの論考: YAMLはXMLに改良を加える
YAML Ain't Markup Language (YAMLはマークアップ言語ではない)
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2002年 10月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters23/index.html この記事では、DavidがYAMLを紹介します。
これは、人間にとって読みやすいデータ直列化フォーマットであり、
動的なプログラム言語で使用されるデータ型をエンコードするのにうってつけです。
XMLと対照的に、YAMLが使用する構造の標識は、クリーンかつ最小限のものです。
これは、ネストされた要素を字下げするという方法に主に頼っていることによります。
より重要なこととして、YAMLは構文が優れており、多くのタスクの場合に、
YAMLのデータ構造と「自然な」データ構造との間のセマンティックな適合関係は、
ずっとぴったりしたものとなっています。
806 :
本田 :2008/02/05(火) 20:04:32
XMLの論考: reStructuredText
軽量で強力な文書マークアップ
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2003年 2月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters24/index.html reStructuredTextという文書フォーマットはPython文書化の公式ソース・フォーマットの1つとして採用されていますが、
他のタイプの文書化でも役立ちます。
reStructuredTextは興味深いハイブリッド・テクノロジーであり、
構文と外観においては他の「ほとんどプレーン・テキストの」フォーマットと似ていますが、
セマンティクスとAPIにおいてはXMLによく似ています。
Davidはこのフォーマットを調べ、
既存のツールで reStructuredTextをいくつかのXML方言 (docutils、DocBook、OpenOffice) やLaTeX、HTML、
およびPDFなどの他の有用なフォーマットに変換する方法を示します。
807 :
本田 :2008/02/05(火) 20:06:17
XMLの論考: RELAX NGによる逆襲 第1回
W3CのXML Schemaを打ち負かす
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2003年 2月 15日
http://www.ibm.com/developerworks/jp/xml/library/x-matters25/ RELAX NGのスキーマは、妥当なXMLインスタンスのクラスを記述する手段として、
W3CのXML Schemaのスキーマよりも強力で、厳密で、意味の記述が直接的です。
十分な実績のあるDTDの意味体系を拡張する一方で、データ型を直交的に拡張でき、
関連インスタンス・モデルを簡単に構築できるというのが、このRELAX NGの「売り」です。
この3回シリーズの記事では、David Mertz氏がRELAX NGを初めて取り上げます。
まずはその第1回をご覧ください。
808 :
本田 :2008/02/05(火) 20:07:45
809 :
本田 :2008/02/05(火) 20:08:36
810 :
本田 :2008/02/05(火) 20:10:54
811 :
本田 :2008/02/05(火) 20:12:56
XMLの論考: RXPパーサ
Pythonバインディングによる超高速妥当性検証パーサ
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2003年 8月 04日
http://www.ibm.com/developerworks/jp/xml/library/x-matters29/index.html RXP は、XML文書の非DOMツリー表現を生成する、Cで書かれた妥当性検証パーサです。
RXP 自体は詳しく説明されているとは言えません(きっと臆病な人には向きません・・・)、
けれど少なくとも2つの優秀で高度なAPIがRXP 上に作られています。
PythonバインディングであるpyRXP と、ユーティリティやライブラリ群であるLT XML です。
この記事でDavidは、RXP の紹介、expat パーサとの比較を行います。
そして、RXP の複雑さに踏み込まずにRXP の高速性を利用する方法としてpyRXP とLT XML について簡単に説明します。
812 :
本田 :2008/02/05(火) 20:14:43
XMLの論考: テキスト・エンコーディング・イニシアチブ
記録文書や複合文書のためのXML方言
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2003年 9月 04日
http://www.ibm.com/developerworks/jp/xml/library/x-matters30/index.html 最近XMLは、プログラマがコンピュータ向きのデータをコード化するためのマークアップ技法であるとみなされているようです。
DocBookや類似の文書化指向のDTDも、技術文書の作成に焦点を絞るようになっています。
しかしながら、XMLは本来、(出版社や文書保管者、図書館司書、学者などから構成される)SGMLコミュニティに根ざすものです。
今回の記事でDavidは、文学的、言語学的文章のマークアップに特化したXMLスキーマである、
TEI (テキスト・エンコーディング・イニシアティブ)をとり上げます。
TEIは、原文書の印刷上の特徴を抽象化するものですが、
効果的な検索や索引作成、比較、そして印刷出版などを行うことが可能です・・・こんなことは、
出版物を単に画像として保管している場合には不可能です。
813 :
本田 :2008/02/05(火) 20:17:49
XMLの論考: SXMLとSSAXの調査
Schemeプログラミング言語でXMLを操作する
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2003年 10月 23日
http://www.ibm.com/developerworks/jp/xml/library/x-matters31/index.html 前回の記事でDavidは、各種プログラミング言語のXMLライブラリと、それらの長所と短所を考察しました。
今回は特に教育の場や純粋主義者の間で相変わらず人気のあるLisp/Schemeファミリーの言語を調べます。
ここでとりあげるのは、SchemeのSSAXライブラリ(効率的で純粋に関数型のパーサ)と、
(DOMに似た)SXMLツリー・ライブラリ、
また関連ツールとしてそれらで動作するSXSLTとSXPath等を含めて検討します。
Davidは強力な関数型の言語で構文解析を行う利点を説明し、
そしてSSAXを他の言語のライブラリと比較します。
814 :
本田 :2008/02/05(火) 20:19:02
XMLの論考: XOM Java XML API
厳格で正確なツリー指向のXMLモデル
レベル: 上級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2003年 12月 17日
http://www.ibm.com/developerworks/jp/xml/library/x-matters32/index.html 今回の記事でDavidは、Elliotte Rusty HaroldによるXOMを見て行きます。
大まかに言えば、これもまた、いくらかDOMのスタイルを持つオブジェクト指向XML APIの一つですが、
XOMには他と一線を画すいくつかの特徴があり、そうした特徴は重要な設計要素だとHaroldは言っています。
そうした特徴の中で最たるものは、XOMインスタンスが常に正しいXMLにシリアル化されるように、
メモリ内オブジェクトにおいても変わらずに維持されるように厳格さを追求するという点です。
さらに、XOMは他のJava XML APIよりも大幅な単純化と高度な規則性を狙っています。
今起きたのか
816 :
本田 :2008/02/06(水) 00:18:41
XMLの論考: ワード・プロセッサとXML
オープン・ソースがネイティブな文書フォーマットとしてXMLを採用
レベル: 初級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2004年 2月 25日
http://www.ibm.com/developerworks/jp/xml/library/x-matters33/index.html フリーソフトとして公開されている主要なワープロソフトの3種類が、
どれも最近のバージョンで、ネイティブな文書フォーマットとしてXMLを採用しました。
XMLをどのように扱うかはその3種類(AbiWord、KOfficeのKWord、そしてOpenOffice.org Writer)
のそれぞれで少しずつ異なっていますが、
その違いは主として各プロジェクトがどこに焦点を当てて開発を行っているかによるものです。
XML の利点には、”パーサやライタ(解析、展開したり保存したりする機能)”
がコンポーネント化されていること、
フォーマット仕様がオープンであり正式になっていること、
XSLTやその他の変換APIが適用できること等がありますが、
今回Davidは、
上記プロジェクトやその他オープン・ソースのワープロソフト開発者達が
文書フォーマットとしてXMLの利点をどのように認識したのかを見て行きます。
817 :
本田 :2008/02/06(水) 00:20:47
XMLの論考: GUIとXML設定データ
Mac OS XとKDEでのXMLの使われ方を見る
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2004年 4月 28日
http://www.ibm.com/developerworks/jp/xml/library/x-matters34/index.html XMLは時間とともに、多くの最適な分野に浸透してきました。
XMLが次第に使われるようになってきた分野の一つにGUIの設定があります。
特に、永続的であったとしてもコンパイル時に固定してしまっては不都合なGUI要素の設定に
XMLが使われています。
今回の記事でDavidが目を向けるのは、Mac OS XのAqua GUIと、
最近の大部分のLinuxディストリビューションで標準または使用可能となっている
Kデスクトップ環境 (KDE)でのXMLの使われ方です。
818 :
本田 :2008/02/06(水) 00:23:01
XML Matters: GUIs and XML configuration data, Part 2
The Mozilla Project and XUL
Level: Intermediate
David Mertz (
[email protected] ), Browser, Gnosis Software, Inc.
26 May 2004
http://www.ibm.com/developerworks/xml/library/x-matters35/index.html David continues his discussion of how XML is used in the configuration of GUI interfaces.
He looks at Mozilla's XML-based User Interface Language (XUL)
which allows you to write applications that run without any particular dependency
on the choice of underlying operating system.
This may seem strange at first,
but you'll soon see that this Mozilla project offers powerful tools for GUI building
that allow you to develop for an extensive base of installed users.
819 :
本田 :2008/02/06(水) 00:24:23
XML Matters: Practical XML data design and manipulation for voting systems
EVM2003 brings XML to the democratic process
Level: Intermediate
David Mertz (
[email protected] ), Muckamuck, Gnosis Software, Inc.
28 Jun 2004
http://www.ibm.com/developerworks/xml/library/x-matters36.html In this installment,
David discusses his practical experiences developing interrelated XML data formats
for the EVM2003 Free Software project to develop voting machines
that produce voter-verifiable paper ballots.
Some design principles of format subsetting emerge. In addition,
David looks at how an application-specific meaning for XML document equivalence can be programmed,
and why canonicalization is insufficient.
820 :
本田 :2008/02/06(水) 00:26:04
XML Matters: Describe XML content with the Dublin Core Metadata Initiative
Reuse metadata in broader XML vocabularies
Level: Intermediate
David Mertz (
[email protected] ), Metaphilosopher, Gnosis Software, Inc.
06 Aug 2004
http://www.ibm.com/developerworks/xml/library/x-matters37.html The Dublin Core Metadata Initiative (DCMI) is a standardized vocabulary for handling information about documents.
In general, the DCMI vocabulary defines a hierarchy of terms that describe the purpose, context,
and origin of a document (rather than describing the document itself).
David shows you how DCMI provides a set of metadata primitives
that you can reuse (through namespaces) in broader XML vocabularies,
such as RSS variants. Various standards, including those from ISO and NISO, have adopted parts of DCMI.
821 :
本田 :2008/02/06(水) 00:27:59
XML Matters: OASIS Election Markup Language
Standardization of XML formats for voting and elections
Level: Intermediate
David Mertz (
[email protected] ), Bean Counter, Gnosis Software, Inc.
15 Oct 2004
http://www.ibm.com/developerworks/xml/library/x-matters38.html The Organization for the Advancement of Structured Information Standards (OASIS) has developed many XML standards
in use within government, law, and business.
Election Markup Language (EML) is OASIS' foray into the world of elections
-- with an emphasis on voting within governmental jurisdictions.
In this installment,
David gives readers an introductory look at the structure and purpose of EML,
with an eye toward how this standard, which is now used largely in Europe,
will substantially influence future data standards in the United States.
822 :
本田 :2008/02/06(水) 00:29:11
XML Matters: Get the most out of gnosis.xml.objectify
Use utility functions for enhanced object behavior
Level: Advanced
David Mertz (
[email protected] ), Protagonist, Gnosis Software, Inc.
23 Nov 2004
http://www.ibm.com/developerworks/xml/library/x-matters39.html The XML binding gnosis.xml.objectify was designed, in many ways, more as a toolkit than as a final tool.
But this leaves some (potential) users confused about how to specialize it for some common tasks.
In this article,
David shows readers how very thin wrappers can customize gnosis.xml.objectify to perform actions such as:
Provide XPath access to child objects; automatically reserialize objects to XML;
modify the syntax of access to nodes.
Some of these techniques involve rather trivial specialization of provided parent classes.
Others involve small utility functions.
823 :
本田 :2008/02/06(水) 00:30:15
XML Matters: Program with SVG
Make the most of this flexible, portable XML language for graphics
Level: Introductory
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
15 Apr 2005
http://www.ibm.com/developerworks/xml/library/x-matters40/index.html Scalable Vector Graphics (SVG) is an XML format that describes scale-independent graphics,
with good support in free software and commercial tools.
In this installment, David introduces scripting and animation with SVG,
and touches on manipulating SVG through DOM. Because SVG is XML,
it lends itself to transformation and/or generation with any of the tools
and libraries you might use for XML generally.
824 :
本田 :2008/02/06(水) 00:31:40
XML Matters: Beyond the DOM
Tips and tricks for a friendlier DOM
Level: Intermediate
Dethe Elza (
[email protected] ), Senior Technical Architect, Blast Radius
20 May 2005
http://www.ibm.com/developerworks/xml/library/x-matters41.html The Document Object Model (DOM) is one of the most widely implemented tools for manipulating XML and HTML data,
but it is rarely used to its full potential.
By taking advantage of the DOM and extending it to be even easier to use,
you gain a powerful tool for XML applications, including dynamic Web applications.
825 :
本田 :2008/02/06(水) 00:32:36
XML Matters: SVG and the scriptless script
Declarative animation for junior rocket scientists
Level: Introductory
Dethe Elza (
[email protected] ), Senior Technical Architect, Blast Radius
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
25 Oct 2005
http://www.ibm.com/developerworks/xml/library/x-matters42/index.html Scalable Vector Graphics (SVG) browsers are becoming mainstream now, and they can be used in many powerful ways.
Continuing on from David's earlier SVG column,
Dethe looks at some of the ways that declarative markup can replace script for animation and other common scripting tasks.
In the process, he briefly looks at replacing script with declarative markup in other XML dialects.
Moving common scripting tasks into declarative markup can eliminate the need for tedious boilerplate code,
reduce errors, and make your script's intent easier to follow, freeing you to focus on your code's unique aspects.
W3C勧告規格の代替物は要らないなぁ。 あとSVGは普及して欲しいね。特にJavaで対応して欲しい。 JavaFXとかで標準対応されるんだっけか?
Batik はうんこすぎだったな。
javaのSVGレンダラの実装はいくつかあるけど
829 :
本田 :2008/02/07(木) 00:24:51
XML Matters: The Web ain't just for 2D any more
Born-again VRML makes the Web safe for 3D
Level: Introductory
Dethe Elza (
[email protected] ), Senior Technical Architect, Blast Radius
15 Dec 2005
http://www.ibm.com/developerworks/xml/library/x-matters43/index.html Once upon a time, 3D for the Web promised to be as easy as building a Web page.
Unfortunately, 3D -- even simple 3D -- is more complex than displaying scrolling text and pictures.
Each VRML vendor implemented a different subset of the spec, and it never gained traction.
And so 3D on the Web faded away.
Or did it? It turns out that VRML lives on in its XML flavor,
X3D, which has grown to encompass VRML's siblings H-Anim (Humanoid Animation) and GeoVRML.
Can 3D on the Web finally be used for more than virtual shopping malls?
The latest installment of this mini-series on XML media shows that it can.
In this article, Dethe focuses on a couple of uses that X3D is ready for now,
and takes a look at where it might go in the future.
830 :
本田 :2008/02/07(木) 00:26:48
831 :
本田 :2008/02/07(木) 00:28:44
XMLの論考:Atom駆け足解説
Atomはフォーマットかプロトコルか?両方です!シンジケーションとパブリッシングに使ってください。
レベル: 中級
Dethe Elza (
[email protected] ), Senior Technical Architect, Blast Radius
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2006年 5月 23日
http://www.ibm.com/developerworks/jp/xml/library/x-matters45/index.html Atomは実際には2つの異なるものであり、
両方ともシンジケーション(ブログやニュースフィードなど、定期的に更新されるその他の情報)に関連しています。
Atom Syndication Formatは、
エントリー(単独のトピックまたは項目)とフィード(トピックまたは項目の集合)を公開するためのIETF標準です。
Atom Publication Protocol(Atom APIまたは省略してAPPと呼ばれることもあります)は、
Atomリポジトリーのコンテンツを検索、一覧表示、追加、編集、および削除するための手段です。
Syndication FormatとしてのAtomはIETFでの(検討)プロセスを経て標準になり、
一方、Publishing ProtocolとしてのAtomは標準委員会でまだ作業中ですが、
現時点では、その大半が枯れてきているようです。
832 :
本田 :2008/02/07(木) 00:29:51
XML の論考: マイクロフォーマットよりも軽いピコフォーマット
X のない Ajax、不等号括弧のないマイクロフォーマット
レベル: 初級
Dethe Elza (
[email protected] ), Senior Technical Architect, Blast Radius
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2006年 8月 01日
http://www.ibm.com/developerworks/jp/xml/library/x-matters46/index.html David Mertz は以前の XML の論考コラムの中で、
大部分がテキストである文書をフォーマットするための軽量マークアップ言語、reStructuredText を解説しました。
またその前には、大部分がデータである文書のための軽量マークアップ言語、YAML を取り上げました。
AJAX とマイクロフォーマットが一般的になってきたことを考えた場合、これらは相変わらず便利なのでしょうか。
あるいは、マイクロフォーマットは十分「軽量」なのでしょうか。
Xのない AJAX 用に MochiKit を利用し、またマイクロフォーマットの生成に reStructuredText を適用して、
(YAML よりも軽量な) JSONを活用する方法を学びましょう。
833 :
本田 :2008/02/07(木) 00:31:06
XMLの論考: MochiKit
XML の DOM 操作を改善する
レベル: 中級
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2006年 11月 21日
http://www.ibm.com/developerworks/jp/xml/library/x-matters47/index.html MochiKit は、JavaScript 用の便利な上位ライブラリーです。
MochiKit は、Python や Python 標準ライブラリーが提供する多くの便利な機能から主な着想を得ており、
また別の側面として、ブラウザーのバージョン間での違いを吸収してくれます。
特に MochiKit.DOM は手軽なコンポーネントであり、これを使うことで、
「生の」 JavaScript で処理する場合よりもずっと容易に DOM オブジェクトを処理することができます。
多くの MochiKit.DOM は XHTML の処理にカスタマイズされているため、
特に MochiKit と Ajax を組み合わせる場合には、
XHTML でラップされたマイクロフォーマットを使えることは非常に便利かもしれません。
834 :
本田 :2008/02/07(木) 00:32:18
XML の論考: Ajax のトレードオフ: さまざまな種類の XML
アプリケーション用にデータをエンコードするための正しい方法はどれか
レベル: 中級
Dethe Elza (
[email protected] ), Senior Software Developer, Uniserve Communications Corporation
David Mertz, Ph.D (
[email protected] ), Author, Gnosis Software, Inc.
2007年 1月 09日
http://www.ibm.com/developerworks/jp/xml/library/x-matters48/index.html Ajax は Asynchronous JavaScript and XML を表します。
そこにはあるのは、最近の Web ブラウザーでは、W
eb アプリケーションの使用中にサーバーとの間で送受信されるデータ用にチャネルをオープンしたままでも十分な信頼性を確保できる、
という考え方です。
これは、リンクをたどるとページ全体が新たにロードされるという標準的な Web 技術とは対照的です。
Ajax ベースでの開発の多くの側面では、従来の Web ページを設計する場合とは異なる判断が要求されます。
例えば「戻る」ボタンをどう処理するのか、
更新されたデータをどう表示するのか、どのくらい頻繁に更新を送信するか、などの判断が要求されます。
この記事では、そうした中の 1 つの側面に関連した話題、データ交換フォーマットに何を使うべきかについて解説します。
835 :
本田 :2008/02/07(木) 00:36:11
>>779 >>803 Text Processing in Python
by David Mertz -- published by Addison Wesley
http://gnosis.cx/TPiP/ [TXT] acknowledgments.txt FOLKS WHO HAVE MADE THIS BOOK BETTER
[TXT] intro.txt INTRODUCTION
[TXT] chap1.txt PYTHON BASICS
[TXT] chap2.txt BASIC STRING OPERATIONS
[TXT] chap3.txt REGULAR EXPRESSIONS
[TXT] chap4.txt PARSERS AND STATE-MACHINES
[TXT] chap5.txt INTERNET TOOLS AND TECHNIQUES
[TXT] appendix_a.txt A SELECTIVE AND IMPRESSIONISTIC SHORT REVIEW OF PYTHON
[TXT] appendix_b.txt A DATA COMPRESSION PRIMER
[TXT] appendix_c.txt UNDERSTANDING UNICODE
[TXT] appendix_d.txt A STATE-MACHINE FOR ADDING MARKUP TO TEXT
[TXT] glossary.txt GLOSSARY TERMS
836 :
本田 :2008/02/07(木) 00:38:09
たけち
今XPathやってて思ったんだけど、 なんで文字列関数にstarts-withはあるのにends-withはないの?
重いからじゃ
841 :
デフォルトの名無しさん :2008/04/07(月) 10:53:11
XML の中にバイナリデータぶち込みたいんだけど Base64 の UTF-8 版みたいなもんは無いのか? 使えるコード多くなるから効率も良くなるだろう。
ishみたいな?
ish てパソ通で使われてた奴? 懐かしいけどあれ UTF-8 扱えるの?
XPathの解説って仕様書以外に詳しいところってある?
>>843 ishで直接utf-8は使えないけど、使えたら面白そうだ。
>>844 仕様書以上に詳しかったらそっちが仕様書になるべきだな
仕様書に例題とかチュートリアルとか不要だろ。 引っ込んでろバカ。
何真っ赤になってんだ?
例題ついてたら詳しいことになるのか?
付いてないより詳しいな。バカなのか?
過疎は分かるがお前らに足りない物 ス ル ー カ
ネスト構造の人形か
バカバカ言ってる面白い人がいると聞いて歩いてきました
誰がガバガバだ
<rect name="skillperk_background"> <include src="xxx\generic_background75.xml" /> <visible> &true; </visible> <depth> 50 </depth> <locus> &true; </locus> <user0> <copy src="penis_icon" trait="x" /> <add src="penis_icon" trait="width" /> <add> 300 </add> </user0> <!-- xxx add width --> <user1><!-- xxx add height --> <copy src="penis_icon" trait="y" /> <add src="penis_icon" trait="height" /> <!-- <add> 30 </add> --> </user1> <x> <copy src="screen()" trait="width" /> <sub src="me()" trait="width" /> <div> 2 </div> </x> <y> <copy src="screen()" trait="height" /> <sub src="me()" trait="height" /> <div> 2 </div> </y>
856 :
デフォルトの名無しさん :2008/05/08(木) 22:24:03
PDFが扱えるXSL-FOで使い物になる奴ってある?
XSL-Formatter 高すぎて個人じゃ手賀でないよぉ 貧乏研究者のために非営利目的限定で安く出してくれないものか・・・
859 :
デフォルトの名無しさん :2008/05/12(月) 02:19:56
>>856 stylus studio のエンタープライズ版は?
高機能の割りにはかなり安いと思うけど
860 :
デフォルトの名無しさん :2008/05/13(火) 08:00:23
XML spy の無料ver 無くなったの?
861 :
デフォルトの名無しさん :2008/05/16(金) 01:35:44
XQueryをSAXON使ってJava埋め込みで実装したいんだが、 どっかいいサンプルのってるサイトはないだろか?
>>856 apache FOPって使い物にならないの?
864 :
デフォルトの名無しさん :2008/05/22(木) 15:35:33
プログラムの事は全くの素人です。 XBRLのプログラミングするのって難しいのでしょうか? 例えば、EDINETのデータを企業ごとにEXCELに出力するようなソフトを 作ってとお願いしたら、どの位の予算でできるものなんでしょうか。
>>864 単にデータを変換するだけなら学生一人で1日あればその程度のプログラムは作れる。
規模とか実用的な処理速度とか使い勝手とかいろんな要件を追加すればその分だけ金はかかるけどな。
>>866 内部で使ってるlibxsltみると幸せになるかもね
"XMLの短所"の所に"XML文書における内容と属性の区別は、一定の人々にとっては不自然に感じられる。XMLのデータ構造の設計を難しくする要因となっている。" と書かれていますが、具体的に解る日本語のサイトは無いですか?
870 :
869 :2008/05/26(月) 17:36:19
検索の仕方を変えたら、見つかりました。お騒がせしました。
(要素の)内容と属性の違いがなんで不自然に感じるんだ? そう感じる奴はSGML/XMLに於ける文章の構造化が出来てないだけじゃないか。 そもそも文章であるxmlインスタンスはデータ構造を含む事はあってもそのものはデータ構造じゃないぞ。 いつものことだが文章をデータ構造として扱おうとするから不自然が発生する。
「一定の人々」「感じられる」なんていったらどんなことでも 言える罠。 ・一定の人々にとっては池田犬作は神であると感じられる ・一定の人々にとってはマイナスイオンは癒し効果があると 感じられる ・一定の人々にとってはLispを使わない奴はハッカーじゃないと 感じられる
>>871-872 んな一般的な話じゃなくて、要素vs属性宗教戦争をwikiだかに書いたやつが
わけわからんのに言及したんだろ。
どうでもいいけど日本語的におかしいよ。
で、おまえらはnameを属性、要素のどちらにするんだ?
nameの意味次第じゃね
【な め な め】
長所新車な質問で済みません。 <foo>"It's fool!"</foo> みたいに要素の内容に文字実体参照を使わず直接 " とか ' を 書いてもいいような気がするけど駄目ですか? (gt lt amp が無理なのは分かってます)
どう処理するか次第じゃない?
>>878 直接書いて何も問題ないよ。
gt も書いていい。
>>879 >>880 ありがとう。
>gt も書いてもいい。
開いてないものを閉じるはずがないということで納得。
882 :
デフォルトの名無しさん :2008/06/05(木) 02:25:17
質問なのですが Xpathを使用する際に宣言ってありますか? それともXSLの仕様の1つだからXSL宣言だけでOKなんでしょうか?
日本語で
884 :
デフォルトの名無しさん :2008/06/05(木) 04:48:59
>>882 流石に日本語ではカワイソウ
出直して来い
885 :
デフォルトの名無しさん :2008/06/05(木) 16:34:30
JSONみたいにXMLのマージのできるJavaのライブラリや機能ありますか?
ジェイソンの対抗馬のフレディというのがある
888 :
デフォルトの名無しさん :2008/06/16(月) 11:53:32
xslt、xslの質問です。 <xsl:output で、 indent="yes" にすると、インデントさせてHTMLを出力させているのですが、 部分的にインデントさせずに出力する方法はありませんでしょうか? xsltは、C#のSystem.Xml.XslのXslTransformを使っています。
889 :
デフォルトの名無しさん :2008/06/16(月) 12:01:39
何をやりたいかというと、 <img .../><img .../><img .../> のように<img>を連続で配置したいのです。 (そうしないとIE7, html4strictで表示が変わる) <![CDATA[ ほげほげ ]]> で記述すれば、いけると思っていたのですが、 ソースがそのまま出てしまいます orz
890 :
888=889 :2008/06/16(月) 13:26:54
disable-output-escaping="yes"でうまくいきました! xslで、 <xsl:template match="hoge"> <xsl:value-of select="." disable-output-escaping="yes"/> </xsl:template> xmlにて、 <hoge><![CDATA[<img ・・・/><img ・・・/><img ・・・/>]]></hoge> でうまくCDATA内のHTMLをエスケープされずに出力できました!! お騒がせしました。ありがとうございました。
891 :
デフォルトの名無しさん :2008/06/16(月) 16:25:29
892 :
デフォルトの名無しさん :2008/06/16(月) 17:44:40
>>892 まあいいんじゃない?
クラスに(たぶんJava)マップすることを想定してる書き方とか、
数値系とテキスト系で記述ルールをポリシ化してるっぽい所とか、
まあ一定にそれほど変じゃないポリシがある人が書いたように思える。
一部に名前空間周りが「?」な
http://tokuteikenshin.jp/update/2-1/latest/20080122hg-1.xml とかあるけど、全体的にはまっとうだと思われ。
かつてはxml0001,xml0002,xml0003,...とか<foo>abc/123/234/</foo>とか
ネーミングも構造化もへったくれもないXMLが色々なところで跋扈していてな・・・
それに比べれば夢のようだ。
894 :
デフォルトの名無しさん :2008/06/19(木) 23:47:23
> 166 :卵の名無しさん:2008/06/19(木) 22:12:44 ID:G7dVG0z50 > XML化する義理なんてねぇし 手書きだよ全部手書き 医師板じゃあ、どこかのプログラマか、日曜プログラマが、xmlの意味合いも理解せず、 csvファイルでの提出を未だに主張しております。時代遅れだと思うんですがねぇ。
CSVの話題はスレ違いです。
XMLはテキストマークアップ言語であって、データ記述言語ではないから、 必ずしもCSVの代替になるわけではないよ。 それに記述の自由度が高すぎるからパースに不必要なコストが掛かる。
>>894 表計算ツールとかで処理しやすいというエンド側の事情を踏まえての話かもしれんぞ。
InfoPathとか持ってくるよりExcelでやる方が簡単だし。
その場合はExcelかOpenOffice形式で入出力できるWebAPI用意して、
そのURLを開いて編集させるとかがいいのかな。書き込まれたら自然とXMLに
なってるから、後はサーバー側はXMLとして処理できる。
SAXドライバ噛ませば入力がxmlじゃなくてもxmlとして扱えそうな気がするんだが。
899 :
デフォルトの名無しさん :2008/06/23(月) 15:01:28
>>899 うまくいく要素がない
というかコンサルまともに仕事してねーだろこれ
というのを送ったつもりなんだが,どうやらどこか知らない場所に誤爆したようだ
901 :
デフォルトの名無しさん :2008/06/24(火) 03:15:51
>>899 役所の方で、役所の都合でxmlで提出してくれ、フリーソフトは渡すから、と言えば
トラブルを避ける意味で、validationできるように、入力ソフトとは別にvalidatorを
渡すべきじゃないのかなと思って。
xmlで情報交換されている方は相手に渡す前にチェックをかけないんですか?
>903 レスどうも。 RFC見ました。しかし、よく分からん。。。 ブラウザのステータスバーには絶対パスに整形されて表示されるし、できるかと思っていたのですが、 解決策はないのでしょうか?
どこで躓いてるのかわからん
907 :
902 :2008/07/05(土) 04:14:52
連投失礼します。
重要なことを一つ書き忘れていました。
今回、このチェックはjavascript内に記述します。ですので絶対パスが分かると思ったのです。
(ただのHTMLをXSLTにかけるのでは絶対パスなんか知りようというか分かりようがありませんよねorz)
>>903 さんがなぜRFCを提示したかやっと分かりましたw
引き続きよろしくお願い致します。
相対パスはそのかかれているHTMLからの相対なので、合成が必要。 でもそのHTMLと同じサイトかどうかだけが必要なら、相対ならOK、もしくは駄目と判定すればいいのでは? どちらにせよ厳密にやるなら不十分で、RFCをよく読んで詳しく実装が必要。
>>908 素早いレスありがとうございます。
>合成が必要。
合成を行うのはjavascriptでの操作となるのでしょうか?それとも@hrefでとってきたものに対して何らかの処理を加えると言ったことができるのでしょうか・・・?
>相対ならOK、もしくは駄目と判定すればいいのでは?
相対かどうかの判定はhref中に(://)を含むかどうか程度の判定ですかね?(きっとそのあたりに関してRFCを読めという意味だと思うのですが、今回は趣味で使う程度なので^^;)
文字列操作と条件分岐、関数などの仕組みを使って作るしかないかと。XSLでも十分できますよ。
普通に使われている相対パスなら
http://サイト名/までが無ければ 、そのhtmlがあるところのサイトと同じサイトにあるファイルです。
そのファイルがhoge.comのファイルなら、こんな感じかな
xsl:if select="start-with(@href,'
http://hoge.com/ ') or not(start-with(@href,'
http:// '))"
もちろん
http://HoGe.CoM/とか 、IPで書かれていりとか、%エンコードとか他にも色々ありますが、実際に確認して条件を追加していくしかないでしょう。
911 :
902 :2008/07/05(土) 06:10:18
どこにあったHTMLかが不明?違うサイトにあるなら、相対パスは全てはじけばいいのでは?
913 :
902 :2008/07/05(土) 06:37:48
まだ、意味が不明。ブラウザでクリックすれば、ブラウザがURLを合成して処理して開いてくれるよ。 リンク先の記事もよく意味がわからんが、jsの引数にあるファイルを指定してそれをパースしてそれをブラウザで開く? リンク元のファイルのURLと処理したいURLが相対ならURLの合成を書く必要があるが、それはXSLはまるで関係ないのでは? XSLTは単にXML->何かのテキストへの変換しかできない。
>>914 レスありがとうございます。
リンク先記事の考え方は、
TARGET_URLで指定したサイトへのリンク(正確には、指定した文字列から始まるhref属性)に対してMIME_TYPE等を設定し、その特定のMIME_TYPEを持ったファイルは指定したブラウザで開く、というものだと思います。(多分^^;)
そこで、リンクを抜き出す方法としてXSLを使用しており、リンク先の例だと
starts-with(@href,"
http://update.microsoft.com/ ")という条件下で要素を抜き出し、それに対してMIME_TYPEの設定を行っています。
ですので、私はhref属性を抜き出すXSLをどうにかすることで、何とかなるかと思ったのですが。。。やはりちょっと違いますか??
javascriptスレへ移った方がよろしいでしょうか。。
XSLはチューリング完全だから理論的にはできる。 でも面倒だから他の方法を考えたほうがいい。
>>915 言ってることがわけわかんねえよ。
相対URIが出てきたらそのノードのベースURIと合成すればいいだけ。
ベースURIはxml:baseで指定されるか、そうでない場合親ノードから継承される。
それで、ドキュメントノードのベースURIはドキュメントのURIそのもの。
URI合成の規則は先に挙がったRFCに書いてある。
918 :
902 :2008/07/05(土) 19:19:29
>>916 やっぱ他のアプローチを考えた方がいいですかねぇ。
もうちょっとやってみて駄目だったらjavascript板に行ってみます。
>>917 ノンスキル&説明下手で申し訳ありません;;
↑のjavascriptでは@hrefで拾ってきた要素に対してイベントリスナーを付加しているみたいなので、
hrefを拾ってきた後に絶対URIを作成したのでは遅い気がするのです。
ですので、hrefを抽出する条件で「このサイトのこのディレクトリ以下に所属するファイルかどうか」というものを設定すべきだと思うのですが。。。
見当違いでしたらすいません。
もしよろしければ具体例を教えては頂けないでしょうか?
すまんなあ。やっと何で話がかみ合わないのか解ってきたわ。 ここのみんなはキミがXSLで悩んでると思って答えてる。 キミがそう言ったからね。なのに実はキミはXPathの話をしていた。 なんでJavaScriptとかいう言葉が出てくるのか理解できなかったよ。
920 :
902 :2008/07/05(土) 22:33:43
ありゃ。。。 何か色々と混同しているようですorz javascriptではXPathを用いることができ、XSLでもXPathを用いることが出来る。 しかし、javascriptでXSLを使うってのは意味が分からん話で、あくまで使えるのはXPathを利用した実装である。 という解釈でしょうか? スレ違い、大変申し訳ありませんでした。javascript板で質問させてもらおうと思います。 ご迷惑をおかけしてすみませんm(__)m
DOMにはXPathを使って、ノードを選ぶ機能があるんだよ。 それで、JavaScriptからDOMの機能を使える。
そもそもjavascriptって今でいうDOM Level0を扱うためにネットスケープが作った言語だし。 それがjs1.4でesとDOMLevel1に仕様が分離されただけだし。
このスレの次スレのことを考えることになるとは思ってもいなかったな
スレタイはこのままでいいのかねえ
いいんじゃない?
最近のXML関連テクノロジで流行ってるのってなにかある?
それXML関係あるの? ドキュメント読んだ感じだと、ただのデータ構造記述言語みたいだけど。
XMLの代替という意味で関係あるね
文書をコンピュータで管理閲覧するための言語であるxmlとただのデータ記述言語を比べるな。 データ記述言語なんてJSONで十分。
932 :
706 :2008/07/10(木) 12:57:12
ASN.1だろ
xmlstarletのxml el xxx.xmlでパスの一覧が出ますが、パス=値 の一覧を出す方法はないでしょうか?
>>929 ぽいっつーか、まんまIDLだな。
あの説明の下のほうに「これでCOMコンポーネントのスタブを作れる」とか
書いてあってもなんら違和感なし。
どっちにしてもxmlの代替にはならん
代替つーか、いまは分野によっては なんでもXMLで表現すれば一気通貫で連携・処理できるぜ! と なんでそんなもんXMLで記述すんの。DSLで問題にあわせた記述を! が戦ってる最中だから。話題的には微妙にXMLがらみではある。
>なんでもXMLで表現すれば すでにこれが間違い
Web関係見てるとIIOPとかXML-RPCとかで,なんでもHTTPで通信すれば(ry みたいな風潮なのはちょっといただけない まぁマシンパワーでゴリ押しできる時代だし,ネットワークも図太くなってきてだんだん苦にならなくなってるのは事実だけど
いやHTTP1.1はとっくの昔に限界来てる。 ハイパーテキストにかかわらずマルチメディアを転送するプロトコルが必要。
ん?そうなのか・・・ コンテンツをbase64にエンコードしたりコンテンツ内部をマルチパートで記述したりとか色々やってると思うんだけどな そのうちXSDとかXMLの構造記述言語が発達してプロトコルまで記述出来るようになって application communication link/XMLとかでてきそうじゃないか.ありそうだが
まもなくOSもXMLで書ける時代が来るのです。
これからは音楽も動画もXMLで落ちてくるよ。
わすれちゃいけないオントロジ
945 :
デフォルトの名無しさん :2008/07/15(火) 14:48:42
長時間走らせるとstackoverflowがでる…
>>945 メモリか割り当てを増やすんだ。
XMLの道は富豪の道。
xmlでjavaのdomと一緒に使われてるフリーソフトとかゲームないかな?
日本語でおk
>>947 XMLでゲームシナリオを定義するフレームワークがあったようななかったような。
あれは条件に合うんじゃないか?
msofficeのxmlまじで嫌い
Apache cocoonをスタンドアロンアプリケーションに組み込んで使いたいと 思っているんだけど、どうやればいいのか、とっかかりのところで躓いています。 どこかに参考になるドキュメントがないでしょうか?
xpathですべてのElementに対して検索をしたいのですが、以下を指定するとエラーになります。 //* = ['21]' //[* = '21'] //[. = '21'] そもそもそんなことはできないのでしょうか?
javaなんですが、読み込んだxmlをコピーするのにいい方法ないでしょうか DocumentのrootエレメントをcloneNodeして新しいDocumentにappendChildしたら、 org.w3c.dom.DOMException: WRONG_DOCUMENT_ERR で怒られるんですよ。
>>952 //*[text()='21']
のこと?
>>953 異なるドキュメントのノードは混ぜられない。
Document.importNode() を見るんだ。
RELAX NGは?
XML の Schema で <foo a="..." /> または <foo b="..." /> のみを既定できるように したいのですがどう書けば良いのでしょうか? 属性に対する「いずれか必須」のような、 <xsd:choice> の属性指定版のようなものです。
959 :
デフォルトの名無しさん :2008/08/19(火) 01:16:42
初心者的な質問かもしれませんが、分からないので質問させてください <sc> <mem>あ</mem> </sc> この3行のxmlで無効な文字が見つかりました 〜〜ライン 2、位置 6 とでるのですが、 私が学んだ中で日本語文字が引っかかるというのは記憶がありません? どうすればいいのでしょうか?
>>959 そのXMLファイルはどうやって作った?
もしUTF-16やUTF-8になってないなら、<?xml encoding="..."?> が必要かも。
>>960 すみません、その通りでした。
ありがとうございます
>>958 XML Schemaではできないんだっけ
次のようなデータがあって…
<?xml version="1.0" encoding="shift_jis"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<main>
<customers>
<customer><name>yamada</name><off_id>2</off_id></customer>
<customer><name>suzuki</name><off_id>2</off_id></customer>
<customer><name>sato</name><off_id>1</off_id></customer>
</customers>
<offices>
<office><num>1</num><name>dev</name></office>
<office><num>2</num><name>eng</name></office>
</offices>
</main>
次のように表示したいのですが…
yamada : eng
suzuki : eng
sato : dev
どう書いたらよいのか分からんす。教えてくらさい。
<?xml version="1.0" encoding="shift_jis"?>
<xsl:stylesheet version="1.0" xmlns:xsl="
http://www.w3.org/1999/XSL/Transform ">
<xsl:template match="/">
<html> <body><xsl:apply-templates/></body> </html>
</xsl:template>
<xsl:template match="main"><xsl:apply-templates/></xsl:template>
<xsl:template match="customers"><xsl:apply-templates/></xsl:template>
<xsl:template match="customer">
<xsl:value-of select="name"/> : ???<br/>
</xsl:template>
<xsl:template match="offices"></xsl:template>
</xsl:stylesheet>
>>963 <xsl:variable name="customer" select="."/><xsl:value-of select="/main/offices/office[num=$customer/off_id]/name"/>
966 :
デフォルトの名無しさん :2008/09/09(火) 22:59:31
XPathってここでいいんかな //div[@id="hoge"] でdivを取得ついでに そのうしろにあるdivひとつだけも取得したいとき //div[@id="hoge"] | //div[@id="hoge"]/following-sibling::div[position()=1] ってやってるんだけど どうにも非効率でダサイようなきがする。 実際(//div[@id="hoge"])の部分がもっと複雑だったりすると同じ部分をこぴぺするのがだるいしあとで変わったとき間違えそうでいやだ。 もうちょっとスマートに (エレメントX + そのXの前後のエレメント1つ) をあらわす方法ないっすか?
967 :
1週間だけC++ :2008/09/09(火) 23:08:12
がは<がは> がは がはがは
>>966 //div[following-sibling::div[position()=1][@id="hoge"]]/following-sibling::div[position()<=2]
とか。
969 :
966 :2008/09/11(木) 21:45:25
>>968 ありがとう
一応同じ部分の繰り返しはないけど
けっこうトリッキーだなあ
XSLTから使う場合とか、変数を設定できる環境だったら、そうするのが一番だろうねえ。
今日xmlとxslとcss習い始めたポンコツですが、よくわからないので教えてください。
xhtml1.0に従って書かれたhtml拡張子のものがあってxml拡張子に変えるので、変えたところ
cssが適用できない?のでxslでxmlの中身を全文コピー?しようと思うのですが
<xsl:copy>を使ってがんばってみましたが画像のようになってしまいます。
xslどんな感じに書けばいいですかね?
ttp://www2.imgup.org/iup693104.jpg
早朝から乙。 どんなxmlとxsltを書いてるのか見てみないと答えようがないぜよ。 現象が再現するミニマムなコードを出せないもんかね。 …なんか属性だけコピーされてないようにも見えるが。
ブラウザのデフォルト CSS も読み込んでみたら?
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet xmlns:xsl="
http://www.w3.org/TR/WD-xsl ">
<xsl:template match="/">
<html>
<link rel="stylesheet" type="text/css" href="sample2.css" />
<xsl:apply-templates />
</html>
</xsl:template>
<!-- もとのxmlテキストの内容をそのままコピーします -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
全文そのままコピーしたいんだったら<xsl:copy-of>の方がよくね?
>>976 早レスthanks
ちょっといじってくるよ!
てか今のままでも全文コピーできてるんですかね?
古い処理系との互換性のための宣言に過ぎないから。 命令の始まりである&と<とだけに細工しておけばそれで済む。
XMLをXSLを使って変換する練習をしているんですが、あるXML文書
を↓のXSLスタイルシートを使ってJAVAのプログラムで変換しようとしています。
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="
http://www.w3.org/1999/XSL/Transform ">
<xsl:output method="xml" encoding="utf-8"/>
<!-- 文書 -->
<xsl:template match="/">
<root>
</root>
</xsl:template>
</xsl:stylesheet>
出来る文書の中身がが
<?xml version="1.0" encoding="utf-8"?><root/>
なんですが、問題は文字コードがShift_JISなのです。
これは使っているJAVAのプログラムがShift_JISしかはけないからだと思われますか?
エスパー質問ですが、よろしくです
>>981 どういう理由でShift_JISだと思ったの?
javaVMが実行時に吐く文字コードはVMオプションで強制できるぞ。
>>982 使用しているXML,・XSL書類の文字コード、タグの指定がすべてUTF-8なのに
Shift_JISで生成される理由がそれしか思いつかなくて。。。
>>984 だからどういう理由で、その文書がShift_JISだと思ったの?
こういうキモイ切り替えしして来る奴って実社会でも居るよなぁ。
大抵アラフォー未婚 or バツイチ ハゲ だが。
>>981 出力結果のどこに Shift_JIS 文字が入ってんだよ。
>>986 生成されるXMLファイルをエディタで開くとsjisで認識されます。
変換前のファイルはutf8で認識されるのですが。。。
出力結果のどこに Shift_JIS 文字が入ってんだよ。
>>988 XSLでの指定がアルファベットだったので、日本語も入れて実験したところ、
確かにUTF-8Nで保存されてました。失礼しました。
# xyzzyは自動認識に失敗してShit-JISで表示しようとして文字化けしてまし
たが、メモ帳などではUTF-8で見れました
次スレ要る? オレは規制で立てられないけども。