my notebook blog : XML

Node.js で XML文書をパース

大量のXML文書から InDesign 文書を生成する必要が生じたので、Node.js での XMLパース方法をメモ。

continue reading……

いわゆる PI と呼ばれる ProcessingInstruction に JDOM でアクセスする方法

こんな XML文書があったときに <?xml-stylesheet href="style.xsl" type="text/xsl"?> に 該当する内容に JDOM でアクセスするにはどうしたらいいの?という話。

<?xml version="1.0"?>
<?xml-stylesheet href="style.xsl" type="text/xsl"?>
<html>
<body><h1>hello</h1></body>
</html>

continue reading……

InDesign , XML文書からテーブルを生成する

InDesign では XML文書を流し込み組版するための仕組みが予め備わっています。 所定のルールでXMLを書いておき、それを所定の方法で読み込めばよいだけです。

continue reading……

XSLT変換処理あれこれ

諸事情によりいろいろな方法でXSLTによるXML変換をするので、そのやり方メモ。 saxon, xsltproc, ant を使う。

continue reading……

XSLTで内容をコピーした上で XPATHで指定した位置に要素を追加する記述

title要素の前に border 要素を追加したいなど、 変換後のXMLに要素などを追記するという XSLの記述はよく使うのでメモ。

変換元のXML

<?xml version="1.0" encoding="UTF-8"?>
<book>
  <chapter>
    <sect1>
      <title>設置と接続</title>
    </sect1>
  </chapter>
</book>

この XMLのタイトル要素の前に border 要素を追加したい…以下のように。

<border />
<title>設置と接続</title>

これをやってみます。

continue reading……

XPath で指定した特定部分だけをXML文書から抜き出すスタイルシート

XML文書から XPath で指定した部分だけを抜き出したい。 XSLTではデフォルトの変換規則があるため、これが意外に難しかったのでメモ。
(デフォルト規則が分かっていれば難しいことはない。)

XPathで指定した部分を取り出したいだけならば、xpathコマンドを使えばOK.
Ubuntu などでは、apt-get install libxml-xpath-perl でインストールできます。
以下のように使えます。

$ cat sample.xml | xpath -q -e "/book/chapter/title/text()"

continue reading……


Older Posts »