Child pages
  • Model Schema Reference

This is the documentation of the release 2.2 of automaIT. The documentation of the latest stable release can be found at AUTOMAIT.

Skip to end of metadata
Go to start of metadata

Table of Contents

top

Global Declarations

Element: component

Documentation: A component encapsulates the configuration and behaviour of a software artefact. It is comparable to a class in object-oriented programming so it can contain variables, constructors (to create an instance of the component), methods (to execute code) and destructors (to destroy a component instance).
<component
access="string (value comes from list: {'PUBLIC'|'PATH'}) [0..1] The access visibility of the component."
modifier="ModifierType [0..1] Changes the behavior of the component in respect to instantiation and inheritance."
path="PathType [0..1] The path of the component. The combination of the path and the name uniquely identifies the component."
name="EntityNameType [1] The name of the component. The combination of the path and the name uniquely identifies the component."
description="string [0..1] The description for the component."
limitToHostSet="ReferencedHostEntityNameType [0..1] Limits the installation of this component to the hosts provided by this host set."
systemService="boolean [0..1] Identifies this component as system service. The system Services will be automatically installed to the correspondent hosts in the initialization process.">
<!--
Uniqueness Constraint - uniqueVarName
Selector - tns:var
Field(s) - @name
-->

<extends> [0..1]
<component> ComponentReferenceType </component> [1]
</extends>
<id> IdType </id> [0..1]
<var
access="AccessType [0..1] The access for a variable."
modifier="ComponentVariableModifierType [0..1] The modifier for a variable."
name="NameType [1] The name for the variable."
default="SubstitutionType4096 [0..1] The default value of the variable."
prompt="string [0..1] The description of the variable."/> [0..*] Declares a component variable. Component variables are persisted after installation. These variables may be read during installation (if value has already been set), in method calls of the component instance, and in uninstalls of the component instance.
<targetRef
hostName="SubstitutionNonEmptyType512 [1] Name of the virtual host to be created on installation. Executions on this new host may use the 'targetableComponent' substitutions to access instance variables of the this component instance."
typeName="ReferencedHostEntityNameType [0..1] Name of the host type the created virtual host will belong to."/> [0..1]
<resourceList> [0..1] The resources of the component. The resources specified by parent components are inherited.
<!--
Uniqueness Constraint - uniqueNameOfResource
Selector - tns:resource
Field(s) - @name
-->

<resource
name="NonEmptyString512 [1] Unique identifier of the resource used when referencing it when deploying and/or undeploying."
modifier="ModifierType [0..1] Changes the behavior of the resource in respect to inheritance."> [1..*] Defines a single resource.
<installSpec
name="SubstitutionNonEmptyType512 [1] The name of the resource when it is installed."
path="SubstitutionNonEmptyType512 [1] The absolute path of the resource when it is installed."
permissions="SubstitutionNonEmptyType255 [0..1] The permissions given in octal numbers given in the format expected by the UNIX 'chmod' command, e.g. 0755. The agent uses its own default if the permissions are not set explicitly."
user="SubstitutionNonEmptyType255 [0..1] The owning user of the resource. The agent uses its own default if the user is not set explicitly."
group="SubstitutionNonEmptyType255 [0..1] The owning group of the resource. The agent uses its own default if the group is not set explicitly."/> [0..1] Defines how a resource is installed on the host.
</resource>
</resourceList>
<componentRefList> [0..1]
<!--
Uniqueness Constraint - uniqueNameOfComponentRef
Selector - tns:componentRef
Field(s) - @name
-->

<componentRef
name="NameType [1] Unique identifier for reference to another component from this component."
modifier="ModifierType [0..1] Enables to define 'ABSTRACT' or 'FINAL' references. Modifier 'ABSTRACT' only is for use with components declared 'ABSTRACT' and once declared any concrete heritage must define a reference with declared 'name'. For abstract componentRefs there is no 'component' sub-element necessary. Modifier 'FINAL' will prevent overwriting of a reference by a inherited component using the same 'name'."
installMode="string (value comes from list: {'TOPLEVEL'|'NESTED'}) [0..1] Defines if this reference is 'NESTED' or 'TOPLEVEL'. 'TOPLEVEL' instances are visible in the instance list whereas 'NESTED' instances are accessible only for the container component (component defining this reference)."> [1..*] Once such a reference is established in a 'installSteps' the targeters 'nestedRef' and 'allNestedRefs' enable substitutions with a instance of the referred component. Also the targeter 'container' will allow substitutions from the referred component to this component.
<compVarSet> CompVarSetType </compVarSet> [0..1] Indicates which variable set should be used in the installation.
<compVarList> ArgListType </compVarList> [0..1] Defines the 'ad-hoc' variable set used when creating the component instance described in this reference, using the variable set for installation as base.
<component> ComponentReferenceType </component> [0..1] References to another component of which an instance is created when this componentRef is established in a 'installSteps'. When the optional 'path' is not specified the component is searched in the same folder of the 'container' component. When the optional 'version' is not specified the latest version is used.
</componentRef>
</componentRefList>
<installList> [0..1] This list contains all installSteps (constructors) that the component provides.
<!--
Uniqueness Constraint - uniqueNameOfInstallStep
Selector - tns:installSteps
Field(s) - @name
-->

<installSteps
access="AccessType [0..1] The access for a callable type."
modifier="ModifierType [0..1] The modifier for a callable type."
name="EntityNameType [1] The name for the entity (e.g. constructor, destructor, control)."
description="string [0..1] The description for the entity (e.g. constructor, destructor, control)."
returns="boolean [0..1] This boolean value defines if the callable returns a value or not. If set to true all paths must return a value."
maxParallel="nonNegativeInteger [0..1] Defines the maximum number of parallel component method executions. If the user selects more hosts than limited here excessive jobs will be queued. The special value '0' is interpreted as unlimited parallelization."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'}) ] ] [0..1] Specifies the locking strategy to apply for the statements within this method. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1..*] The constructors of a component that install an instance.
<!--
Uniqueness Constraint - installUniqueParameter
Selector - tns:param
Field(s) - @name
-->

<param> ParameterType </param> [0..*] Defines a parameter for this install method.
Start Choice [0..*]
<createDependency> DependencyType </createDependency> [1] Allows the creation of a dependency between the calling component instance (dependant) and another component instance (dependee) specified by nested targeter.
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<install> InstallType </install> [1] Allows the invocation of an install method (constructor) within a component.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> InstallNestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> InstallNestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponentInstall
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</case>
<default> InstallNestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> InstallNestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> InstallNestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> InstallNestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> InstallNestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</lockHost>
<deployResource> [0..1] Deploys resources of the component.
<!--
Uniqueness Constraint - uniqueNameOfDeployResource
Selector - tns:resource
Field(s) - @name
-->

Start Choice [1]
<resource
name="NonEmptyString512 [1] Name of the resource to deploy."/> [1..*]
<allResources> EmptyType </allResources> [1] Deploys all resources of the component.
End Choice</deployResource>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</installSteps>
</installList>
<uninstallList> [0..1] This list contains all uninstallSteps (destructors) that the component provides.
<!--
Uniqueness Constraint - uniqueNameOfUnInstallStep
Selector - tns:uninstallSteps
Field(s) - @name
-->

<uninstallSteps
access="AccessType [0..1] The access for a callable type."
modifier="ModifierType [0..1] The modifier for a callable type."
name="EntityNameType [1] The name for the entity (e.g. constructor, destructor, control)."
description="string [0..1] The description for the entity (e.g. constructor, destructor, control)."
returns="boolean [0..1] This boolean value defines if the callable returns a value or not. If set to true all paths must return a value."
maxParallel="nonNegativeInteger [0..1] Defines the maximum number of parallel component method executions. If the user selects more hosts than limited here excessive jobs will be queued. The special value '0' is interpreted as unlimited parallelization."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'}) ] ] [0..1] Specifies the locking strategy to apply for the statements within this method. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1..*] The destructors of a component that uninstall an instance.
<!--
Uniqueness Constraint - uninstallUniqueParameter
Selector - tns:param
Field(s) - @name
-->

<param> ParameterType </param> [0..*] Defines a parameter for this uninstall method.
Start Choice [0..*]
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<uninstall> UninstallType </uninstall> [1] Allows the invocation of an uninstall method (destructor) within a component.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> UninstallNestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> UninstallNestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponentUninstall
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</case>
<default> UninstallNestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> UninstallNestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> UninstallNestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> UninstallNestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> UninstallNestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</lockHost>
<undeployResource> [0..1] Undeploys the resources of the component.
<!--
Uniqueness Constraint - uniqueNameOfUndeployResource
Selector - tns:resource
Field(s) - @name
-->

Start Choice [1]
<resource
name="NonEmptyString512 [1] Name of the resource to undeploy."/> [1..*]
<allResources> EmptyType </allResources> [1] Undeploys all previously installed resources of the component instance.
End Choice</undeployResource>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</uninstallSteps>
</uninstallList>
<controlList> [0..1] This list contains all controls (methods) that the component provides when installed.
<!--
Uniqueness Constraint - uniqueNameOfControlStep
Selector - tns:control
Field(s) - @name
-->

