Every proof template follows a standard structure:

{
  "template_id": "AgeOver18",
  "attribute": "birthdate",
  "comparator": ">=",
  "value": "18Y",
  "proof_type": "ZK",
  "validity": "24h",
  "required_policies": ["key-active", "identity-live"],
  "revocation_check": true}

This means: