Formalizing (Web) Standards

An Application of Test and Proof
  • Achim D. BruckerEmail author
  • Michael Herzberg
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10889)


Most popular technologies are based on informal or semi-formal standards that lack a rigid formal semantics. Typical examples include web technologies such as the DOM or HTML, which are defined by the Web Hypertext Application Technology Working Group (WHATWG) and the World Wide Web Consortium (W3C). While there might be API specifications and test cases meant to assert the compliance of implementations, the actual standard is rarely accompanied by a formal model that would lend itself for, e. g., verifying the security or safety properties of real systems.

Even when such a formalization of a standard exists, two important questions arise: first, to what extent does the formal model comply with the standard and, second, to what extent does a concrete implementation comply with the formal model and the assumptions made during the verification of certain properties?

In this paper, we present an approach that brings all three involved artifacts—the (semi-)formal standard, the formalization of the standard, and the implementations—closer together by combining verification, symbolic execution, and specification-based testing.


Standard compliance Compliance tests DOM 


  1. 1.
    Feo-Arenis, S., Westphal, B., Dietsch, D., Muñiz, M., Andisha, A.S., Podelski, A.: Ready for testing: ensuring conformance to industrial standards through formal verification. Formal Asp. Comput. 28(3), 499–527 (2016). Scholar
  2. 2.
    Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development. Coq’Art: The Calculus of Inductive Constructions. Springer, Heidelberg (2004). Scholar
  3. 3.
    Brucker, A.D., Herzberg, M.: The core DOM. Archive of Formal Proofs (2018, submitted). Formal proof development
  4. 4.
    Brucker, A.D., Herzberg, M.: A formal semantics of the core DOM in Isabelle/HOL. In: WWW 2018 Companion: The 2018 Web Conference Companion. ACM Press (2018).
  5. 5.
    Brucker, A.D., Wolff, B.: HOL-TestGen: an interactive test-case generation framework. In: Chechik, M., Wirsing, M. (eds.) FASE 2009. LNCS, vol. 5503, pp. 417–420. Springer, Heidelberg (2009). Scholar
  6. 6.
    Brucker, A.D., Wolff, B.: On theorem prover-based testing. Formal Aspects Comput. 25(5), 683–721 (2013). Scholar
  7. 7.
    Horl, J., Aichernig, B.K.: Validating voice communication requirements using lightweight formal methods. IEEE Softw. 17(3), 21–27 (2000). Scholar
  8. 8.
    Kristoffersen, F., Walter, T.: TTCN: towards a formal semantics and validation of test suites. Comput. Netw. ISDN Syst. 29(1), 15–47 (1996). Scholar
  9. 9.
    Nipkow, T., Paulson, T.C., Wenzel, M.: Isabelle/HOL—A Proof Assistantfor Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002). Scholar
  10. 10.
    W3C: W3C DOM4 (2015).
  11. 11.
  12. 12.
    W3C: Web platform test: DOM. Accessed 10 Nov 2017
  13. 13.
    WHATWG: DOM - living standard (2017). Accessed 24 Mar 2017

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computer ScienceThe University of SheffieldSheffieldUK

Personalised recommendations