<control
access="AccessType [0..1] The access for a callable type."
modifier="ModifierType [0..1] The modifier for a callable type."
name="EntityNameType [1] The name for the entity (e.g. constructor, destructor, control)."
description="string [0..1] The description for the entity (e.g. constructor, destructor, control)."
returns="boolean [0..1] This boolean value defines if the callable returns a value or not. If set to true all paths must return a value."
maxParallel="nonNegativeInteger [0..1] Defines the maximum number of parallel component method executions. If the user selects more hosts than limited here excessive jobs will be queued. The special value '0' is interpreted as unlimited parallelization."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'}) ] ] [0..1] Specifies the locking strategy to apply for the statements within this method. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1..*] The controls of a component that can be called on component instances.
<!--
Uniqueness Constraint - controlUniqueParameter
Selector - tns:param
Field(s) - @name
-->

<param> ParameterType </param> [0..*] Defines a parameter for this method call.
Start Choice [0..*]
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponent
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: NestingComponentElementsGroup [1]
</case>
<default> NestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> NestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: NestingComponentElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: NestingComponentElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: NestingComponentElementsGroup [1]
</lockHost>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</control>
</controlList>
</component>
top

Element: extensions

Documentation: Contains the definition of user defined commands to be used in components and plans.
<extensions>
<!--
Uniqueness Constraint - uniqueCommandName
Selector - tns:command
Field(s) - @name
-->

<command
name="NameType [1] The unique name of the command."
description="string [0..1] The optional description of the command."
returns="boolean [0..1] This boolean value defines if the command returns a value or not. If set to true all paths must return a value."> [0..*] A command contains an optionally parameterized block of simple statements like for example flow control, conditional, or execNative statements.
<parameters> ParametersType
<!--
Uniqueness Constraint - uniqueParametersName
Selector - tns:required|tns:optional
Field(s) - @name
-->
</parameters> [0..1] Required and optional parameters for the command.
<block> [1] A block of simple statements like for example flow control, conditional, or execNative statements. Further statements like component installations or calling plans are not allowed here.
Start Choice [0..*]
<call> ExtensionBlockCallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyExtensionsType </checkDependency> [1] Allows the verification of an installed component instance.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorExtensionsType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingExtensionBlockElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingExtensionBlockElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInExtensions
Selector - tns:case
Field(s) - @value
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</case>
<default> NestingExtensionBlockElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> NestingExtensionBlockElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingExtensionBlockElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingExtensionBlockElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingExtensionBlockElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</lockHost>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</block>
</command>
</extensions>
top

Element: plan

Documentation: A plan contains an optionally parameterized sequence of statements, such as installing components or calling component methods. It provides the ability to simply provision a chain of depending applications in the right order.
<plan
name="EntityNameType [1] The name of the plan. The combination of the path and the name uniquely identifies the plan."
path="PathType [0..1] The path of the plan. The combination of the path and the name uniquely identifies the plan."
description="string [0..1] The description for the plan."
returns="boolean [0..1] This boolean value defines if the plan returns a value or not. If set to true all paths must return a value."
limitToHostSet="ReferencedHostEntityNameType [0..1] Limits the execution of this plan to the hosts provided by this host set."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."
maxParallel="nonNegativeInteger [0..1] Defines the maximum number of parallel plan executions. If the user selects more hosts than limited here excessive jobs will be queued. The special value '0' is interpreted as unlimited parallelization.">
<!--
Uniqueness Constraint - uniqueParamName
Selector - tns:param
Field(s) - @name
-->

<param> ParameterType </param> [0..*] Defines a parameter for this plan.
Start Choice [0..*]
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorPlanType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingPlanElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingPlanElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInPlan
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: NestingPlanElementsGroup [1]
</case>
<default> NestingPlanElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1] The try statement can be used to encapsulate potentially failing code.
<block> NestingPlanElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingPlanElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingPlanElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingPlanElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: NestingPlanElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: NestingPlanElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: NestingPlanElementsGroup [1]
</lockHost>
<call
blockName="EntityNameType [1] Specifies the name of the called method."> [1] Allows the invocation of a method of a component.
<argList> ArgListType </argList> [0..1]
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</call>
<checkDependency> [1] Allows verification of installation of a dependent component.
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</checkDependency>
<executePlan
name="EntityNameType [1] The name of the plan. The combination of the path and the name uniquely identifies the plan."
path="PathType [0..1] The path of the plan. The combination of the path and the name uniquely identifies the plan."
version="ModelVersionType [0..1] The version of the plan. By default the newest version is used."> [1] Allows the invocation of a plan.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the plan. On invocation the arguments are matched against those of the invoked plan. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this plan call to a declared variable.
</executePlan>
<install
blockName="EntityNameType [1] Specifies the name of the called install method."> [1] Allows the installation of a component out of a plan.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<component> TargetSpecifiers </component> [1] References the component to be installed.
<compVarSet> CompVarSetType </compVarSet> [0..1] Indicates which variable set should be used in the installation.
<compVarList> ArgListType </compVarList> [0..1] Defines the 'ad-hoc' variable set used when creating the component instance described in this reference, using the variable set for installation as base.
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</install>
<uninstall
blockName="EntityNameType [1] Specifies the name of the called method."> [1] Allows the invocation of a method of a component.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] References the instance of a component, which installed a targetable host.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</uninstall>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</plan>
top

Element: plugin

Documentation: A plug-in includes components, plans, host types, host searches, host sets and resources. Usually a plug-in contains all necessary information to provision a specific software product.
<plugin
name="PluginNameType [1] The name of the plug-in. e.g. com.example.myapp."
description="string [0..1] The optional description of the plug-in."
vendor="NonEmptyString512 [1] The vendor of the plug-in."
version="ModelVersionType [1] The version of the plug-in."
previousVersion="ModelVersionType [0..1] This optional element defines which previous version is expected so that exactly this version is patched. If no previsionVersion is given then a new installation of the plug-in is expected. The import of the plug-in will be denied if the expectations are not satisfied.">
Start Choice [1]
<memberList> [0..1] Defines the elements that are part of this plug-in. The elements appear in the order in which they should be processed.
Start Choice [1..*]
<folder
name="PathType [1] The name of the folder, e.g. /example/simple."
description="string [0..1] The optional description of the folder."/> [1] Defines plug-in specific folders which belong to the plug-in.
<component
jarPath="string [1] The path to the component's xml file relative to the root of the plug-in JAR file, e.g. components/Server.xml."
majorVersion="boolean [0..1] Describes if the component should be imported as a major version. Per default it is imported as a minor version."> [1] Defines plug-in specific component which belong to the plug-in.
<!--
Uniqueness Constraint - uniqueNameOfRefNameForFile
Selector - tns:file | tns:directory | tns:config
Field(s) - @refName
-->

Start Choice [0..*]
<file
name="NonEmptyString255 [1] Name to reference a component resource. Must be unique within the component element."
jarPath="string [1] The path to the resources's file relative to the root of the plug-in JAR file, e.g. resources/script.sh."/> [1] This element references a file which is contained in the plug-in.
<directory
name="NonEmptyString255 [1] Name to reference a component resource. Must be unique within the component element."
jarPath="string [1] The path to the directory relative to the root of the plug-in JAR file, e.g. resources/dir."
descriptorPath="string [0..1] Path to a resource descriptor file, which can be optional."/> [1] This element references a directory which is contained in the plug-in.
<config
name="NonEmptyString255 [1] Name to reference a component resource. Must be unique within the component element."
jarPath="string [1] The path to the resources's file relative to the root of the plug-in JAR file, e.g. resources/script.sh."/> [1] This element references a config-file which is contained in the plug-in.
End Choice</component>
<plan
jarPath="string [1] The path to the plan's xml file relative to the root of the plug-in JAR file, e.g. plans/Restart.xml."
majorVersion="boolean [0..1] Describes if the plan should be imported as a major version. Per default it is imported as a minor version."/> [1] Defines plug-in specific plan which belong to the plug-in.
<hostType
name="EntityNameType [1] Identifying name of a Host Type."
description="string [0..1] The optional description of the host type."> [1] Host Types are used to group Hosts. Host Types declare variables that may be defined by each applying host and therefore are accessible by target substitutions.
<!--
Uniqueness Constraint - uniqueVarNameForHostTypeVarList
Selector - tns:var
Field(s) - @name
-->

