{
  "id": "type-n28",
  "revision": "16200a70f926379edf30405b9447074e33665ce8858aa54f62ff856c397af83f",
  "regions": [
    {
      "id": "control-plane",
      "label": "Control plane",
      "parent": null
    },
    {
      "id": "zone-a",
      "label": "Zone A",
      "parent": null
    },
    {
      "id": "zone-b",
      "label": "Zone B",
      "parent": null
    },
    {
      "id": "desired-service",
      "label": "Desired service",
      "parent": null
    }
  ],
  "nodes": [
    {
      "id": "pool",
      "label": "Regional worker pool",
      "kind": "N28",
      "region": "control-plane",
      "ports": [
        {
          "id": "capacity",
          "profile": "P19",
          "contract": "HostCapacitySnapshotV1",
          "polarity": "Offer"
        },
        {
          "id": "plan",
          "profile": "P01",
          "contract": "PlacementAdmissionPlanV1",
          "polarity": "Require"
        }
      ]
    },
    {
      "id": "zoneA",
      "label": "Zone A host",
      "kind": "N27",
      "region": "zone-a",
      "ports": [
        {
          "id": "placement",
          "profile": "P19",
          "contract": "ReplicaHostPlacementV1",
          "polarity": "Neutral"
        }
      ]
    },
    {
      "id": "zoneB",
      "label": "Zone B host",
      "kind": "N27",
      "region": "zone-b",
      "ports": [
        {
          "id": "placement",
          "profile": "P19",
          "contract": "ReplicaHostPlacementV1",
          "polarity": "Neutral"
        }
      ]
    },
    {
      "id": "replicaA",
      "label": "Service replica A",
      "kind": "N27",
      "region": "desired-service",
      "ports": [
        {
          "id": "placement",
          "profile": "P19",
          "contract": "ReplicaHostPlacementV1",
          "polarity": "Neutral"
        },
        {
          "id": "zone",
          "profile": "P19",
          "contract": "DistinctZoneConstraintV1",
          "polarity": "Neutral"
        }
      ]
    },
    {
      "id": "replicaB",
      "label": "Service replica B",
      "kind": "N27",
      "region": "desired-service",
      "ports": [
        {
          "id": "placement",
          "profile": "P19",
          "contract": "ReplicaHostPlacementV1",
          "polarity": "Neutral"
        },
        {
          "id": "zone",
          "profile": "P19",
          "contract": "DistinctZoneConstraintV1",
          "polarity": "Neutral"
        }
      ]
    },
    {
      "id": "plan",
      "label": "Placement decision",
      "kind": "N03",
      "region": "control-plane",
      "ports": [
        {
          "id": "capacity",
          "profile": "P19",
          "contract": "HostCapacitySnapshotV1",
          "polarity": "Require"
        },
        {
          "id": "admitted",
          "profile": "P01",
          "contract": "PlacementAdmissionPlanV1",
          "polarity": "Offer"
        }
      ]
    }
  ],
  "relations": [
    {
      "id": "capacity",
      "kind": "H02",
      "incidences": [
        {
          "node": "pool",
          "port": "capacity",
          "role": "source",
          "ordinal": 0
        },
        {
          "node": "plan",
          "port": "capacity",
          "role": "target",
          "ordinal": 0
        }
      ]
    },
    {
      "id": "place-a",
      "kind": "H21",
      "incidences": [
        {
          "node": "replicaA",
          "port": "placement",
          "role": "subject",
          "ordinal": 0
        },
        {
          "node": "zoneA",
          "port": "placement",
          "role": "host",
          "ordinal": 0
        }
      ]
    },
    {
      "id": "place-b",
      "kind": "H21",
      "incidences": [
        {
          "node": "replicaB",
          "port": "placement",
          "role": "subject",
          "ordinal": 0
        },
        {
          "node": "zoneB",
          "port": "placement",
          "role": "host",
          "ordinal": 0
        }
      ]
    },
    {
      "id": "separate",
      "kind": "H22",
      "incidences": [
        {
          "node": "replicaA",
          "port": "zone",
          "role": "member",
          "ordinal": 0
        },
        {
          "node": "replicaB",
          "port": "zone",
          "role": "member",
          "ordinal": 1
        }
      ]
    },
    {
      "id": "admit",
      "kind": "H02",
      "incidences": [
        {
          "node": "plan",
          "port": "admitted",
          "role": "source",
          "ordinal": 0
        },
        {
          "node": "pool",
          "port": "plan",
          "role": "target",
          "ordinal": 0
        }
      ]
    }
  ]
}
