A Ticketing Connector Samples

This appendix provides sample implementations for Remedy 7.6 Help Desk ticketing connectors.

Example A-1 connectorDeploy.xml

<?xml version="1.0" encoding="UTF-8" ?>
<ManagementConnector xmlns="http://xmlns.oracle.com/sysman/connector">
  <Name>Remedy Service Desk 7.6 Connector</Name>
  <Version>12.1.0.2.0</Version>
  <EMCompatibleVersion>12.1.0.1.0</EMCompatibleVersion>
  <Description>Remedy Service Desk 7.6.04 Integration with Enterprise Manager</Description>
  <Category>TicketingConnector</Category>
  <SOAPHeaderAuthentication>
    <Username required="true">
      <VariableName>USERNAME</VariableName>
      <DisplayName>Remedy Username</DisplayName>
    </Username>
    <Password>
      <VariableName>PASSWORD</VariableName>
      <DisplayName>Remedy Password</DisplayName>
    </Password>
    <AuthVariable>
      <VariableName>AUTHENTICATION</VariableName>
      <DisplayName>Authentication</DisplayName>
    </AuthVariable>
    <AuthVariable>
      <VariableName>LOCALE</VariableName>
      <DisplayName>Locale</DisplayName>
    </AuthVariable>
    <AuthVariable>
      <VariableName>TIMEZONE</VariableName>
      <DisplayName>Timezone</DisplayName>
    </AuthVariable>
    <SOAPHeader>
      <![CDATA[
      <urn:AuthenticationInfo xmlns:urn="urn:HelpDesk_Submit_Service">
        <urn:userName>$USERNAME$</urn:userName>
        <urn:password>$PASSWORD$</urn:password>
        <urn:authentication>$AUTHENTICATION$</urn:authentication>
        <urn:locale>$LOCALE$</urn:locale>
        <urn:timeZone>$TIMEZONE$</urn:timeZone>
      </urn:AuthenticationInfo>
      ]]>
    </SOAPHeader>
  </SOAPHeaderAuthentication>
  <ConnectivityTestVariable>
    <VariableName>TICKET_ID</VariableName>
    <DisplayName>Ticket ID</DisplayName>
  </ConnectivityTestVariable>
  <Service>
    <Method>createTicket</Method>
    <WebServiceEndpoint>
      <![CDATA[http://[midtier_server]/arsys/services/ARService?server=[servername]&webService=HPD_IncidentInterface_Create_WS]]>
    </WebServiceEndpoint>
  </Service>
  <Service>
    <Method>updateTicket</Method>
    <WebServiceEndpoint>
      <![CDATA[http://[midtier_server]/arsys/services/ARService?server=[servername]&webService=HPD_IncidentInterface_Custom_WS]]>
    </WebServiceEndpoint>
  </Service>
  <Service>
    <Method>getTicket</Method>
    <WebServiceEndpoint>
      <![CDATA[http://[midtier_server]/arsys/services/ARService?server=[servername]&webService=HPD_IncidentInterface_Custom_WS]]>
    </WebServiceEndpoint>
  </Service>
  <ExternalURL>
    <Pattern>
      <![CDATA[http://$WEB_SERVER$/arsys/forms/$ARSERVER_NAME$/$FORM_NAME$/?qual=%27Incident%20Number*%27=%22@Incident_Number@%22]]>
    </Pattern>
    <ConfigVariable required="true">
      <VariableName>WEB_SERVER</VariableName>
      <DisplayName>Web Server</DisplayName>
    </ConfigVariable>
    <ConfigVariable required="true">
      <VariableName>FORM_NAME</VariableName>
      <DisplayName>HelpDesk Case Form Name</DisplayName>
    </ConfigVariable>
    <ConfigVariable required="true">
      <VariableName>ARSERVER_NAME</VariableName>
      <DisplayName>ARServer Name</DisplayName>
    </ConfigVariable>
  </ExternalURL>
  <TemplateRegistration>
    <FileName>getTicket_request.xml</FileName>
    <InternalName>getTicket</InternalName>
    <TemplateName>Get Ticket</TemplateName>
    <TemplateType>OutboundXML</TemplateType>
    <Description>This is the request xml file for getTicket method</Description>
  </TemplateRegistration>
  <TemplateRegistration>
    <FileName>getTicket_response.xsl</FileName>
    <InternalName>getTicket</InternalName>
    <TemplateName>Get Ticket</TemplateName>
    <TemplateType>InboundXSL</TemplateType>
    <Description>This is the response xsl file for getTicket method</Description>
  </TemplateRegistration> 
  <TemplateRegistration>
    <FileName>createTicket_response.xsl</FileName>
    <InternalName>createTicket</InternalName>
    <TemplateName>Create Ticket Response</TemplateName>
    <TemplateType>InboundXSL</TemplateType>
    <Description>This is the create ticket response template. </Description>
  </TemplateRegistration>
  <TemplateRegistration>
    <FileName>templates/Remedy_DefaultCategory.xsl</FileName>
    <InternalName>Remedy_DefaultCategory.xsl</InternalName>
    <TemplateName>Remedy Default Category </TemplateName>
    <TemplateType>OutboundXSL</TemplateType>
    <Description>This is the Remedy default category template. </Description>
  </TemplateRegistration>
  <TemplateRegistration>
    <FileName>templates/Remedy_DefaultCategory_AutoClose.xsl</FileName>
    <InternalName>Remedy_DefaultCategory_AutoClose.xsl</InternalName>
    <TemplateName>Remedy Default Category Auto Close</TemplateName>
    <TemplateType>OutboundXSL</TemplateType>
    <Description>This is the Remedy default category template with auto close function. </Description>
  </TemplateRegistration>
  <TemplateRegistration>
    <FileName>templates/Remedy_DefaultCategory_AutoResolve.xsl</FileName>
    <InternalName>Remedy_DefaultCategory_AutoResolve.xsl</InternalName>
    <TemplateName>Remedy Default Category Auto Resolve</TemplateName>
    <TemplateType>OutboundXSL</TemplateType>
    <Description>This is the Remedy default category template with auto resolve function. </Description>
  </TemplateRegistration>
  <TemplateRegistration>
    <FileName>publishTicket_request.xsl</FileName>
    <InternalName>publishTicket</InternalName>
    <TemplateName>Publish Ticket Status</TemplateName>
    <TemplateType>InboundXSL</TemplateType>
    <Description>This is the template for publishTicket operation. </Description>
  </TemplateRegistration>
</ManagementConnector> 

Example A-2 getTicket_request.xml

<?xml version="1.0" encoding="UTF-8" ?>
<urn:HelpDesk_Query_Service xmlns:urn="urn:HPD_IncidentInterface_Custom_WS">
  <urn:Incident_Number>@TicketId@</urn:Incident_Number>
</urn:HelpDesk_Query_Service>

Example A-3 getTicket_response.xsl

<?xml version='1.0' encoding='UTF-8'?>
<xsl:transform version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:urn="urn:HPD_IncidentInterface_Custom_WS"
  xmlns="http://xmlns.oracle.com/sysman/connector/tt"
  targetNamespace="http://xmlns.oracle.com/sysman/connector/tt"
  elementFormDefault="qualified">
  <xsl:template match="urn:HelpDesk_Query_ServiceResponse">
    <getTicketResponse>
      <TicketId><xsl:value-of select="urn:Incident_Number/text()"/></TicketId>
    </getTicketResponse>
  </xsl:template>
</xsl:transform>

Example A-4 createTicket_response.xsl

<?xml version="1.0" encoding="UTF-8"?>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:urn="urn:HPD_IncidentInterface_Create_WS"
  xmlns="http://xmlns.oracle.com/sysman/connector">
  <xsl:template match="urn:HelpDesk_Submit_ServiceResponse">
    <CreateTicketResponse>
      <TicketId>
        <xsl:value-of select="urn:Incident_Number"/>
      </TicketId>
      <InstanceVariable>
        <VariableName>Incident_Number</VariableName>
        <VariableValue>
          <xsl:value-of select="urn:Incident_Number"/>
        </VariableValue>
      </InstanceVariable>
    </CreateTicketResponse>
  </xsl:template>
</xsl:transform> 

Example A-5 publishTicket_request.xsl

<?xml version='1.0' encoding='UTF-8'?>
<xsl:transform version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:a="http://xmlns.oracle.com/sysman/connector"
  targetNamespace="http://xmlns.oracle.com/sysman/connector"
  elementFormDefault="qualified">
  <xsl:template match="a:InboundData">
    <InboundData>
      <Operation><xsl:value-of select="a:Operation"/></Operation>
      <PropertyList>
        <ticket_guid><xsl:value-of select="a:PropertyList/a:ticket_guid"/></ticket_guid>
        <status>
          <xsl:choose>
            <xsl:when test="(a:PropertyList/a:status/text() = '0')">New</xsl:when>
            <xsl:when test="(a:PropertyList/a:status/text() = '1')">Assigned</xsl:when>
            <xsl:when test="(a:PropertyList/a:status/text() = '2')">In Progress</xsl:when>
            <xsl:when test="(a:PropertyList/a:status/text() = '3')">Pending</xsl:when>
            <xsl:when test="(a:PropertyList/a:status/text() = '4')">Resolved</xsl:when>
            <xsl:when test="(a:PropertyList/a:status/text() = '5')">Closed</xsl:when>
            <xsl:when test="(a:PropertyList/a:status/text() = '6')">Cancelled</xsl:when>
          </xsl:choose>  
        </status>
        <connector_guid><xsl:value-of select="a:PropertyList/a:connector_guid"/></connector_guid>
        <last_updated_date><xsl:value-of select="a:PropertyList/a:last_updated_date"/></last_updated_date>
      </PropertyList>
    </InboundData>
  </xsl:template>
</xsl:transform>

Example A-6 Remedy_DefaultCategory.xsl

<?xml version='1.0' encoding='UTF-8'?>
<xsl:transform version="1.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:ns0="http://xmlns.oracle.com/sysman/connector">
 
  <!--This template creates an incident type ticket with default categorization.
  The ticket priority is based on event severity. On update,the ticket summary
  is updated with the latest incident message and severity information.   -->
 
  <xsl:template match="ns0:EMIncident">
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:TicketID) = ''">
        <urn:HelpDesk_Submit_Service xmlns:urn="urn:HPD_IncidentInterface_Create_WS"> 
 
          <!-- EDIT THE TAG VALUES BELOW TO CHANGE HOW A TICKET IS FILLED DURING 
          TICKET CREATION. REFER TO THE REMEDY SERVICE DESK MANUAL FOR DESCRIPTION 
          OF THESE SERVICEDESK SUPPORT DATAFIELDS  -->
 
          <!--FIRST_NAME,LAST_NAME VALUES ARE PICKED FROM THE USERNAME VALUE GIVEN DURING REMEDY SERVICE DESK CONNECTOR CONFIGURATION. EXAMPLE USERNAME:Demo.-->
          <urn:First_Name><xsl:value-of select="ns0:HDUser"/></urn:First_Name>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL')">
              <urn:Impact>1-Extensive/Widespread</urn:Impact>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL')">
              <urn:Impact>2-Significant/Large</urn:Impact>
            </xsl:when>
            <xsl:otherwise>
              <urn:Impact>3-Moderate/Limited</urn:Impact>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Last_Name><xsl:value-of select="ns0:HDUser"/></urn:Last_Name>
          <urn:Reported_Source>Systems Management</urn:Reported_Source>
          <urn:Service_Type>Infrastructure Event</urn:Service_Type>
          <urn:Action>CREATE</urn:Action>
          <urn:Create_Request/>  
          <urn:Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary,0, 100)"/>
          </urn:Summary>
          <urn:Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">
                Incident created by Oracle Enterprise Manager Remedy Service Desk Connector
              </xsl:with-param>    
            </xsl:call-template>
          </urn:Notes>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL') or 
              (ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL') ">
              <urn:Urgency>1-Critical</urn:Urgency>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'WARNING')">
              <urn:Urgency>2-High</urn:Urgency>
            </xsl:when>
            <xsl:otherwise>
              <urn:Urgency>3-Medium</urn:Urgency>
            </xsl:otherwise>
          </xsl:choose>
 
          <urn:Work_Info_Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0 , 100)"/>
          </urn:Work_Info_Summary>
          <urn:Work_Info_Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">
                Incident created by Oracle Enterprise Manager Remedy Service Desk Connector for <xsl:value-of select="ns0:SystemAttributes/ns0:Severity"/> severity.
              </xsl:with-param>    
            </xsl:call-template>
          </urn:Work_Info_Notes>
          <urn:Work_Info_Type>Incident Task / Action</urn:Work_Info_Type>
          <urn:Work_Info_Date/>
        </urn:HelpDesk_Submit_Service> 
      </xsl:when>
      <xsl:otherwise>
        <urn:HelpDesk_Modify_Service xmlns:urn="urn:HPD_IncidentInterface_Custom_WS">
          <urn:Categorization_Tier_1></urn:Categorization_Tier_1>
          <urn:Categorization_Tier_2></urn:Categorization_Tier_2>
          <urn:Categorization_Tier_3></urn:Categorization_Tier_3>
          <urn:Closure_Manufacturer></urn:Closure_Manufacturer>
          <urn:Closure_Product_Category_Tier1></urn:Closure_Product_Category_Tier1>
          <urn:Closure_Product_Category_Tier2></urn:Closure_Product_Category_Tier2>
          <urn:Closure_Product_Category_Tier3></urn:Closure_Product_Category_Tier3>
          <urn:Closure_Product_Model_Version></urn:Closure_Product_Model_Version>
          <urn:Closure_Product_Name></urn:Closure_Product_Name>
          <!--EDIT THE Company TAG BELOW TO ADD A Company NAME THAT IS ASSOCIATED WITH FIRST_NAME,LAST_NAME TAGS ON THE REMEDY  --> 
          <urn:Company>My Company</urn:Company>
          <urn:Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0 , 100)"/>
          </urn:Summary>
          <urn:Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">
                Incident updated by Oracle Enterprise Manager Remedy Service Desk Connector
              </xsl:with-param>    
            </xsl:call-template>
          </urn:Notes>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL')">
              <urn:Impact>1-Extensive/Widespread</urn:Impact>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL')">
              <urn:Impact>2-Significant/Large</urn:Impact>
            </xsl:when>
            <xsl:otherwise>
              <urn:Impact>3-Moderate/Limited</urn:Impact>
            </xsl:otherwise>
          </xsl:choose>
 
          <urn:Manufacturer></urn:Manufacturer>
          <urn:Product_Categorization_Tier_1></urn:Product_Categorization_Tier_1>
          <urn:Product_Categorization_Tier_2></urn:Product_Categorization_Tier_2>
          <urn:Product_Categorization_Tier_3></urn:Product_Categorization_Tier_3>
          <urn:Product_Model_Version></urn:Product_Model_Version>
          <urn:Product_Name></urn:Product_Name>
          <urn:Reported_Source>Systems Management</urn:Reported_Source>
          <urn:Resolution></urn:Resolution>
          <urn:Resolution_Category/>
          <urn:Resolution_Category_Tier_2/>
          <urn:Resolution_Category_Tier_3/>    
          <urn:Resolution_Method/>
          <urn:Service_Type>Infrastructure Event</urn:Service_Type>
 
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL') or 
              (ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL') ">
              <urn:Urgency>1-Critical</urn:Urgency>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'WARNING')">
              <urn:Urgency>2-High</urn:Urgency>
            </xsl:when>
            <xsl:otherwise>
              <urn:Urgency>3-Medium</urn:Urgency>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Action>MODIFY</urn:Action>
          <urn:Work_Info_Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Work_Info_Summary>
          <urn:Work_Info_Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">
                Incident updated by Oracle Enterprise Manager Remedy Service Desk Connector
              </xsl:with-param>    
            </xsl:call-template>
          </urn:Work_Info_Notes>
          <urn:Work_Info_Type>Incident Task / Action</urn:Work_Info_Type>
          <urn:Work_Info_Date/>
          <urn:Work_Info_Source></urn:Work_Info_Source>
          <urn:Work_Info_Locked></urn:Work_Info_Locked>
          <urn:Work_Info_View_Access>Public</urn:Work_Info_View_Access>
          <urn:Incident_Number>
            <xsl:value-of select="ns0:TicketID"/>
          </urn:Incident_Number>
          <urn:ServiceCI></urn:ServiceCI>
          <urn:ServiceCI_ReconID></urn:ServiceCI_ReconID>
          <urn:HPD_CI></urn:HPD_CI>
          <urn:HPD_CI_ReconID></urn:HPD_CI_ReconID>
          <urn:HPD_CI_FormName></urn:HPD_CI_FormName>
        </urn:HelpDesk_Modify_Service>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:template>
 
  <xsl:template name="getDetails">
    <xsl:param name="message" />
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:SystemAttributes/ns0:UpdatedAttributes) != ''">
        <xsl:value-of select="$message" /> for change in attributes : <xsl:value-of select="ns0:SystemAttributes/ns0:UpdatedAttributes" />.
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$message" />.
      </xsl:otherwise>
    </xsl:choose> 
    -----------------------------------------------------------------------------
    EM User: <xsl:value-of select="ns0:NotificationRuleOwner"/>
    Incident Information:
    <xsl:for-each select="ns0:SystemAttributes/ns0:SourceInfo">
      Source Name:<xsl:value-of select="./ns0:SourceObjInfo/ns0:ObjName" />
      <xsl:choose>
        <xsl:when test="normalize-space(./ns0:SourceObjInfo/ns0:ObjOwner) != ''">
          Source Owner:<xsl:value-of select="./ns0:SourceObjInfo/ns0:ObjOwner" />
        </xsl:when>
      </xsl:choose>
      Source Type:<xsl:value-of select="./ns0:SourceObjInfo/ns0:SourceObjType"/>
      Source SubType:<xsl:value-of select="./ns0:SourceObjInfo/ns0:SourceObjSubType"/>    
      Target Name: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetName"/>
      Target Type: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetType"/>
      Target Type Label: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetTypeLabel"/>
      Target URL:<xsl:value-of select="./ns0:TargetInfo/ns0:TargetURL"/>
      <xsl:text>&#xa;        </xsl:text>
    </xsl:for-each>
    <!-- LIST ALL THE TARGET PROPERTIES -->
    Target Properties:
    <xsl:for-each select="ns0:SystemAttributes/ns0:SourceInfo/ns0:TargetInfo/
      ns0:TargetProperty">
      <xsl:text>&#xa;        </xsl:text>
      <xsl:value-of select="./ns0:Name"/>: <xsl:value-of select="./ns0:Value"/>
    </xsl:for-each>
    <!-- EDIT THE FOLLOWING CODE TO LIST A SPECIFIC TARGET PROPERTY, 
    SUCH AS "Line of Business"
    <xsl:choose>
      <xsl:when test="ns0:SystemAttributes/ns0:SourceInfo/ns0:TargetInfo/
        ns0:TargetProperty/ns0:Name='Line of Business'">
        Line of Business: <xsl:value-of select="ns0:ns0:SystemAttributes/
          ns0:SourceInfo/ns0:TargetInfo/ns0:TargetProperty
          /ns0:value"/>
      </xsl:when>
    </xsl:choose>
    -->
    Severity: <xsl:value-of select="ns0:SystemAttributes/ns0:Severity"/>
    Priority: <xsl:value-of select="ns0:SystemAttributes/ns0:Priority" />
    CreationDate: <xsl:value-of select="ns0:SystemAttributes/ns0:CreationDate"/>
    LastUpdatedDate:<xsl:value-of select="ns0:SystemAttributes/ns0:LastUpdatedDate"/>
    Owner: <xsl:value-of select="ns0:SystemAttributes/ns0:Owner" />
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:NotificationRuleName) != ''">
        Notification Rule: <xsl:value-of select="ns0:NotificationRuleName"/> 
      </xsl:when>
    </xsl:choose>  
    URL: <xsl:value-of select="ns0:SystemAttributes/ns0:IncidentURL"/>
    EM Incident Status : <xsl:value-of select="ns0:SystemAttributes/ns0:ResolutionState"/>
    EM Acknowledge : <xsl:value-of select="ns0:SystemAttributes/ns0:Acknowledge"/>
    EM Auto Close : <xsl:value-of select="ns0:SystemAttributes/ns0:AutoClose"/>
    EM Escalation Level : <xsl:value-of select="ns0:SystemAttributes/ns0:EscalationLevel"/>
    <xsl:for-each select="ns0:SystemAttributes/ns0:AdditionalDetails">  
      <xsl:text>&#xa;</xsl:text>
      <xsl:value-of select="./ns0:VariableName"/>: <xsl:value-of select="./ns0:VariableValue"/>
    </xsl:for-each>
 
  </xsl:template>
</xsl:transform>  

Example A-7 Remedy_DefaultCategory_AutoClose.xsl

<?xml version='1.0' encoding='UTF-8'?>
<xsl:transform version="1.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:ns0="http://xmlns.oracle.com/sysman/connector">
 
  <!--
  This template creates an incident type ticket within Remedy Service Desk with
  default settings. On update, the worklog is updated with the latest event 
  message and severity information. The template supports auto closing of 
  tickets, once the ticket is closed it can not be reopened.
  -->
 
  <xsl:template match="ns0:EMIncident">
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:TicketID) = ''"  >
        <urn:HelpDesk_Submit_Service xmlns:urn="urn:HPD_IncidentInterface_Create_WS">   
 
          <!-- EDIT THE TAG VALUES BELOW TO CHANGE HOW A TICKET IS FILLED
          DURING TICKET CREATION. REFER TO THE REMEDY SERVICE DESK MANUAL
          FOR DESCRIPTION OF THESE HELPDESK SUPPORT DATAFIELDS--> 
          <!--FIRST_NAME,LAST_NAME VALUES ARE PICKED FROM THE USERNAME VALUE GIVEN DURING REMEDY SERVICE DESK CONNECTOR CONFIGURATION. EXAMPLE USERNAME:Demo.-->
          <urn:First_Name><xsl:value-of select="ns0:HDUser"/></urn:First_Name>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL')">
              <urn:Impact>1-Extensive/Widespread</urn:Impact>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL')">
              <urn:Impact>2-Significant/Large</urn:Impact>
            </xsl:when>
            <xsl:otherwise>
              <urn:Impact>3-Moderate/Limited</urn:Impact>
            </xsl:otherwise>
          </xsl:choose>
 
          <urn:Last_Name><xsl:value-of select="ns0:HDUser"/></urn:Last_Name>
          <urn:Reported_Source>Systems Management</urn:Reported_Source>
          <urn:Service_Type>Infrastructure Event</urn:Service_Type>
          <urn:Action>CREATE</urn:Action>
          <urn:Create_Request/>  
          <urn:Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Summary>    
          <urn:Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">Incident created by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
            </xsl:call-template>
          </urn:Notes>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL') or 
              (ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL') ">
              <urn:Urgency>1-Critical</urn:Urgency>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'WARNING')">
              <urn:Urgency>2-High</urn:Urgency>
            </xsl:when>
            <xsl:otherwise>
              <urn:Urgency>3-Medium</urn:Urgency>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Work_Info_Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Work_Info_Summary>
          <urn:Work_Info_Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">Incident created by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
            </xsl:call-template>
          </urn:Work_Info_Notes>
 
          <urn:Work_Info_Type>Incident Task / Action</urn:Work_Info_Type>
          <urn:Work_Info_Date/>
        </urn:HelpDesk_Submit_Service> 
      </xsl:when>
      <xsl:otherwise>
        <urn:HelpDesk_Modify_Service xmlns:urn="urn:HPD_IncidentInterface_Custom_WS">
          <urn:Categorization_Tier_1></urn:Categorization_Tier_1>
          <urn:Categorization_Tier_2></urn:Categorization_Tier_2>
          <urn:Categorization_Tier_3></urn:Categorization_Tier_3>
          <urn:Closure_Manufacturer></urn:Closure_Manufacturer>
          <urn:Closure_Product_Category_Tier1></urn:Closure_Product_Category_Tier1>
          <urn:Closure_Product_Category_Tier2></urn:Closure_Product_Category_Tier2>
          <urn:Closure_Product_Category_Tier3></urn:Closure_Product_Category_Tier3>
          <urn:Closure_Product_Model_Version></urn:Closure_Product_Model_Version>
          <urn:Closure_Product_Name></urn:Closure_Product_Name>
          <!--EDIT THE Company TAG BELOW TO ADD A Company NAME THAT IS ASSOCIATED WITH FIRST_NAME,LAST_NAME TAGS ON THE REMEDY  -->
          <urn:Company>My Company</urn:Company>
          <urn:Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Summary>
          <urn:Notes>
            <xsl:choose>
              <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident closed by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
                </xsl:call-template>
              </xsl:when>
              <xsl:otherwise>
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident updated by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
                </xsl:call-template>  
              </xsl:otherwise>
            </xsl:choose>
          </urn:Notes>    
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL')">
              <urn:Impact>1-Extensive/Widespread</urn:Impact>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL')">
              <urn:Impact>2-Significant/Large</urn:Impact>
            </xsl:when>
            <xsl:otherwise>
              <urn:Impact>3-Moderate/Limited</urn:Impact>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Manufacturer></urn:Manufacturer>
          <urn:Product_Categorization_Tier_1></urn:Product_Categorization_Tier_1>
          <urn:Product_Categorization_Tier_2></urn:Product_Categorization_Tier_2>
          <urn:Product_Categorization_Tier_3></urn:Product_Categorization_Tier_3>
          <urn:Product_Model_Version></urn:Product_Model_Version>
          <urn:Product_Name></urn:Product_Name>
          <urn:Reported_Source>Systems Management</urn:Reported_Source>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Resolution>
                Incident closed by Oracle Enterprise Manager Remedy
                Service Desk Connector due to change in severity of the
                associated alert. Severity:
                <xsl:value-of select="ns0:SystemAttributes/ns0:Severity"/>
                Message:
                <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
              </urn:Resolution>
            </xsl:when>
            <xsl:otherwise>
              <urn:Resolution></urn:Resolution>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Resolution_Category/>
          <urn:Resolution_Category_Tier_2/>
          <urn:Resolution_Category_Tier_3/>    
          <urn:Resolution_Method/>
          <urn:Service_Type>Infrastructure Event</urn:Service_Type>
 
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Status>Closed</urn:Status>
            </xsl:when>
            <xsl:otherwise>
              <urn:Status></urn:Status>
            </xsl:otherwise>
          </xsl:choose>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL') or 
              (ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL') ">
              <urn:Urgency>1-Critical</urn:Urgency>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'WARNING')">
              <urn:Urgency>2-High</urn:Urgency>
            </xsl:when>
            <xsl:otherwise>
              <urn:Urgency>3-Medium</urn:Urgency>
            </xsl:otherwise>
          </xsl:choose> 
          <urn:Action>MODIFY</urn:Action>
          <urn:Work_Info_Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Work_Info_Summary>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Work_Info_Notes>
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident closed by Oracle Enterprise Manager Remedy Service Desk Connector due to change in associated Incident</xsl:with-param>    
                </xsl:call-template>
              </urn:Work_Info_Notes>
            </xsl:when>
            <xsl:otherwise>
              <urn:Work_Info_Notes>
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident updated due to change in associated Incident</xsl:with-param>    
                </xsl:call-template>
              </urn:Work_Info_Notes>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Work_Info_Type>Incident Task / Action</urn:Work_Info_Type>
          <urn:Work_Info_Date/>
          <urn:Work_Info_Source></urn:Work_Info_Source>
          <urn:Work_Info_Locked></urn:Work_Info_Locked>
          <urn:Work_Info_View_Access>Public</urn:Work_Info_View_Access>
          <urn:Incident_Number>
            <xsl:value-of select="ns0:TicketID"/>
          </urn:Incident_Number>
          <urn:ServiceCI></urn:ServiceCI>
          <urn:ServiceCI_ReconID></urn:ServiceCI_ReconID>
          <urn:HPD_CI></urn:HPD_CI>
          <urn:HPD_CI_ReconID></urn:HPD_CI_ReconID>
          <urn:HPD_CI_FormName></urn:HPD_CI_FormName>
        </urn:HelpDesk_Modify_Service>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:template>
 
  <xsl:template name="getDetails">
    <xsl:param name="message" />
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:SystemAttributes/ns0:UpdatedAttributes) != ''">
        <xsl:value-of select="$message" /> for change in attributes : <xsl:value-of select="ns0:SystemAttributes/ns0:UpdatedAttributes" />.
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$message" />.
      </xsl:otherwise>
    </xsl:choose> 
    -----------------------------------------------------------------------------
    EM User: <xsl:value-of select="ns0:NotificationRuleOwner"/>
    Incident Information:
    <xsl:for-each select="ns0:SystemAttributes/ns0:SourceInfo">
      Source Name:<xsl:value-of select="./ns0:SourceObjInfo/ns0:ObjName" />
      <xsl:choose>
        <xsl:when test="normalize-space(./ns0:SourceObjInfo/ns0:ObjOwner) != ''">
          Source Owner:<xsl:value-of select="./ns0:SourceObjInfo/ns0:ObjOwner" />
        </xsl:when>
      </xsl:choose>
      Source Type:<xsl:value-of select="./ns0:SourceObjInfo/ns0:SourceObjType"/>
      Source SubType:<xsl:value-of select="./ns0:SourceObjInfo/ns0:SourceObjSubType"/>    
      Target Name: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetName"/>
      Target Type: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetType"/>
      Target Type Label: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetTypeLabel"/>
      Target URL:<xsl:value-of select="./ns0:TargetInfo/ns0:TargetURL"/>
      <xsl:text>&#xa;        </xsl:text>
    </xsl:for-each>
    <!-- LIST ALL THE TARGET PROPERTIES -->
    Target Properties:
    <xsl:for-each select="ns0:SystemAttributes/ns0:SourceInfo/ns0:TargetInfo/
      ns0:TargetProperty">
      <xsl:text>&#xa;        </xsl:text>
      <xsl:value-of select="./ns0:Name"/>: <xsl:value-of select="./ns0:Value"/>
    </xsl:for-each>
    <!-- EDIT THE FOLLOWING CODE TO LIST A SPECIFIC TARGET PROPERTY, 
    SUCH AS "Line of Business"
    <xsl:choose>
      <xsl:when test="ns0:SystemAttributes/ns0:SourceInfo/ns0:TargetInfo/
        ns0:TargetProperty/ns0:Name='Line of Business'">
        Line of Business: <xsl:value-of select="ns0:ns0:SystemAttributes/
          ns0:SourceInfo/ns0:TargetInfo/ns0:TargetProperty
          /ns0:value"/>
      </xsl:when>
    </xsl:choose>
    -->
    Severity: <xsl:value-of select="ns0:SystemAttributes/ns0:Severity"/>
    Priority: <xsl:value-of select="ns0:SystemAttributes/ns0:Priority" />
    CreationDate: <xsl:value-of select="ns0:SystemAttributes/ns0:CreationDate"/>
    LastUpdatedDate:<xsl:value-of select="ns0:SystemAttributes/ns0:LastUpdatedDate"/>
    Owner: <xsl:value-of select="ns0:SystemAttributes/ns0:Owner" />
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:NotificationRuleName) != ''">
        Notification Rule: <xsl:value-of select="ns0:NotificationRuleName"/> 
      </xsl:when>
    </xsl:choose>  
    URL: <xsl:value-of select="ns0:SystemAttributes/ns0:IncidentURL"/>
    EM Incident Status : <xsl:value-of select="ns0:SystemAttributes/ns0:ResolutionState"/>
    EM Acknowledge : <xsl:value-of select="ns0:SystemAttributes/ns0:Acknowledge"/>
    EM Auto Close : <xsl:value-of select="ns0:SystemAttributes/ns0:AutoClose"/>
    EM Escalation Level : <xsl:value-of select="ns0:SystemAttributes/ns0:EscalationLevel"/>
    <xsl:for-each select="ns0:SystemAttributes/ns0:AdditionalDetails">  
      <xsl:text>&#xa;</xsl:text>
      <xsl:value-of select="./ns0:VariableName"/>: <xsl:value-of select="./ns0:VariableValue"/>
    </xsl:for-each>
 
  </xsl:template>
