When a group of authors collaboratively edits inter-related documents, consistency problems occur almost immediately. Current document management systems (DMS) provide useful mechanisms such as document locking and version control, but often lack consistency management facilities. If at all, consistency is dened via informal guidelines, which do not support automatic consistency checks. In this paper, we propose to use explicit formal consis-tency rules for heterogeneous repositories that are man-aged by traditional DMS. Rules are formalized in a vari-ant of rst-order temporal logic. Functions and pred-icates, implemented in a full programming language, provide complex (even higher-order) functionality. A static type system supports rule formalization, where types also dene (formal) document models. In the presence of types, the challenge is to smoothly combine a rst-order logic with a useful type system including subtyping. In implementing a tolerant view of consis-tency, we do not expect that repositories satisfy consis-tency rules. Instead, a novel semantics precisely pin-points inconsistent document parts and indicates when, where, and why a repository is inconsistent. Speed is a key issue in our approach towards tolerating inconsistencies. We, therefore, developed ecient tech-niques for consistency rule evaluation. Our strategy is known from databases: (1) static analysis character-izes and simplies consistency rules and (2) at run-time rules are evaluated incrementally. The major dierences to databases are that we consider informal documents and explicitly allow inconsistencies. Consequently, we lack formal update descriptions and cannot rely on con-sistency prior to updates. Our major contributions are 1. the use of explicit formal rules giving a precise (and still comprehensible) notion of consistency, 2. a static type system securing the formalization pro-cess, 3. a novel semantics pinpointing inconsistent docu-ment (parts) precisely, 4. ecient techniques for consistency rule evaluation, and 5. a design of how to automatically check consistency for document engineering projects that use existing DMS. We have implemented a prototype of a consistency checker. Applied to real world content, it shows that our contributions can signicantly improve consistency in document engineering processes.
«When a group of authors collaboratively edits inter-related documents, consistency problems occur almost immediately. Current document management systems (DMS) provide useful mechanisms such as document locking and version control, but often lack consistency management facilities. If at all, consistency is dened via informal guidelines, which do not support automatic consistency checks. In this paper, we propose to use explicit formal consis-tency rules for heterogeneous repositories that are ma...
»