Vous êtes sur la page 1sur 7

ESPOCH-Facultad Informática y Electrónica

. .

LENGUAJES DE PROGRAMACION-INTERFAZ GRAFICA JAVA

ESPOCH
Amarilis Eliana Betún Guamán (1079)
Marjuri Carola Pacheco Freire (1042)
Jenifer Belén Guailla Bonifaz (1060)
Mary Bethzabe Ocaña Urquizo (1233)
Maribel Johanna Agudelo Freire (1231)
Mildred Korina Jaramillo Vasquez(1063)

RESUMEN: La necesidad de jerarquizar y estructurar


correctamente la información, no sólo para almacenarla, 1 INTRODUCCIÓN
sino también para acceder a ella, se ha convertido en una
labor que ha cobrado especial relevancia en los últimos En los últimos años, Internet ha venido aumentado su
años, en los que se han producido importantes avances tamaño y capacidades, y se ha vuelto una herramienta
en este campo. cada vez más necesaria en nuestras vidas. Para poder
Inicialmente se usaron las Definiciones del Tipo de aprovechar mejor estas capacidades, han surgido
Documento (DTDs) en el lenguaje SGML para describir el múltiples tecnologías.
vocabulario necesario para identificar todos los elementos Tipo de Documento (DTD) para definir los bloques de
de que iba a constar el documento y para expresar la construcción legales de un documento XML. Se utiliza
estructura. La aparición y el desarrollo del lenguaje XML, una serie de elementos legales para definir la
hizo que este lenguaje incorporara también las DTDs, no estructura del documento. DTD puede ser declarada en
en vano, hay que recordar que el lenguaje XML no es sino filas en un documento XML, o como una referencia
un subconjunto del lenguaje SGML. externa.
Pero las DTDs no satisficieron todas las necesidades Este informe pretende entregar una visión general
inherentes a XML y pronto se vio necesario utilizar otros acerca de DTD asi mismo como de XML, con el fin de
métodos más rigurosos y sofisticados para tratar la ser una introducción a este tema, el cual se presenta
estructura y la semántica dentro de un documento XML. como una herramienta poderosa, con interesantes
Así surgieron los Esquemas XML (XML Schema), como proyecciones a futuro.
una forma de ampliación y mejora de las primitivas DTDs. Por DTD, grupos independientes pueden utilizar
Las DTDs y los Schemas son usados por los analizadores sistemáticamente una DTD estándar para el
sintácticos o parsers para comprobar si un documento intercambio de datos.
XML es válido. Y su aplicación también puede utilizar una DTD
Así pues, vemos que para proceder a la estructuración estándar para verificar los datos recibidos desde el
o especificación formal dentro de un documento XML exterior.
existen distintas soluciones, entre las que cabe destacar También puede utilizar una DTD para verificar sus
principalmente dos: las DTDs y los XML Schemas. propios datos.
Cuando un archivo XML se asocia con una DTD o
XML (Extensible Markup Language, Lenguaje
esquema XML, está enlazado mediante cualquier norma Extensible de Marcas) es un subconjunto de SGML
estructural contenida en la DTD o esquema XML. Para
(Standard Generalized Markup Language). SGML fue
que sea considerado un archivo XML válido, un
desarrollado a principios de los 80. Es un estándar ISO
documento debe estar acompañado por una DTD (o un desde 1986 y ampliamente usado para grandes
esquema XML) y debe ajustarse a todas las declaraciones proyectos de documentación. HTML (HyperText
de la DTD o del esquema XML. Markup Language) inició su desarrollo en 1990. El
desarrollo de XML comenzó en 1996 y desde febrero
PALABRAS CLAVE: de 1998 es una recomendación del W3C (World Wide
Estructura, Semántica, ,Estructura Web Consortium).
Como SGML es un poco complejo, los diseñadores
de XML tomaron las mejores ventajas y propiedades de
SGML, guiados por su experiencia con HTML, y
produjeron un lenguaje nuevo, con casi toda la potencia
del SGML. Así se originó XML.

