You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Peter Klotz <pk...@iconet.wn.bawue.de> on 2002/10/25 09:50:14 UTC

REPOST3: WSDL2Java produces uncompilable code

Hi,

please help somebody, this is already the 3rd repost without any answer
and I'm lost. I'm using the last release version 1.0 of Axis not CVS. I 
also tried it with beta3 and RC1 but always the same result.

I have a given document-oriented WSDL file and want to generate client 
stubs and server skeletons for it.
The problem is that for whatever reason wsdl2java does
not generate code for some types defined in the WSDL.

I've browsed the list and tried options without success. Esp. I have
specified -all.

Please sse attached WSDL files, which is a bit long.
Problems are e.g. no class for ObjectName is generated although its type
definition is exactly the same as for DisplayName. Strange that 
references to non-existing ObjectName_Type and ObjectName_ElemType are 
generated that should be ObjectName instead.
No code is generated for all request and response objects such as
NotificationSet, NotificationAvailability, GetNotifications.
The document is not rpc type but document and uses complex types and
contents but still that should work and sometimes does, but not always.
I'm not getting exceptions during generation.

The build.xml snipplet is:

<taskdef name="wsdl2java"
           classname="org.apache.axis.tools.ant.wsdl.Wsdl2javaAntTask"
           classpathref="itm.classpath.tools"/>
<target name="itm_gen_omi" description="generate OMI client stubs and
          server skeleton">
   <echo message="Generating OMI client and server classes..."/>
   <mkdir dir="${itm.dir.build}/gensrc"/>
   <wsdl2java url="${itm.dir.source}/com/bes/itm/comp/omi/OMI.wsdl"
              output="${itm.dir.build}/gensrc" serverSide="yes"
              skeletonDeploy="yes" typeMappingVersion="1.1" helperGen="no"
              verbose="yes" all="yes" deployScope="session"
              noWrapped="yes" noImports="yes">
      <mapping namespace="urn:omi-org:api"
               package="com.bes.itm.comp.omi.api"/>
    </wsdl2java>
</target>
<target name="itm_java_omi" description="compile OMI client stubs and
          server skeleton">
    <echo message="Compiling generated OMI Java..."/>
    <javac destdir="${itm.dir.build}/classes"
           classpathref="itm.classpath.external" debug="on">
      <src path="${itm.dir.build}/gensrc"/>
    </javac>
</target>


Thanks for any help,

Peter



<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Peter (None) -->
<definitions name="OMI" targetNamespace="urn:omi-org:api"
xmlns="http://schemas.xmlsoap.org/wsdl/"
               xmlns:omi="urn:omi-org:api"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
      <documentation>WSDL Service Interface for OMI API V1.0. This WSDL
                 document defines the API calls for interacting with
             the OMI Web Service.
   </documentation>
      <types>
          <xsd:schema targetNamespace="urn:omi-org:api"
xmlns="urn:omi-org:api" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                      elementFormDefault="qualified"
attributeFormDefault="unqualified">
              <xsd:annotation>
                  <xsd:documentation xml:lang="en">OMI Version 1.0 API
schema</xsd:documentation>
              </xsd:annotation>
              <xsd:attribute name="name" type="xsd:string"/>
              <xsd:attribute name="lang" type="xsd:string"/>
              <xsd:attribute name="errorNumber" type="xsd:string"/>
              <xsd:simpleType name="mode1">
                  <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="inclusive"/>
                      <xsd:enumeration value="exclusive"/>
                  </xsd:restriction>
              </xsd:simpleType>
              <xsd:element name="mode1" type="mode1"/>
              <xsd:simpleType name="mode2">
                  <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="poll"/>
                      <xsd:enumeration value="wait"/>
                  </xsd:restriction>
              </xsd:simpleType>
              <xsd:element name="mode2" type="mode2"/>
              <xsd:simpleType name="access1">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="access1" type="access1"/>
              <xsd:simpleType name="operationResultType">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="operationResultType"
type="operationResultType"/>
              <xsd:simpleType name="description">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="description" type="description"/>
              <xsd:simpleType name="displayName">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="displayName" type="displayName"/>
              <xsd:simpleType name="tag-value">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:complexType name="operationParam">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="name" type="xsd:string"/>
                          <xsd:attribute name="type" type="xsd:string"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="operationParam" type="operationParam"/>
              <xsd:simpleType name="omi-severity">
                  <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="critical"/>
                      <xsd:enumeration value="major"/>
                      <xsd:enumeration value="minor"/>
                      <xsd:enumeration value="warning"/>
                      <xsd:enumeration value="info"/>
                      <xsd:enumeration value="ok"/>
                      <xsd:enumeration value="indeterminate"/>
                  </xsd:restriction>
              </xsd:simpleType>
              <xsd:simpleType name="lastSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="lastSerial" type="lastSerial"/>
              <xsd:simpleType name="nextSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="nextSerial" type="nextSerial"/>
              <xsd:simpleType name="firstSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="firstSerial" type="firstSerial"/>
              <xsd:simpleType name="startSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="startSerial" type="startSerial"/>
              <xsd:simpleType name="endSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="endSerial" type="endSerial"/>
              <xsd:complexType name="metric">
                  <xsd:attribute name="metricType" type="xsd:string"
use="required"/>
                  <xsd:attribute name="unit" type="xsd:string"
use="optional"/>
              </xsd:complexType>
              <xsd:element name="metric" type="metric"/>
              <xsd:complexType name="omiSuccess">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="omiSuccess" type="omiSuccess"/>
              <xsd:complexType name="getRootObject">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="getRootObject" type="getRootObject"/>
              <xsd:simpleType name="sourceObject">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="sourceObject" type="sourceObject"/>
              <xsd:simpleType name="objectName">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="objectName" type="objectName"/>
              <xsd:complexType name="getObjectDescription">
                  <xsd:sequence>
                      <xsd:element ref="objectName" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="getObjectDescription"
type="getObjectDescription"/>
              <xsd:complexType name="attributeInfo">
                  <xsd:sequence>
                      <xsd:element ref="description" minOccurs="0"/>
                      <xsd:element ref="displayName" minOccurs="0"/>
                      <xsd:element name="type" type="xsd:string"/>
                      <xsd:element name="metric" type="metric"
minOccurs="0"/>
                  </xsd:sequence>
                  <xsd:attribute name="name" type="xsd:string"
use="required"/>
                  <xsd:attribute name="dataType" type="xsd:string"
use="optional"/>
                  <xsd:attribute name="access" type="access1"
use="optional"/>
              </xsd:complexType>
              <xsd:element name="attributeInfo" type="attributeInfo"/>
              <xsd:complexType name="operationParamType">
                  <xsd:sequence>
                      <xsd:element ref="description" type="xsd:string"
minOccurs="0"/>
                      <xsd:element ref="displayName" type="xsd:string"
minOccurs="0"/>
                  </xsd:sequence>
                  <xsd:attribute ref="name" type="xsd:string"
use="required"/>
                  <xsd:attribute ref="dataType" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="operationParamType"
type="operationParamType"/>
              <xsd:complexType name="operationInfo">
                  <xsd:sequence>
                      <xsd:element ref="displayName" type="xsd:string"
minOccurs="0"/>
                      <xsd:element ref="description" type="xsd:string"
minOccurs="0"/>
                      <xsd:element ref="operationResultType"
type="xsd:string" minOccurs="0"/>
                      <xsd:element name="operationParamType"
type="operationParamType" minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute ref="name" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="operationInfo" type="operationInfo"/>
              <xsd:complexType name="notificationInfo">
                  <xsd:sequence>
                      <xsd:element name="type" type="xsd:string"
minOccurs="0"/>
                      <xsd:element name="description" type="xsd:string"
minOccurs="0"/>
                      <xsd:element name="displayName" type="xsd:string"
minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notificationInfo" type="notificationInfo"/>
              <xsd:complexType name="objectDescription">
                  <xsd:sequence>
                      <xsd:element ref="description" minOccurs="0"/>
                      <xsd:element ref="displayName" minOccurs="0"/>
                      <xsd:element name="interface" type="xsd:string"
