<binding>
	<format type="java.lang.String[]" serializer="org.exoplatform.portal.config.serialize.JibxArraySerialize.serializeStringArray" deserializer="org.exoplatform.portal.config.serialize.JibxArraySerialize.deserializeStringArray"/>
	<mapping name="portal-config" class="org.exoplatform.platform.migration.plf.object.PortalConfig" ordered="false">
		<value name="portal-name" field="name"/>
		<value name="locale" field="locale"/>
		<value name="access-permissions" field="accessPermissions" usage="optional"/>
		<value name="edit-permission" field="editPermission" usage="optional"/>
		<value name="skin" field="skin" usage="optional"/>
		<structure field="properties" usage="optional"/>
		<structure name="portal-layout" using="container" field="portalLayout" usage="optional"/>
	</mapping>
	<mapping name="page-set" class="org.exoplatform.platform.migration.plf.object.Page$PageSet">
		<collection field="pages" item-type="org.exoplatform.platform.migration.plf.object.Page"/>
	</mapping>
	<mapping name="page" class="org.exoplatform.platform.migration.plf.object.Page">
		<value name="name" field="name"/>
		<value name="title" field="title" usage="optional"/>
		<value name="factory-id" field="factoryId" usage="optional"/>
		<value name="access-permissions" field="accessPermissions" usage="optional"/>
		<value name="edit-permission" field="editPermission" usage="optional"/>
		<value name="show-max-window" field="showMaxWindow" usage="optional"/>
		<collection field="children" ordered="false" usage="optional">
			<structure map-as="org.exoplatform.platform.migration.plf.object.Container" usage="optional"/>
			<structure map-as="org.exoplatform.platform.migration.plf.object.Application" usage="optional"/>
		</collection>
	</mapping>
	<mapping name="container" label="container" class="org.exoplatform.platform.migration.plf.object.Container">
		<value name="id" usage="optional" field="id" style="attribute"/>
		<value name="name" usage="optional" field="name"/>
		<value name="title" field="title" usage="optional"/>
		<value name="icon" field="icon" usage="optional"/>
		<value name="template" field="template" usage="optional" style="attribute"/>
		<value name="access-permissions" field="accessPermissions" usage="optional"/>
		<value name="factory-id" field="factoryId" usage="optional"/>
		<value name="decorator" field="decorator" usage="optional" style="attribute"/>
		<value name="description" field="description" usage="optional"/>
		<value name="width" usage="optional" field="width" style="attribute"/>
		<value name="height" usage="optional" field="height" style="attribute"/>
		<collection field="children" ordered="false" usage="optional">
			<structure map-as="org.exoplatform.platform.migration.plf.object.Container" usage="optional"/>
			<structure map-as="org.exoplatform.platform.migration.plf.object.Application" usage="optional"/>
			<structure map-as="org.exoplatform.portal.config.model.PageBody" usage="optional"/>
		</collection>
	</mapping>
	<mapping name="portlet-application" class="org.exoplatform.platform.migration.plf.object.Application">
		<structure field="portlet" usage="optional"/>
		<value name="theme" usage="optional" field="theme"/>
		<value name="title" field="title" usage="optional"/>
		<value name="access-permissions" usage="optional" field="accessPermissions"/>
		<value name="show-info-bar" field="showInfoBar" usage="optional"/>
		<value name="show-application-state" field="showApplicationState" usage="optional"/>
		<value name="show-application-mode" field="showApplicationMode" usage="optional"/>
		<value name="description" field="description" usage="optional"/>
		<value name="icon" field="icon" usage="optional"/>
		<value name="width" usage="optional" field="width"/>
		<value name="height" usage="optional" field="height"/>
		<structure field="properties" usage="optional"/>
	</mapping>
	<mapping name="portlet" class="org.exoplatform.platform.migration.plf.object.Portlet">
		<value name="application-ref" usage="optional" field="applicationName"/>
		<value name="portlet-ref" field="portletName" usage="optional"/>
		<structure field="preferences" usage="optional"/>
	</mapping>
	<mapping class="org.exoplatform.platform.migration.plf.object.PortletPreferences" name="preferences">
		<collection field="preferences" item-type="org.exoplatform.platform.migration.plf.object.Preference"/>
	</mapping>
	<mapping class="org.exoplatform.platform.migration.plf.object.Preference" name="preference" label="preference">
		<value name="name" field="name"/>
		<collection field="values" item-type="java.lang.String" factory="org.jibx.runtime.Utility.arrayListFactory">
			<value name="value" style="element"/>
		</collection>
		<value name="read-only" field="readOnly" usage="optional"/>
	</mapping>
	<mapping class="org.exoplatform.portal.config.model.Properties" name="properties" marshaller="org.exoplatform.portal.config.serialize.JibxPropertiesMapper" unmarshaller="org.exoplatform.portal.config.serialize.JibxPropertiesMapper"/>
	<mapping name="page-body" class="org.exoplatform.portal.config.model.PageBody">
	</mapping>
</binding>