3

カスタム xml ファイルの doctype として別の .dtd ファイルを使用しています。

名前.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE name SYSTEM "names.dtd">
<names>
    <name>
        <text>Pep&eacute;</text>
        <creator>&lost;</creator>
        <history>&lost;</history>
    </name>
    <name>
        <text>Charles</text>
        <creator>James</creator>
        <history>&lost;</history>
    </name>
</names>

名前.dtd

<!ELEMENT name (text, creator+, history)>
<!ELEMENT text (#PCDATA)>
<!ELEMENT creator (#PCDATA)>
<!ELEMENT history (#PCDATA)>

<!-- Placeholder/unknown history or creator name -->
<!ENTITY lost "Lost in the depths of time.">
<!ENTITY eacute "é">

ただし、names.xml にアクセスしようとすると、次のエラーが発生します。

XML 解析エラー: 未定義のエンティティ 場所: http://localhost/.../names.xml行番号 5、列 18:

<text>Pep&eacute;</text>
---------^

明確にするために、names.xml と names.dtd は同じディレクトリにあり、http://localhost/.../names.dtdを使用しても機能しません。

<!ENTITYただし、これは内部<!DOCTYPEを入れると機能するようですnames.xml。誰でもこれについてアドバイスできますか?

4

2 に答える 2