XML: ¿Un lenguaje no tan universal?

Jajaja! El título del post sé que será suficiente para que Ferdy se pase por este hilo... ;).

El caso es que el otro día, dando una vuelta por osnews se hablaba sobre XML y sus editores libres, y en los comentarios mucha gente habla sobre la eficiencia de XML, su uso demasiado extendido aún cuando no hace falta, y que realmente sólo es un producto de hace muchos años, que no se corresponde con la época actual...

Personalmente no he trabajado nunca con XML, era mi intención ponerme en breve, tras ir haciendo una pre-introducción... pero me asaltaron las dudas al leer todo esto.
1) Es XML realmente bueno ó estamos en un paso atrás.
2) Su "ineficiencia" es realmente perjudicial para su uso extendido?
3) Y esta ya de otra índole... ¿Por qué si Schema parece más avanzado, se siguie usando DTD?

Un saludooo!
Jajaja! El título del post sé que será suficiente para que Ferdy se pase por este hilo... .


Conseguido :P

El caso es que el otro día, dando una vuelta por osnews se hablaba sobre XML y sus editores libres, y en los comentarios mucha gente habla sobre la eficiencia de XML, su uso demasiado extendido aún cuando no hace falta, y que realmente sólo es un producto de hace muchos años, que no se corresponde con la época actual...


Como en /. y /.-es y similares allí comenta un % de trolls e imbéciles muy alto (en los comentarios). Así que los comentarios hay que tomarlos con pinzas.

1) Es XML realmente bueno ó estamos en un paso atrás.


Tiene su nicho; y si, es muy bueno.

2) Su "ineficiencia" es realmente perjudicial para su uso extendido?


Ineficiencia.... ¿mandé?

3) Y esta ya de otra índole... ¿Por qué si Schema parece más avanzado, se siguie usando DTD?


Aprende ambos y tu mismo te contestarás jeje. Schema es muy bueno pero esta menos extendido y es muuuuuucho más lioso que DTD.

Como cita de autoridad te remito al mismísimo ESR en TAOP; donde recomienda el uso de XML (y lo argumenta claro).

Salu2.Ferdy
Ferdy escribió:Como en /. y /.-es y similares allí comenta un % de trolls e imbéciles muy alto (en los comentarios). Así que los comentarios hay que tomarlos con pinzas.
Ya, por eso siempre prefiero contrastar la información... pero supongo que entre tanto comentario, tampoco todo será sin conocimiento de causa, y algo de verdad guardará. Así que bueno, me gusta conocer opiniones, pero buenas opiniones.

Ferdy escribió:cita:
1) Es XML realmente bueno ó estamos en un paso atrás.
Tiene su nicho; y si, es muy bueno.

El tema está en... ¿cuál es su nicho? En los comentarios de la página, se ponía como ejemplo, que aplicaciones que han pasado el formato de sus archivos a XML, han hecho que esos ficheros sean muuucho más grandes y han complicado tb el programa. Cosas como que un fichero pasara de 50Kb a 2MB en XML y cosas así. Por eso digo lo de, ¿cuándo utilizar XML y cuándo no?

Ferdy escribió:Ineficiencia.... ¿mandé?
Aquí se refieren a dos temas:
1) Inficiencia técnica: XML pesa demasiado. Resulta inconveniente estar pasando ficheros tan pesados para algunas cosas. Se consumen demasiados recursos.
2) Ineficiencia semántica: XML es antiguo, la estructura de árbol no es siempre conveniente con el lenguaje, no es natural. Como parte de esto remiten a varios análisis/comparaciones. Dos de ellos con REBOL (que ni idea de que existía) --> Análisis 1 y análisis 2. Por poner un ejemplo (extremista, por cierto), uno de los artículos termina con ésto:
REBOL:
It is better !
]

XML:
<sentence>
    <pronoun>It</pronoun>
    <verb>is</verb>
    <adjective>horrible</adjective>
    <punctuation>!</punctuation>