maxOccurs="unbounded"/>
                      <xsd:element name="attributeInfo"
type="attributeInfo" maxOccurs="unbounded"/>
                      <xsd:element name="operationInfo"
type="operationInfo" maxOccurs="unbounded"/>
                      <xsd:element name="notificationInfo"
type="notificationInfo" maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="object" type="xsd:string"
use="required"/>
                  <xsd:attribute name="lang" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="objectDescription"
type="objectDescription"/>
              <xsd:complexType name="objectDescriptionSet">
                  <xsd:sequence>
                      <xsd:element ref="objectDescription" minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="objectDescriptionSet"
type="objectDescriptionSet"/>
              <xsd:complexType name="getObjectRelations">
                  <xsd:sequence>
                      <xsd:element ref="objectName" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:complexType name="role">
                  <xsd:sequence>
                      <xsd:element name="objectName" type="objectName"
maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="relType" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="getObjectRelations"
type="getObjectRelations"/>
              <xsd:complexType name="relation">
                  <xsd:sequence>
                      <xsd:element name="role" type="role" minOccurs="0"
maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="relId" type="xsd:string"
use="required"/>
                  <xsd:attribute name="relType" type="xsd:string"
use="optional"/>
              </xsd:complexType>
              <xsd:complexType name="objectRelations">
                  <xsd:sequence>
                      <xsd:element name="relation" type="relation"
minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="object" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="objectRelations" type="objectRelations"/>
              <xsd:complexType name="invokeOperation">
                  <xsd:sequence>
                      <xsd:element ref="objectName"/>
                      <xsd:element name="operation" type="xsd:string"/>
                      <xsd:element ref="operationParam" minOccurs="0"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="invokeOperation" type="invokeOperation"/>
              <xsd:simpleType name="operationResult">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="operationResult" type="operationResult"/>
              <xsd:complexType name="attributeNames">
                  <xsd:sequence>
                      <xsd:element ref="objectName" maxOccurs="unbounded"/>
                      <xsd:element name="attributeName" type="xsd:string"
minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="attributeNames" type="attributeNames"/>
              <xsd:complexType name="getAttributeValues">
                  <xsd:sequence>
                      <xsd:element ref="attributeNames"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="getAttributeValues"
type="getAttributeValues"/>
              <xsd:complexType name="attributeValue">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute ref="name" type="xsd:string"
use="required"/>
                          <xsd:attribute ref="lang" type="xsd:string"
use="optional"/>
                          <xsd:attribute ref="errorNumber"
type="xsd:string" use="optional"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="attributeValue" type="attributeValue"/>
              <xsd:complexType name="attributeValues">
                  <xsd:sequence>
                      <xsd:element ref="objectName" minOccurs="0"/>
                      <xsd:element name="attributeValue"
type="attributeValue" use="optional" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="attributeValues" type="attributeValues"/>
              <xsd:complexType name="setAttributeValues">
                  <xsd:sequence>
                      <xsd:element ref="attributeValues"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="setAttributeValues"
type="setAttributeValues"/>
              <xsd:complexType name="attributeValuesSet">
                  <xsd:sequence>
                      <xsd:element ref="attributeValues" minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="attributeValuesSet"
type="attributeValuesSet"/>
              <xsd:complexType name="notificationInterest">
                  <xsd:sequence>
                      <xsd:element ref="objectName" type="objectName"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                  </xsd:sequence>
                  <xsd:attribute name="mode" type="mode1" use="required"/>
              </xsd:complexType>
              <xsd:element name="notificationInterest"
type="notificationInterest"/>
              <xsd:complexType name="registerNotificationInterest">
                  <xsd:sequence>
                      <xsd:element ref="notificationInterest"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="registerNotificationInterest"
type="registerNotificationInterest"/>
              <xsd:complexType name="cancelNotificationInterest">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="cancelNotificationInterest"
type="cancelNotificationInterest"/>
              <xsd:complexType name="getNotificationInterest">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="getNotificationInterest"
type="getNotificationInterest"/>
              <xsd:complexType name="getNotificationAvailability">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="getNotificationAvailability"
type="getNotificationAvailability"/>
              <xsd:complexType name="notificationAvailability">
                  <xsd:sequence>
                      <xsd:element ref="lastSerial"/>
                      <xsd:element ref="firstSerial"/>
                      <xsd:element ref="nextSerial"/>
                      <xsd:element name="lastTime" type="xsd:dateTime"/>
                      <xsd:element name="firstTime" type="xsd:dateTime"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notificationAvailability"
type="notificationAvailability"/>
              <xsd:complexType name="getNotifications">
                  <xsd:sequence>
                      <xsd:element name="startTime" type="xsd:dateTime"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element name="endTime" type="xsd:dateTime"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element name="startSerial" type="xsd:long"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element name="endSerial" type="xsd:long"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element ref="maxBatch" type="xsd:long"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                  </xsd:sequence>
                  <xsd:attribute name="mode" type="mode2" use="required"/>
              </xsd:complexType>
              <xsd:element name="getNotifications" type="getNotifications"/>
              <xsd:complexType name="resourceTag">
                  <xsd:simpleContent>
                      <xsd:extension base="tag-value">
                          <xsd:attribute name="key" type="xsd:string"
use="required"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="resourceTag" type="resourceTag"/>
              <xsd:complexType name="correctiveMessage">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="msgId" type="xsd:string"
use="required"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="correctiveMessage"
type="correctiveMessage"/>
              <xsd:complexType name="message">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="lang" type="xsd:string"
use="optional"/>
                          <xsd:attribute name="msgId" type="xsd:string"
use="optional"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="message" type="message"/>
              <xsd:complexType name="notification">
                  <xsd:sequence>
                      <xsd:element ref="sourceObject" type="sourceObject"/>
                      <xsd:element ref="type" type="xsd:string"/>
                      <xsd:element ref="severity" type="omi-severity"/>
                      <xsd:element ref="serial" type="xsd:long"/>
                      <xsd:element ref="timeStamp" type="xsd:dateTime"/>
                      <xsd:element ref="hostName" type="xsd:string"/>
                      <xsd:element ref="interface" type="xsd:string"/>
                      <xsd:element ref="origObject" type="xsd:string"
use="optional"/>
                      <xsd:element name="resourceTag" type="xsd:string"
use="optional" minOccurs="0" maxOccurs="unbounded"/>
                      <xsd:element ref="correctiveMessage"
type="xsd:string" use="optional"/>
                      <xsd:element name="message" type="message"
use="optional" minOccurs="0" maxOccurs="unbounded"/>
                      <xsd:element ref="detail" type="notedetail"
use="optional"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:complexType name="notedetail">
                  <xsd:sequence>
                      <xsd:element name="serviceException"
type="serviceException" use="optional"/>
                      <xsd:element ref="relation" type="relation"
use="optional"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:complexType name="serviceException">
                  <xsd:sequence>
                      <xsd:element ref="user" type="xsd:string"
use="optional"/>
                      <xsd:element ref="sessionId" type="xsd:string"
use="optional"/>
                      <xsd:element ref="message" type="xsd:string"
use="optional"/>
                      <xsd:element ref="ServiceName" type="xsd:string"
use="optional"/>
                      <xsd:element ref="errorDump" type="xsd:string"
use="optional"/>
                      <xsd:element ref="relation" type="relation"
use="optional"/>
                      <xsd:element ref="objectName" type="xsd:string"
use="optional"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notification" type="notification"/>
              <xsd:complexType name="notificationSet">
                  <xsd:sequence>
                      <xsd:element name="notification"
type="notification" minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notificationSet" type="notificationSet"/>
              <xsd:complexType name="registerNotificationListener">
                  <xsd:sequence>
                      <xsd:element name="listener" type="xsd:string"/>
                      <xsd:element ref="startSerial"/>
                      <xsd:element name="maxBatch" type="xsd:long"
minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="registerNotificationListener"
type="registerNotificationListener"/>
              <xsd:complexType name="msg">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="id" type="xsd:string"
