【发布时间】:2015-10-13 16:51:59
【问题描述】:
我有一个这样的 XML(简化版以便于理解):
<?xml version="1.0"?>
<PubmedArticleSet>
<PubmedArticle>
<MedlineCitation Owner="NLM" Status="In-Process">
</MedlineCitation>
<PubmedData>
</PubmedData>
</PubmedArticle>
</PubmedArticleSet>
我想从它的 DTD 开始创建一个 XML 解析器,使用 Delphi 的“XML 数据绑定”向导。
问题是“MedlineCitation”的描述在外部 DTD 中:
<!ENTITY % Medline PUBLIC "-//NLM//DTD Medline, 01 Jan 2015//EN" "nlmmedlinecitationset_150101.dtd">
%Medline;
第二个 DTD 文件与主 DTD 位于同一文件夹中。
向导会将“MedlineCitation”视为/解析为一个简单的字符串。显然,当我运行程序并尝试读取“MedlineCitation”时,它会崩溃并显示消息“Element MedlineCitation 不包含单个文本节点”。
DTD 1(主)
http://www.ncbi.nlm.nih.gov/corehtml/query/DTD/pubmed_150101.dtd
DTD 2 ('MedlineCitation')
http://www.ncbi.nlm.nih.gov/corehtml/query/DTD/nlmmedlinecitationset_150101.dtd
【问题讨论】:
标签: xml delphi xml-parsing schema delphi-xe