{
  "apiVersion": "0.1.0",
  "specVersion": "0.5.0",
  "variables": [
    {
      "id": "saocommons",
      "name": "SAOcommons",
      "path": "~SAOcommons",
      "level": "L1",
      "kind": "protocol",
      "protocolId": "saocommons",
      "description": "Community micro-economy interface with three primary lanes: learning, earning, and organization-building.",
      "version": "0.4.0",
      "status": "locked"
    },
    {
      "id": "learning",
      "name": "Learning",
      "path": "~~Learning",
      "level": "L2",
      "kind": "node",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "description": "State-like skill formation lane for learning claims, evidence, validation, attestation, valuation, and disputes.",
      "privacy": "public-validation"
    },
    {
      "id": "learning-task",
      "name": "Learning Task",
      "path": "~~~LearningTask",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Learning task under validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-outcome",
      "name": "Learning Outcome",
      "path": "~~~LearningOutcome",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Validated learning outcome.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-evidence",
      "name": "Learning Evidence",
      "path": "~~~LearningEvidence",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Evidence for learning outcome.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-evidence-review",
      "name": "Evidence Review",
      "path": "~~~EvidenceReview",
      "level": "L3",
      "type": "string",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Review of submitted learning evidence.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-reviewer-set",
      "name": "Reviewer Set",
      "path": "~~~ReviewerSet",
      "level": "L3",
      "type": "array",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Reviewer group or quorum for learning validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-validation-decision",
      "name": "Validation Decision",
      "path": "~~~ValidationDecision",
      "level": "L3",
      "type": "enum",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Learning approval",
      "rejection": null,
      "dispute": null,
      "or revision decision.": null,
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-skill-level-before",
      "name": "Skill Level Before",
      "path": "~~~SkillLevelBefore",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Skill level before learning attestation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-skill-level-after",
      "name": "Skill Level After",
      "path": "~~~SkillLevelAfter",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Skill level after learning attestation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-effective-skill-level",
      "name": "Effective Skill Level",
      "path": "~~~EffectiveSkillLevel",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Final effective skill level after validation and dispute resolution.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-skill-name",
      "name": "Skill Name",
      "path": "~~~SkillName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Skill being attested.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-community-name",
      "name": "Community Name",
      "path": "~~~CommunityName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Validating community name for the learning lane.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-org-name",
      "name": "Org Name",
      "path": "~~~OrgName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Organization context for the learning lane.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-attestation-record",
      "name": "Attestation Record",
      "path": "~~~AttestationRecord",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Signed or auditable learning attestation record.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-effective-date",
      "name": "Effective Date",
      "path": "~~~EffectiveDate",
      "level": "L3",
      "type": "date",
      "required": false,
      "privacy": "public-governance",
      "sourceProtocol": "saocommons",
      "description": "Date the learning validation",
      "attestation": null,
      "or governance rule becomes active.": null,
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-dispute-case",
      "name": "Dispute Case",
      "path": "~~~DisputeCase",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Learning dispute case details.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-appeal",
      "name": "Appeal",
      "path": "~~~Appeal",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Learning appeal details.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "learning-final-decision",
      "name": "Final Decision",
      "path": "~~~FinalDecision",
      "level": "L3",
      "type": "enum",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Binding final learning dispute decision.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "learning",
      "nodePath": "~~Learning"
    },
    {
      "id": "earning",
      "name": "Earning",
      "path": "~~Earning",
      "level": "L2",
      "kind": "node",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "description": "Market-like value exchange lane for earning claims, evidence, validation, valuation, and disputes.",
      "privacy": "public-validation"
    },
    {
      "id": "earning-task",
      "name": "Earning Task",
      "path": "~~~EarningTask",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Earning task under validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-outcome",
      "name": "Earning Outcome",
      "path": "~~~EarningOutcome",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Validated earning outcome.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-evidence",
      "name": "Earning Evidence",
      "path": "~~~EarningEvidence",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Evidence for earning outcome.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-evidence-review",
      "name": "Evidence Review",
      "path": "~~~EvidenceReview",
      "level": "L3",
      "type": "string",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Review of submitted earning evidence.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-reviewer-set",
      "name": "Reviewer Set",
      "path": "~~~ReviewerSet",
      "level": "L3",
      "type": "array",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Reviewer group or quorum for earning validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-validation-decision",
      "name": "Validation Decision",
      "path": "~~~ValidationDecision",
      "level": "L3",
      "type": "enum",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Earning approval",
      "rejection": null,
      "dispute": null,
      "or revision decision.": null,
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-value-credit",
      "name": "Value Credit",
      "path": "~~~ValueCredit",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Assigned value credit for earning output.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-equity-weight",
      "name": "Equity Weight",
      "path": "~~~EquityWeight",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Equity or ownership weighting for earning output.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-community-name",
      "name": "Community Name",
      "path": "~~~CommunityName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Validating community name for the earning lane.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-org-name",
      "name": "Org Name",
      "path": "~~~OrgName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Organization context for the earning lane.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-distribution-rule",
      "name": "Distribution Rule",
      "path": "~~~DistributionRule",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Rule used to distribute earning value.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-effective-date",
      "name": "Effective Date",
      "path": "~~~EffectiveDate",
      "level": "L3",
      "type": "date",
      "required": false,
      "privacy": "public-governance",
      "sourceProtocol": "saocommons",
      "description": "Date the earning validation",
      "valuation": null,
      "distribution": null,
      "or governance rule becomes active.": null,
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-dispute-case",
      "name": "Dispute Case",
      "path": "~~~DisputeCase",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Earning dispute case details.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-appeal",
      "name": "Appeal",
      "path": "~~~Appeal",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Earning appeal details.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "earning-final-decision",
      "name": "Final Decision",
      "path": "~~~FinalDecision",
      "level": "L3",
      "type": "enum",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Binding final earning dispute decision.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "earning",
      "nodePath": "~~Earning"
    },
    {
      "id": "org-building",
      "name": "Org Building",
      "path": "~~OrgBuilding",
      "level": "L2",
      "kind": "node",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "description": "Productivity and institution-building lane for community coordination, governance, validation, attestation, valuation, and disputes.",
      "privacy": "public-validation"
    },
    {
      "id": "org-task",
      "name": "Org Task",
      "path": "~~~OrgTask",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Organization-building task under validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-outcome",
      "name": "Org Outcome",
      "path": "~~~OrgOutcome",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Validated organization-building outcome.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-evidence",
      "name": "Org Evidence",
      "path": "~~~OrgEvidence",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Evidence for organization-building outcome.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-evidence-review",
      "name": "Evidence Review",
      "path": "~~~EvidenceReview",
      "level": "L3",
      "type": "string",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Review of submitted organization-building evidence.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-reviewer-set",
      "name": "Reviewer Set",
      "path": "~~~ReviewerSet",
      "level": "L3",
      "type": "array",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Reviewer group or quorum for organization-building validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-validation-decision",
      "name": "Validation Decision",
      "path": "~~~ValidationDecision",
      "level": "L3",
      "type": "enum",
      "required": true,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Organization-building approval",
      "rejection": null,
      "dispute": null,
      "or revision decision.": null,
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-skill-level-before",
      "name": "Skill Level Before",
      "path": "~~~SkillLevelBefore",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Skill level before organization-building attestation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-skill-level-after",
      "name": "Skill Level After",
      "path": "~~~SkillLevelAfter",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Raw attested skill level after organization-building validation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-effective-skill-level",
      "name": "Effective Skill Level",
      "path": "~~~EffectiveSkillLevel",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Final effective skill level after validation and dispute resolution; decimals are allowed for transition states.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-public-skill-tier",
      "name": "Public Skill Tier",
      "path": "~~~PublicSkillTier",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Whole-level public credential display derived from effective skill level.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-skill-name",
      "name": "Skill Name",
      "path": "~~~SkillName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Skill being attested.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-community-name",
      "name": "Community Name",
      "path": "~~~CommunityName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Validating community name.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-name",
      "name": "Org Name",
      "path": "~~~OrgName",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Organization context for attestation.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-attestation-record",
      "name": "Attestation Record",
      "path": "~~~AttestationRecord",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-credential",
      "sourceProtocol": "saocommons",
      "description": "Signed or auditable organization-building attestation record.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-value-credit",
      "name": "Value Credit",
      "path": "~~~ValueCredit",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Assigned value credit for organization-building output.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-equity-weight",
      "name": "Equity Weight",
      "path": "~~~EquityWeight",
      "level": "L3",
      "type": "number",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Equity or ownership weighting for organization-building output.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-distribution-rule",
      "name": "Distribution Rule",
      "path": "~~~DistributionRule",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Rule used to distribute organization-building value.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-hourly-rate-floor",
      "name": "Hourly Rate Floor",
      "path": "~~~HourlyRateFloor",
      "level": "L3",
      "type": "currency",
      "required": false,
      "privacy": "public-governance",
      "sourceProtocol": "saocommons",
      "description": "Community-governed hourly floor for the effective skill level.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-governance-body",
      "name": "Governance Body",
      "path": "~~~GovernanceBody",
      "level": "L3",
      "type": "string",
      "required": false,
      "privacy": "public-governance",
      "sourceProtocol": "saocommons",
      "description": "Body authorized to set pricing or validation policy.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-effective-date",
      "name": "Effective Date",
      "path": "~~~EffectiveDate",
      "level": "L3",
      "type": "date",
      "required": false,
      "privacy": "public-governance",
      "sourceProtocol": "saocommons",
      "description": "Date the governance or pricing rule becomes active.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-dispute-case",
      "name": "Dispute Case",
      "path": "~~~DisputeCase",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Organization-building dispute case details.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-appeal",
      "name": "Appeal",
      "path": "~~~Appeal",
      "level": "L3",
      "type": "object",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Organization-building appeal details.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    },
    {
      "id": "org-final-decision",
      "name": "Final Decision",
      "path": "~~~FinalDecision",
      "level": "L3",
      "type": "enum",
      "required": false,
      "privacy": "public-validation",
      "sourceProtocol": "saocommons",
      "description": "Binding final organization-building dispute decision.",
      "kind": "facet",
      "protocolId": "saocommons",
      "protocolPath": "~SAOcommons",
      "nodeId": "org-building",
      "nodePath": "~~OrgBuilding"
    }
  ]
}
