# General Template XML Properties On this page you can find a list of the general model behavior XML that is used within the `` or `` element of the principle `[model].xml` file associated with a SimObject (or within the `` of an additional model file). For an overview of the contents of this page please see the following section: - [Model Behaviors](model-behaviors/)     ### <Macro> This element creates a global-scope macro that can be used to name values, strings and code which will then be substituted in at runtime wherever the macro is called. The macro has a "name" attribute, which is the name that should be called in the rest of the model behavior XML to use the macro, and the contents of the element are what will be substituted in instead. Note that when calling a macro name it should be preceded by an `@`.   Macros are usually defined at the top of the XML, directly under one of the following parent elements (see [File Structure](usingbehaviours/using-model-behaviours/#file_structure) for information on which top-level element to use where): 1. `` 2. `` 3. ``   Macro definitions look something like this: ``` xml (M:InputType) 1 == 0.05 0.10 @IsUsingRelativePos ? 'TT_COMPANY_NAME_LOCALISED' ```  
AttributeDescriptionTypeRequired
Name

The name of the macro, which will be used to call the macro in the rest of the XML. Use the @ symbol before the macro to use it, eg: @on_off_condition

This string must be alpha-numeric, and can only contain the _ or - symbols.

StringYes
    ### <Include /> This element is used to read and register the ``, ``, `