materia_epd.epd namespace

Submodules

materia_epd.epd.cache module

materia_epd.epd.extract module

materia_epd.epd.extraction_errors module

Structured errors and XML context for EPD cache extraction.

exception materia_epd.epd.extraction_errors.EpdExtractionError(process_path: str, stage: str, message: str, process_uuid: str | None = None, xml_tag: str | None = None, xml_attributes: dict[str, str]=<factory>, xml_line: int | None = None, xml_text: str | None = None, flow_path: str | None = None, cause_type: str | None = None)[source]

Bases: Exception

Raised when a single EPD XML file cannot be extracted for the cache.

cause_type: str | None = None
flow_path: str | None = None
message: str
process_path: str
process_uuid: str | None = None
stage: str
summary() str[source]
to_log_dict() dict[source]
xml_attributes: dict[str, str]
xml_line: int | None = None
xml_tag: str | None = None
xml_text: str | None = None
materia_epd.epd.extraction_errors.describe_element(elem: Element | None) str | None[source]
materia_epd.epd.extraction_errors.element_attributes(elem: Element | None) dict[str, str][source]
materia_epd.epd.extraction_errors.find_element_line(xml_path: Path, elem: Element | None) int | None[source]

Best-effort line number lookup by scanning the source file for the element.

ElementTree does not expose sourceline; we match tag name and salient text/attributes.

materia_epd.epd.extraction_errors.local_tag(elem: Element) str[source]

Return the local XML tag name without namespace URI.

materia_epd.epd.extraction_errors.wrap_extraction_error(exc: Exception, *, process_path: Path, stage: str, process_uuid: str | None = None, element: Element | None = None, flow_path: Path | None = None) EpdExtractionError[source]

Convert an unexpected exception into a structured extraction error.

materia_epd.epd.filters module

materia_epd.epd.generators module

materia_epd.epd.models module