001-FilemakerのXML書き出しできた。
まいど。
なんだか色々身に入らないこの頃。なんでだろう。
ってことでとりあえずFileMakerでXMLを使った書き出し、できました。
■XSLTは楽しそう
今回これをやるためにXSLTのサイトを見に行っては色々調べた。
これ俺向いてるかも。
最初はとっかかりがないので「?」が多かったけど、色々サンプル見るうちにわかってきた。
ちょっと書籍を買おうかなぁって思っています。
xmlとxsltだけで、いろいろな出力やらなにやらできるのがいいね。
■思わぬところでDreamWeaver
マイミクのvaloonさんに教えてもらったのですが、XSLTを作るにはDreamWeaverが便利との事。
1)ファイルの新規作成の時にXSLTを選択
2)処理したいXMLファイルを選択
これだけでXMLのパラーメータ(っていうの?)を拾いながらXSLTを作ってく事ができる。
あらこれ便利。
簡単なXSLTならすぐに作れてしまう。
これがひとつの区切りとして大きかった。
ありがとうvaloonさん
■書き出したいフィールドは1つなので、これで動いた
とりあえず、あちこちパクリながら作ったのはこれ。
これでとりあえず希望のXMLテンプレートにレコードが吐き出されました。
<?xml version="1.0" encoding="UTF-8"?><!-- DWXMLSource="111" -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fmp="http://www.filemaker.com/fmpxmlresult" exclude-result-prefixes="fmp">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="fmp:FMPXMLRESULT">
<opml version="1.0">
<head>
<title></title>
<expansionState></expansionState>
</head>
<body>
<xsl:for-each select="fmp:RESULTSET/fmp:ROW">
<xsl:for-each select="fmp:COL">
<xsl:value-of select="fmp:DATA"/>
</xsl:for-each>
</xsl:for-each>
</body>
</opml>
</xsl:template>
</xsl:stylesheet>
でも結局別の問題があって、これは使わない事に……。
■問題解決のためには、もっと加工が必要
これ、FileMakerからの書き出しだからうまくいかないのかな?と思ったりしてるけど、きっとまだまだスキルが足りないんだと思う。
文字列の置換をしたかったのだけど、それはよくある質問のようだ。
文字列置換
http://www.geocities.co.jp/SiliconValley-Oakland/8718/faqxslt/#i05
これを組み込む事ができれば、Filemakerでよくある「改行ありのテキスト吐き出し」はできるようになる。
でもうまく動かないんだ。chooseとか。
ここは今後の勉強ですね。
なんにしてもxmlとxsltを処理するサーバー側のプログラムもあるだろうし。
それを使ってみたいなって思えるこの頃です。
ってことで。
今日は夜までいろいろやってみることにします。
仕事のような。そうでないような。
頂いた日記へのコメントもしないと。
タグ【FileMaker,XSL】