FrontierMetadata

Canonical JSON document anchored on-chain by FrontierRegistry frontier.metadataHash.

A document of this kind carries a schema field matching xny://schemas/frontier-metadata/<major>.<minor> — the version is part of the URI, and it is the only place a document's version is recorded.

Canonical JSON document anchored on-chain by FrontierRegistry frontier.metadataHash. The exact bytes uploaded to metadataUri define the hash — see Metadata Hash Rules in docs/architecture/protocol-v2-design.md §6.1.

Fields

FieldTypeRequiredDescription
schemastringyesPer-kind versioned schema identifier. Format: xny://schemas/frontier-metadata/<major.minor>. This is the single source of truth for document version; do not use schema_version.
kindstringyesDocument kind discriminator. Always 'frontier-metadata' for this schema.
publisherstringyesDID of the entity that published this document. Pseudonymous identifier written to the permanent Arweave layer. DID-to-identity mapping exists only in an off-chain deletable layer (GDPR note: deletion right does not cover this field).
published_atstringyesRFC 3339 / ISO 8601 UTC timestamp of document publication.
tagsobjectyesFree-form key-value metadata tags for indexing and filtering. Bounded to 32 entries with keys up to 64 characters — conservative structural limits to keep the anchored document small, not a semantic constraint on tag content. Values are permanently written to Arweave alongside the rest of this document: do not put personal data in a tag (see CONVENTIONS.md's GDPR Note).
frontier_idstringyesOff-chain identifier (slug or snowflake). On-chain bytes32 = keccak256(utf8 of this string).
owner_did_idstringyesuint128 DID id of the frontier creator (controls updateFrontierMetadata), serialised as decimal string.
slugstringyes
namestringyesHuman-readable frontier name. Permanently written to Arweave — do not put personal data in it (see CONVENTIONS.md's GDPR Note).
descriptionstringyesFree-text frontier description. Permanently written to Arweave — do not put personal data in it (see CONVENTIONS.md's GDPR Note).
iconstring—Emoji or icon key
default_policyobjectyes
cf_schemaobjectyesFrontier-level rules for ContributionFingerprint submission under this frontier.

Example

{
  "schema": "xny://schemas/frontier-metadata/1.0",
  "kind": "frontier-metadata",
  "publisher": "did:xny:0xabcdef1234567890abcdef1234567890abcdef12",
  "published_at": "2026-06-08T10:00:00Z",
  "tags": {},
  "frontier_id": "f-life-sciences-2026",
  "owner_did_id": "42",
  "slug": "life-sciences",
  "name": "Life Sciences",
  "description": "Public-good frontier for de-identified biomedical annotation campaigns.",
  "icon": "🧬",
  "default_policy": {
    "base_pricing_per_record_usd": 0.25,
    "royalty_share_default_pct": 30
  },
  "cf_schema": {
    "kinds": ["SAMPLE", "LABEL", "VALIDATION"],
    "parent_rules": {
      "SAMPLE": "forbidden",
      "LABEL": "required",
      "AMENDS": "required",
      "VALIDATION": "required"
    }
  }
}

2 rejection cases are kept alongside the schema in docs/schemas/examples/, exercised by validate_schemas.py.

Last updated

On this page