我必须对我的 XML 和 DTD 进行验证,我的问题是,如果我删除了在 DTD 中定义为必填字段的 XML 标记会发生什么?它会继续在浏览器中显示 XML 吗?或者标记我一个错误?,或者在他的情况下作为验证这种情况?
附件一 DTD 和 XML
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Dispositivos SYSTEM "productosDTD.dtd"> <Dispositivos> <Dispositivo id="kos1000" nombreProducto="Cafetera" marca="Oster" precio="275 MXN"> <fechaImportacion> 05/04/1992</fechaImportacion> <precioAduana>85</precioAduana> <idPedido>Mtg08042013</idPedido> <nombreAduana>Viva Mexico</nombreAduana> <observacionesProducto> Excelente Estado :D </observacionesProducto> <fabricanteDispositivo nombre="La Rivera" calle="Av de las Granjas" numero="1230" delegacion="Azcapotzalco" entidadFederativa="DF" codigoPostal="02230" /> </Dispositivo> </Dispositivos>
和productosDTD.dtd
<?xml version="1.0" encoding="UTF-8"?> <!-- To change this template, choose Tools | Templates and open the template in the editor. --> <!-- TODO define vocabulary identification data PUBLIC ID : -//vendor//vocabulary//EN SYSTEM ID : http://server/path/__NAME__ --> <!-- TODO define your own vocabulary/syntax. Example follows: --> <!ELEMENT Dispositivos (Dispositivo*)> <!ELEMENT Dispositivo (fechaImportacion,precioAduana,idPedido,nombreAduana, observacionesProducto,fabricanteDispositivo)> <!ATTLIST Dispositivo id CDATA #REQUIRED nombreProducto CDATA #REQUIRED marca CDATA #REQUIRED precio CDATA #REQUIRED > <!ELEMENT fechaImportacion (#PCDATA)> <!ELEMENT precioAduana (#PCDATA)> <!ELEMENT nombreAduana (#PCDATA)> <!ELEMENT observacionesAduana (#PCDATA)> <!ELEMENT observacionesProducto (#PCDATA)> <!ELEMENT idPedido (#PCDATA)> <!ELEMENT fabricanteDispositivo (#PCDATA)> <!ATTLIST fabricanteDispositivo nombre CDATA #REQUIRED calle CDATA #REQUIRED numero CDATA #REQUIRED delegacion CDATA #REQUIRED entidadFederativa CDATA #REQUIRED codigoPostal CDATA #REQUIRED >