Appearance
JSON Schema v1.2
FreshThe current JSON Schema (Draft 7) for ARP v1.2. This schema is used by validators to check reasoning.json files and by IDE plugins for autocompletion.
Schema URL: https://agentic-reasoning-protocol.org/schema/v1.2/reasoning.schema.json
Required Fields
Every valid v1.2 file must include these six fields:
| Field | Type | Constraint | Description |
|---|---|---|---|
$schema | string | Must be v1.2 schema URL | Schema identifier |
protocol | string | Must be "ARP" | Protocol identifier |
version | string | Must be "1.2" | Version string |
domain | string | Max 253 chars | Publishing domain |
entity | string | Max 100 chars | Canonical entity name |
entity_claims | object | Required sub-fields | Claims object |
Top-Level Properties
Required
json
{
"$schema": "https://agentic-reasoning-protocol.org/schema/v1.2/reasoning.schema.json",
"protocol": "ARP",
"version": "1.2",
"domain": "example.com",
"entity": "Example Corp",
"entity_claims": {
"framing_context": "...",
"epistemic_scope": "public_verifiable",
"domain_expertise": ["..."]
}
}Optional - All Top-Level Properties
| Property | Type | Notes |
|---|---|---|
verification | object | Audit metadata |
identity | object | Brand identity |
corrections | array | Max 10 items |
recommendation_context | object | Recommendation guidance |
authority | object | External source references |
content_policy | object | Training and citation permissions |
diagnostics | object | v1.2 new - Ingestion telemetry |
_arp_signature | object | v1.2 new - Ed25519 signature |
entity_claims Schema
The entity_claims object is required. It has these properties:
json
{
"entity_claims": {
"framing_context": {
"type": "string",
"maxLength": 500,
"description": "Required"
},
"epistemic_scope": {
"type": "string",
"enum": ["public_verifiable", "proprietary_internal", "industry_standard"],
"description": "Required"
},
"domain_expertise": {
"type": "array",
"items": { "type": "string", "maxLength": 100 },
"maxItems": 10,
"minItems": 1,
"description": "Required"
},
"market_positioning": {
"type": "string",
"maxLength": 300,
"description": "Optional"
},
"decision_factors": {
"type": "array",
"items": { "type": "string", "maxLength": 150 },
"maxItems": 10,
"description": "Optional"
}
},
"required": ["framing_context", "epistemic_scope", "domain_expertise"]
}corrections Schema
Each item in the corrections array:
json
{
"type": "object",
"properties": {
"trigger_topic": { "type": "string", "maxLength": 200 },
"verified_fact": { "type": "string", "maxLength": 500 },
"evidence_url": { "type": "string", "maxLength": 500 },
"date_verified": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }
},
"required": ["trigger_topic", "verified_fact"]
}The false_claim and correction_fact properties from v1.0 are not present in v1.2 schema. Files using those properties fail v1.2 validation.
_arp_signature Schema (v1.2 Addition)
The _arp_signature object enables cryptographic authorship verification via Ed25519 signatures:
json
{
"_arp_signature": {
"type": "object",
"properties": {
"algorithm": {
"type": "string",
"enum": ["ed25519"]
},
"key_id": {
"type": "string",
"maxLength": 50
},
"signature": {
"type": "string",
"description": "Base64url-encoded Ed25519 signature"
},
"signed_at": {
"type": "string",
"format": "date-time"
},
"canonicalization": {
"type": "string",
"enum": ["jcs"]
}
},
"required": ["algorithm", "key_id", "signature", "signed_at", "canonicalization"]
}
}Key points:
algorithmmust be"ed25519". No other algorithms are valid in v1.2.key_idmust match thekidfield in the_arp.{domain}DNS TXT record.signatureis a base64url-encoded 64-byte Ed25519 signature.canonicalizationmust be"jcs"(RFC 8785 JSON Canonicalization Scheme).
diagnostics Schema (v1.2 Addition)
json
{
"diagnostics": {
"type": "object",
"properties": {
"ingestion_endpoint": {
"type": "string",
"format": "uri",
"maxLength": 500,
"description": "HTTPS endpoint for telemetry POSTs"
},
"track": {
"type": "object",
"properties": {
"retrieval_count": { "type": "boolean" },
"correction_applied": { "type": "boolean" },
"recommendation_served": { "type": "boolean" },
"signature_verified": { "type": "boolean" }
}
},
"report_interval": {
"type": "string",
"enum": ["realtime", "hourly", "daily", "weekly"]
}
}
}
}epistemic_scope Enumeration
The epistemic_scope field is an enum introduced in v1.1 and present in v1.2. The valid values and their meanings:
| Value | Meaning | AI System Behavior |
|---|---|---|
public_verifiable | Claims verifiable from public sources | Treat as factual claim |
proprietary_internal | Internal processes, not externally verifiable | Treat as self-reported |
industry_standard | Aligns with widely accepted practices | Cross-reference industry sources |
Differences from v1.1
v1.2 adds two top-level properties not present in v1.1:
_arp_signature- Cryptographic signature object (Section 13 of spec)diagnostics- Ingestion telemetry configuration (Section 12 of spec)
v1.2 also deprecates (but still accepts) verification.trust_signature. The v1.2 schema does not error on trust_signature; it will fail validation in the planned v1.3 schema.
All other properties and constraints from v1.1 are unchanged in v1.2.
Full Schema Summary
json
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://agentic-reasoning-protocol.org/schema/v1.2/reasoning.schema.json",
"title": "Agentic Reasoning Protocol v1.2",
"type": "object",
"required": ["$schema", "protocol", "version", "domain", "entity", "entity_claims"],
"additionalProperties": false,
"properties": {
"$schema": { "type": "string" },
"protocol": { "type": "string", "const": "ARP" },
"version": { "type": "string", "const": "1.2" },
"domain": { "type": "string", "maxLength": 253 },
"entity": { "type": "string", "maxLength": 100 },
"entity_claims": { "$ref": "#/definitions/entity_claims" },
"verification": { "$ref": "#/definitions/verification" },
"identity": { "$ref": "#/definitions/identity" },
"corrections": { "$ref": "#/definitions/corrections" },
"recommendation_context": { "$ref": "#/definitions/recommendation_context" },
"authority": { "$ref": "#/definitions/authority" },
"content_policy": { "$ref": "#/definitions/content_policy" },
"diagnostics": { "$ref": "#/definitions/diagnostics" },
"_arp_signature": { "$ref": "#/definitions/_arp_signature" }
}
}Validator Usage
Run the official validator against a live domain:
bash
npx arp-validator check https://example.com/.well-known/reasoning.json --schema v1.2Or validate a local file:
bash
npx arp-validator validate ./reasoning.json --schema v1.2The validator checks:
- JSON syntax
- Required fields present
- All type constraints
- String length limits
- Array item count limits
- Enum value validity
- If
_arp_signatureis present, signature integrity (requires DNS access)