///|
pub struct BatchItem {
  line : Int
  input : String
  report : ValidationReport
} derive(Debug, Eq, ToJson)

///|
pub struct BatchReport {
  items : Array[BatchItem]
  summary : BatchSummary
} derive(Debug, Eq, ToJson)

///|
pub fn validate_batch(catalog : Catalog, inputs : Array[String]) -> BatchReport {
  let items = []
  let reports = []
  for i in 0..