PDF de programación - Diseño y Construcción de un Lenguaje y Modelo para Bases Activas de Documentos XML

Imágen de pdf Diseño y Construcción de un Lenguaje y Modelo para Bases Activas de Documentos XML

Diseño y Construcción de un Lenguaje y Modelo para Bases Activas de Documentos XMLgráfica de visualizaciones

Publicado el 28 de Julio del 2017
684 visualizaciones desde el 28 de Julio del 2017
743,5 KB
114 paginas
Creado hace 18a (28/11/2005)
Centro de Investigación y de Estudios Avanzados

del IPN

Departamento de Ingeniería Eléctrica

Sección de Computación

Diseño y Construcción de un Lenguaje y Modelo para Bases

Activas de Documentos XML

Tesis que presenta

Anahi Ramírez Hernández

para obtener el grado de
Maestro en Ciencias

en la especialidad de

Ingeniería Eléctrica,
Opción Computación

Dirigida por el

Doctor José Oscar Olmedo Aguirre

México, D.F.

Diciembre de 2005

II

Resumen

Actualmente XML es el principal medio para almacenar, buscar y extraer información en
un gran número de aplicaciones Web. Con el propósito de agregar mayor funcionalidad a las
bases de documentos XML, la comunidad de bases de datos activas ha propuesto extenderlas
para que soporten reglas ECA. También se han incorporado módulos de razonamiento deductivo
que permiten derivar consecuencias lógicas a partir del contenido de la base de documentos. Los
servicios Web son otra tecnología que está surgiendo para construir aplicaciones Web, en este
contexto XML tiene un papel importante. Por lo anterior, los repositorios de documentos XML
requieren cada vez mayor funcionalidad.

En esta tesis se hicieron dos extensiones al lenguaje ADM. Antes de este trabajo, ADM tenía
características activas y deductivas para bases de documentos, sin embargo no consideraba la in-
teracción con bases de datos relacionales. Las extensiones que se hicieron son dos: se agregó inter-
operabilidad entre aplicaciones que usan BD relacionales y se incorporó la tecnología de servicios
Web. Para presentar la nueva funcionalidad del lenguaje se desarrolló como caso de estudio un
servidor proxy de páginas Web.

La interacción de ADM con bases de datos relacionales se hizo empleando ODBC como méto-
do estándar de acceso a bases de datos. Cada ODBC se relaciona directamente con un conec-
tor [Agu00]. La idea principal para incorporar servicios Web al lenguaje, consistió en crear pri-
mitivas que permitan enviar y recibir fragmentos de documentos XML en el cuerpo de mensajes
SOAP. La programación se hizo en Java debido a su portabilidad y las facilidades que brinda
para la manipulación de documentos XML.

De las ventajas que ofrece el trabajo hecho en esta tesis se pueden considerar las siguientes: se
extiende el ámbito de aplicación de las reglas ECA a la Web, se pueden invocar servicios Web de
forma automática y pueden invocarse entre si. En concecuencia crece el dominio de aplicaciones
de ADM, con nuestro trabajo ahora es posible automatizar workflows en Internet.

iii

IV

Índice general

Resumen

Índice General

Índice de figuras

Índice de tablas

1. Introducción

1.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Antecedentes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4. Solución propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5. Objetivos generales y específicos
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5.1. Objetivo general
1.5.2. Objetivos particulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.6. Metodología . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7. Contribuciones
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.8. Estructura del documento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

III

IV

VII

X

1
1
2
3
4
5
5
5
6
6
7

