blob: 043a6480c3392a8e1aa2d9b49c2a9fd66f0d250c [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://schemas.niku.com/2002/pageView" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.niku.com/2002/pageView" xmlns:view="http://schemas.niku.com/2002/view">
<xsd:import namespace="http://schemas.niku.com/2002/view" schemaLocation="view-2002-02.xsd"/>
<!--Import the view schema.-->
<xsd:element name="page">
<xsd:annotation>
<xsd:documentation xml:lang="en">Root element for the pageView XML file. Page View XML is a result of merging view XML for all the web fragments with some of the view specific information from WMD XML for the page. Pave View XML is generate by the XMLPageBuilder and is used by the XSLT page layout templates for client-side or server-side XML transformations of fragmnet View XML and content aggregation.</xsd:documentation>
</xsd:annotation>
<xsd:complexType name="PageView">
<xsd:sequence>
<xsd:element name="import" type="ImportType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="portlet" type="PortletType" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">Unique web page id used for linking a web page to a help topic.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="space" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">Identifies the space/module to which the content of this web page belongs. When this attribute is specified and the header that this page uses contains an action element with actionId=space, the corresponding space should be highlighted when this page is displayed. </xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="template" type="xsd:string" use="optional" default="default.xsl">
<xsd:annotation>
<xsd:documentation xml:lang="en">Specifies the location of the XSLT page layout template that defines content layout and performs fragment content transformation and agregation. </xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="skin" type="xsd:string" default="default">
<xsd:annotation>
<xsd:documentation xml:lang="en">Defines the relative location of the UI skin directory.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="sessionId" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">User sessionId used to generate links for applet-based applications, or web clients that don't support cookies. In the later case, session id can be appended to all the links as an extra HTTP parameter (jsession).</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="appPath" type="xsd:string" default="app">
<xsd:annotation>
<xsd:documentation xml:lang="en">Defines default application path or the mapping of the main application servlet.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="PortletType">
<xsd:annotation>
<xsd:documentation xml:lang="en">Defines a single fragment for a page with view specific information form WMD XML and embedded view XML that describes the fragment content. </xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element ref="view:view"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">Unique fragment id for the whole application.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="type" default="body">
<xsd:annotation>
<xsd:documentation xml:lang="en">Specifies the fragment type for standard fragments such as header, footer and leftNav. This information is used by the XSLT page layout template to apply appropriate transformation to each web fragment's view XML InfoSet.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="header"/>
<xsd:enumeration value="footer"/>
<xsd:enumeration value="toc"/>
<xsd:enumeration value="body"/>
<xsd:enumeration value="pageContext"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="col" default="1">
<xsd:annotation>
<xsd:documentation xml:lang="en">Defines column index for assigning location of the fragment in the web page grid layout. Fragments are layed out on the page in at most 3 columns, where each column represents a separate stack or a bucket. If no row is assigned, fragments are layed out in the order they are listed in web metadata and according to their column assignments. Note that all fragments are listed in ascending order of their column assignments. Column indexes start with 0, with 1 being the default wide center column. XSLT page layout template is responsible for spanning the content of web fragments if the number of web fragment columns is less than 3.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:enumeration value="0"/>
<xsd:enumeration value="1"/>
<xsd:enumeration value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="row" type="xsd:integer" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">Defines row index for assigning location of the fragment in the web page grid layout. Fragments are layed out on the page in at most 3 columns, where each column represents a separate stack or bucket. If no row is assigned, fragments are layed out in the order they are listed in web metadata and according to their column assignments. Note that all fragments are always listed in ascending order of their column assignments. Column indexes start with 0, with 1 being the default wide center column. XSLT layout manager template is responsible for spanning the content of web fragments if the number of web fragment columns is less than 3.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="narrow" type="xsd:boolean" default="false">
<xsd:annotation>
<xsd:documentation xml:lang="en">Denotes wheter or not the fragment can be placed in the narrow (left or right) column of the Web page grid layout.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="span" type="xsd:boolean" default="false">
<xsd:annotation>
<xsd:documentation xml:lang="en">Denotes whether or not the content of the first web fragment for the web page should span across the whole page horizontally, ignoring multiple column grid layout for the page.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="ImportType">
<xsd:annotation>
<xsd:documentation xml:lang="en">Defines a web resource to include during content aggregation. Specifically, include is used for including references to such web resources as JavaScript and CSS files into the XHTML header of the final page.</xsd:documentation>
</xsd:annotation>
<xsd:attribute name="href" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">Specifies the location of the web resource relative to the UI skin directory.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="type" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">Identifies web resource type: js - JavaScript, css - CSS file.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="js"/>
<xsd:enumeration value="css"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:schema>