Ejercicio de DTD - Corregir errores de "bebidas.xml"
El siguiente documento XML ("bebidas.xml") está bien formado. Sin embargo, no es válido. Para que lo sea, realizar los cambios necesarios en dicho documento, pero sin modificar la DTD interna.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE bebidas [
<!ELEMENT bebidas (bebida)*>
<!ELEMENT bebida ((codigo | nombre), precio)>
<!ELEMENT codigo (#PCDATA)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT precio (#PCDATA)>
]>
<bebidas>
<bebida>
<codigo>L45</codigo>
<nombre>leche</nombre>
<precio>8</precio>
</bebida>
<bebida>
<precio>6</precio>
</bebida>
</bebidas>
Solución:
En este documento se guarda información sobre bebidas.
<bebidas>
<bebida>
<codigo>L45</codigo>
<precio>8</precio>
</bebida>
<bebida>
<codigo/>
<precio>6</precio>
</bebida>
</bebidas>
Errores detectados y corregidos
- Cada elemento "bebida" tiene que tener un hijo "codigo" o "nombre", pero no ambos.