Tengo un XML que estoy analizando con un analizador SAX en Java. Comienza con este preámbulo:En referencia a una DTD local en Java
<!DOCTYPE math
PUBLIC "-//W3C//DTD MathML 3.0//EN"
"http://www.w3.org/Math/DTD/mathml3/mathml3.dtd">
¿Cómo puedo cambiar esto para usar una DTD local?
supongo que podría hacer algo como esto:
<!DOCTYPE math
PUBLIC "-//W3C//DTD MathML 3.0//EN"
"file:///c:/MathML/mathml3.dtd">
No es exactamente así, pero algo así. Sin embargo, necesito que la ruta sea independiente del sistema del usuario.
¿Cómo uso una DTD local con una ruta relativa a la ruta de clase?
posiblemente útil para mirar a esta pregunta: http://stackoverflow.com/questions/243728/how-to-disable-dtd-at-runtime-in-javas -xpath –
Otra posibilidad es utilizar un catálogo XML que resuelva el doctype en un archivo local sin cambiar el XML. Esto lleva el cambio a un parámetro para la invocación del analizador. –