1
ESPOCH-Facultad Informática y Electrónica
. .

2 DESARROLLO
2.1.2 CARACTERÍSTICAS
2.1 XML Sus características más relevantes son:
2.1.1 ¿QUÉ ES XML? 1. – XML es un estándar para escribir datos
estructurados en un fichero de texto.
XML provee un conjunto de reglas, normas y
XML es un tipo de lenguaje de programación que
convenciones para diseñar formatos de texto para
cumple la misma función del conocido código HTML, pero
datos estructurados que van desde las hojas de
que surgió como suplantación del mismo; el código XML
cálculo, o las libretas de direcciones de Internet, hasta
se diferencia de éste ya que, por ejemplo, es una
parámetros de configuración, transacciones financieras
recomendación del Consorcio World Wide Web debido a
o dibujos técnicos.
su capacidad de soportar de un modo eficaz y masivo la
realización de negocios virtuales.
 XML es un subconjunto de SGML(Estándar
2. – XML parece HTML pero no lo es.
Generalised Mark-up Language),simplificado y adaptado Tanto XML como HTML usan marcas y atributos,
a Internet más su diferencia radica en que, HTML cada marca y
atributo estable un significado a la vez que incluyendo
el aspecto que debe tener al verse en un navegador,
en XML sólo se usan las marcas para delimitar
fragmentos de datos, dejando la interpretación de éstos
a la aplicación que los lee.
3. – XML está en formato texto, pero no para ser
leído.
Figura: Estructura de XML
El formato texto puede ser usado en cualquier
plataforma, esto le da innumerables ventajas de
 XML no es, como su nombre puede sugerir, un
portabilidad, depuración, independencia de plataforma,
lenguaje de marcado.
e incluso de edición, pero su sintaxis es más estricta
 XML es un meta-lenguaje que nos permite definir
que la de HTML: una marca olvidada o un valor de
lenguajes de marcado adecuados a usos determinados.
atributo sin comillas convierten el documento en
Que no es XML
inutilizable. No hay permisividad en la construcción de
 No es una versión mejorada de HTML documentos, ya que esa es la única forma de
 HTML es una aplicación de SGML por lo tanto de XML protegerse contra problemas más graves.
 No es un lenguaje para hacer páginas WEB 4. – XML consta de una familia de tecnologías.
 Y sobre todo no es difícil La definición (estándar) de XML 1.0 que viene de
¿Por qué XML? Febrero 98, pero su desarrollo se ha ido enriqueciendo
 Es un estándar internacionalmente conocido paulatinamente a medida que se veían sus
posibilidades: de esa forma, contamos con una
 No pertenece a ninguna compañía
especificación Xlink, que describe un modo estándar de
 Permite una utilización efectiva en Internet para sus
añadir hipervínculos a un documento XML. XPointer y
diferentes terminales.
XFragments son especificaciones para establecer la
Aplicaciones de XML
forma de vincular partes de un documento XML.
 Publicar e intercambiar contenidos de bases de datos. 5. – XML es prolijo, pero eso no supone un
 Formatos de mensaje para comunicación entre problema.
aplicaciones (B2B) Los ficheros resultantes, son casi siempre mayores
 Descripción de metacontenidos. que sus equivalentes binarios. Esto es intencionado, y
Documento XML las ventajas ya las hemos comentado más arriba,
 Conjunto de datos con sus respectivas etiquetas de mientras que las desventajas, siempre pueden ser
marcado XML. soslayadas mediante técnicas de programación que
 Se almacena como texto en archivo con extensión permite comprimir los datos.
.xml. 6. – XML es nuevo, pero no tanto.
 Un documento XML puede incluir cualquier flujo de El estándar empezó a diseñarse en 1996, y se publicó
datos basado en texto: un artículo de una revista, un la recomendación en Febrero/98. Como ya hemos
resumen de cotizaciones de comentado, eso no significa que la tecnología no esté
bolsa, un conjunto de registros de una base de datos suficientemente madura, ya que el estándar SGML en
el que se basa, data de una especificación ISO del año

