Introduction
When you start with OO you learn that OO has four 'pillars':
- Encapsulation
- Abstraction
- Inheritance
- Polymorphism
Discussion
Encapsulation
The internals of a template consist of:
- a graph of ISO 15926-2 entity types and, in cases of specialized templates, specializations thereof in ISO 15926-4 or extensions thereof ;
- a definition of the 'signature' of the template ;
- a FOL - First Order Language - listing defining that graph ;
- a function with the SPARQL query script for that template, with its arguments.

Abstraction
The externals of a template are found in its 'signature', that contains the variables of the internal graph plus the necessary metadata.
These are fetched by formentioned SPARQL query.
Inheritance
As mentioned before, you can specialize templates by upfront defining one or more of the variables in the signature.
Polymorphism
Where applicable one or more Roles in the signature refer to a Class in the ISO 15926-4 Reference Data Library, or an extension thereof.
That makes the (generic) Templates re-usable for as many cases as there are Classes of the given type in the RDL or extensions.