{
  "crubal": "2",
  "package": "party",
  "version": "2026-10-16",
  "owner": "crubal.com",
  "id": "crubal.com/party",
  "label": "Parties",
  "licence": "CC-BY-4.0",
  "prefixes": {
    "schema": "https://schema.org/"
  },
  "members": {
    "facet:name": "2026-10-16",
    "facet:image": "2026-10-16",
    "facet:url": "2026-10-16",
    "facet:email": "2026-10-16",
    "facet:phone": "2026-10-16",
    "facet:description": "2026-10-16",
    "facet:roles": "2026-10-16",
    "facet:memberOf": "2026-10-16",
    "facet:givenName": "2026-10-16",
    "facet:familyName": "2026-10-16",
    "facet:locale": "2026-10-16",
    "facet:timezone": "2026-10-16",
    "facet:signedUp": "2026-10-16",
    "facet:legalName": "2026-10-16",
    "facet:domain": "2026-10-16",
    "facet:taxId": "2026-10-16",
    "facet:address": "2026-10-16",
    "facet:operator": "2026-10-16",
    "facet:systemKind": "2026-10-16",
    "facet:scheme": "2026-10-16",
    "facet:scopes": "2026-10-16",
    "facet:requests": "2026-10-16",
    "facet:connection": "2026-10-16",
    "facet:connectedAt": "2026-10-16",
    "facet:version": "2026-10-16",
    "class:Person": "2026-10-16",
    "class:Organization": "2026-10-16",
    "class:System": "2026-10-16",
    "rule:emailIsPrivate": "2026-10-16",
    "rule:phoneIsPrivate": "2026-10-16",
    "rule:addressIsPrivate": "2026-10-16",
    "rule:taxIdIsPrivate": "2026-10-16",
    "contract:connect": "2026-10-16",
    "contract:profile": "2026-10-16",
    "kind:person": "2026-10-16",
    "kind:organization": "2026-10-16",
    "kind:system": "2026-10-16"
  },
  "kinds": [
    {
      "kind": "person",
      "levels": [
        "person"
      ],
      "base": "Person",
      "schema": {
        "person": "schema:Person"
      },
      "version": "2026-10-16"
    },
    {
      "kind": "organization",
      "levels": [
        "organization"
      ],
      "base": "Organization",
      "schema": {
        "organization": "schema:Organization"
      },
      "version": "2026-10-16"
    },
    {
      "kind": "system",
      "levels": [
        "system"
      ],
      "base": "System",
      "schema": {
        "system": "schema:SoftwareApplication"
      },
      "version": "2026-10-16"
    }
  ],
  "facets": [
    {
      "facet": "name",
      "type": "text",
      "same-as": [
        "schema:name"
      ],
      "length": "200",
      "required": true,
      "version": "2026-10-16"
    },
    {
      "facet": "image",
      "type": "image",
      "same-as": [
        "schema:image"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "url",
      "type": "text",
      "same-as": [
        "schema:url"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "email",
      "type": "text",
      "same-as": [
        "schema:email"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "phone",
      "type": "text",
      "same-as": [
        "schema:telephone"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "description",
      "type": "text",
      "same-as": [
        "schema:description"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "roles",
      "type": "link",
      "pick": "any",
      "to": "role",
      "version": "2026-10-16"
    },
    {
      "facet": "memberOf",
      "type": "link",
      "pick": "any",
      "same-as": [
        "schema:memberOf"
      ],
      "to": "organization",
      "version": "2026-10-16"
    },
    {
      "facet": "givenName",
      "type": "text",
      "same-as": [
        "schema:givenName"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "familyName",
      "type": "text",
      "same-as": [
        "schema:familyName"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "locale",
      "type": "text",
      "version": "2026-10-16"
    },
    {
      "facet": "timezone",
      "type": "text",
      "version": "2026-10-16"
    },
    {
      "facet": "signedUp",
      "type": "date",
      "precision": "minute",
      "version": "2026-10-16"
    },
    {
      "facet": "legalName",
      "type": "text",
      "same-as": [
        "schema:legalName"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "domain",
      "type": "text",
      "unique": true,
      "version": "2026-10-16"
    },
    {
      "facet": "taxId",
      "type": "text",
      "same-as": [
        "schema:taxID"
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "address",
      "type": "compound",
      "same-as": [
        "schema:address"
      ],
      "facets": [
        {
          "facet": "street",
          "type": "text",
          "same-as": [
            "schema:streetAddress"
          ]
        },
        {
          "facet": "locality",
          "type": "text",
          "same-as": [
            "schema:addressLocality"
          ]
        },
        {
          "facet": "region",
          "type": "text",
          "same-as": [
            "schema:addressRegion"
          ]
        },
        {
          "facet": "postalCode",
          "type": "text",
          "same-as": [
            "schema:postalCode"
          ]
        },
        {
          "facet": "country",
          "type": "text",
          "same-as": [
            "schema:addressCountry"
          ]
        }
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "operator",
      "type": "link",
      "to": "organization",
      "version": "2026-10-16"
    },
    {
      "facet": "systemKind",
      "type": "choice",
      "values": [
        {
          "value": "utility"
        },
        {
          "value": "partner"
        },
        {
          "value": "agent"
        }
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "scheme",
      "type": "choice",
      "values": [
        {
          "value": "oauth2"
        },
        {
          "value": "apikey"
        },
        {
          "value": "basic"
        },
        {
          "value": "none"
        }
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "scopes",
      "type": "text",
      "pick": "any",
      "version": "2026-10-16"
    },
    {
      "facet": "requests",
      "type": "text",
      "pick": "any",
      "version": "2026-10-16"
    },
    {
      "facet": "connection",
      "type": "choice",
      "values": [
        {
          "value": "connected"
        },
        {
          "value": "expired"
        },
        {
          "value": "revoked"
        }
      ],
      "version": "2026-10-16"
    },
    {
      "facet": "connectedAt",
      "type": "date",
      "precision": "minute",
      "version": "2026-10-16"
    },
    {
      "facet": "version",
      "type": "text",
      "version": "2026-10-16"
    }
  ],
  "classes": [
    {
      "class": "Person",
      "for": [
        "person"
      ],
      "facets": [
        {
          "facet": "name",
          "required": true
        },
        {
          "facet": "givenName"
        },
        {
          "facet": "familyName"
        },
        {
          "facet": "image"
        },
        {
          "facet": "email"
        },
        {
          "facet": "phone"
        },
        {
          "facet": "locale"
        },
        {
          "facet": "timezone"
        },
        {
          "facet": "roles"
        },
        {
          "facet": "memberOf"
        },
        {
          "facet": "signedUp"
        }
      ],
      "version": "2026-10-16"
    },
    {
      "class": "Organization",
      "for": [
        "organization"
      ],
      "facets": [
        {
          "facet": "name",
          "required": true
        },
        {
          "facet": "legalName"
        },
        {
          "facet": "domain"
        },
        {
          "facet": "url"
        },
        {
          "facet": "email"
        },
        {
          "facet": "phone"
        },
        {
          "facet": "address"
        },
        {
          "facet": "image"
        },
        {
          "facet": "description"
        },
        {
          "facet": "taxId"
        }
      ],
      "version": "2026-10-16"
    },
    {
      "class": "System",
      "for": [
        "system"
      ],
      "facets": [
        {
          "facet": "name",
          "required": true
        },
        {
          "facet": "operator"
        },
        {
          "facet": "systemKind"
        },
        {
          "facet": "url"
        },
        {
          "facet": "scheme"
        },
        {
          "facet": "scopes"
        },
        {
          "facet": "requests"
        },
        {
          "facet": "connection"
        },
        {
          "facet": "connectedAt"
        },
        {
          "facet": "version"
        },
        {
          "facet": "roles"
        }
      ],
      "version": "2026-10-16"
    }
  ],
  "rules": [
    {
      "rule": "emailIsPrivate",
      "then": "email shown to staff",
      "strength": "must",
      "version": "2026-10-16"
    },
    {
      "rule": "phoneIsPrivate",
      "then": "phone shown to staff",
      "strength": "must",
      "version": "2026-10-16"
    },
    {
      "rule": "addressIsPrivate",
      "then": "address shown to staff",
      "strength": "must",
      "version": "2026-10-16"
    },
    {
      "rule": "taxIdIsPrivate",
      "then": "taxId shown to staff",
      "strength": "must",
      "version": "2026-10-16"
    }
  ],
  "contracts": [
    {
      "contract": "connect",
      "kind": "form",
      "needs": [
        {
          "facet": "name",
          "required": true
        },
        {
          "facet": "scheme"
        },
        {
          "facet": "scopes"
        },
        {
          "facet": "requests"
        },
        {
          "facet": "connection"
        },
        {
          "facet": "connectedAt"
        }
      ],
      "reads": [
        {
          "from": "name",
          "to": "name"
        },
        {
          "from": "scheme",
          "to": "scheme"
        },
        {
          "from": "scopes",
          "to": "scopes"
        },
        {
          "from": "requests",
          "to": "requests"
        },
        {
          "from": "connection",
          "to": "connection"
        },
        {
          "from": "connectedAt",
          "to": "connectedAt"
        }
      ],
      "origin": "observed",
      "version": "2026-10-16"
    },
    {
      "contract": "profile",
      "kind": "form",
      "needs": [
        {
          "facet": "name",
          "required": true
        },
        {
          "facet": "givenName"
        },
        {
          "facet": "familyName"
        },
        {
          "facet": "image"
        },
        {
          "facet": "email"
        },
        {
          "facet": "phone"
        },
        {
          "facet": "locale"
        },
        {
          "facet": "timezone"
        }
      ],
      "reads": [
        {
          "from": "name",
          "to": "name"
        },
        {
          "from": "givenName",
          "to": "givenName"
        },
        {
          "from": "familyName",
          "to": "familyName"
        },
        {
          "from": "image",
          "to": "image"
        },
        {
          "from": "email",
          "to": "email"
        },
        {
          "from": "phone",
          "to": "phone"
        },
        {
          "from": "locale",
          "to": "locale"
        },
        {
          "from": "timezone",
          "to": "timezone"
        }
      ],
      "origin": "declared",
      "version": "2026-10-16"
    }
  ],
  "hash": "sha256:63cce602c9ed9ddfd5d19b40dd08143296ffd937a7e556999348a51f07cd0337"
}