</xsl:transform> 

Example A-8 Remedy_DefaultCategory_AutoResolve.xsl

<?xml version='1.0' encoding='UTF-8'?>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:ns0="http://xmlns.oracle.com/sysman/connector">
 
  <!--   This template creates an incident type ticket within Remedy Service
  Desk with default settings. On update, the worklog is updated with the latest
  incident message and severity information. The ticket is set to status Resolved
  if the associated alert has cleared. Ticket can be reopend if a severity
  occured with in the grace period. If the ticket is not reopened for 15 days,
  ticket will be closed by incident management.
  -->
  <xsl:template match="ns0:EMIncident">
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:TicketID) = ''">
        <urn:HelpDesk_Submit_Service xmlns:urn="urn:HPD_IncidentInterface_Create_WS">
          <!-- EDIT THE TAG VALUES BELOW TO CHANGE HOW A TICKET IS FILLED
          DURING TICKET CREATION. REFER TO THE REMEDY SERVICE DESK MANUAL
          FOR DESCRIPTION OF THESE HELPDESK SUPPORT DATAFIELDS-->
          <!--FIRST_NAME,LAST_NAME VALUES ARE PICKED FROM THE USERNAME VALUE GIVEN DURING REMEDY SERVICE DESK CONNECTOR CONFIGURATION. EXAMPLE USERNAME:Demo.-->
          <urn:First_Name><xsl:value-of select="ns0:HDUser"/></urn:First_Name>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL')">
              <urn:Impact>1-Extensive/Widespread</urn:Impact>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL')">
              <urn:Impact>2-Significant/Large</urn:Impact>
            </xsl:when>
            <xsl:otherwise>
              <urn:Impact>3-Moderate/Limited</urn:Impact>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Last_Name><xsl:value-of select="ns0:HDUser"/></urn:Last_Name>
          <urn:Reported_Source>Systems Management</urn:Reported_Source>
          <urn:Service_Type>Infrastructure Event</urn:Service_Type>
          <urn:Action>CREATE</urn:Action>
          <urn:Create_Request/>
          <urn:Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Summary>
          <urn:Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">Incident created by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
            </xsl:call-template>
          </urn:Notes>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL') or 
              (ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL') ">
              <urn:Urgency>1-Critical</urn:Urgency>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'WARNING')">
              <urn:Urgency>2-High</urn:Urgency>
            </xsl:when>
            <xsl:otherwise>
              <urn:Urgency>3-Medium</urn:Urgency>
            </xsl:otherwise>
          </xsl:choose>
 
          <urn:Work_Info_Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Work_Info_Summary>
          <urn:Work_Info_Notes>
            <xsl:call-template name="getDetails">
              <xsl:with-param name="message">Incident created by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
            </xsl:call-template>
          </urn:Work_Info_Notes>
 
          <urn:Work_Info_Type>Incident Task / Action</urn:Work_Info_Type>
          <urn:Work_Info_Date/>
        </urn:HelpDesk_Submit_Service>
      </xsl:when>
      <xsl:otherwise>
        <urn:HelpDesk_Modify_Status_Service xmlns:urn="urn:HPD_IncidentInterface_Custom_WS">
          <urn:Categorization_Tier_1></urn:Categorization_Tier_1>
          <urn:Categorization_Tier_2></urn:Categorization_Tier_2>
          <urn:Categorization_Tier_3></urn:Categorization_Tier_3>
          <urn:Closure_Manufacturer></urn:Closure_Manufacturer>
          <urn:Closure_Product_Category_Tier1></urn:Closure_Product_Category_Tier1>
          <urn:Closure_Product_Category_Tier2></urn:Closure_Product_Category_Tier2>
          <urn:Closure_Product_Category_Tier3></urn:Closure_Product_Category_Tier3>
          <urn:Closure_Product_Model_Version></urn:Closure_Product_Model_Version>
          <urn:Closure_Product_Name></urn:Closure_Product_Name>
          <!--EDIT THE Company TAG BELOW TO ADD A Company NAME THAT IS ASSOCIATED WITH FIRST_NAME,LAST_NAME TAGS ON THE REMEDY  -->
          <urn:Company>My Company</urn:Company>
          <urn:Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Summary>
          <urn:Notes>
            <xsl:choose>
              <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident resolved by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
                </xsl:call-template>
              </xsl:when>
              <xsl:when test="ns0:ReopenTicket = 'Yes'">
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident reopened by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
                </xsl:call-template>
              </xsl:when>
              <xsl:otherwise>
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident updated by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
                </xsl:call-template>
              </xsl:otherwise>
            </xsl:choose>
          </urn:Notes>
 
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL')">
              <urn:Impact>1-Extensive/Widespread</urn:Impact>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL')">
              <urn:Impact>2-Significant/Large</urn:Impact>
            </xsl:when>
            <xsl:otherwise>
              <urn:Impact>3-Moderate/Limited</urn:Impact>
            </xsl:otherwise>
          </xsl:choose>
 
          <urn:Manufacturer></urn:Manufacturer>
          <urn:Product_Categorization_Tier_1></urn:Product_Categorization_Tier_1>
          <urn:Product_Categorization_Tier_2></urn:Product_Categorization_Tier_2>
          <urn:Product_Categorization_Tier_3></urn:Product_Categorization_Tier_3>
          <urn:Product_Model_Version></urn:Product_Model_Version>
          <urn:Product_Name></urn:Product_Name>
          <urn:Reported_Source>Systems Management</urn:Reported_Source>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Resolution>
                Incident resolved by Oracle Enterprise Manager Remedy
                Service Desk Connector due to change in severity of the
                associated alert. Severity:
                <xsl:value-of select="ns0:SystemAttributes/ns0:Severity"/>
                Message:
                <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
              </urn:Resolution>
            </xsl:when>
            <xsl:otherwise>
              <urn:Resolution></urn:Resolution>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Resolution_Category/>
          <urn:Resolution_Category_Tier_2/>
          <urn:Resolution_Category_Tier_3/>
          <urn:Resolution_Method/>
          <urn:Service_Type>Infrastructure Event</urn:Service_Type>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Status>Resolved</urn:Status>
            </xsl:when>
            <xsl:otherwise>
              <urn:Status></urn:Status>
            </xsl:otherwise>
          </xsl:choose>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'FATAL') or 
              (ns0:SystemAttributes/ns0:SeverityCode = 'CRITICAL') ">
              <urn:Urgency>1-Critical</urn:Urgency>
            </xsl:when>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'WARNING')">
              <urn:Urgency>2-High</urn:Urgency>
            </xsl:when>
            <xsl:otherwise>
              <urn:Urgency>3-Medium</urn:Urgency>
            </xsl:otherwise>
          </xsl:choose>
 
          <urn:Action>MODIFY</urn:Action>
          <urn:Work_Info_Summary>
            <xsl:value-of select="substring(ns0:SystemAttributes/ns0:Summary, 0, 100)"/>
          </urn:Work_Info_Summary>
 
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Work_Info_Notes> 
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident resolved by Oracle Enterprise Manager Remedy Service Desk Connector due to change in associated Incident</xsl:with-param>    
                </xsl:call-template>
              </urn:Work_Info_Notes>
            </xsl:when>
            <xsl:when test="ns0:ReopenTicket = 'Yes'">
              <urn:Work_Info_Notes>
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident reopened because the associated event re-triggered within the grace period</xsl:with-param>    
                </xsl:call-template>
              </urn:Work_Info_Notes>
            </xsl:when>
            <xsl:otherwise>
              <urn:Work_Info_Notes>
                <xsl:call-template name="getDetails">
                  <xsl:with-param name="message">Incident updated by Oracle Enterprise Manager Remedy Service Desk Connector</xsl:with-param>    
                </xsl:call-template>
              </urn:Work_Info_Notes>
            </xsl:otherwise>
          </xsl:choose>
          <urn:Work_Info_Type>Incident Task / Action</urn:Work_Info_Type>
          <urn:Work_Info_Date/>
          <urn:Work_Info_Source>System Assignment</urn:Work_Info_Source>
          <urn:Work_Info_Locked>No</urn:Work_Info_Locked>
          <urn:Work_Info_View_Access>Public</urn:Work_Info_View_Access>
          <urn:Incident_Number>
            <xsl:value-of select="ns0:TicketID"/>
          </urn:Incident_Number>
          <xsl:choose>
            <xsl:when test="(ns0:SystemAttributes/ns0:SeverityCode = 'CLEAR')">
              <urn:Status_Reason>Automated Resolution Reported</urn:Status_Reason>
            </xsl:when>
            <xsl:otherwise>
              <urn:Status_Reason></urn:Status_Reason>
            </xsl:otherwise>
          </xsl:choose>
          <urn:ServiceCI></urn:ServiceCI>
          <urn:ServiceCI_ReconID></urn:ServiceCI_ReconID>
          <urn:HPD_CI></urn:HPD_CI>
          <urn:HPD_CI_ReconID></urn:HPD_CI_ReconID>
          <urn:HPD_CI_FormName></urn:HPD_CI_FormName>
          <urn:z1D_CI_FormName></urn:z1D_CI_FormName>
        </urn:HelpDesk_Modify_Status_Service>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:template>
 
  <xsl:template name="getDetails">
    <xsl:param name="message" />
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:SystemAttributes/ns0:UpdatedAttributes) != ''">
        <xsl:value-of select="$message" /> for change in attributes : <xsl:value-of select="ns0:SystemAttributes/ns0:UpdatedAttributes" />.
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$message" />.
      </xsl:otherwise>
    </xsl:choose> 
    -----------------------------------------------------------------------------
    EM User: <xsl:value-of select="ns0:NotificationRuleOwner"/>
    Incident Information:
    <xsl:for-each select="ns0:SystemAttributes/ns0:SourceInfo">
      Source Name:<xsl:value-of select="./ns0:SourceObjInfo/ns0:ObjName" />
      <xsl:choose>
        <xsl:when test="normalize-space(./ns0:SourceObjInfo/ns0:ObjOwner) != ''">
          Source Owner:<xsl:value-of select="./ns0:SourceObjInfo/ns0:ObjOwner" />
        </xsl:when>
      </xsl:choose>
      Source Type:<xsl:value-of select="./ns0:SourceObjInfo/ns0:SourceObjType"/>
      Source SubType:<xsl:value-of select="./ns0:SourceObjInfo/ns0:SourceObjSubType"/>    
      Target Name: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetName"/>
      Target Type: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetType"/>
      Target Type Label: <xsl:value-of select="./ns0:TargetInfo/ns0:TargetTypeLabel"/>
      Target URL:
      <xsl:value-of select="./ns0:TargetInfo/ns0:TargetURL"/>
      <xsl:text>&#xa;        </xsl:text>
    </xsl:for-each>
    <!-- LIST ALL THE TARGET PROPERTIES -->
    Target Properties:
    <xsl:for-each select="ns0:SystemAttributes/ns0:SourceInfo/ns0:TargetInfo/
      ns0:TargetProperty">
      <xsl:text>&#xa;        </xsl:text>
      <xsl:value-of select="./ns0:Name"/>: <xsl:value-of select="./ns0:Value"/>
    </xsl:for-each>
    <!-- EDIT THE FOLLOWING CODE TO LIST A SPECIFIC TARGET PROPERTY, 
    SUCH AS "Line of Business"
    <xsl:choose>
      <xsl:when test="ns0:SystemAttributes/ns0:SourceInfo/ns0:TargetInfo/
        ns0:TargetProperty/ns0:Name='Line of Business'">
        Line of Business: <xsl:value-of select="ns0:ns0:SystemAttributes/
          ns0:SourceInfo/ns0:TargetInfo/ns0:TargetProperty
          /ns0:value"/>
      </xsl:when>
    </xsl:choose>
    -->
    Severity: <xsl:value-of select="ns0:SystemAttributes/ns0:Severity"/>
    Priority: <xsl:value-of select="ns0:SystemAttributes/ns0:Priority" />
    CreationDate: <xsl:value-of select="ns0:SystemAttributes/ns0:CreationDate"/>
    LastUpdatedDate:<xsl:value-of select="ns0:SystemAttributes/ns0:LastUpdatedDate"/>
    Owner: <xsl:value-of select="ns0:SystemAttributes/ns0:Owner" />
    <xsl:choose>
      <xsl:when test="normalize-space(ns0:NotificationRuleName) != ''">
        Notification Rule: <xsl:value-of select="ns0:NotificationRuleName"/> 
      </xsl:when>
    </xsl:choose>  
    Incident URL: 
    <xsl:value-of select="ns0:SystemAttributes/ns0:IncidentURL"/>
    EM Incident Status : <xsl:value-of select="ns0:SystemAttributes/ns0:ResolutionState"/>
    EM Acknowledge : <xsl:value-of select="ns0:SystemAttributes/ns0:Acknowledge"/>
    EM Auto Close : <xsl:value-of select="ns0:SystemAttributes/ns0:AutoClose"/>
    EM Escalation Level : <xsl:value-of select="ns0:SystemAttributes/ns0:EscalationLevel"/>
    <xsl:for-each select="ns0:SystemAttributes/ns0:AdditionalDetails"> 
      <xsl:text>&#xa;</xsl:text>
      <xsl:value-of select="./ns0:VariableName"/>: <xsl:value-of select="./ns0:VariableValue"/>
    </xsl:for-each>
 
  </xsl:template>
