X-Spread : um mecanismo automático para propagação da evolução de esquemas para documentos XML

Assim como as aplicações, as bases de dados evoluem ao longo do tempo. Esta evolução ocorre em função de alterações de cunho técnico ou por alterações na realidade modelada pela base de dados. Bases de dados semiestruturados, compostas por esquemas e documentos XML, são afetadas por esta evolução de...

Full description

Bibliographic Details
Main Author: Silveira, Vincent Nelson Kellers da
Other Authors: Galante, Renata de Matos
Format: Others
Language:Portuguese
Published: 2008
Subjects:
XML
Online Access:http://hdl.handle.net/10183/14284
Description
Summary:Assim como as aplicações, as bases de dados evoluem ao longo do tempo. Esta evolução ocorre em função de alterações de cunho técnico ou por alterações na realidade modelada pela base de dados. Bases de dados semiestruturados, compostas por esquemas e documentos XML, são afetadas por esta evolução de uma maneira diversa daquela observada em bases de dados relacionais. Modificações em esquemas podem levar bases de dados semiestruturados a um estado inconsistente, pois as instâncias podem tornar-se incompatíveis com as definições mais recentes dos esquemas. Em bancos de dados relacionais, modificações que levem a base a um estado inválido são bloqueadas pelo sistema gerenciador. Em bases de dados semiestruturados sem um sistema gerenciador, modificações no esquema não podem ser bloqueadas em função das instâncias existentes, em função da ausência do gerenciador. Trabalhos acadêmicos e comerciais na área de evolução de esquemas XML modelam diferentes aspectos deste processo, mas usualmente não abordam o efeito que a evolução do esquema possui sobre as instâncias existentes. As soluções propostas para este problema usualmente demandam intervenção do administrador do banco de dados na adaptação das instâncias ou a utilização de uma interface específica para edição do esquema. Este trabalho especifica o X-Spread, um mecanismo automático para propagação de modificações em esquemas para documentos XML. O X-Spread monitora periodicamente esquemas XML, e ao identificar modificações em um esquema, inicia a revalidação dos documentos que referenciam o esquema modificado. A revalidação analisa somente as porções dos documentos correspondentes às porções modificadas no esquema. Documentos considerados inválidos no processo de revalidação serão submetidos ao processo de adaptação, a fim de tornarem-se novamente compatíveis com as definições do esquema. A arquitetura proposta para o X-Spread permite o seu emprego em diferentes cenários de utilização de bases de dados semiestruturados. A mesma arquitetura proposta para revalidação e adaptação de documentos XML é aplicável a mensagens XML trocadas entre aplicações através de uma rede de dados. Ao administrador do banco de dados semiestruturado é oferecida a flexibilidade de utilização de qualquer ferramenta desejada para edição do esquema, bem como a possibilidade de restringir conforme suas necessidades o conjunto de operações de revalidação e adaptação executadas pelo X-Spread. A principal contribuição do X-Spread é a modelagem de todas as fases do processo de evolução de esquemas e dos processos de revalidação e adaptação de documentos XML. O processos definidos aplicam-se a documentos armazenados em um servidor de arquivos e a documentos transmitidos entre diferentes aplicações através de uma rede de dados. === Like applications, databases evolve as time goes by. Evolution can occur due to technical changes or due to changes in the modeled reality. Semistructured databases, composed by schema and XML documents, are not affected by evolution as relational databases. Changes to semistructured schema can lead the database to an inconsistent state, since instances can become invalid with respect to the most recent schema definitions. Modifications that lead the database to an inconsistent state are blocked by the management system of relational databases. Semistructured databases with no management system can not have this kind of modification blocked due to the lack of management system. Academic and commercial research on XML schema evolution models different evolution aspects, but usually the effect that evolution has on existing database instances is not investigaed. When this effect is subject of investigation, the proposed solutions usually require database administrator intervention in the instance adaptation process or usage of an specific schema update interface. This work specifies X-Spread, an automatic mechanism for propagation of schema modification to XML documents. X-Spread periodically monitors XML schemata, and upon identification of changes, revalidation of documents with references to the changed schema is started. Revalidation takes into account only items in the document equivalent to items modified in the schema. Documents considered invalid during the revalidation process are subjected to the adaptation process, in order to become once again valid with respect to the schema. The X-Spread architecture supports different scenarios of semistructured databases usage. This architecture can also be used for revalidation and adaptation of XML messages exchanged by applications over a network. To the database administrator is offered the flexibility of choice on schema edit tool, as well as the ability to restrict the set of operations executed by X-Spread during the revalidation and adaptation processes. The main contribution of X-Spread is the modeling of all schema evolution phases as well as the XML document revalidation and adaptation processes modeling. These processes here defined are suitable to XML documents stored in a file server as well as XML messages exchanged by application over a network.