<nodeTypes
   xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
   xmlns:mix="http://www.jcp.org/jcr/mix/1.0"
   xmlns:jcr="http://www.jcp.org/jcr/1.0"
   xmlns:exo="http://www.exoplatform.com/jcr/exo/1.0">

  <!-- Duplicating this definition in case the ECM node type definitions
       have not been processed by the Repository Service yet. -->
  <!-- DO NOT REMOVE THIS DEFINITION -->
  <nodeType name="exo:presentationable" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <propertyDefinitions>
      <propertyDefinition name="exo:presentationType" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>
  <!-- DO NOT REMOVE THIS DEFINITION -->

  <nodeType name="exo:portalFolder" isMixin="false" hasOrderableChildNodes="true" primaryItemName="">
    <supertypes>
      <supertype>nt:unstructured</supertype>
    </supertypes>
  </nodeType>

  <nodeType name="exo:webFolder" isMixin="false" hasOrderableChildNodes="true" primaryItemName="">
    <supertypes>
      <supertype>nt:unstructured</supertype>
    </supertypes>
  </nodeType>

  <nodeType name="exo:themeFolder" isMixin="false" hasOrderableChildNodes="true" primaryItemName="">
    <supertypes>
      <supertype>nt:unstructured</supertype>
    </supertypes>
  </nodeType>

  <nodeType name="exo:linkFolder" isMixin="false" hasOrderableChildNodes="true" primaryItemName="">
    <supertypes>
      <supertype>nt:unstructured</supertype>
    </supertypes>
  </nodeType>

  <nodeType name="exo:multimediaFolder" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>nt:unstructured</supertype>
    </supertypes>
    <childNodeDefinitions>
      <childNodeDefinition name="images" defaultPrimaryType="nt:folder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
      <childNodeDefinition name="videos" defaultPrimaryType="nt:folder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
      <childNodeDefinition name="audio" defaultPrimaryType="nt:folder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
    </childNodeDefinitions>
  </nodeType>

  <nodeType name="exo:jsFolder" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>nt:folder</supertype>
    </supertypes>
  </nodeType>

  <nodeType name="exo:cssFolder" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>nt:folder</supertype>
    </supertypes>
    <childNodeDefinitions>
      <childNodeDefinition name="*" defaultPrimaryType="nt:folder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
      <childNodeDefinition name="css" defaultPrimaryType="exo:cssFolder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
    </childNodeDefinitions>
  </nodeType>

  <nodeType name="exo:webContent" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>mix:referenceable</supertype>
      <supertype>nt:unstructured</supertype>
      <supertype>nt:hierarchyNode</supertype>
      <supertype>exo:rss-enable</supertype>
    </supertypes>
    <childNodeDefinitions>
      <childNodeDefinition name="js" defaultPrimaryType="exo:jsFolder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
      <childNodeDefinition name="css" defaultPrimaryType="exo:cssFolder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
      <childNodeDefinition name="medias" defaultPrimaryType="exo:multimediaFolder" autoCreated="false" mandatory="false" onParentVersion="VERSION" protected="false" sameNameSiblings="false">
        <requiredPrimaryTypes>
          <requiredPrimaryType>nt:base</requiredPrimaryType>
        </requiredPrimaryTypes>
      </childNodeDefinition>
    </childNodeDefinitions>
  </nodeType>

  <nodeType name="exo:htmlFile" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>exo:presentationable</supertype>
      <supertype>mix:referenceable</supertype>
    </supertypes>
    <propertyDefinitions>
      <propertyDefinition name="exo:htmlTOC" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>

  <nodeType name="exo:jsFile" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>exo:presentationable</supertype>
      <supertype>mix:referenceable</supertype>
    </supertypes>
    <propertyDefinitions>
      <propertyDefinition name="exo:active" requiredType="Boolean" autoCreated="true" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
        <defaultValues>
          <defaultValue>true</defaultValue>
        </defaultValues>
      </propertyDefinition>
      <propertyDefinition name="exo:priority" requiredType="Long" autoCreated="true" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
        <defaultValues>
          <defaultValue>0</defaultValue>
        </defaultValues>
      </propertyDefinition>
      <propertyDefinition name="exo:sharedJS" requiredType="Boolean" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>

  <nodeType name="exo:cssFile" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>exo:presentationable</supertype>
      <supertype>mix:referenceable</supertype>
    </supertypes>
    <propertyDefinitions>
      <propertyDefinition name="exo:active" requiredType="Boolean" autoCreated="true" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
        <defaultValues>
          <defaultValue>true</defaultValue>
        </defaultValues>
      </propertyDefinition>
      <propertyDefinition name="exo:priority" requiredType="Long" autoCreated="true" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
        <defaultValues>
          <defaultValue>0</defaultValue>
        </defaultValues>
      </propertyDefinition>
      <propertyDefinition name="exo:sharedCSS" requiredType="Boolean" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>

  <nodeType name="exo:multimediaFile" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>exo:presentationable</supertype>
    </supertypes>
  </nodeType>

  <nodeType name="exo:linkable" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <propertyDefinitions>
      <propertyDefinition name="exo:links" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>

  <nodeType name="exo:link" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>mix:referenceable</supertype>
      <supertype>nt:unstructured</supertype>
    </supertypes>
    <propertyDefinitions>
      <propertyDefinition name="exo:linkURL" requiredType="String" autoCreated="false" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:linkDescription" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:linkActive" requiredType="Boolean" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>

  <nodeType name="exo:webLinks" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <propertyDefinitions>
      <propertyDefinition name="exo:externalSiteLinks" requiredType="Reference" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:portalPageLinks" requiredType="Reference" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:insideDocumentLinks" requiredType="Reference" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:multimediaLinks" requiredType="Reference" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>

  <nodeType name="exo:multiPageContent" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <supertypes>
      <supertype>exo:presentationable</supertype>
    </supertypes>
    <propertyDefinitions>
      <propertyDefinition name="exo:presentationType" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
        <defaultValues>
          <defaultValue>exo:multiPageContent</defaultValue>
        </defaultValues>
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>
  
  <nodeType name="exo:sortable" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
    <propertyDefinitions>
      <propertyDefinition name="exo:index" requiredType="Long" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints/>       
        <defaultValues>
          <defaultValue>1000</defaultValue>
        </defaultValues>
      </propertyDefinition>
      <propertyDefinition name="exo:title" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints/>       
      </propertyDefinition>
      <propertyDefinition name="exo:titlePublished" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints/>       
      </propertyDefinition>
      <propertyDefinition name="exo:name" requiredType="String" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints/>       
      </propertyDefinition>
      <propertyDefinition name="publication:liveDate" requiredType="Date" autoCreated="true" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints/>       
      </propertyDefinition>      
    </propertyDefinitions>
  </nodeType>
  
  <nodeType name="exo:pageMetadata" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
  	<supertypes>
      <supertype>nt:base</supertype>
    </supertypes>
    <propertyDefinitions>     
      <propertyDefinition name="exo:metaKeywords" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:metaDescription" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:metaUri" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>     
      <propertyDefinition name="exo:metaRobots" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:metaSitemap" requiredType="Boolean" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:metaPriority" requiredType="Long" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
      <propertyDefinition name="exo:metaFrequency" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>      
      <propertyDefinition name="exo:metaFully" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
        <valueConstraints />
      </propertyDefinition>
    </propertyDefinitions>
  </nodeType>
 
</nodeTypes>