</xsl:transform> 

Example A-9 connectorDeploy.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
  <xsd:include schemaLocation="connectorCommon.xsd"/>
  <xsd:element name="ManagementConnector">
    <xsd:annotation>
      <xsd:documentation>Deployment Descriptor for Management Connectors</xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Name" type="StringT64">   
          <xsd:annotation>
              <xsd:documentation>
                The name of the connector type.
              </xsd:documentation>
          </xsd:annotation>   
        </xsd:element>
        <xsd:element name="Version" type="VersionT">  
          <xsd:annotation>
              <xsd:documentation>
                Version of the connector type.
              </xsd:documentation>
          </xsd:annotation>  
        </xsd:element>
        <xsd:element name="EMCompatibleVersion" type="VersionT">                    
          <xsd:annotation>
              <xsd:documentation>
                The EM compabilitity version of the connector type.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element>
        <xsd:element name="Description" type="StringT256">
          <xsd:annotation>
              <xsd:documentation>
                The description of the connector type.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element>
        <xsd:element name="Category"> 
          <xsd:annotation>
              <xsd:documentation>
                The category of the connector type. It must be one of the three 
                values listed next.
              </xsd:documentation>
          </xsd:annotation>
          <xsd:simpleType>
            <xsd:restriction base="xsd:string">
              <xsd:enumeration value="EventConnector"/>
              <xsd:enumeration value="TicketingConnector"/>
              <xsd:enumeration value="ChangeManagementConnector"/>
            </xsd:restriction>
          </xsd:simpleType>
        </xsd:element>
        <!-- NewTargetType is for EventConnector only. -->
        <xsd:element name="NewTargetType" minOccurs="0">
          <xsd:annotation>
              <xsd:documentation>
                New target type definition for event connectors. This target type 
                will be registered with Enterprise Manager and target instances can 
                be created subsequently, including a default target. These targets
                are used to accommodate external events.
              </xsd:documentation>
          </xsd:annotation>
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="TargetTypeName" type="StringStrictT64">                    
                <xsd:annotation>
                    <xsd:documentation>
                      The name of the target type.
                    </xsd:documentation>
                </xsd:annotation> 
              </xsd:element>
              <xsd:element name="TargetTypeDisplayName" type="StringT128">                    
                <xsd:annotation>
                    <xsd:documentation>
                      The name of the target type, as shown on UI.
                    </xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="DefaultTargetName" type="StringStrictT256">                    
                <xsd:annotation>
                    <xsd:documentation>
                      The name of the default target of the target type. The default 
                      target will be used as a generic bucket to hold external events.
                    </xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="DefaultTargetDisplayName" type="StringT256">                    
                <xsd:annotation>
                    <xsd:documentation>
                      The name of the default target of the target type, to be displayed
                       on UI.
                    </xsd:documentation>
                </xsd:annotation> 
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="SOAPHeaderAuthentication"
                     type="SOAPHeaderAuthenticationType" minOccurs="0">                    
          <xsd:annotation>
              <xsd:documentation>
                Specification for SOAP Header authentication.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element> 
        <xsd:element name="HTTPBasicAuthentication"
                     type="UsernamePasswordAuthenticationType" minOccurs="0">                    
          <xsd:annotation>
              <xsd:documentation>
                Specification for HTTP basic authentication.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
        <xsd:element name="UserNameTokenAuthentication"
                     type="UsernamePasswordAuthenticationType" minOccurs="0">                    
          <xsd:annotation>
              <xsd:documentation>
                Specification for Username Token authentication.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element>    
        <xsd:element name="ConfigVariable" type="ConfigVariableType"
                     minOccurs="0" maxOccurs="20"> 
          <xsd:annotation>
              <xsd:documentation>
                The vaiables used during connector configuration. These variables 
                are required by external system to complete connector configuration, 
                which includes regitering with the external system. For instance, 
                one configuration variable can be the resolution state required by 
                Microsoft Operation Manager.
              </xsd:documentation>
          </xsd:annotation>                     
        </xsd:element>    
        <xsd:element name="ConnectivityTestVariable" type="ConfigVariableType"
                     minOccurs="0"> 
          <xsd:annotation>
              <xsd:documentation>
                An optional variable used to test connection to an external server.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>    
        <xsd:element name="Service" type="ServiceType" maxOccurs="20">                    
          <xsd:annotation>
              <xsd:documentation>
                Specification for web services, which define how connector framework 
                can communicate with external system.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element>  
        <xsd:element name="ExternalURL" type="ExternalURLType" minOccurs="0">                    
          <xsd:annotation>
              <xsd:documentation>
                Secification for the URL link to the external server, including 
                the URL pattern and server specific variables. It is used to provide links 
                to external server for viewing ticket details.
              </xsd:documentation>
          </xsd:annotation>                     
        </xsd:element>    
        <xsd:element name="TemplateRegistration" type="TemplateRegistrationType"
                     minOccurs="0" maxOccurs="50">
          <xsd:annotation>
              <xsd:documentation>
                Specification for template registration. A template is registered 
                based on the information provided in the element. A connector deployment 
                descriptor can have an optional list of upto 50 template registratin 
                elements.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element> 
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:complexType name="ServiceType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complext type for a web service. 
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Method">
          <xsd:annotation>
              <xsd:documentation>
                The name of the web service method. Each connector category has a 
                predefined set of methods as defined next.
              </xsd:documentation>
          </xsd:annotation> 
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <!-- event connector: -->
            <xsd:enumeration value="setup"/>
            <xsd:enumeration value="initialize"/>
            <xsd:enumeration value="getNewAlerts"/>
            <xsd:enumeration value="getUpdatedAlerts"/>
            <xsd:enumeration value="acknowledgeAlerts"/>
            <xsd:enumeration value="updateAlerts"/>
            <xsd:enumeration value="createEvent"/>
            <xsd:enumeration value="updateEvent"/>
            <xsd:enumeration value="uninitialize"/>
            <xsd:enumeration value="cleanup"/>
            <!-- ticketing connector: -->
            <xsd:enumeration value="createTicket"/>
            <xsd:enumeration value="updateTicket"/>
            <xsd:enumeration value="getTicket"/>
            <!-- change management connector: -->
            <xsd:enumeration value="publishCS"/>
            <xsd:enumeration value="updateChangeRequest"/>
            <xsd:enumeration value="getChangeRequest"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
      <xsd:element name="WebServiceEndpoint" type="StringT256">                    
          <xsd:annotation>
              <xsd:documentation>
                The web service end point indicating a specific location for accessing 
                a service. 
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      <xsd:element name="SOAPAction" type="StringT64" minOccurs="0">                    
          <xsd:annotation>
              <xsd:documentation>
                The SOAP action which carries out the web service call for the method.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      <xsd:element name="SOAPBindingType" minOccurs="0">
          <xsd:annotation>
              <xsd:documentation>
                The type of SOAP over HTTP binding. Choose from one of the four 
                options defined next.
              </xsd:documentation>
          </xsd:annotation> 
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:enumeration value="SOAP11HTTP_BINDING"/>
            <xsd:enumeration value="SOAP12HTTP_BINDING"/>
            <xsd:enumeration value="SOAP11HTTP_MTOM_BINDING"/>
            <xsd:enumeration value="SOAP12HTTP_MTOM_BINDING"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="SOAPHeaderAuthenticationType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complext type for SOAP Header Authentication.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Username" type="ConfigVariableType">
        <xsd:annotation>
            <xsd:documentation>
              The username of the authentication.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Password" type="ConfigVariableType">
        <xsd:annotation>
            <xsd:documentation>
              The password of the authentication.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="AuthVariable" type="ConfigVariableType" minOccurs="0"
                   maxOccurs="20"> 
        <xsd:annotation>
            <xsd:documentation>
              An optional list of extra authentication variables besides username 
              and password.
            </xsd:documentation>
        </xsd:annotation> 
      </xsd:element> 
      <xsd:element name="SOAPHeader" type="StringT256">
        <xsd:annotation>
            <xsd:documentation>
              A SOAP header string serving as template for the SOAP header. It is 
              to be updated with user inputs for variables defined above and 
              bound with a HTTP request.
            </xsd:documentation>
        </xsd:annotation> 
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="UsernamePasswordAuthenticationType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complext type for Username Password authentication.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Username" type="ConfigVariableType">
        <xsd:annotation>
            <xsd:documentation>
              The username of the authentication.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Password" type="ConfigVariableType">
        <xsd:annotation>
            <xsd:documentation>
              The password of the authentication.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ConfigVariableType">
    <xsd:annotation>
        <xsd:documentation>
          This seciton defines a complext type for configuration variables.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="VariableName" type="StringStrictT32">
        <xsd:annotation>
            <xsd:documentation>
              Name of the variable.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="DisplayName" type="StringT64">
        <xsd:annotation>
            <xsd:documentation>
              Name of the variable used for display on UI.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="required" type="xsd:boolean" default="false">                    
      <xsd:annotation>
          <xsd:documentation>
            A Flag indicating whether or not the variable is mandatory.
          </xsd:documentation>
      </xsd:annotation>
    </xsd:attribute>
  </xsd:complexType>
  <xsd:complexType name="ExternalURLType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for external URL.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Pattern" type="StringT256">
          <xsd:annotation>
              <xsd:documentation>
                The URL pattern used to format links to the external server.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
      <xsd:element name="ConfigVariable" type="ConfigVariableType" minOccurs="0"
                   maxOccurs="50">
          <xsd:annotation>
              <xsd:documentation>
                An optional list of configuration variablees representing the details 
                of the external server. They are used for constructing links to 
                the server based on the URL pattern.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="TemplateRegistrationType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for template registration metadata 
          which is used to register templates during connector deployment.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="FileName" type="StringT256"> 
          <xsd:annotation>
              <xsd:documentation>
                The template file name.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
      <xsd:element name="InternalName" type="StringStrictT128">                    
          <xsd:annotation>
              <xsd:documentation>
                A name representing the template in the connector framework.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
      <xsd:element name="TemplateName" type="StringStrictT128">                    
          <xsd:annotation>
              <xsd:documentation>
                The template display name to be used on UI.
              </xsd:documentation>
          </xsd:annotation> 
        </xsd:element>
      <xsd:element name="TemplateType">
          <xsd:annotation>
              <xsd:documentation>
                The template type as one of the three options defined next.
              </xsd:documentation>
          </xsd:annotation>
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:enumeration value="InboundXSL"/>
            <xsd:enumeration value="OutboundXSL"/>
            <xsd:enumeration value="OutboundXML"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
      <xsd:element name="Description" type="StringT512">
          <xsd:annotation>
              <xsd:documentation>
                A description of the template.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

