# StringLimitType (Complex Type)

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

Limitations of a string value connected to given character class.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
name | property PolyStringType | [0,1] | User-understandable name of the limitations.
description | property string | [0,1] | User-understandable description of the limitations.
documentation | property string | [0,1] | Technical documentation for a particular object or construct.
minOccurs | property int | [0,1] | Minimal number of characters from this class that must be present in the string value.
maxOccurs | property int | [0,1] | Maximal number of characters from this class that can be present in the string value.
mustBeFirst | property boolean | [0,1] | If "true", the character from this class must be at the first place of the string value.
ignoreWhenGenerating | property boolean | [0,1] | If "true", this class is ignored when generating the value.
characterClass | property CharacterClassOrRefType | [0,1] | Specification of the character class for these limitations.

- ### Items

  - #### name

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    User-understandable name of the limitations.

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    User-understandable description of the limitations.

  - #### 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.

  - #### minOccurs

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Minimal number of characters from this class that must be present in the string value.

  - #### maxOccurs

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Maximal number of characters from this class that can be present in the string value.

  - #### mustBeFirst

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    If "true", the character from this class must be at the first place of the string value. If more classes have this flag set to "true", all of them must conform to this rule. (I.e., the first character must come from an intersection of these classes, which must be, obviously, non-empty.)

  - #### ignoreWhenGenerating

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    If "true", this class is ignored when generating the value. This is to avoid generating passwords or nonce values with trouble-making characters (problematic in the logs, in URIs, and so on), like the space, '#', '&', '*', apostrophe, or double quotes. The value of "true" means that "minOccurs" must be 0. Otherwise, it's not possible to generate a compliant value. Note that if a character is present in multiple classes (which is not recommended), and some of them are to be ignored when generating, while others are not, the specific character may still be used for the generation.

  - #### characterClass

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specification of the character class for these limitations.