次の非常に単純な XML ファイルがあります (この質問の目的のために、元のファイルから大幅に削除されています)。
<?xml version="1.0"?>
<!DOCTYPE root [
<!ENTITY % entities SYSTEM "test.dtd">
%entities;
]>
<root>
</root>
ファイルtest.dtd
は存在しますが、この質問の目的のために、空です。
問題は、oXygen XML エディターがエラーをスローすることです。
E [Xerces] Element type "root" must be declared.
%entities;
上記の行から行または記号を削除しても%
、oXygen は実際にはエンティティ ファイルを解析していないため、エラーはスローされません (したがって、明らかに、本物のエンティティが導入されると、それらへの参照は失敗します)。残念ながら、私が行った調査によると、Xerces はさまざまな理由でこのエラーをスローすることが示唆されており、この場合の問題を絞り込むことはできません。
エンティティが存在しない場合でも、エンティティが導入されたときにこのエラーがスローされるのはなぜですか? また、どうすればよいですか?
oXygen v10.3、それが重要な場合 (私の会社は 5 年前のソフトウェアのライセンスのみを取得しています :-( )