Volver al índice Examen 1 de septiembre de 2011

Resuelva los siguientes ejercicios guardando las respuestas en una carpeta con su nombre y apellidos. Los nombres de los ficheros están indicados en los enunciados (XYZ corresponde a sus propias iniciales, Nombre Apellido1 Apellido2)

  1. Documentos bien formados (XYZ_e110901_1.xml)

    El siguiente documento no está bien formado porque contiene errores. Corrija los errores (si para corregir algún error hay que inventarse una etiqueta o atributo, utilice un nombre que tenga relación con la información contenida en el documento).

    <?xml version=1.0 encoding=UTF-8?>
    <examen>
      <pregunta 1>
      XML significa ...
      </pregunta>
      <respuesta correcta>
      ... eXtensible Markup Language
      </respuesta>
  2. DTD (XYZ_e110901_2.xml)

    Escriba la DTD que corresponde al siguiente documento, incluyéndola en el propio documento).

    <?xml version="1.0" encoding="UTF-8"?>
    <software>
      <programa id="P0001">
        <nombre>Firefox <version>6</version></nombre>
        <fecha_publicacion año="2011" mes="agosto" />
        <sistema_operativo>Windows</sistema_operativo>
        <sistema_operativo>GNU/Linux</sistema_operativo>
        <sistema_operativo>Mac</sistema_operativo>
      </programa>
    </software>
  3. XPath (XYZ_e110901_3.txt)

    Dado el siguiente documento XML, escriba las expresiones XPath que devuelvan la respuesta deseada. La respuestas está indicada entre paréntesis y unas veces incluye las etiquetas y otras no). Escriba las expresiones XPath y los resultados obtenidos en el fichero txt.

    <?xml version="1.0" encoding="UTF-8"?>
    <premios_nobel>
      <individuos>
        <individuo sexo="mujer">
          <nombre>María Curie</nombre>
          <nacido pais="Polonia" fecha="1867"/>
        </individuo>  
        <individuo sexo="hombre">
          <nombre>Isaac Bashevis Singer</nombre>
          <nacido pais="Polonia" fecha="1902"/>
        </individuo>  
        <individuo>
          <nombre sexo="hombre">Mario Vargas Llosa</nombre>
          <nacido pais="Perú" fecha="1936"/>
        </individuo>
        <individuo>
          <nombre sexo="hombre">Gerhard Ertl</nombre>
          <nacido pais="Alemania" fecha="1936"/>
        </individuo>
      </individuos>
      <premios>
        <premio categoria="física">
          <año>1903</año>
          <premiado>María Curie</premiado>
          <motivo>descubrimiento radioactividad</motivo>
        </premio>
        <premio categoria="química">
          <año>1911</año>
          <premiado>María Curie</premiado>
          <motivo>descubrimiento radioactividad</motivo>
        </premio>
        <premio categoria="literatura">
          <año>1978</año>
          <premiado>Isaac Bashevis Singer</premiado>
        </premio>
        <premio categoria="física">
          <año>2007</año>
          <premiado>Gerhard Ertl</premiado>
          <motivo>procesos químicos en superficies sólidas</motivo>
        </premio>
        <premio categoria="literatura">
          <año>2010</año>
          <premiado>Mario Vargas Llosa</premiado>
        </premio>
      </premios>
    </premios_nobel>
    1. Nombre de ganadores de premios Nobel (María Curie, María Curie, Isaac Bashevis Singer, Gerhard Ertl, Mario Vargas Llosa)
    2. Premios ganados por María Curie (categoria="física", categoria="química").
    3. Nombre del premiado en 2007 (<premiado>Gerhard Ertl</premiado>)
    4. Países de origen de los premiados en Literatura (pais="Polonia", pais="Perú")
  4. XSLT (XYZ_e110901_4a.xml y XYZ_e110901_4a.xsl, etc.)

    Dado el siguiente documento XML, escriba las hojas de estilo XSLT que devuelvan la respuesta deseada y enlacelas desde el documento xml (uno para cada caso).

    <?xml version="1.0" encoding="UTF-8"?>
    <premios_nobel>
      <premios>
        <premio categoria="física">
          <año>1903</año>
          <premiado>María Curie</premiado>
          <motivo>descubrimiento radioactividad</motivo>
        </premio>
        <premio categoria="química">
          <año>1911</año>
          <premiado>María Curie</premiado>
          <motivo>descubrimiento radioactividad</motivo>
        </premio>
        <premio categoria="literatura">
          <año>1978</año>
          <premiado>Isaac Bashevis Singer</premiado>
        </premio>
        <premio categoria="física">
          <año>2007</año>
          <premiado>Gerhard Ertl</premiado>
          <motivo>procesos químicos en superficies sólidas</motivo>
        </premio>
        <premio categoria="literatura">
          <año>2010</año>
          <premiado>Mario Vargas Llosa</premiado>
        </premio>
      </premios>
    </premios_nobel>
    1. Premios
      <?xml version="1.0" encoding="UTF-8"?>
      <premios_nobel>
        <premio>María Curie (física, 1903)</premio>
        <premio>María Curie (química, 1911)</premio>
        <premio>Isaac Bashevis Singer (literatura, 1978)</premio>
        <premio>Gerhard Ertl (física, 2007)</premio>
        <premio>Mario Vargas Llosa (literatura, 2010)</premio>
      </premios_nobel>
              
    2. Ganadores
      <?xml version="1.0" encoding="UTF-8"?>
      <html>
        <table border="1">
          <tr>
            <th>Categoría y Año</th>
            <th>Ganador</th>
          </tr>
          <tr>
            <td>física 1903</td>
            <td>María Curie</td>
          </tr>
          <tr>
            <td>química 1911</td>
            <td>María Curie</td>
          </tr>
          <tr>
            <td>literatura 1978</td>
            <td>Isaac Bashevis Singer</td>
          </tr>
          <tr>
            <td>física 2007</td>
            <td>Gerhard Ertl</td>
          </tr>
          <tr>
            <td>literatura 2010</td>
            <td>Mario Vargas Llosa</td>
          </tr>
        </table>
      </html>
              
      Categoría y Año Ganador
      física 1903 María Curie
      química 1911 María Curie
      literatura 1978 Isaac Bashevis Singer
      física 2007 Gerhard Ertl
      literatura 2010 Mario Vargas Llosa
Esta página forma parte del curso "XML: Lenguaje de Marcas Extensible" disponible en http://www.mclibre.org
Autor: Bartolomé Sintes Marco
Última modificación: 31 de agosto de 2011

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.