Example A-10 EMEvent.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
   <xsd:include schemaLocation="connectorCommon.xsd"/>
   <xsd:element name="EMEvent">                    
      <xsd:annotation>
          <xsd:documentation>
            This section defines an EM event made available through the connector 
            framework.
          </xsd:documentation>
      </xsd:annotation>
      <xsd:complexType>
         <xsd:sequence>
            <xsd:element name="ConnectorGUID" type="xsd:string">                    
              <xsd:annotation>
                  <xsd:documentation>
                    A unique ID to identify the connector used to forward 
                    the EM event to the targeted external event system.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="ExternalEventID" type="xsd:string"
                         minOccurs="0">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The ID to identify the event created in the external event system. 
                    It is generated in the external system and used to update 
                    the external event.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="NotificationRuleOwner" type="xsd:string">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The owner of the notification rule which delivers the event.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="NotificationRuleName" type="xsd:string">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The name of the notification rule which delievers the event.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="ConnectorVariable" type="VariableType"
                         minOccurs="0" maxOccurs="50">                    
              <xsd:annotation>
                  <xsd:documentation>
                    An optional list of up ro 50 connector variables that contain 
                    name/value pairs. They correspond to the ConfigVariable defined 
                    in connectorDeploy.xsd.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="Property" type="PropertyType" minOccurs="0"
                         maxOccurs="50">                    
              <xsd:annotation>
                  <xsd:documentation>
                    An optinal list of up to 50 property variables as defined in 
                    connectorCommon.xsd.  
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="SystemAttributes"
                         type="EventSystemAttributesType">                    
              <xsd:annotation>
                  <xsd:documentation>
                    A list of attributes for events as defined by EM event system.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="EventClassSpecificAttributes">                    
              <xsd:annotation>
                  <xsd:documentation>
                    A list of attributes for events that are specific to the event 
                    class. 
                  </xsd:documentation>
              </xsd:annotation>
               <xsd:complexType>
                  <xsd:sequence>
                     <xsd:choice minOccurs="0" maxOccurs="200">
                     <xsd:element name="StringAttribute" type="StringValueType">                    
                      <xsd:annotation>
                          <xsd:documentation>
                            A String attribute.
                          </xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                     <xsd:element name="NumberAttribute" type="StringValueType">                    
                    <xsd:annotation>
                        <xsd:documentation>
                          A Number attribute.
                        </xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                     <xsd:element name="RawAttribute" type="StringValueType">                    
                        <xsd:annotation>
                            <xsd:documentation>
                              An attribute of type Raw.
                            </xsd:documentation>
                        </xsd:annotation>
                      </xsd:element>
                     <xsd:element name="DateAttribute" type="DateValueType">                    
                        <xsd:annotation>
                            <xsd:documentation>
                              An attribute of type Date.
                            </xsd:documentation>
                        </xsd:annotation>
                      </xsd:element>
                     </xsd:choice>
                  </xsd:sequence>
               </xsd:complexType>
            </xsd:element>
            <xsd:element name="EventContextAttributes">                    
              <xsd:annotation>
                  <xsd:documentation>
                    A list of contextual attributes that is captured by the source system at 
                    the point of event generation that could be useful for diagnosis.
                  </xsd:documentation>
              </xsd:annotation>
               <xsd:complexType>
                  <xsd:sequence>
                     <xsd:choice minOccurs="0" maxOccurs="200">
                     <xsd:element name="StringAttribute" type="StringValueType">                    
                        <xsd:annotation>
                            <xsd:documentation>
                              A String attribute.
                            </xsd:documentation>
                        </xsd:annotation>
                      </xsd:element>
                     <xsd:element name="NumberAttribute" type="StringValueType">                    
                        <xsd:annotation>
                            <xsd:documentation>
                              A Number attribute.
                            </xsd:documentation>
                        </xsd:annotation>
                      </xsd:element>
                     </xsd:choice>
                  </xsd:sequence>
               </xsd:complexType>
            </xsd:element>
         </xsd:sequence>
      </xsd:complexType>
   </xsd:element>
   <xsd:complexType name="EventSystemAttributesType">                    
      <xsd:annotation>
          <xsd:documentation>
            This section defines a complext type for system attributes provided by
             EM event system.
          </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
         <xsd:element name="EventClass" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The class of the event. For instance, target availability event, 
                  metric alert event, job status change event.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="EventID" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The ID to identify a single event instance.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="SequenceID" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  ID to identify a sequene of events which share the same event life
                   cycle. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="OccurredDate" type="xsd:dateTime" minOccurs="0">                    
            <xsd:annotation>
                <xsd:documentation>
                  Date when the event occured.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="ReportedDate" type="xsd:dateTime">                    
            <xsd:annotation>
                <xsd:documentation>
                The date timestamp when the EM event publishing system is reporting 
                the event.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="DisplayTZ" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The display timezone region associated with the event. Event 
                  publishers can specify the time zone the event should be displayed in.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="EventName" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  Name of the event.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Severity" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  Severity level of the current event. The value changes based on local language setting.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
           <xsd:element name="SeverityCode" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  Internal Severity value of the current event.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="SourceInfo" type="SourceInfoType">                    
            <xsd:annotation>
                <xsd:documentation>
                  The source information of the EM subsystems or componenets that
                   raises the event.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Message" type="xsd:string" minOccurs="0">                    
            <xsd:annotation>
                <xsd:documentation>
                  A description of the event.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="ActionMessage" type="xsd:string" minOccurs="0">                    
            <xsd:annotation>
                <xsd:documentation>
                  The action message for the event that helps diagnosing the issue. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="EventURL" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  A URL of the event on EM incident console.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="AutoClose" type="xsd:boolean">                    
            <xsd:annotation>
                <xsd:documentation>
                A flag indicating if an event is auto closed by the system, or it 
                has to be manually closed by users.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="EventCategory" type="xsd:string" minOccurs="0"
                      maxOccurs="50">                    
            <xsd:annotation>
                <xsd:documentation>
                  An optional list of event categories to which the event belongs.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
      </xsd:sequence>
   </xsd:complexType>
   <xsd:complexType name="StringValueType">                    
      <xsd:annotation>
          <xsd:documentation>
            This section defines a complext type for a general name/value pair, both 
            in String.
          </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
         <xsd:element name="Name" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The name of the String.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Value" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The value of the String.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
      </xsd:sequence>
   </xsd:complexType>
   <xsd:complexType name="DateValueType">                    
      <xsd:annotation>
          <xsd:documentation>
            This section defines a complext type for a name/value pair, with name 
            as a String name and value as a Date value.
          </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
         <xsd:element name="Name" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The name of the Date.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Value" type="xsd:dateTime">                    
            <xsd:annotation>
                <xsd:documentation>
                  The value of the Date.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
      </xsd:sequence>
   </xsd:complexType>
