Skip to content

ResourceMap

Shared path templates and components used by Schema and Case discovery. Bind into Schema with Schema.from_resources(...) or Schema.permissive(resources=...), and into path-shaped grouping with CaseGrouping.role_based(...) / CaseStructure.compose(...).

Import: from miura.sdk import ResourceMap (or from miura.sdk.resources import ResourceMap)

ResourceMap module-attribute

ResourceMap = CollectionResourceCatalog

ReplayResourceCatalog dataclass

Catalog stub for from_spec replay when full path templates are unavailable.

Source code in src/miura/nexus/collection/resource_catalog.py
@dataclass(frozen=True, slots=True)
class ReplayResourceCatalog:
    """Catalog stub for from_spec replay when full path templates are unavailable."""

    resources: Mapping[str, NodeSpec]
    pinned_digest: str
    components: Mapping[str, Pattern] = field(default_factory=dict)

    def __post_init__(self) -> None:
        if not self.resources:
            raise ValueError("ReplayResourceCatalog requires at least one resource.")
        if not self.pinned_digest.strip():
            raise ValueError("ReplayResourceCatalog requires pinned_digest.")

    def digest(self) -> str:
        return self.pinned_digest

    def get_resource(self, resource_ref: str) -> NodeSpec:
        try:
            return self.resources[resource_ref]
        except KeyError as exc:
            raise KeyError(f"Unknown resource_ref {resource_ref!r}.") from exc

resources instance-attribute

resources: Mapping[str, NodeSpec]

pinned_digest instance-attribute

pinned_digest: str

components class-attribute instance-attribute

components: Mapping[str, Pattern] = field(default_factory=dict)

digest

digest() -> str
Source code in src/miura/nexus/collection/resource_catalog.py
def digest(self) -> str:
    return self.pinned_digest

get_resource

get_resource(resource_ref: str) -> NodeSpec
Source code in src/miura/nexus/collection/resource_catalog.py
def get_resource(self, resource_ref: str) -> NodeSpec:
    try:
        return self.resources[resource_ref]
    except KeyError as exc:
        raise KeyError(f"Unknown resource_ref {resource_ref!r}.") from exc