Jing Lu and Bernhard Mitschang
Extensible Markup Language (XML)‐based data integration systems (DIS) aim to support global updates. Data consistency among data sources is not yet enforced at the integration…
Abstract
Purpose
Extensible Markup Language (XML)‐based data integration systems (DIS) aim to support global updates. Data consistency among data sources is not yet enforced at the integration level or enforced in an ad hoc manner which leads to redundant checking of consistency or unrepairable mistakes. This paper aims to provide XQuery trigger service to enforce data integrity and data consistency in the DIS at the integration level.
Design/methodology/approach
Data consistency is enforced among data sources through providing XQuery trigger service for the XML‐DIS. An XQuery trigger model is defined and shown how to use this model to define different integrity constraints and triggers at the integration level. The paper proposes the architecture of the XQuery trigger service and shows how to enforce data consistency in the DIS. Important components including event detection, condition evaluation and action firing are discussed. Necessary algorithms including how to produce ChangeRecord, how to find activated triggers, how to process LET and FOR clauses and how to create data objects from XML fragment are proposed. Trigger termination and failure handling are also discussed.
Findings
XQuery trigger can express miscellaneous data integrity constraints and triggers in the DIS and is highly abstract, refined and easy to understand. XQuery trigger service provides an easy‐to‐maintain method of the data consistency rules and a uniform, nonredundant and centralized enforcement of data consistency.
Originality/value
An XQuery trigger model with namespace annotations, which can define constraints and triggers among different data sources. An XQuery trigger service architecture for the XML‐DIS, which can enforce data consistency at the integration level. For DIS administrators, who want to enforce data consistency when permitting updates at the integration level.