<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://schema.infor.com/ICM/1"
    targetNamespace="http://schema.infor.com/ICM/1" elementFormDefault="qualified"
    attributeFormDefault="unqualified" version="1.0"
    xmlns:BaanLN="http://schema.infor.com/ICM/BaanLN" xmlns:EAM="http://schema.infor.com/ICM/EAM"
    xmlns:SyteLine="http://schema.infor.com/ICM/SyteLine" xmlns:XM="http://schema.infor.com/ICM/XM"
    xmlns:ION="http://schema.infor.com/ICM/ION" xmlns:IONBI="http://schema.infor.com/ICM/IONBI"
    xmlns:WorkSpace="http://schema.infor.com/ICM/WorkSpace"
    xmlns:SunSystems="http://schema.infor.com/ICM/SunSystems"
    xmlns:Visual="http://schema.infor.com/ICM/Visual" xmlns:XA="http://schema.infor.com/ICM/XA"
    xmlns:ERPLX="http://schema.infor.com/ICM/ERPLX" xmlns:CPM="http://schema.infor.com/ICM/CPM"
    xmlns:Hansen="http://schema.infor.com/ICM/Hansen"
    xmlns:Infinium="http://schema.infor.com/ICM/Infinium"
    xmlns:SmartStream="http://schema.infor.com/ICM/SmartStream"
    xmlns:SCE="http://schema.infor.com/ICM/SCE" xmlns:SXe="http://schema.infor.com/ICM/SXe"
    xmlns:EXE="http://schema.infor.com/ICM/EXE"
    xmlns:Epiphany="http://schema.infor.com/ICM/Epiphany"
    xmlns:WorkBrain="http://schema.infor.com/ICM/WorkBrain">
    <xs:import schemaLocation="./BaanLN/ICM_BaanLN.xsd"
        namespace="http://schema.infor.com/ICM/BaanLN"/>
    <xs:import schemaLocation="./SyteLine/ICM_SyteLine.xsd"
        namespace="http://schema.infor.com/ICM/SyteLine"/>
    <xs:import schemaLocation="./EAM/ICM_EAM.xsd" namespace="http://schema.infor.com/ICM/EAM"/>
    <xs:import schemaLocation="./XM/ICM_XM.xsd" namespace="http://schema.infor.com/ICM/XM"/>
    <xs:import schemaLocation="./ION/ICM_ION.xsd" namespace="http://schema.infor.com/ICM/ION"/>
    <xs:import schemaLocation="./IONBI/ICM_IONBI.xsd" namespace="http://schema.infor.com/ICM/IONBI"/>
    <xs:import schemaLocation="./WorkSpace/ICM_WorkSpace.xsd"
        namespace="http://schema.infor.com/ICM/WorkSpace"/>
    <xs:import schemaLocation="./SunSystems/ICM_SunSystems.xsd"
        namespace="http://schema.infor.com/ICM/SunSystems"/>
    <xs:import schemaLocation="./Visual/ICM_Visual.xsd"
        namespace="http://schema.infor.com/ICM/Visual"/>
    <xs:import schemaLocation="./XA/ICM_XA.xsd" namespace="http://schema.infor.com/ICM/XA"/>
    <xs:import schemaLocation="./ERPLX/ICM_ERPLX.xsd" namespace="http://schema.infor.com/ICM/ERPLX"/>
    <xs:import schemaLocation="./CPM/ICM_CPM.xsd" namespace="http://schema.infor.com/ICM/CPM"/>
    <xs:import schemaLocation="./Hansen/ICM_Hansen.xsd"
        namespace="http://schema.infor.com/ICM/Hansen"/>
    <xs:import schemaLocation="./Infinium/ICM_Infinium.xsd"
        namespace="http://schema.infor.com/ICM/Infinium"/>
    <xs:import schemaLocation="./SmartStream/ICM_SmartStream.xsd"
        namespace="http://schema.infor.com/ICM/SmartStream"/>
    <xs:import schemaLocation="./SCE/ICM_SCE.xsd" namespace="http://schema.infor.com/ICM/SCE"/>
    <xs:import schemaLocation="./SXe/ICM_SXe.xsd" namespace="http://schema.infor.com/ICM/SXe"/>
    <xs:import schemaLocation="./EXE/ICM_EXE.xsd" namespace="http://schema.infor.com/ICM/EXE"/>
    <xs:import schemaLocation="./Epiphany/ICM_Epiphany.xsd"
        namespace="http://schema.infor.com/ICM/Epiphany"/>
    <xs:import schemaLocation="./WorkBrain/ICM_WorkBrain.xsd"
        namespace="http://schema.infor.com/ICM/WorkBrain"/>
    <xs:element name="DataPackage" type="DataPackageType"> </xs:element>
    <xs:complexType name="ApplicationCommonType">
        <xs:annotation>
            <xs:documentation>Type Definition for the application Common collections.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="ApplicationName">
                <xs:annotation>
                    <xs:documentation>The Application (Product) Name.
Also can be referred to as the Product Line</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="Adage"/>
                        <xs:enumeration value="Agilisys"/>
                        <xs:enumeration value="ALLTAX"/>
                        <xs:enumeration value="AMS"/>
                        <xs:enumeration value="AMSI"/>
                        <xs:enumeration value="Anael"/>
                        <xs:enumeration value="Aplus"/>
                        <xs:enumeration value="APM"/>
                        <xs:enumeration value="AutoConnect"/>
                        <xs:enumeration value="AutoRelease"/>
                        <xs:enumeration value="Baan Aamp;D"/>
                        <xs:enumeration value="Baan Automotive"/>
                        <xs:enumeration value="Baan Construction"/>
                        <xs:enumeration value="Baan CRM"/>
                        <xs:enumeration value="Baan Dimensions"/>
                        <xs:enumeration value="Baan ERP"/>
                        <xs:enumeration value="Baan ERP - Brazil Localization"/>
                        <xs:enumeration value="Baan ERP - India Localization"/>
                        <xs:enumeration value="Baan ERP - Portugal Localization"/>
                        <xs:enumeration value="Baan ERP - Spain Localization"/>
                        <xs:enumeration value="BI"/>
                        <xs:enumeration value="Blending"/>
                        <xs:enumeration value="BOSS"/>
                        <xs:enumeration value="Bridgelogix"/>
                        <xs:enumeration value="Bureautique"/>
                        <xs:enumeration value="Business Objects (Crystal)"/>
                        <xs:enumeration value="CAPS"/>
                        <xs:enumeration value="CAS"/>
                        <xs:enumeration value="COM"/>
                        <xs:enumeration value="Commerce"/>
                        <xs:enumeration value="Companion"/>
                        <xs:enumeration value="CORrelation"/>
                        <xs:enumeration value="Demand Planning"/>
                        <xs:enumeration value="DMAS"/>
                        <xs:enumeration value="E Series"/>
                        <xs:enumeration value="EAM"/>
                        <xs:enumeration value="Education"/>
                        <xs:enumeration value="E-Enterprise"/>
                        <xs:enumeration value="Elevon"/>
                        <xs:enumeration value="EnRoute"/>
                        <xs:enumeration value="Enspire"/>
                        <xs:enumeration value="ENXSuite"/>
                        <xs:enumeration value="EPAK"/>
                        <xs:enumeration value="Epiphany Interaction Advisor"/>
                        <xs:enumeration value="Epiphany Marketing"/>
                        <xs:enumeration value="Epiphany Sales and Service"/>
                        <xs:enumeration value="ERP LX"/>
                        <xs:enumeration value="Evolve"/>
                        <xs:enumeration value="Expense Management"/>
                        <xs:enumeration value="F9"/>
                        <xs:enumeration value="FACTS"/>
                        <xs:enumeration value="FMS Masterpiece"/>
                        <xs:enumeration value="FnB"/>
                        <xs:enumeration value="Frontres"/>
                        <xs:enumeration value="Global Finance"/>
                        <xs:enumeration value="Growth Power"/>
                        <xs:enumeration value="Hansen"/>
                        <xs:enumeration value="Help - zSeries"/>
                        <xs:enumeration value="HMS"/>
                        <xs:enumeration value="Hospitality"/>
                        <xs:enumeration value="Hospitality Deu"/>
                        <xs:enumeration value="Host General"/>
                        <xs:enumeration value="Hotix"/>
                        <xs:enumeration value="HR Tax amp; Reg"/>
                        <xs:enumeration value="i2"/>
                        <xs:enumeration value="INFINIUM"/>
                        <xs:enumeration value="Infogenesis"/>
                        <xs:enumeration value="Infor Configuration"/>
                        <xs:enumeration value="Infor CRM Business"/>
                        <xs:enumeration value="Infor Federation Services"/>
                        <xs:enumeration value="Infor ICEE"/>
                        <xs:enumeration value="Infor Motion"/>
                        <xs:enumeration value="Infor Service Mgmt"/>
                        <xs:enumeration value="Infor Studio"/>
                        <xs:enumeration value="Infor Xtreme Support"/>
                        <xs:enumeration value="ION"/>
                        <xs:enumeration value="ION Support Assistant"/>
                        <xs:enumeration value="IRONSIDE"/>
                        <xs:enumeration value="iSeries EAM"/>
                        <xs:enumeration value="ISP"/>
                        <xs:enumeration value="KBM"/>
                        <xs:enumeration value="Library Solutions"/>
                        <xs:enumeration value="LN ERP"/>
                        <xs:enumeration value="LN ERP - India Localization"/>
                        <xs:enumeration value="Local Government"/>
                        <xs:enumeration value="M Series"/>
                        <xs:enumeration value="MANMAN"/>
                        <xs:enumeration value="MAX"/>
                        <xs:enumeration value="MK"/>
                        <xs:enumeration value="Mongoose Framework"/>
                        <xs:enumeration value="Open World/ Integration"/>
                        <xs:enumeration value="Optiva"/>
                        <xs:enumeration value="Order Management"/>
                        <xs:enumeration value="Pegasus"/>
                        <xs:enumeration value="PLM"/>
                        <xs:enumeration value="PM"/>
                        <xs:enumeration value="PM/XBRL"/>
                        <xs:enumeration value="PMS CSL"/>
                        <xs:enumeration value="Point.Man"/>
                        <xs:enumeration value="Prism"/>
                        <xs:enumeration value="PRMS"/>
                        <xs:enumeration value="Process"/>
                        <xs:enumeration value="Protean"/>
                        <xs:enumeration value="PROVIA"/>
                        <xs:enumeration value="Ratioplan"/>
                        <xs:enumeration value="Sales and Operations Planning"/>
                        <xs:enumeration value="Salesforce"/>
                        <xs:enumeration value="SCEM"/>
                        <xs:enumeration value="SCM Planning"/>
                        <xs:enumeration value="SCM WM"/>
                        <xs:enumeration value="SmartStream"/>
                        <xs:enumeration value="SPA"/>
                        <xs:enumeration value="Starlight"/>
                        <xs:enumeration value="STOREFRONT"/>
                        <xs:enumeration value="StreamLine"/>
                        <xs:enumeration value="Streamserve"/>
                        <xs:enumeration value="SunSystems"/>
                        <xs:enumeration value="SupplyWEB"/>
                        <xs:enumeration value="SX.enterprise"/>
                        <xs:enumeration value="SXe"/>
                        <xs:enumeration value="System 21"/>
                        <xs:enumeration value="System i Common Components"/>
                        <xs:enumeration value="SyteLine"/>
                        <xs:enumeration value="TAKESTOCK"/>
                        <xs:enumeration value="Talent Management"/>
                        <xs:enumeration value="TIMS"/>
                        <xs:enumeration value="TMS"/>
                        <xs:enumeration value="TotalHR"/>
                        <xs:enumeration value="TRANS4M"/>
                        <xs:enumeration value="TriSyn"/>
                        <xs:enumeration value="Unison"/>
                        <xs:enumeration value="VG"/>
                        <xs:enumeration value="Vision"/>
                        <xs:enumeration value="VISUAL"/>
                        <xs:enumeration value="VR"/>
                        <xs:enumeration value="Workbrain"/>
                        <xs:enumeration value="Workflow"/>
                        <xs:enumeration value="Workspace"/>
                        <xs:enumeration value="XA"/>
                        <xs:enumeration value="XDEX"/>
                        <xs:enumeration value="XPERT"/>
                    </xs:restriction>
                </xs:simpleType>
            </xs:element>
            <xs:element name="ApplicationVersion" type="xs:string">
                <xs:annotation>
                    <xs:documentation>The Application (Product) full version. 
This is the version reported by the actual software code.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="ApplicationSalesVersion" type="xs:string">
                <xs:annotation>
                    <xs:documentation>The Product Line release is the external label of the release as customers are using it in the support portal. In the support portal, the release is really at the Product level, not the Product Line level. Products within a Product Line can have different release numbers as a Product Line has mainline products and add on products, etc. We can use a default release at the Product Line level, which should be an indication of the mainline products.
</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="InstallationLocation" type="xs:string">
                <xs:annotation>
                    <xs:documentation>The full root install path for the application</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="ApplicationPatches">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" minOccurs="1" name="ApplicationPatch"
                            type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="ApplicationProducts">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="ApplicationProduct">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="ApplicationProductName" type="xs:string">
                                        <xs:annotation>
                                            <xs:documentation>A product Line has many products. The support portal uses the product entitlement to determine what to show and have access for. Optionally the ISA product integrations can return the products installed. </xs:documentation>
                                        </xs:annotation>
                                    </xs:element>
                                    <xs:element name="ApplicationProductRelease" type="xs:string">
                                        <xs:annotation>
                                            <xs:documentation>A Product has a release. The support portal organizes all KB articles (including patches) at the Product/Release level. Optionally the ISA product integrations can return the release of the products installed. If absent, the proactive logic will use the Product Line release as default.</xs:documentation>
                                        </xs:annotation>
                                    </xs:element>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="LanguagePacks">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="LanguagePack" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="ConfigurationSwitches">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="ConfigurationSwitch"
                            type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="DataLocations">
                <xs:complexType>
                    <xs:sequence maxOccurs="unbounded" minOccurs="0">
                        <xs:element minOccurs="0" name="DataLocation" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>The data location (datastore) for the application data (e.g. IP Address of the database)</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element minOccurs="0" name="DataLocationAttribute" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>If a product has mutiple data stores (e.g. mutiple databases) identify the datastore (e.g. datastore name).</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="LogFiles" type="LogFilesType"/>
            <xs:element minOccurs="0" name="ConfigurationLastRun" type="xs:dateTime">
                <xs:annotation>
                    <xs:documentation>The date and time that the configurator was last run</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="ConfigurationLastRunID" type="xs:string">
                <xs:annotation>
                    <xs:documentation>The user id that last ran the configurator</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="ProductKeys">
                <xs:complexType>
                    <xs:sequence maxOccurs="unbounded" minOccurs="0">
                        <xs:element maxOccurs="1" minOccurs="0" name="ProductKey" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>The product key installed for the entity being reported</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element minOccurs="0" name="ProductKeyAttribute" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>If a product has mutiple product keys (e.g. licensed by module) identify the licensed entity (e.g. Module name).</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ApplicationDatabaseSpecificType">
        <xs:annotation>
            <xs:documentation>Type Definition for the Application Specific collections.</xs:documentation>
        </xs:annotation>
        <xs:choice>
            <xs:element name="BaaN_LNDatabase" type="BaanLN:BaaN_LNDatabaseType"> </xs:element>
            <xs:element name="CPMDatabase" type="CPM:CPMDatabaseType"> </xs:element>
            <xs:element name="EAMDatabase" type="EAM:EAMDatabaseType"> </xs:element>
            <xs:element name="EpiphanyDatabase" type="Epiphany:EpiphanyDatabaseType"> </xs:element>
            <xs:element name="ERPLXDatabase" type="ERPLX:ERPLXDatabaseType"> </xs:element>
            <xs:element name="EXEDatabase" type="EXE:EXEDatabaseType"> </xs:element>
            <xs:element name="HansenDatabase" type="Hansen:HansenDatabaseType"> </xs:element>
            <xs:element name="InfiniumDatabase" type="Infinium:InfiniumDatabaseType"> </xs:element>
            <xs:element name="IONDatabase" type="ION:IONDatabaseType"> </xs:element>
            <xs:element name="IONBIDatabase" type="IONBI:IONBIDatabaseType"> </xs:element>
            <xs:element name="SmartStreamDatabase" type="SmartStream:SmartStreamDatabaseType"> </xs:element>
            <xs:element name="SunSystemsDatabase" type="SunSystems:SunSystemsDatabaseType"> </xs:element>
            <xs:element name="SCEDatabase" type="SCE:SCEDatabaseType"> </xs:element>
            <xs:element name="SXeDatabase" type="SXe:SXeDatabaseType"> </xs:element>
            <xs:element name="SyteLineDatabase" type="SyteLine:SyteLineDatabaseType"> </xs:element>
            <xs:element name="VisualDatabase" type="Visual:VisualDatabaseType"> </xs:element>
            <xs:element name="WorkBrainDatabase" type="WorkBrain:WorkBrainDatabaseType"> </xs:element>
            <xs:element name="WorkSpaceDatabase" type="WorkSpace:WorkSpaceDatabaseType"> </xs:element>
            <xs:element name="XADatabase" type="XA:XADatabaseType"> </xs:element>
            <xs:element name="XMDatabase" type="XM:XMDatabaseType"> </xs:element>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="ApplicationType">
        <xs:annotation>
            <xs:documentation>Type Definition for data collection of INFOR Application information</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="ApplicationCommon" type="ApplicationCommonType"> </xs:element>
            <xs:element name="ApplicationSpecific" type="ApplicationSpecificType" minOccurs="0"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ApplicationServerType">
        <xs:annotation>
            <xs:documentation>Type Definition for data collection of Application Server information</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element form="qualified" name="ApplicationServerName" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Application Server Name - Middleware that the appplication is running on</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="ApplicationServerType" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Application Server Type - the type of middleware that the application is running on</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="ApplicationServerVersion" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Application Server Version - the version of the application server type</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ApplicationSpecificType">
        <xs:annotation>
            <xs:documentation>Type Definition for the Application Specific collections.</xs:documentation>
        </xs:annotation>
        <xs:choice>
            <xs:element name="BaaN_LN" type="BaanLN:BaaN_LNApplicationType"> </xs:element>
            <xs:element name="CPM" type="CPM:CPMApplicationType"> </xs:element>
            <xs:element name="EAM" type="EAM:EAMApplicationType"> </xs:element>
            <xs:element name="Epiphany" type="Epiphany:EpiphanyApplicationType"> </xs:element>
            <xs:element name="ERPLX" type="ERPLX:ERPLXApplicationType"> </xs:element>
            <xs:element name="EXE" type="EXE:EXEApplicationType"> </xs:element>
            <xs:element name="Hansen" type="Hansen:HansenApplicationType"> </xs:element>
            <xs:element name="Infinium" type="Infinium:InfiniumApplicationType"> </xs:element>
            <xs:element name="ION" type="ION:IONApplicationType"> </xs:element>
            <xs:element name="IONBI" type="IONBI:IONBIApplicationType"> </xs:element>
            <xs:element name="SmartStream" type="SmartStream:SmartStreamApplicationType"> </xs:element>
            <xs:element name="SunSystems" type="SunSystems:SunSystemsApplicationType"> </xs:element>
            <xs:element name="SCE" type="SCE:SCEApplicationType"> </xs:element>
            <xs:element name="SXe" type="SXe:SXeApplicationType"> </xs:element>
            <xs:element name="SyteLine" type="SyteLine:SyteLineApplicationType"> </xs:element>
            <xs:element name="Visual" type="Visual:VisualApplicationType"> </xs:element>
            <xs:element name="WorkBrain" type="WorkBrain:WorkBrainApplicationType"> </xs:element>
            <xs:element name="WorkSpace" type="WorkSpace:WorkSpaceApplicationType"> </xs:element>
            <xs:element name="XA" type="XA:XAApplicationType"> </xs:element>
            <xs:element name="XM" type="XM:XMApplicationType"> </xs:element>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="ApplicationUserType">
        <xs:sequence>
            <xs:element name="UserID" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Named User ID for the application</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="UserDescription" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Named User Description for the application</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="Permissions" type="PermissionsType"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="BasicServerType">
        <xs:sequence>
            <xs:element name="ServerName" type="xs:string"/>
            <xs:element name="ServerManufacturer" type="xs:string"/>
            <xs:element name="ServerModel" type="xs:string"/>
            <xs:element name="TimeZone" type="xs:string"/>
            <xs:element name="CountProcessors" type="xs:positiveInteger"/>
            <xs:element name="CountDisks" type="xs:positiveInteger"/>
            <xs:element name="CountConfiguredVolumes" type="xs:positiveInteger"/>
            <xs:element name="CountOccupiedMemorySlots" type="xs:positiveInteger"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ConcurrentUserType">
        <xs:annotation>
            <xs:documentation>Type Definition for data collection of Concurrent User Data</xs:documentation>
        </xs:annotation>
        <xs:sequence maxOccurs="unbounded">
            <xs:element name="ConcurrentUser" type="UserActionType"> </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="DatabaseCommonType">
        <xs:sequence>
            <xs:element name="DataBaseName" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Database Name</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="DataBaseType" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Database Product Type; Vendor e.g. Oracle, Enterprise SQL Server</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="DataBaseVersion" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Full version of the Database