use="optional"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="msg" type="msg"/>
              <xsd:complexType name="error">
                  <xsd:sequence>
                      <xsd:element name="message" type="msg"/>
                      <xsd:element name="detail" type="xsd:long"
minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="error" type="error"/>
              <xsd:complexType name="omiError">
                  <xsd:sequence>
                      <xsd:element name="error" type="error"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="omiError" type="omiError"/>
          </xsd:schema>
      </types>
      <message name="getRootObjectInput">
          <part name="body" element="omi:getRootObject"/>
      </message>
      <message name="getRootObjectOutput">
          <part name="body" element="omi:objectName"/>
      </message>
      <message name="getObjectDescriptionInput">
          <part name="body" element="omi:getObjectDescription"/>
      </message>
      <message name="getObjectDescriptionOutput">
          <part name="body" element="omi:objectDescriptionSet"/>
      </message>
      <message name="getObjectRelationsInput">
          <part name="body" element="omi:getObjectRelations"/>
      </message>
      <message name="getObjectRelationsOutput">
          <part name="body" element="omi:objectRelations"/>
      </message>
      <message name="invokeOperationInput">
          <part name="body" element="omi:invokeOperation"/>
      </message>
      <message name="invokeOperationOutput">
          <part name="body" element="omi:operationResult"/>
      </message>
      <message name="getAttributeValuesInput">
          <part name="body" element="omi:getAttributeValues"/>
      </message>
      <message name="getAttributeValuesOutput">
          <part name="body" element="omi:attributeValuesSet"/>
      </message>
      <message name="setAttributeValuesInput">
          <part name="body" element="omi:setAttributeValues"/>
      </message>
      <message name="setAttributeValuesOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="registerNotificationInterestInput">
          <part name="body" element="omi:registerNotificationInterest"/>
      </message>
      <message name="registerNotificationInterestOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="cancelNotificationInterestInput">
          <part name="body" element="omi:cancelNotificationInterest"/>
      </message>
      <message name="cancelNotificationInterestOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="getNotificationInterestInput">
          <part name="body" element="omi:getNotificationInterest"/>
      </message>
      <message name="getNotificationInterestOutput">
          <part name="body" element="omi:notificationInterest"/>
      </message>
      <message name="getNotificationAvailabilityInput">
          <part name="body" element="omi:getNotificationAvailability"/>
      </message>
      <message name="getNotificationAvailabilityOutput">
          <part name="body" element="omi:notificationAvailability"/>
      </message>
      <message name="getNotificationsInput">
          <part name="body" element="omi:getNotifications"/>
      </message>
      <message name="getNotificationsOutput">
          <part name="body" element="omi:notificationSet"/>
      </message>
      <message name="registerNotificationListenerInput">
          <part name="body" element="omi:registerNotificationListener"/>
      </message>
      <message name="registerNotificationListenerOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="omiErrorMsg">
          <part name="body" element="omi:omiError"/>
      </message>
      <portType name="OMIPortType">
          <operation name="getRootObject">
              <input message="omi:getRootObjectInput"/>
              <output message="omi:getRootObjectOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getObjectDescription">
              <input message="omi:getObjectDescriptionInput"/>
              <output message="omi:getObjectDescriptionOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getObjectRelations">
              <input message="omi:getObjectRelationsInput"/>
              <output message="omi:getObjectRelationsOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="invokeOperation">
              <input message="omi:invokeOperationInput"/>
              <output message="omi:invokeOperationOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getAttributeValues">
              <input message="omi:getAttributeValuesInput"/>
              <output message="omi:getAttributeValuesOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="setAttributeValues">
              <input message="omi:setAttributeValuesInput"/>
              <output message="omi:setAttributeValuesOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="registerNotificationInterest">
              <input message="omi:registerNotificationInterestInput"/>
              <output message="omi:registerNotificationInterestOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="cancelNotificationInterest">
              <input message="omi:cancelNotificationInterestInput"/>
              <output message="omi:cancelNotificationInterestOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getNotificationInterest">
              <input message="omi:getNotificationInterestInput"/>
              <output message="omi:getNotificationInterestOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getNotificationAvailability">
              <input message="omi:getNotificationAvailabilityInput"/>
              <output message="omi:getNotificationAvailabilityOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getNotifications">
              <input message="omi:getNotificationsInput"/>
              <output message="omi:getNotificationsOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="registerNotificationListener">
              <input message="omi:registerNotificationListenerInput"/>
              <output message="omi:registerNotificationListenerOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
      </portType>
      <binding name="OMISoapBinding" type="omi:OMIPortType">
          <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
          <operation name="getRootObject">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getObjectDescription">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getObjectRelations">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="invokeOperation">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getAttributeValues">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="setAttributeValues">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="registerNotificationInterest">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="cancelNotificationInterest">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getNotificationInterest">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getNotificationAvailability">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getNotifications">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="registerNotificationListener">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
      </binding>
      <service name="OMIService">
          <documentation>OMI Web Service</documentation>
          <port name="OMIBindingPort" binding="omi:OMISoapBinding">
              <soap:address location="http://levma03_dt:5555/soap/omi"/>
          </port>
      </service>
</definitions>



<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Peter (None) -->
<definitions name="OMI" targetNamespace="urn:omi-org:api"
xmlns="http://schemas.xmlsoap.org/wsdl/"
               xmlns:omi="urn:omi-org:api"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
      <documentation>WSDL Service Interface for OMI API V1.0. This WSDL
                 document defines the API calls for interacting with
             the OMI Web Service.
   </documentation>
      <types>
          <xsd:schema targetNamespace="urn:omi-org:api"
xmlns="urn:omi-org:api" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                      elementFormDefault="qualified"
attributeFormDefault="unqualified">
              <xsd:annotation>
                  <xsd:documentation xml:lang="en">OMI Version 1.0 API
schema</xsd:documentation>
              </xsd:annotation>
              <xsd:attribute name="name" type="xsd:string"/>
              <xsd:attribute name="lang" type="xsd:string"/>
              <xsd:attribute name="errorNumber" type="xsd:string"/>
              <xsd:simpleType name="mode1">
                  <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="inclusive"/>
                      <xsd:enumeration value="exclusive"/>
                  </xsd:restriction>
              </xsd:simpleType>
              <xsd:element name="mode1" type="mode1"/>
              <xsd:simpleType name="mode2">
                  <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="poll"/>
                      <xsd:enumeration value="wait"/>
                  </xsd:restriction>
              </xsd:simpleType>
              <xsd:element name="mode2" type="mode2"/>
              <xsd:simpleType name="access1">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="access1" type="access1"/>
              <xsd:simpleType name="operationResultType">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="operationResultType"
type="operationResultType"/>
              <xsd:simpleType name="description">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="description" type="description"/>
              <xsd:simpleType name="displayName">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="displayName" type="displayName"/>
              <xsd:simpleType name="tag-value">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:complexType name="operationParam">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="name" type="xsd:string"/>
                          <xsd:attribute name="type" type="xsd:string"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="operationParam" type="operationParam"/>
              <xsd:simpleType name="omi-severity">
                  <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="critical"/>
                      <xsd:enumeration value="major"/>
                      <xsd:enumeration value="minor"/>
                      <xsd:enumeration value="warning"/>
                      <xsd:enumeration value="info"/>
                      <xsd:enumeration value="ok"/>
                      <xsd:enumeration value="indeterminate"/>
                  </xsd:restriction>
              </xsd:simpleType>
              <xsd:simpleType name="lastSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="lastSerial" type="lastSerial"/>
              <xsd:simpleType name="nextSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="nextSerial" type="nextSerial"/>
              <xsd:simpleType name="firstSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="firstSerial" type="firstSerial"/>
              <xsd:simpleType name="startSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="startSerial" type="startSerial"/>
              <xsd:simpleType name="endSerial">
                  <xsd:restriction base="xsd:long"/>
              </xsd:simpleType>
              <xsd:element name="endSerial" type="endSerial"/>
              <xsd:complexType name="metric">
                  <xsd:attribute name="metricType" type="xsd:string"
