prasinos' work memo

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

RELAX NG Compact Syntax

XML Schema を読み書きするのにホントーに飽き飽きしているのですが、Atom Syndication Format の定義などで使われている RELAX NG Compact Syntax のチュートリアルを読んでみました。以前、XSD に慣れるために XSD から BNF へのコンバータを作っていましたが、そのとき作りたかったものはこれだ、と思いました。
スポンサーサイト

XSLT プロセッサ

なんかすぐ忘れるので書いておこう。

XSLT 処理系はブラウザに入っているので、XML を HTML にするような変換であれば XML に <?xml-stylesheet href="xxx.xsl" type="text/xsl" ?> とか書いておけば自動的にレンダリングまでやってくれる。

そうじゃなくて、XML から別の XML を作るときは、たとえば ruby だったら nokogiri とかが使える。 オンラインリファレンスより:

require 'rubygems'
require 'nokogiri'
doc   = Nokogiri::XML(File.read(ARGV[0]))
xslt  = Nokogiri::XSLT(File.read(ARGV[1]))
puts xslt.transform(doc, ['key', 'value'])

ま、でも、 libxslt の xsltproc とかのほうがずっと動作が速いので、速度が問題であればこっちを使ったほうがいいだろう。

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。