SQLServer: SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')

Oracle: select * from v$version where banner like ‘Oracle%’;</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="DataBaseFunction" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Function of the database (if known); e.g. Dev, Test, Live</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="DataBaseServer" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Server Address of the application Database (hostname)</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="DataBaseFileLocation" type="xs:string">
                <xs:annotation>
                    <xs:documentation>SQL Server

Full path of the database file

SELECT SUBSTRING(physical_name, 1, CHARINDEX(N'master.mdf',LOWER(physical_name)) - 1) DataFileLocation FROM master.sys.master_files WHERE database_id = 1 AND FILE_ID = 1</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="DataBaseFileSize" type="xs:string">
                <xs:annotation>
                    <xs:documentation>SQL Server

Size of the database file

SELECT DB_NAME(database_id) AS DatabaseName,
Name AS Logical_Name,
Physical_Name, (size*8)/1024 SizeMB
FROM sys.master_files
WHERE DB_NAME(database_id) = '%databasename%'
GO</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="DataBaseLogLocation" type="xs:string">
                <xs:annotation>
                    <xs:documentation>SQL Server

Full path of the database log file</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="DataBaseLogSize" type="xs:string">
                <xs:annotation>
                    <xs:documentation>SQL Server

Size of the database log file</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="TransactionLogSize" type="xs:string">
                <xs:annotation>
                    <xs:documentation>SQL Server

Size of the Transaction Log</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="OracleInstance">
                <xs:annotation>
                    <xs:documentation>Oracle: show sga;</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="TotalSystemGlobalArea" type="xs:integer"/>
                        <xs:element name="FixedSize" type="xs:integer"/>
                        <xs:element name="VariableSize" type="xs:integer"/>
                        <xs:element name="DataBaseBuffers" type="xs:integer"/>
                        <xs:element name="RedoBuffers" type="xs:integer"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="INITora">
                <xs:annotation>
                    <xs:documentation>Oracle: show parameters;</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="ActiveInstanceCount" type="xs:integer"/>
                        <xs:element name="AqTmProcesses" type="xs:integer"/>
                        <xs:element name="ArchiveLagTarget" type="xs:integer"/>
                        <xs:element name="AuditFileDest" type="xs:string"/>
                        <xs:element name="AuditTrail" type="xs:string"/>
                        <xs:element name="BackgroundCoreDump" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="TableSpaceDefinitions">
                <xs:annotation>
                    <xs:documentation>Oracle

Tablespace definitions</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="TableSpaceDefinition">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="TableSpace" type="xs:string"/>
                                    <xs:element name="TableSpaceDataFiles">
                                        <xs:complexType>
                                            <xs:sequence>
                                                <xs:element maxOccurs="unbounded"
                                                  name="TableSpaceDataFile" type="xs:string"/>
                                            </xs:sequence>
                                        </xs:complexType>
                                    </xs:element>
                                    <xs:element name="TableSpaceSize" type="xs:string"/>
                                    <xs:element minOccurs="0" name="TableSpaceExtentManagement"
                                        type="xs:string"/>
                                    <xs:element minOccurs="0" name="TableSpaceDefaultStorage">
                                        <xs:complexType>
                                            <xs:sequence>
                                                <xs:element name="TableSpaceDefaultStorageInitial"
                                                  type="xs:integer"/>
                                                <xs:element name="TableSpaceDefaultStorageNext"
                                                  type="xs:integer"/>
                                            </xs:sequence>
                                        </xs:complexType>
                                    </xs:element>
                                    <xs:element minOccurs="0" name="TableSpaceMinExtents"
                                        type="xs:integer"/>
                                    <xs:element minOccurs="0" name="TableSpaceMaxExtents"
                                        type="xs:integer"/>
                                    <xs:element minOccurs="0" name="TableSpacePCTIncrease"
                                        type="xs:integer"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="RedoLogs">
                <xs:annotation>
                    <xs:documentation>Oracle redo log files

select member, group#, bytes, status from v$logfile;</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="RedoLog">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="Member" type="xs:string"/>
                                    <xs:element name="Group" type="xs:integer"/>
                                    <xs:element name="RedoLogBytes" type="xs:integer"/>
                                    <xs:element name="RedoLogStatus" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="DatabaseType">
        <xs:annotation>
            <xs:documentation>Type Definition for data collection of Database information</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="DataBaseCommon" type="DatabaseCommonType"> </xs:element>
            <xs:element minOccurs="0" name="ApplicationDatabaseSpecific"
                type="ApplicationDatabaseSpecificType"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="DataPackageType">
        <xs:sequence>
            <xs:element name="PackageID" type="xs:string"/>
            <xs:element name="PackageType" type="xs:string"/>
            <xs:element name="PackageMode" type="xs:string"/>
            <xs:element name="Header" type="HeaderType"/>
            <xs:element name="Products" type="ProductType"/>
        </xs:sequence>
        <xs:attribute name="schemaVersion" default="1.0"/>
    </xs:complexType>
    <xs:complexType name="DetailedServerType">
        <xs:sequence>
            <xs:element name="Processors">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="Processor">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="ProcessorVendor" type="xs:string"/>
                                    <xs:element name="ProcessorModel" type="xs:string"/>
                                    <xs:element minOccurs="0" name="ProcessorClock"
                                        type="xs:integer"/>
                                    <xs:element name="ProcessorSerialNo" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="Memory">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" minOccurs="0" name="Slot">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="SlotID" type="xs:string"/>
                                    <xs:element name="Size" type="xs:integer"/>
                                    <xs:element minOccurs="0" name="Speed" type="xs:integer"/>
                                    <xs:element minOccurs="0" name="Status" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                        <xs:element maxOccurs="unbounded" minOccurs="0" name="Pool">
                            <xs:annotation>
                                <xs:documentation>system-i memory allocation</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="SystemPool" type="xs:integer"/>
                                    <xs:element name="PoolName" type="xs:string"/>
                                    <xs:element minOccurs="0" name="SubSystem" type="xs:string"/>
                                    <xs:element minOccurs="0" name="Library" type="xs:string"/>
                                    <xs:element name="PoolSize" type="xs:decimal"/>
                                    <xs:element name="ReservedSize" type="xs:decimal"/>
                                    <xs:element name="MaxActive" type="xs:decimal"/>
                                    <xs:element name="PagingOption" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="Disks">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="Disk">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element minOccurs="0" name="Model" type="xs:string"/>
                                    <xs:element minOccurs="0" name="Revision" type="xs:string"/>
                                    <xs:element name="SerialNo" type="xs:string"/>
                                    <xs:element name="Capacity" type="xs:integer"/>
                                    <xs:element name="DiskName" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="ConfiguredVolumes">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="Volume">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="VolumeName" type="xs:string"/>
                                    <xs:element name="Capacity" type="xs:integer"/>
                                    <xs:element minOccurs="0" name="FileSystem" type="xs:string"/>
                                    <xs:element minOccurs="0" name="Wrtitable" type="xs:string"/>
                                    <xs:element minOccurs="0" name="FreeSpace" type="xs:integer"/>
                                    <xs:element minOccurs="0" name="MountPoint" type="xs:string"/>
                                    <xs:element minOccurs="0" name="Protection" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="NetworkAdapters">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="NetworkAdapter">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="MACAddress" type="xs:string"/>
                                    <xs:element name="IPAddresses">
                                        <xs:complexType>
                                            <xs:sequence>
                                                <xs:element maxOccurs="unbounded" name="IPAddress"
                                                  type="xs:string"/>
                                            </xs:sequence>
                                        </xs:complexType>
                                    </xs:element>
                                    <xs:element name="Domain" type="xs:string"/>
                                    <xs:element maxOccurs="1" name="FullyQualifiedDomainName"
                                        type="xs:string"/>
                                    <xs:element minOccurs="0" name="DefaultGateway" type="xs:string"
                                    />
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="SwapSpaces">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" minOccurs="0" name="SwapSpace">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element minOccurs="0" name="Location" type="xs:string"/>
                                    <xs:element minOccurs="0" name="InitialSize" type="xs:integer"/>
                                    <xs:element minOccurs="0" name="MaxSize" type="xs:integer"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="HeapSize">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element minOccurs="0" name="SystemHeap" type="xs:integer"/>
                        <xs:element minOccurs="0" name="DesktopHeap" type="xs:integer"/>
                        <xs:element minOccurs="0" name="NonInteractiveDesktopHeap" type="xs:integer"
                        />
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="EnvironmentVariables">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="Variable">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="VariableName" type="xs:string"/>
                                    <xs:element name="Value" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="InstalledPrograms">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="Program">
                            <xs:annotation>
                                <xs:documentation>Installed Programs on the host machine</xs:documentation>
                                <xs:documentation>Hotfixes included as part of Installed Programs.