use="required"/>
                  <xsd:attribute name="unit" type="xsd:string"
use="optional"/>
              </xsd:complexType>
              <xsd:element name="metric" type="metric"/>
              <xsd:complexType name="omiSuccess">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="omiSuccess" type="omiSuccess"/>
              <xsd:complexType name="getRootObject">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="getRootObject" type="getRootObject"/>
              <xsd:simpleType name="sourceObject">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="sourceObject" type="sourceObject"/>
              <xsd:simpleType name="objectName">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="objectName" type="objectName"/>
              <xsd:complexType name="getObjectDescription">
                  <xsd:sequence>
                      <xsd:element ref="objectName" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="getObjectDescription"
type="getObjectDescription"/>
              <xsd:complexType name="attributeInfo">
                  <xsd:sequence>
                      <xsd:element ref="description" minOccurs="0"/>
                      <xsd:element ref="displayName" minOccurs="0"/>
                      <xsd:element name="type" type="xsd:string"/>
                      <xsd:element name="metric" type="metric"
minOccurs="0"/>
                  </xsd:sequence>
                  <xsd:attribute name="name" type="xsd:string"
use="required"/>
                  <xsd:attribute name="dataType" type="xsd:string"
use="optional"/>
                  <xsd:attribute name="access" type="access1"
use="optional"/>
              </xsd:complexType>
              <xsd:element name="attributeInfo" type="attributeInfo"/>
              <xsd:complexType name="operationParamType">
                  <xsd:sequence>
                      <xsd:element ref="description" type="xsd:string"
minOccurs="0"/>
                      <xsd:element ref="displayName" type="xsd:string"
minOccurs="0"/>
                  </xsd:sequence>
                  <xsd:attribute ref="name" type="xsd:string"
use="required"/>
                  <xsd:attribute ref="dataType" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="operationParamType"
type="operationParamType"/>
              <xsd:complexType name="operationInfo">
                  <xsd:sequence>
                      <xsd:element ref="displayName" type="xsd:string"
minOccurs="0"/>
                      <xsd:element ref="description" type="xsd:string"
minOccurs="0"/>
                      <xsd:element ref="operationResultType"
type="xsd:string" minOccurs="0"/>
                      <xsd:element name="operationParamType"
type="operationParamType" minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute ref="name" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="operationInfo" type="operationInfo"/>
              <xsd:complexType name="notificationInfo">
                  <xsd:sequence>
                      <xsd:element name="type" type="xsd:string"
minOccurs="0"/>
                      <xsd:element name="description" type="xsd:string"
minOccurs="0"/>
                      <xsd:element name="displayName" type="xsd:string"
minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notificationInfo" type="notificationInfo"/>
              <xsd:complexType name="objectDescription">
                  <xsd:sequence>
                      <xsd:element ref="description" minOccurs="0"/>
                      <xsd:element ref="displayName" minOccurs="0"/>
                      <xsd:element name="interface" type="xsd:string"
maxOccurs="unbounded"/>
                      <xsd:element name="attributeInfo"
type="attributeInfo" maxOccurs="unbounded"/>
                      <xsd:element name="operationInfo"
type="operationInfo" maxOccurs="unbounded"/>
                      <xsd:element name="notificationInfo"
type="notificationInfo" maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="object" type="xsd:string"
use="required"/>
                  <xsd:attribute name="lang" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="objectDescription"
type="objectDescription"/>
              <xsd:complexType name="objectDescriptionSet">
                  <xsd:sequence>
                      <xsd:element ref="objectDescription" minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="objectDescriptionSet"
type="objectDescriptionSet"/>
              <xsd:complexType name="getObjectRelations">
                  <xsd:sequence>
                      <xsd:element ref="objectName" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:complexType name="role">
                  <xsd:sequence>
                      <xsd:element name="objectName" type="objectName"
maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="relType" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="getObjectRelations"
type="getObjectRelations"/>
              <xsd:complexType name="relation">
                  <xsd:sequence>
                      <xsd:element name="role" type="role" minOccurs="0"
maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="relId" type="xsd:string"
use="required"/>
                  <xsd:attribute name="relType" type="xsd:string"
use="optional"/>
              </xsd:complexType>
              <xsd:complexType name="objectRelations">
                  <xsd:sequence>
                      <xsd:element name="relation" type="relation"
minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
                  <xsd:attribute name="object" type="xsd:string"
use="required"/>
              </xsd:complexType>
              <xsd:element name="objectRelations" type="objectRelations"/>
              <xsd:complexType name="invokeOperation">
                  <xsd:sequence>
                      <xsd:element ref="objectName"/>
                      <xsd:element name="operation" type="xsd:string"/>
                      <xsd:element ref="operationParam" minOccurs="0"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="invokeOperation" type="invokeOperation"/>
              <xsd:simpleType name="operationResult">
                  <xsd:restriction base="xsd:string"/>
              </xsd:simpleType>
              <xsd:element name="operationResult" type="operationResult"/>
              <xsd:complexType name="attributeNames">
                  <xsd:sequence>
                      <xsd:element ref="objectName" maxOccurs="unbounded"/>
                      <xsd:element name="attributeName" type="xsd:string"
minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="attributeNames" type="attributeNames"/>
              <xsd:complexType name="getAttributeValues">
                  <xsd:sequence>
                      <xsd:element ref="attributeNames"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="getAttributeValues"
type="getAttributeValues"/>
              <xsd:complexType name="attributeValue">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute ref="name" type="xsd:string"
use="required"/>
                          <xsd:attribute ref="lang" type="xsd:string"
use="optional"/>
                          <xsd:attribute ref="errorNumber"
type="xsd:string" use="optional"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="attributeValue" type="attributeValue"/>
              <xsd:complexType name="attributeValues">
                  <xsd:sequence>
                      <xsd:element ref="objectName" minOccurs="0"/>
                      <xsd:element name="attributeValue"
type="attributeValue" use="optional" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="attributeValues" type="attributeValues"/>
              <xsd:complexType name="setAttributeValues">
                  <xsd:sequence>
                      <xsd:element ref="attributeValues"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="setAttributeValues"
type="setAttributeValues"/>
              <xsd:complexType name="attributeValuesSet">
                  <xsd:sequence>
                      <xsd:element ref="attributeValues" minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="attributeValuesSet"
type="attributeValuesSet"/>
              <xsd:complexType name="notificationInterest">
                  <xsd:sequence>
                      <xsd:element ref="objectName" type="objectName"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                  </xsd:sequence>
                  <xsd:attribute name="mode" type="mode1" use="required"/>
              </xsd:complexType>
              <xsd:element name="notificationInterest"
type="notificationInterest"/>
              <xsd:complexType name="registerNotificationInterest">
                  <xsd:sequence>
                      <xsd:element ref="notificationInterest"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="registerNotificationInterest"
type="registerNotificationInterest"/>
              <xsd:complexType name="cancelNotificationInterest">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="cancelNotificationInterest"
type="cancelNotificationInterest"/>
              <xsd:complexType name="getNotificationInterest">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="getNotificationInterest"
type="getNotificationInterest"/>
              <xsd:complexType name="getNotificationAvailability">
                  <xsd:complexContent>
                      <xsd:restriction base="xsd:anyType"/>
                  </xsd:complexContent>
              </xsd:complexType>
              <xsd:element name="getNotificationAvailability"
type="getNotificationAvailability"/>
              <xsd:complexType name="notificationAvailability">
                  <xsd:sequence>
                      <xsd:element ref="lastSerial"/>
                      <xsd:element ref="firstSerial"/>
                      <xsd:element ref="nextSerial"/>
                      <xsd:element name="lastTime" type="xsd:dateTime"/>
                      <xsd:element name="firstTime" type="xsd:dateTime"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notificationAvailability"
type="notificationAvailability"/>
              <xsd:complexType name="getNotifications">
                  <xsd:sequence>
                      <xsd:element name="startTime" type="xsd:dateTime"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element name="endTime" type="xsd:dateTime"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element name="startSerial" type="xsd:long"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element name="endSerial" type="xsd:long"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                      <xsd:element ref="maxBatch" type="xsd:long"