2
ESPOCH-Facultad Informática y Electrónica
. .

1986. número de columna actual para un intérprete XML


7. – XML no requiere licencia  xml_get_current_line_number — Obtiene el
Es un estándar abierto independiente de la plataforma, número de línea actual para un intérprete XML
y tiene un amplio soporte extendido a un sinnúmero  xml_get_error_code — Obtiene un código de error
herramientas y desarrolladores. en un intérprete XML
Ventajas de XML
 xml_parse_into_struct — Interpreta datos XML en
 Fácilmente procesable una estructura de array
 Separa radicalmente el contenido y el formato de
 xml_parse — Inicia un intérprete sobre un
presentación
documento XML
 Diseñado para cualquier lenguaje y alfabeto.
 xml_parser_create_ns — Crea un analizador XML
(encoding)
con soporte para espacios de nombres
 xml_parser_create — Crea un intérprete XML
2.1.3 FUNCIONES  xml_parser_free — Liberar una analizador XML
 xml_parser_get_option — Obtiene el valor de las
Esta sección contiene la lista de funciones XML y una opciones de un intérprete XML
breve descripción de cada función.
 xml_parser_set_option — Configura las opciones
Función Qué hace en un intérprete XML
 xml_set_character_data_handler — Configura el
is_wellformed Toma una expresión de serie y
manejador de los datos de caracteres
comprueba si el XML está
formado correctamente.  xml_set_default_handler — Configura el
manejador predeterminado
xmlencode Convierte un campo XML en  xml_set_element_handler — Configura los
una expresión de serie. manejadores para los elementos de inicio y final
xmldecode Convierte una expresión de  xml_set_end_namespace_decl_handler —
serie en XML. Configura el manejador de declaración de final del
namespace
 xml_set_external_entity_ref_handler —
is_wellformed
Configura el manejador de referencia a entidades
Comprueba si una expresión de serie está en XML
externas
sintácticamente correcto. Devuelve valor verdadero
 xml_set_notation_decl_handler — Configura el
(booleano) si la cadena resultante está en XML formado
manejador de declaraciones de notación
correctamente. Tenga en cuenta que puede utilizarse un
campo XML para crear expresiones de serie.  xml_set_object — Usa un intérprete XML Parser
Utilice la siguiente sintaxis: dentro de un objeto
is_wellformed (string_expr)  xml_set_processing_instruction_handler —
Configura el manejador de instrucciones de proceso
xmlencode (PI)
Convierte de formato XML a formato de serie estándar,  xml_set_start_namespace_decl_handler —
codificando todos los caracteres especiales de XML. La Configura el manejador de declaración de inicio del
serie resultante puede utilizarse como una serie en un namespace
mensaje de XML.  xml_set_unparsed_entity_decl_handler —
Utilice la siguiente sintaxis: Configura el manejador de declaración de entidades no
xmlencode (string_expr) analizadas
Funciones del Intérprete XML
 utf8_decode — Convierte una cadena con los 2.1.4 EJEMPLO
caracteres codificados ISO-8859-1 con UTF-8 a un
sencillo byte ISO-8859-1
Feed de un comentario en Atom XML
 utf8_encode — Codifica un string ISO-8859-1 a UTF-
8
<?xml version="1.0"
 xml_error_string — Obtiene la cadena de un error encoding="UTF-8"?> <feed
dado en un intérprete XML xmlns="http://www.w3.org/2005/Atom">
 xml_get_current_byte_index — Obtiene la <title type="text">WebSphere Community
indexación del byte actual en un intérprete XML Blog</title> ...
 xml_get_current_column_number — Obtiene el
3
ESPOCH-Facultad Informática y Electrónica
. .

