Mortuux

Diario de un estudiante geek. Informática, tecnología, programación, redes, sistemas operativos, bases de datos…

Evitar los atributos en XML.


Algunos de los problemas de (ab)usar de los atributos en XML son:

  • Los atributos no pueden contener valores múltiples. (Los elementos sí)
  • Los atributos no pueden contener estructuras en árbol. (Los elementos sí)
  • Los atributos no se pueden extender fácilmente (para futuros cambios)

Los atributos son difíciles de leer y mantener. Para datos es mejor utilizar elementos. Usa atributos para información que no sea relevante para los datos.

dia=”10″ mes=”01″ anio=”2008″
para=”Marcos” de=”Adrian” asunto=”Recordatorio”
contenido=”No te olvides de mi cumpleaños eh :P”>
</nota>

El código anterior es complicado de leer, y ya que estamos no es para nada bonito. La forma más correcta sería:

<nota>

<fecha>

<dia>10</dia>

<mes>01</mes>

<anio>2008</anio>

</fecha>

<para>Marcos</para>

<de>Adrian</de>

<asunto>Recordatorio</asunto>

<contenido>No te olvides de mi cumpleaños eh:P</contenido>

</nota>

 

Un uso que podemos dar a los atributos en XML es para metadatos, es decir, datos sobre los datos. Por ejemplo:

<nota id=”200″>

<fecha>

<dia>10</dia>

<mes>01</mes>

<anio>2008</anio>

</fecha>

<para>Marcos</para>

<de>Adrian</de>

<asunto>Recordatorio</asunto>

<contenido>No te olvides de mi cumpleaños eh:P</contenido>

</nota>

Esta nota tiene un id “200”, y otra nota cualquiera tendrá otro id diferente, para así diferenciar las posibles notas que haya.

Anuncios

2 Respuestas a “Evitar los atributos en XML.

  1. Javier 25 octubre 2012 en 22:59

    Hola, me puedes explicar este tema mejor?

    Los atributos no pueden contener valores múltiples. (Los elementos sí)
    Los atributos no pueden contener estructuras en árbol. (Los elementos sí)
    Los atributos no se pueden extender fácilmente (para futuros cambios)

    Con algún ejemplo?

  2. izzukay 20 febrero 2013 en 20:03

    Vaya. A mí me pasa casi lo contrario. Meto múltiples valores en los atributos, los leo más claramente que los elementos y los extiendo a placer. Las cosas de la vida… 🙂

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: