123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: XQEODP
- (C) Copyright IBM Corp. 2009, 2014
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM corp.
- -->
- <!--
- $Header: //xqeodp/main/prod/configuration/xqe.providers.xsd#19 $
- $Change: 132853 $
- $DateTime: 2012/04/16 12:58:03 $
- -->
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <xs:element name="providers">
- <xs:annotation>
- <xs:documentation>Root element that contains all the provider listings.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="providerInstances">
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element name="instance">
- <xs:annotation>
- <xs:documentation>Contains the name and the class name of the data provider XQE should instantiate. </xs:documentation>
- </xs:annotation>
- <!-- Standard Attributes -->
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>The name of the data provider instance. This must be unique within the list of instances.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="className" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>The fully qualified class name of the data provider. This must be an implementation of either OLAPDataProvider or RelationalDataProvider.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionContextualPoolingDisabled" type="xs:boolean" use="optional">
- <xs:annotation>
- <xs:documentation>"true" or "false". Contextual connection pooling allows a connection to be used for more than one database query, in a given context. If not specified, contextual connection pooling is enabled.
- connectionContextualPoolingDisabled and connectionPoolingDisabled are independent.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionPoolingDisabled" type="xs:boolean" use="optional">
- <xs:annotation>
- <xs:documentation>"true" or "false". If not specified, connection pooling is enabled.
- connectionContextualPoolingDisabled and connectionPoolingDisabled are independent.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionLifetimeThreshold">
- <xs:annotation>
- <xs:documentation>Number of milliseconds since creation that a connection may exist before is removed from the pool. If not applicable, omit this parameter or use "-1".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionExpirationThreshold" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>Number of milliseconds before an idle connection is removed from the pool. If not applicable, omit this parameter or use "-1".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="initialConnectionExpirationThreshold">
- <xs:annotation>
- <xs:documentation>Number of milliseconds before an idle connection is removed from the pool if it has not been used to satisfy at least one request. If not applicable, omit this parameter or use a value less than 1. Currently only supported by TM1.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionExpirationCheckPeriod" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>Period at which the connections are checked for expiration, in milliseconds. This parameter is ignored if connectionExpirationThreshold is not specified. If not applicable, omit this parameter or use "-1"</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionMaxNumber" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>Maximum number of connections in the pool for this provider. If not applicable, omit this parameter or use "-1". If not specified, the number of connections is not limited.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionMaxConcurrentUse" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>Maximum number of concurent uses of a given connection. "1", if concurrency is not supported. If not applicable, omit this parameter or use "-1". If not specified, connections are not reused from concurrent threads.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="useMultiThreadedCOM" type="xs:boolean" use="optional">
- <xs:annotation>
- <xs:documentation>Initializes COM in multi-threaded mode. "true" to enable, "false" to disable. If not specified, the default is "false".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheEnabled" type="xs:boolean" use="optional">
- <xs:annotation>
- <xs:documentation>Enables provider result set caching. If not applicable, omit this parameter. If not specified, the default is "false".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheMaxObjects" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>Defines a hard limit on the number of result set objects that may be stored for a provider. A value greater than 0 will enable this constraint. If not specifcied, the default value is some reasonably large number.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheMaxRetainedSize" type="xs:long" use="optional">
- <xs:annotation>
- <xs:documentation>Defines a soft limit on the amount of retained memory (in bytes) used by all cached results sets for a provider. A value greater than 0 will enable this constraint. If not applicable, omit this parameter or use "-1".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheMaxLifeTime" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>The maximum amount of time (in milliseconds) that a cached result set may live from the time it was created. A value greater than 0 will enable this constraint. If not specified, the default is 30 minutes.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheMaxIdleTime" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>The maximum amount of time (in milliseconds) that a cached result set may remain idle before expiring. A value greater than 0 will enable this constraint. If not specified, the default is 5 minutes.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheCheckPeriod" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>The period of time (in milliseconds) at which the cached result sets are checked for expiration. This parameter is ignored if resultSetCacheMaxIdleTime is not specified. If not specified, the default is 5 seconds.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="resultSetCacheInitialRowSize" type="xs:long" use="optional">
- <xs:annotation>
- <xs:documentation>The number of rows to be pre-loaded for the result set cache. Positive number specifies number of rows to be loaded. Zero means do not re-load any rows. And negative number means pre-load entire result set.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionAttemptTimeout" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>The maximum amount of time (in milliseconds) that a connection can attempt to establish a connection before timeout issues are logged. This parameter is ignored if connectionAttemptTimeout is not specified. If not specified, no timeout will occur.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionAttemptCheckPeriod" type="xs:integer" use="optional">
- <xs:annotation>
- <xs:documentation>The period of time (in milliseconds) where connections that are currently attempting to establish a connection are checked to see if they have timed out. This parameter is ignored if connectionAttemptTimeout is not specified. If not specified, polling will occur. Default is 1 minute (60000 milliseconds)</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="connectionSelectionTimeout" type="xs:long" use="optional">
- <xs:annotation>
- <xs:documentation>The maximum amount of time (in milliseconds) the connection pool will wait for a thread to select a pooled connection. If it timed out, the thread will mark the this connection as unusable and continue to select another connection from the pool. The default value is 0 which means there's no timeout. </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="cubeUpdateCheckPeriod" type="xs:long" use="optional">
- <xs:annotation>
- <xs:documentation>The period of time (in milliseconds) at which the cached result set will check for Cube update timestamp and validate the cached data. </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="blackListDriverVersion" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>A regex string indicating the driver versions that are black listed - not supported.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="blackListServerVersion" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>A regex string indicating the server versions that are black listed - not supported.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="greyListDriverVersion" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>A regex string indicating the driver versions that are grey listed - marked for deprecation.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="greyListServerVersion" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>A regex string indicating the server versions that are grey listed - marked for deprecation.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="providerTypes">
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element name="provider">
- <xs:annotation>
- <xs:documentation>Contains all the information for a particular provider.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="connectionProperties" minOccurs="0">
- <xs:annotation>
- <xs:documentation>This defines all connection string properties understood by the provider.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element name="connectionProperty">
- <xs:annotation>
- <xs:documentation>Defines a single connection string property. </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element name="useConditions" minOccurs="0">
- <xs:annotation>
- <xs:documentation>Defines union of one or more conditions that determine if the property is required.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:choice>
- <xs:element name="propertyExists">
- <xs:annotation>
- <xs:documentation>A condition that requires the specified target property to be defined and non-empty.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:attribute name="targetName" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="propertyNotExists">
- <xs:annotation>
- <xs:documentation>A condition that requires the specified target property to be undefined or empty.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:attribute name="targetName" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="propertyEquals">
- <xs:annotation>
- <xs:documentation>A condition that requires the specified target property to be equal to the some value.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:attribute name="targetName" type="xs:string" use="required"/>
- <xs:attribute name="value" type="xs:string" use="required"/>
- <xs:attribute name="ignoreCase" type="xs:boolean" use="optional"/>
- </xs:complexType>
- </xs:element>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="valueConstraints" minOccurs="0">
- <xs:annotation>
- <xs:documentation>Defines an intersection of one or more constraints on the value of the property.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:choice>
- <xs:element name="regex">
- <xs:annotation>
- <xs:documentation>Defines a Java regular expression string that must match the property value string.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:attribute name="pattern" type="xs:string" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="choice">
- <xs:annotation>
- <xs:documentation>Defines a set of legal values to choose from.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded">
- <xs:element name="value" type="xs:string"/>
- </xs:sequence>
- <xs:attribute name="ignoreCase" type="xs:boolean" use="optional"/>
- </xs:complexType>
- </xs:element>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>The name of the connection property as it appears in a connection string. This is case sensitive.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="datatype" use="optional" default="string">
- <xs:annotation>
- <xs:documentation>The expected data-type of the parameter. This is used to validate user-input in a UI field editor. The default is "string".</xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="string"/>
- <xs:enumeration value="integer"/>
- <xs:enumeration value="boolean"/>
- <xs:enumeration value="yes_no"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="use" use="optional" default="optional">
- <xs:annotation>
- <xs:documentation>Defines if the property is optional, requied or conditional.</xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="optional"/>
- <xs:enumeration value="required"/>
- <xs:enumeration value="conditional"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="drivers" minOccurs="0">
- <xs:complexType>
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:element name="driver">
- <xs:complexType>
- <xs:attribute name="subType" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>The subType of the data source. For example, a JDBC provider would need to know the actual data source it is connecting to. e.g. "MS" for MSSQL server</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="className" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>This is the driver class the provider must use. For example, a MSSQL provider would need its JDBC driver class.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>The name of the provider. This is used to set the dataProviderType for MDDS. For example, "MSAnalsyisODP".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="type" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>This is the connection type. It is a two character indentification that is part of a data source's connection string. For example, "MO".</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="instance" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>This is a reference to a particular instance of a data provider. This implies queries to this provider type would be satisfied by the matching instance. The instance name must match one of the instance names already declared in the providerInstances section.</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:schema>
|