Version 1 (modified by jowik, 16 years ago)


The elements of a template definition

The purpose of this page is to give an overview of the elements that go into defining an ISO 15926 template in its generic form, by which is meant the definition of what it expresses, without consideration of practical implementation. A template is primarily defined in an implementation-agnostic form, using first-order logic. Implementations will attempt to capture such definitions.

The explanations given here are informal on purpose, and directed toward the practical use of templates. Formal-logical definitions to match will be provided in due course.

Template roles

Roles are unary predicates. A role is used to specify constraints on single things. Note that "thing" is used here in the generic sense of ISO 15926-2 Thing, and may have intended interpretation as variously a physical object, a class, a metaclass, a number, and so forth.

A template role will typically lay down constraints of the following kinds, about an argument x:

  • The ISO 15926 entity type(s) of x
  • Data type, if x is a piece of data
  • Classifiers: What class (classes) does x belong to?
  • Superclasses: Of what class (classes) is x a variant?

Template signatures

Template rules

About PCA
Reference Data Services