The document proposes an architecture for an XML template engine that enables safe authoring. It aims to satisfy requirements like preservation of constraints, coverage of the target language, inferring schemas, and independence from data sources. The key elements are a binding language (XTL) for templates, a grammar transformer to infer schemas, a template validator, an efficient template engine, a term evaluator, and an instantiation data validator. The architecture transforms XML schemas into extended schemas that can validate templates using the binding language. This allows templates to be checked prior to instantiation to help ensure safe authoring.