| <?xml version="1.0" encoding="UTF-8"?> |
| <xs:schema targetNamespace="http://schemas.niku.com/2002/data" xmlns="http://schemas.niku.com/2002/data" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> |
| <xs:element name="data"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element name="header" type="headerType"/> |
| <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| <xs:complexType name="headerType"> |
| <xs:sequence> |
| <xs:element name="security" type="securityType" minOccurs="0"/> |
| <xs:element name="userSession" type="userSessionType" minOccurs="0"/> |
| <xs:element name="sortInfo" type="sortInfoType" minOccurs="0"/> |
| <xs:element name="pagination" type="paginationType" minOccurs="0"/> |
| <xs:element name="messages" type="messagesType" minOccurs="0"/> |
| <xs:element name="action" minOccurs="0"> |
| <xs:complexType> |
| <xs:attribute name="id" type="xs:string" use="required"/> |
| <xs:attribute name="pageId" type="xs:string" use="required"/> |
| <xs:attribute name="url" type="xs:string" use="required"/> |
| </xs:complexType> |
| </xs:element> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:complexType name="securityType"> |
| <xs:sequence> |
| <xs:element name="authorization" type="authorizationType" maxOccurs="unbounded"/> |
| </xs:sequence> |
| <xs:attribute name="sessionId" type="xs:string" use="required"/> |
| </xs:complexType> |
| <xs:complexType name="userSessionType"> |
| <xs:annotation> |
| <xs:documentation> |
| Contains information of the user who is currently logged in. Info comes from |
| the SecurityIdentifier. |
| formattingLocale - The locale that is used for date formatting or sorting for the user. |
| languageLocale - The locale that is used for language (i.e. resource bundles) of the user. |
| timezone - The timezone of the user. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:attribute name="formattingLocale" type="xs:string" use="optional"/> |
| <xs:attribute name="languageLocale" type="xs:string" use="optional"/> |
| <xs:attribute name="timezone" type="xs:string" use="optional"/> |
| </xs:complexType> |
| <xs:complexType name="authorizationType"> |
| <xs:attribute name="id" type="xs:string" use="required"/> |
| <xs:attribute name="value" type="xs:boolean" use="required"/> |
| </xs:complexType> |
| <xs:complexType name="sortInfoType"> |
| <xs:attribute name="sortColumn" type="xs:string" use="required"/> |
| <xs:attribute name="sortDirection" type="SortDirectionType" default="asc"/> |
| </xs:complexType> |
| <xs:simpleType name="SortDirectionType"> |
| <xs:restriction base="xs:string"> |
| <xs:enumeration value="asc"/> |
| <xs:enumeration value="desc"/> |
| </xs:restriction> |
| </xs:simpleType> |
| <xs:complexType name="paginationType"> |
| <xs:sequence> |
| <xs:element name="sliceInfo" type="sliceInfoType" maxOccurs="unbounded"/> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:complexType name="sliceInfoType"> |
| <xs:attribute name="collection" type="xs:string" use="required"/> |
| <xs:attribute name="totalNumRows" type="xs:short" use="required"/> |
| <xs:attribute name="slice" type="xs:byte" use="required"/> |
| <xs:attribute name="sliceSize" type="xs:byte" use="required"/> |
| </xs:complexType> |
| <xs:complexType name="messagesType"> |
| <xs:sequence> |
| <xs:element name="message" type="messageType" maxOccurs="unbounded"/> |
| </xs:sequence> |
| </xs:complexType> |
| <xs:complexType name="messageType"> |
| <xs:attribute name="id" type="xs:string" use="required"> |
| <xs:annotation> |
| <xs:documentation>Resource bundle Id</xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="type" use="required"> |
| <xs:simpleType> |
| <xs:restriction base="xs:NMTOKEN"> |
| <xs:enumeration value="fatalError"/> |
| <xs:enumeration value="error"/> |
| <xs:enumeration value="warning"/> |
| <xs:enumeration value="info"/> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:attribute> |
| <xs:attribute name="location" type="xs:string" use="required"/> |
| <xs:attribute name="value" type="xs:string"/> |
| </xs:complexType> |
| </xs:schema> |