minOccurs="0" maxOccurs="unbounded" use="optional"/>
                  </xsd:sequence>
                  <xsd:attribute name="mode" type="mode2" use="required"/>
              </xsd:complexType>
              <xsd:element name="getNotifications" type="getNotifications"/>
              <xsd:complexType name="resourceTag">
                  <xsd:simpleContent>
                      <xsd:extension base="tag-value">
                          <xsd:attribute name="key" type="xsd:string"
use="required"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="resourceTag" type="resourceTag"/>
              <xsd:complexType name="correctiveMessage">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="msgId" type="xsd:string"
use="required"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="correctiveMessage"
type="correctiveMessage"/>
              <xsd:complexType name="message">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="lang" type="xsd:string"
use="optional"/>
                          <xsd:attribute name="msgId" type="xsd:string"
use="optional"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="message" type="message"/>
              <xsd:complexType name="notification">
                  <xsd:sequence>
                      <xsd:element ref="sourceObject" type="sourceObject"/>
                      <xsd:element ref="type" type="xsd:string"/>
                      <xsd:element ref="severity" type="omi-severity"/>
                      <xsd:element ref="serial" type="xsd:long"/>
                      <xsd:element ref="timeStamp" type="xsd:dateTime"/>
                      <xsd:element ref="hostName" type="xsd:string"/>
                      <xsd:element ref="interface" type="xsd:string"/>
                      <xsd:element ref="origObject" type="xsd:string"
use="optional"/>
                      <xsd:element name="resourceTag" type="xsd:string"
use="optional" minOccurs="0" maxOccurs="unbounded"/>
                      <xsd:element ref="correctiveMessage"
type="xsd:string" use="optional"/>
                      <xsd:element name="message" type="message"
use="optional" minOccurs="0" maxOccurs="unbounded"/>
                      <xsd:element ref="detail" type="notedetail"
use="optional"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:complexType name="notedetail">
                  <xsd:sequence>
                      <xsd:element name="serviceException"
type="serviceException" use="optional"/>
                      <xsd:element ref="relation" type="relation"
use="optional"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:complexType name="serviceException">
                  <xsd:sequence>
                      <xsd:element ref="user" type="xsd:string"
use="optional"/>
                      <xsd:element ref="sessionId" type="xsd:string"
use="optional"/>
                      <xsd:element ref="message" type="xsd:string"
use="optional"/>
                      <xsd:element ref="ServiceName" type="xsd:string"
use="optional"/>
                      <xsd:element ref="errorDump" type="xsd:string"
use="optional"/>
                      <xsd:element ref="relation" type="relation"
use="optional"/>
                      <xsd:element ref="objectName" type="xsd:string"
use="optional"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notification" type="notification"/>
              <xsd:complexType name="notificationSet">
                  <xsd:sequence>
                      <xsd:element name="notification"
type="notification" minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="notificationSet" type="notificationSet"/>
              <xsd:complexType name="registerNotificationListener">
                  <xsd:sequence>
                      <xsd:element name="listener" type="xsd:string"/>
                      <xsd:element ref="startSerial"/>
                      <xsd:element name="maxBatch" type="xsd:long"
minOccurs="0"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="registerNotificationListener"
type="registerNotificationListener"/>
              <xsd:complexType name="msg">
                  <xsd:simpleContent>
                      <xsd:extension base="xsd:string">
                          <xsd:attribute name="id" type="xsd:string"
use="optional"/>
                      </xsd:extension>
                  </xsd:simpleContent>
              </xsd:complexType>
              <xsd:element name="msg" type="msg"/>
              <xsd:complexType name="error">
                  <xsd:sequence>
                      <xsd:element name="message" type="msg"/>
                      <xsd:element name="detail" type="xsd:long"
minOccurs="0" maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="error" type="error"/>
              <xsd:complexType name="omiError">
                  <xsd:sequence>
                      <xsd:element name="error" type="error"
maxOccurs="unbounded"/>
                  </xsd:sequence>
              </xsd:complexType>
              <xsd:element name="omiError" type="omiError"/>
          </xsd:schema>
      </types>
      <message name="getRootObjectInput">
          <part name="body" element="omi:getRootObject"/>
      </message>
      <message name="getRootObjectOutput">
          <part name="body" element="omi:objectName"/>
      </message>
      <message name="getObjectDescriptionInput">
          <part name="body" element="omi:getObjectDescription"/>
      </message>
      <message name="getObjectDescriptionOutput">
          <part name="body" element="omi:objectDescriptionSet"/>
      </message>
      <message name="getObjectRelationsInput">
          <part name="body" element="omi:getObjectRelations"/>
      </message>
      <message name="getObjectRelationsOutput">
          <part name="body" element="omi:objectRelations"/>
      </message>
      <message name="invokeOperationInput">
          <part name="body" element="omi:invokeOperation"/>
      </message>
      <message name="invokeOperationOutput">
          <part name="body" element="omi:operationResult"/>
      </message>
      <message name="getAttributeValuesInput">
          <part name="body" element="omi:getAttributeValues"/>
      </message>
      <message name="getAttributeValuesOutput">
          <part name="body" element="omi:attributeValuesSet"/>
      </message>
      <message name="setAttributeValuesInput">
          <part name="body" element="omi:setAttributeValues"/>
      </message>
      <message name="setAttributeValuesOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="registerNotificationInterestInput">
          <part name="body" element="omi:registerNotificationInterest"/>
      </message>
      <message name="registerNotificationInterestOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="cancelNotificationInterestInput">
          <part name="body" element="omi:cancelNotificationInterest"/>
      </message>
      <message name="cancelNotificationInterestOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="getNotificationInterestInput">
          <part name="body" element="omi:getNotificationInterest"/>
      </message>
      <message name="getNotificationInterestOutput">
          <part name="body" element="omi:notificationInterest"/>
      </message>
      <message name="getNotificationAvailabilityInput">
          <part name="body" element="omi:getNotificationAvailability"/>
      </message>
      <message name="getNotificationAvailabilityOutput">
          <part name="body" element="omi:notificationAvailability"/>
      </message>
      <message name="getNotificationsInput">
          <part name="body" element="omi:getNotifications"/>
      </message>
      <message name="getNotificationsOutput">
          <part name="body" element="omi:notificationSet"/>
      </message>
      <message name="registerNotificationListenerInput">
          <part name="body" element="omi:registerNotificationListener"/>
      </message>
      <message name="registerNotificationListenerOutput">
          <part name="body" element="omi:omiSuccess"/>
      </message>
      <message name="omiErrorMsg">
          <part name="body" element="omi:omiError"/>
      </message>
      <portType name="OMIPortType">
          <operation name="getRootObject">
              <input message="omi:getRootObjectInput"/>
              <output message="omi:getRootObjectOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getObjectDescription">
              <input message="omi:getObjectDescriptionInput"/>
              <output message="omi:getObjectDescriptionOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getObjectRelations">
              <input message="omi:getObjectRelationsInput"/>
              <output message="omi:getObjectRelationsOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="invokeOperation">
              <input message="omi:invokeOperationInput"/>
              <output message="omi:invokeOperationOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getAttributeValues">
              <input message="omi:getAttributeValuesInput"/>
              <output message="omi:getAttributeValuesOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="setAttributeValues">
              <input message="omi:setAttributeValuesInput"/>
              <output message="omi:setAttributeValuesOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="registerNotificationInterest">
              <input message="omi:registerNotificationInterestInput"/>
              <output message="omi:registerNotificationInterestOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="cancelNotificationInterest">
              <input message="omi:cancelNotificationInterestInput"/>
              <output message="omi:cancelNotificationInterestOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getNotificationInterest">
              <input message="omi:getNotificationInterestInput"/>
              <output message="omi:getNotificationInterestOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getNotificationAvailability">
              <input message="omi:getNotificationAvailabilityInput"/>
              <output message="omi:getNotificationAvailabilityOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="getNotifications">
              <input message="omi:getNotificationsInput"/>
              <output message="omi:getNotificationsOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
          <operation name="registerNotificationListener">
              <input message="omi:registerNotificationListenerInput"/>
              <output message="omi:registerNotificationListenerOutput"/>
              <fault name="error" message="omi:omiErrorMsg"/>
          </operation>
      </portType>
      <binding name="OMISoapBinding" type="omi:OMIPortType">
          <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
          <operation name="getRootObject">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getObjectDescription">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getObjectRelations">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="invokeOperation">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getAttributeValues">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="setAttributeValues">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="registerNotificationInterest">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="cancelNotificationInterest">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getNotificationInterest">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getNotificationAvailability">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="getNotifications">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
          <operation name="registerNotificationListener">
              <soap:operation soapAction="OMI"/>
              <input>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
                  <soap:header element="omi:omiHeader"/>
              </input>
              <output>
                  <soap:body parts="body" use="literal"