These will contain the Hotfix identifier as part of the Program Name (e.g. KB1111111)</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="Bit" type="xs:string"/>
                                    <xs:element name="ProgramName" type="xs:string"/>
                                    <xs:element minOccurs="0" name="ProgramVersion" type="xs:string"/>
                                    <xs:element minOccurs="0" name="ProgramOption" type="xs:string">
                                        <xs:annotation>
                                            <xs:documentation>system-i</xs:documentation>
                                        </xs:annotation>
                                    </xs:element>
                                    <xs:element minOccurs="0" name="Publisher" type="xs:string"/>
                                    <xs:element minOccurs="0" name="InstalledDate" type="xs:string"/>
                                    <xs:element minOccurs="0" name="InstalledLocation"
                                        type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="JAVARuntime">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="JAVAVersion" type="xs:string"/>
                        <xs:element name="Detail" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="OperationalAttributes">
                <xs:annotation>
                    <xs:documentation>system-i specific</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="SubSystemDescription" type="xs:string"/>
                        <xs:element name="SubSystemLibrary" type="xs:string"/>
                        <xs:element name="MaxNoJobs" type="xs:string"/>
                        <xs:element name="SignonDisplayFileName" type="xs:string"/>
                        <xs:element name="SignonDisplayFileLibrary" type="xs:string"/>
                        <xs:element name="SystemLibraryListEntry" type="xs:string"/>
                        <xs:element name="ASPGroup" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="Pools">
                <xs:annotation>
                    <xs:documentation>system-i specific</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="Pool">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="PoolID" type="xs:integer"/>
                                    <xs:element name="PoolStorageSize" type="xs:string"/>
                                    <xs:element name="PoolActivityLevel" type="xs:integer"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="AutoStartJobs">
                <xs:annotation>
                    <xs:documentation>system-i specific</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="AutoStartJob" type="JobType">
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="JobQueueEntries">
                <xs:annotation>
                    <xs:documentation>system-i specific</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="JobQueueEntry">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="JobQueueSequence" type="xs:integer"/>
                                    <xs:element name="JobQueueName" type="xs:string"/>
                                    <xs:element name="JobQueueLibrary" type="xs:string"/>
                                    <xs:element maxOccurs="1" name="MaxActiveJobs" type="xs:string"/>
                                    <xs:element name="MaxActivePriorities">
                                        <xs:complexType>
                                            <xs:sequence>
                                                <xs:element maxOccurs="unbounded"
                                                  name="MaxActivePriority" type="xs:string"/>
                                            </xs:sequence>
                                        </xs:complexType>
                                    </xs:element>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="RoutingEntries">
                <xs:annotation>
                    <xs:documentation>system-i specific</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="RoutingEntry">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="RoutingSequence" type="xs:integer"/>
                                    <xs:element name="RoutingProgramName" type="xs:string"/>
                                    <xs:element name="RoutingProgramLibrary" type="xs:string"/>
                                    <xs:element name="RoutingClassName" type="xs:string"/>
                                    <xs:element name="RoutingClassLibrary" type="xs:string"/>
                                    <xs:element name="MaxActiveRoutingSteps" type="xs:string"/>
                                    <xs:element name="RoutingStoragePoolIdentifier"
                                        type="xs:integer"/>
                                    <xs:element name="RoutingCompareValue" type="xs:string"/>
                                    <xs:element name="RoutingStartPosition" type="xs:integer"/>
                                    <xs:element name="RoutingThreadResources"
                                        type="ThreadResourcesType"/>
                                    <xs:element name="ResourcesAffinityGroup" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="PreStartJobs">
                <xs:annotation>
                    <xs:documentation>system-i specific</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="PreStartJob">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="ProgramName" type="xs:string"/>
                                    <xs:element name="ProgramLibrary" type="xs:string"/>
                                    <xs:element name="UserProfile" type="xs:string"/>
                                    <xs:element name="StartJobs" type="xs:string"/>
                                    <xs:element name="InitialNumberofJobs" type="xs:integer"/>
                                    <xs:element name="Threshold" type="xs:integer"/>
                                    <xs:element name="AdditionalNumberofJobs" type="xs:integer"/>
                                    <xs:element name="MaximumNumberofJobs" type="xs:string"/>
                                    <xs:element name="Job" type="JobType"/>
                                    <xs:element name="MaximumNumberofUses" type="xs:string"/>
                                    <xs:element name="WaitForJob" type="xs:string"/>
                                    <xs:element name="PoolIdentifier" type="xs:integer"/>
                                    <xs:element name="Class1Name" type="xs:string"/>
                                    <xs:element name="Class1Library" type="xs:string"/>
                                    <xs:element name="NumberofJobstoUseClass1" type="xs:string"/>
                                    <xs:element name="Class2Name" type="xs:string"/>
                                    <xs:element name="Class2Library" type="xs:string"/>
                                    <xs:element name="NumberofJobstoUseClass2" type="xs:string"/>
                                    <xs:element name="PreStartJobThreadResources"
                                        type="ThreadResourcesType"/>
                                    <xs:element name="ResourcesAffinityGroup" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="EnvironmentUserType">
        <xs:sequence>
            <xs:element name="EnvironmentUserID" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Environment User ID used to access the application:
