Modelling and analysis of normative documents
Journal article, 2017

We are interested in using formal methods to analyse normative documents or contracts such as terms of use, privacy policies, and service agreements. We begin by modelling such documents in terms of obligations, permissions and prohibitions of agents over actions, restricted by timing constraints and including potential penalties resulting from the non-fulfilment of clauses. This is done using the C-O Diagram formalism, which we have extended syntactically and for which we have defined a new trace semantics. Models in this formalism can then be translated into networks of timed automata, and we have a complete working implementation of this translation. The network of automata is used as a specification of a normative document, making it amenable to verification against given properties. By applying this approach to a case study from a real-world contract, we show the kinds of analysis possible through both syntactic querying on the structure of the model, as well as verification of properties using UPPAAL.

Normative documents

Contract analysis


Timed automata


John J. Camilleri

University of Gothenburg

Gerardo Schneider

University of Gothenburg

Journal of Logical and Algebraic Methods in Programming

2352-2208 (ISSN) 2352-2216 (eISSN)

Vol. 91 33-59

Subject Categories

Other Computer and Information Science

Language Technology (Computational Linguistics)

Computer Science



More information

Latest update