# ScriptLanguageExpressionProfileType (Complex Type)

### Namespace: http://midpoint.evolveum.com/xml/ns/public/common/common-3

Specifies restrictions for execution of script expressions.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
language | property anyURI | [1,1] | Language of the expression.
description | property string | [0,1] | Free-form description (comment).
documentation | property string | [0,1] | Technical documentation for a particular object or construct.
decision | property AuthorizationDecisionType | [1,1] | Default decision for the scripting language.
typeChecking | property boolean | [0,1] | Switch controlling whether strict type checking is enabled.
permissionProfile | property string | [0,1] | Identifier of a permission profile that should be applied to this script language.

- ### Items

  - #### language

    Flags: RAM,runtime

    Multiplicity: [1,1]

    Display order:

    Language of the expression.

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Free-form description (comment).

  - #### documentation

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Technical documentation for a particular object or construct.

    The purpose of this element is to document system configuration and behavior. The documentation will not be presented to end users. In fact, it will probably not be presented at all in midPoint user interface. This documentation element is supposed to be a part of the technical documentation of midPoint deployment. The tools than generate deployment configuration will look for these elements and combine them to compiled documentation document.

    AsciiDoc formatting is assumed for this element. Any leading or trailing whitespace is skipped. Indentation equivalent to he indentation of the first non-blank line of text is also skipped.

  - #### decision

    Flags: RAM,runtime,AVals:2

    Multiplicity: [1,1]

    Display order:

    Default decision for the scripting language. I.e. decision whether the language can be used at all.

  - #### typeChecking

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Switch controlling whether strict type checking is enabled. There is no global default for this. Each language may default to a different value. Some languages may not support this switch at all.

  - #### permissionProfile

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Identifier of a permission profile that should be applied to this script language. If no profile is specified, then no profile will be applied and all language features will be allowed.