UNIX/iSeries - User Profile
Windows - Windows User Name and Domain </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="EnvironmentUserDescription" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Environment User Description:
UNIX/iSeries - User Profile text description
Windows - Windows User description 
</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="Domain" type="xs:string">
                <xs:annotation>
                    <xs:documentation>The domain where the user account is registered</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="FileCollectorType">
        <xs:sequence>
            <xs:element maxOccurs="unbounded" name="FileDetails">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="InforApplication" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>The originating Infor application that the file is part of</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="FileName" type="xs:string"/>
                        <xs:element minOccurs="0" name="FileDescription" type="xs:string"/>
                        <xs:element name="FilePath" type="xs:string"/>
                        <xs:element name="FileContent" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>This is a [!CDATA] container for the content of the file.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="HeaderType">
        <xs:sequence>
            <xs:element name="AgentPlatform" type="xs:string"/>
            <xs:element name="AgentVersion" type="xs:string"/>
            <xs:element name="CreatedTime" type="xs:dateTime"/>
            <xs:element name="CustomerID" type="xs:string"/>
            <xs:element name="CustomerName" type="xs:string"/>
            <xs:element name="CompanyID" type="xs:string"/>
            <xs:element name="CompanyDescription" type="xs:string"/>
            <xs:element name="ServerID" type="xs:string"/>
            <xs:element name="ServerName" type="xs:string"/>
            <xs:element name="ServerTimeZone" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="HostType">
        <xs:sequence>
            <xs:element name="OS" type="HostOSType"/>
            <xs:element minOccurs="0" name="BasicServer" type="BasicServerType"/>
            <xs:element minOccurs="0" name="DetailServer" type="DetailedServerType"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="HostOSType">
        <xs:sequence>
            <xs:element name="OSName" type="xs:string"/>
            <xs:element name="Version" type="xs:string"/>
            <xs:element name="Type" type="xs:string"/>
            <xs:element minOccurs="0" name="ServicePack" type="xs:string"/>
            <xs:element minOccurs="0" name="PTFRecords">
                <xs:annotation>
                    <xs:documentation>system-i Program Temporary Fix applied to system.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element maxOccurs="unbounded" name="PTFRecord">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="SystemLicensedProgram" type="xs:string"/>
                                    <xs:element name="SystemReleaseDate" type="xs:string"/>
                                    <xs:element name="Library" type="xs:string"/>
                                    <xs:element name="LicPgm" type="xs:string"/>
                                    <xs:element name="PTF" type="xs:string"/>
                                    <xs:element name="PTFStatus" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="Locale" type="xs:string">
                <xs:annotation>
                    <xs:documentation>system-i use QLOCALE</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="CodedCharacterSet" type="xs:string">
                <xs:annotation>
                    <xs:documentation>system-i QCCSID</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="GraphicCharacterSetAndCodePage">
                <xs:annotation>
                    <xs:documentation>system-i QCHRID</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="CharacterID" type="xs:string"/>
                        <xs:element name="CodePage" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="CountryRegionIdentifier" type="xs:string">
                <xs:annotation>
                    <xs:documentation>system-i QCNTRYID</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="LanguageIdentifier" type="xs:string">
                <xs:annotation>
                    <xs:documentation>system-i QLANGID</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="JobType">
        <xs:sequence>
            <xs:element name="JobName" type="xs:string"/>
            <xs:element name="JobDescription" type="xs:string"/>
            <xs:element name="JobLibrary" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="LogFilesType">
        <xs:sequence>
            <xs:element maxOccurs="unbounded" name="LogFile">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="LogType" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>Type of Log file - i.e. what is being logged</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="LogPath" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>Full path to the logfile including the log name</xs:documentation>
                                <xs:documentation>if you roll log-files over like the Apache logs, you can put in a wild-card extension.  

Example Apache

/var/log/apache2/access.log*

access.log  = current
access.log.1.gz = old
access.log.2.gz = old</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="NamedUserType">
        <xs:annotation>
            <xs:documentation>Type Definition for data collection of Named User Data</xs:documentation>
        </xs:annotation>
        <xs:sequence maxOccurs="unbounded">
            <xs:element name="NamedUser">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="EnvironmentUser" type="EnvironmentUserType" minOccurs="0">
                            <xs:annotation>
                                <xs:documentation>For systems that have different operating system users than applicaiton user. </xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="ApplicationUser" type="ApplicationUserType">
                            <xs:annotation>
                                <xs:documentation>The user that connect to the Infor system.  </xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="Enabled" type="xs:string">
                            <xs:annotation>
                                <xs:documentation>Is the user enabled to use the application.