<var
name="NameType [1] The identifying name of the variable."
default="VariableValueType [0..1] The default value of the variable. If none is set, the variable will be defined as 'required' in automait."
description="string [0..1] The variable's description. This text is displayed in host management for describing the variable's semantics."/> [0..*] This is one variable belonging to the Host Type. Name identifies a variable of this Host Type. Must be unique within the varList element. Default is the value that may be overwritten per host.
</hostType>
<hostSearch
name="EntityNameType [1] The name of the host search."
description="string [0..1] The optional description of the host search."
function="string (value comes from list: {'any'|'physical'|'virtual'}) [0..1] The optional function of the host. The default is any."> [1] Host searches aggregate multiple criteria used to filter hosts. All criteria must apply to a host so that it appears as a result of the host search.
<criteria
name="NonEmptyString512 [1] The host property to match. Valid values are general properties ( sys.hostName, sys.description, sys.hostType, sys.portNumber, sys.ipAddress, sys.OSVersion, sys.OSArch, sys.OSName, sys.parent ) or user-defined host-variables."
pattern="NonEmptyString512 [1] The pattern to match, e.g. "com.example.myapp#sometype". The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
match="string (value comes from list: {'EQUALS'|'CONTAINS'}) [0..1] The type of the criteria: EQUALS or CONTAINS. The match is case insensitive."/> [0..*] A criteria defines which host variable is compared and which value it must have.
</hostSearch>
<hostSet
name="EntityNameType [1] The name of the host set."
description="string [0..1] The optional description of the host set."> [1] Declares a host set, that can be referenced in a plug-in. A host set references other host sets or searches, which are then or-joined.
<hostSetRef
name="ReferencedHostEntityNameType [1] Name of referenced host set. Valid values would be for example: de.mydomain.myplugin#my_host_set, my-host-set, myplugin#myhostset"/> [0..*] Declares a sub host set, that has to be defined previously in this plug-in or in another plug-in on which this plug-in directly depends on.
<hostSearchRef
name="ReferencedHostEntityNameType [1] Name of referenced host search. Valid values would be for example: de.mydomain.myplugin#my_host_search, my-host-search, myplugin#myhostsearch"/> [0..*] Declares a sub host search, that has to be defined previously in this plug-in or in another plug-in on which this plug-in directly depends on.
</hostSet>
End Choice</memberList>
End Choice</plugin>
top

Element: resourceDescriptor

Documentation: The resource descriptor specifies the owner, group, and permission settings to use for the files and directories of a simple component.
<resourceDescriptor>
<entryList> [1] This element is used to list the files and directories included in the resource.
<defaultEntry> [0..1] This element specifies the default owner, group, and permission settings.
<settings> SettingsElement </settings> [1]
</defaultEntry>
<entry
name="EntryNameType [1] The name value is a string that defines the name of this entry, relative to the root of the resource."> [0..*] This element specifies the owner, group, and permission settings for the entry.
<settings> SettingsElement </settings> [1]
</entry>
</entryList>
</resourceDescriptor>
top

Global Definitions

Attribute Group: ConnectionParameterGroup

Name ConnectionParameterGroup
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
top

Complex Type: ArgListType

Super-types: None
Sub-types: None
Name ArgListType
Abstract no
Documentation: This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<...
Allow any attributes from no namespace (lax validation).
/>
top

Complex Type: AssignCallType

Super-types: None
Sub-types: None
Name AssignCallType
Abstract no
Documentation: Assigns a value of a method call to a declared variable.
<...
varName="NameType [1] The name of the variable whose value shall be assigned."/>
top

Complex Type: AssignType

Super-types: None
Sub-types: None
Name AssignType
Abstract no
<...
varName="NameType [1] The name of the variable whose value shall be assigned."
value="SubstitutionType [1] The value that shall be assigned to the variable."/>
top

Complex Type: BooleanOperatorComponentType

Super-types: None
Sub-types: None
Name BooleanOperatorComponentType
Abstract no
Documentation: This element describes a single supported boolean operator.
<...>
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorComponentType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsComponentType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsComponentType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterComponentType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End Choice</...>
top

Complex Type: BooleanOperatorExtensionsType

Super-types: None
Sub-types: None
Name BooleanOperatorExtensionsType
Abstract no
Documentation: This element describes a single supported boolean operator.
<...>
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorExtensionsType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsExtensionsType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsExtensionsType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterExtensionsType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End Choice</...>
top

Complex Type: BooleanOperatorPlanType

Super-types: None
Sub-types: None
Name BooleanOperatorPlanType
Abstract no
Documentation: This element describes a single supported boolean operator.
<...>
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorPlanType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsPlanType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsPlanType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterPlanType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End Choice</...>
top

Complex Type: BooleanOperatorsComponentType

Super-types: None
Sub-types: None
Name BooleanOperatorsComponentType
Abstract no
Documentation: This element describes the collection of supported boolean operators.
<...>
Start Sequence [1..*]
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorComponentType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsComponentType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsComponentType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterComponentType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End ChoiceEnd Sequence
</...>
top

Complex Type: BooleanOperatorsExtensionsType

Super-types: None
Sub-types: None
Name BooleanOperatorsExtensionsType
Abstract no
Documentation: This element describes the collection of supported boolean operators.
<...>
Start Sequence [1..*]
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorExtensionsType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsExtensionsType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsExtensionsType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterExtensionsType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End ChoiceEnd Sequence
</...>
top

Complex Type: BooleanOperatorsPlanType

Super-types: None
Sub-types: None
Name BooleanOperatorsPlanType
Abstract no
Documentation: This element describes the collection of supported boolean operators.
<...>
Start Sequence [1..*]
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorPlanType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsPlanType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsPlanType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterPlanType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End ChoiceEnd Sequence
</...>
top

Complex Type: CallType

Super-types: None
Sub-types: None
Name CallType
Abstract no
<...
blockName="EntityNameType [1] Specifies the name of the called method.">
<argList> ArgListType </argList> [0..1] Defines the 'ad-hoc' parameters that will be passed to the call.
Start Choice [0..1]
<thisComponent> EmptyType </thisComponent> [1] References the current component instance.
<superComponent> EmptyType </superComponent> [1] References to the parent of the instantiated component.
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<nestedRef> NameIdentifierType </nestedRef> [1] References a nested component of the instantiated composite component.
<allNestedRefs> EmptyType </allNestedRefs> [1] References to all nested components of the instantiated composite component.
<containerComponent> EmptyType </containerComponent> [1] References to the surrounding container of the instantiated component.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
<dependee> NameIdentifierType </dependee> [1] References a dependent component instance (dependee) of calling instantiated component (dependant).
<allDependants> NameIdentifierType </allDependants> [1] References all component instances (dependants) having a declared dependency on calling instantiated component (dependee).
<toplevelRef> ToplevelComponentInstanceType </toplevelRef> [1] References to the top-level component.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</...>
top

Complex Type: CallableType

Super-types: None
Sub-types: None
Name CallableType
Abstract no
Documentation: This type defines callables that can be parameterized and which embed nested constructs.
<...
access="AccessType [0..1] The access for a callable type."
modifier="ModifierType [0..1] The modifier for a callable type."
name="EntityNameType [1] The name for the entity (e.g. constructor, destructor, control)."
description="string [0..1] The description for the entity (e.g. constructor, destructor, control)."
returns="boolean [0..1] This boolean value defines if the callable returns a value or not. If set to true all paths must return a value."
maxParallel="nonNegativeInteger [0..1] Defines the maximum number of parallel component method executions. If the user selects more hosts than limited here excessive jobs will be queued. The special value '0' is interpreted as unlimited parallelization."/>
top

Complex Type: CheckDependencyExtensionsType

Super-types: None
Sub-types: None
Name CheckDependencyExtensionsType
Abstract no
<...>
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component.
End Choice</...>
top

Complex Type: CheckDependencyType

Super-types: None
Sub-types: None
Name CheckDependencyType
Abstract no
<...>
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<containerComponent> EmptyType </containerComponent> [1] References to the surrounding container of the instantiated component.
<nestedRef> NameIdentifierType </nestedRef> [1] References a nested component of the instantiated composite component.
<toplevelRef> ToplevelComponentInstanceType </toplevelRef> [1] References to the top-level component.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</...>
top

Complex Type: CompVarSetType

Super-types: None
Sub-types: None
Name CompVarSetType
Abstract no
Documentation: This type may be used to define the variable set to use for the installation of a component. If it is not set, the default variable set is used.
<...
name="SubstitutionNonEmptyType512 [1] The name of the variable set to use."/>
top

Complex Type: ComponentReferenceType

Super-types: None
Sub-types: None
Name ComponentReferenceType
Abstract no
<...
name="EntityNameType [1] The name of the component from which to inherit."
path="PathType [0..1] The path of the component from which to inherit. The default is the path of inheriting component."
version="ModelVersionType [0..1] The version of the component. By default the newest version is used."/>
top

Complex Type: DependencyType

Super-types: None
Sub-types: None
Name DependencyType
Abstract no
<...
name="NameType [1] Specifies the name of the dependency."
strictness="string (value comes from list: {'SOFT'|'HARD'}) [0..1] Specifies the strictness of the dependency. HARD: Component instances ("dependees") which are referenced by hard dependencies can neither be overwritten nor deleted by subsequent installations (Default). SOFT: Component instances ("dependees") which are referenced by soft dependencies may be overwritten by subsequent installations but cannot be deleted. Note: If a soft dependency was created with a component instance targeter which was restricted to a component version the dependee may be overwritten by newer component versions.">
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<toplevelRef> ToplevelComponentInstanceType </toplevelRef> [1] References to the top-level component.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</...>
top

Complex Type: EmptyType

Super-types: None
Sub-types: None
Name EmptyType
Abstract no
Documentation: Elements of this type contain neither characters nor elements, i.e. they must be empty.
<.../>
top

Complex Type: ExecNativeType

