<#ftl output_format="JSON"> <#-- The macro for generating template metadata for a new Expression Rule --> <#macro newExpressionRule request recipeObjectId uuid name description ruleFolderUuid ruleContents ruleInputs="" replaceable=true triggers="" processTitle="" displayFieldUuid="" primaryKeyUuid="" hasNext=false> { <#-- recipe section --> "version": 2, "objectType": "CONTENT_FREEFORM_RULE", "replaceable": ${replaceable?c}, "recipeObjectId": "${recipeObjectId}", "templateForCreate": "ix/v2/createExpressionRule_v2.ftlx", "templateForReuse": "recipes/v2/existingRuleHelper_v2.ftl", "selectedObjectIndex": 0, "isVisible": true, <#if triggers?has_content> "triggers": ${triggers}, <#-- the set of new and reused objects --> "objects": [ { "objectStatus": "NEW", "templateObjectId": "${recipeObjectId}-0", "objectIndex": 0, <#-- bindings section --> "uuid":"${uuid}", "versionUuids":["${uuid}"], "parentUuid": "${ruleFolderUuid}", "baseRecordUuid": "${request.getTargetObject().uuid}", "ruleContents": "${ruleContents}", "ruleInputs": ${ruleInputs}, "name": "${name?json_string}", <#if displayFieldUuid?has_content> "displayFieldUuid": "${displayFieldUuid}", <#if primaryKeyUuid?has_content> "primaryKeyUuid": "${primaryKeyUuid}", <#if processTitle?has_content> "processTitle": "${processTitle?json_string}", "description": "${description?json_string}" } ] }<#if hasNext>,