重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

ある「AABBCC」のタグが記述されているXML文書が有ります。
その文書に対し下記のXSLで変換をすると

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-16" indent="yes" />

<xsl:template match="/">
<ABC xmlns="http://www.abcd.co.jp/Schema_1_1">
<xsl:apply-templates select="AABBCC" />
</ABC>
</xsl:template>

<xsl:template match="AABBCC">
<DEF>
<xsl:attribute name="ID">1</xsl:attribute>
</DEF>
</xsl:template>

</xsl:stylesheet>

下記のような出力を期待しているのですが、

<?xml version="1.0" ?>
<ABC xmlns="http://www.abcd.co.jp/Schema_1_1">
<DEF ID="1" />
</ABC>

何故か以下のようにDEFの属性に「xmlns=""」が追加されてしまいます。

<?xml version="1.0" ?>
<ABC xmlns="http://www.abcd.co.jp/Schema_1_1">
<DEF ID="1" xmlns="" />
</ABC>

まだ、XML,XSL共に勉強を始めたばかりでよく分かってないのでどうしてこのようなことが起こるのか、また対処法を教えてください。
アホな質問かもしれませんが、よろしくお願いします。

A 回答 (1件)

どのような環境で変換をしていますか?


ちなみに、JAXPで変換したところ期待している形で出力されました。

この回答への補足

返事が遅れて申し訳ありません。
実行環境は、Microsoft VB6.0のプログラム上で変換させています。
この中で利用しているのは、MSXMLドキュメントオブジェクト(Version4.0)です。
このプログラムは他の方が作られたものなので中身は良く分かってないのですが信用して使ってます。
しかし、このオブジェクトの設定が拙くて期待通りにならない可能性があるかもしれませんね。

補足日時:2003/12/15 14:00
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!