Are there any restrictions elsewhere in the application which would prevent the user being considered "Enabled"</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="LastLogon" type="xs:dateTime">
                            <xs:annotation>
                                <xs:documentation>Timestamp for the last time user accessed the application</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="PerformanceMonitorType">
        <xs:sequence>
            <xs:element name="Counters" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="CapturedDateTime" type="xs:dateTime"/>
                        <xs:element maxOccurs="unbounded" name="Counter">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="Name" type="xs:string"/>
                                    <xs:element name="Value" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="PermissionsType">
        <xs:sequence>
            <xs:element maxOccurs="unbounded" name="Permission" type="xs:string">
                <xs:annotation>
                    <xs:documentation>User application permissions:
+Application Level Access (if applicable)
+Module Level Access (if applicable)
+Program Level Access (if applicable) </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ProductType" mixed="true">
        <xs:sequence>
            <xs:element name="Product" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="ProductName" type="xs:string"/>
                        <xs:element name="ApplicationFunction" type="xs:string"/>
                        <xs:element name="DataCollectorVersion" type="xs:string"/>
                        <xs:choice>
                            <xs:element name="Host" type="HostType"/>
                            <xs:element name="WebServer" type="WebServerType" minOccurs="1"/>
                            <xs:element name="PerformanceMonitor" type="PerformanceMonitorType"
                                minOccurs="1"/>
                            <xs:element name="Files" type="FileCollectorType" minOccurs="1"/>
                            <xs:element name="ApplicationServer" type="ApplicationServerType"
                                minOccurs="1"/>
                            <xs:element name="Application" type="ApplicationType" minOccurs="1"/>
                            <xs:element name="DataBaseServer" minOccurs="1">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element maxOccurs="unbounded" name="DataBase"
                                            type="DatabaseType"/>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="NamedUsers" type="NamedUserType" minOccurs="1"/>
                            <xs:element name="ConcurrentUsers" type="ConcurrentUserType"
                                minOccurs="1"/>
                            <xs:element name="SessionEvents" type="TrueUpEventType"/>
                            <xs:element name="SecurityUpdates" type="SecurityUpdateType"
                                minOccurs="1"/>
                        </xs:choice>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="SecurityUpdateType">
        <xs:sequence maxOccurs="unbounded">
            <xs:element name="NamedUser" type="UserActionType"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ThreadResourcesType">
        <xs:sequence>
            <xs:element name="ThreadResourcesAffinityGroup" type="xs:string"/>
            <xs:element name="ThreadResourcesAffinityLevel" type="xs:string"/>

        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TrueUpEventType">
        <xs:sequence maxOccurs="unbounded">
            <xs:element name="SessionEvent">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element ref="TimeStamp"/>
                        <xs:element ref="FunctionalityAccessed">
                            <xs:annotation>
                                <xs:documentation>For ERP LN this is the equivelent of session</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element ref="Event"/>
                        <xs:element name="ApplicationUser" type="ApplicationUserType"/>
                        <xs:element ref="DeviceID"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="UserActionType">
        <xs:sequence>
            <xs:element ref="TimeStamp"/>
            <xs:element minOccurs="0" name="EnvironmentUser" type="EnvironmentUserType"/>
            <xs:element name="ApplicationUser" type="ApplicationUserType"/>
            <xs:element ref="Event">
                <xs:annotation>
                    <xs:documentation>Enumerated element which indicates the action being shown for the user, e.g. Logon, Logoff (see enumations).</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" ref="DeviceID">
                <xs:annotation>
                    <xs:documentation>Optional - should only be used for the following ActionTypes:
Logon
Logoff
SessionTimeOut</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="ProcessID" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Optional - should only be used with the following ActionTypes:
Logon
Logoff
SessionTimeOut</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="SessionID" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Optional - should only be used with the following ActionTypes:
Logon
Logoff
SessionTimeOut</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" ref="FunctionalityAccessed">
                <xs:annotation>
                    <xs:documentation>Optional - should only be used with following ActionTypes:
Logon
KeepAlive</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="PermissionChange" type="PermissionsType">
                <xs:annotation>
                    <xs:documentation>Optional - should only be used with the following ActionTypes:
ModifyUser</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="WebServerType">
        <xs:sequence>
            <xs:element name="WebServerName" type="xs:string"/>
            <xs:element name="WebServerVersion" type="xs:string"/>
            <xs:element name="SSLEnabled" type="xs:string"/>
            <xs:element minOccurs="0" name="WebServerConfig" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:element name="FunctionalityAccessed" type="xs:string"/>
    <xs:element name="TimeStamp" type="xs:dateTime"/>
    <xs:element name="Event">
        <xs:annotation>
            <xs:documentation>Enumerated element which indicates the action being shown for the user, e.g. Logon, Logoff (see enumations).</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
            <xs:restriction base="xs:string">
                <xs:enumeration value="Logon"/>
                <xs:enumeration value="START"/>
                <xs:enumeration value="Logoff"/>
                <xs:enumeration value="EXIT"/>
                <xs:enumeration value="SessionTimeOut"/>
                <xs:enumeration value="RemoveUser"/>
                <xs:enumeration value="AddUser"/>
                <xs:enumeration value="ModifyUser"/>
                <xs:enumeration value="KeepAlive"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:element>
    <xs:element name="DeviceID" type="xs:string">
        <xs:annotation>
            <xs:documentation>Optional - should only be used for the following ActionTypes:
Logon
Logoff
SessionTimeOut</xs:documentation>
        </xs:annotation>
    </xs:element>
</xs:schema>
