Inquire.  Play.  Create in clarity
← Catenator

Minimal spec — café table ordering

A single macro, two mesos, three micros. Every required field is present. No optional fields are used. This is the smallest valid Catenator spec that describes something meaningful.

spec:
  version: "1.0.0"
  authored: "2026-06-18"
  status: draft
  standard-version: "1.0.0"

system:
  name: cafe-ordering
  display-name: "Café table ordering"
  display-name-source: inferred

macros:
  - name: ordering
    display-name: "Ordering"
    display-name-source: inferred
    source: "Diners browse a menu and place orders from their table."
    mesos:
      - name: ordering.menu
        display-name: "Menu"
        display-name-source: inferred
        source: "Diners browse available items before selecting."
        micros:
          - name: menu-item
            display-name: "Menu item"
            display-name-source: inferred
            descriptor: model
            definition: "A named, priced item available for selection. Has a name, a price, and a category."
      - name: ordering.cart
        display-name: "Order"
        display-name-source: inferred
        source: "Diners accumulate selected items before submitting to the kitchen."
        micros:
          - name: cart
            display-name: "Order"
            display-name-source: inferred
            descriptor: model
            definition: "The collection of items a diner has selected. Accumulates until submitted. Belongs to one diner at one table."
          - name: submit-order
            display-name: "Submit order"
            display-name-source: inferred
            descriptor: operation
            definition: "The diner sends their accumulated order to the kitchen. The order is then immutable."

What this demonstrates:

  • The spec header with version pinning
  • A single macro (ordering) containing two mesos
  • Both descriptor types in use — model and operation
  • display-name-source: inferred throughout — the agent may refine the names
  • The source field at macro and meso level, explaining why each item exists
0px0 cols0px module