code: protected void customizeMarshaller(Marshaller marshaller) {
  		marshaller.setValidation(this.validating);
  		marshaller.setSuppressNamespaces(this.suppressNamespaces);
  		marshaller.setSuppressXSIType(this.suppressXsiType);
  		marshaller.setMarshalAsDocument(this.marshalAsDocument);
  		marshaller.setMarshalExtendedType(this.marshalExtendedType);
  		marshaller.setRootElement(this.rootElement);
  		marshaller.setNoNamespaceSchemaLocation(this.noNamespaceSchemaLocation);
  		marshaller.setSchemaLocation(this.schemaLocation);
  		marshaller.setUseXSITypeAtRoot(this.useXSITypeAtRoot);
  		if (this.doctypes != null) {
  			for (Map.Entry<String, String> doctype : this.doctypes.entrySet()) {
  				marshaller.setDoctype(doctype.getKey(), doctype.getValue());
  			}
  		}
  		if (this.processingInstructions != null) {
  			for (Map.Entry<String, String> processingInstruction : this.processingInstructions.entrySet()) {
  				marshaller.addProcessingInstruction(processingInstruction.getKey(), processingInstruction.getValue());
  			}
  		}
  		if (this.namespaceMappings != null) {
  			for (Map.Entry<String, String> entry : this.namespaceMappings.entrySet()) {
  				marshaller.setNamespaceMapping(entry.getKey(), entry.getValue());
  			}
  		}
  	}
docs: Template method that allows for customizing of the given Castor {@link Marshaller}.