Super-types: None
Sub-types: None
Name ExecNativeType
Abstract no
<...
userToRunAs="SubstitutionNonEmptyType [0..1] Unix only: Specifies the user with which the command is executed. If not specified the default of the agent will be used. Windows agents ignore this functionality and log a warning."
dir="SubstitutionNonEmptyType [0..1] The working directory of the process."
timeout="unsignedInt [0..1] Timeout in seconds after that the process is terminated."
encoding="NonEmptyString [0..1] The character encoding that should be used for the binary data representation of stdout and stderr, e.g. US-ASCII, ISO-8859-1, UTF-8, UTF-16BE, UTF-16LE, UTF-16, IBM850. If no character encoding is specified then strings will be decoded according to the default character encoding of the host system. Possible encodings are listed as "canonical name for java.nio API" at http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html"
loginShell="boolean [0..1] Unix only: Specifies if a login shell is created. This provides an environment similar to what the user would expect had the user logged in directly. Note: Even if environment variables are specified explicitly they have no effect if a login shell is used. Windows agents ignore this functionality and log a warning.">
<env
name="SubstitutionNonEmptyType [1] The name of the environment variable."
value="SubstitutionType [1] The value of the environment variable."/> [0..*] Specifies a list of environment variables that are passed to the command that is executed.
<outputFile
name="SubstitutionNonEmptyType [1] The name of the file."/> [0..1] If this element is specified, the stdout of the process is additionally written to a file on the file system of the agent.
Start Choice [0..1]
<errorFile
name="SubstitutionNonEmptyType [1] The name of the file."/> [1] If this element is specified, the stderr of the process is additionally written to a file on the file system of the agent.
<redirectErrorStream> boolean </redirectErrorStream> [1] If this property is true, then any error output generated by the process will be merged with the standard output. This makes it easier to correlate error messages with the corresponding output. The initial value is false.
End Choice
<assignOutput> VarNameType </assignOutput> [0..1] Assigns the stdout of the process to the specified variable.
<assignError> VarNameType </assignError> [0..1] Assigns the stderr of the process to the specified variable.
<assignStatus> VarNameType </assignStatus> [0..1] Assigns the returnCode of the process to the specified variable.
Start Choice [0..1]
<inputText> TextType </inputText> [1] If specified, the given text will be passed to the process as StdIn.
<inputFile
name="SubstitutionNonEmptyType [1] The name of the file."/> [1] If specified, the content of the given file from the file system of the agent will be passed to the process as StdIn.
End Choice
<exec
cmd="SubstitutionNonEmptyType [1] The command that is executed on the agent."> [1]
<arg
value="SubstitutionType [1] The value of the argument."/> [0..*] The list of arguments that is passed to the command.
</exec>
<successCriteria
status="integer [0..1] The expected status is matched against the return code of the command specified by the parent execNative element."
outputMatchesBegin="SubstitutionNonEmptyType [0..1] OutputMatchesBegin describes a regular expression that is used for matching at the beginning of the (possibly truncated) output. The syntax is that of the Java programming language. This is quite similar to the syntax used by the Perl programming language. See http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html"
errorMatchesBegin="SubstitutionNonEmptyType [0..1] ErrorMatchesBegin describes a regular expression that is used for matching at the beginning of the (possibly truncated) error output. The syntax is that of the Java programming language. This is quite similar to the syntax used by the Perl programming language. See http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html"
outputMatchesEnd="SubstitutionNonEmptyType [0..1] OutputMatchesEnd describes a regular expression that is used for matching at the end of the (possibly truncated) output. The syntax is that of the Java programming language. This is quite similar to the syntax used by the Perl programming language. See http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html"
errorMatchesEnd="SubstitutionNonEmptyType [0..1] ErrorMatchesEnd describes a regular expression that is used for matching at the end of the (possibly truncated) error output. The syntax is that of the Java programming language. This is quite similar to the syntax used by the Perl programming language. See http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html"
inverse="boolean [0..1] By default all specified criteria must be true for the success criteria to succeed. All specified criteria must be false if the attribute inverse is set to true."/> [0..1] This element describes the success criteria for the execNative. If the success criteria element exists but not a single attribute is set then the execNative will succeed independent of any return code or output.
</...>
top

Complex Type: ExtensionBlockCallType

Super-types: None
Sub-types: None
Name ExtensionBlockCallType
Abstract no
<...
blockName="EntityNameType [1] Specifies the name of the called method.">
<argList> ArgListType </argList> [0..1] Defines the 'ad-hoc' parameters that will be passed to the call.
Start Choice [0..1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</...>
top

Complex Type: HostType

Super-types: None
Sub-types: None
Name HostType
Abstract no
<...
name="QualifiedHostTypeName [1] The name of the allocated host type.">
<var
name="NameType [1] The identifying name of the variable."
value="SubstitutionType4096 [1] The value of the variable."/> [0..*] Allows overwriting of a host type variable.
</...>
top

Complex Type: IdType

Super-types: None
Sub-types: None
Name IdType
Abstract no
Documentation: The id uniquely identifies the component. The id can be used as any other variable.
<...
name="NameType [0..1] The unique name of the id."
default="SubstitutionType4096 [0..1] Default is the value the id will have, if no other value is defined."
modifier="ModifierType [0..1] The modifier of the id."
prompt="string [0..1] The description of the id."/>
top

Complex Type: InstallNestingComponentElementsType

Super-types: None
Sub-types: None
Name InstallNestingComponentElementsType
Abstract no
<...>
Start Choice [0..*]
<createDependency> DependencyType </createDependency> [1] Allows the creation of a dependency between the calling component instance (dependant) and another component instance (dependee) specified by nested targeter.
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<install> InstallType </install> [1] Allows the invocation of an install method (constructor) within a component.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> InstallNestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> InstallNestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponentInstall
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
<-- Extends: InstallNestingComponentElementsType (Circular type hierarchy) -->
</case>
<default> InstallNestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> InstallNestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> InstallNestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> InstallNestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> InstallNestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
<-- Extends: InstallNestingComponentElementsType (Circular type hierarchy) -->
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
<-- Extends: InstallNestingComponentElementsType (Circular type hierarchy) -->
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
<-- Extends: InstallNestingComponentElementsType (Circular type hierarchy) -->
</lockHost>
<deployResource> [0..1] Deploys resources of the component.
<!--
Uniqueness Constraint - uniqueNameOfDeployResource
Selector - tns:resource
Field(s) - @name
-->

Start Choice [1]
<resource
name="NonEmptyString512 [1] Name of the resource to deploy."/> [1..*]
<allResources> EmptyType </allResources> [1] Deploys all resources of the component.
End Choice</deployResource>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</...>
top

Complex Type: InstallType

Super-types: None
Sub-types: None
Name InstallType
Abstract no
<...
blockName="EntityNameType [1] Specifies the name of the install method (constructor).">
<argList> ArgListType </argList> [0..1] Defines the 'ad-hoc' parameters that will be passed to the install method.
Start Choice [0..1]
<thisComponent> EmptyType </thisComponent> [1] References the current component instance.
<superComponent> EmptyType </superComponent> [1] References to the parent of the instantiated component.
<nestedRef> NameIdentifierType </nestedRef> [1] References a nested component of the instantiated composite component.
<allNestedRefs> EmptyType </allNestedRefs> [1] References to all nested components of the instantiated composite component.
<containerComponent> EmptyType </containerComponent> [1] References to the surrounding container of the instantiated component.
<toplevelRef> ToplevelComponentType </toplevelRef> [1] References to the top-level component.
End Choice</...>
top

Complex Type: InstalledComponentType

Super-types: TargetSpecifiers < InstalledComponentType (by extension)
Sub-types: None
Name InstalledComponentType
Abstract no
Documentation: References the instance of an installed component.
<...
name="EntityNameType [1] The name of the component."
path="PathType [0..1] The optional path of the component. The default is the path of the invoking entity."
version="ModelVersionType [0..1] The optional version of the component."
host="SubstitutionNonEmptyType512 [0..1] The host on which the component will be installed or executed. By default the current host is taken."
id="SubstitutionNonEmptyType512 [0..1] The id of the component instance."
ignoreInheritComponents="boolean [0..1] Determines if the sub-components should be ignored when searching the installed components. (Though when multiple targets are found, the latest updated one still will be selected.)"/>
top

Complex Type: IsInstalledTargeterComponentType

Super-types: None
Sub-types: None
Name IsInstalledTargeterComponentType
Abstract no
<...
suppressHostCheck="boolean [0..1] Specifies whether the host has to exist or not. By default isInstalled will result in a host lookup error if the given host does not exist. If suppressHostCheck is set to true then isInstalled will return false for a non-existing host.">
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<nestedRef> NameIdentifierType </nestedRef> [1] References a nested component of the instantiated composite component.
<toplevelRef> ToplevelComponentInstanceType </toplevelRef> [1] References to the top-level component.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</...>
top

Complex Type: IsInstalledTargeterExtensionsType

Super-types: None
Sub-types: None
Name IsInstalledTargeterExtensionsType
Abstract no
<...
suppressHostCheck="boolean [0..1] Specifies whether the host has to exist or not. By default isInstalled will result in a host lookup error if the given host does not exist. If suppressHostCheck is set to true then isInstalled will return false for a non-existing host.">
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component.
End Choice</...>
top

Complex Type: IsInstalledTargeterPlanType

Super-types: None
Sub-types: None
Name IsInstalledTargeterPlanType
Abstract no
<...
suppressHostCheck="boolean [0..1] Specifies whether the host has to exist or not. By default isInstalled will result in a host lookup error if the given host does not exist. If suppressHostCheck is set to true then isInstalled will return false for a non-existing host.">
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</...>
top

Complex Type: NameIdentifierType

Super-types: None
Sub-types: None
Name NameIdentifierType
Abstract no
Documentation: Type that has one required attribute name of type NameType
<...
name="NameType [1] Target the name of a nested component reference."/>
top

Complex Type: NestingComponentElementsType

Super-types: None
Sub-types: None
Name NestingComponentElementsType
Abstract no
<...>
Start Choice [0..*]
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponent
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
<-- Extends: NestingComponentElementsType (Circular type hierarchy) -->
</case>
<default> NestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> NestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
<-- Extends: NestingComponentElementsType (Circular type hierarchy) -->
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
<-- Extends: NestingComponentElementsType (Circular type hierarchy) -->
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
<-- Extends: NestingComponentElementsType (Circular type hierarchy) -->
</lockHost>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</...>
top

Complex Type: NestingExtensionBlockElementsType

Super-types: None
Sub-types: None
Name NestingExtensionBlockElementsType
Abstract no
<...>
Start Choice [0..*]
<call> ExtensionBlockCallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyExtensionsType </checkDependency> [1] Allows the verification of an installed component instance.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorExtensionsType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingExtensionBlockElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingExtensionBlockElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInExtensions
Selector - tns:case
Field(s) - @value
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
<-- Extends: NestingExtensionBlockElementsType (Circular type hierarchy) -->
</case>
<default> NestingExtensionBlockElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> NestingExtensionBlockElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingExtensionBlockElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingExtensionBlockElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingExtensionBlockElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
<-- Extends: NestingExtensionBlockElementsType (Circular type hierarchy) -->
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
<-- Extends: NestingExtensionBlockElementsType (Circular type hierarchy) -->
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
<-- Extends: NestingExtensionBlockElementsType (Circular type hierarchy) -->
</lockHost>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</...>
top

Complex Type: NestingPlanElementsType

Super-types: None
Sub-types: None
Name NestingPlanElementsType
Abstract no
<...>
Start Choice [0..*]
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorPlanType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingPlanElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingPlanElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInPlan
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
<-- Extends: NestingPlanElementsType (Circular type hierarchy) -->
</case>
<default> NestingPlanElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1] The try statement can be used to encapsulate potentially failing code.
<block> NestingPlanElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingPlanElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingPlanElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingPlanElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
<-- Extends: NestingPlanElementsType (Circular type hierarchy) -->
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
<-- Extends: NestingPlanElementsType (Circular type hierarchy) -->
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
<-- Extends: NestingPlanElementsType (Circular type hierarchy) -->
</lockHost>
<call
blockName="EntityNameType [1] Specifies the name of the called method."> [1] Allows the invocation of a method of a component.
<argList> ArgListType </argList> [0..1]
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</call>
<checkDependency> [1] Allows verification of installation of a dependent component.
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</checkDependency>
<executePlan
name="EntityNameType [1] The name of the plan. The combination of the path and the name uniquely identifies the plan."
path="PathType [0..1] The path of the plan. The combination of the path and the name uniquely identifies the plan."
version="ModelVersionType [0..1] The version of the plan. By default the newest version is used."> [1] Allows the invocation of a plan.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the plan. On invocation the arguments are matched against those of the invoked plan. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this plan call to a declared variable.
</executePlan>
<install
blockName="EntityNameType [1] Specifies the name of the called install method."> [1] Allows the installation of a component out of a plan.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<component> TargetSpecifiers </component> [1] References the component to be installed.
<compVarSet> CompVarSetType </compVarSet> [0..1] Indicates which variable set should be used in the installation.
<compVarList> ArgListType </compVarList> [0..1] Defines the 'ad-hoc' variable set used when creating the component instance described in this reference, using the variable set for installation as base.
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</install>
<uninstall
blockName="EntityNameType [1] Specifies the name of the called method."> [1] Allows the invocation of a method of a component.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] References the instance of a component, which installed a targetable host.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</uninstall>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</...>
top

