<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="AppRelease.css"?>


<!--
     Copyright(c) 2006 Wendy's International, Inc.
     All rights reserved.
     This software is the confidential and proprietary information of
     Wendy's International, Inc. (Confidential Information).
-->

<!--
  definitions is the root element of this wsdl.  It defines a set of related operations for
  the AppRelease service.

  Note:  The wsdl namespace determines whether we are using WSDL 1.1 or WSDL 2.0
             WSDL 1.1:  http://schemas.xmlsoap.org/wsdl/
             WSDL 2.0:  http://www.w3.org/2006/01/wsdl
-->
<wsdl:definitions name="AppRelease"
                  targetNamespace="http://ws.wendys.com/AppRelease/"
                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                  xmlns:acre="http://ws.wendys.com/AppRelease/"
                  xmlns:wii="http://b2b.wendys.com/schema/WendysGlobal/v01_00"
                  xmlns:html="http://www.w3.org/1999/xhtml"
                  xmlns:soap11="http://schemas.xmlsoap.org/wsdl/soap/"
                  xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
                  xmlns:xsd="http://www.w3.org/2001/XMLSchema">

  <wsdl:documentation>
    <html:h1><html:em>AppRelease</html:em> Web Service</html:h1>
    <html:p>
        Provides information about application releases from the Application Config and Routing
        Environment (ACRE) which is also known as the PHased Rollout Application Tool (PHRAT)
        tables.
    </html:p>

    <html:h2><html:em>getAppReleases</html:em> Operation</html:h2>
    <html:p class="h2">
        Retrieves all qualifying AppRelease information and returns those AppReleases as an array
        ordered by <html:b>releaseText</html:b> and <html:b>releaseId</html:b>.
    </html:p>

    <html:h3>getAppReleasesRequestMessage</html:h3>
    <html:h4>siteNum</html:h4>
    <html:p class="h4">
        Site for which AppRelease Information is being retrieved.<html:br/>
        Must be a valid Site Number in the range 1 - 99999.
    </html:p>

    <html:h4>language</html:h4>
    <html:p class="h4">
        ISO-639 2 character language code.<html:br/>
        Users's preferred language. If there are no AppRelease instances
        whose releaseDisplayText is in the desired language, and if the
        language is not English, then a second query will be performed using
        the default (English) language.
    </html:p>

    <html:h4>endPoint</html:h4>
    <html:p class="h4">
        The application that is to consume the App Release information.  As of 2 May 2006, the
        known endPoints are:
        <html:ul>
          <html:li>BAJA_APP_LINK   Baja Store Portal end point</html:li>
          <html:li>CAFE_APP_LINK   Cafe Express Store Portal end point</html:li>
          <html:li>DB_INSTANCE     Database end point</html:li>
          <html:li>WEB_SERVICE     Web Services end point</html:li>
          <html:li>WENET_APP_LINK  Wendy's Corporate Portal end point</html:li>
          <html:li>OTHER           End point classified as "Other" because none of the above fit</html:li>
        </html:ul>
    </html:p>

    <html:h4>appType</html:h4> - Optional
    <html:p class="h4">
        The Type  of application whose release information is requested.  Default is All
        Applications.  As of 2 May 2006, the known appTypes are:
        <html:ul>
          <html:li>Back Office</html:li>
          <html:li>Back Office G2</html:li>
          <html:li>Berner Food Services</html:li>
          <html:li>Bin Chart</html:li>
          <html:li>Consumer Sites</html:li>
          <html:li>EMAIL</html:li>
          <html:li>FOOD_MGT</html:li>
          <html:li>Forecasting</html:li>
          <html:li>Front Line Sales</html:li>
          <html:li>Guaranteed Express</html:li>
          <html:li>Help Desk Issues Tracking</html:li>
          <html:li>LABOR_SCHED</html:li>
          <html:li>LINK2LEARN</html:li>
          <html:li>Labor Scheduler/Employee Maintenance</html:li>
          <html:li>Mymicros</html:li>
          <html:li>On-line Forms</html:li>
          <html:li>Online ESR</html:li>
          <html:li>PREP</html:li>
          <html:li>Restaurant Management Forms</html:li>
          <html:li>ServiceChannel</html:li>
          <html:li>Shoes for Crews</html:li>
          <html:li>TeamBaja</html:li>
          <html:li>VENDOR_LINKS</html:li>
          <html:li>ViewDirect</html:li>
          <html:li>Wendys Life Choices</html:li>
        </html:ul>
    </html:p>

    <html:h3>getAppReleasesResponseMessage</html:h3>
    <html:h4>applicationId</html:h4>
    <html:p class="h4">
        Numeric identifier for the type of Application returned.
    </html:p>

    <html:h4>applicationName</html:h4>
    <html:p class="h4">
        Name of the application associated with the applicationId
    </html:p>

    <html:h4>availabilityStart</html:h4>
    <html:p class="h4">
        First date that the Application is available for use.
    </html:p>

    <html:h4>availabilityStop</html:h4>
    <html:p class="h4">
        Date after which the Application should no longer be used.
        If the tag is empty, then the Application has no known end date.
    </html:p>

    <html:h4>releaseId</html:h4>
    <html:p class="h4">
        Numeric identifier of this release of the Application returned.
    </html:p>

    <html:h4>releaseName</html:h4>
    <html:p class="h4">
        Name of the release associated with the releaseId
    </html:p>

    <html:h4>releaseURL</html:h4>
    <html:p class="h4">
        URL for accessing the Application
    </html:p>

    <html:h4>releaseText</html:h4>
    <html:p class="h4">
        Text to be displayed when a link to the URL is created.
        This text is in the user's preferred language, or in English.
    </html:p>

    <html:h4>releaseDesc</html:h4>
    <html:p class="h4">
        Optional Descriptive text for the Application.  Usually, this is blank.
    </html:p>

    <html:h4>releaseDispOrder</html:h4>
    <html:p class="h4">
        A relative weighting number for sorting applications in a manner other
        than alphabetic order.  The higher the number, the further down the list
        the Application should appear.
    </html:p>

    <html:h2><html:em>getAppReleasesSorted</html:em> Operation</html:h2>
    <html:p class="h2">
        Retrieves all qualifying AppRelease information and returns those AppReleases as an array
        ordered by <html:b>releaseDispOrder</html:b>, <html:b>releaseText</html:b> and <html:b>releaseId</html:b>.
    </html:p>

    <html:h3>getAppReleasesRequestMessage</html:h3>
      <html:p class="h3">
          See above
      </html:p>

    <html:h3>getAppReleasesResponseMessage</html:h3>
      <html:p class="h3">
          See above
      </html:p>
  </wsdl:documentation>

  <!--
    types encapsulates schema definitions of inbound and outbound types and their component
    elements.
  -->
  <wsdl:types>
    <xsd:schema targetNamespace="http://ws.wendys.com/AppRelease/"
                elementFormDefault="unqualified"
                attributeFormDefault="unqualified">

      <!--
      <xsd:import namespace="http://b2b.wendys.com/schema/WendysGlobal/v01_00"
                  schemaLocation="http://mmcan01-20044/wii/schema/WendysGlobal/WendysGlobal.xsd"/>
       -->

      <!--
        hierarchyNum - Copied from WendysGlobal.xsd
        5-digit number that can be used for combination, consolidation,
        contract or site number.
        These numbers are used to identify Wendy's Franchisee hierarchies, as well
        as Corporate-owned and Franchise-owned stores.
      -->
      <xsd:simpleType name="hierarchyNum">
        <xsd:restriction base="xsd:nonNegativeInteger">
          <xsd:maxInclusive value="99999" />
        </xsd:restriction>
      </xsd:simpleType>

      <!--
        langCode - Copied from WendysGlobal.xsd
        ISO-639 2 character language code.
      -->
      <xsd:simpleType name="langCode">
        <xsd:restriction base="xsd:string">
          <xsd:pattern value="^[a-z]{2}" />
        </xsd:restriction>
      </xsd:simpleType>

      <!-- New Types -->
      <xsd:complexType name="AppRelease">
        <xsd:sequence>
          <xsd:element type="xsd:string"   name="applicationId" minOccurs="1" />
          <xsd:element type="xsd:string"   name="applicationName" minOccurs="1" />
          <xsd:element type="xsd:date"     name="availabilityStart" minOccurs="1" />
          <xsd:element type="xsd:date"     name="availabilityStop" minOccurs="0" />
          <xsd:element type="xsd:string"   name="releaseId" minOccurs="1" />
          <xsd:element type="xsd:string"   name="releaseName" minOccurs="1" />
          <xsd:element type="xsd:string"   name="releaseURL" minOccurs="1" />
          <xsd:element type="xsd:string"   name="releaseText" minOccurs="1" />
          <xsd:element type="xsd:string"   name="releaseDesc" minOccurs="0" />
          <xsd:element type="xsd:nonNegativeInteger" name="releaseDispOrder" minOccurs="1" />
        </xsd:sequence>
      </xsd:complexType>

      <xsd:complexType name="getAppReleasesType">
        <xsd:sequence>
          <xsd:element type="acre:hierarchyNum" name="siteNum" minOccurs="1" />
          <xsd:element type="acre:langCode" name="language" minOccurs="1" />
          <!--
          <xsd:element type="wii:hierarchyNum" name="siteNum" minOccurs="1" />
          <xsd:element type="wii:langCode" name="language" minOccurs="1" />
          -->
          <xsd:element type="xsd:string" name="endPoint" minOccurs="1" />
          <xsd:element type="xsd:string" name="appType" minOccurs="0" />
        </xsd:sequence>
      </xsd:complexType>

      <xsd:element type="acre:getAppReleasesType" name="getAppReleasesRequest" />

      <xsd:element name="getAppReleasesResponse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="acre:AppRelease" name="return" minOccurs="0" maxOccurs="unbounded" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
  </wsdl:types>

  <!-- wsdl:message elements describe potential input (Request) and output (Response) messages -->
  <wsdl:message name="getAppReleasesRequestMessage">
    <wsdl:part element="acre:getAppReleasesRequest" name="garRequest" />
  </wsdl:message>

  <wsdl:message name="getAppReleasesResponseMessage">
    <wsdl:part element="acre:getAppReleasesResponse" name="garResponse" />
  </wsdl:message>

  <!-- wsdl:portType describes messages in the service operations -->
  <wsdl:portType name="AppReleaseSOAPPort">
    <wsdl:operation name="getAppReleases">
      <wsdl:input message="acre:getAppReleasesRequestMessage" />
      <wsdl:output message="acre:getAppReleasesResponseMessage" />
    </wsdl:operation>

    <wsdl:operation name="getAppReleasesSorted">
      <wsdl:input message="acre:getAppReleasesRequestMessage" />
      <wsdl:output message="acre:getAppReleasesResponseMessage" />
    </wsdl:operation>
  </wsdl:portType>

  <!-- wsdl:binding states a serialization protocol for operation sets (Ports) -->
  <wsdl:binding type="acre:AppReleaseSOAPPort" name="AppReleaseSOAP11Binding">
    <soap11:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />

    <wsdl:operation name="getAppReleases">
      <soap11:operation style="document" soapAction="getAppReleases" />
      <wsdl:input>
        <soap11:body parts="garRequest" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap11:body parts="garResponse" use="literal" />
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="getAppReleasesSorted">
      <soap11:operation style="document" soapAction="getAppReleasesSorted" />
      <wsdl:input>
        <soap11:body parts="garsRequest" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap11:body parts="garsResponse" use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>

  <wsdl:binding type="acre:AppReleaseSOAPPort" name="AppReleaseSOAP12Binding">
    <soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />

    <wsdl:operation name="getAppReleases">
      <soap12:operation style="document" soapAction="getAppReleases" />
      <wsdl:input>
        <soap12:body parts="garRequest" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body parts="garResponse" use="literal" />
      </wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="getAppReleasesSorted">
      <soap12:operation style="document" soapAction="getAppReleasesSorted" />
      <wsdl:input>
        <soap12:body parts="garsRequest" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body parts="garsResponse" use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>

  <!-- wsdl:service names this service and associates it with the above binding and a URL -->
  <wsdl:service name="AppRelease">
    <wsdl:port binding="acre:AppReleaseSOAP11Binding" name="AppReleaseSOAP11Port">
      <soap11:address location="http://WebServices.wendys.com/AppRelease" />
    </wsdl:port>

    <wsdl:port binding="acre:AppReleaseSOAP12Binding" name="AppReleaseSOAP12Port">
      <soap12:address location="http://WebServices.wendys.com/AppRelease" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>