__anonymousmixin genCanonicalizeBody!(so.SaladRecordSchema, "inVocab", (Optional!bool inVocab) => inVocab.orDefault(true), "fields", (Optional!(so.SaladRecordField[]) fields) => fields.match!((so.SaladRecordField[] fs) => fs.map!(f => new SaladRecordField(f)).array, none => (SaladRecordField[]).init), "doc", (Optional!(string, string[]) doc) => doc.concat, "docChild", (Optional!(string, string[]) doc) => doc.concat, "jsonldPredicate", (Optional!(string, so.JsonldPredicate) jp) => jp.canonicalize, "documentRoot", (Optional!bool documentRoot) => documentRoot.orDefault(false), "abstract", (Optional!bool abstract_) => abstract_.orDefault(false), "extends", (Optional!(string, string[]) extends) => extends.match!((string s) => [s], (string[] ss) => ss, none => (string[]).init), "specialize", (Optional!(so.SpecializeDef[]) specialize) => specialize.match!((so.SpecializeDef[] sd) => sd.map!(s => new SpecializeDef(s)).array, none => (SpecializeDef[]).init))