</xsd:schema>

Example A-11 EMIncident.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
   <xsd:include schemaLocation="connectorCommon.xsd"/>
   <xsd:include schemaLocation="EMEvent.xsd"/>
   <xsd:element name="EMIncident">  
      <xsd:annotation>
          <xsd:documentation>
            This section provides a data structure based on EM incidents for all 
            ticketing actions.
          </xsd:documentation>
      </xsd:annotation>
      <xsd:complexType>
         <xsd:sequence>
            <xsd:element name="ConnectorGUID" type="xsd:string">                    
              <xsd:annotation>
                  <xsd:documentation>
                    A unique ID to identify the connector that is processing 
                    the incident.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="TicketID" type="xsd:string" minOccurs="0">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The ID to identify the ticket created in the external ticketing system. 
                    It is generated in the external system and used to update 
                    the ticket.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="HDUser" type="xsd:string" minOccurs="0">                    
              <xsd:annotation>
                  <xsd:documentation>
                    HelpDesk user name provided from UI during connector configuration. 
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="NotificationRuleOwner" type="xsd:string">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The owner of the notification rule which generated the incident.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="NotificationRuleName" type="xsd:string">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The name of the notification rule which generated the incident.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="ReopenTicket" type="xsd:string" minOccurs="0">                    
              <xsd:annotation>
                  <xsd:documentation>
                    The identifier of the previous ticket that should be re-opened.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="ConnectorVariable" type="VariableType"
                         minOccurs="0" maxOccurs="50">   
              <xsd:annotation>
                  <xsd:documentation>
                    An optinal list of up ro 50 connector variables that contain 
                    name/value pairs.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="Property" type="PropertyType" minOccurs="0"
                         maxOccurs="50">
              <xsd:annotation>
                  <xsd:documentation>
                    An optinal list of up to 50 property variables as defined in 
                    connectorCommon.xsd.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="SystemAttributes"
                         type="IncidentSystemAttributesType"> 
              <xsd:annotation>
                  <xsd:documentation>
                    A list of attributes for incidents as defined by EM event system.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="HasEMEvent" type="xsd:boolean" minOccurs="1" maxOccurs="1">
              <xsd:annotation>
                  <xsd:documentation>
                    Flag to check an EM Event.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="EMEvent" type="EMEventType" minOccurs="0">
              <xsd:annotation>
                  <xsd:documentation>
                    A list of attributes associated with EM Event.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
         </xsd:sequence>
      </xsd:complexType>
   </xsd:element>
   <xsd:complexType name="IncidentSystemAttributesType">   
      <xsd:annotation>
          <xsd:documentation>
            This section defines a complex type for incident attributes provided by 
            EM event system.
          </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
         <xsd:element name="IncidentID" type="xsd:string"> 
            <xsd:annotation>
                <xsd:documentation>
                The ID of an incident.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="SourceInfo" type="SourceInfoType"
                      maxOccurs="unbounded">   
            <xsd:annotation>
                <xsd:documentation>
                  The source information of the EM subsystems or componenets that
                   raises the incident.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="IncidentURL" type="xsd:string"> 
            <xsd:annotation>
                <xsd:documentation>
                  A URL to the incident on EM.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="AutoClose" type="xsd:boolean">
            <xsd:annotation>
                <xsd:documentation>
                A flag indicating if an incident is auto closed by the system, or it 
                has to be manually closed by users.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="TicketStatus" type="xsd:string" minOccurs="0">                    
            <xsd:annotation>
                <xsd:documentation>
                If an external ticket is associated with the incident, 
                the status of the ticket as assigned at an external help desk system, 
                and updated in EM. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Owner" type="xsd:string">
            <xsd:annotation>
                <xsd:documentation>
                  User to whom the incident is assigned to resolve the issue. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="ResolutionState" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                The attribute used to track where the incident is in terms of resolution.
                For instance, it can be "new" or "closed".
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Acknowledge" type="xsd:boolean">  
            <xsd:annotation>
                <xsd:documentation>
                A flag indicating whether or not the incident has been acknowledged.
                Acknowledgement is simply a way for an administrator to indicate 
                that they have viewed the incident and take ownership of it.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Escalated" type="xsd:boolean">
            <xsd:annotation>
                <xsd:documentation>
                A flag indicating whether or not the incident has been escalated.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="EscalationLevel" type="xsd:string">                    
            <xsd:annotation>
                <xsd:documentation>
                  The hierarchical level of escalation that has been made to this incident.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Priority" type="xsd:string"> 
            <xsd:annotation>
                <xsd:documentation>
                The priority order in which the issue should be resolved. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Summary" type="xsd:string">
            <xsd:annotation>
                <xsd:documentation>
                  A text summary of the incident.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="CreationDate" type="xsd:dateTime">  
            <xsd:annotation>
                <xsd:documentation>
                The time when the incident is created by associating event to incident. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="LastUpdatedDate" type="xsd:dateTime">                    
            <xsd:annotation>
                <xsd:documentation>
                The time when the incident is last updated. The incident update 
                includes changes to any of the tracking attributes or changes to 
                the associated events and event sequence.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Category" type="xsd:string" minOccurs="0"
                      maxOccurs="50">
            <xsd:annotation>
                <xsd:documentation>
                An optional list of categories of the incidents.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="AdditionalDetails" type="VariableType" minOccurs="0"
                       maxOccurs="50">
            <xsd:annotation>
                <xsd:documentation>
                Additional Incident details.
                </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
         <xsd:element name="LastModifiedBy" type="xsd:string">
            <xsd:annotation>
                <xsd:documentation>
                User who last modified the incident.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
         <xsd:element name="Severity" type="xsd:string">
            <xsd:annotation>
                <xsd:documentation>
                  Severity level of the incident. The value changes based on local language setting.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="SeverityCode" type="xsd:string">
            <xsd:annotation>
                <xsd:documentation>
                  Internal Severity value of the current event. 
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="UpdatedAttributes" type="xsd:string">
            <xsd:annotation>
                <xsd:documentation>
                  Updated Attributes of an Incident.
                </xsd:documentation>
            </xsd:annotation>
          </xsd:element>  
      </xsd:sequence>
   </xsd:complexType>
