<model>
    <mount>/system/user+</mount>
    <version>1.0.0</version>
    <items>
        <user type="ArrayField">
            <uid type=".\UidField"/>
            <name type=".\UsernameField">
                <Required>Y</Required>
                <Constraints>
                    <check001>
                        <type>UniqueConstraint</type>
                        <ValidationMessage>This username already exist.</ValidationMessage>
                    </check001>
                </Constraints>
            </name>
            <disabled type="BooleanField">
                <Default>0</Default>
                <Required>Y</Required>
            </disabled>
            <scope type="TextField">
                <Default>user</Default>
                <Required>Y</Required>
            </scope>
            <expires type=".\ExpiresField"/>
            <authorizedkeys type=".\StoreB64Field"/>
            <otp_seed type="TextField"/>
            <shell type="JsonKeyValueStoreField">
                <ConfigdPopulateAct>system list shells</ConfigdPopulateAct>
                <BlankDesc>Default (none for all but root)</BlankDesc>
            </shell>
            <password type="UpdateOnlyTextField"/>
            <scrambled_password type="BooleanField"  volatile="true"/>
            <!-- password policy constraints store last pwd change timestamp -->
            <pwd_changed_at type="TextField"/>
            <landing_page type="TextField"/>
            <comment type="TextField"/>
            <email type="TextField"/>
            <apikeys type=".\ApiKeyField"/>
            <priv type=".\PrivField">
                <Multiple>Y</Multiple>
            </priv>
            <language type="JsonKeyValueStoreField">
                <ConfigdPopulateAct>system list locales</ConfigdPopulateAct>
                <BlankDesc>Default</BlankDesc>
            </language>
            <group_memberships type=".\GroupMembershipField" volatile="true">
                <Multiple>Y</Multiple>
            </group_memberships>
            <descr type="DescriptionField"/>
            <dashboard type="TextField"/>
        </user>
    </items>
</model>
