<?xml version="1.0"?>
<mapping>
  <class name="org.apache.jetspeed.om.page.psml.PageImpl">
    <map-to xml="page"/>

    <field name="id" type="java.lang.String">
      <bind-xml name="id" node="attribute"/>
    </field>

    <field name="hidden" type="boolean">
      <bind-xml name="hidden" node="attribute"/>
    </field>

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
      <bind-xml name="security-constraints"/>
    </field>

    <field name="title" type="java.lang.String">
      <bind-xml name="title"/>
    </field>
    
    <field name="shortTitle" type="java.lang.String">
      <bind-xml name="short-title"/>
    </field>
    
    <field name="defaults"
           type="org.apache.jetspeed.om.page.psml.Defaults">
      <bind-xml name="defaults"/>
    </field>

    <field name="rootFragment"
           type="org.apache.jetspeed.om.page.psml.FragmentImpl">
      <bind-xml name="fragment"/>
    </field>

	<field name="metadataFields"
           type="org.apache.jetspeed.om.page.psml.PageLocalizedFieldImpl" 
           collection="collection">
      <bind-xml name="metadata"/>
    </field>
  </class>
  
  <class name="org.apache.jetspeed.om.page.psml.PageLocalizedFieldImpl">
    <map-to xml="metadata"/>

	<field name="name" type="java.lang.String">
      <bind-xml name="name" node="attribute"/>
    </field>

    <field name="locale" type="java.lang.String" set-method="setLanguage">
      <bind-xml name="xml:lang" node="attribute"/>
    </field>

    <field name="value" type="java.lang.String">
      <bind-xml node="text"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.FragmentImpl">
    <map-to xml="fragment"/>

    <field name="id" type="java.lang.String">
      <bind-xml name="id" node="attribute"/>
    </field>

    <field name="type" type="java.lang.String">
      <bind-xml name="type" node="attribute"/>
    </field>

    <field name="name" type="java.lang.String">
      <bind-xml name="name" node="attribute"/>
    </field>

    <field name="skin" type="java.lang.String">
      <bind-xml name="skin" node="attribute"/>
    </field>

    <field name="state" type="java.lang.String">
      <bind-xml name="state" node="attribute"/>
    </field>

    <field name="decorator" type="java.lang.String">
      <bind-xml name="decorator" node="attribute"/>
    </field>

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
      <bind-xml name="security-constraints"/>
    </field>

    <field name="title" type="java.lang.String">
      <bind-xml name="title"/>
    </field>
    
    <field name="shortTitle" type="java.lang.String">
      <bind-xml name="short-title"/>
    </field>

    <field name="fragments"
           type="org.apache.jetspeed.om.page.psml.FragmentImpl" 
           collection="vector">
      <bind-xml name="fragment"/>
    </field>

    <field name="properties"
           type="org.apache.jetspeed.om.page.psml.PropertyImpl" collection="vector">
      <bind-xml name="property"/>
    </field>
  </class>
  
  
  <class name="org.apache.jetspeed.om.page.psml.LinkImpl">
    <map-to xml="link"/>

    <field name="target" type="java.lang.String">
      <bind-xml name="target" node="attribute"/>
    </field>
    
     <field name="hidden" type="boolean">
      <bind-xml name="hidden" node="attribute"/>
    </field>

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
      <bind-xml name="security-constraints"/>
    </field>
    
    <field name="url" type="java.lang.String">
      <bind-xml name="url" />
    </field>

    <field name="title" type="java.lang.String">
      <bind-xml name="title"/>
    </field>
    
    <field name="shortTitle" type="java.lang.String">
      <bind-xml name="short-title"/>
    </field>
    
 	<field name="metadataFields"
           type="org.apache.jetspeed.om.page.psml.PageLocalizedFieldImpl" 
           collection="collection">
      <bind-xml name="metadata"/>
    </field>
  </class>
  
  <class name="org.apache.jetspeed.om.folder.impl.DocumentSetImpl">
    <map-to xml="document-set"/>

    <field name="hidden" type="boolean">
      <bind-xml name="hidden" node="attribute"/>
    </field>

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
      <bind-xml name="security-constraints"/>
    </field>
    
    <field name="profileLocatorName" type="java.lang.String">
      <bind-xml name="profile-locator" />
    </field>

	<field name="documentPaths"
           type="org.apache.jetspeed.om.folder.impl.DocumentSetPathImpl"
           collection="collection">
      <bind-xml name="document-path"/>
    </field>

    <field name="title" type="java.lang.String">
      <bind-xml name="title"/>
    </field>
    
    <field name="shortTitle" type="java.lang.String">
      <bind-xml name="short-title"/>
    </field>
    
 	<field name="metadataFields"
           type="org.apache.jetspeed.om.page.psml.PageLocalizedFieldImpl" 
           collection="collection">
      <bind-xml name="metadata"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.folder.impl.DocumentSetPathImpl">
    <map-to xml="document-path"/>

    <field name="regexp" type="boolean">
      <bind-xml name="regexp" node="attribute"/>
    </field>

    <field name="path" type="java.lang.String">
      <bind-xml node="text"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.folder.impl.FolderMetaDataImpl">
    <map-to xml="folder"/>

    <field name="hidden" type="boolean">
      <bind-xml name="hidden" node="attribute"/>
    </field>    

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
      <bind-xml name="security-constraints"/>
    </field>
    
    <field name="title" type="java.lang.String">
      <bind-xml name="title"/>
    </field>
    
    <field name="shortTitle" type="java.lang.String">
      <bind-xml name="short-title"/>
    </field>
    
    <field name="defaultPage" type="java.lang.String">
      <bind-xml name="default-page"/>
    </field>

    <field name="documentOrder"
           type="java.lang.String" 
           collection="vector">
      <bind-xml name="document-order"/>
    </field>    

	<field name="metadataFields"
           type="org.apache.jetspeed.om.page.psml.PageLocalizedFieldImpl" 
           collection="collection">
      <bind-xml name="metadata"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.Defaults">
    <map-to xml="defaults"/>

    <field name="skin" type="java.lang.String">
      <bind-xml name="skin" node="attribute"/>
    </field>

    <field name="layoutDecorator" type="java.lang.String">
      <bind-xml name="layout-decorator" node="attribute"/>
    </field>
    
    <field name="portletDecorator" type="java.lang.String">
      <bind-xml name="portlet-decorator" node="attribute"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.PropertyImpl">
    <map-to xml="property"/>

    <field name="name" type="java.lang.String">
      <bind-xml name="name" node="attribute"/>
    </field>

    <field name="value" type="java.lang.String">
      <bind-xml name="value" node="attribute"/>
    </field>

    <field name="layout" type="java.lang.String">
      <bind-xml name="layout" node="attribute"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
    <map-to xml="security-constraints"/>

	<field name="owner" type="java.lang.String">
      <bind-xml name="owner"/>
    </field>

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintImpl"
           collection="collection">
      <bind-xml name="security-constraint"/>
    </field>

    <field name="securityConstraintsRefs"
           type="java.lang.String"
           collection="collection">
      <bind-xml name="security-constraints-ref"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.SecurityConstraintImpl">
    <map-to xml="security-constraint"/>

	<field name="users" type="java.lang.String">
      <bind-xml name="users"/>
    </field>

	<field name="roles" type="java.lang.String">
      <bind-xml name="roles"/>
    </field>

	<field name="groups" type="java.lang.String">
      <bind-xml name="groups"/>
    </field>

    <field name="permissions" type="java.lang.String">
      <bind-xml name="permissions"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.PageSecurityImpl">
    <map-to xml="page-security"/>

    <field name="securityConstraintsDefs"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintsDefImpl"
           collection="collection">
      <bind-xml name="security-constraints-def"/>
    </field>

    <field name="globalSecurityConstraintsRefs"
           type="java.lang.String"
           collection="collection">
      <bind-xml name="global-security-constraints-ref"/>
    </field>
  </class>

  <class name="org.apache.jetspeed.om.page.psml.SecurityConstraintsDefImpl">
    <map-to xml="security-constraints-def"/>

	<field name="name" type="java.lang.String">
      <bind-xml name="name" node="attribute"/>
    </field>

    <field name="securityConstraints"
           type="org.apache.jetspeed.om.page.psml.SecurityConstraintImpl"
           collection="collection">
      <bind-xml name="security-constraint"/>
    </field>
  </class>

</mapping>