</xsd:schema>

Example A-12 externalEvent.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
  <xsd:element name="ExternalEvent">
    <xsd:annotation>
        <xsd:documentation>
          This section defines the attribute requirement of an extenral event 
          for the connector framework to process it.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="SystemAttributes" type="ExternalEventSystemAttributesType">                    
          <xsd:annotation>
              <xsd:documentation>
                Attributes to capture general information about the external event 
                system. These attributes are system-specific, with all events from 
                the same external system sharing the same system attributes.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="EventClassAttributes"
                     type="ExternalEventClassAttributesType">                    
          <xsd:annotation>
              <xsd:documentation>
                Attributes to capture specific information required for the event 
                as defined in the event class.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:complexType name="ExternalEventSystemAttributesType">                    
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complext type for system attributes required for 
          all external events.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="eventName" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              Name of the event.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="category" type="xsd:string" minOccurs="0" maxOccurs="50">                    
        <xsd:annotation>
            <xsd:documentation>
              The event category to which the event belongs.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="targetName" type="xsd:string">                    
        <xsd:annotation>
            <xsd:documentation>
              Name of the target on which event was generated. It refers 
              to an entity in external systems simillar to an EM target.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="targetType" type="xsd:string">                    
        <xsd:annotation>
            <xsd:documentation>
              The type of the target. Target types defined for event connectors 
              are used. See connectorDeploy.xsd.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="occurrenceDate" type="xsd:dateTime">                    
        <xsd:annotation>
            <xsd:documentation>
              Date when the event occured.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="detectedDate" type="xsd:dateTime">                    
        <xsd:annotation>
            <xsd:documentation>
              Date when the event was last detected.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="autoClose" type="xsd:boolean">                    
        <xsd:annotation>
            <xsd:documentation>
              A flag indicating if an event is auto closed by the system, or it 
              has to be manually closed by users.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="message" type="xsd:string">                    
        <xsd:annotation>
            <xsd:documentation>
              A description of the event.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="severity" type="xsd:string">                    
        <xsd:annotation>
            <xsd:documentation>
              Severity level of the event.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ExternalEventClassAttributesType">                    
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complext type for class specific attributes required 
          for all external events in the class.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="external_event_id" type="xsd:string">                    
        <xsd:annotation>
            <xsd:documentation>
              ID used in external system to identify the event.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="external_rule_id" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              Optional rule ID that delivered the event in the external system.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="external_host" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              Optional host information from extrernal system where event was generated.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="external_source" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              Optional source information from the external system.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="external_severity" type="xsd:string">                    
        <xsd:annotation>
            <xsd:documentation>
              Severity level of the event on external system.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="external_status" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              Status of the event on extenral system.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="custom_field1" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              An optional field.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="custom_field2" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              An optional field.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="custom_field3" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              An optional field.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="custom_field4" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              An optional field.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="custom_field5" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              An optional field.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

