- - PR -
データにHTMLのタグを埋め込みたいのですが…
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2002-07-25 18:05
以下要所を抜き出して質問をさせていただきます。
よろしくお願いします。 DTD内で以下の定義を行うとXMLのデータで<br/>等の タグでエラーが出ます。DTDを使わなければ問題ないの ですが、これを回避するうまい定義はありますでしょうか。 <!ELEMENT TEXT (#PCDATA) > <TEXT> HelloWorld <br/><br/> HelloWorld </TEXT> DTDを使わないというのも考えには考えたのですが 下記のように複数のファイルをくっつける必要があり、DTDを 使う必要がどうしても出てきてしまいます。DTDなしで 結合できる技があるなら、そちらでもOKなのですが……… <!ENTITY list0205 SYSTEM "main0205.xml" > <!ENTITY list0206 SYSTEM "main0206.xml" > <!ENTITY list0207 SYSTEM "main0207.xml" > <LIST> &list0205; &list0206; &list0207; </LIST> |
|
投稿日時: 2002-07-26 09:38
br を EMPTY で要素宣言するだけですみませんか。
(DTD とは何かを理解していると仮定して) エンティティーを アドホックな フラグメントの結合 (ドキュメントアッセンブル)に利用するのは少し目的外では。 なぜなら、文書の型宣言に 一時的な記述が混入することに なるから。(結合のネストがあったときどう処理します?) 普通は、XSLTで 結合とか、XInclude などを処理できるソフトを 作り処理するのが、これからの方向では? XML-DBに入れてまとめて取り出すのも可能かもしれません。 他の方向ではプレーンなテキスト処理で、チョキチョキ貼り合わす (XMLはテキストでもある) |
|
投稿日時: 2002-07-26 15:37
ありがとうございます。以下のようにして問題なく
動くようになりました(まだ詳しくわかってるわけでないので 本当に正しいのかどうかわかりませんが) <!ELEMENT TEXT (#PCDATA | br)* > <!ELEMENT br EMPTY > 後になりましたが、私がXMLを使おうと思ったのは日記に 属性をつけて検索をかけれると良いな、と思ったからなのですが 今までのフォーマットが 日付 内容(brやimg等のタグを含む) だったのを以下のような形にして、今までの内容を単純に コピペで<TEXT></TEXT>内に貼り付けるようと考え エラーが出て困ってたという次第です。 あまり良い形ではないのかもしれませんが… <!ELEMENT DIARY (DAY, ATRB, TEXT) > <!ELEMENT DAY (#PCDATA) > <!ELEMENT ATRB (#PCDATA) > <!ELEMENT TEXT (#PCDATA) > >普通は、XSLTで 結合とか、XInclude などを処理できるソフトを そうですね。xsl:variableな値を書き換えるぐらいだったら わかっているのですが………木を連結させる方向でやろうと 思います。それはサンプルがたくさんあるようなので見てみます。 >他の方向ではプレーンなテキスト処理で、チョキチョキ貼り合わす 最終的には3年分ぐらいのHTMLな日記(もちろん分割されてます)を 暇をみてXMLにしたいと思っているので…さすがにやめたいかな、と。 |
1