Network Working Group M. Rose Petición de Comentarios: 2629 Invisible Worlds, Inc. Categoría: Informativo Junio 1999 Cómo escribir I-D y RFC con XML Estado de este memorándum Este documento proporciona información para la comunidad Internet. No es la especificación de ningún estándar de Internet. La distribución de este memorándum no está limitada. Nota de Copyright Copyright (C) The Internet Society (1999). Todos los derechos reservados. Resumen Aquí se presenta una técnica para usar XML ('Extensible Markup Language') como formato fuente para los documentos de las series Borradores-Internet ('Internet-Drafts', I-D) y Petición de Comentarios ('Request For Comments', RFC). Rose Informativo [Pág. 1] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Indice 1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Cómo usar la DTD para escribir I-D y RFC . . . . . . . . . . 4 2.1 Conceptos básicos de XML . . . . . . . . . . . . . . . . . . 4 2.2 Elementos iniciales . . . . . . . . . . . . . . . . . . . . 6 2.2.1 El elemento 'title' . . . . . . . . . . . . . . . . . . . . 7 2.2.2 El elemento 'author' . . . . . . . . . . . . . . . . . . . . 7 2.2.3 El elemento 'date' . . . . . . . . . . . . . . . . . . . . . 8 2.2.4 Elementos de metadatos . . . . . . . . . . . . . . . . . . . 8 2.2.5 El elemento 'abstract' . . . . . . . . . . . . . . . . . . . 9 2.2.6 El elemento 'note' . . . . . . . . . . . . . . . . . . . . . 9 2.2.7 Estado, Nota de Copyright, Índice . . . . . . . . . . . . . 10 2.2.8 Resumen de los elementos iniciales . . . . . . . . . . . . . 10 2.3 Elementos centrales . . . . . . . . . . . . . . . . . . . . 12 2.3.1 El elemento 'section' . . . . . . . . . . . . . . . . . . . 12 2.4 Elementos finales . . . . . . . . . . . . . . . . . . . . . 18 2.4.1 El elemento 'references' . . . . . . . . . . . . . . . . . . 18 2.4.2 Apéndices . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4.3 Estado del Copyright . . . . . . . . . . . . . . . . . . . . 19 3. Como procesar el archivo fuente XML . . . . . . . . . . . . 20 3.1 Edición . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.1.1 Pruebas . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.2 Conversión a formato de texto . . . . . . . . . . . . . . . 21 3.3 Conversión a formato HTML . . . . . . . . . . . . . . . . . 21 3.4 Presentación . . . . . . . . . . . . . . . . . . . . . . . . 21 3.5 Búsquedas . . . . . . . . . . . . . . . . . . . . . . . . . 21 4. Consideraciones de seguridad . . . . . . . . . . . . . . . . 23 Referencias . . . . . . . . . . . . . . . . . . . . . . . . 24 Dirección del autor . . . . . . . . . . . . . . . . . . . . 24 A. El elemento 'rfc' . . . . . . . . . . . . . . . . . . . . . 25 B. La DTD RFC . . . . . . . . . . . . . . . . . . . . . . . . . 26 C. Agradecimientos . . . . . . . . . . . . . . . . . . . . . . 31 Indice analítico . . . . . . . . . . . . . . . . . . . . . . 32 Declaración completa de Copyright . . . . . . . . . . . . . 33 Rose Informativo [Pág. 2] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 1. Introducción Este documento describe cómo escribir un documento para las series I- D y RFC usando el Lenguaje de Marcado Extensible [1] (XML, Extensible Markup Language). Este documento tiene tres objetivos: 1. Describir una Definición de tipo de documento XML (DTD) que sea adecuada para expresar los sencillos requerimientos de formato de los documentos RFC y que al mismo tiempo permita un marcado comprensible con cualidades descriptivas. 2. Describir el software que procesa los archivos fuente XML, incluida una herramienta que produce documentos conformes al RFC 2223 [2], formato HTML, etc... 3. Proporcionar un ejemplo para los dos primeros objetivos (este documento fue escrito usando dicha DTD y producido con el software mencionado). La discusión sobre las ramificaciones políticas derivadas del uso de XML como formato fuente para documentos RFC queda fuera del alcance de este documento. Simplemente se hace destacar que la adición de un mínimo de marcado al texto plano: o permite la producción tradicional de documentos de texto RFC usando editores conocidos. o requiere mínimas modificaciones en los entornos de software existentes y o permite organizar, buscar y obtener la información tanto con mecanismos estructurados como no estructurados. Rose Informativo [Pág. 3] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2. Cómo usar la DTD para escribir I-D y RFC No vamos a proporcionar aquí una descripción formal o comprensiva de XML. En esta sección trataremos de lo mínimo imprescindible de XML para poder usar una Definición de tipo de documento (DTD) para escribir documentos RFC. Si ya conoce XML, pase al Apéndice B para examinar la DTD. 2.1 Conceptos básicos de XML Existen muy pocas reglas a la hora de escribir en XML, ya que la sintaxis es simple. Hay cinco términos que necesitará conocer: 1. Un "elemento" se refiere normalmente a una etiqueta inicial, una etiqueta de final y a todos los caracteres entre ambas, p. ej., "texto y/o elementos anidados" 2. Un "elemento vacío" combina la etiqueta inicial y la final, p. ej., "". Este tipo de elementos no existe en HTML. 3. Un "atributo" es parte de un elemento. Si está presente, aparece en la etiqueta inicial, p. ej., "". Por supuesto también pueden aparecer en elementos vacíos, p. ej., "". 4. Una "entidad" es una macro textual que comienza con "&". No se preocupe por ellas, pues sólo las usará cuando tenga que escribir un símbolo "&" o "<" en su texto. 5. Un "símbolo" es una cadena de caracteres. El primer carácter es una letra o un guión bajo ("_"). Los demás caracteres pueden ser letras, números, un guión bajo o un punto ("."). Lo primero es comenzar el archivo fuente con una declaración XML, una referencia a la DTD y el elemento "rfc": ... Ignore las dos primeras líneas (la declaración y la referencia) y trátelas como si fueran incomprensibles. No debe aparecer nada a continuación de la etiqueta "". En segundo lugar, asegúrese de que todos los elementos están Rose Informativo [Pág. 4] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 correctamente emparejados y anidados. Un elemento correctamente emparejado que comience con "" aparecerá eventualmente seguido de "" (los elementos vacíos siempre están emparejados). Los elementos están correctamente anidados cuando no se solapan. Por ejemplo, ... ... ... está correctamente anidado. Sin embargo, ... ... ... se solapa y por tanto los elementos no están correctamente anidados. En tercer lugar, nunca utilice "<" o "&" en su texto. En su lugar, use "<" o "&", respectivamente. En cuarto lugar, existen dos caracteres de entrecomillado en XML: 'apóstrofe' y "comilla". Asegúrese de que todos los valores de atributo están entrecomillados, p. ej., "". Si el valor contiene alguno de los caracteres de entrecomillado, use el otro carácter para entrecomillarlo, p. ej., "". Si contiene ambos caracteres, utilice uno de ellos para entrecomillar el valor y sustituya todas las ocurrencias de dicho carácter en el valor del atributo con ''' para el apóstrofe o """ para las comillas, p. ej., "". Rose Informativo [Pág. 5] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Si desea poner un comentario en su archivo fuente, esta es la sintaxis: Y por último, comentar que XML distingue entre mayúsculas y minúsculas. 2.2 Elementos iniciales A continuación de la etiqueta "" aparece el elemento "front": <author ...> <author ...> <date ...> <area ...> <workgroup ...> <keyword ...> <keyword ...> <abstract ...> <note ...> </front> ... </rfc> (Nótese que en todos los ejemplos la tabulación aparece únicamente por motivos de claridad). El elemento "front" está formado por un elemento "title", uno o más elementos "author", un elemento "date", uno o más elementos "area" opcionales, uno o más elementos "workgroup" opcionales, uno o más elementos "keyword" opcionales, un elemento "abstract" opcional y uno o más elementos "note" opcionales. Rose Informativo [Pág. 6] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.2.1 El elemento 'title' El elemento 'title' representa el título del documento. Dado que el título aparecerá en las cabeceras de página cuando el documento sea formateado de acuerdo con [2], si tiene más de 42 caracteres se deberá incluir una abreviatura, p. ej., <title abbrev="Mucho ruido y pocas nueces"> El debate IETF sobre "El formato fuente de los documentos RFC" 2.2.2 El elemento 'author' Cada elemento 'author' representa a uno de los autores del documento. Como puede existir más de un autor, puede aparecer más de un elemento "author". Si el autor es una persona deberán aparecer tres atributos en la etiqueta "": "initials", "surname" y "fullname", p. ej., El elemento 'author' contiene un elemento 'organization' y un elemento 'adress' opcional. El elemento "organization" es parecido al elemento "title", ya que se puede incluir una abreviatura junto al nombre completo de la organización usando el atributo "abbrev", p. ej., USC/Information Sciences Institute El elemento "adress" está formado a su vez por un elemento "postal" opcional, un elemento "phone" opcional, un elemento "facsimile" opcional, un elemento "email" opcional y un elemento "uri" opcional. Rose Informativo [Pág. 7] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 El elemento "postal" contiene uno o más elementos "street", seguidos de cualquier combinación de los elementos "city", "region" (estado o provincia), "code" (codigo postal o 'zipcode') y "country", p. ej., 660 York Street M/S 40 San Francisco CA 94110 US Esta flexibilidad permite distintos formatos nacionales para las direcciones postales. Nótese sin embargo que aunque no se especifica el orden de los elementos "city", "region", "code" y "country", como máximo puede aparecer uno de cada uno. Además de ésto, los elementos no deben ser reordenados durante el procesamiento mediante una aplicación XML (es decir, las aplicaciones de presentación deben preservar el orden de la información contenida en estos elementos). Finalmente, el valor del elemento "country" debe ser un código de dos letras ISO 3166. Los elementos "phone", "facsimile", "email y "uri" son sencillos, p. ej., +1 415 695 3975 mrose@not.invisible.net http://invisible.net/ 2.2.3 El elemento 'date' El elemento "date" indica la fecha de publicación del documento. Está formado por un mes y un año, p. ej., El elemento "date" también incluye un atributo opcional "day". 2.2.4 Elementos de metadatos El elemento "front" puede contener metadatos (cuyo contenido no aparece en las versiones impresas del documento). Rose Informativo [Pág. 8] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Un documento tiene uno o más elementos opcionales "area", "workgroup" y "keyword", p. ej., General Grupo de trabajo de embellecimiento de RFC RFC Request for Comments Petición de Comentarios I-D Internet-Draft Borrador de Internet XML Lenguaje de marcado extensible El elemento "area" indica una categoría general para el documento (p. ej. una de las siguientes: "Aplicaciones", "General", "Internet", "Gestión", "operaciones", "Encaminamiento", "Seguridad", "Transporte" o "Usuario"), mientras que los elementos "workgroup" representan los grupos de trabajo del IETF que han producido el documento y los elementos "keyword" indican términos de búsqueda útiles. 2.2.5 El elemento 'abstract' Un documento puede tener un elemento "abstract", el cual contiene uno o más elementos "t" (Sección 2.3.1.1). Normalmente aparece un único elemento "t", p. ej., Este memorándum presenta una técnica para utilizar XML (Lenguaje de marcado extensible) como formato fuente para documentos de las series Borradores de Internet (I-D) y Petición de comentarios (RFC). 2.2.6 El elemento 'note' Un documento puede tener uno o más elementos "note", cada uno de los cuales contiene uno o más elementos "t" (Sección 2.3.1.1). Hay un atributo "title" obligatorio . Normalmente, el elemento "note" contiene texto del IESG, p. ej., El IESG tiene algo que decir. Rose Informativo [Pág. 9] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.2.7 Estado, Nota de Copyright, Índice Nótese que el texto relacionado con el estado del memorándum, la nota de copyright y el índice no está incluido en el marcado del documento: es automáticamente insertado por la aplicación XML cuando produce una versión HTML o de texto plano del documento. 2.2.7.1 Conformidad con el RFC 2026 Si se quiere producir un Borrador de Internet ('Internet-Draft'), el atributo "ipr" debe aparecer en la etiqueta "", al principio del documento. El valor del atributo debe ser uno de los siguientes: full2026: Indica que el documento es completamente conforme a todas las disposiciones de la Sección 10 del RFC 2026. noDerivativeWorks2026: Indica que el documento es completamente conforme a todas las disposiciones de la Sección 10 del RFC 2026, excepto que no se concede el derecho a producir trabajos derivados. none: Indica que el documento NO cumple las disposiciones de la Sección 10 del RFC 2026 y el autor no cede ningún derecho al IETF, excepto el de publicarlo como Borrador de Internet. En el último caso no se insertará automáticamente ninguna nota de copyright durante el procesamiento por medio de una aplicación XML. Consulte [3] para más detalles. Por último, si el Borrador de Internet se está sometiendo a un proceso automatizado, el atributo "docName" debe aparecer en la etiqueta "" al principio del archivo. El valor de este atributo contiene el nombre del documento (no del archivo) asociado con este Borrador de Internet, p. ej., ... 2.2.8 Resumen de los elementos iniciales Juntándolo todo obtenemos, p. ej., Cómo escribir I-D y RFC con XML Rose Informativo [Pág. 10] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Invisible Worlds, Inc.
660 York Street M/S 40 San Francisco CA 94110 US +1 415 695 3975 mrose@not.invisible.net http://invisible.net/
General Grupo de trabajo de embellecimiento de RFC RFC Petición de Comentarios Request for Comments I-D Borrador de Internet Internet-Draft XML Extensible Markup Language Este memorándum presenta una técnica para utilizar XML (Lenguaje de marcado extensible) como formato fuente para documentos de las series Borradores de Internet (I-D) y Petición de comentarios (RFC).
Rose Informativo [Pág. 11] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.3 Elementos centrales El elemento "middle" contiene todas las secciones del documento excepto la bibliografía y los apéndices: ...
... El elemento "middle" está formado por uno o más elementos "section". 2.3.1 El elemento 'section' Cada elemento "section" contiene una sección del documento. Tiene un atributo obligatorio, "title", que indica el título de la sección. Existe también un atributo opcional, "anchor", usado para las referencias cruzadas con el elemento "xref" (Sección 2.3.1.4), p. ej.,
...
El elemento "section" es recursivo: puede contener cualquier número y combinación de elementos "t", "figure" y "section", p. ej.,
...
...
...
...
...
...
...
...
Rose Informativo [Pág. 12] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.3.1.1 El elemento 't' El elemento "t" contiene cualquier número y combinación de párrafos, listas y figuras. Si se necesita una referencia cruzada a una sección, figura o referencia, se utiliza el elemento "xref" (Sección 2.3.1.4). De forma similar, si se necesita una referencia externa, se usa el elemento "eref" (Sección 2.3.1.5). La indexación de texto se realiza mediante el elemento "iref" (Sección 2.3.1.6). 2.3.1.2 El elemento 'list' El elemento "list" contiene uno o más ítems. Cada ítem es un ele- mento "t", estando permitida la recurrencia, p. ej., El primer item. El segundo item, que contiene dos sub-items con viñetas El primer sub-item. El segundo sub-item. El elemento "list" tiene un atributo opcional, "style", que puede tomar los valores "numbers" (para listas numeradas), "symbols" (para listas con viñetas), "hanging" (para listas con sangría francesa) o "empty" (para texto tabulado). Si un elemento "list" está anidado, se toma el valor por defecto del elemento padre; en caso contrario el valor por defecto es "empty". El elemento "t", cuando está dentro de un elemento de tipo "lista con sangría francesa", tiene un atributo opcional, "hangText", que indica el texto a insertar, p. ej., Indica que el documento es completamente conforme a todas las disposiciones de la Sección 10 del RFC 2026; Indica que el documento es completamente conforme a todas las disposiciones de la Sección 10 del RFC 2026, excepto que no se concede el derecho a producir trabajos derivados. Indica que el documento NO cumple las disposiciones de la Sección 10 del RFC 2026 y el autor no cede ningún derecho al IETF, excepto el de publicarlo como Borrador de Internet. Rose Informativo [Pág. 13] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.3.1.3 El elemento 'figure' El elemento "figure" está formado a un elemento "preamble" opcional, un elemento "artwork" y un elemento "postamble" opcional. El elemento "figure" también tiene un atributo "anchor" opcional, que se utiliza para hacer referencias cruzadas con el elemento el elemento "xref" (Sección 2.3.1.4). También existe el atributo opcional "title", que indica el título de la figura. Los elementos "preamble" y "postamble", si aparecen, son simple- mente texto. Si se necesita poner una referencia cruzada a una sección, figura o referencia, se usa el elemento "xref" (Sección 2.3.1.4). De igual manera, si es necesario indicar una referencia externa se utiliza el elemento "eref" (Sección 2.3.1.4). La indexación de texto se efectúa mediante el elemento "iref" (Sección 2.3.1.4). El elemento "artwork", que debe aparecer, contiene "arte ASCII". A diferencia del texto contenido en los elementos "t", "preamble" o "postamble", en el elemento "artwork" no se ignoran los espacios en blanco horizontales o verticales. Por tanto, juntándolo todo tenemos, p. ej.,
Por tanto, juntándolo todo tenemos, p. ej., Escriba aquí su arte ASCII... ¡asegúrese de utilizar "<" o "&" en lugar de "<" y "&" respectivamente! que es un ejemplo muy simple.
que es un ejemplo muy simple. Rose Informativo [Pág. 14] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Si sus figuras ASCII contienen muchos caracteres "<", hay un truco de XML que puede utilizar:
Si sus figuras ASCII contienen muchos caracteres "<", hay un truco de XML que puede utilizar: A la construcción "<![CDATA[ ... ]]>" se la denomina bloque CDATA: Las aplicaciones XML ignorarán todo lo que aparezca dentro de los corchetes más internos.
A la construcción "" se la denomina bloque CDATA: Las aplicaciones XML ignorarán todo lo que aparezca dentro de los corchetes más internos. Como el elemento "figure" representa un agrupamiento lógico de texto y figuras, una aplicación XML que produzca una versión en texto plano del documento deberá intentar mantener estos elementos en la misma página. Debido a que el RFC 2223 [2] no permite más de 69 caracteres por 49 líneas de contenido en cada página, las apli- caciones XML deberán estar preparadas para introducir saltos de página anticipadamente para permitir un mejor agrupamiento visual. Por último, el elemento "artwork" tiene dos atributos opcionales: "name" y "type". El primero se utiliza para sugerir un nombre de archivo al almacenar el contenido del elemento "artwork", mientras el segundo especifica un tipo orientativo para el contenido. 2.3.1.4 El elemento 'xref' El elemento "xref" se utiliza para indicar referencias cruzadas a secciones, figuras y referencias. El atributo obligatorio "target" sirve para enlazar con el atributo "anchor" del elemento "section", "figure" y "reference". El valor de los atributos "anchor" y "tar- get" debe cumplir el formato indicado en la sintaxis de símbolo de la Sección 2.1. Rose Informativo [Pág. 15] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Si se utiliza como un elemento vacío, p. ej., debe cumplir el formato indicado en la sintaxis de símbolo de la . la aplicación XML inserta una frase apropiada durante el proce- samiento, como "Sección 2.1" o "XML Basics". Si se usa con contenido, p. ej., conforme al RFC 2223. la aplicación XML inserta una indicación apropiada durante el proce- samiento, como "RFC 2223 [2]" o "RFC 2223". Aunque es la aplicación XML la que decide qué es una "indicación apropiada", dicha elección es consistente a lo largo del procesamiento de todo el documento. 2.3.1.5 El elemento 'eref' El elemento "eref" se utiliza para indicar referencias a documentos externos. El atributo obligatorio "target" es un URI [4], p. ej, Café con Leche Nótese que, aunque el atributo "target" está siempre presente, el elemento "eref" puede estar vacío, p. ej., y la aplicación XML inserta una indicación apropiada durante el procesamiento, como "[9]" o "http:// invisible.net/". 2.3.1.6 El elemento 'iref' El elemento "iref" se utiliza para añadir información a un índice analítico. El atributo obligatorio "item" indica la clave principal bajo la cual aparece la información, mientras que el atributo opcional "subitem" es la clave secundaria; p. ej., Por último, nótese que el elemento "iref" es siempre vacío: nunca contiene texto. Rose Informativo [Pág. 16] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.3.1.7 El elemento 'vspace' El autor utiliza el elemento "vspace", que sólo puede aparecer dentro del elemento "t", para instruir a la aplicación XML sobre cuestiones de formato. El atributo "blankLines" indica el número de líneas en blanco que se deben insertar. Un salto de línea físico se especifica usando el valor por defecto, "0". Además, el elemento "vspace" puede utilizarse para forzar un nuevo párrafo dentro de un ítem de una lista, p. ej., Esto es un item de una lista. Esto es parte del mismo ítem de la lista, pero al ser mostrado aparece como un párrafo separado. Una aplicación XML que produzca una versión texto del documento debe tener cuidado al encontrar un valor de "blankLines" que ocasiona un salto de página: en particular, si un elemento "vspace" provoca un salto de página no se deben añadir más saltos de línea después. Esto permite a los autores "forzar" un salto de página usando un valor arbitrariamente largo, p. ej., "blankLines='100'". Por último, nótese que el elemento "vspace" siempre es vacío: nunca contiene texto. Rose Informativo [Pág. 17] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 2.4 Elementos finales Por último, el elemento "back" se utiliza para incluir referencias y apéndices: ...
El elemento "back" está formado por un elemento "references" opcional y uno o más elementos "section" opcionales. El elemento "back" propiamente dicho es opcional, es decir, si su documento no necesita de referencias o apéndices no es necesario incluirlo. 2.4.1 El elemento 'references' El elemento "references" contiene la bibliografía del documento. Contiene uno o más elementos "reference". Cada elemento "reference" contiene un elemento "front" y uno o más elementos "seriesInfo" opcionales. Ya hemos hablado del elemento "front" en la Sección 2.2. El elemento "seriesInfo" tiene dos atributos, "name" y "value" que identifican las series de documentos y la entrada en la serie, respectivamente. Rose Informativo [Pág. 18] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 El elemento "reference" tiene un atributo opcional "anchor" que se utiliza con el elemento "xref" (Sección 2.3.1.4) para las referencias cruzadas, p. ej., Internet Official Protocol Standards USC/Information Sciences Institute El elemento "reference" tiene también un atributo "target" opcional que se utiliza para las referencias externas (véase la Sección 2.3.1.5). La aplicación XML, si produce una versión HTML del docu- mento, usará el atributo "target" de la forma apropiada. Sin embargo, si el atributo "name" del elemento "seriesInfo" tiene el valor "RFC", entonces la aplicación XML deberá proporcionar automáticamente un valor por defecto para el atributo "target" (p. ej. "http://example.com/rfcs/rfc2200.txt"). 2.4.2 Apéndices Para incluir apéndices tras la bibliografía se añaden simplemente más elementos "section". (Ver el ejemplo al principio de la Sección 2.4.) 2.4.3 Estado del Copyright El estado del copyright del documento no está incluido en el marcado del documento: es insertado automáticamente por la aplicación XML encargada de producir la versión texto o HTML del documento. Rose Informativo [Pág. 19] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 3. Como procesar el archivo fuente XML Esta sección trata sobre aplicaciones que trabajan con un archivo fuente XML. Hay muchas herramientas XML disponibles, así como muchas listas de recursos XML, p. ej., Cafe con Leche [5]. Hay dos tipos de herramientas XML: certificadoras y no certificado- ras. Ambos tipos comprueban que el archivo fuente cumpla las reglas dadas en la Sección 2.1. Sin embargo, además de asegurarse de que el archivo fuente está bien formado, una herramienta certificadora lee también la DTD referenciada por el archivo fuente para asegurarse de que concuerdan. Existen varias herramientas disponibles, tanto certi- ficadoras como no certificadoras. 3.1 Edición Existen varios editores XML disponibles. En un caso ideal, se deseará disponer de un editor que certifique. Esto tiene dos ventajas: o proporciona ayuda a la hora de desarrollar la estructura del documento, y o comprueba que el archivo fuente concuerda con las reglas de la DTD. Existen dos modos principales en Emacs que soportan XML: tdtd [6] and psgml [7]. El último permite validar el archivo fuente (llamando a un programa externo). Si se edita el archivo fuente con Emacs y el modo principal no es "SGML" o "XML", normalmente sólo hay que añadir estas líneas al archivo ".emacs": (setq auto-mode-alist (cons (cons "\\.xml$" 'sgml-mode) auto-mode-alist)) y reiniciar Emacs. Si no funciona, pruebe con alguno de los recursos vistos más arriba. Para editar los archivos fuente, el autor utiliza el modo sgml de Emacs y un editor certificador comercial, llamado Clip! version 1.5 [8] 3.1.1 Pruebas Si su editor no valida, deberá utilizar un programa que valide el archivo fuente. Para este propósito el autor utiliza el analizador AlphaWorks XML Rose Informativo [Pág. 20] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 [9]. Este requiere que el sistema tenga una máquina virtual Java. Además de en Java, existen analizadores escritos en C, Perl, Python y Tcl. 3.2 Conversión a formato de texto El autor ha escrito la herramienta xml2rfc [10], que lee el archivo fuente y produce una versión en texto y otra HTML del documento. (Este documento fue creado usando la herramienta xml2rfc). Tenga en cuenta que xml2rfc no es una herramienta certificadora, así que es una buena idea usar un editor certificador o ejecutar un analizador certificador aparte antes de usar la herramienta. 3.3 Conversión a formato HTML El Lenguaje de Estilo XML (XML Style Language, XSL) se utiliza para describir transformaciones desde un archivo fuente a algún otro docu- mento estructurado. Así que lo ideal sería utilizar un formateador XSL para convertir el archivo fuente XML a HTML. Sin embargo, en el momento de escribir esto XSL está aún en un estado de considerable incertidumbre (por tanto no se ha incluido ninguna referencia en este documento, ya que para cuando lea este documento las referencias serán obsoletas). Así que, entretanto, el autor uti- liza la herramienta xml2rfc para esta tarea, aún cuando no propor- ciona demasiada flexibilidad en su diseño HTML. 3.4 Presentación Los navegadores que soportan XSL u Hojas de estilo en cascada (Cas- cading Style Sheets, CSS) son capaces de mostrar el archivo fuente directamente. A fecha de hoy el autor no utiliza ninguno de estos navegadores, sino que realiza la conversión de los archivos fuente a texto o a HTML. 3.5 Búsquedas Al igual que los editores de texto, se puede utilizar cualquier herramienta de búsqueda orientada a texto (p. ej. grep) con el archivo fuente. Sin embargo, existen herramientas de búsqueda que entienden la información estructurada. Rose Informativo [Pág. 21] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 El autor utiliza la sgrep version 1.9 [11] para ello, p. ej., sgrep -g xml 'ELEMENTS("title") not in ELEMENTS("back")' \ writing-rfcs.xml que extrae el elemento "title" del archivo fuente. Rose Informativo [Pág. 22] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 4. Consideraciones de seguridad Este documento no plantea cuestiones de seguridad. Sin embargo, de acuerdo con [2], su documento debe contener una sección cerca del final que trate las consideraciones de seguridad del protocolo o pro- cedimientos que constituyen el asunto principal del documento, p. ej., ...
Este documento no plantea cuestiones de seguridad. Sin embargo, de acuerdo con , su documento debe contener una sección cerca del final que trate las consideraciones de seguridad del protocolo o procedimientos que constituyen el asunto principal del documento.
Rose Informativo [Pág. 23] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Referencias [1] World Wide Web Consortium, "Extensible Markup Language (XML) 1.0", W3C XML, Febrero 1998, . [2] Postel, J. y J. Reynolds, "Instructions to RFC Authors", RFC 2223 (N.T. existe versión en español), Octubre 1997. [3] Bradner, S., "The Internet Standards Process -- Revision 3", RFC 2026, BCP 9, Octubre 1996. [4] Berners-Lee, T., Fielding, R. y L. Masinter, "Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396, Agosto 1998. [5] [6] [7] [8] [9] [10] [11] Dirección del Autor Marshall T. Rose Invisible Worlds, Inc. 660 York Street San Francisco, CA 94110 US Phone: +1 415 695 3975 EMail: mrose@not.invisible.net URI: http://invisible.net/ Rose Informativo [Pág. 24] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Apéndice A. El elemento 'rfc' Cuando la etiqueta "", presente al principio del archivo, con- tiene únicamente un atributo "ipr" (Sección 2.2.7.1), se produce un Borrador de Internet. Sin embargo, cuando el editor RFC añade otros atributos a esta etiqueta, se produce un RFC, p. ej., Como mínimo debe aparecer el atributo "number". Los otros atributos son: o "obsoletes", que contiene una lista de números de RFC que el documento deja obsoletos, separados por comas. o "updates", que contiene una lista de números de RFC que el documento actualiza, separados por comas. o "category", que puede tomar uno de estos valores: 1. "std", para un documento de Seguimiento de estándar (Standards-Track); 2. "bcp", para un documento de Mejores prácticas actuales (Best Current Practices); 3. "exp", para un documento de Protocolo Experimental; 4. "historic", para un documento histórico, o 5. "info", el valor por defecto, para un documento Informativo; o "seriesNo", que contiene el número correspondiente en la serie STD (std), BCP (bcp) o FYI (info). Por último, existe una entidad especial, "&rfc.number". Los autores que preparen un RFC deben utilizar esta entidad siempre que quieran hacer referencia al número del RFC dentro del propio documento. En las versiones impresas del documento, aparecerá la sustitución apropiada (o "XXXX"). Rose Informativo [Pág. 25] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Apéndice B. La DTD RFC Rose Informativo [Pág. 26] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Rose Informativo [Pág. 27] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Rose Informativo [Pág. 28] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Rose Informativo [Pág. 29] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Rose Informativo [Pág. 30] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Apéndice C. Agradecimientos El autor agradece sinceramente las contribuciones de: Alan Barrett, Brad Burdick, Brian Carpenter, Steve Deering, Patrik Faltstrom, Jim Gettys, Carl Malamud, Chris Newman, Kurt Starsinic, and, Frank Strauss. Rose Informativo [Pág. 31] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Indice analítico I indexing how to 16 Rose Informativo [Pág. 32] RFC 2629 Cómo escribir I-D y RFC con XML Junio 1999 Declaración completa de Copyright Copyright (C) The Internet Society (1999). Reservados todos los derechos. Le está permitido copiar y entregar a terceros este documento en su versión original o traducida. Puede procesar, copiar, publicar y distribuir, en parte o en totalidad, sin restricción de ningún tipo, trabajos derivados que comenten, expliquen o ayuden en la implementación de este documento, siempre que en cada copia o trabajo derivado incluya la mención de Copyright anterior junto con la presente nota. No le está sin embargo permitido modificar en ningún modo este documento, eliminar la mención de Copyright ni las referencias a The Internet Society u otras organizaciones de Internet, excepto con el fin de desarrollar los estándares de Internet (en cuyo caso deberá seguir los procedimientos para copyrights definidos en el proceso de Estándares Internet), o con el fin de traducirlo a otros idiomas distintos del inglés. Los permisos limitados concedidos más arriba son perpétuos y no serán revocados por la 'Internet Society' o sus sucesores o cesionarios. Este documento y la información contenida se ofrece "TAL CUAL". THE INTERNET SOCIETY Y THE INTERNET ENGINEERING TASK FORCE DESCARTAN CUALQUIER GARANTÍA EXPRESA O IMPLICITA POR EL USO DE LA INFORMACIÓN AQUÍ CONTENIDA Y EN PARTICULAR EXCLUYEN, SIN LIMITACIÓN ALGUNA, TODA GARANTÍA SOBRE POSIBLES INFRACCIONES DE DERECHOS O GARANTÍAS IMPLÍCITAS DE COMERCIALIZACIÓN Y ADECUACIÓN A LOS FINES PERSEGUIDOS. Agradecimiento Los fondos para las funciones desempeñadas por el editor RFC son proporcionados actualmente por la Internet Society. Rose Informativo [Pág. 33]