One key to the wide and rapid acceptance of the World Wide Web is the simplicity of its model. We see this in its short-lived connections and generally stateless servers, as well as in the relationship between nodes (HTML pages) and embedded links. Though these factors contribute to the Web's success, they also come at a cost: precise control of how documents are presented to the user is beyond this basic model.Richer graph models permit authors to ''program'' the browsing behavior they want readers to see by turning the hypertext into a hyperprogram with specific semantics. Multiple browsing streams can be started under the author's control and then kept in step through the synchronization mechanisms provided by the graph model. Our current work adds a Semantic Web Graph Layer (SWGL) which allows dynamic interpretation of link and node structures according to graph models.As a motivating example of the utility of the SWGL, we have chosen to implement the graph model for Colored Petri Nets (CPNs). The previous MMM project implemented a limited subset of the Petri net model to give Web authors the ability to control concurrency and synchronization in a single reader's browsing session. CPNs extend this protocol to give control of multiple readers in a like fashion.This paper details the SWGL and its architecture, some sample protocol implementations, and the latest extensions to MHTML that were necessary to support these enhancements.