Saludos. Esto es como en la selva: a machetazos.
Un programa de Java analiza un archivo XML y me da el error:
[Fatal Error] xml-cajas_2010.xml:1:6: The processing instruction target matching "[xX][mM][lL]" is not allowed.
He estado buscando casos parecido en Internet y le he quitado cualquier espacio antes de la DTD, no sé si también debo quitarle todos los espacios y retornos de carro hasta que quede en una línea.
Este es el XML:
<?XML VERSION="1.0" RMD="ALL" ENCODING="UTF-8" ?>
<!ELEMENT anualidad>
<!ATTLIST anualidad valor CDATA #IMPLIED>
<!ELEMENT dia EMPTY>
<!ATTLIST dia fecha CDATA #IMPLIED tienda CDATA #IMPLIED prendas CDATA #IMPLIED operacion CDATA #IMPLIED ingresos CDATA #IMPLIED>
<!ELEMENT mes EMPTY>
<!ATTLIST mes nombre CDATA #IMPLIED tienda CDATA #IMPLIED prendas CDATA #IMPLIED operaciones CDATA #IMPLIED ingresos CDATA #IMPLIED>
<!ELEMENT caja EMPTY>
<!ATTLIST caja fecha CDATA #IMPLIED tienda CDATA #IMPLIED comentario CDATA #IMPLIED gasto CDATA #IMPLIED>
<!ELEMENT gastosMes EMPTY>
<!ATTLIST gastosMes fecha CDATA #IMPLIED gasto CDATA #IMPLIED>
<anualidad valor="2010">
<mes nombre="1" tienda="San Miguel" ventas="" operaciones="84" ingresos="6493"/>
<mes nombre="1" tienda="Duque" ventas="" operaciones="213" ingresos="18700" />
<gastosMes fecha="1" gasto="-597"/>
</anualidad>
¿Es el XML? ¿Es el código Java?