- PR -

VBからXMLファイルの生成について

1
投稿者投稿内容
千葉
会議室デビュー日: 2001/08/27
投稿数: 1
投稿日時: 2001-10-25 14:32
みなさんはじめまして。
千葉と申します。
VBからDTDファイルを読み込み、XMLファイルをファイルを生成しようとしています。
MSXML.DLLでどうしても
<!DOCTYPE XXXXX SYSTEM "XXXXX.DTD">
を生成するメソッドが見つけられません。
無いのでしょうか?
なければどのような方法をとったらベストなのか、みなさんご教授お願いいたします。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2001-10-26 13:47
$ MSXML.DLLでどうしても <!DOCTYPE XXXXX SYSTEM "XXXXX.DTD">
$ を生成するメソッドが見つけられません。

荒技ですが、最終の文字列出力の直前に、文字列変数の頭部を、文字列操作ですり替えるのを見た事があります。
そこでは<?xml … UTF-16"?> を Shift_JIS にしていました。

回答0なのは何なので、あまり役立たないかもしれませんが
井上孝司
ぬし
会議室デビュー日: 2001/09/08
投稿数: 668
お住まい・勤務地: 東京都
投稿日時: 2001-10-26 15:16
DOCTYPE 宣言は XML の要素ノードではないので、DOM で動的には生成できない
ような気もします。(XML-Schema なら可能かも ?)
そこで、さらに荒技ですが、XML 宣言、ルート要素、それと DOCTYPE 宣言だけ
を記述した「ベースになる XML 文書」を準備しておき、それを読み込んだ上で
必要なノードを追加していく、というのは駄目でしょうか。
_________________
www.kojii.net
ocean
会議室デビュー日: 2001/10/07
投稿数: 7
投稿日時: 2001-10-30 02:26
var xml = new ActiveXObject("MSXML2.DOMDocument");
xml.async = false;
xml.load("data.xml");

var xsl = new ActiveXObject("MSXML2.DOMDocument");
xsl.async = false;
xsl.load("dtd.xsl");

alert(xml.transformNode(xsl)); // OK

// IXSLProcessor を使うと最高の性能がでると思います。
// ただ、DTDを用意しなかったせいか、こちらでは出力が空でした。


//////////////////////////////////
// dtd.xsl

<?xml version="1.0" encoding="UTF-16"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="xml" doctype-system="HOGE.DTD"/>

<xsl:template match="/">
<xsl:copy-of select="."/>
</xsl:template>

</xsl:stylesheet>

1

スキルアップ/キャリアアップ(JOB@IT)