namespace="urn:omi-org:api"/>
              </output>
              <fault name="error">
                  <soap:fault namespace="urn:omi-org:api"/>
              </fault>
          </operation>
      </binding>
      <service name="OMIService">
          <documentation>OMI Web Service</documentation>
          <port name="OMIBindingPort" binding="omi:OMISoapBinding">
              <soap:address location="http://levma03_dt:5555/soap/omi"/>
          </port>
      </service>
</definitions>



<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Peter (None) -->
<definitions name="OMI" targetNamespace="urn:omi-org:api"
xmlns="http://schemas.xmlsoap.org/wsdl/"
               xmlns:omi="urn:omi-org:api"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
	<documentation>WSDL Service Interface for OMI API V1.0. This WSDL
                 document defines the API calls for interacting with
	       the OMI Web Service.
   </documentation>
	<types>
		<xsd:schema targetNamespace="urn:omi-org:api" xmlns="urn:omi-org:api"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                      elementFormDefault="qualified"
attributeFormDefault="unqualified">
			<xsd:annotation>
				<xsd:documentation xml:lang="en">OMI Version 1.0 API schema</xsd:documentation>
			</xsd:annotation>
			<xsd:attribute name="name" type="xsd:string"/>
			<xsd:attribute name="lang" type="xsd:string"/>
			<xsd:attribute name="errorNumber" type="xsd:string"/>
			<xsd:simpleType name="mode1">
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="inclusive"/>
					<xsd:enumeration value="exclusive"/>
				</xsd:restriction>
			</xsd:simpleType>
			<xsd:element name="mode1" type="mode1"/>
			<xsd:simpleType name="mode2">
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="poll"/>
					<xsd:enumeration value="wait"/>
				</xsd:restriction>
			</xsd:simpleType>
			<xsd:element name="mode2" type="mode2"/>
			<xsd:simpleType name="access1">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="access1" type="access1"/>
			<xsd:simpleType name="operationResultType">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="operationResultType" type="operationResultType"/>
			<xsd:simpleType name="description">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="description" type="description"/>
			<xsd:simpleType name="displayName">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="displayName" type="displayName"/>
			<xsd:simpleType name="tag-value">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:complexType name="operationParam">
				<xsd:simpleContent>
					<xsd:extension base="xsd:string">
						<xsd:attribute name="name" type="xsd:string"/>
						<xsd:attribute name="type" type="xsd:string"/>
					</xsd:extension>
				</xsd:simpleContent>
			</xsd:complexType>
			<xsd:element name="operationParam" type="operationParam"/>
			<xsd:simpleType name="omi-severity">
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="critical"/>
					<xsd:enumeration value="major"/>
					<xsd:enumeration value="minor"/>
					<xsd:enumeration value="warning"/>
					<xsd:enumeration value="info"/>
					<xsd:enumeration value="ok"/>
					<xsd:enumeration value="indeterminate"/>
				</xsd:restriction>
			</xsd:simpleType>
			<xsd:simpleType name="lastSerial">
				<xsd:restriction base="xsd:long"/>
			</xsd:simpleType>
			<xsd:element name="lastSerial" type="lastSerial"/>
			<xsd:simpleType name="nextSerial">
				<xsd:restriction base="xsd:long"/>
			</xsd:simpleType>
			<xsd:element name="nextSerial" type="nextSerial"/>
			<xsd:simpleType name="firstSerial">
				<xsd:restriction base="xsd:long"/>
			</xsd:simpleType>
			<xsd:element name="firstSerial" type="firstSerial"/>
			<xsd:simpleType name="startSerial">
				<xsd:restriction base="xsd:long"/>
			</xsd:simpleType>
			<xsd:element name="startSerial" type="startSerial"/>
			<xsd:simpleType name="endSerial">
				<xsd:restriction base="xsd:long"/>
			</xsd:simpleType>
			<xsd:element name="endSerial" type="endSerial"/>
			<xsd:complexType name="metric">
				<xsd:attribute name="metricType" type="xsd:string" use="required"/>
				<xsd:attribute name="unit" type="xsd:string" use="optional"/>
			</xsd:complexType>
			<xsd:element name="metric" type="metric"/>
			<xsd:complexType name="omiSuccess">
				<xsd:complexContent>
					<xsd:restriction base="xsd:anyType"/>
				</xsd:complexContent>
			</xsd:complexType>
			<xsd:element name="omiSuccess" type="omiSuccess"/>
			<xsd:complexType name="getRootObject">
				<xsd:complexContent>
					<xsd:restriction base="xsd:anyType"/>
				</xsd:complexContent>
			</xsd:complexType>
			<xsd:element name="getRootObject" type="getRootObject"/>
			<xsd:simpleType name="sourceObject">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="sourceObject" type="sourceObject"/>
			<xsd:simpleType name="objectName">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="objectName" type="objectName"/>
			<xsd:complexType name="getObjectDescription">
				<xsd:sequence>
					<xsd:element ref="objectName" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="getObjectDescription" type="getObjectDescription"/>
			<xsd:complexType name="attributeInfo">
				<xsd:sequence>
					<xsd:element ref="description" minOccurs="0"/>
					<xsd:element ref="displayName" minOccurs="0"/>
					<xsd:element name="type" type="xsd:string"/>
					<xsd:element name="metric" type="metric" minOccurs="0"/>
				</xsd:sequence>
				<xsd:attribute name="name" type="xsd:string" use="required"/>
				<xsd:attribute name="dataType" type="xsd:string" use="optional"/>
				<xsd:attribute name="access" type="access1" use="optional"/>
			</xsd:complexType>
			<xsd:element name="attributeInfo" type="attributeInfo"/>
			<xsd:complexType name="operationParamType">
				<xsd:sequence>
					<xsd:element ref="description" type="xsd:string" minOccurs="0"/>
					<xsd:element ref="displayName" type="xsd:string" minOccurs="0"/>
				</xsd:sequence>
				<xsd:attribute ref="name" type="xsd:string" use="required"/>
				<xsd:attribute ref="dataType" type="xsd:string" use="required"/>
			</xsd:complexType>
			<xsd:element name="operationParamType" type="operationParamType"/>
			<xsd:complexType name="operationInfo">
				<xsd:sequence>
					<xsd:element ref="displayName" type="xsd:string" minOccurs="0"/>
					<xsd:element ref="description" type="xsd:string" minOccurs="0"/>
					<xsd:element ref="operationResultType" type="xsd:string" minOccurs="0"/>
					<xsd:element name="operationParamType" type="operationParamType"
minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
				<xsd:attribute ref="name" type="xsd:string" use="required"/>
			</xsd:complexType>
			<xsd:element name="operationInfo" type="operationInfo"/>
			<xsd:complexType name="notificationInfo">
				<xsd:sequence>
					<xsd:element name="type" type="xsd:string" minOccurs="0"/>
					<xsd:element name="description" type="xsd:string" minOccurs="0"/>
					<xsd:element name="displayName" type="xsd:string" minOccurs="0"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="notificationInfo" type="notificationInfo"/>
			<xsd:complexType name="objectDescription">
				<xsd:sequence>
					<xsd:element ref="description" minOccurs="0"/>
					<xsd:element ref="displayName" minOccurs="0"/>
					<xsd:element name="interface" type="xsd:string" maxOccurs="unbounded"/>
					<xsd:element name="attributeInfo" type="attributeInfo" maxOccurs="unbounded"/>
					<xsd:element name="operationInfo" type="operationInfo" maxOccurs="unbounded"/>
					<xsd:element name="notificationInfo" type="notificationInfo"