Complex Type: ParameterType

Super-types: None
Sub-types: None
Name ParameterType
Abstract no
Documentation: Parameters can be used in plans and components to specify key value pairs that can be evaluated at runtime. Such a list can only appear once per plan or component.
<...
name="NameType [1] The unique name of the parameter."
default="VariableValueType [0..1] The default value of the parameter, if applicable an empty string."
prompt="string [0..1] The description of the parameter."
displayMode="string (value comes from list: {'CLEAR'|'BOOLEAN'|'PASSWORD'}) [0..1] This mode defines how the parameter is displayed in the user interface."/>
top

Complex Type: ParametersType

Super-types: None
Sub-types: None
Name ParametersType
Abstract no
<...>
<required
name="NameType [1] The unique name of the required parameter."
description="string [0..1] The description of the required parameter."/> [0..*] Required parameter for the command.
<optional
name="NameType [1] The unique name of the optional parameter."
default="VariableValueType [1] The default value of the optional parameter, if applicable an empty string."
description="string [0..1] The optional description of the optional parameter."/> [0..*] Optional parameter for the command. Optional parameters require a default value.
</...>
top

Complex Type: SettingsElement

Super-types: None
Sub-types: None
Name SettingsElement
Abstract no
Documentation: Defines how a resource is installed on the host.
<...
permissions="NonEmptyString255 [0..1] The permissions given in octal numbers given in the format expected by the UNIX 'chmod' command, e.g. 0755. The agent uses its own default if the permissions are not set explicitly."
owner="NonEmptyString255 [0..1] The owning user of the resource. The agent uses its own default if the owner is not set explicitly."
group="NonEmptyString255 [0..1] The owning group of the resource. The agent uses its own default if the group is not set explicitly."/>
top

Complex Type: SystemServiceType

Super-types: None
Sub-types: None
Name SystemServiceType
Abstract no
<...
name="EntityNameType [1] The name of the component."
path="PathType [0..1] The path of the component. The default is the path of the invoking entity."
host="SubstitutionNonEmptyType512 [0..1] The host on which the component will be installed or executed. By default the current host is taken."/>
top

Complex Type: TargetSpecifiers

Super-types: None
Sub-types:
Name TargetSpecifiers
Abstract no
<...
name="EntityNameType [1] The name of the component."
path="PathType [0..1] The optional path of the component. The default is the path of the invoking entity."
version="ModelVersionType [0..1] The optional version of the component."
host="SubstitutionNonEmptyType512 [0..1] The host on which the component will be installed or executed. By default the current host is taken."/>
top

Complex Type: TargetableComponentType

Super-types: None
Sub-types: None
Name TargetableComponentType
Abstract no
Documentation: References the instance of a component, which installed a targetable host.
<...
host="SubstitutionNonEmptyType512 [0..1] Target another host as targetableComponent target. If this attribute is omitted the current host is used as target."/>
top

Complex Type: TextType

Super-types: string < TextType (by extension)
Sub-types: None
Name TextType
Abstract no
Documentation: Textual string data with an optional specification of the desired character encoding that should be used for en-/decoding on the host system.
<...
encoding="NonEmptyString [0..1] The character encoding that should be used for the binary data representation of this text, e.g. US-ASCII, ISO-8859-1, UTF-8, UTF-16BE, UTF-16LE, UTF-16, IBM850. If no character encoding is specified then strings will be en-/decoded according to the default character encoding of the host system. Possible encodings are listed as "canonical name for java.nio API" at http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html">
string
</...>
top

Complex Type: ToplevelComponentInstanceType

Super-types: ToplevelComponentType < ToplevelComponentInstanceType (by extension)
Sub-types: None
Name ToplevelComponentInstanceType
Abstract no
<...
name="NameType [1] Name of the top-level component reference."
host="SubstitutionNonEmptyType512 [0..1] Host, on that the referenced component installed."
id="SubstitutionNonEmptyType512 [0..1] Id of the top-level component reference."/>
top

Complex Type: ToplevelComponentType

Super-types: None
Sub-types:
Name ToplevelComponentType
Abstract no
<...
name="NameType [1] Name of the top-level component reference."
host="SubstitutionNonEmptyType512 [0..1] Host, on that the referenced component installed."/>
top

Complex Type: UninstallNestingComponentElementsType

Super-types: None
Sub-types: None
Name UninstallNestingComponentElementsType
Abstract no
<...>
Start Choice [0..*]
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<uninstall> UninstallType </uninstall> [1] Allows the invocation of an uninstall method (destructor) within a component.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> UninstallNestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> UninstallNestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponentUninstall
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
<-- Extends: UninstallNestingComponentElementsType (Circular type hierarchy) -->
</case>
<default> UninstallNestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> UninstallNestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> UninstallNestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> UninstallNestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> UninstallNestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
<-- Extends: UninstallNestingComponentElementsType (Circular type hierarchy) -->
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
<-- Extends: UninstallNestingComponentElementsType (Circular type hierarchy) -->
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
<-- Extends: UninstallNestingComponentElementsType (Circular type hierarchy) -->
</lockHost>
<undeployResource> [0..1] Undeploys the resources of the component.
<!--
Uniqueness Constraint - uniqueNameOfUndeployResource
Selector - tns:resource
Field(s) - @name
-->

