【问题标题】:XML Error: Open quote is expected for attribute id associated with an element typeXML 错误:与元素类型关联的属性 id 需要打开引号
【发布时间】:2016-06-26 14:49:44
【问题描述】:

我正在尝试解析如下所示的 XML 文件:

<?xml version="1.0"?>
<!DOCTYPE COUNTRIES_CONTINENT PUBLIC 
           "-//XYZ//DTD Declarations(CountriesContinent)//EN" "dtds/countries_continent.dtd">
<COUNTRIES_CONTINENT>
   <CONTINENT id="6" name="Oceania" value="12">
       <COUNTRY name="Argentina"/>
       <COUNTRY name="Bolivia"/>
       <COUNTRY name="Brazil"/>
       <COUNTRY name="Chile"/>
        <COUNTRY name="Colombia"/>
        <COUNTRY name="Ecuador"/>
        <COUNTRY name="Guyana"/>
        <COUNTRY name="Paraguay"/>
        <COUNTRY name="Peru"/>
        <COUNTRY name="Suriname"/>
        <COUNTRY name="Uruguay"/>
        <COUNTRY name="Venezuela"/>
    </CONTINENT>
</COUNTRIES_CONTINENT>

具有以下 DTD 文件:

<!ELEMENT COUNTRIES_CONTINENT (CONTINENT+)>
<!ELEMENT CONTINENT (COUNTRY+)>
<!ELEMENT COUNTRY EMPTY>
<!ATTLIST CONTINENT id  CDATA  ID #REQUIRED>
<!ATTLIST CONTINENT name  CDATA #REQUIRED>
<!ATTLIST CONTINENT value CDATA #REQUIRED>
<!ATTLIST COUNTRY   name CDATA #REQUIRED>

我收到以下异常:

Open quote is expected for the attribute "id" associated with an element type "CONTINENT".

谁能指出哪里出了问题?

【问题讨论】:

    标签: java xml sax parseexception


    【解决方案1】:
    <!ATTLIST CONTINENT id  CDATA  ID #REQUIRED>
    

    属性类型可以是CDATAID,但不能同时是两者。这些类型中的每一种都有自己的规则来描述它们允许包含的值的范围。请检查您对id 的预期类型。

    http://www.w3schools.com/xml/xml_dtd_attributes.asp

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-25
      • 1970-01-01
      • 2015-05-14
      • 2018-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-25
      相关资源
      最近更新 更多