<?xml version="1.0" encoding="UTF-8"?>
<mapping xmlns="http://castor.exolab.org/" xmlns:cst="http://castor.exolab.org/">
    <description>Castor generated mapping file</description>
<!--
    <class cst:name="org.gridlab.gridsphere.portletcontainer.impl.descriptor2.PortletTypeChoiceSequence">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.impl.descriptor2.PortletTypeChoiceSequence</description>
        <map-to cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="resourceBundle"
            cst:type="org.gridlab.gridsphere.portletcontainer.impl.descriptor2.ResourceBundle" cst:required="true">
            <bind-xml name="resource-bundle" node="element"/>
        </field>
        <field cst:name="portletInfo" cst:type="org.gridlab.gridsphere.portletcontainer.impl.descriptor2.PortletInfo">
            <bind-xml name="portlet-info" node="element"/>
        </field>
    </class>
-->
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletDefinition">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Portlet</description>
        <map-to cst:xml="portlet" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="portletName"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletName" cst:required="true">
            <bind-xml name="portlet-name" node="element"/>
        </field>
        <field cst:name="displayName"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.DisplayName" cst:collection="array">
            <bind-xml name="display-name" node="element"/>
        </field>
        <field cst:name="portletClass" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletClass" cst:required="true">
            <bind-xml name="portlet-class" node="element"/>
        </field>
        <field cst:name="initParam"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.InitParam" cst:collection="array">
            <bind-xml name="init-param" node="element"/>
        </field>
        <field cst:name="expirationCache" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ExpirationCache">
            <bind-xml name="expiration-cache" node="element"/>
        </field>
        <field cst:name="supports"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Supports"
            cst:required="true" cst:collection="array">
            <bind-xml name="supports" node="element"/>
        </field>
        <field cst:name="supportedLocale"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SupportedLocale" cst:collection="array">
            <bind-xml name="supported-locale" node="element"/>
        </field>
<!--
        <field cst:name="portletTypeChoice"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletTypeChoice" cst:required="true">
            <bind-xml name="-error-if-this-is-used-" node="element"/>
        </field>
-->
        <field cst:name="resourceBundle"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ResourceBundle">
            <bind-xml name="resource-bundle" node="element"/>
        </field>
        <field cst:name="portletInfo" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletInfo">
            <bind-xml name="portlet-info" node="element"/>
        </field>
        <field cst:name="portletPreferences" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletPreferences">
            <bind-xml name="portlet-preferences" node="element"/>
        </field>
        <field cst:name="securityRoleRef"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SecurityRoleRef" cst:collection="array">
            <bind-xml name="security-role-ref" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SecurityConstraint">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SecurityConstraint</description>
        <map-to cst:xml="security-constraint" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="displayName"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.DisplayName" cst:collection="array">
            <bind-xml name="display-name" node="element"/>
        </field>
        <field cst:name="portletCollection"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletCollection" cst:required="true">
            <bind-xml name="portlet-collection" node="element"/>
        </field>
        <field cst:name="userDataConstraint"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.UserDataConstraint" cst:required="true">
            <bind-xml name="user-data-constraint" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description</description>
        <map-to cst:xml="description" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="lang" cst:type="java.lang.String">
            <bind-xml name="xml:lang" node="attribute"/>
        </field>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Keywords">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Keywords</description>
        <map-to cst:xml="keywords" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.types.TransportGuaranteeType">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.types.TransportGuaranteeType</description>
        <map-to cst:xml="transport-guarantee" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SupportedLocale">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SupportedLocale</description>
        <map-to cst:xml="supported-locale" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Supports">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Supports</description>
        <map-to cst:xml="supports" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="mimeType"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.MimeType" cst:required="true">
            <bind-xml name="mime-type" node="element"/>
        </field>
        <field cst:name="portletMode"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletMode" cst:collection="array">
            <bind-xml name="portlet-mode" node="element"/>
        </field>
        <field cst:name="windowState"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.WindowState" cst:collection="array">
            <bind-xml name="window-state" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ResourceBundle">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ResourceBundle</description>
        <map-to cst:xml="resource-bundle" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.UserAttribute">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.UserAttribute</description>
        <map-to cst:xml="user-attribute" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="name"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Name" cst:required="true">
            <bind-xml name="name" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Value">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Value</description>
        <map-to cst:xml="value" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.CustomPortletMode">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.CustomPortletMode</description>
        <map-to cst:xml="custom-portlet-mode" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="portletMode"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletMode" cst:required="true">
            <bind-xml name="portlet-mode" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.RoleLink">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.RoleLink</description>
        <map-to cst:xml="role-link" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.RoleName">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.RoleName</description>
        <map-to cst:xml="role-name" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.DisplayName">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.DisplayName</description>
        <map-to cst:xml="display-name" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="lang" cst:type="java.lang.String">
            <bind-xml name="xml:lang" node="attribute"/>
        </field>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.MimeType">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.MimeType</description>
        <map-to cst:xml="mime-type" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ExpirationCache">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ExpirationCache</description>
        <map-to cst:xml="expiration-cache" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="int">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletMode">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletMode</description>
        <map-to cst:xml="portlet-mode" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ShortTitle">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ShortTitle</description>
        <map-to cst:xml="short-title" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.CustomWindowState">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.CustomWindowState</description>
        <map-to cst:xml="custom-window-state" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="windowState"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.WindowState" cst:required="true">
            <bind-xml name="window-state" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Name">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Name</description>
        <map-to cst:xml="name" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.UserDataConstraint">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.UserDataConstraint</description>
        <map-to cst:xml="user-data-constraint" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="transportGuarantee"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.types.TransportGuaranteeType" cst:required="true">
            <bind-xml name="transport-guarantee" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletCollection">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletCollection</description>
        <map-to cst:xml="portlet-collection" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="portletName"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletName"
            cst:required="true" cst:collection="array">
            <bind-xml name="portlet-name" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Title">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Title</description>
        <map-to cst:xml="title" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.WindowState">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.WindowState</description>
        <map-to cst:xml="window-state" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.types.ReadOnlyType">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.types.ReadOnlyType</description>
        <map-to cst:xml="read-only" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletClass">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletClass</description>
        <map-to cst:xml="portlet-class" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletName">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletName</description>
        <map-to cst:xml="portlet-name" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