2. Bases activas de documentos XML

Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.
2.2. XML dentro de los lenguajes de marcado . . . . . . . . . . . . . . . . . . . . . . .
2.2.1. XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9
9
9
9
2.3. Reglas ECA en sistemas de bases de datos . . . . . . . . . . . . . . . . . . . . . . . 10
Introducción a la reglas ECA . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.1.
2.3.2. Lenguajes de reglas de bases de datos
. . . . . . . . . . . . . . . . . . . . . 11
2.3.3. Vinculación entre eventos, condiciones y acciones . . . . . . . . . . . . . . . 15
2.3.4. Ordenamiento de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3.5. Semánticas de procesamiento de reglas . . . . . . . . . . . . . . . . . . . . . 15
2.3.6. Arquitectura de programación . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4. Trabajo Relacionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4.1. Servicios Web y Repositorios Activos de documentos XML . . . . . . . . . 17
2.4.2. Uso de servicios reactivos con reglas activas en repositorios XML . . . . . . 18
2.4.3. Análisis y optimización de Reglas ECA en XML . . . . . . . . . . . . . . . 19
2.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

v

VI

ÍNDICE GENERAL

3. Descripción Formal de ADM

23
3.1. Sintaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2. Modelo de Reglas Deductivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3. Modelo de Reglas Activas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.1. Ambito de una regla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.2. Selección . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.3. Activación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.4.
. . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.5. Secuencialidad y Concurrencia . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.6. Comunicación Asíncrona
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.7. Comunicación Síncrona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Interacción entre Reglas Activas

4. Caso de estudio: Proxy http

35
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.1.
4.2. Descripción del proxy http en ADM . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3. Reglas ECA del proxy http . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.3.1. Reglas del proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3.2. Reglas del Servidor Interno . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.4. Análisis del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.4.1. CASO 1: Página no disponible en el proxy . . . . . . . . . . . . . . . . . . . 55
4.4.2. CASO 2: Solicitud de página actualizada disponible en el proxy . . . . . . . 56
4.4.3. CASO 3: Solicitud de página no actualizada disponible en el proxy . . . . . 58
4.4.4. CASO 4: Página no existente . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5. Implementación del lenguaje

63
5.1. Descripción del Administrador de Eventos . . . . . . . . . . . . . . . . . . . . . . . 63
5.2. Conector para comunicaciones (mensajería SOAP) . . . . . . . . . . . . . . . . . . 63
. . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.1. Envío y recepción de objetos
. . . . . . . . . . 64
5.2.2. Envío y recepción de objetos asociados a un identificador
5.2.3. Envío asíncrono . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.4. Suscripción por objetos específicos . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.5. Recepción síncrona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.6. Aceptación de eventos compuestos . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.7. Aceptación selectiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.8. Aceptación transaccional
5.2.9.
. . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.2.10. Estructuras de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3. Conector para colecciones (bases de datos) . . . . . . . . . . . . . . . . . . . . . . . 72
Inserción, eliminación y búsqueda de objetos
. . . . . . . . . . . . . . . . . 73
5.3.1.
Inserción, eliminación y búsqueda de objetos con identificador . . . . . . . . 73
5.3.2.
Inserción y eliminación de objetos (generadora de eventos) . . . . . . . . . . 73
5.3.3.
5.3.4.
Inserción y eliminación silenciosa . . . . . . . . . . . . . . . . . . . . . . . . 73
5.3.5. Suscripción para recibir objetos de un tipo dado . . . . . . . . . . . . . . . 73
5.3.6. Aceptación síncrona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.3.7. Aceptación selectiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.3.8. Aceptación transaccional
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.3.9. Aceptación de eventos compuestos . . . . . . . . . . . . . . . . . . . . . . . 74
5.3.10. Interacción tipo cliente-servidor . . . . . . . . . . . . . . . . . . . . . . . . . 74

Interacción cliente-servidor

ÍNDICE GENERAL

VII

5.3.11. Estructuras de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.4. Detalles de implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.4.1. Tecnología . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

6. Conclusiones y trabajo futuro

Bibliografía

Anexos

77

80

81

A. Introducción del lenguaje

83
A.1. Reglas deductivas en ADM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
A.1.1. Elementos XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
A.1.2. Términos XML . . . . . . . . . . . . . . . . . . . . .
  • Links de descarga
http://lwp-l.com/pdf5849

Comentarios de: Diseño y Construcción de un Lenguaje y Modelo para Bases Activas de Documentos XML (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad