Sin dudas la mejor definición de XML nos la da el mata burros de wikipedia que dice así:
La tecnología XML busca dar solución al problema de expresar información estructurada de la manera más abstracta y reutilizable posible. Que la información sea estructurada quiere decir que se compone de partes bien definidas, y que esas partes se componen a su vez de otras partes. Entonces se tiene un árbol de pedazos de información. Ejemplos son un tema musical, que se compone de compases, que están formados a su vez con notas. Estas partes se llaman elementos, y se las señala mediante etiquetas.
Una etiqueta consiste en una marca hecha en el documento, que señala una porción de este como un elemento. Un pedazo de información con un sentido claro y definido.
Teniendo en cuenta esta definición podremos definir un XML para una lista de temas musicales de esta manera: Tanto MUSICA como tema son ambas etiquetas!
- <MUSICA>
- <tema titulo="Mi musica" />
- </MUSICA>
Como pueden observar la información está fragmentada pero a su vez está organizada de manera secuencial y en un orden jerárquico, digamos que MUSICA es el padre de tema porque cada uno de los tema que son nodos se encuentra dentro de la etiqueta MUSICA que agrupa todos los hijos o nodos tema.
Pero para que un archivo realmente cumpla con las normas de XML no solo debe respetar esta estructura jerárquica sino también debe incluir elementos obligatorios como es el tipo de codificación de lenguaje o prólogo.
- <?xml version="1.0" encoding="utf-8"?>
- <MUSICA>
- <tema titulo="Mi musica" />
- </MUSICA>
Como pueden observar se agrego una nueva línea en la parte superior del XML que cumple con la función de indicar el tipo de versión 1.0 y el tipo de codificación de lenguaje utf-8 que en este caso es para poder nosotros usar alfabeto español dentro de la estructura del XML.
Otro elemento importante de un XML son sus atributos y estos son elementos que están indicado dentro de una etiqueta y anteponiéndose al signo igual (=), estos atributos nos son de gran utilidad si es que queremos incluir información extenza, si observan en el ejemplo verán que titulo=”la dormida” es un atributo y su contenido es la dormida. La manera correcta de escribir un atributo es no usar letras como ñ o acentuadas como nombre de atributo. Posterior al signo igual (=) entre comillas ya sean dobles o simples indicamos el valor del atributo la dormida.
El valor del atributo si puede tener espacios, ñ o acentos lo que si deben tener cuidado con el uso de las comillas, si para encerrar el valor del atributo usando comillas dobles y necesitamos volver a utilizar comillas, en este caso dentro del valor pondremos comillas simple, o viceversa.
Los atributos son usados en la mayoría de los casos para representar información corta, por ejemplo duración del tema, nombre del tema, autor pero si quisiéramos almacenar una descripción sea del tema o del disco ya no es para nada aconsejable usar un atributo para dicho fin, en ese caso nos haremos uso de una nueva etiqueta llamada CDATA.
CDATA nos permite dentro de ella colocar todo el texto que queramos y el XML ignorara todos los caracteres internos de este, cosa que ninguna palabra que este allí sea confundida por una etiqueta.
- <?xml version="1.0" encoding="utf-8"?>
- <MUSICA>
- <tema titulo="Mi musica">
- <![CDATA[aqui el texto]]>
- </tema>
- </MUSICA>
Como pueden observar las etiquetas CDATA están dentro del cuerpo de cada por lo tanto seguimos respetando el orden jerárquico de orden de padres a hijos. También es importante respetar la sintaxis de escritura del CDATA de la siguiente manera:
- <![CDATA[aqui el texto]]>
Conclusion, indispensable nunca olvidarse:
1º Prólogo:
- <?xml version="1.0" encoding="utf-8"?>
Siempre al principio de nuestro XML y solo lo indicamos 1 vez
2º Cuerpo:
- <MUSICA></MUSICA>
Es la etiqueta superior que abarcara todas las sub etiquetas y no abra ni existirá ninguna fuera de ella, esta se declara y se cierra una sola vez.
3º Nodos:
- <tema titulo="Mi musica" />
Pueden existir cuanta cantidad de nodos necesiten pero siempre cuando se abre uno “<" se deben cerrar en alguna parte “/>”, estos nodos pueden tener el mismo nombre de nodo y cada uno será interpretado como elementos diferentes.
4º Atributos: nombre=”Kevin Chuca”
Los atributos deben ir dentro del nodo y utilizar un nombre lo mas descriptivo posible y corto, su contenido se escribe a continuación del signo = y entre comillas sean simples o dobles. Si usan comillas dobles deberán usar dobles para el resto de sus atributos o viceversa.
5º CDATA:
- <![CDATA[aqui el texto]]>
Por cada nodo puede existir un CDATA
XML según Wikipedia:
XML según w3schools
XML finalizado:
- <?xml version="1.0" encoding="utf-8"?>
- <MUSICA>
- <tema titulo="Mi musica1">
- <![CDATA[aqui el texto]]>
- </tema>
- <tema titulo="Mi musica2">
- <![CDATA[aqui el texto]]>
- </tema>
- <tema titulo="Mi musica3">
- <![CDATA[aqui el texto]]>
- </tema>
- </MUSICA>
24 abril, 2009 at 2:22 pm
Gracias Leo!!
son geniales tus explicaciones. Estoy iniciandome en codigo, y es muyyyy dificil encontrar tutoriales claros y sin errores. Es un placer aprender de esta forma, teniendo en cuenta que para cursar presencialmente aca en Capital Federal te roban la sangre, la unica que nos queda es estudiar todo lo que podamos a traves de internet. Asi que nuevamente gracias y seguire chusmeando tu sitio en busca de mas informacion util!
Saludos!
Carolina
27 diciembre, 2009 at 6:21 am
Gracias Caro!
21 marzo, 2010 at 4:40 pm
Excelente este tutorial, sos un grande .
Los que intentamos en forma autotidacta progresar te agradecemos mucho
2 mayo, 2010 at 11:09 am
gracias, no se de donde sacais el tiempor para plasmar tanta y tan buena información, los que aprendemos de la WWW
nunca os lo agradeceremos bastante.
espero poder colaborar algún dia
3 septiembre, 2010 at 11:58 am
hola, si quiero crear un modulo de podcast en la plataforma joomla qué debo realizar, hasta ahora se q debo crear un archivo .xml y tener el audio en un servidor en formato mp3. gracias
25 octubre, 2010 at 7:37 pm
estoy empezando en esto del xml, y esto me esta sirviendo de gran ayuda . Gracias por el aporte
24 noviembre, 2010 at 4:55 pm
Gracias. es muy util esta informacion, esto empezando a entenderlo.
22 enero, 2011 at 11:21 am
Pues yo no entendí ni madres… la verdad estoy neófito en la materia.
12 febrero, 2011 at 11:28 am
estoy empezando con archivos en xml y necesito saber mas sobre este tema, sera que alguien me puede colaborar?
28 febrero, 2011 at 5:29 pm
para su conocimiento
28 febrero, 2011 at 5:36 pm
Excelente explicación, me ha quedado más claro. Gracias
4 marzo, 2011 at 4:52 pm
una explicacion muy detallada, gracias por dar tu conocimiento a los demas, ya que sobre este tema es dificilisimo encontrar informacion facil de comprender, saludos
28 mayo, 2011 at 5:37 pm
Me resultó muy útil la información, estoy recién ingresando en el tema!!!
7 octubre, 2011 at 1:24 pm
Mil Gracias Leo
Desde Colombia veo tu tutorial y es impecable, de verdad muchas gracias por tu ayuda y tiempo es un tema que nos saca canas a muchos. :)
QUE GRAN TRABAJO
Felicitaciones
Pingback: ”Conceptos de XML” | rickardooo
18 octubre, 2011 at 9:40 pm
bueno yo creo que ya todos te dieron mencion honorifica yo solo te puedo decir que eres un mostro como decimos en mi pais, maldito jefe de produccion!!
gracias Mounstro!!
23 octubre, 2011 at 4:33 am
Te felicito, muy bien explicado el tema.. lo q si te sugeriría es q continúes y no te quedes aka, xq esto solo es la inicialización y me gustaría seguir aprendiendo mucho, mucho más… Saludos desde Guatemala!!!
10 diciembre, 2011 at 1:38 pm
SOY TAN NUEVA, QUE ES MUY POCO LO QUE PUEDO APLICAR DE TU EXPLICACIÓN, QUE AUNQUE ES MUY CLARA Y SIMPLE, SIGUE SIENDO DESCONOCIDA PARA MÍ. TU EJEMPLO CON RESPECTO A MÚSICA, NO ME ES POSIBLE APLICARLO A MI CASO DE MASCOTAS. ME ENCANTARÍA PODER HACERLO. PERO NO CONOZCO A NADIE QUE SEPA DE ESTO. ALQUIEN PUEDE AYUDARME PUNTUALMENTE?
1 enero, 2012 at 5:15 pm
LEO muchas gracias por tu explicación, aparte de leer tu respuesta a la pregunta que yo le hice a la WEB, acerca de ¿QUE ES UN ARCHIVO XML? y ver que ya existía en ella leí ademas los agradecimientos para tu gentil respuesta, y fué ello lo que motivo que te dejara este mensaje, muy por el contrario de lo que contestaron los demas yo te diré que NO ENTENDÍ NADA DE LO QUE EXPLICASTES, porque que no es de mi área o de lo que yo entiendo que es de edición de videos, lo gracioso de esto es que por mis conocimientos una chica me dió un disco CD para que le diga si hay en el mismo un tema musical grabado de un artista cruzdelejeño que al ser muy amigo de la chica quería que lo escuchara, al no poder hacerlo me lo dio y yo me encuentro con que hay adentro un archivo XML, así que con tristeza no entendí nada pero me enorgullezco de que existan personas como vos que expliquen tan desinteresadamente sus conocimientos tratando de ayudar a los demas, muchisimas gracias LEO.
P.D. el único problema es que no sé como contestarle a la chica que tiene o que no tiene el CD,que le suministró el artista cruzdelejeño.
Pingback: Competencia I Consulta de Archivos CVS y Archivos XML « Administracion y Organizacion de Datos
Pingback: competencia I .- consulta de archivos CSV y XLM | cristinahwh
Pingback: Competencia I – Consulta de archivos CSV y XML | carlosbadillo
Pingback: Competencia I – Consulta de archivos CSV y XML « fabiolamedinarosales
Pingback: competencia I-consulta de archivos csv y xml | judithelenasf
8 febrero, 2012 at 11:55 am
Gracias Leo ,es clara y consisa la información aunque soy medio tronco y autodidacta me ayuda a comprender mejor el lenguaje informático que es de por si algo complejo
2 abril, 2012 at 5:57 pm
Hola contrate un sericio de streaming y el proveedor solo me dio un flash player
y solo me dijo que subiera el swf a mi web y que editara el archivo puerto.xml por el puerto de mi radio que es 5012
el contenido del xml es este
5012
ahora estoy creando un sitio con dreamweaver no se como poner esos archivos
17 mayo, 2012 at 10:07 am
amigos quiero instalar una plantilla en joomla y me dice que no existe el archivo xml que tengo que hacer. gracias amigos desde colombia con mucho armor
17 mayo, 2012 at 9:39 pm
podrías hacer un ejemplo de una factura electrónica donde entre el archivo XML
por favor gracias saludos.
13 junio, 2012 at 5:11 pm
Gracias por el aporte muy interesante tu sitio, es lo mas claro que encontre en internet, saludos de Salta-Argentina
2 septiembre, 2012 at 9:15 pm
Mi pregunta es ¿y cómo utilizo esa informacion?, ¿Con qué programas?, ¿Hay algun video?, agradeceria tu respuesta
Saludos cordiales
Percy
2 mayo, 2013 at 7:08 am
por qué no consigo ver los ejemplos? la explicación sola está muy bien pero sin los ejemplos no es del todo completa….por favor, alguien podría ayudarme?
6 mayo, 2013 at 6:48 pm
Leo
muy buena explicacion y sencilla sobre todos los que queremos aprender XML.
muchas gracias en nombre de todos. :)