{
  "id": "type-p10",
  "revision": "0387fceca5d5a3e3246c53b0e5a4d3a19b22bf41104ff3aded5caf5a4ea31547",
  "regions": [
    {
      "id": "server",
      "label": "Server",
      "parent": null
    },
    {
      "id": "database",
      "label": "Database",
      "parent": null
    },
    {
      "id": "external",
      "label": "External",
      "parent": null
    }
  ],
  "nodes": [
    {
      "id": "transfer",
      "label": "Transfer request",
      "kind": "N02",
      "region": "server",
      "ports": [
        {
          "id": "execute",
          "profile": "P02",
          "contract": "LedgerTransferReceiptV1",
          "polarity": "Require"
        }
      ]
    },
    {
      "id": "tx",
      "label": "Ledger transaction authority",
      "kind": "N23",
      "region": "database",
      "ports": [
        {
          "id": "execute",
          "profile": "P02",
          "contract": "LedgerTransferReceiptV1",
          "polarity": "Offer"
        },
        {
          "id": "scope",
          "profile": "P10",
          "contract": "BalancedLedgerTransactionV1",
          "polarity": "Offer"
        },
        {
          "id": "committed",
          "profile": "P04",
          "contract": "LedgerTransferCommittedV1",
          "polarity": "Offer"
        }
      ]
    },
    {
      "id": "debit",
      "label": "Debit account",
      "kind": "N21",
      "region": "database",
      "ports": [
        {
          "id": "tx",
          "profile": "P10",
          "contract": "BalancedLedgerTransactionV1",
          "polarity": "Neutral"
        }
      ]
    },
    {
      "id": "credit",
      "label": "Credit account",
      "kind": "N21",
      "region": "database",
      "ports": [
        {
          "id": "tx",
          "profile": "P10",
          "contract": "BalancedLedgerTransactionV1",
          "polarity": "Neutral"
        }
      ]
    },
    {
      "id": "notify",
      "label": "Transfer notification",
      "kind": "N19",
      "region": "external",
      "ports": [
        {
          "id": "notify",
          "profile": "P04",
          "contract": "LedgerTransferCommittedV1",
          "polarity": "Require"
        }
      ]
    }
  ],
  "relations": [
    {
      "id": "request",
      "kind": "H05",
      "incidences": [
        {
          "node": "transfer",
          "port": "execute",
          "role": "caller",
          "ordinal": 0
        },
        {
          "node": "tx",
          "port": "execute",
          "role": "callee",
          "ordinal": 0
        }
      ]
    },
    {
      "id": "scope",
      "kind": "H16",
      "incidences": [
        {
          "node": "tx",
          "port": "scope",
          "role": "authority",
          "ordinal": 0
        },
        {
          "node": "debit",
          "port": "tx",
          "role": "participant",
          "ordinal": 0
        },
        {
          "node": "credit",
          "port": "tx",
          "role": "participant",
          "ordinal": 1
        }
      ]
    },
    {
      "id": "notify",
      "kind": "H04",
      "incidences": [
        {
          "node": "tx",
          "port": "committed",
          "role": "publisher",
          "ordinal": 0
        },
        {
          "node": "notify",
          "port": "notify",
          "role": "subscriber",
          "ordinal": 0
        }
      ]
    }
  ]
}