Start Choice [1]
<resource
name="NonEmptyString512 [1] Name of the resource to undeploy."/> [1..*]
<allResources> EmptyType </allResources> [1] Undeploys all previously installed resources of the component instance.
End Choice</undeployResource>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End ChoiceEnd Choice</...>
top

Complex Type: UninstallType

Super-types: None
Sub-types: None
Name UninstallType
Abstract no
<...
blockName="EntityNameType [1] Specifies the name of the install method (destructor).">
<argList> ArgListType </argList> [0..1] Defines the 'ad-hoc' parameters that will be passed to the uninstall method.
Start Choice [0..1]
<thisComponent> EmptyType </thisComponent> [1] References the current component instance.
<superComponent> EmptyType </superComponent> [0..1] References to the parent of the instantiated component.
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] References the targetable component of the given host.
<nestedRef> NameIdentifierType </nestedRef> [1] References a nested component of the instantiated composite component.
<allNestedRefs> EmptyType </allNestedRefs> [1] References to all nested components of the instantiated composite component.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
<dependee> NameIdentifierType </dependee> [1] References a dependent component instance (dependee) of calling instantiated component (dependant).
<toplevelRef> ToplevelComponentInstanceType </toplevelRef> [1] References to the top-level component.
End Choice</...>
top

Complex Type: VarNameType

Super-types: None
Sub-types: None
Name VarNameType
Abstract no
Documentation: This type should be used for all variable names which require a string.
<...
varName="NameType [1] The name of the element referencing this type."/>
top

Complex Type: VariableType

Super-types: None
Sub-types: None
Name VariableType
Abstract no
Documentation: Type that contains a name and a value.
<...
name="NameType [1] The identifying name of the variable."
default="SubstitutionType [1] The default value of the variable."/>
top

Model Group: BlockStatementsGroup

Name BlockStatementsGroup
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End Choice
top

Model Group: BooleanOperatorsComponentGroup

Name BooleanOperatorsComponentGroup
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorComponentType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsComponentType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsComponentType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterComponentType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End Choice
top

Model Group: BooleanOperatorsExtensionsGroup

Name BooleanOperatorsExtensionsGroup
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorExtensionsType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsExtensionsType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsExtensionsType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterExtensionsType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End Choice
top

Model Group: BooleanOperatorsPlanGroup

Name BooleanOperatorsPlanGroup
Start Choice [1]
<isTrue
value="SubstitutionType [1] The value to compare with "true"."/> [1] The given value is compared to the string "true" thereby ignoring case.
<equals
value1="SubstitutionType [1] The first value."
value2="SubstitutionType [1] The second value which is compared to the first value."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled. Default is false."/> [1] The boolean operator allows the comparison of two values.
<matches
value="SubstitutionType [1] The string which is matched against the pattern. Substitutions may be used."
pattern="SubstitutionType [1] The pattern against which the string is matched. Substitutions may be used. The pattern matches if it is contained in the string, it must not match completely. The pattern supports simple globbing with the following semantics: ?: Match exactly one unknown character *: Match any number (including 0) of unknown characters"
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive matching is enabled. Default is false."/> [1] The matches operator returns true if the value matches with the given pattern, else false.
<not> BooleanOperatorPlanType </not> [1] Negates the given boolean value.
<and> BooleanOperatorsPlanType </and> [1] Returns true, only if all boolean operators of the list return true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is false.
<or> BooleanOperatorsPlanType </or> [1] Returns true, if at least one boolean operator of the list returns true. The list must contain at least one element. The boolean operators are evaluated in order. Further boolean operators are not evaluated and displayed as "(?)", if one value is found that is true.
<isInstalled> IsInstalledTargeterPlanType </isInstalled> [1] Returns true, if the contained instance targeter retrieves an instance. False otherwise. In some cases an error will be returned instead: * The component (model) does not exist, i.e. wrong name or path * The host does not exist (suppressHostCheck=false) * Substitution error in the instance targeters, e.g. id, host
End Choice
top

Model Group: InstallNestingComponentElementsGroup

Name InstallNestingComponentElementsGroup
Start Choice [0..*]
<createDependency> DependencyType </createDependency> [1] Allows the creation of a dependency between the calling component instance (dependant) and another component instance (dependee) specified by nested targeter.
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<install> InstallType </install> [1] Allows the invocation of an install method (constructor) within a component.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> InstallNestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> InstallNestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponentInstall
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</case>
<default> InstallNestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> InstallNestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> InstallNestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> InstallNestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> InstallNestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: InstallNestingComponentElementsGroup [1]
</lockHost>
<deployResource> [0..1] Deploys resources of the component.
<!--
Uniqueness Constraint - uniqueNameOfDeployResource
Selector - tns:resource
Field(s) - @name
-->

Start Choice [1]
<resource
name="NonEmptyString512 [1] Name of the resource to deploy."/> [1..*]
<allResources> EmptyType </allResources> [1] Deploys all resources of the component.
End Choice</deployResource>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End Choice End Choice
top

Model Group: NestingComponentElementsGroup

Name NestingComponentElementsGroup
Start Choice [0..*]
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponent
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: NestingComponentElementsGroup [1]
</case>
<default> NestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> NestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: NestingComponentElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: NestingComponentElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: NestingComponentElementsGroup [1]
</lockHost>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End Choice End Choice
top

Model Group: NestingExtensionBlockElementsGroup

Name NestingExtensionBlockElementsGroup
Start Choice [0..*]
<call> ExtensionBlockCallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyExtensionsType </checkDependency> [1] Allows the verification of an installed component instance.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorExtensionsType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingExtensionBlockElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingExtensionBlockElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInExtensions
Selector - tns:case
Field(s) - @value
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</case>
<default> NestingExtensionBlockElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> NestingExtensionBlockElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingExtensionBlockElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingExtensionBlockElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingExtensionBlockElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: NestingExtensionBlockElementsGroup [1]
</lockHost>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End Choice End Choice
top

Model Group: NestingPlanElementsGroup

Name NestingPlanElementsGroup
Start Choice [0..*]
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorPlanType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> NestingPlanElementsType </then> [1] The block that is executed if the condition is true.
<else> NestingPlanElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInPlan
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: NestingPlanElementsGroup [1]
</case>
<default> NestingPlanElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1] The try statement can be used to encapsulate potentially failing code.
<block> NestingPlanElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> NestingPlanElementsType </finally> [1] This block is always executed as the last block.
<catch> NestingPlanElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> NestingPlanElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: NestingPlanElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: NestingPlanElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: NestingPlanElementsGroup [1]
</lockHost>
<call
blockName="EntityNameType [1] Specifies the name of the called method."> [1] Allows the invocation of a method of a component.
<argList> ArgListType </argList> [0..1]
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</call>
<checkDependency> [1] Allows verification of installation of a dependent component.
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] Target a targetable host. The instance variables of the component created this host will be accessible for substitutions.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice</checkDependency>
<executePlan
name="EntityNameType [1] The name of the plan. The combination of the path and the name uniquely identifies the plan."
path="PathType [0..1] The path of the plan. The combination of the path and the name uniquely identifies the plan."
version="ModelVersionType [0..1] The version of the plan. By default the newest version is used."> [1] Allows the invocation of a plan.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the plan. On invocation the arguments are matched against those of the invoked plan. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this plan call to a declared variable.
</executePlan>
<install
blockName="EntityNameType [1] Specifies the name of the called install method."> [1] Allows the installation of a component out of a plan.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
<component> TargetSpecifiers </component> [1] References the component to be installed.
<compVarSet> CompVarSetType </compVarSet> [0..1] Indicates which variable set should be used in the installation.
<compVarList> ArgListType </compVarList> [0..1] Defines the 'ad-hoc' variable set used when creating the component instance described in this reference, using the variable set for installation as base.
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</install>
<uninstall
blockName="EntityNameType [1] Specifies the name of the called method."> [1] Allows the invocation of a method of a component.
<argList> ArgListType </argList> [0..1] This type may be used to define a list of arguments which will be passed to the method. On invocation the arguments are matched against those of the invoked method. Parameters which do not have a default value must be defined, existing parameters may be overwritten, unknown parameters will be silently ignored.
Start Choice [1]
<installedComponent> InstalledComponentType </installedComponent> [1] References to a top-level instance of a component. Nested components are not accessible with this targeter. If multiple targets are found, the latest installed one will be selected.
<targetableComponent> TargetableComponentType </targetableComponent> [1] References the instance of a component, which installed a targetable host.
<systemService> SystemServiceType </systemService> [1] References to system service instance of a component. If multiple targets are found, the latest installed one will be selected.
End Choice
<assign> AssignCallType </assign> [0..1] Assigns the returned value of this method call to a declared variable.
</uninstall>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End Choice End Choice
top

Model Group: UninstallNestingComponentElementsGroup

