UJG / Editor's Draft /
GitHub
Table of Contents
  • 1Abstract
  • 2Conceptual Stack
  • 3Guiding Principles
  • 4Optional Modules
  • 5Opaque Extensions
W3C Community Group Draft Report

Architecture

draft

Status of this Document

This report was published by the User Journal Graph Community Group . It is not a W3C Standard nor is it on the W3C Standards Track. Please note that under the W3C Community Contributor License Agreement (CLA) there is a limited opt-out and other conditions apply. Learn more about W3C Community and Business Groups .

Last Update
2026-07-15
Editors
  • Seva Dolgopolov
Group
User Journal Graph Community Group
Repository
View Source
License
W3C-Software-and-Document

1. Abstract

The User Journey Graph (UJG) standardizes user experience as computable data. It decouples the Definition of Intent (Design) from the Observation of Reality (Telemetry). This separation creates a single source of truth for Designers, Developers, and Analysts. As a deterministic protocol, it supports automation by AI agents across these roles, ensuring structural consistency.

2. Conceptual Stack

The main spec family is organized into five logical layers:

  1. The Core (Transport): The universal JSON-LD envelope. Ensures any tool—human or AI—can parse the file structure without ambiguity.

  2. The Graph (Definition): Defines the "Happy Path." It is the vocabulary for States, Transitions, and Composition (sub-journey referencing).

  3. The Surface (Materialization): Exposes supported Graph nodes as addressable human-facing surfaces, touchpoints scoped to CompositeState boundaries, human users, and visible occurrences.

  4. The Runtime (Execution): Captures the "Actual Path." It records observed surface events as a causal chain.

  5. The Mapping (Conformance): Closes the loop. It resolves Reality(Runtime) through Surface onto Intent(Graph) to calculate conversion and detect friction.

3. Guiding Principles

  1. Graph First: User experience is an automata, not a list of URLs.

  2. Stable Identity: Entities must be named with URIs to survive refactors.

  3. Separation of Concerns: A "Journey" (the plan) is immutable; observed surface events are runtime facts.

  4. Vendor Neutrality: The spec defines data shapes, not visualization rules.

4. Optional Modules

The Editor's Draft also publishes a parallel family of optional modules for capabilities that build on the core UJG layers without expanding the shared interoperability baseline. Earlier drafts called these "supported extensions", but the normative model is now module-oriented: optional capabilities that need interoperable graph terms publish their own ontology, JSON-LD context, and SHACL shape.

Optional modules are where new ideas can live before every UJG document needs them. They can add meaning on top of the main spec family, but they should leave the older layers intact. When an idea becomes common enough that most compliant tools need it, it belongs in the main spec family instead of staying optional.

Optional modules can grow in steps. A small module can first give the shared UJG layers a simple thing to point at. Later modules can build on that thing and describe it in more detail. This lets new capabilities become precise without forcing the shared baseline, or this architecture page, to know every specialized vocabulary that may be added later.

First-level optional modules are small bridges that attach directly to main spec concepts. Second-level optional modules compose one or more shared layers or first-level bridges.

5. Opaque Extensions

The specification distinguishes published module vocabularies from opaque deployment-private payloads. Opaque payloads are useful for local metadata and vendor integration, but they are not a substitute for terms that need interoperable semantics. Processing rules for opaque payloads and published module terms are defined by the modules that own those mechanisms.

Copyright © 2026 the Contributors to the ujg/architecture, published by the User Journal Graph Community Group under the W3C Community Contributor License Agreement (CLA) . A human-readable summary is available.

generated by Speculator