code(inthis paper we call these “execution parameters”) — the smart contract code is assumed to be standardised code whose behaviour can be controlled by the input of such parameters. Here we explore the design landscape for the implementation of Smart Contract Templates. Weobservethatthelandscapeisbroadandthattherearemanypotentiallyviablesetsofdesign decisions. We therefore propose that a new domain-specific language should be developed to support the design and implementation of Smart Contract Templates, and we conclude this section by sketching some requirements for that language. The design of that language has already begun, and we have given it the name “CLACK” — a Common Language for Augmented Contract Knowledge. 3.1 Templates and Parameters Atemplate is an electronic representation of a legal document as issued by a standards body —forexample, by the International Swaps and Derivatives Association (ISDA). As illustrated in Figure 2, a template contains both legal prose and parameters, where each parameter has an identity (a unique name), a type, and may (but need not) have a value. Figure 2: A template may contain both legal prose and parameters. Each parameter has an identifier (a name), a type, and an optional value. Agreements are derived from templates, and both the legal prose and parameters may be customised during negotiation. Values are mandatory for all parameters in a signed agreement. An agreement is a fully-instantiated template (including any customised legal prose and parameters). The customisation of legal prose and parameters at this stage is commonplace and results from negotiation between the counterparties. We also observe that it is common for agreements to comprise multiple documents such as Framework Agreements (e.g. a Master Agreement) with various Annexes (e.g. a Schedule) and Credit Support Documentation (e.g. a Credit Support Annex). Thus, the legal prose of an agreement will be derived from that of the template, but need not be identical, and similarly the parameters of the agreement will be derived from the template but need not be identical. Deriving the set of execution parameters may be complicated by three factors: 1. It is common for execution parameters to be embedded in the legal prose — identification of such parameters would initially be undertaken by visual inspection and be aided by a graphical user interface. 7

Position Paper | Smart Contract Templates - Page 9 Position Paper | Smart Contract Templates Page 8 Page 10