Name UninstallNestingComponentElementsGroup
Start Choice [0..*]
<call> CallType </call> [1] Allows the invocation of a method of a component.
<checkDependency> CheckDependencyType </checkDependency> [1] Allows the verification of an installed component instance.
<uninstall> UninstallType </uninstall> [1] Allows the invocation of an uninstall method (destructor) within a component.
<if> [1] The if statement can be used to implement conditional execution.
<condition> BooleanOperatorComponentType </condition> [1] The condition that is evaluated. The sub element may either be a boolean operator which is evaluated directly (e.g. "isTrue", "equals", or "matches") or a boolean operator which contains other nested boolean operators (e.g. "not", "and", or "or").
<then> UninstallNestingComponentElementsType </then> [1] The block that is executed if the condition is true.
<else> UninstallNestingComponentElementsType </else> [0..1] The optional block that is executed if the condition is false.
</if>
<switch
value="SubstitutionNonEmptyType [1] The switch-value against which the regular expression of the case is matched."
caseSensitive="boolean [0..1] This boolean attribute describes if case-sensitive checking is enabled for the regular expression. Default is false."
executeMultiple="boolean [0..1] This boolean attribute describes if multiple cases may be executed if the corresponding regular expression matches. Otherwise only the first matching case will be executed."> [1] The switch statement allows to test the value of an expression and, depending on that value, to jump directly into some cases within the switch statement. By default multiple cases may be executed in order of their definition if the corresponding regular expression matches. The optional default block will be executed if no case matches at all.
<!--
Uniqueness Constraint - uniqueValueOfCaseInComponentUninstall
Selector - tns:case
Field(s) - @matches
-->

<case
matches="NonEmptyString [1] The regular expression matching against the switch-value. If using a simple matches value like 'abc', the string will be matched as a partial match against the switch value."> [1..*] The case block that is executed if switch-value matches with the regular expression. By default the comparison is case-insensitive, see also the "caseSensitive" attribute.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</case>
<default> UninstallNestingComponentElementsType </default> [0..1] The optional block that is executed if no case block matches at all.
</switch>
<try> [1]
<block> UninstallNestingComponentElementsType </block> [1] The block containing the code that potentially fails.
Start Choice [1]
<finally> UninstallNestingComponentElementsType </finally> [1] This block is always executed as the last block.
<catch> UninstallNestingComponentElementsType </catch> [1] This block is executed if the code of the try block fails.
<finally> UninstallNestingComponentElementsType </finally> [0..1] This block is always executed as the last block.
End Choice</try>
<forEach
elements="VariableValueType [1] Specifies the elements over which to iterate. The elements are separated by delimiters."
varName="NameType [1] Specifies the name of the control variable that will be re-created in each iteration with the appropriate value assigned."
delimiter="NonEmptyStringDelimiter [0..1] Specifies an optional delimiter that contains the characters to split the elements. The delimiter defaults to whitespaces like blank, tab, carriage return, and new line. It is possible to specify this value as a regular expression like \n or as a UTF-8 HTML-Entity, e.g. &#10;. Substitutions are currently not supported."
ignoreEmpty="boolean [0..1] Specifies whether empty parts will be ignored('true') or not ignored ('false') during the iteration."> [1] The forEach statement can be used to repeat the content by iterating over the defined elements in the given order.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</forEach>
<retarget
host="SubstitutionNonEmptyType512 [1] Specifies the target host name."
hostLockingMode="union of: [ HostLockingModeType, [ string (value comes from list: {'SHARED'|'INHERITED'}) ] ] [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] Initiates a host retarget for the duration of the execution of the nested elements. A new child context with the new current host will be created, before locking it with the given locking mode.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</retarget>
<lockHost
hostLockingMode="HostLockingModeType [0..1] Specifies the locking strategy to apply for the nested statements. Host Locking is used to synchronize concurrent plan and component executions on a host."> [1] This type demarcates locking restrictions for the underlying host.
Circular model group reference: UninstallNestingComponentElementsGroup [1]
</lockHost>
<undeployResource> [0..1] Undeploys the resources of the component.
<!--
Uniqueness Constraint - uniqueNameOfUndeployResource
Selector - tns:resource
Field(s) - @name
-->

Start Choice [1]
<resource
name="NonEmptyString512 [1] Name of the resource to undeploy."/> [1..*]
<allResources> EmptyType </allResources> [1] Undeploys all previously installed resources of the component instance.
End Choice</undeployResource>
Start Choice [0..*]
Allow any elements from the following namespace(s): http://www.novatec-gmbh.de/np/schemas/server/model/extension (skip validation). [1]
<var> VariableType </var> [1] Declares a variable. The variable can be referenced from the current context and all contexts contained within. If a variable with the same name exists in a surrounding context, this variable shadows the other one. If an uninitialized variable is read then an error is thrown at runtime.
<execNative> ExecNativeType
<!--
Uniqueness Constraint - assignVarName
Selector - tns:assignOutput|tns:assignError|tns:assignStatus
Field(s) - @varName
-->
</execNative> [1] The execNative element encapsulates the command and its parameters which are passed to the agent. Further parameters may influence the server's behavior (e.g. timeouts). If the success criteria element does not exist it defaults to <successCriteria status="0"/>.
<assign> AssignType </assign> [1] Assigns a value to a previously declared variable.
<pause
delaySecs="positiveInteger [1] The number of seconds to wait."/> [1] Pauses execution for a given number of seconds.
<raise
message="SubstitutionType [0..1] The message that is propagated up and shown to the user."/> [1] This statement terminates the execution with a user defined error message. The raise may be caught by a surrounding catch.
<echo
message="SubstitutionType [1] The message that is shown to the user."/> [1] This statement echos the given message.
<return
value="SubstitutionType [0..1] An expression yielding the return value."/> [1] This type initiates a method return, optionally returning a value.
<sendCustomEvent
severity="string (value comes from list: {'info'|'warning'|'error'}) [0..1] The event severity."
message="SubstitutionType [1] The message that will be sent as custom event."/> [1] This statement sends a custom event, which may be propagated according to the event filter configuration.
<createVirtualHost
name="SubstitutionNonEmptyType512 [1] The name of the virtual host."
parent="SubstitutionNonEmptyType512 [1] The name of the parent host."
description="SubstitutionType4096 [0..1] The optional description of the virtual host."> [1] Allows creation of a virtual host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
</createVirtualHost>
<createPhysicalHost
name="SubstitutionNonEmptyType512 [1] The name of the physical host."
description="SubstitutionType4096 [0..1] The optional description of the physical host."
initialize="boolean [0..1] Initialize the host after creation. Default is false. If host could not be initialized, creation will be undone."
parent="SubstitutionType [0..1] The optional name of the gateway host."
gateway="boolean [0..1] Set host function gateway. Default is false."
remoteAgent="boolean [0..1] Set host function remote agent. Default is true."
strictLocking="boolean [0..1] Set host function strict locking. Default is false."> [1] Allows creation of a physical host.
<hostType> HostType </hostType> [0..1] The optional host type of the new host.
Start Choice [1]
<https
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."/> [1] Use HTTPS protocol to connect to the host.
<ssh
address="SubstitutionNonEmptyType [1] The ip address or hostname used to connect the remote agent."
port="SubstitutionNonEmptyType [1] The remote port to connect to. Depending on the connection protocol this is the agent's HTTPS listening port or the SSH port."
httpPort="SubstitutionType [0..1] The agent will listen to this port for incoming connections. The default value will be used if nothing is set, automatically."
alivePort="SubstitutionType [0..1] On the keep alive port, the automaIT server and agent will establish a parallel connection to recognize, when server or agent shuts down and close the original SSH connection. The default value will be used if nothing is set, automatically."
user="SubstitutionType [0..1] This user is used to connect to the remote host. The default value will be used if nothing is set, automatically."
cmd="SubstitutionType [0..1] The command line to start the agent on the remote host. The default value will be used if nothing is set, automatically."/> [1] Use SSH protocol to connect to the host.
End Choice
<agentScripts
osName="SubstitutionType [0..1] The optional existing agent script to discover the remote operating system name."
osVersion="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system version."
osArchitecture="SubstitutionType4096 [0..1] The optional existing agent script to discover the remote operating system architecture.."/> [0..1] Set one or more existing agent scripts to discover os specific information.
</createPhysicalHost>
<deleteHost
name="SubstitutionNonEmptyType512 [1] Name of the host, which should be deleted."/> [1] Allows deletion of physical or virtual host.
End Choice End Choice
top

Simple Type: AccessType

Super-types: string < AccessType (by restriction)
Sub-types: None
Name AccessType
Content
  • Base XSD Type: string
  • value comes from list: {'PUBLIC'|'PROTECTED'|'PATH'|'PRIVATE'}
Documentation: Defines how entities can be accessed (e.g. components, varLists, etc.).
top

Simple Type: ComponentVariableModifierType

Super-types: string < ComponentVariableModifierType (by restriction)
Sub-types: None
Name ComponentVariableModifierType
Content
  • Base XSD Type: string
  • value comes from list: {'ABSTRACT'|'INSTALL'|'FINAL'}
Documentation: Changes the behavior of the variable in respect to instantiation and inheritance.
top

Simple Type: EntityNameType

Super-types: string < EntityNameType (by restriction)
Sub-types: None
Name EntityNameType
Content
  • Base XSD Type: string
  • pattern = [\.]{0,2}[\-\p{N}\p{L}_][\-\p{N}\p{L}_ .]*
  • length <= 512
