The API for the BPEL Object Model (BOM), a domain-specific document object model (DOM) that can represent BPEL v1.1 and BPEL v2.0 (OASIS) processes. While the BOM enforced strcutural constraints --for example that a process contain one root activity-- it does not perform any static analysis, and may be used to produce processes that are invalid. It is also possible to use the BOM to build processes that do not conform to the BPEL XML Schema. This allows the BOM to be used in applications such a process design, where an incomplete or invalid process may need to be modeled.