<entry>  La utilización de una DTD (no es necesario, pero si


<id>tag:blogger.com,1999:blog- recomendable)
1417695962027703953.post-  Los elementos vacíos. La propia etiqueta de inicio
6498982274841848264</id> llevara una contrabarra al final que los identificara
<published>2009-10-17T13:06:00.000- Las declaraciones incluidas en la DTD pueden
05:00</published> ser:
<updated>2009-10-17T13:06:00.000-  Internas: se encuentran dentro del propio
05:00</updated> documento XML; forman lo que se denomina el
<atom:title xmlns="" subconjunto interno.
xmlns:atom="http://www.w3.org/2005/Atom"  Externas: se encuentran en un fichero separado;
type="text"> Questionable spamming
forman el subconjunto externo
comment title </atom:title>
 Una combinación de ambas. Hay parte fuera y
<atom:content xmlns=""
parte dentro. Tienen preferencia las internas sobre las
xmlns:atom="http://www.w3.org/2005/Atom"
externas.
type="html"> Questionable spamming
Analizada por partes, la declaración consiste en:
comment content
 ! DOCTYPE: Un literal que indica al navegador que
</atom:content> ... <atom:author
ésta es una declaración del tipo del documento.
xmlns=""
xmlns:atom="http://www.w3.org/2005/Atom">  HTML: Indica el elemento raíz del documento.
<atom:name>Joe  PUBLIC: Indica si la DTD está disponible de
Smith</atom:name> manera pública. Si no es así, se sustituye por SYSTEM.
<atom:uri>http://joe.uri.com</atom:uri> DTD interno
<atom:email>jsmith@email.com</atom:email> <?xml version="1.0" encoding="ISO-8859-1" ?>
</atom:author> </entry> ... <!DOCTYPE Casas_Rurales [
</feed> <!ELEMENT Casas_Rurales (Casa)*>
<!ELEMENT Casa (Dirección, Descripción, Estado,
2.2 DTD Tamaño)>
<!ELEMENT Dirección (#PCDATA) >
<!ELEMENT Descripción (#PCDATA) >
2.2.1 ¿QUE ES DTD? <!ELEMENT Estado (#PCDATA) >
<!ELEMENT Tamaño (#PCDATA) > ]>
Una DTD es un documento SGML que incluye las
reglas sintácticas para un tipo de documento específico.
Incluye los elementos que se permiten y sus atributos, así
como reglas que afectan a la anidación de los primeros y 2.2.3 FUNCIONES
a los valores de los segundos. Contrastando un
documento con su DTD se puede comprobar si éste es Declaraciones ELEMENT
válido o no.  Especifican qué pueden contener los elementos
La principal ventaja de utilizar una definición tipo es  No soporte directo de namespaces
garantizar la consistencia de los documentos. Los
 Los elementos pueden contener:
documentos que tienen un tipo definido, para ser válidos,
o Nada
deben cumplir con las reglas establecidas en la definición
<!ELEMENT name EMPTY>
del tipo. Recordemos que no es lo mismo un documento
o Texto
válido (el que cumple con la definición de un tipo) que un
<!ELEMENT name (#PCDATA)>
documento bien formado (el que cumple con las reglas
o Texto y nuevos elementos (hijos)
sintácticas de XML).
<!ELEMENT name
(#PCDATA|elem1|elem2|...)*>
2.2.2 CARACTERISTICAS o Hijos
 La DTD también es útil para detectar y corregir errores <!ELEMENT name
en la fase de elaboración del documento posiblemente (elem1|elem2|...)*>
cuando aún se está a tiempo de solucionar la falta con Sintaxis de declaraciones ELEMENT
poco esfuerzo.  Secuencia de hijos
 Se utiliza mis propias etiquetas <!ELEMENT name (ch1, ch2)>
 La sintaxis es estricta. La especificación XML  Elección entre hijos
determina claramente una serie de reglas que especifican <!ELEMENT name (ch1|ch2)>
cuando un documento está bien formado.  Secuencia de hijos opcionales
4
ESPOCH-Facultad Informática y Electrónica
. .

<!ELEMENT name  Atributo no requerido, sin valor por defecto:


(ch?, ch2?, ch3?)> #IMPLIED
 Cero o más ... Declaración de entidades
<!ELEMENT name (child*)>  Declaran un nombre para texto que se insertará en
 Uno o más el documento
<!ELEMENT name (child+)> <!ENTITY nombreEntidad "valorEntidad">
Se pueden combinar las posibilidades  Se insertan así:
 Elección entre secuencias: &nombreEntidad;
((a, b) | (c, d) Entidades parámetro
 Secuencia de opciones <!ENTITY %datos_personales
((a | b), (c | d)) "nombre|telefono|email">
 Secuencia opcional <!ENTITY %empleado
(a, b, c)? (departamento, %datos_personales)>
No se puede mezclar , y | en una lista. Usa paréntesis
para desambiguar. Entidades y notaciones
Restricciones Combinar datos textuales y no textuales.
<!ELEMENT logo EMPTY>
 Un modelo mixto no puede restringir cuántas veces y
<!ATTLIST logo imagen ENTITY #REQUIRED>
el orden en que aparecen los hijos. Sólo los elementos
<!NOTATION GIF SYSTEM "visor_sistemas">
permitidos.
<!ENTITY logo_centro SYSTEM
 Un modelo de sólo elementos requiere que cada
"http://www.miempresa.com/logo.gif">
elemento hijo de la instancia coincida exactamente con
NDATA GIF>
una parte del modelo. Lo siguente no es legal:
(A?, A?)
<logo imagen="logo_centro" />
Comodines
 Un elmento que puede contener cualquier elemento
2.2.4 EJEMPLO
declarado en el DTD o texto
<!ELEMENT name ANY>
Catálogo de productos DTD
Declaración de atributos de un elemento
<!ATTLIST ename <!DOCTYPE CATALOG [
attr1 type1 default1
attr2 type2 default2 <!ELEMENT CATALOG (PRODUCT+)>
...> <!ELEMENT PRODUCT (SPECIFICATIONS+,
Tipos de atributos OPTIONS?, PRICE+, NOTES?)>
 CDATA <!ELEMENT SPECIFICATIONS (#PCDATA)>
sin restricción <!ELEMENT OPTIONS (#PCDATA)>
 ID <!ELEMENT PRICE (#PCDATA)>
un identificador <!ELEMENT NOTES (#PCDATA)>
<!ATTLIST PRODUCT NAME CDATA #IMPLIED>
 IDREF
<!ATTLIST
tiene que coincidir con un ID de un elemento.
CATEGORY (HandTool | Table | Shop-
 NMTOKEN Professional) "HandTool">
nombre o número <!ATTLIST
 IDREFS PARTNUM CDATA #IMPLIED>
uno o más IDs separados por espacios <!ATTLIST
 NMTOKENS PLANT (Pittsburgh | Milwaukee | Chicago)
uno o más separados por espacios "Chicago">
Atributos por defecto <!ATTLIST
 Valor requerido, lo insertará el parser INVENTORY (InStock | Backordered |
#FIXED "value" Discontinued) "InStock">
 Atributo requerido, pero sin valor específico <!ATTLIST SPECIFICATIONS WEIGHT CDATA
#REQUIRED #IMPLIED>
<!ATTLIST
 Atributo no requerido, con valor por defecto
POWER CDATA #IMPLIED>
"valor"
<!ATTLIST OPTIONS FINISH (Metal |
5
ESPOCH-Facultad Informática y Electrónica
. .

Polished | Matte) "Matte"> formado por texto, del cual parte es la información
<!ATTLIST OPTIONS propiamente tal y el resto son marcas que separan y
ADAPTER (Included | Optional | mantienen ordenada la información Lógicamente, esta
NotApplicable) "Included"> estructurado en forma de árbol, con una raíz a partir de
<!ATTLIST OPTIONS la cual se organiza la información
CASE (HardShell | Soft | NotApplicable)  Entre las herramientas que podemos utilizar para
"HardShell"> trabajar con XML podemos nombrar los Browsers o
<!ATTLIST PRICE MSRP CDATA #IMPLIED> Navegadores, los editores de XML, los parsers y los
<!ATTLIST PRICE editores de XSL. Finalmente pudimos ver el amplio
WHOLESALE CDATA #IMPLIED> campo de aplicaciones que se presenta al trabajar con
<!ATTLIST PRICE XML. Aunque esta solo ha sido una pequeña muestra
STREET CDATA #IMPLIED> de lo que es XML, se puede apreciar que, de seguir
<!ATTLIST PRICE desarrollándose, esta herramienta llegará a ser de gran
SHIPPING CDATA #IMPLIED> importancia en Internet en el futuro.
• Las DTD se emplean generalmente para
determinar la estructura de un documento mediante
<!ENTITY AUTHOR "John Doe"> etiquetas (en inglés tags) XML o SGML. Una DTD
<!ENTITY COMPANY "JD Power Tools, Inc."> describe: Elementos: indican qué etiquetas son
<!ENTITY EMAIL "jd@jd-tools.com"> permitidas y el contenido de dichas etiquetas.
]>
Estructura: indica el orden en que van las etiquetas en
el documento. Anidamiento: indica qué etiquetas van
Artículo de periódico DTD dentro de otras.
• Crear una definición del tipo de documento (DTD)
<! DOCTYPE NEWSPAPER [ es como crear nuestro propio lenguaje de marcado,
<! ELEMENT NEWSPAPER (ARTICLE +)> para una aplicación específica. Por ejemplo, podríamos
<! ELEMENT ARTÍCULO (HEADLINE, BYLINE, crear un DTD que defina una tarjeta de visita. A partir
LEAD, BODY, NOTES)> de ese DTD, tendríamos una serie de elementos XML
<! ELEMENT HEADLINE (#PCDATA)> que nos permitirían definir tarjetas de visita.
<! ELEMENT BYLINE (#PCDATA)> • Originalmente los DTDs se desarrollaron para ser
<! ELEMENT LEAD (#PCDATA) > utilizados con SGML. Pueden ser parte del documento
<! ELEMENT BODY (#PCDATA)> XML, pero se suele colocar aparte para utilizarlo en una
<! ELEMENT NOTES (#PCDATA)> serie de documentos.
<! ATTLIST ARTÍCULO AUTOR CDATA #
PREQUIRED>
<! ATTLIST ARTÍCULO EDITOR CDATA
#IMPLIED> 4 REFERENCIAS
<! ATTLIST ARTÍCULO FECHA CDATA #IMPLIED>
<! ATTLIST ARTÍCULO EDICIÓN CDATA
 https://www.ibm.com/support/knowledgece
#IMPLIED>
nter/es/SSGLW6_5.2.1/com.ibm.p8.pe.user
<! ENTITY NEWSPAPER "Vervet Logic
.doc/bpfe014.htm
Times">
 http://php.net/manual/es/ref.xml.php#ref.xm
<! ENTITY PUBLISHER "Vervet Logic Press">
l
<! ENTITY COPYRIGHT "Copyright 1998 Vervet
 https://conocimientoysistemas.wordpress.c
Logic Press">
om/tag/caracteristicas-xml/
 http://www.mundolinux.info/que-es-xml.htm
3 CONCLUSIÓN
 https://msdn.microsoft.com/es-
 El (DTD) permite restringir el contenido de los es/library/cc507701.as
elementos y los atributos de un documento, especificar el
orden en el que deben aparecer, su obligatoriedad entre
otras, estas son comprobadas por el procesador XML, y
así permiten realizar un filtrado de los documentos que el
procesador debe admitir.
 De este informe podemos concluir que XML es un
metalenguaje, que nos permite definir la estructura física
y lógica que le damos a la información. Físicamente esta

6
ESPOCH-Facultad Informática y Electrónica

Vous aimerez peut-être aussi