maxOccurs="unbounded"/>
				</xsd:sequence>
				<xsd:attribute name="object" type="xsd:string" use="required"/>
				<xsd:attribute name="lang" type="xsd:string" use="required"/>
			</xsd:complexType>
			<xsd:element name="objectDescription" type="objectDescription"/>
			<xsd:complexType name="objectDescriptionSet">
				<xsd:sequence>
					<xsd:element ref="objectDescription" minOccurs="0"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="objectDescriptionSet" type="objectDescriptionSet"/>
			<xsd:complexType name="getObjectRelations">
				<xsd:sequence>
					<xsd:element ref="objectName" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="role">
				<xsd:sequence>
					<xsd:element name="objectName" type="objectName" maxOccurs="unbounded"/>
				</xsd:sequence>
				<xsd:attribute name="relType" type="xsd:string" use="required"/>
			</xsd:complexType>
			<xsd:element name="getObjectRelations" type="getObjectRelations"/>
			<xsd:complexType name="relation">
				<xsd:sequence>
					<xsd:element name="role" type="role" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
				<xsd:attribute name="relId" type="xsd:string" use="required"/>
				<xsd:attribute name="relType" type="xsd:string" use="optional"/>
			</xsd:complexType>
			<xsd:complexType name="objectRelations">
				<xsd:sequence>
					<xsd:element name="relation" type="relation" minOccurs="0"
maxOccurs="unbounded"/>
				</xsd:sequence>
				<xsd:attribute name="object" type="xsd:string" use="required"/>
			</xsd:complexType>
			<xsd:element name="objectRelations" type="objectRelations"/>
			<xsd:complexType name="invokeOperation">
				<xsd:sequence>
					<xsd:element ref="objectName"/>
					<xsd:element name="operation" type="xsd:string"/>
					<xsd:element ref="operationParam" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="invokeOperation" type="invokeOperation"/>
			<xsd:simpleType name="operationResult">
				<xsd:restriction base="xsd:string"/>
			</xsd:simpleType>
			<xsd:element name="operationResult" type="operationResult"/>
			<xsd:complexType name="attributeNames">
				<xsd:sequence>
					<xsd:element ref="objectName" maxOccurs="unbounded"/>
					<xsd:element name="attributeName" type="xsd:string" minOccurs="0"
maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="attributeNames" type="attributeNames"/>
			<xsd:complexType name="getAttributeValues">
				<xsd:sequence>
					<xsd:element ref="attributeNames" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="getAttributeValues" type="getAttributeValues"/>
			<xsd:complexType name="attributeValue">
				<xsd:simpleContent>
					<xsd:extension base="xsd:string">
						<xsd:attribute ref="name" type="xsd:string" use="required"/>
						<xsd:attribute ref="lang" type="xsd:string" use="optional"/>
						<xsd:attribute ref="errorNumber" type="xsd:string" use="optional"/>
					</xsd:extension>
				</xsd:simpleContent>
			</xsd:complexType>
			<xsd:element name="attributeValue" type="attributeValue"/>
			<xsd:complexType name="attributeValues">
				<xsd:sequence>
					<xsd:element ref="objectName" minOccurs="0"/>
					<xsd:element name="attributeValue" type="attributeValue" use="optional"
maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="attributeValues" type="attributeValues"/>
			<xsd:complexType name="setAttributeValues">
				<xsd:sequence>
					<xsd:element ref="attributeValues" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="setAttributeValues" type="setAttributeValues"/>
			<xsd:complexType name="attributeValuesSet">
				<xsd:sequence>
					<xsd:element ref="attributeValues" minOccurs="0"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="attributeValuesSet" type="attributeValuesSet"/>
			<xsd:complexType name="notificationInterest">
				<xsd:sequence>
					<xsd:element ref="objectName" type="objectName" minOccurs="0"
maxOccurs="unbounded" use="optional"/>
				</xsd:sequence>
				<xsd:attribute name="mode" type="mode1" use="required"/>
			</xsd:complexType>
			<xsd:element name="notificationInterest" type="notificationInterest"/>
			<xsd:complexType name="registerNotificationInterest">
				<xsd:sequence>
					<xsd:element ref="notificationInterest"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="registerNotificationInterest"
type="registerNotificationInterest"/>
			<xsd:complexType name="cancelNotificationInterest">
				<xsd:complexContent>
					<xsd:restriction base="xsd:anyType"/>
				</xsd:complexContent>
			</xsd:complexType>
			<xsd:element name="cancelNotificationInterest"
type="cancelNotificationInterest"/>
			<xsd:complexType name="getNotificationInterest">
				<xsd:complexContent>
					<xsd:restriction base="xsd:anyType"/>
				</xsd:complexContent>
			</xsd:complexType>
			<xsd:element name="getNotificationInterest" type="getNotificationInterest"/>
			<xsd:complexType name="getNotificationAvailability">
				<xsd:complexContent>
					<xsd:restriction base="xsd:anyType"/>
				</xsd:complexContent>
			</xsd:complexType>
			<xsd:element name="getNotificationAvailability"
type="getNotificationAvailability"/>
			<xsd:complexType name="notificationAvailability">
				<xsd:sequence>
					<xsd:element ref="lastSerial"/>
					<xsd:element ref="firstSerial"/>
					<xsd:element ref="nextSerial"/>
					<xsd:element name="lastTime" type="xsd:dateTime"/>
					<xsd:element name="firstTime" type="xsd:dateTime"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="notificationAvailability" type="notificationAvailability"/>
			<xsd:complexType name="getNotifications">
				<xsd:sequence>
					<xsd:element name="startTime" type="xsd:dateTime" minOccurs="0"
maxOccurs="unbounded" use="optional"/>
					<xsd:element name="endTime" type="xsd:dateTime" minOccurs="0"
maxOccurs="unbounded" use="optional"/>
					<xsd:element name="startSerial" type="xsd:long" minOccurs="0"
maxOccurs="unbounded" use="optional"/>
					<xsd:element name="endSerial" type="xsd:long" minOccurs="0"
maxOccurs="unbounded" use="optional"/>
					<xsd:element ref="maxBatch" type="xsd:long" minOccurs="0"
maxOccurs="unbounded" use="optional"/>
				</xsd:sequence>
				<xsd:attribute name="mode" type="mode2" use="required"/>
			</xsd:complexType>
			<xsd:element name="getNotifications" type="getNotifications"/>
			<xsd:complexType name="resourceTag">
				<xsd:simpleContent>
					<xsd:extension base="tag-value">
						<xsd:attribute name="key" type="xsd:string" use="required"/>
					</xsd:extension>
				</xsd:simpleContent>
			</xsd:complexType>
			<xsd:element name="resourceTag" type="resourceTag"/>
			<xsd:complexType name="correctiveMessage">
				<xsd:simpleContent>
					<xsd:extension base="xsd:string">
						<xsd:attribute name="msgId" type="xsd:string" use="required"/>
					</xsd:extension>
				</xsd:simpleContent>
			</xsd:complexType>
			<xsd:element name="correctiveMessage" type="correctiveMessage"/>
			<xsd:complexType name="message">
				<xsd:simpleContent>
					<xsd:extension base="xsd:string">
						<xsd:attribute name="lang" type="xsd:string" use="optional"/>
						<xsd:attribute name="msgId" type="xsd:string" use="optional"/>
					</xsd:extension>
				</xsd:simpleContent>
			</xsd:complexType>
			<xsd:element name="message" type="message"/>
			<xsd:complexType name="notification">
				<xsd:sequence>
					<xsd:element ref="sourceObject" type="sourceObject"/>
					<xsd:element ref="type" type="xsd:string"/>
					<xsd:element ref="severity" type="omi-severity"/>
					<xsd:element ref="serial" type="xsd:long"/>
					<xsd:element ref="timeStamp" type="xsd:dateTime"/>
					<xsd:element ref="hostName" type="xsd:string"/>
					<xsd:element ref="interface" type="xsd:string"/>
					<xsd:element ref="origObject" type="xsd:string" use="optional"/>
					<xsd:element name="resourceTag" type="xsd:string" use="optional"
minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="correctiveMessage" type="xsd:string" use="optional"/>
					<xsd:element name="message" type="message" use="optional" minOccurs="0"
maxOccurs="unbounded"/>
					<xsd:element ref="detail" type="notedetail" use="optional"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="notedetail">
				<xsd:sequence>
					<xsd:element name="serviceException" type="serviceException" use="optional"/>
					<xsd:element ref="relation" type="relation" use="optional"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="serviceException">
				<xsd:sequence>
					<xsd:element ref="user" type="xsd:string" use="optional"/>
					<xsd:element ref="sessionId" type="xsd:string" use="optional"/>
					<xsd:element ref="message" type="xsd:string" use="optional"/>
					<xsd:element ref="ServiceName" type="xsd:string" use="optional"/>
					<xsd:element ref="errorDump" type="xsd:string" use="optional"/>
					<xsd:element ref="relation" type="relation" use="optional"/>
					<xsd:element ref="objectName" type="xsd:string" use="optional"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="notification" type="notification"/>
			<xsd:complexType name="notificationSet">
				<xsd:sequence>
					<xsd:element name="notification" type="notification" minOccurs="0"
maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="notificationSet" type="notificationSet"/>
			<xsd:complexType name="registerNotificationListener">
				<xsd:sequence>
					<xsd:element name="listener" type="xsd:string"/>
					<xsd:element ref="startSerial"/>
					<xsd:element name="maxBatch" type="xsd:long" minOccurs="0"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="registerNotificationListener"
type="registerNotificationListener"/>
			<xsd:complexType name="msg">
				<xsd:simpleContent>
					<xsd:extension base="xsd:string">
						<xsd:attribute name="id" type="xsd:string" use="optional"/>
					</xsd:extension>
				</xsd:simpleContent>
			</xsd:complexType>
			<xsd:element name="msg" type="msg"/>
			<xsd:complexType name="error">
				<xsd:sequence>
					<xsd:element name="message" type="msg"/>
					<xsd:element name="detail" type="xsd:long" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="error" type="error"/>
			<xsd:complexType name="omiError">
				<xsd:sequence>
					<xsd:element name="error" type="error" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="omiError" type="omiError"/>
		</xsd:schema>
	</types>
	<message name="getRootObjectInput">
		<part name="body" element="omi:getRootObject"/>
	</message>
	<message name="getRootObjectOutput">
		<part name="body" element="omi:objectName"/>
	</message>
	<message name="getObjectDescriptionInput">
		<part name="body" element="omi:getObjectDescription"/>
	</message>
	<message name="getObjectDescriptionOutput">
		<part name="body" element="omi:objectDescriptionSet"/>
	</message>
	<message name="getObjectRelationsInput">
		<part name="body" element="omi:getObjectRelations"/>
	</message>
	<message name="getObjectRelationsOutput">
		<part name="body" element="omi:objectRelations"/>
	</message>
	<message name="invokeOperationInput">
		<part name="body" element="omi:invokeOperation"/>
	</message>
	<message name="invokeOperationOutput">
		<part name="body" element="omi:operationResult"/>
	</message>
	<message name="getAttributeValuesInput">
		<part name="body" element="omi:getAttributeValues"/>
	</message>
	<message name="getAttributeValuesOutput">
		<part name="body" element="omi:attributeValuesSet"/>
	</message>
	<message name="setAttributeValuesInput">
		<part name="body" element="omi:setAttributeValues"/>
	</message>
	<message name="setAttributeValuesOutput">
		<part name="body" element="omi:omiSuccess"/>
	</message>
	<message name="registerNotificationInterestInput">
		<part name="body" element="omi:registerNotificationInterest"/>
	</message>
	<message name="registerNotificationInterestOutput">
		<part name="body" element="omi:omiSuccess"/>
	</message>
	<message name="cancelNotificationInterestInput">
		<part name="body" element="omi:cancelNotificationInterest"/>
	</message>
	<message name="cancelNotificationInterestOutput">
		<part name="body" element="omi:omiSuccess"/>
	</message>
	<message name="getNotificationInterestInput">
		<part name="body" element="omi:getNotificationInterest"/>
	</message>
	<message name="getNotificationInterestOutput">
		<part name="body" element="omi:notificationInterest"/>
	</message>
	<message name="getNotificationAvailabilityInput">
		<part name="body" element="omi:getNotificationAvailability"/>
	</message>
	<message name="getNotificationAvailabilityOutput">
		<part name="body" element="omi:notificationAvailability"/>
	</message>
	<message name="getNotificationsInput">
		<part name="body" element="omi:getNotifications"/>
	</message>
	<message name="getNotificationsOutput">
		<part name="body" element="omi:notificationSet"/>
	</message>
	<message name="registerNotificationListenerInput">
		<part name="body" element="omi:registerNotificationListener"/>
	</message>
	<message name="registerNotificationListenerOutput">
		<part name="body" element="omi:omiSuccess"/>
	</message>
	<message name="omiErrorMsg">
		<part name="body" element="omi:omiError"/>
	</message>
	<portType name="OMIPortType">
		<operation name="getRootObject">
			<input message="omi:getRootObjectInput"/>
			<output message="omi:getRootObjectOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="getObjectDescription">
			<input message="omi:getObjectDescriptionInput"/>
			<output message="omi:getObjectDescriptionOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="getObjectRelations">
			<input message="omi:getObjectRelationsInput"/>
			<output message="omi:getObjectRelationsOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="invokeOperation">
			<input message="omi:invokeOperationInput"/>
			<output message="omi:invokeOperationOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="getAttributeValues">
			<input message="omi:getAttributeValuesInput"/>
			<output message="omi:getAttributeValuesOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="setAttributeValues">
			<input message="omi:setAttributeValuesInput"/>
			<output message="omi:setAttributeValuesOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="registerNotificationInterest">
			<input message="omi:registerNotificationInterestInput"/>
			<output message="omi:registerNotificationInterestOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="cancelNotificationInterest">
			<input message="omi:cancelNotificationInterestInput"/>
			<output message="omi:cancelNotificationInterestOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="getNotificationInterest">
			<input message="omi:getNotificationInterestInput"/>
			<output message="omi:getNotificationInterestOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="getNotificationAvailability">
			<input message="omi:getNotificationAvailabilityInput"/>
			<output message="omi:getNotificationAvailabilityOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="getNotifications">
			<input message="omi:getNotificationsInput"/>
			<output message="omi:getNotificationsOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
		<operation name="registerNotificationListener">
			<input message="omi:registerNotificationListenerInput"/>
			<output message="omi:registerNotificationListenerOutput"/>
			<fault name="error" message="omi:omiErrorMsg"/>
		</operation>
	</portType>
	<binding name="OMISoapBinding" type="omi:OMIPortType">
		<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
		<operation name="getRootObject">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="getObjectDescription">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="getObjectRelations">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="invokeOperation">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="getAttributeValues">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="setAttributeValues">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="registerNotificationInterest">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="cancelNotificationInterest">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="getNotificationInterest">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="getNotificationAvailability">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="getNotifications">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
		<operation name="registerNotificationListener">
			<soap:operation soapAction="OMI"/>
			<input>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
				<soap:header element="omi:omiHeader"/>
			</input>
			<output>
				<soap:body parts="body" use="literal" namespace="urn:omi-org:api"/>
			</output>
			<fault name="error">
				<soap:fault namespace="urn:omi-org:api"/>
			</fault>
		</operation>
	</binding>
	<service name="OMIService">
		<documentation>OMI Web Service</documentation>
		<port name="OMIBindingPort" binding="omi:OMISoapBinding">
			<soap:address location="http://levma03_dt:5555/soap/omi"/>
		</port>
	</service>
</definitions>