{
  "apiVersion": "0.1.0",
  "specVersion": "0.5.0",
  "protocol": {
    "id": "value-capture",
    "name": "Value Capture Protocol",
    "path": "~ValueCaptureProtocol",
    "level": "L1",
    "version": "0.4.0",
    "status": "locked",
    "description": "Captures time, activity, proof, attribution, and integrity for valuable human activity.",
    "nodes": [
      {
        "id": "time-slice",
        "name": "Time Slice",
        "path": "~~TimeSlice",
        "level": "L2",
        "privacy": "audit",
        "description": "Time boundary for a captured activity.",
        "facets": [
          {
            "id": "start-time",
            "name": "Start Time",
            "path": "~~~StartTime",
            "level": "L3",
            "type": "datetime",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Activity start timestamp."
          },
          {
            "id": "end-time",
            "name": "End Time",
            "path": "~~~EndTime",
            "level": "L3",
            "type": "datetime",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Activity end timestamp."
          },
          {
            "id": "duration",
            "name": "Duration",
            "path": "~~~Duration",
            "level": "L3",
            "type": "duration",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Computed duration of the activity."
          }
        ]
      },
      {
        "id": "activity",
        "name": "Activity",
        "path": "~~Activity",
        "level": "L2",
        "privacy": "audit",
        "description": "Work, learning, earning, or organization-building activity.",
        "facets": [
          {
            "id": "activity-label",
            "name": "Activity Label",
            "path": "~~~ActivityLabel",
            "level": "L3",
            "type": "string",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Human-readable activity label."
          },
          {
            "id": "task-type",
            "name": "Task Type",
            "path": "~~~TaskType",
            "level": "L3",
            "type": "enum",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Classification used to route work."
          },
          {
            "id": "wellbecoming-node-tag",
            "name": "Wellbecoming Node Tag",
            "path": "~~~WellbecomingNodeTag",
            "level": "L3",
            "type": "enum",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Required Wellbecoming node route for the time slice: Physiology, Emotion, Feeling, Thought, Habit, or Performance."
          },
          {
            "id": "route-allocation",
            "name": "Route Allocation",
            "path": "~~~RouteAllocation",
            "level": "L3",
            "type": "object",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Allocation map for one time slice across downstream interpretations without double-counting duration."
          },
          {
            "id": "intent",
            "name": "Intent",
            "path": "~~~Intent",
            "level": "L3",
            "type": "string",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Declared intention for the activity."
          }
        ]
      },
      {
        "id": "proof",
        "name": "Proof",
        "path": "~~Proof",
        "level": "L2",
        "privacy": "audit",
        "description": "Evidence that the captured activity occurred.",
        "facets": [
          {
            "id": "proof-of-activity",
            "name": "Proof Of Activity",
            "path": "~~~ProofOfActivity",
            "level": "L3",
            "type": "string",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Primary proof artifact or reference."
          },
          {
            "id": "evidence-link",
            "name": "Evidence Link",
            "path": "~~~EvidenceLink",
            "level": "L3",
            "type": "uri",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Link to supporting evidence."
          },
          {
            "id": "artifact-type",
            "name": "Artifact Type",
            "path": "~~~ArtifactType",
            "level": "L3",
            "type": "string",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Evidence artifact type."
          }
        ]
      },
      {
        "id": "attribution",
        "name": "Attribution",
        "path": "~~Attribution",
        "level": "L2",
        "privacy": "audit",
        "description": "Community, project, and contributor context.",
        "facets": [
          {
            "id": "actor-identity-ref",
            "name": "Actor Identity Ref",
            "path": "~~~ActorIdentityRef",
            "level": "L3",
            "type": "uri",
            "required": true,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Persistent identity reference for the human",
            "agent": null,
            "team": null,
            "or organization responsible for the captured activity.": null
          },
          {
            "id": "beneficiary-ref",
            "name": "Beneficiary Ref",
            "path": "~~~BeneficiaryRef",
            "level": "L3",
            "type": "uri",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Persistent reference to the person",
            "community": null,
            "client": null,
            "organization": null,
            "or project that benefits from the captured activity.": null
          },
          {
            "id": "community",
            "name": "Community",
            "path": "~~~Community",
            "level": "L3",
            "type": "string",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Community context for the activity."
          },
          {
            "id": "project",
            "name": "Project",
            "path": "~~~Project",
            "level": "L3",
            "type": "string",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Project context for the activity."
          },
          {
            "id": "contributor-role",
            "name": "Contributor Role",
            "path": "~~~ContributorRole",
            "level": "L3",
            "type": "string",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Role performed by the contributor."
          },
          {
            "id": "validation-community-ref",
            "name": "Validation Community Ref",
            "path": "~~~ValidationCommunityRef",
            "level": "L3",
            "type": "uri",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Community or institution authorized to validate this time slice",
            "whether or not SAOcommons activates.": null
          }
        ]
      },
      {
        "id": "integrity",
        "name": "Integrity",
        "path": "~~Integrity",
        "level": "L2",
        "privacy": "audit",
        "description": "Quality, anomaly, and fraud-risk metadata for captured activity.",
        "facets": [
          {
            "id": "proof-quality",
            "name": "Proof Quality",
            "path": "~~~ProofQuality",
            "level": "L3",
            "type": "number",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Quality score for proof."
          },
          {
            "id": "anomaly-flag",
            "name": "Anomaly Flag",
            "path": "~~~AnomalyFlag",
            "level": "L3",
            "type": "boolean",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Flag for unusual or suspicious activity."
          },
          {
            "id": "fraud-risk-signal",
            "name": "Fraud Risk Signal",
            "path": "~~~FraudRiskSignal",
            "level": "L3",
            "type": "string",
            "required": false,
            "privacy": "audit",
            "sourceProtocol": "value-capture",
            "description": "Fraud-risk indicator."
          }
        ]
      }
    ]
  }
}
