Sequence hierarchy

Start with one L1 and add interaction-owned L2 and L3 detail where it helps readers.

AAL Sequence 0.1 · Dictionary 0.1.0

On this page

L1 → L2 → L3 and Show all

  1. Select a message and choose Create Detail Sequence. The child reuses its endpoints and opens immediately.
  2. Author that child independently. Repeat once more to reach L3; deeper creation is disabled.
  3. Use breadcrumbs or the picker to navigate. Show all expands every root and its L2/L3 children on one canvas.
  4. Select a message to edit its owning sequence. Shared participant headers appear once; the active sequence determines new messages.

Show all uses one participant row and a shared timeline. Details appear immediately after their owning message, with L1/L2/L3 separators. Activations and lifetimes remain independent explanations. Flat visual refinements save separately; individual sequence layouts remain intact.

Three-level login journey
Digital ApplicationApplicationData PlatformData platformL1 · Customer LoginL2 · Authenticate CustomerL3 · Token ExchangeCustomeractorCustomer PortalsystemAuthentication APIapiToken StoredatabaseSign inValidate credentialsHTTPSIssue tokenStore token hashSQLStoredTokenSession tokenWelcome

L1 Login owns L2 Authenticate, which owns L3 Token Exchange. The flat view shares participant headers, groups related participants, and preserves each sequence’s event ownership. Scroll inside the diagram to see its full size. These previews use the editor’s actual layout and SVG renderer.

Read the complete AAL
Three-level login journey
aal sequence "0.1" dictionary "0.1.0"
interaction LoginJourney "Customer Login" {
    participant Customer "Customer" { type actor }
    participant Portal "Customer Portal" { type system }
    participant Auth "Authentication API" { type api technology "HTTPS" }
    participant Tokens "Token Store" { type database }
    group Application "Digital Application" { participants [Portal, Auth] type "Application" icon "/deployment-icons/generic/application.svg" }
    group Storage "Data Platform" { participants [Tokens] type "Data platform" }
    sequence Overview "Customer Login" {
        participants [Customer, Portal]
        message Login Customer -> Portal sync "Sign in" { detail Authenticate }
        message Welcome Portal -> Customer return "Welcome"
    }
    sequence Authenticate "Authenticate Customer" {
        participants [Customer, Portal, Auth]
        message Credentials Portal -> Auth sync "Validate credentials" { detail TokenExchange protocol "HTTPS" }
        message Session Auth -> Portal return "Session token"
    }
    sequence TokenExchange "Token Exchange" {
        participants [Portal, Auth, Tokens]
        message Issue Portal -> Auth sync "Issue token"
        activate TokenWork Auth
        message Persist Auth -> Tokens sync "Store token hash" { protocol "SQL" }
        message Stored Tokens -> Auth return "Stored"
        message Token Auth -> Portal return "Token"
        deactivate TokenDone TokenWork
    }
}

Try an interaction detail

  1. Select a message in L1 and add its L2 detail.
  2. Add L3 detail to a message within L2, then return using the breadcrumbs.
  3. Turn on Show all to read the combined journey.

What you should see: one root with separate details owned by their messages. Show all reveals the hierarchy without combining the editable sequences.

Each project has exactly one L1 root. Other sequences are L2/L3 details owned by interactions. An owning message has one detail, and each detail has one owner. Deleting an owner or containing branch confirms descendant removal. Undo restores the entire transaction.