<!--
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletTypeChoice">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletTypeChoice</description>
        <map-to cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="portletTypeChoiceSequence"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletTypeChoiceSequence" cst:required="true">
            <bind-xml name="-error-if-this-is-used-" node="element"/>
        </field>
        <field cst:name="portletInfo"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletInfo" cst:required="true">
            <bind-xml name="portlet-info" node="element"/>
        </field>
    </class>
-->
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SecurityRoleRef">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SecurityRoleRef</description>
        <map-to cst:xml="security-role-ref" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="roleName" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.RoleName" cst:required="true">
            <bind-xml name="role-name" node="element"/>
        </field>
        <field cst:name="roleLink" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.RoleLink">
            <bind-xml name="role-link" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PreferencesValidator">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PreferencesValidator</description>
        <map-to cst:xml="preferences-validator" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="content" cst:type="java.lang.String">
            <bind-xml name="PCDATA" node="text"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Preference">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Preference</description>
        <map-to cst:xml="preference" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="name"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Name" cst:required="true">
            <bind-xml name="name" node="element"/>
        </field>
        <field cst:name="value"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Value" cst:collection="array">
            <bind-xml name="value" node="element"/>
        </field>
        <field cst:name="readOnly" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.types.ReadOnlyType">
            <bind-xml name="read-only" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletPreferences">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletPreferences</description>
        <map-to cst:xml="portlet-preferences" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="preference"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Preference" cst:collection="array">
            <bind-xml name="preference" node="element"/>
        </field>
        <field cst:name="preferencesValidator" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PreferencesValidator">
            <bind-xml name="preferences-validator" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletApp">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletApp</description>
        <map-to cst:xml="portlet-app" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="version" cst:type="java.lang.String" cst:required="true">
            <bind-xml name="version" node="attribute"/>
        </field>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="portlet"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletDefinition"
            cst:required="true" cst:collection="array">
            <bind-xml name="portlet" node="element"/>
        </field>
        <field cst:name="customPortletMode"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.CustomPortletMode" cst:collection="array">
            <bind-xml name="custom-portlet-mode" node="element"/>
        </field>
        <field cst:name="customWindowState"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.CustomWindowState" cst:collection="array">
            <bind-xml name="custom-window-state" node="element"/>
        </field>
        <field cst:name="userAttribute"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.UserAttribute" cst:collection="array">
            <bind-xml name="user-attribute" node="element"/>
        </field>
        <field cst:name="securityConstraint"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.SecurityConstraint" cst:collection="array">
            <bind-xml name="security-constraint" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.InitParam">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.InitParam</description>
        <map-to cst:xml="init-param" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="description"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Description" cst:collection="array">
            <bind-xml name="description" node="element"/>
        </field>
        <field cst:name="name"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Name" cst:required="true">
            <bind-xml name="name" node="element"/>
        </field>
        <field cst:name="value"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Value" cst:required="true">
            <bind-xml name="value" node="element"/>
        </field>
    </class>
    <class cst:name="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletInfo">
        <description>Default mapping for class org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.PortletInfo</description>
        <map-to cst:xml="portlet-info" cst:ns-uri="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"/>
        <field cst:name="id" cst:type="java.lang.String">
            <bind-xml name="id" node="attribute"/>
        </field>
        <field cst:name="title"
            cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Title" cst:required="true">
            <bind-xml name="title" node="element"/>
        </field>
        <field cst:name="shortTitle" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.ShortTitle">
            <bind-xml name="short-title" node="element"/>
        </field>
        <field cst:name="keywords" cst:type="org.gridlab.gridsphere.portletcontainer.jsrimpl.descriptor.Keywords">
            <bind-xml name="keywords" node="element"/>
        </field>
    </class>
</mapping>
