[cafe-sd] qué es xml [era: Re: [asamblea-sd] Ayuda para utilizar Soupermail]

Quique quique at sindominio.net
Wed Jan 23 10:16:11 CET 2002


Miquel <miquel at sindominio.net> dijo:

> amorrua dijo:
> 
> > > Por cierto, otra pregunta de novato, que es eso de la traduccion a XML, 
> > > que es XML, algun nuevo lenguaje para las paginas web. Me parece que me 
> > > voy a tener que hacer un diccionario de nuevos terminos tecnologicos de 
> > > estos para la informatica e internet y todo eso.
> > 
> > Yo tampoco tengo muy claro del todo que es. Solo se que es un lenguaje de 
> > programacion de paginas web y que las paginas corporativas de SD se estan 
> > traduciendo a este lenguaje. (Y quizas si te hayas perdido algun mensaje 
> > de la asamblea, porque hace no mucho alguien comento esto de que se 
> > estaban traduciendo las paginas de SD a XML :-)
> 
> no es un lenguaje de programacion ni siquiera necesariamente de paginas web
> (en el sentido en que lo es el HTML o el XHTML, que son simples DTDs). XML
> es un **metalenguaje** es decir, un lenguaje para describir otros
> lenguajes (uno de ellos, el XHTML 1.0 que usamos en sinDominio). Cualquiera
> puede diseñar su propio lenguaje de marcas personalizado y, facilitando el
> DTD, que los demas puedan interpretarlo correctamente. XML es una version
> abreviada de SGML -suprime parte de las funcionalidades del SGML, que son
> innecesarias para la web y tampoco es obligatorio un DTD- y fue definido
> por la W3 Consortium de Berners-Lee (el creador del web), la institucion
> que es el autentico garante de una web abierta y universal. Es una
> herramienta estrategica para todos los que pensamos en una red
> "autocomprensiva", es decir, la llamada web semantica, que permitiria a las
> maquinas reconocer y "entender" los recursos que hay en ella. El web
> semantico será un salto cualitativo en el modo en el que entendemos ahora
> mismo navegar por la red, y no solo porque las personas podremos buscar de
> acuerdo a conceptos mas naturales e inteligentes (no por URLs), sino que
> las maquinas sabrán reconocer recursos y actuar en consecuencia. La
> informacion ya no estará en bruto, sino localizable por criterios de
> contenido.
> 
> Vereis que nuestros compañeros de webmasters han puesto en todas las
> paginas corporativas un logo al pie de "XHTML 1.0 compliant". Eso significa
> que nuestras paginas cumplen con esa especificacion del W3C. XHTML es una
> version XML del HTML, o sea, una implementacion del HTML siguiendo las
> estrictas normas estructurales y sintacticas del XML.
> 
> espero haberlo aclarado o no haberlo liado mas... si algo no queda claro,
> pasadlo a cafe at sd que habrá gente que lo explique mucho mas claro que yo...

aunque todo lo que ha dicho miquel es correcto, intentaré explicarlo de manera
más sencilla.

érase que se era el sgml: standard generalized markup language. más que un
lenguaje en sí mismo, es un sistema de especificaciones muy generales para
crear lenguajes de marcas.

en su nacimiento, el html (hypertext markup language) tenía formato sgml.
sin embargo con el tiempo fue evolucionando de manera muy dispersa.
al tiempo que los diseñadores exigían tener mayor control de la presentación,
los programadores demandaban que estuviera más orientado al contenido, para
poder interactuar con bases de datos, otras páginas, etc

entre tanto nació el xml (extensible markup language). el xml es un
subconjunto de sgml, con especificaciones más concretas, pero que no define
etiquetas. 

cualquiera puede crear un conjunto de etiquetas que cumpla las normas del xml,
lo que se llama una dtd (document type declaration). 

básicamente una dtd es una gramática de las etiquetas del lenguaje que
creemos. por ejemplo:
- "agenda" puede contener 0, 1 o más personas. 
- "persona" debe contener 1 (y solamente 1) nombre, y debe contener 1 (o más)
teléfonos.

un ejemplo de xml sería pues:

<agenda>
   <persona>
      <nombre>Juan</nombre>
      <telefono>976-12.34.56</telefono>
   </persona>
   <persona>
      <nombre>Perico</nombre>
      <telefono>976-78.90.12</telefono>
      <telefono>652-13.57.92</telefono>
   </persona>
</agenda>

como vemos está fuertemente orientado al contenido, y se define por sí mismo.
esto hace que sea fácil crear índices, interrelacionar documentos, hacer
consultas, etc. el formato xml resulta pues muy útil para intercambiar datos
entre aplicaciones, etc. por ejemplo el formato de los documentos de gnumeric
y abiword es xml.

otro ejemplo de xml es docbook, una dtd orientada a la creación de libros y
artículos. a partir de una fuente xml, usando transformaciones, es posible
pasar a prácticamente cualquier otro formato (latex, por ejemplo).


como explicaba antes, aunque el html nació como una aplicación de sgml, poco a
poco fue creciendo sin rumbo fijo, y con muchas ambigüedades. para solucionar
esta situación, se reescribió la última especificación de html (4.01)
siguiendo las normas del xml. esto es lo que se llama xhtml.

el xhtml es prácticamente igual que el html, pero con algunas diferencias.
por ejemplo todas las etiquetas (incluso img, hr o br) deben cerrarse.
además el xhtml está orientado al contenido, por lo que se ha suprimido todo
lo referente a la presentación, que ahora recae en las hojas de estilo en
cascada (css).

el xhtml es más estricto que el html tradicional. esto nos garantiza que una
página escrita en xhtml válido se va a ver en absolutamente cualquier
navegador. otra cosa es la presentación, pues el soporte de las hojas de
estilo en los navegadores es todavía bastante irregular.

sobre xml y sgml se pueden escribir libros completos (en docbook :-) ), pero
como introducción rápida creo que ya vale. espero no haber cometido
inexactitudes de bulto, en todo caso por aquí hay gente que controla más que
yo y que podrá corregirme.

saludos,
 quique


-- 
Plus ça change, plus c'est la même chose.
   Alphonse Karr. Les Guêpes.







More information about the cafe mailing list