Consistent document engineering: formalizing type-safe consistency rules for heterogeneous repositories

  • Authors:
  • Jan Scheffczyk;Uwe M. Borghoff;Peter Rödig;Lothar Schmitz

  • Affiliations:
  • University of the Federal Armed Forces, Neubiberg, Germany;University of the Federal Armed Forces, Neubiberg, Germany;University of the Federal Armed Forces, Neubiberg, Germany;University of the Federal Armed Forces, Neubiberg, Germany

  • Venue:
  • Proceedings of the 2003 ACM symposium on Document engineering
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

When a group of authors collaboratively edits interrelated 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 "defined" via informal guidelines, which do not support automatic consistency checks.In this paper, we propose to use explicit formal consistency rules for heterogeneous repositories that are managed by traditional DMS. Rules are formalized in a variant of first-order temporal logic. Functions and predicates, implemented in a full programming language, provide complex (even higher-order) functionality. A static type system supports rule formalization, where types also define (formal) document models. In the presence of types, the challenge is to smoothly combine a first-order logic with a useful type system including subtyping. In implementing a tolerant view of consistency, we do not expect that repositories satisfy consistency rules. Instead, a novel semantics precisely pinpoints inconsistent document parts and indicates when, where, and why a repository is inconsistent.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 process, (3) a novel semantics pinpointing inconsistent document (parts) precisely, and (4) 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 significantly improve consistency in document engineering processes.