123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: ps
- (C) Copyright IBM Corp. 2005, 2011
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- -->
- <!--
- Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
- Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
- -->
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <xs:element name="userInterface">
- <xs:annotation>
- <xs:documentation>User interface name of studio.</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:attribute name="mustExist" type="xs:boolean" use="optional" default="false"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="launchComponent">
- <xs:annotation>
- <xs:documentation>Description of parameters a component uses on launch.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="capability" minOccurs="0"/>
- <xs:element ref="userInterface" minOccurs="0"/>
- <xs:element ref="URLStructure" minOccurs="0"/>
- <xs:element ref="param" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="launchType" type="launchTypes" use="required"/>
- <xs:attribute name="formMethod" type="formMethod" use="optional"/>
- <xs:attribute name="URL" type="xs:string" use="optional"/>
- <xs:attribute name="URLStructure" type="xs:boolean" use="optional" default="false"/>
- <xs:attribute name="jsObject" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="URLStructure">
- <xs:annotation>
- <xs:documentation>Description of URL to generate.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="uriParam" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="uriParam">
- <xs:annotation>
- <xs:documentation>Address segment in the generated URL.</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:attribute name="refparam" type="xs:string" use="optional"/>
- <xs:attribute name="refnode" type="xs:string" use="optional"/>
- <xs:attribute name="refattr" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:simpleType name="launchTypes">
- <xs:restriction base="xs:string">
- <xs:enumeration value="form"/>
- <xs:enumeration value="javascript"/>
- <xs:enumeration value="url"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="formMethod">
- <xs:restriction base="xs:string">
- <xs:enumeration value="GET"/>
- <xs:enumeration value="PUT"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:element name="param">
- <xs:annotation>
- <xs:documentation>Parameter values.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element ref="alias"/>
- </xs:sequence>
- <xs:sequence minOccurs="0">
- <xs:element ref="defaultValue"/>
- </xs:sequence>
- <xs:sequence minOccurs="0">
- <xs:element ref="valueRule"/>
- </xs:sequence>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element ref="prompt"/>
- </xs:sequence>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="forceRender" type="xs:boolean" use="optional" default="true"/>
- <xs:attribute name="mandatory" type="xs:boolean" use="optional" default="false"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="alias">
- <xs:annotation>
- <xs:documentation>Provides aliases for parameter names.</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:attributeGroup ref="conditionSpecOptional"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="prompt">
- <xs:annotation>
- <xs:documentation>Points to a prompt morphlet to be used when the parameter is not specified.</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:attributeGroup ref="conditionSpecOptional"/>
- <xs:attribute name="forcePrompt" type="xs:boolean" use="optional" default="false"/>
- <xs:attribute name="type" type="promptTypes" use="optional" default="xts"/>
- <xs:attribute name="subType" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="defaultValue">
- <xs:annotation>
- <xs:documentation>Default value for a parameter</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:choice>
- <xs:sequence>
- <xs:element ref="cafValue"/>
- </xs:sequence>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element ref="conditionalValue"/>
- </xs:sequence>
- </xs:choice>
- <xs:attribute name="forceDefault" type="xs:boolean" use="optional" default="false"/>
- <xs:attribute name="forceWhenParamBlank" type="xs:boolean" use="optional" default="false"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="referenceValue">
- <xs:annotation>
- <xs:documentation>Default value from referenced source</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:attribute name="refNode" type="xs:string" use="required"/>
- <xs:attribute name="refName" type="xs:string" use="required"/>
- <xs:attribute name="refItem" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="conditionalValue">
- <xs:annotation>
- <xs:documentation>Conditional default value</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:sequence minOccurs="0">
- <xs:element ref="referenceValue"/>
- </xs:sequence>
- <xs:attribute name="conditionNode" type="xs:string" use="optional"/>
- <xs:attributeGroup ref="conditionSpecRequired"/>
- </xs:complexType>
- </xs:element>
- <xs:attributeGroup name="conditionSpecOptional">
- <xs:attribute name="conditionParam" type="xs:string" use="optional"/>
- <xs:attribute name="conditionValue" type="xs:string" use="optional"/>
- </xs:attributeGroup>
- <xs:attributeGroup name="conditionSpecRequired">
- <xs:attribute name="conditionParam" type="xs:string" use="required"/>
- <xs:attribute name="conditionValue" type="xs:string" use="required"/>
- </xs:attributeGroup>
- <xs:element name="valueRule">
- <xs:annotation>
- <xs:documentation>Transformational rule applied to the parameter value before use.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element ref="valueAlias"/>
- </xs:sequence>
- <xs:attribute name="headConstant" type="xs:string" use="optional"/>
- <xs:attribute name="tailConstant" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="valueAlias">
- <xs:annotation>
- <xs:documentation>Alias applied to a parameter value.</xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:attribute name="value" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="cafValue">
- <xs:annotation>
- <xs:documentation>CAF Supplied Value</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:attribute name="type" type="cafValueTypes" use="required"/>
- <xs:attribute name="component" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:simpleType name="cafValueTypes">
- <xs:annotation>
- <xs:documentation>Allowable CAF Value types.</xs:documentation>
- </xs:annotation>
- <xs:restriction base="xs:string">
- <xs:enumeration value="contextid"/>
- <xs:enumeration value="signedreporturls"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:element name="capability">
- <xs:annotation>
- <xs:documentation>Values used to determine if the user has the capability to launch the studio.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:choice minOccurs="0">
- <xs:element ref="allowBrowsers"/>
- <xs:element ref="denyBrowsers"/>
- <xs:element ref="userProfiles"/>
- </xs:choice>
- <xs:attribute name="name" type="xs:string" use="optional"/>
- <xs:attribute name="value" type="xs:string" use="optional"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="userProfiles">
- <xs:annotation>
- <xs:documentation>User Profile required for capability</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element ref="profile"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <!-- <xs:element name="profile">
- <xs:annotation>
- <xs:documentation>User Profile(s) associated with the capability</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:sequence maxOccurs="1">
- <xs:element ref="mapsToKeyValues"/>
- </xs:sequence>
- <xs:sequence maxOccurs="1">
- <xs:element ref="allow-profile-values"/>
- </xs:sequence>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element> -->
- <xs:element name="profile">
- <xs:annotation>
- <xs:documentation>User Profile(s) associated with the capability</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element ref="mapsToKeyValues"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="allow-profile-values">
- <xs:annotation>
- <xs:documentation>Profiles supported for this particular named profile</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element ref="value"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="mapsToKeyValues">
- <xs:annotation>
- <xs:documentation>The session key and expected supported values</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element ref="value"/>
- </xs:sequence>
- <xs:attribute name="key" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="value">
- <xs:annotation>
- <xs:documentation>a leaf node containing a value</xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:element name="denyBrowsers">
- <xs:annotation>
- <xs:documentation>List of browsers which cannot use the studio. Cannot be used with allowBrowsers.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="browser" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="allowBrowsers">
- <xs:annotation>
- <xs:documentation>List of browsers which can use the studio. Cannot be used with denyBrowsers.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="browser" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="browser" type="xs:string"/>
- <xs:simpleType name="promptTypes">
- <xs:annotation>
- <xs:documentation>Currently supported prompt types are 'internal' and 'xts'. The xts prompt type invokes the specified morphlet to set the parameters. The internal prompt type invokes the prompts stored in launch.xts.</xs:documentation>
- </xs:annotation>
- <xs:restriction base="xs:string">
- <xs:enumeration value="internal"/>
- <xs:enumeration value="xts"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:schema>
|