Constraint diagrams are a visual notation designed to complement the Unified Modeling Language in the development of software systems. They generalize Venn diagrams and Euler circles, and include facilities for quantification and navigation of relations. Their design emphasizes scalability and expressiveness while retaining intuitiveness. The formalization of constraint diagrams is non-trivial: previous attempts have exposed subtleties concerned with the ordering of symbols in the visual language. Consequently, some constraint diagrams have more than one intuitive reading. We develop the concept of the dependence graph for a constraint diagram. From the dependence graph we obtain a set of reading trees. A reading tree provides a partial ordering for some syntactic elements of the diagram. Given a reading tree for a constraint diagram, we present an algorithm that delivers a unique semantic reading. Keywords Visual formalisms, software specification, formal methods, constraint diagr...