///|
/// Reproducible metadata-ingest scenario using spelling patterns published in
/// the Library of Congress EDTF/RDA guidance. IDs and the batch are illustrative,
/// not downloaded catalog records. The search window is April 1985.
fn main {
let rows = [
@edtf.CatalogEntry::{ record_id: "R-01", edtf: "1985-04-XX", },
@edtf.CatalogEntry::{ record_id: "R-02", edtf: "1985-XX-XX", },
@edtf.CatalogEntry::{ record_id: "R-03", edtf: "1984?", },
@edtf.CatalogEntry::{ record_id: "R-04", edtf: "1984-02-30", },
@edtf.CatalogEntry::{ record_id: "R-05", edtf: "2004-XX", },
@edtf.CatalogEntry::{ record_id: "R-06", edtf: "[1666,1667]", },
]
let report = try! @edtf.audit_catalog(rows, "1985-04-01", "1985-04-30")
println("catalog: \{report.findings.length()} rows")
println(
"invalid=\{report.invalid} review=\{report.needs_review} outside=\{report.outside} within=\{report.within} possible=\{report.possible_overlap}",
)
for row in report.findings {
println(
"\{row.record_id}: \{row.input} => \{row.decision.to_string()} \{row.error_code}",
)
}
}