Example A-13 connectorCommon.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
  <xsd:include schemaLocation="externalEvent.xsd"/>
  <xsd:complexType name="SourceInfoType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complext type for Source Information.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="SourceObjInfo" type="SourceObjInfoType" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              This element defines the data structure for the source object, the EM 
              subsystem or component, that raises an EM event or an incident.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="TargetInfo" type="TargetInfoType" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              The element defines the data structure for an EM target as related 
              to the connector framework.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="SourceObjInfoType"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for Source Object Information.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="ObjID" type="xsd:string"> 
        <xsd:annotation>
            <xsd:documentation>
              The unique ID to identify the source object.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="ObjName" type="xsd:string">
        <xsd:annotation>
            <xsd:documentation>
              The name of the source object.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="ObjOwner" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              The owner of the source object.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="SourceObjType" type="xsd:string">
        <xsd:annotation>
            <xsd:documentation>
              The type of the source object.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="SourceObjSubType" type="xsd:string" minOccurs="0">                    
        <xsd:annotation>
            <xsd:documentation>
              The subtype of the source object.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="TargetInfoType"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for target information.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="TargetGUID" type="xsd:string"> 
        <xsd:annotation>
            <xsd:documentation>
              A unique GUID for the target.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="TargetName" type="xsd:string">
        <xsd:annotation>
            <xsd:documentation>
              Name of the target.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="TargetType" type="xsd:string"> 
        <xsd:annotation>
            <xsd:documentation>
              Type of the target.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="TargetTypeLabel" type="xsd:string">
        <xsd:annotation>
            <xsd:documentation>
              The display label of the target type.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="TargetURL" type="xsd:string"> 
        <xsd:annotation>
            <xsd:documentation>
              The URL of the target. 
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="TargetProperty" type="PropertyType" minOccurs="0"
                   maxOccurs="50">
        <xsd:annotation>
            <xsd:documentation>
              An optional list of properties for the target.
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="PropertyType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for a property attribute.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Name" type="xsd:string">
          <xsd:annotation>
              <xsd:documentation>
                A string name defining a property attribute.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
      <xsd:element name="Value" type="xsd:string" nillable="true">                    
          <xsd:annotation>
              <xsd:documentation>
                A non-null string value.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="VariableType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for a general variable.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="VariableName" type="StringStrictT32">
          <xsd:annotation>
              <xsd:documentation>
                Name of the variable. It has to be a string containing 1 or upto 
                32 upper case or lower case letters or numbers.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
      <xsd:element name="VariableValue" type="StringT2048">
          <xsd:annotation>
              <xsd:documentation>
                Value of the variable. It has to be a string containing 1 or upto 
                2048 characters.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element> 
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="GetAlertsResponse">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for responses to a getAlerts request.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Alert" minOccurs="0" maxOccurs="200"> 
          <xsd:annotation>
              <xsd:documentation>
                The individual alerts contained in the response. A response may have 
                upto 200 alerts.
              </xsd:documentation>
          </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element ref="ExternalEvent"> 
              <xsd:annotation>
                  <xsd:documentation>
                    Details of the external event in the alert, as defined in 
                    ExternalEvent.xsd.
                  </xsd:documentation>
              </xsd:annotation> 
            </xsd:element> 
            <xsd:element name="InstanceVariable" type="VariableType"
                         minOccurs="0" maxOccurs="50">
              <xsd:annotation>
                  <xsd:documentation>
                    A list of instance variables for the alert.
                  </xsd:documentation>
              </xsd:annotation> 
            </xsd:element> 
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ConnectorVariablesType">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a complex type for connector variables. An element 
          of type ConnectorVariablesType may have up to 50 connector variables, as 
          defined next.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="ConnectorVariable" type="VariableType" minOccurs="0"
                   maxOccurs="50">
        <xsd:annotation>
            <xsd:documentation>
              A connector varialbe as a name/value pair. 
            </xsd:documentation>
        </xsd:annotation>
      </xsd:element> 
    </xsd:sequence>
  </xsd:complexType>
  <xsd:simpleType name="StringT64">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          64 bytes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="64"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringT128">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          128 bytes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="128"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringT256"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          256 bytes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="256"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringT512"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          512 bytes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="512"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringT2048">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          2048 bytes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="2048"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringStrictT16"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          16 bytes. The String can only contain lower or upper case letters, numbers, 
          and the underscore characters.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="16"/>
      <xsd:pattern value="([a-zA-Z0-9_])*"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringStrictT32">  
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          32 bytes. The String can only contain lower or upper case letters, numbers, 
          and the underscore characters.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="32"/>
      <xsd:pattern value="([a-zA-Z0-9_])*"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringStrictT64">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          64 bytes. The String can only contain lower or upper case letters, numbers, 
          and the underscore characters.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="64"/>
      <xsd:pattern value="([a-zA-Z0-9_])*"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringStrictT128"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          128 bytes. The String can only contain lower or upper case letters, numbers, 
          and the underscore characters.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="128"/>
      <xsd:pattern value="([a-zA-Z0-9_])*"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StringStrictT256">
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          256 bytes. The String can only contain lower or upper case letters, numbers, 
          and the underscore characters.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="256"/>
      <xsd:pattern value="([a-zA-Z0-9_])*"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="VersionT"> 
    <xsd:annotation>
        <xsd:documentation>
          This section defines a simple type for a String with maximum length of 
          20 bytes. The String can only contain numbers and the period characters.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:minLength value="1"/>
      <xsd:maxLength value="20"/>
      <xsd:pattern value="([0-9.])*"/>
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>

