MARS documentation
Protocol

Lineage and relationships

Read parentage without confusing it with authorization.

Two separate structures

lineageReference carries the identity lineage to a root, including generation metadata. relationships carries typed artifact relationships. Neither is a grant of permission to execute a tool or mutate a registry.

Resolve the lineage

Use GET /v1/entries/{did}/lineage with the entry DID URL-encoded as one path segment. The generated response defines the complete return shape. Missing parents, roots, or evidence must not be converted into a positive verification result.

Query lineage fields

MARS-QL supports the server's allowlisted lineage fields, including lineage_reference.human_root_did and lineage_reference.generation. These are record filters, not recursive SQL traversal. Lineage query examples show the supported surface.

Verify separately

Check root provenance, signatures, issuer policy, and revocation before using lineage to make a trust decision. Registry data may include optional or incomplete lineage.

Source authority

This page describes the checked-in implementation, not the availability of a public registry.

  • mars-protocol/src/entry.rs
  • mars-protocol/src/relationships.rs
  • mars-server/src/search.rs
  • mars-server/src/api/rest.rs

On this page