</sentence>
Jejeje! Y os reiréis de mí, pero me encanta la segunda forma/XML. Siempre he querido tener todo muuuy estructuradito y ordenado.

Ferdy escribió:Aprende ambos y tu mismo te contestarás jeje. Schema es muy bueno pero esta menos extendido y es muuuuuucho más lioso que DTD.
Tendré que hacerlo... aunque no sus quejéis cuando venga con mis tempestuosas paranoias.

Ferdy escribió:Como cita de autoridad te remito al mismísimo ESR en TAOP; donde recomienda el uso de XML (y lo argumenta claro).
No sabía que en The Art Of Unix Programming hablara de este tipo de cosas. Es un libro que acabaré pillando, pero ahora mismo tengo demasiada lectura; a ver si prontito...

Pos eso, opiniones, queremos opiniones!

Muchas gracias por todo.

Un saludo.
Desde mi experiencia de profano, que se la ha pegado más o menos con XML (ni mucho menos soy un experto), te comento sobre lo comentado por Ferdy

FuckingFreaky escribió:El tema está en... ¿cuál es su nicho? En los comentarios de la página, se ponía como ejemplo, que aplicaciones que han pasado el formato de sus archivos a XML, han hecho que esos ficheros sean muuucho más grandes y han complicado tb el programa. Cosas como que un fichero pasara de 50Kb a 2MB en XML y cosas así. Por eso digo lo de, ¿cuándo utilizar XML y cuándo no?


Hombre, una cosa está clara; ocupa menos un fichero de configuración
tradicional (el típico

nombre_parametro=valor;
.
.
.


que el XML

<parametros_de_no_sé_qué>
     <parametro name="nombredelparametro">valor</parametro>
      .
      .
      .
</parametros_de_no_sé_qué>


equivalente)

Además, el fichero de configuración XML exige un parser y un procesador extras al programa (o librerías que hagan esa función) para poder leerlo y procesarlo.

Así que sí, es más pesado, es más costoso de procesar y, a veces, (como en el ejemplo que has puesto más abajo) tedioso de escrbir. Ahora bien, es bastante más versátil, léxicamente muy rico y supone poco esfuerzo pasar de un dialecto XML a otro XML distinto.

De todos modos, el XML no sirve sólo para escribir ficheros de configuración.

Tiene sus ventajas y sus inconvenientes, como todo. Para algunas cosas será óptimo, para otras recomendable y para otras tantas una pésima solución.

Ya sabes, aprende y opina. A mí me parece enormemente interesante. y muy entretenido.
De todos modos, el XML no sirve sólo para escribir ficheros de configuración.


Yo incluso diría que es uno de los casos en los que peor se ha aplicado el concepto. (yo personalmente no lo usaría nunca para eso)

Salu2.Ferdy
Lo que estoy viendo es que XML se utiliza bastante como herramienta de cara a la traducción de muchos programas (como mínimo en los dos proyectos que estoy traduciendo).

Saludos
IMHO es más facil editar un fichero de configuración tipo:
parametro=valor;


que uno en xml, me parece una bobería estar señalando cosas que se pueden hacer con un :

#comentario para que sirve


Pero si hay amantes del xml...

Salu2 ;)
||Facil|| escribió:IMHO es más facil editar un fichero de configuración tipo:

que uno en xml, me parece una bobería estar señalando cosas que se pueden hacer con un :

Pero si hay amantes del xml...

Desde luego es más cómodo editar un fichero de configuración tipo fluxbox (atributo: valor) que openbox (con este horrible aspecto), pero hace dos o tres años, en 5º, tuve que programar un portal web en java que recibía los datos para la base de datos (horósocopos, datos de películas, etc.) desde diversas fuentes externas en .xml, y era una gozada olvidarse del parseo y que el dom o el sax te lo diese todo masticadito listo para almacenar. Cada cosa está para lo que está. Imagina que cada una de las fuentes te lo mandase en su propio formato binario, por ejemplo.
7 respuestas