Open vs closed Templates

What makes an open / closed template?

An open template defines what's relevant for that template while allowing undefined contents in the instance. From the perspective of the template this undefined content is ignored. This may have benefits if it is to be expected that implementations add additional content, or when you want to cater backward compatibility in a next version of the template.

A closed template defines what's relevant for that template and leaves no room for any other contents in the instance. An instance is considered non-conformant if it contains anything beyond the template definition.

Open templates allow implementers to develop additional structured content not constrained within for example an implementation guide. Implementers are encouraged to bring their use cases forward to the governance group as candidate requirements to be formalized in a subsequent version of the standard to maximize the use of shared semantics.

Lightbulb-on.svg Note that during the publication phase, e.g. for development, testing and qualification purposes, it is possible via a parameter to create schematrons as if everything has @isClosed="true" so any undefined content is detected.