Expand description
uor_addr::schema::photo — Photo content-addressing
(ARCHITECTURE.md “Schema-pinned descendants” § uor-addr-photo).
Schema-pinned descendant of crate::json. Imports
schema.org’s Photograph type — the host-boundary parser
admits only JSON-LD values that conform to schema.org’s published
Photograph taxon. ψ-pipeline and κ-derivation are inherited from
the JSON realization without modification.
Per UOR’s schema-import discipline (per the
UOR-Framework wiki),
this module does not define a custom photo schema; it imports
https://schema.org/Photograph and applies the schema-validation
rules schema.org publishes.
§no_std + no_alloc
Schema admission walks the parsed crate::json::JsonValue’s
tagged bytes via crate::json::JsonValueRef. There is no
intermediate serde_json::Value; no allocator is touched.
§Authoritative sources
- schema.org Photograph type — https://schema.org/Photograph.
- JSON-LD 1.1 — W3C REC — https://www.w3.org/TR/json-ld11/.
§Admission predicate (the schema.org/Photograph contract)
The input must be a JSON-LD object satisfying:
@contextis"https://schema.org"or"http://schema.org".@typeis"Photograph".contentUrl— string URL.creator— string OR object with@typein{Person, Organization}and anamestring.
Structs§
- Photo
Value - Typed Photo content-addressing input. Wraps a
JsonValuewhose runtime JSON structure conforms to schema.org/Photograph.
Enums§
- Address
Failure - Failure modes from
address.
Constants§
- PHOTOGRAPH_
TYPE - schema.org Photograph type IRI fragment (used in the
@typefield). - REQUIRED_
PROPERTIES - Required properties for a schema.org/Photograph instance.
- SCHEMA_
ORG_ CONTEXTS - schema.org canonical context IRIs (HTTP + HTTPS variants).
Functions§
- address
- Mint a κ-label over a schema.org/Photograph-admitted JSON value.
The κ-label is byte-identical to
crate::json::address’s κ-label for the same JSON input — schema admission applies at parse time per SD2 Grounding, not in the ψ-pipeline. - address_
blake3 - As
address, but binds theblake3σ-axis (crate::hash). Schema admission is identical; only the κ-derivation hash differs. - address_
keccak256 - As
address, but binds thekeccak256σ-axis (crate::hash). Schema admission is identical; only the κ-derivation hash differs. - address_
sha3_ 256 - As
address, but binds thesha3_256σ-axis (crate::hash). Schema admission is identical; only the κ-derivation hash differs. - address_
sha512 - As
address, but binds thesha512σ-axis (crate::hash). - canonicalize
- Available only under the
allocfeature. Canonical-bytes accessor — the schema admission applies at ingress; the canonical bytes are JCS-RFC8785 + NFC per the JSON realization.