protected void canonicalize(String infile, String outfile) throws IOException {
    TMXMLReader reader = new TMXMLReader(infile);
    reader.setValidate(true); // we do want to validate
    TopicMapIF source = reader.read();

    FileOutputStream fos = new FileOutputStream(outfile);
    CanonicalXTMWriter cwriter = new CanonicalXTMWriter(fos);
    cwriter.write(source);

    fos.close();
    source.getStore().close();
  }