Documentation: This is a string that is allowed for the names of entities like plan or component. It has a maximum length of 512 and can be one of the following possibilities: 1. a hyphen, or a number, a letter, or an underscore followed by any number of hyphens, numbers, letters, underscores, or points. 2. a point and the pattern from number 1. 3. two points and a hyphen, a number, a letter, an underscore, or a point (minimum one time)
top

Simple Type: EntryNameType

Super-types: string < EntryNameType (by restriction)
Sub-types: None
Name EntryNameType
Content
  • Base XSD Type: string
  • pattern = root
  • length <= 512
Documentation: This is a string that is allowed for the name attribute. The string can be just root, or root followed by one of these possibilities: 1. a slash and a hyphen, or a number, or a letter followed by any number of hyphens, numbers, letters, underscores, or points. 2. a point and the pattern from number 1. 3. two points and a hyphen, a number, a letter, an underscore, or a point (minimum one time)
top

Simple Type: HostLockingModeType

Super-types: string < HostLockingModeType (by restriction)
Sub-types: None
Name HostLockingModeType
Content
  • Base XSD Type: string
  • value comes from list: {'EXCLUSIVE'|'EXCLUSIVE_PARENT'}
top

Simple Type: ModelVersionType

Super-types: string < ModelVersionType (by restriction)
Sub-types: None
Name ModelVersionType
Content
  • Base XSD Type: string
  • pattern = [0-9]+\.[0-9]+
Documentation: A model version describes a version that itself consists of two numbers. The major-version usually describes big differences between version-controlled model elements. The minor version usually describes little improvements in comparison to the last version. When a new version is imported and it is not specified otherwise there will be a new minor version created. In the xml syntax the major version will be separated from the minor version by the '.' character. Major version comes first, minor version second.
top

Simple Type: ModifierType

Super-types: string < ModifierType (by restriction)
Sub-types: None
Name ModifierType
Content
  • Base XSD Type: string
  • value comes from list: {'ABSTRACT'|'FINAL'}
Documentation: Changes the behavior of the entity (e.g component, variable, method, resource, etc...) in respect to instantiation and inheritance.
top

Simple Type: NameType

Super-types: string < NameType (by restriction)
Sub-types: None
Name NameType
Content
  • Base XSD Type: string
  • pattern = [\p{L}_][\p{N}\p{L}_]*
  • length <= 512
Documentation: This type is used for any kind of names. It is a string with the maximum length of 512 characters. It may contain either a unicode letter or an underscore, then either a number, a unicode letter or underscore.
top

Simple Type: NonEmptyString

Super-types: string < NonEmptyString (by restriction)
Sub-types:
Name NonEmptyString
Content
  • Base XSD Type: string
  • pattern = (.|\n)*\S(.|\n)*
  • length >= 1
Documentation: This is a string with a minimum length of 1. There must be at least one letter that is neither a blank, nor a tabspace, nor a newline.
top

Simple Type: NonEmptyString255

Super-types: string < NonEmptyString (by restriction) < NonEmptyString255 (by restriction)
Sub-types: None
Name NonEmptyString255
Content
  • Base XSD Type: string
  • pattern = (.|\n)*\S(.|\n)*
  • length >= 1
  • length <= 255
Documentation: This is a string with a minimum length of 1 and maximum 255. There must be at least one letter that is neither a blank, nor a tabspace, nor a newline.
top

Simple Type: NonEmptyString512

Super-types: string < NonEmptyString (by restriction) < NonEmptyString512 (by restriction)
Sub-types: None
Name NonEmptyString512
Content
  • Base XSD Type: string
  • pattern = (.|\n)*\S(.|\n)*
  • length >= 1
  • length <= 512
Documentation: This is a string with a minimum length of 1 and maximum 512. There must be at least one letter that is neither a blank, nor a tabspace, nor a newline.
top

Simple Type: NonEmptyStringDelimiter

Super-types: string < NonEmptyStringDelimiter (by restriction)
Sub-types: None
Name NonEmptyStringDelimiter
Content
  • Base XSD Type: string
  • length >= 1
Documentation: This is a string with length of 1. Blank is also allowed and UTF-8 HTML-Entities can be used.
top

Simple Type: PathType

Super-types: string < PathType (by restriction)
Sub-types: None
Name PathType
Content
  • Base XSD Type: string
  • pattern = /
  • length <= 4096
Documentation: This is a string that is allowed for the path attributes. It has a maximum length of 4096 and consists of names separated through slashes. It can just be a slash or a slash followed by one of these possibilities: 1. a hyphen, or a number, a letter, or an underscore followed by any number of hyphens, numbers, letters, underscores, or points. 2. a point and the pattern from number 1. 3. two points and a hyphen, a number, a letter, an underscore, or a point (minimum one time)
top

Simple Type: PluginNameType

Super-types: string < PluginNameType (by restriction)
Sub-types: None
Name PluginNameType
Content
  • Base XSD Type: string
  • pattern = ([\p{L}_][\p{N}\p{L}_]{0,255})(\.([\p{L}_][\p{N}\p{L}_]{0,255}))*
  • length <= 512
Documentation: This is a string that is allowed for the plug-in names. Plug-in names should follow Java package naming convention. The first part of the string has to start with a letter or an underscore, followed by a number, a letter, or an underscore. After that this pattern can be repeated, but there has to be a separating point. Valid plug-in names are for example: de.mydomain.myplugin, _test_myplugin
top

Simple Type: QualifiedHostTypeName

Super-types: string < QualifiedHostTypeName (by restriction)
Sub-types: None
Name QualifiedHostTypeName
Content
  • Base XSD Type: string
  • pattern = [\p{L}_][\-\p{N}\p{L}_. ]{0,512}
  • length <= 4096
Documentation: This is a string that is allowed for the qualified names of host type. It has a maximum length of 4096 and can be one of the following possibilities: The second pattern is the following (the first is contained in the second): The first part of the string has to start with a letter or an underscore, followed by a number, a letter, or an underscore. After that this pattern can be repeated, but there has to be a separating point. This sequence can be followed by a diamond and a letter or an underscore followed by a hyphen, a number, a letter, an underscore, or a point. Valid values are for example: hostTypeName, myplugin#hostTypeName
top

Simple Type: ReferencedHostEntityNameType

Super-types: string < ReferencedHostEntityNameType (by restriction)
Sub-types: None
Name ReferencedHostEntityNameType
Content
  • Base XSD Type: string
  • pattern = [\p{L}_][\-\p{N}\p{L}_. ]{0,512}
  • length <= 4096
Documentation: A string that can contain an optional plug-in name followed by the separator # and the host name. The second pattern is the following (the first is contained in the second): The first part of the string has to start with a letter or an underscore, followed by a number, a letter, or an underscore. After that this pattern can be repeated, but there has to be a separating point. This sequence can be followed by a diamond and a letter or an underscore followed by a hyphen, a number, a letter, an underscore, or a point. Valid values are for example: de.mydomain.myplugin#my_host_search, my-host-search, myplugin#myhostsearch
top

Simple Type: SubstitutionNonEmptyType

Super-types: string < NonEmptyString (by restriction) < SubstitutionNonEmptyType (by restriction)
Sub-types: None
Name SubstitutionNonEmptyType
Content
  • Base XSD Type: string
  • pattern = (.|\n)*\S(.|\n)*
  • length >= 1
Documentation: This type marks strings which allow variable substitutions and may not be empty.
top

Simple Type: SubstitutionNonEmptyType255

Super-types: string < NonEmptyString (by restriction) < SubstitutionNonEmptyType255 (by restriction)
Sub-types: None
Name SubstitutionNonEmptyType255
Content
  • Base XSD Type: string
  • pattern = (.|\n)*\S(.|\n)*
  • length >= 1
  • length <= 255
Documentation: This type marks strings which allow variable substitutions and may not be empty. The maximum length is 255.
top

Simple Type: SubstitutionNonEmptyType512

Super-types: string < NonEmptyString (by restriction) < SubstitutionNonEmptyType512 (by restriction)
Sub-types: None
Name SubstitutionNonEmptyType512
Content
  • Base XSD Type: string
  • pattern = (.|\n)*\S(.|\n)*
  • length >= 1
  • length <= 512
Documentation: This type marks strings which allow variable substitutions and may not be empty. The maximum length is 512.
top

Simple Type: SubstitutionType

Super-types: string < SubstitutionType (by restriction)
Sub-types: None
Name SubstitutionType
Content
  • Base XSD Type: string
Documentation: This type marks strings which allow variable substitutions.
top

Simple Type: SubstitutionType4096

Super-types: string < SubstitutionType4096 (by restriction)
Sub-types: None
Name SubstitutionType4096
Content
  • Base XSD Type: string
  • length <= 4096
Documentation: This type marks strings which allow variable substitutions. The maximum length is 4096.
top

Simple Type: VariableValueType

Super-types: string < VariableValueType (by restriction)
Sub-types: None
Name VariableValueType
Content
  • Base XSD Type: string
  • length <= 4096
Documentation: This type is used for any kind of variable/parameter values. It is a string with the maximum length of 4096 characters.
top

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

top