Your custom syntax serves as input to a commit script. The output of the commit script is standard JUNOS configuration syntax, as shown in Figure 8. The standard JUNOS statements are added to the configuration to cause your intended operational changes.
Figure 8: Macro Input and Output

Macros use either permanent or transient change elements to expand your custom syntax into standard JUNOS configuration statements. If you use transient changes, the custom syntax appears in the candidate configuration, and the standard JUNOS syntax is copied to the checkout configuration only. If you use persistent changes, both the custom syntax and the standard JUNOS syntax appear in the candidate configuration.
This section discusses the following topics: