- - PR -
DTDを外部に置き、XTパーサーでHTMLを作る方法について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2002-03-15 18:56
初めてこちらに書かせて頂きます。私はXMLを勉強し始めてまだ間もないのですが、
JDK、XTなどをインストールしてXMLデータをXT(XSLT)でHTMLに吐き出すことはできました。 でも、DTDの文書型宣言(<!DOCTYPE・・・・・)をxmlデータに入れると 今まで動いていたパーサーで以下のようなエラーが出るのです。 「file:・・・・・・.dtd:66: Attribute name expected」 DTDの記述を使う時にはXSLスタイルシートの方にも何か記述したりしないと いけないのでしょうか?どなたかご理解・知識のある方のご回答お待ちしております。 | ||||
|
投稿日時: 2002-03-18 14:03
質問が抽象的ですいません。
一応、外部にDTDを指定してHTMLを作ることはできたのですが、 以下のような問題が残ってしまいました。 <!DOCTYPE・・・・・>のみだとHTMLは作れるが、 <!DOCTYPE・・・・・>の中に[<!ENTITY % ・・・・>]などを エラーが出てしまい、HTMLが作れないのです。 XML初心者なので、どんなささいなことでも良いのでご指摘願います。 パーサーはXTをしようしています。 | ||||
|
投稿日時: 2002-03-18 19:25
パラメータエンティティの使い方が間違っているのでは?
<!ENTITY % ・・・・>の部分を外部DTDに移すとOKなのでは? | ||||
|
投稿日時: 2002-03-19 10:31
やなぎ様、返答ありがとうございます。
私の参考本は「XMLクイックスタートガイド」で、P41の 「DTD用のショートカットを作成および使用する」という項目。 <!ENTITY % test.dtd SYSTEM "test.dtd"> %test.dtd 上記のような記述を<!DOCTYPE・・・>の中に入れてエラーが出ます。 ただ、上記のDTD用ショートカットという「%test.dtd」の部分を消すと動くのです。 <!DOCTYPE ・・・・test.dtd" [ <!ENTITY % test2.dtd SYSTEM "test2.dtd"> %test.dtd; ]> このやり方では間違っているのでしょうか。 まだ私も勉強不足な部分が多々あると思いますので、よく調べてみます。 やなぎ様には、私の抽象的な質問に返答して頂き感謝しております。 | ||||
|
投稿日時: 2002-03-19 12:06
%test2.dtd;の「2」が抜けているのが原因とか? または外部と内部、両方のDTDを使おうとしているので 宣言が重複しているとか? | ||||
|
投稿日時: 2002-03-19 17:38
>%test2.dtd;の「2」が抜けているのが原因とか?
す・・・すいません。これは私の打ち間違えでした。 <!DOCTYPE ・・・・test.dtd" [ <!ENTITY % test2.dtd SYSTEM "test2.dtd"> %test2.dtd; ]> このようなXMLデータをXSLスタイルシートでXTパーサーを使って HTMLを作ろうとすると以下のようなエラーが出るのです。 「file:・・・・・・test.dtd:66: Attribute name expected」 これが「宣言が重複している」というエラーなのでしょうか。 そもそも色々な本にDTDの説明はされているのですが、XSLTに関して 「HTMLを作る」ページになるとDTD記述を抜かしてサンプルが 書かれてあるので、すごく困ってますの。やなぎ様の返答助かります。 もう少し色々と調べてやってみたいと思います。 |
1