System.Xml.XmlReader Configuración. Propiedad DtdProcessing
En este artículo se proporcionan comentarios adicionales a la documentación de referencia de esta API.
La validación de definición de tipo de documento (DTD) se implementa mediante las restricciones de validez definidas en la recomendación W3C Extensible Markup Language (XML) 1.0 (cuarta edición). Los DTD usan una gramática formal para describir la estructura y la sintaxis de documentos XML compatibles; especifican el contenido y los valores permitidos para el documento XML.
La propiedad DtdProcessing admite cualquiera de los siguientes valores:
- DtdProcessing.Parse para habilitar el procesamiento de DTD.
- DtdProcessing.Prohibit para producir una XmlException excepción cuando se encuentra un DTD.
- DtdProcessing.Ignore para deshabilitar el procesamiento de DTD sin advertencias ni excepciones.
Para llevar a cabo una validación con una DTD, XmlReader utiliza la DTD definida en la declaración DOCTYPE de un documento XML. La declaración DOCTYPE puede apuntar a una DTD en línea o hacer referencia a un archivo DTD externo. Para validar un archivo XML con un DTD:
- Establezca la propiedad XmlReaderSettings.DtdProcessing en
DtdProcessing.Parse
. - Establezca la propiedad XmlReaderSettings.ValidationType en
ValidationType.DTD
. - Si la DTD es un archivo externo almacenado en un recurso de red que requiere autenticación, pase un objeto XmlResolver con las credenciales necesarias al método Create.
Importante
Si la DtdProcessing propiedad está establecida DtdProcessing.Ignoreen , no XmlReader notificará los DTD. Esto significa que dtD/DOCTYPE se perderá en la salida.