### Abstract

While the (safely composable) DOM with shadow trees provide the technical basis for defining web components, it does neither defines the concept of web components nor specifies the safety properties that web components should guarantee. Consequently, the standard also does not discuss how or even if the methods for modifying the DOM respect component boundaries. In AFP entry, we present a formally verified model of safely composable web components and define safety properties which ensure that different web components can only interact with each other using well-defined interfaces. Moreover, our verification of the application programming interface (API) of the DOM revealed numerous invariants that implementations of the DOM API need to preserve to ensure the integrity of components. In comparison to the strict standard compliance formalization of Web Components in the AFP entry "DOM_Components", the notion of components in this entry (based on "SC_DOM" and "Shadow_SC_DOM") provides much stronger safety guarantees.

### License

BSD License

### Topics

- Computer science/Data structures

### Session SC_DOM_Components

- Core_DOM_DOM_Components
- Core_DOM_SC_DOM_Components
- Shadow_DOM_DOM_Components
- Shadow_DOM_SC_DOM_Components

### Depends on

- A Formal Model of the Safely Composable Document Object Model with Shadow Roots

### Auto-related entries

- A Formalization of Web Components

## Cite

×

SC_DOM_Components-AFP

    @article{SC_DOM_Components-AFP,
      author  = {Achim D. Brucker and Michael Herzberg},
      title   = {A Formalization of Safely Composable Web Components},
      journal = {Archive of Formal Proofs},
      month   = {September},
      year    = {2020},
      note    = {\url{https://isa-afp.org/entries/SC_DOM_Components.html},
                 Formal proof development},
      ISSN    = {2150-914x},
    }

Download

## Download

× Download latest

Older releases:

- Sep 13, 2023 : Isabelle2023
- Oct 27, 2022 : Isabelle2022
- Dec 14, 2021 : Isabelle2021-1
- Feb 23, 2021 : Isabelle2021
- Nov 27, 2020 : Isabelle2020