Example A-14 createTicket_response.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
            
  <xsd:include schemaLocation="connectorCommon.xsd"/>
  <xsd:element name="CreateTicketResponse"> 
    <xsd:annotation>
        <xsd:documentation>
          The response from an exnternal system upon a createTicket request. It 
          must contain a ticket ID, along with an optional list of instance variables.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
       <xsd:element name="ticketID" type="StringT128"> 
              <xsd:annotation>
                  <xsd:documentation>
                    The ID to identify the ticket created in the external ticketing
                     system. It is generated in the external system upon a create
                     ticket request and is used to update the ticket in the future.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element> 
       <xsd:element name="InstanceVariable" type="VariableType" minOccurs="0" maxOccurs="50"> 
              <xsd:annotation>
                  <xsd:documentation>
                    An optional list of name/value pairs returned by the external 
                    system.
                  </xsd:documentation>
              </xsd:annotation>
            </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

Example A-15 getTicket_request.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
  <xsd:include schemaLocation="connectorCommon.xsd"/>
  <xsd:element name="getTicketRequest">
    <xsd:annotation>
        <xsd:documentation>
          The request to an external system to test connection. It must contain 
          an existing ticket ID from the targeted external system. 
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="ticketID" type="StringT128">
          <xsd:annotation>
              <xsd:documentation>
                The ticket ID.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

Example A-16 getTicket_response.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
  <xsd:include schemaLocation="connectorCommon.xsd"/>
  <xsd:element name="getTicketResponse">
    <xsd:annotation>
        <xsd:documentation>
          The response from the external system upon a getTicketRequest request. 
          It must contain a ticket ID from the output of the request Web Service. 
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="ticketID" type="StringT128">    
          <xsd:annotation>
              <xsd:documentation>
                The ticket ID.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

Example A-17 publishTicket.xsd

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://xmlns.oracle.com/sysman/connector"
            targetNamespace="http://xmlns.oracle.com/sysman/connector"
            elementFormDefault="qualified">
  <xsd:include schemaLocation="connectorCommon.xsd"/>
  <xsd:element name="publishTicketStatus">  
    <xsd:annotation>
        <xsd:documentation>
          This section defines the request to publish ticket status from Ticketing 
          system to EM when it is updated.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="ConnectorGUID" type="StringStrictT16">                    
          <xsd:annotation>
              <xsd:documentation>
                The GUID of the connector the request is to be sent to. The GUID 
                is communicated to the external system in the earlier requests to 
                create tickets. It is returned in the inbound data to associate 
                the date with the corresponding ticket.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="ticketID" type="StringT128">  
          <xsd:annotation>
              <xsd:documentation>
                The ID of the ticket whose status is being updated.
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="ticketStatus" type="StringT64">
          <xsd:annotation>
              <xsd:documentation>
                The new status of the ticket. 
              </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
  <xsd:element name="RequestOccurTS" type="StringT64">
    <xsd:annotation>
        <xsd:documentation>
          Time when the inbound call is invoked.
        </xsd:documentation>
    </xsd:annotation>
  </xsd:element> <!-- NOT used xsd:dateTime because anyway sql date format must be used -->  
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>