Response XSL

Hello,
I am working on a requirement which connects to external system and gets a response message in plain text format ( not XML) as follows
5555 JOHN MAGGY 19691005 CHICAGO IL
i need to write XSL to convert above plain text into following XML format
<Data>5555 JOHN MAGGY 19691005 CHICAGO IL </Data>
please give me idea how to convert the plan text to XML via XSL.
also share me if you have any XML which can handle above requirement. Thanks

Use the substring function in your XSL file to parse the plain text.
select="substring-after($newlist, $delimiter)"

Similar Messages

  • Using a Response XSL on XAI Inbound Service creates an invalid XML

    I created a Response XSL and plugged it into my XAI Inbound Service, however the Response XML it creates is invalid:
    <?xml version="1.0" ?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="urn:schemas-xmlsoap-org:envelope">
    <SOAP-ENV:Body >
    *<?xml version="1.0" encoding="UTF-8"?>*
    <CmAccountSearch>
    <Request AccountNumber="" StreetNumber="740" StreetLine1="Polaris Ave" City="Foster City" State="CA"/>
    <Response ReturnCode="I">
    <CustomerDetailsList AccountNumber="9231764166" CustomerName="Rovno,Aleksandr" AmountDue="0" IsCashOnly="false" StreetLine1="740 Polaris Ave"/>
    <CustomerDetailsList AccountNumber="0304039866" CustomerName="Ray,Jamse" AmountDue="0" IsCashOnly="false" StreetLine1="740 Polaris Ave"/>
    </Response>
    </CmAccountSearch>
    </SOAP-ENV:Body >
    </SOAP-ENV:Envelope>
    Note that a second <?xml...> tag is created after the SOAP tags.
    Here is my XSL:
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
         <xsl:output method="xml" indent="yes" encoding="UTF-8"/>
         <xsl:template match="/">
              <CmAccountSearch>
                   <xsl:apply-templates/>
              </CmAccountSearch>
         </xsl:template>
         <xsl:template match="input">
              <xsl:element name="Request">
                   <xsl:attribute name="AccountNumber">
                        <xsl:value-of select="accountId"/>
                   </xsl:attribute>
                   <xsl:attribute name="StreetNumber">
                        <xsl:value-of select="streetNumber"/>
                   </xsl:attribute>
                   <xsl:attribute name="StreetLine1">
                        <xsl:value-of select="streetName"/>
                   </xsl:attribute>
                   <xsl:attribute name="City">
                        <xsl:value-of select="city"/>
                   </xsl:attribute>
                   <xsl:attribute name="State">
                        <xsl:value-of select="state"/>
                   </xsl:attribute>
              </xsl:element>
         </xsl:template>
         <xsl:template match="output">
              <xsl:element name="Response">
                   <xsl:attribute name="ReturnCode">
                        <xsl:value-of select="returnCode"/>
                   </xsl:attribute>
                   <xsl:for-each select ="//customerDetails">
                        <xsl:element name="CustomerDetailsList">
                             <xsl:attribute name="AccountNumber">
                                  <xsl:value-of select="accountId"/>
                             </xsl:attribute>
                             <xsl:attribute name="CustomerName">
                                  <xsl:value-of select="customerName"/>
                             </xsl:attribute>
                             <xsl:attribute name="AmountDue">
                                  <xsl:value-of select="currentAmountDue"/>
                             </xsl:attribute>
                             <xsl:attribute name="IsCashOnly">
                                  <xsl:value-of select="cashOnlySw"/>
                             </xsl:attribute>
                             <xsl:attribute name="StreetLine1">
                                  <xsl:value-of select="premiseAddressLine1"/>
                             </xsl:attribute>
                        </xsl:element>
                   </xsl:for-each>
              </xsl:element>
         </xsl:template>
    </xsl:stylesheet>
    Here is the Response XML before applying the Response XSL to the XAI Inbound Service:
    <?xml version="1.0" ?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="urn:schemas-xmlsoap-org:envelope">
    <SOAP-ENV:Body >
    <CmAccountSearch>
    <input>
    <accountId/>
    <streetNumber>740</streetNumber>
    <streetName>Polaris Ave</streetName>
    <city>Foster City</city>
    <state>CA</state>
    </input>
    <output>
    <customerDetails>
    <accountId>9231764166</accountId>
    <customerName>Rovno,Aleksandr</customerName>
    <currentAmountDue>0</currentAmountDue>
    <cashOnlySw>false</cashOnlySw>
    <premiseAddressLine1>740 Polaris Ave</premiseAddressLine1>
    </customerDetails>
    <customerDetails>
    <accountId>0304039866</accountId>
    <customerName>Ray,Jamse</customerName>
    <currentAmountDue>0</currentAmountDue>
    <cashOnlySw>false</cashOnlySw>
    <premiseAddressLine1>740 Polaris Ave</premiseAddressLine1>
    </customerDetails>
    <returnCode>I</returnCode>
    </output>
    </CmAccountSearch>
    </SOAP-ENV:Body >
    </SOAP-ENV:Envelope>
    I would like to know if anyone is familiar with this issue and how I can go about to fix it.
    Any response will be greatly appreciated.
    Thanks in advance.

    Just set RETRIEVE_SW to 'false', APPT_RETRIEVE_FLG will be automatically set to 'C' internally.
    Setting ACTION_SHOW_APP_SW to true has no meaning for pageAction 'read'.

  • SOAP Response XSLT mapping issue

    Hi,
    Source XML.
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:Create__CompIntfc__APC_WORKER2_CIResponse xmlns:ns0="http://peoplesoft.com/APC_WORKER2_CI">
       <ns0:notification>y</ns0:notification>
       <ns0:detail>
          <ns0:keyinformation>
             <ns0:PERSON_ID/>
             <ns0:SUBMIT_DATE/>
             <ns0:ACTION/>
          </ns0:keyinformation>
          <ns0:messages>
             <ns0:type/>
             <ns0:messagesetnumber/>
             <ns0:messagenumber/>
             <ns0:messagetext/>
             <ns0:explaintext/>
          </ns0:messages>
       </ns0:detail>
    </ns0:Create__CompIntfc__APC_WORKER2_CIResponse>
    Target XML
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:Z_HPA_357_PROVISION_USER_IMS.Response xmlns:ns1="urn:sap-com:document:sap:rfc:functions"><SUCCESS>y</SUCCESS></ns1:Z_HPA_357_PROVISION_USER_IMS.Response>
    XSLT Mapping
    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:ns1="http://authserv.apc.com/peoplesoft">
      <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" />
      <xsl:template match="/">
        <ns1:Z_HPA_357_PROVISION_USER_IMS.Response xmlns:ns1="urn:sap-com:document:sap:rfc:functions">
          <SUCCESS>
            <xsl:value-of select="soap:Create__CompIntfc__APC_WORKER2_CIResponse/a:notification" />
          </SUCCESS>
        </ns1:Z_HPA_357_PROVISION_USER_IMS.Response>
      </xsl:template>
    </xsl:stylesheet>
    Can somebody help to figure out the issue in higlighted area of XSLT mapping.
    We just need to move "notification" value to "SUCCESS" value of RFC.
    thanks.
    santosh,.

    Hi Santosh,
    add the source namespace with a prefix:
    xmlns:ns0="http://peoplesoft.com/APC_WORKER2_CI"
    do it most simple generic without path
    do not forget the prefix
    ns0:
    use xsl:value-of:
    xsl:value-of select="//ns0:notification"
    Regards,
    Udo

  • Why does the Java method ServletContext.getResourceAsStream return null with a know good path to an xsl file?

    iPLANET ISSUE
    Why does the Java method ServletContext.getResourceAsStream return null with a know good path to an xsl file?
    CODE
    ServletContext context = mpiCfg.getServletConfig().getServletContext();
    // Debugging
    out.print(context.getServerInfo());     // Get server info
    out.print(&#8220;getRealPath = &#8221; + context.getRealPath("WEB-INF/xsl/RedirectToAcs.xsl"));
    String strXslName = "RedirectToAcs.xsl";
    InputStream is = context.getResourceAsStream("WEB-INF/xsl/"+ strXslName);
    TRACE FROM THE LOG
    [26/Jul/2002:08:23:15] info ( 2868): [0][][ClearCommerceCcpaMpi][]getServerInfo() = iPlanet-WebServer-Enterprise/6.0, getRealPath() = C:\iPlanet\Servers\web-apps\ccpa\WEB-INF\xsl\RedirectToAcs.xsl
    [26/Jul/2002:08:23:15] info ( 2868): [0][][ClearCommerceCcpaMpi][]strXslName = RedirectToAcs.xsl, is = null
    [26/Jul/2002:08:23:15] info ( 2868): [1][][ClearCommerceCcpaMpi][16]ResourceAsStream is null
    [26/Jul/2002:08:23:15] info ( 2868): [1][][ClearCommerceCcpaMpi][30]Problem reading XSL file.
    DIRECTORY DUMP
    C:\iPlanet\Servers\web-apps\ccpa\WEB-INF\xsl>dir
    Volume in drive C has no label.
    Volume Serial Number is 9457-EBF4
    Directory of C:\iPlanet\Servers\web-apps\ccpa\WEB-INF\xsl
    07/22/2002 05:54p <DIR> .
    07/22/2002 05:54p <DIR> ..
    07/22/2002 05:54p 3,086 RedirectToAcs.xsl
    07/22/2002 05:54p 3,088 Response.xsl
    2 File(s) 6,174 bytes
    2 Dir(s) 1,797,405,696 bytes free

    I think there's supposed to be a forward slash before WEB-INF.
    InputStream is = context.getResourceAsStream("/WEB-INF/xsl/"+ strXslName);

  • How to catch the response of external system

    Hi i have a scenario like to send a request and get the response
    If we use invocation type as realtime for outbound message type in external system then we can add both request xsl and also response xsl
    but if we use invocation type as xai for outbound message type ,where can we add the response xsl file
    how to convert the raw response
    plz help me.

    shanker,
    We are currently developing Outbound Messages at my client. This stuff is new to me and unfortunately, the documentation does not go into a lot of detail, but I'll give you an explanation of how I understand the differences in the response processing for XAI & Outbound Messages.
    If you define the Outbound Message with a processing method of 'Real-time', XAI will send the request and it expects an immediate response. It keeps the connection open until it receives the response. There is even a Context parameter you can set how long you wish to wait for a response before it times out. So unlike XAI which is asynchronous, this processing method 'appears' to be synchronous, because the request waits for a response and when it is received, will update the Outbound Message with the response. And since you expect a response, CC&B allow you to define a response XSL on the External System / Outbound Message Type configuration.
    What is still unclear to me is the setting of HTTP Transport Method in the Context Tab. Possible values are 'send' and 'sendReceive'. How is the different values affect XAI & Real-time messages?
    Any comments are welcome.
    Andries

  • CC&B not populating response to real-time Outbound Message

    I have a real-time Outbound Message which is sent to webMethods via SOAP with the HTTP Sender (not RTHTTPSNDR). In my BO Schema, I have the response element defined as:
    <responseMessage type="raw" mapField="XML_RESPONSE"/>
    The Outbound Message is successfully sent and the webMethods response updates the message to 'Complete' but there is no data in the response tab on the Outbound Message in CC&B. For my testing, I simply want a single element of <status> populated in the response.
    This is the response message that is sent by webMehods:
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Header
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
    <responseMessage>
    <Status>Success</Status>
    </responseMessage>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Any help would be appreciated.
    Thanks.

    hi andries
    can i know what type of invocation type you are using in external system
    If you use RTHTTPSNDR on xai sender then you must use invocation type as realtime on externalsystem( you can define xsl for both request and response)
    If you use HTTPSNDR then you must use invocation type as XAI (for which you can define a request xsl but not response xsl)
    so my advice is to go with RTHTTPSNDR and define both request and response xsl files
    MOST Important your xai sender never gets refreshed unless you restart your ccb server this is because invocation is REALTIME
    if you use HTTPSNDR then just by going to xai command you can refresh mpl refresh sender command
    I think its a bug in ccb 2.3.1 sender doesnt gets refreshed with new values
    Now for the purpose if you can post your request schema and then the request xsl and the response xsl ,ill clear your doubt happily.

  • People search with initials

    I’m having problems getting "initials" shown in a "People Search Core Results". they are showed on
    the Person.aspx
    so they are pulled from the AD
    but trying to customize the XML i get errors every time 
    tried to follow:
    sharepoint-2010-adding-a-field-to-the-people-search-results
    and
    how-to-show-the-fax-number-in-people-search-results-in-sharepoint-2010
    my xml:
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:asp="http://schemas.microsoft.com/ASPNET/20" xmlns:SEARCHWC="http://schemas.microsoft.com/searchserver/"><xsl:output
    method="xml" indent="no"/><xsl:param name="SortBy" /><xsl:param name="DropDownOption" /><xsl:param name="RelevanceSortUrl" /><xsl:param name="RelevanceSortLabel" /><xsl:param
    name="SocialDistanceSortUrl" /><xsl:param name="SocialDistanceSortLabel" /><xsl:param name="NameSortUrl" /><xsl:param name="NameSortLabel" /><xsl:param name="IsNoKeyword" /><xsl:param
    name="IsFixedQuery" /><xsl:param name="ShowMoreLink" /><xsl:param name="MoreLinkLabel" /><xsl:param name="MoreLink" /><xsl:param name="AlertMeLink" /><xsl:param name="AlertMeText"
    /><xsl:param name="SrchRSSText" /><xsl:param name="SrchRSSLink" /><xsl:param name="ShowMessage" /><xsl:param name="ShowActionLinks" /><xsl:param name="SearchProviderText" /><xsl:param
    name="SearchProviderLink" /><xsl:param name="IsPeopleCoreResultsWebPart" /><xsl:param name="NoFixedQuery" /><xsl:param name="NoKeyword" /><xsl:param name="NoPeopleResults" /><xsl:param
    name="NoPeopleResults1" /><xsl:param name="NoPeopleResults2" /><xsl:param name="NoPeopleResults3" /><xsl:param name="NoPeopleResults4" /><xsl:param name="ParentOrgsLabel" /><xsl:param
    name="ViewHiearchyLabel" /><xsl:param name="RecentContentLabel" /><xsl:param name="ResponsibilitiesLabel" /><xsl:param name="SkillsLabel" /><xsl:param name="InterestsLabel" /><xsl:param
    name="PastProjectsLabel" /><xsl:param name="SchoolLabel" /><xsl:param name="MembershipLabel" /><xsl:param name="AboutMeLabel" /><xsl:param name="BaseOfficeLabel" /><xsl:param name="SummaryLabel"
    /><xsl:param name="ProfileViewLabel" /><xsl:param name="UpdateProfileLabel" /><xsl:param name="QueriesFoundYouLabel" /><xsl:param name="UpdateProfileKeywordLabel" /><xsl:param name="SelfSearchLabel"
    /><xsl:param name="NoKeywordLabel" /><xsl:param name="AddToMyColleaguesText" /><xsl:param name="PopupFetcingResultLabel" /><xsl:param name="IdPrefix" /><xsl:param name="LangPickerHeading"
    /><xsl:param name="LangPickerNodeSet" /><xsl:param name="FilterNodeSet" /><xsl:param name="ShowPeopleSortDropdown" /><xsl:param name="RecentUpdateTabLabel" /><!--
    When there is no keywory to issue the search --><xsl:template name="dvt_1.noKeyword">  <span>    <xsl:choose>   
      <xsl:when test="$IsFixedQuery">        <xsl:value-of select="$NoFixedQuery" />      </xsl:when>      <xsl:otherwise>        <xsl:value-of
    select="$NoKeyword" />      </xsl:otherwise>    </xsl:choose>  </span>       </xsl:template><!-- When empty result set is returned from search --><xsl:template
    name="dvt_1.empty">    <div>    <xsl:if test="$ShowActionLinks">      <xsl:call-template name="ActionBarTemplate" />    </xsl:if>  </div> 
    <span id="CSR_NO_RESULTS">    <xsl:value-of select="$NoPeopleResults"/>    <ol>      <li><xsl:value-of select="$NoPeopleResults1"/></li>     
    <li><xsl:value-of select="$NoPeopleResults2"/></li>      <li><xsl:value-of select="$NoPeopleResults3"/></li>      <li><xsl:value-of select="$NoPeopleResults4"/></li> 
      </ol>  </span></xsl:template><!-- Main body template--><xsl:template name="dvt_1.body">  <div>    <xsl:if test="$ShowActionLinks">      <div>  
          <xsl:if test="$LangPickerNodeSet and count($LangPickerNodeSet) &gt; 0">          <label for="langpickerdd" id="langpickerddlabel"><xsl:value-of select="$LangPickerHeading"/></label> 
            <select title="{$LangPickerHeading}" onchange="window.location.href=this.value" id="langpickerdd">            <xsl:for-each select="$LangPickerNodeSet"> 
                <xsl:element name="option">                <xsl:attribute name="value"><xsl:value-of select="@url"/></xsl:attribute> 
                  <xsl:if test="@selected = 'true'">                  <xsl:attribute name="selected">selected</xsl:attribute>     
              </xsl:if>                <xsl:value-of select="@title"/>              </xsl:element>         
      </xsl:for-each>                  </select>          <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>        </xsl:if> 
          <xsl:if test="$ShowPeopleSortDropdown">          <label for="sortbydd" id="sortbyddlabel"><xsl:value-of select="$SortBy" /></label>    
          <select title="{$SortBy}" name="dropdown" onchange="window.location.href=this.value" id="sortbydd">            <xsl:element name="option">  
                <xsl:attribute name="value"><xsl:value-of select="ddwrt:EnsureAllowedProtocol(string($RelevanceSortUrl))"/></xsl:attribute>              <xsl:if
    test="$DropDownOption = '0'">                <xsl:attribute name="selected">selected</xsl:attribute>              </xsl:if>     
            <xsl:value-of select="$RelevanceSortLabel"/>            </xsl:element>            <xsl:if test="string-length($SocialDistanceSortUrl) &gt;
    0 and string-length($SocialDistanceSortLabel) &gt; 0">              <xsl:element name="option">                 <xsl:attribute name="value"><xsl:value-of
    select="ddwrt:EnsureAllowedProtocol(string($SocialDistanceSortUrl))"/></xsl:attribute>                <xsl:if test="$DropDownOption = '1'">           
          <xsl:attribute name="selected">selected</xsl:attribute>                </xsl:if>                <xsl:value-of select="$SocialDistanceSortLabel"/> 
                </xsl:element>            </xsl:if>            <xsl:element name="option">              
    <xsl:attribute name="value"><xsl:value-of select="ddwrt:EnsureAllowedProtocol(string($NameSortUrl))"/></xsl:attribute>              <xsl:if test="$DropDownOption = '2'"> 
                  <xsl:attribute name="selected">selected</xsl:attribute>              </xsl:if>              <xsl:value-of
    select="$NameSortLabel"/>            </xsl:element>          </select>            <xsl:text disable-output-escaping="yes">&#8195;</xsl:text> 
          </xsl:if>        <xsl:call-template name="ActionBarTemplate" />      </div>    </xsl:if>    <xsl:for-each select="All_Results/Result"> 
        <xsl:call-template name="SingleResult"/>    </xsl:for-each>        <xsl:call-template name="MoreLinkTemplate" />  </div>  </xsl:template><!-- This template
    is called for each result --><xsl:template name="SingleResult">    <xsl:element name="div">     <xsl:attribute name="id">      <xsl:value-of select="concat('Container',
    id)"/>    </xsl:attribute>    <xsl:choose>      <xsl:when test="id = 1">        <xsl:attribute name="class">psrch-FirstFullResult</xsl:attribute> 
        </xsl:when>      <xsl:otherwise>        <xsl:attribute name="class">psrch-FullResult</xsl:attribute>      </xsl:otherwise>    </xsl:choose> 
      <xsl:call-template name="SingleResultInternal" />  </xsl:element></xsl:template><xsl:template name="SingleResultInternal">  <xsl:variable name="id" select="id"/>  <xsl:variable
    name="currentId" select="concat($IdPrefix,$id)"/>  <xsl:variable name="url" select="url"/>  <xsl:variable name="email" select="workemail"/>  <xsl:variable name="sip"
    select="sipaddress"/>  <xsl:variable name="prefix">IMNRC('</xsl:variable>  <xsl:variable name="suffix">')</xsl:variable>  <xsl:variable name="hassip"      
    select="string-length($sip) &gt; 0"/>  <xsl:variable name="hasemail"     select="string-length($email) &gt; 0"/>  <xsl:variable name="haspn"        select="string-length(preferredname)
    &gt; 0"/>  <xsl:variable name="hasydn"       select="string-length(yomidisplayname) &gt; 0"/>  <xsl:variable name="hasjt"        select="string-length(jobtitle)
    &gt; 0"/>  <xsl:variable name="hasdp"        select="string-length(department) &gt; 0"/>  <xsl:variable name="hasorg"       select="string-length(orgnames)
    &gt; 0"/>  <xsl:variable name="haswph"       select="string-length(workphone) &gt; 0"/>   <xsl:variable name="hasinitials" select="string-length(initials) &gt; 0"/> 
    <xsl:variable name="hasonum"      select="string-length(officenumber) &gt; 0"/>  <xsl:variable name="hascol"       select="string-length(colleaguecategory) &gt; 0"/> 
    <xsl:variable name="hasacu"       select="string-length(addtomycolleaguesurl) &gt; 0"/>  <xsl:variable name="hashier"      select="string-length(hierarchyurl) &gt; 0"/> 
    <xsl:variable name="hasabme"      select="string-length(aboutme) &gt; 0"/>  <xsl:variable name="hasresp"      select="string-length(responsibility) &gt; 0"/> 
    <xsl:variable name="hassk"        select="($FilterNodeSet and $FilterNodeSet/@title='SPShSkills') or hithighlightedproperties/skills/@hashh &gt; 0"/>  <xsl:variable name="hasint"    
      select="($FilterNodeSet and $FilterNodeSet/@title='SPShInterests') or hithighlightedproperties/interests/@hashh &gt; 0"/>  <xsl:variable name="hasorgparent" select="($FilterNodeSet and $FilterNodeSet/@title='OrgParentNames')
    or hithighlightedproperties/orgparentnames/@hashh &gt; 0"/>  <xsl:variable name="hasmem"       select="($FilterNodeSet and $FilterNodeSet/@title='Memberships') or hithighlightedproperties/memberships/@hashh
    &gt; 0"/>  <xsl:variable name="haspp"        select="($FilterNodeSet and $FilterNodeSet/@title='SPShPastProjects') or hithighlightedproperties/pastprojects/@hashh &gt; 0"/>  <xsl:variable
    name="hasbol"       select="($FilterNodeSet and $FilterNodeSet/@title='SPShLocation') or hithighlightedproperties/baseofficelocation/@hashh &gt; 0"/>  <xsl:variable name="hassch"      
    select="($FilterNodeSet and $FilterNodeSet/@title='SPShSchool') or hithighlightedproperties/schools/@hashh &gt; 0"/>  <xsl:variable name="hassum"       select="count(hithighlightedsummary/c0) &gt;
    0"/>  <xsl:variable name="hasvlm"       select="string-length(profileviewlastmonth) &gt; 0"/>  <xsl:variable name="hasvlw"       select="string-length(profileviewlastweek)
    &gt; 0"/>  <xsl:variable name="hasquery"     select="string-length(queriesfoundyou) &gt; 0"/>      <div id="UserPhoto">    <a href="{ddwrt:EnsureAllowedProtocol(string($url))}"
    id="{concat($currentId, '_CSR_IMGL')}" title="{preferredname}">      <xsl:variable name="imgid" select="concat('CSR_IMG_',$id)"/>      <xsl:variable name="purl"> 
          <xsl:call-template name="GetPicUrl">          <xsl:with-param name="PicUrl" select="pictureurl"/>          <xsl:with-param name="PlaceHolderUrl"
    select="'/_layouts/images/o14_person_placeholder_96.png'"/>        </xsl:call-template>      </xsl:variable>      <img id="{$imgid}" src="{ddwrt:EnsureAllowedProtocol(string($purl))}"
    alt="{preferredname}" border="0"></img>    </a>    <xsl:if test="$hascol">      <div id="ColleagueField">        <xsl:value-of select="colleaguecategory"/> 
        </div>    </xsl:if>  </div>  <span id="JBean">    <xsl:choose>      <xsl:when test="$hassip">        <img alt=""
    border="0" height="12" width="12" src="/_layouts/images/imnhdr.gif" onload="{concat($prefix, $sip, $suffix)}" ShowOfflinePawn="1" id="{concat('CSRP_',$id,',type=sip')}" />   
      </xsl:when>      <xsl:otherwise>        <img alt="" border="0" height="12" width="12" src="/_layouts/images/imnhdr.gif" onload="{concat($prefix,
    $email, $suffix)}" ShowOfflinePawn="1" id="{concat('CSRP_',$id,',type=smtp')}" />      </xsl:otherwise>    </xsl:choose>  </span>  <div id="ContactInfo"> 
      <ul id="MiniContactCard">      <li id="NameField">        <xsl:if test="$haspn">          <a href="{ddwrt:EnsureAllowedProtocol(string($url))}"
    id="{concat($currentId, '_CSR')}">            <xsl:apply-templates select="hithighlightedproperties/preferredname" />          </a>        </xsl:if> 
        </li>      <xsl:if test="$hasydn">        <li id="YomiField">          <xsl:apply-templates select="hithighlightedproperties/yomidisplayname"
    />        </li>      </xsl:if>      <xsl:if test="$hasjt">        <li id="JobTitleField">          <xsl:apply-templates
    select="hithighlightedproperties/jobtitle" />        </li>      </xsl:if>      <xsl:if test="$hasdp and not($hasorg)">        <li id="DepartmentField"> 
            <xsl:apply-templates select="hithighlightedproperties/department" />        </li>      </xsl:if>      <xsl:if test="$hasorg">   
        <li id="OrgField">                              <xsl:call-template name="RenderNameUrlMultivalue">           
    <xsl:with-param name="names" select="hithighlightedproperties/orgnames"/>            <xsl:with-param name="urls" select="orgurls_multival"/>         
      <xsl:with-param name="currentId" select="$currentId"/>          </xsl:call-template>                  </li>      </xsl:if> 
        <xsl:if test="$haswph">        <li id="PhoneField">          <xsl:apply-templates select="hithighlightedproperties/workphone" />     
      </li>          
    <xsl:if test="$hasinitials">        <li id="initialsField">          <xsl:apply-templates select="hithighlightedproperties/initials" />       
    </li>      </xsl:if>      <xsl:if test="$hasonum">        <li id="OfficeField">          <xsl:apply-templates select="hithighlightedproperties/officenumber"
    />        </li>      </xsl:if>      <xsl:if test="$hassip or $hasemail">        <li id="EmailField">          <xsl:choose> 
              <xsl:when test="$hassip">              <a id="{concat($currentId, '_EmailLink')}" href="{concat('mailto:', $sip)}">         
          <xsl:apply-templates select="hithighlightedproperties/sipaddress" />              </a>            </xsl:when>         
      <xsl:otherwise>              <a id="{concat($currentId, '_EmailLink')}" href="{concat('mailto:', $email)}">                <xsl:apply-templates
    select="hithighlightedproperties/workemail" />              </a>            </xsl:otherwise>          </xsl:choose>     
      </li>      </xsl:if>    </ul>    <xsl:if test="$hasacu or $hashier or $IsPeopleCoreResultsWebPart">      <ul id="Actions">         
          <xsl:if test="$hasacu">          <li id="AddColleagueLinkField">            <a id="{concat($currentId, '_AddColleagueLink')}" href="{ddwrt:EnsureAllowedProtocol(string(addtomycolleaguesurl))}">&#187;
    <xsl:value-of select="$AddToMyColleaguesText" /></a>          </li>        </xsl:if>        <xsl:if test="$hashier">       
      <li id="OrgBrowserField">            <a id="{concat($currentId, '_OrgBrowserLink')}" href="{ddwrt:EnsureAllowedProtocol(string(hierarchyurl))}">&#187; <xsl:value-of select="$ViewHiearchyLabel"
    /></a>          </li>        </xsl:if>        <xsl:if test="$IsPeopleCoreResultsWebPart">          <li id="RecentContentField"> 
              <a href="javascript:" ID="{concat('recentcontentlink_',$id)}" runat="server" PreferredName="{preferredname}">                <xsl:value-of
    select="concat('&#187; ', substring-before($RecentContentLabel, '{0}'), preferredname, substring-after($RecentContentLabel, '{0}'))"/>            </a>            <SEARCHWC:PopupControlExtender
    ID="{concat('popupextender_',$id)}" runat="server"            TargetControlID="{concat('recentcontentlink_',$id)}"            PopupControlID="PopupPanelPeopleCore" 
              PopupShowingScript="{concat('PostbackUserName(this.get_element(),this._popupElement,&quot;',$RecentUpdateTabLabel,'&quot;)')}"            PopupHiddenScript="" 
              HoverDelay="500"            UnhoverDelay="500"/>          </li>        </xsl:if>      </ul> 
      </xsl:if>  </div>  <xsl:if test="$hasabme or $hasresp or $hassk or $hasint or $hasorgparent or $hasmem or $haspp or $hassch or $hasbol or $hassum">    <div id="MoreInfo">     
    <ul>                <xsl:if test="$hasabme">          <li>            <span id="FieldTitle">       
          <xsl:value-of select="$AboutMeLabel" />            </span>            <xsl:apply-templates select="hithighlightedproperties/aboutme" /> 
            </li>        </xsl:if>        <xsl:if test="$hasresp">          <li>            <span id="FieldTitle"> 
                <xsl:value-of select="$ResponsibilitiesLabel" />            </span>                      <xsl:call-template
    name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/responsibility"/>              <xsl:with-param
    name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hassk"> 
            <li>            <span id="FieldTitle">              <xsl:value-of select="$SkillsLabel" />         
      </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue"
    select="hithighlightedproperties/skills"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>     
        </li>        </xsl:if>        <xsl:if test="$hasint">          <li>            <span id="FieldTitle"> 
                <xsl:value-of select="$InterestsLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue"> 
                <xsl:with-param name="multivalue" select="hithighlightedproperties/interests"/>              <xsl:with-param name="cutoff" select="5"/> 
              </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hasorgparent">         
    <li>                        <span id="FieldTitle">              <xsl:value-of select="$ParentOrgsLabel" />     
          </span>                      <span id="HotHH">              <xsl:call-template name="RenderNameUrlMultivalue"> 
                  <xsl:with-param name="names" select="hithighlightedproperties/orgparentnames"/>                <xsl:with-param name="urls" select="orgparenturls_multival"/> 
                  <xsl:with-param name="currentId" select="$currentId"/>              </xsl:call-template>            </span> 
            </li>        </xsl:if>        <xsl:if test="$hasmem">          <li>            <span id="FieldTitle"> 
                <xsl:value-of select="$MembershipLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue"> 
                <xsl:with-param name="multivalue" select="hithighlightedproperties/memberships"/>              <xsl:with-param name="cutoff" select="5"/> 
              </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$haspp">          <li> 
              <span id="FieldTitle">              <xsl:value-of select="$PastProjectsLabel" />            </span>      
                   <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/pastprojects"/> 
                <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if> 
          <xsl:if test="$hassch">          <li>            <span id="FieldTitle">              <xsl:value-of select="$SchoolLabel"
    />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param
    name="multivalue" select="hithighlightedproperties/schools"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template> 
            </li>        </xsl:if>        <xsl:if test="$hasbol">          <li>            <span id="FieldTitle"> 
                <xsl:value-of select="$BaseOfficeLabel" />            </span>                      <xsl:apply-templates
    select="hithighlightedproperties/baseofficelocation" />          </li>        </xsl:if>        <xsl:if test="$hassum">         
    <li>            <span id="FieldTitle">              <xsl:value-of select="$SummaryLabel" />            </span> 
              <xsl:apply-templates select="hithighlightedsummary" />          </li>        </xsl:if>      </ul>    </div> 
    </xsl:if>  <div id="Clear">    <img src='/_layouts/images/blank.gif' alt=''/>  </div>  <xsl:if test="$hasvlm or $hasvlw or $hasquery">    <div id="SelfSrchHeading"> 
        <table cellspacing="0" cellpadding="0">        <tr>          <td>            <xsl:value-of select="$SelfSearchLabel"
    />          </td>        </tr>      </table>    </div>    <div id="SelfSrchFreq">      <a id="{concat($currentId,
    '_EditProfileLink')}" href="{ddwrt:EnsureAllowedProtocol(string(editprofileurl))}"><xsl:value-of select="$UpdateProfileLabel" /></a>      <div id="SelfSrchFreqTitle">     
        <xsl:value-of select="$ProfileViewLabel" />      </div>            <xsl:if test="$hasvlm and $hasvlw">        <ul>     
        <li>            <xsl:value-of disable-output-escaping="yes" select="profileviewlastmonth"/>          </li>          <li> 
              <xsl:value-of disable-output-escaping="yes" select="profileviewlastweek"/>          </li>        </ul>      </xsl:if> 
      </div>    <div id="SelfSrchTerms">      <a id="{concat($currentId, '_UpdateKeywordsLink')}" href="{ddwrt:EnsureAllowedProtocol(string(updatekeywordsurl))}"><xsl:value-of select="$UpdateProfileKeywordLabel"
    /></a>      <div id="SelfSrchTermsTitle">        <xsl:value-of select="$QueriesFoundYouLabel" />      </div>      <div id="SelfSrchTermsContent"> 
          <xsl:choose>          <xsl:when test="$hasquery">            <xsl:call-template name="RenderSimpleMultivalue">         
        <xsl:with-param name="multivalue" select="queriesfoundyou_multival"/>              <xsl:with-param name="cutoff" select="5"/>         
      </xsl:call-template>          </xsl:when>          <xsl:otherwise>            <xsl:value-of select="$NoKeywordLabel" />     
        </xsl:otherwise>        </xsl:choose>      </div>    </div>    <div id="Clear2">      <img src='/_layouts/images/blank.gif' alt=''/> 
      </div>  </xsl:if></xsl:template>  <!-- XSL transformation starts here --><xsl:template match="/">  <xsl:if test="$AlertMeLink and $ShowActionLinks">     <input
    type="hidden" name="P_Query" />   <input type="hidden" name="P_LastNotificationTime" />  </xsl:if>  <div>    <xsl:choose>      <xsl:when test="$IsNoKeyword
    = 'True'" >        <xsl:call-template name="dvt_1.noKeyword" />      </xsl:when>      <xsl:when test="$ShowMessage = 'True'">        <xsl:call-template
    name="dvt_1.empty" />      </xsl:when>      <xsl:otherwise>        <xsl:call-template name="dvt_1.body"/>            </xsl:otherwise> 
      </xsl:choose>    <xsl:if test="$IsPeopleCoreResultsWebPart and (count(All_Results/Result) &gt; 0 or count(All_Results/FakeResult) &gt; 0)">      <asp:Panel ID="PopupPanelPeopleCore"
    runat="server" CssClass="psrch-PopupPanel">                        <div id="PopupContainer">                   
    <asp:UpdatePanel runat="server" ID="UpdatePanelPeopleCore" UpdateMode="Conditional" ChildrenAsTriggers="true">            <ContentTemplate>          
                     <SEARCHWC:PeopleCoreResultPopupControl                id="PopupControl51A944753DF0430C8FE1EBAA70F3E945"           
        runat="server"/>                          <div id="PopupFooter">                <asp:UpdateProgress
    ID="UpdateProgress" DisplayAfter="0" AssociatedUpdatePanelID="UpdatePanelPeopleCore" runat="server">                  <ProgressTemplate>       
                <span id="Progress">                      <img src="/_layouts/images/hig_progcircle_loading24.gif"/>       
                  <xsl:value-of select="$PopupFetcingResultLabel" />                    </span>                   
                    </ProgressTemplate>                </asp:UpdateProgress>              </div>         
      </ContentTemplate>                      </asp:UpdatePanel>        </div>      </asp:Panel>    </xsl:if>    
    </div></xsl:template><xsl:template name="ActionBarTemplate">  <xsl:if test="string-length($AlertMeLink) &gt; 0">      <a href="{$AlertMeLink}" id="CSR_AM" title="{$AlertMeText}"> 
        <img src="/_layouts/images/bell.gif" alt="{$AlertMeText}" border="0"/>    </a>    <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>  </xsl:if> 
    <xsl:if test="string-length($SrchRSSLink) &gt; 0">         <a type="application/rss+xml" href="{ddwrt:EnsureAllowedProtocol(string($SrchRSSLink))}" title="{$SrchRSSText}" id="SRCHRSSL"> 
        <img border="0" src="/_layouts/images/rss.gif" alt="{$SrchRSSText}"/>    </a>    <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>  </xsl:if> 
    <xsl:if test="string-length($SearchProviderLink) &gt; 0">      <a href="{ddwrt:EnsureAllowedProtocol(string($SearchProviderLink))}" title="{$SearchProviderText}" >      <img border="0"
    src="/_layouts/images/searchfolder.png" alt="{$SearchProviderText}"/>    </a>    <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>  </xsl:if> </xsl:template><xsl:template
    name="GetPicUrl">  <xsl:param name="PicUrl"/>  <xsl:param name="PlaceHolderUrl"/>    <xsl:choose>    <xsl:when test="string-length($PicUrl) &lt; 1 or starts-with($PicUrl,
    'file:') or starts-with($PicUrl, '\\') or starts-with($PicUrl, '//')">      <xsl:value-of select="$PlaceHolderUrl"/>    </xsl:when>    <xsl:otherwise>      <xsl:value-of
    select="$PicUrl"/>    </xsl:otherwise>  </xsl:choose></xsl:template><xsl:template name="MoreLinkTemplate">  <xsl:if test="$ShowMoreLink = true() and string-length($MoreLink) &gt;
    0">    <div id="MoreLink">      <a href="{ddwrt:EnsureAllowedProtocol(string($MoreLink))}">        <xsl:value-of select="$MoreLinkLabel"/>     
    </a>    </div>  </xsl:if></xsl:template><xsl:template name="RenderNameUrlMultivalue">  <xsl:param name="names"/>  <xsl:param name="urls"/>  <xsl:param
    name="currentId"/>  <xsl:for-each select="$names">    <xsl:variable name="p" select="position()"/>    <xsl:if test="string-length(.) &gt; 0">     
    <xsl:if test="$p &gt; 1">        <span> :: </span>      </xsl:if>      <xsl:choose>        <xsl:when test="string-length($urls[$p]) &gt;
    0">          <a id="{concat($currentId, '_MultivalueUrl')}" href="{ddwrt:EnsureAllowedProtocol(string($urls[$p]))}">            <xsl:apply-templates select="."
    />          </a>        </xsl:when>        <xsl:otherwise>          <xsl:apply-templates select="." />       
    </xsl:otherwise>      </xsl:choose>    </xsl:if>          </xsl:for-each></xsl:template><xsl:template name="RenderSimpleMultivalue">  <xsl:param name="multivalue"/> 
    <xsl:param name="cutoff"/>  <xsl:for-each select="$multivalue">    <xsl:sort data-type="number" order="descending" select="@hashh"/>    <xsl:variable name="p"
    select="position()"/>    <xsl:if test="string-length(.) &gt; 0">      <xsl:choose>        <xsl:when test="$p = 1">          <span
    id="Multivalue">            <xsl:apply-templates select="." />          </span>        </xsl:when>        <xsl:when test="$p
    &gt; 1 and $p &lt;= $cutoff">          <span> :: </span>          <span id="Multivalue"><xsl:apply-templates select="." /></span>   
        </xsl:when>        <xsl:when test="$p = $cutoff + 1">          &#8230;        </xsl:when>      </xsl:choose>   
    </xsl:if>  </xsl:for-each></xsl:template><xsl:template name="HitHighlighting">  <xsl:param name="hh" />  <xsl:apply-templates select="$hh"/> </xsl:template><xsl:template
    match="ddd">   &#8230;  </xsl:template> <xsl:template match="c0">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c1">  
      <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c2">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template
    match="c3">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c4">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template
    match="c5">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c6">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template
    match="c7">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c8">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template
    match="c9">     <b><xsl:value-of select="."/></b></xsl:template> </xsl:stylesheet>
    i want to archive is a standard who is who list with initials.
    Any help is appreciated
    "Carpe Diem" does not mean "fish of the day."

    i'm havenig problems getting "initials" shown in a "People Search Core Results". they are showen on the Person.aspx
    so they are pulled from the AD
    but trying to costumise the XML i get erros everty time 
    tried to follw:
    http://tekality.com/sharepoint-2010/sharepoint-2010-adding-a-field-to-the-people-search-results/
    and
    http://sharepointsolutions.com/sharepoint-help/blog/2011/07/how-to-show-the-fax-number-in-people-search-results-in-sharepoint-2010/
    my xml:
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:asp="http://schemas.microsoft.com/ASPNET/20" xmlns:SEARCHWC="http://schemas.microsoft.com/searchserver/"><xsl:output method="xml" indent="no"/><xsl:param name="SortBy" /><xsl:param name="DropDownOption" /><xsl:param name="RelevanceSortUrl" /><xsl:param name="RelevanceSortLabel" /><xsl:param name="SocialDistanceSortUrl" /><xsl:param name="SocialDistanceSortLabel" /><xsl:param name="NameSortUrl" /><xsl:param name="NameSortLabel" /><xsl:param name="IsNoKeyword" /><xsl:param name="IsFixedQuery" /><xsl:param name="ShowMoreLink" /><xsl:param name="MoreLinkLabel" /><xsl:param name="MoreLink" /><xsl:param name="AlertMeLink" /><xsl:param name="AlertMeText" /><xsl:param name="SrchRSSText" /><xsl:param name="SrchRSSLink" /><xsl:param name="ShowMessage" /><xsl:param name="ShowActionLinks" /><xsl:param name="SearchProviderText" /><xsl:param name="SearchProviderLink" /><xsl:param name="IsPeopleCoreResultsWebPart" /><xsl:param name="NoFixedQuery" /><xsl:param name="NoKeyword" /><xsl:param name="NoPeopleResults" /><xsl:param name="NoPeopleResults1" /><xsl:param name="NoPeopleResults2" /><xsl:param name="NoPeopleResults3" /><xsl:param name="NoPeopleResults4" /><xsl:param name="ParentOrgsLabel" /><xsl:param name="ViewHiearchyLabel" /><xsl:param name="RecentContentLabel" /><xsl:param name="ResponsibilitiesLabel" /><xsl:param name="SkillsLabel" /><xsl:param name="InterestsLabel" /><xsl:param name="PastProjectsLabel" /><xsl:param name="SchoolLabel" /><xsl:param name="MembershipLabel" /><xsl:param name="AboutMeLabel" /><xsl:param name="BaseOfficeLabel" /><xsl:param name="SummaryLabel" /><xsl:param name="ProfileViewLabel" /><xsl:param name="UpdateProfileLabel" /><xsl:param name="QueriesFoundYouLabel" /><xsl:param name="UpdateProfileKeywordLabel" /><xsl:param name="SelfSearchLabel" /><xsl:param name="NoKeywordLabel" /><xsl:param name="AddToMyColleaguesText" /><xsl:param name="PopupFetcingResultLabel" /><xsl:param name="IdPrefix" /><xsl:param name="LangPickerHeading" /><xsl:param name="LangPickerNodeSet" /><xsl:param name="FilterNodeSet" /><xsl:param name="ShowPeopleSortDropdown" /><xsl:param name="RecentUpdateTabLabel" /><!-- When there is no keywory to issue the search --><xsl:template name="dvt_1.noKeyword">  <span class="ms-sbplain">    <xsl:choose>      <xsl:when test="$IsFixedQuery">        <xsl:value-of select="$NoFixedQuery" />      </xsl:when>      <xsl:otherwise>        <xsl:value-of select="$NoKeyword" />      </xsl:otherwise>    </xsl:choose>  </span>       </xsl:template><!-- When empty result set is returned from search --><xsl:template name="dvt_1.empty">    <div class="psrch-results">    <xsl:if test="$ShowActionLinks">      <xsl:call-template name="ActionBarTemplate" />    </xsl:if>  </div>  <span class="srch-description" id="CSR_NO_RESULTS">    <xsl:value-of select="$NoPeopleResults"/>    <ol>      <li><xsl:value-of select="$NoPeopleResults1"/></li>      <li><xsl:value-of select="$NoPeopleResults2"/></li>      <li><xsl:value-of select="$NoPeopleResults3"/></li>      <li><xsl:value-of select="$NoPeopleResults4"/></li>    </ol>  </span></xsl:template><!-- Main body template--><xsl:template name="dvt_1.body">  <div class="psrch-results">    <xsl:if test="$ShowActionLinks">      <div class="srch-sort-right2">         <xsl:if test="$LangPickerNodeSet and count($LangPickerNodeSet) &gt; 0">          <label for="langpickerdd" id="langpickerddlabel"><xsl:value-of select="$LangPickerHeading"/></label>          <select title="{$LangPickerHeading}" class="srch-dropdown" onchange="window.location.href=this.value" id="langpickerdd">            <xsl:for-each select="$LangPickerNodeSet">              <xsl:element name="option">                <xsl:attribute name="value"><xsl:value-of select="@url"/></xsl:attribute>                <xsl:if test="@selected = 'true'">                  <xsl:attribute name="selected">selected</xsl:attribute>                </xsl:if>                <xsl:value-of select="@title"/>              </xsl:element>            </xsl:for-each>                  </select>          <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>        </xsl:if>        <xsl:if test="$ShowPeopleSortDropdown">          <label for="sortbydd" id="sortbyddlabel"><xsl:value-of select="$SortBy" /></label>           <select title="{$SortBy}" name="dropdown" onchange="window.location.href=this.value" class="srch-dropdown" id="sortbydd">            <xsl:element name="option">               <xsl:attribute name="value"><xsl:value-of select="ddwrt:EnsureAllowedProtocol(string($RelevanceSortUrl))"/></xsl:attribute>              <xsl:if test="$DropDownOption = '0'">                <xsl:attribute name="selected">selected</xsl:attribute>              </xsl:if>              <xsl:value-of select="$RelevanceSortLabel"/>            </xsl:element>            <xsl:if test="string-length($SocialDistanceSortUrl) &gt; 0 and string-length($SocialDistanceSortLabel) &gt; 0">              <xsl:element name="option">                 <xsl:attribute name="value"><xsl:value-of select="ddwrt:EnsureAllowedProtocol(string($SocialDistanceSortUrl))"/></xsl:attribute>                <xsl:if test="$DropDownOption = '1'">                  <xsl:attribute name="selected">selected</xsl:attribute>                </xsl:if>                <xsl:value-of select="$SocialDistanceSortLabel"/>              </xsl:element>            </xsl:if>            <xsl:element name="option">               <xsl:attribute name="value"><xsl:value-of select="ddwrt:EnsureAllowedProtocol(string($NameSortUrl))"/></xsl:attribute>              <xsl:if test="$DropDownOption = '2'">                <xsl:attribute name="selected">selected</xsl:attribute>              </xsl:if>              <xsl:value-of select="$NameSortLabel"/>            </xsl:element>          </select>            <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>        </xsl:if>        <xsl:call-template name="ActionBarTemplate" />      </div>    </xsl:if>    <xsl:for-each select="All_Results/Result">      <xsl:call-template name="SingleResult"/>    </xsl:for-each>        <xsl:call-template name="MoreLinkTemplate" />  </div>  </xsl:template><!-- This template is called for each result --><xsl:template name="SingleResult">    <xsl:element name="div">     <xsl:attribute name="id">      <xsl:value-of select="concat('Container', id)"/>    </xsl:attribute>    <xsl:choose>      <xsl:when test="id = 1">        <xsl:attribute name="class">psrch-FirstFullResult</xsl:attribute>      </xsl:when>      <xsl:otherwise>        <xsl:attribute name="class">psrch-FullResult</xsl:attribute>      </xsl:otherwise>    </xsl:choose>    <xsl:call-template name="SingleResultInternal" />  </xsl:element></xsl:template><xsl:template name="SingleResultInternal">  <xsl:variable name="id" select="id"/>  <xsl:variable name="currentId" select="concat($IdPrefix,$id)"/>  <xsl:variable name="url" select="url"/>  <xsl:variable name="email" select="workemail"/>  <xsl:variable name="sip" select="sipaddress"/>  <xsl:variable name="prefix">IMNRC('</xsl:variable>  <xsl:variable name="suffix">')</xsl:variable>  <xsl:variable name="hassip"       select="string-length($sip) &gt; 0"/>  <xsl:variable name="hasemail"     select="string-length($email) &gt; 0"/>  <xsl:variable name="haspn"        select="string-length(preferredname) &gt; 0"/>  <xsl:variable name="hasydn"       select="string-length(yomidisplayname) &gt; 0"/>  <xsl:variable name="hasjt"        select="string-length(jobtitle) &gt; 0"/>  <xsl:variable name="hasdp"        select="string-length(department) &gt; 0"/>  <xsl:variable name="hasorg"       select="string-length(orgnames) &gt; 0"/>  <xsl:variable name="haswph"       select="string-length(workphone) &gt; 0"/>   <xsl:variable name="hasinitials" select="string-length(initials) &gt; 0"/>  <xsl:variable name="hasonum"      select="string-length(officenumber) &gt; 0"/>  <xsl:variable name="hascol"       select="string-length(colleaguecategory) &gt; 0"/>  <xsl:variable name="hasacu"       select="string-length(addtomycolleaguesurl) &gt; 0"/>  <xsl:variable name="hashier"      select="string-length(hierarchyurl) &gt; 0"/>  <xsl:variable name="hasabme"      select="string-length(aboutme) &gt; 0"/>  <xsl:variable name="hasresp"      select="string-length(responsibility) &gt; 0"/>  <xsl:variable name="hassk"        select="($FilterNodeSet and $FilterNodeSet/@title='SPShSkills') or hithighlightedproperties/skills/@hashh &gt; 0"/>  <xsl:variable name="hasint"       select="($FilterNodeSet and $FilterNodeSet/@title='SPShInterests') or hithighlightedproperties/interests/@hashh &gt; 0"/>  <xsl:variable name="hasorgparent" select="($FilterNodeSet and $FilterNodeSet/@title='OrgParentNames') or hithighlightedproperties/orgparentnames/@hashh &gt; 0"/>  <xsl:variable name="hasmem"       select="($FilterNodeSet and $FilterNodeSet/@title='Memberships') or hithighlightedproperties/memberships/@hashh &gt; 0"/>  <xsl:variable name="haspp"        select="($FilterNodeSet and $FilterNodeSet/@title='SPShPastProjects') or hithighlightedproperties/pastprojects/@hashh &gt; 0"/>  <xsl:variable name="hasbol"       select="($FilterNodeSet and $FilterNodeSet/@title='SPShLocation') or hithighlightedproperties/baseofficelocation/@hashh &gt; 0"/>  <xsl:variable name="hassch"       select="($FilterNodeSet and $FilterNodeSet/@title='SPShSchool') or hithighlightedproperties/schools/@hashh &gt; 0"/>  <xsl:variable name="hassum"       select="count(hithighlightedsummary/c0) &gt; 0"/>  <xsl:variable name="hasvlm"       select="string-length(profileviewlastmonth) &gt; 0"/>  <xsl:variable name="hasvlw"       select="string-length(profileviewlastweek) &gt; 0"/>  <xsl:variable name="hasquery"     select="string-length(queriesfoundyou) &gt; 0"/>      <div id="UserPhoto">    <a href="{ddwrt:EnsureAllowedProtocol(string($url))}" id="{concat($currentId, '_CSR_IMGL')}" title="{preferredname}">      <xsl:variable name="imgid" select="concat('CSR_IMG_',$id)"/>      <xsl:variable name="purl">        <xsl:call-template name="GetPicUrl">          <xsl:with-param name="PicUrl" select="pictureurl"/>          <xsl:with-param name="PlaceHolderUrl" select="'/_layouts/images/o14_person_placeholder_96.png'"/>        </xsl:call-template>      </xsl:variable>      <img id="{$imgid}" src="{ddwrt:EnsureAllowedProtocol(string($purl))}" alt="{preferredname}" border="0"></img>    </a>    <xsl:if test="$hascol">      <div id="ColleagueField">        <xsl:value-of select="colleaguecategory"/>      </div>    </xsl:if>  </div>  <span id="JBean">    <xsl:choose>      <xsl:when test="$hassip">        <img alt="" border="0" height="12" width="12" src="/_layouts/images/imnhdr.gif" onload="{concat($prefix, $sip, $suffix)}" ShowOfflinePawn="1" id="{concat('CSRP_',$id,',type=sip')}" />      </xsl:when>      <xsl:otherwise>        <img alt="" border="0" height="12" width="12" src="/_layouts/images/imnhdr.gif" onload="{concat($prefix, $email, $suffix)}" ShowOfflinePawn="1" id="{concat('CSRP_',$id,',type=smtp')}" />      </xsl:otherwise>    </xsl:choose>  </span>  <div id="ContactInfo">    <ul id="MiniContactCard">      <li id="NameField">        <xsl:if test="$haspn">          <a href="{ddwrt:EnsureAllowedProtocol(string($url))}" id="{concat($currentId, '_CSR')}">            <xsl:apply-templates select="hithighlightedproperties/preferredname" />          </a>        </xsl:if>      </li>      <xsl:if test="$hasydn">        <li id="YomiField">          <xsl:apply-templates select="hithighlightedproperties/yomidisplayname" />        </li>      </xsl:if>      <xsl:if test="$hasjt">        <li id="JobTitleField">          <xsl:apply-templates select="hithighlightedproperties/jobtitle" />        </li>      </xsl:if>      <xsl:if test="$hasdp and not($hasorg)">        <li id="DepartmentField">          <xsl:apply-templates select="hithighlightedproperties/department" />        </li>      </xsl:if>      <xsl:if test="$hasorg">        <li id="OrgField">                              <xsl:call-template name="RenderNameUrlMultivalue">            <xsl:with-param name="names" select="hithighlightedproperties/orgnames"/>            <xsl:with-param name="urls" select="orgurls_multival"/>            <xsl:with-param name="currentId" select="$currentId"/>          </xsl:call-template>                  </li>      </xsl:if>      <xsl:if test="$haswph">        <li id="PhoneField">          <xsl:apply-templates select="hithighlightedproperties/workphone" />        </li> <xsl:if test="$hasinitials">        <li id="initialsField">          <xsl:apply-templates select="hithighlightedproperties/initials" />        </li>      </xsl:if>      <xsl:if test="$hasonum">        <li id="OfficeField">          <xsl:apply-templates select="hithighlightedproperties/officenumber" />        </li>      </xsl:if>      <xsl:if test="$hassip or $hasemail">        <li id="EmailField">          <xsl:choose>            <xsl:when test="$hassip">              <a id="{concat($currentId, '_EmailLink')}" href="{concat('mailto:', $sip)}">                <xsl:apply-templates select="hithighlightedproperties/sipaddress" />              </a>            </xsl:when>            <xsl:otherwise>              <a id="{concat($currentId, '_EmailLink')}" href="{concat('mailto:', $email)}">                <xsl:apply-templates select="hithighlightedproperties/workemail" />              </a>            </xsl:otherwise>          </xsl:choose>        </li>      </xsl:if>    </ul>    <xsl:if test="$hasacu or $hashier or $IsPeopleCoreResultsWebPart">      <ul id="Actions">                <xsl:if test="$hasacu">          <li id="AddColleagueLinkField">            <a id="{concat($currentId, '_AddColleagueLink')}" href="{ddwrt:EnsureAllowedProtocol(string(addtomycolleaguesurl))}">&#187; <xsl:value-of select="$AddToMyColleaguesText" /></a>          </li>        </xsl:if>        <xsl:if test="$hashier">          <li id="OrgBrowserField">            <a id="{concat($currentId, '_OrgBrowserLink')}" href="{ddwrt:EnsureAllowedProtocol(string(hierarchyurl))}">&#187; <xsl:value-of select="$ViewHiearchyLabel" /></a>          </li>        </xsl:if>        <xsl:if test="$IsPeopleCoreResultsWebPart">          <li id="RecentContentField">            <a href="javascript:" ID="{concat('recentcontentlink_',$id)}" runat="server" PreferredName="{preferredname}">                <xsl:value-of select="concat('&#187; ', substring-before($RecentContentLabel, '{0}'), preferredname, substring-after($RecentContentLabel, '{0}'))"/>            </a>            <SEARCHWC:PopupControlExtender ID="{concat('popupextender_',$id)}" runat="server"            TargetControlID="{concat('recentcontentlink_',$id)}"            PopupControlID="PopupPanelPeopleCore"            PopupShowingScript="{concat('PostbackUserName(this.get_element(),this._popupElement,&quot;',$RecentUpdateTabLabel,'&quot;)')}"            PopupHiddenScript=""            HoverDelay="500"            UnhoverDelay="500"/>          </li>        </xsl:if>      </ul>    </xsl:if>  </div>  <xsl:if test="$hasabme or $hasresp or $hassk or $hasint or $hasorgparent or $hasmem or $haspp or $hassch or $hasbol or $hassum">    <div id="MoreInfo">      <ul>                <xsl:if test="$hasabme">          <li>            <span id="FieldTitle">              <xsl:value-of select="$AboutMeLabel" />            </span>            <xsl:apply-templates select="hithighlightedproperties/aboutme" />          </li>        </xsl:if>        <xsl:if test="$hasresp">          <li>            <span id="FieldTitle">              <xsl:value-of select="$ResponsibilitiesLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/responsibility"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hassk">          <li>            <span id="FieldTitle">              <xsl:value-of select="$SkillsLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/skills"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hasint">          <li>            <span id="FieldTitle">              <xsl:value-of select="$InterestsLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/interests"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hasorgparent">          <li>                        <span id="FieldTitle">              <xsl:value-of select="$ParentOrgsLabel" />            </span>                      <span id="HotHH">              <xsl:call-template name="RenderNameUrlMultivalue">                <xsl:with-param name="names" select="hithighlightedproperties/orgparentnames"/>                <xsl:with-param name="urls" select="orgparenturls_multival"/>                <xsl:with-param name="currentId" select="$currentId"/>              </xsl:call-template>            </span>          </li>        </xsl:if>        <xsl:if test="$hasmem">          <li>            <span id="FieldTitle">              <xsl:value-of select="$MembershipLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/memberships"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$haspp">          <li>            <span id="FieldTitle">              <xsl:value-of select="$PastProjectsLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/pastprojects"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hassch">          <li>            <span id="FieldTitle">              <xsl:value-of select="$SchoolLabel" />            </span>                      <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="hithighlightedproperties/schools"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </li>        </xsl:if>        <xsl:if test="$hasbol">          <li>            <span id="FieldTitle">              <xsl:value-of select="$BaseOfficeLabel" />            </span>                      <xsl:apply-templates select="hithighlightedproperties/baseofficelocation" />          </li>        </xsl:if>        <xsl:if test="$hassum">          <li>            <span id="FieldTitle">              <xsl:value-of select="$SummaryLabel" />            </span>            <xsl:apply-templates select="hithighlightedsummary" />          </li>        </xsl:if>      </ul>    </div>  </xsl:if>  <div id="Clear">    <img src='/_layouts/images/blank.gif' alt=''/>  </div>  <xsl:if test="$hasvlm or $hasvlw or $hasquery">    <div id="SelfSrchHeading">      <table cellspacing="0" cellpadding="0">        <tr>          <td>            <xsl:value-of select="$SelfSearchLabel" />          </td>        </tr>      </table>    </div>    <div id="SelfSrchFreq">      <a id="{concat($currentId, '_EditProfileLink')}" href="{ddwrt:EnsureAllowedProtocol(string(editprofileurl))}"><xsl:value-of select="$UpdateProfileLabel" /></a>      <div id="SelfSrchFreqTitle">          <xsl:value-of select="$ProfileViewLabel" />      </div>            <xsl:if test="$hasvlm and $hasvlw">        <ul>          <li>            <xsl:value-of disable-output-escaping="yes" select="profileviewlastmonth"/>          </li>          <li>            <xsl:value-of disable-output-escaping="yes" select="profileviewlastweek"/>          </li>        </ul>      </xsl:if>    </div>    <div id="SelfSrchTerms">      <a id="{concat($currentId, '_UpdateKeywordsLink')}" href="{ddwrt:EnsureAllowedProtocol(string(updatekeywordsurl))}"><xsl:value-of select="$UpdateProfileKeywordLabel" /></a>      <div id="SelfSrchTermsTitle">        <xsl:value-of select="$QueriesFoundYouLabel" />      </div>      <div id="SelfSrchTermsContent">        <xsl:choose>          <xsl:when test="$hasquery">            <xsl:call-template name="RenderSimpleMultivalue">              <xsl:with-param name="multivalue" select="queriesfoundyou_multival"/>              <xsl:with-param name="cutoff" select="5"/>            </xsl:call-template>          </xsl:when>          <xsl:otherwise>            <xsl:value-of select="$NoKeywordLabel" />          </xsl:otherwise>        </xsl:choose>      </div>    </div>    <div id="Clear2">      <img src='/_layouts/images/blank.gif' alt=''/>    </div>  </xsl:if></xsl:template>  <!-- XSL transformation starts here --><xsl:template match="/">  <xsl:if test="$AlertMeLink and $ShowActionLinks">     <input type="hidden" name="P_Query" />   <input type="hidden" name="P_LastNotificationTime" />  </xsl:if>  <div class="psrch-Main">    <xsl:choose>      <xsl:when test="$IsNoKeyword = 'True'" >        <xsl:call-template name="dvt_1.noKeyword" />      </xsl:when>      <xsl:when test="$ShowMessage = 'True'">        <xsl:call-template name="dvt_1.empty" />      </xsl:when>      <xsl:otherwise>        <xsl:call-template name="dvt_1.body"/>            </xsl:otherwise>    </xsl:choose>    <xsl:if test="$IsPeopleCoreResultsWebPart and (count(All_Results/Result) &gt; 0 or count(All_Results/FakeResult) &gt; 0)">      <asp:Panel ID="PopupPanelPeopleCore" runat="server" CssClass="psrch-PopupPanel">                        <div id="PopupContainer" class="psrch-PopupContainer">                    <asp:UpdatePanel runat="server" ID="UpdatePanelPeopleCore" UpdateMode="Conditional" ChildrenAsTriggers="true">            <ContentTemplate>                            <SEARCHWC:PeopleCoreResultPopupControl                id="PopupControl51A944753DF0430C8FE1EBAA70F3E945"                runat="server"/>                          <div id="PopupFooter">                <asp:UpdateProgress ID="UpdateProgress" DisplayAfter="0" AssociatedUpdatePanelID="UpdatePanelPeopleCore" runat="server">                  <ProgressTemplate>                    <span id="Progress">                      <img class="psrch-UpdateGraphics" src="/_layouts/images/hig_progcircle_loading24.gif"/>                      <xsl:value-of select="$PopupFetcingResultLabel" />                    </span>                                    </ProgressTemplate>                </asp:UpdateProgress>              </div>            </ContentTemplate>                      </asp:UpdatePanel>        </div>      </asp:Panel>    </xsl:if>     </div></xsl:template><xsl:template name="ActionBarTemplate">  <xsl:if test="string-length($AlertMeLink) &gt; 0">      <a href="{$AlertMeLink}" id="CSR_AM" title="{$AlertMeText}">      <img src="/_layouts/images/bell.gif" alt="{$AlertMeText}" border="0"/>    </a>    <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>  </xsl:if>  <xsl:if test="string-length($SrchRSSLink) &gt; 0">         <a type="application/rss+xml" href="{ddwrt:EnsureAllowedProtocol(string($SrchRSSLink))}" title="{$SrchRSSText}" id="SRCHRSSL">      <img border="0" src="/_layouts/images/rss.gif" alt="{$SrchRSSText}"/>    </a>    <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>  </xsl:if>  <xsl:if test="string-length($SearchProviderLink) &gt; 0">      <a href="{ddwrt:EnsureAllowedProtocol(string($SearchProviderLink))}" title="{$SearchProviderText}" >      <img border="0" src="/_layouts/images/searchfolder.png" alt="{$SearchProviderText}"/>    </a>    <xsl:text disable-output-escaping="yes">&#8195;</xsl:text>  </xsl:if> </xsl:template><xsl:template name="GetPicUrl">  <xsl:param name="PicUrl"/>  <xsl:param name="PlaceHolderUrl"/>    <xsl:choose>    <xsl:when test="string-length($PicUrl) &lt; 1 or starts-with($PicUrl, 'file:') or starts-with($PicUrl, '\\') or starts-with($PicUrl, '//')">      <xsl:value-of select="$PlaceHolderUrl"/>    </xsl:when>    <xsl:otherwise>      <xsl:value-of select="$PicUrl"/>    </xsl:otherwise>  </xsl:choose></xsl:template><xsl:template name="MoreLinkTemplate">  <xsl:if test="$ShowMoreLink = true() and string-length($MoreLink) &gt; 0">    <div id="MoreLink">      <a href="{ddwrt:EnsureAllowedProtocol(string($MoreLink))}">        <xsl:value-of select="$MoreLinkLabel"/>      </a>    </div>  </xsl:if></xsl:template><xsl:template name="RenderNameUrlMultivalue">  <xsl:param name="names"/>  <xsl:param name="urls"/>  <xsl:param name="currentId"/>  <xsl:for-each select="$names">    <xsl:variable name="p" select="position()"/>    <xsl:if test="string-length(.) &gt; 0">      <xsl:if test="$p &gt; 1">        <span class="psrch-TextSeparator"> :: </span>      </xsl:if>      <xsl:choose>        <xsl:when test="string-length($urls[$p]) &gt; 0">          <a id="{concat($currentId, '_MultivalueUrl')}" href="{ddwrt:EnsureAllowedProtocol(string($urls[$p]))}">            <xsl:apply-templates select="." />          </a>        </xsl:when>        <xsl:otherwise>          <xsl:apply-templates select="." />        </xsl:otherwise>      </xsl:choose>    </xsl:if>          </xsl:for-each></xsl:template><xsl:template name="RenderSimpleMultivalue">  <xsl:param name="multivalue"/>  <xsl:param name="cutoff"/>  <xsl:for-each select="$multivalue">    <xsl:sort data-type="number" order="descending" select="@hashh"/>    <xsl:variable name="p" select="position()"/>    <xsl:if test="string-length(.) &gt; 0">      <xsl:choose>        <xsl:when test="$p = 1">          <span id="Multivalue">            <xsl:apply-templates select="." />          </span>        </xsl:when>        <xsl:when test="$p &gt; 1 and $p &lt;= $cutoff">          <span class="psrch-TextSeparator"> :: </span>          <span id="Multivalue"><xsl:apply-templates select="." /></span>        </xsl:when>        <xsl:when test="$p = $cutoff + 1">          &#8230;        </xsl:when>      </xsl:choose>    </xsl:if>  </xsl:for-each></xsl:template><xsl:template name="HitHighlighting">  <xsl:param name="hh" />  <xsl:apply-templates select="$hh"/> </xsl:template><xsl:template match="ddd">   &#8230;  </xsl:template> <xsl:template match="c0">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c1">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c2">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c3">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c4">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c5">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c6">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c7">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c8">     <b><xsl:value-of select="."/></b></xsl:template> <xsl:template match="c9">     <b><xsl:value-of select="."/></b></xsl:template> </xsl:stylesheet>
    i want to archive is a standard who is who list with initials.
    any help appreciated
    "Carpe Diem" does not mean "fish of the day."

  • XSLT coding help

    Hi,
    XSLT Code.
    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:ns0="http://peoplesoft.com/APC_WORKER2_CI" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
         <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
         <xsl:template match="/">
              <ns1:Z_HPA_357_PROVISION_USER_IMS.Response xmlns:ns1="urn:sap-com:document:sap:rfc:functions">
                   <SUCCESS>
                        <xsl:value-of select="soap:Envelope/ soap:Body/ Create__CompIntfc__APC_WORKER2_CIResponse/ notification"/>
                   </SUCCESS>
    ----pseudo code starts-------------
    if SUCCESS eq 1,
    then move "Y" to SUCCESS.
    elseif SUCCESS eq 0,
    then move "N" to SUCCESS
    ----pseudo code ends-------------
              </ns1:Z_HPA_357_PROVISION_USER_IMS.Response>
         </xsl:template>
    </xsl:stylesheet>
    Could someone help to put the  pseudo code in XSLT syntax.
    Thanks,
    -santosh
    Edited by: santosh koraddi on Mar 24, 2011 1:23 AM

    Below is the solution......
    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:ns0="http://peoplesoft.com/APC_WORKER2_CI" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
         <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
         <xsl:template match="/">
              <ns1:Z_HPA_357_PROVISION_USER_IMS.Response xmlns:ns1="urn:sap-com:document:sap:rfc:functions">
                   <SUCCESS>
    <xsl:choose>
              <xsl:when test = "soap:Envelope/ soap:Body/ Create__CompIntfc__APC_WORKER2_CIResponse/ notification  = 1">
          <SUCCESS>Y</SUCCESS>
              </xsl:when>
              <xsl:when test = "soap:Envelope/ soap:Body/ Create__CompIntfc__APC_WORKER2_CIResponse/ notification =  0">
          <SUCCESS>N</SUCCESS>
              </xsl:when>
         </xsl:choose>                    
                   </SUCCESS>
              </ns1:Z_HPA_357_PROVISION_USER_IMS.Response>
         </xsl:template>
    </xsl:stylesheet>

  • Mapping of complex structure in XI

    Hi friends,
    I have a RFC to SOAP scenario in XI. As a response message they have given a structure with single field in it. But when it is coming over, it has a complex structure, I need to break it to different fields in my internal table. The response I have is given below.
    <Result><Response><FileID _Inserted="1" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">1992143</FileID><AuthID xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="i4">195894</AuthID><MessageList _Inserted="1"><Message _Inserted="1" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">Domain value is invalid for field FilePriority (Client Name), Priority Type (Cartus Name) . The value received was SFNR.</Message><Message _Inserted="1" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">The Destination Location State/Province is invalid. The State/Province was deleted and appended to City/Town. The value was Chennai.</Message><Message _Inserted="1" xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">Received Authorized Initiator (Nambissan, Rajesh) is not an active contact for client/division, Default Initiator was used.</Message></MessageList></Response></Result>
    From this I need to seperate the fileid, authid, messages seperately. Can anyone please suggest how I can do that.
    Thanks in advance for your help.
    Anjana.

    Hi,
    I created a .xsl file using Altova MapForce with the result xml I got from the other system and xml created from my RFC.
    I created a zip file using that .xsl and imported it in archives, and used it in Interface mapping. Now, it is not giving me any error but the mapping is not happening as I expected. I m getting some weird result.
    The .xsl file is as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:n2="http://tempuri.org/message/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="urn:sap-com:document:sap:rfc:functions" xmlns:dt="urn:schemas-microsoft-com:datatypes" exclude-result-prefixes="dt n2 xs xsi xsl" xmlns="urn:sap-com:document:sap:rfc:functions">
         <xsl:namespace-alias stylesheet-prefix="n" result-prefix="#default"/>
         <xsl:output method="xml" encoding="UTF-8" indent="yes"/>
         <xsl:template match="/">
              <ns1:Z_PA_SAP_TO_CENDANT.Response>
                   <xsl:attribute name="xsi:schemaLocation">
                        <xsl:value-of select="'urn:sap-com:document:sap:rfc:functions C:/DOCUME~1/asankara/Desktop/Z_PA_SAP_TO_CENDANT.xsd'"/>
                   </xsl:attribute>
                   <xsl:variable name="var1_instance" select="."/>
                   <IT_ERROR>
                        <item><xsl:for-each select="$var1_instance/n2:AuthorizationResponse/Result/Response/MessageList/Message">
                                  <ERROR_DESC>
                                       <xsl:value-of select="string(.)"/>
                                  </ERROR_DESC>
                             </xsl:for-each>                      </item>
                   </IT_ERROR>
                   <IT_RESPONSE>
                        <item>
                             <xsl:for-each select="$var1_instance/n2:AuthorizationResponse">
                                  <FILEID>
                                       <xsl:value-of select="number(string(Result/Response/FileID))"/>
                                  </FILEID>
                             </xsl:for-each>
                             <xsl:for-each select="$var1_instance/n2:AuthorizationResponse">
                                  <AUTHID>
                                       <xsl:value-of select="number(string(Result/Response/AuthID))"/>
                                  </AUTHID>
                             </xsl:for-each>
                        </item>
                   </IT_RESPONSE>
              </ns1:Z_PA_SAP_TO_CENDANT.Response>
         </xsl:template>
    </xsl:stylesheet>
    Should I make any changes in the file that is created in Mapforce?Please help.
    Thanks,
    Anjana.

  • Oracle soa 11.1.1.4 html email using email activity

    Experts,
    In one of my process i am generating tabular form content in email using html tags in transform xsl file and passing this xsl using ora:processXSLT funtion to contentbody variable of email activity. This works fine in *11.1.1.1* i am able to see email with tabular form content but *11.1.1.4* i am getting an email without content.
    In 11.1.1.4 if i pass some simple string to the content body then its working fine i am able to see am email with that string and if i pass the transformation which is having html tags int it, its not working . I have no idea
    why the html tags are not getting recognizing in 11.1.1.4 email activity.
    Can someone please help me to solve this issue.
    Note: its working very goodl in 11.1.1.1.
    here how i am calling fine in bpel
    *<copy>*
    *<from expression="ora:processXSLT('xsl/GenerateHTML.xsl',bpws:getVariableData('ResponseOutput','/ns4:Response'))"/>*
    *<to variable="varNotificationReq" part="EmailPayload"*
    query="/EmailPayload/ns6:Content/ns6:ContentBody"/>
    *</copy*
    and here is my transformation GenerateHTML.xsl
    <?xml version="1.0" encoding="UTF-8" ?>
    <xsl:stylesheet version="1.0" xmlns:ns0="http://www.oracle.com/mgSOA"
    xmlns:xpath20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:mhdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.mediator.service.common.functions.MediatorExtnFunction"
    xmlns:oraext="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dvm="http://www.oracle.com/XSL/Transform/java/oracle.tip.dvm.LookupValue"
    xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:med="http://schemas.oracle.com/mediator/xpath"
    xmlns:ids="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
    xmlns:xdk="http://schemas.oracle.com/bpel/extension/xpath/function/xdk"
    xmlns:xref="http://www.oracle.com/XSL/Transform/java/oracle.tip.xref.xpath.XRefXPathFunctions"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:socket="http://www.oracle.com/XSL/Transform/java/oracle.tip.adapter.socket.ProtocolTranslator"
    xmlns:sample="http://www.oracle.com/XSL/Transform/java/oracle.sample.SampleExtensionFunctions"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    exclude-result-prefixes="xsi xsl ns0 xsd xpath20 bpws mhdr oraext dvm hwf med ids xdk xref ora socket sample ldap">
    <xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>
    <xsl:template match="/">
    <xsl:text disable-output-escaping="yes">&lt;b&gt;s list &lt;/b&gt;</xsl:text>
    <xsl:text disable-output-escaping="yes">&lt;br&gt;</xsl:text>
    <xsl:text disable-output-escaping="yes">&lt;br&gt;</xsl:text>
    <table border="1">
    <tr bgcolor="#9acd32">
    <th width="80">EntityType</th>
    <th width="400">Organization name</th>
    <th width="100">Country</th>
    <th width="200">Code</th>
    <th width="200">Date</th>
    </tr>
    <ns0:Response>
    <xsl:for-each select="/ns0:Response/ns0:ResponseData">
    <tr>
    <ns0:ResponseData>
    <td width="80">
    <ns0:R_entitytype>
    <xsl:attribute name="xsi:nil">
    <xsl:value-of select="ns0:R_entitytype/@xsi:nil"/>
    </xsl:attribute>
    <xsl:value-of select="ns0:R_entitytype"/>
    </ns0:R_entitytype>
    </td>
    <td width="400">
    <ns0:R_orgname>
    <xsl:attribute name="xsi:nil">
    <xsl:value-of select="ns0:R_orgname/@xsi:nil"/>
    </xsl:attribute>
    <xsl:value-of select="ns0:R_orgname"/>
    </ns0:R_orgname>
    </td>
    <td width="100">
    <ns0:R_country>
    <xsl:attribute name="xsi:nil">
    <xsl:value-of select="ns0:R_country/@xsi:nil"/>
    </xsl:attribute>
    <xsl:value-of select="ns0:R_country"/>
    </ns0:R_country>
    </td>
    <td width="200">
    <ns0:R_Code>
    <xsl:attribute name="xsi:nil">
    <xsl:value-of select="ns0:R_Code/@xsi:nil"/>
    </xsl:attribute>
    <xsl:value-of select="ns0:R_Code"/>
    </ns0:R_Code>
    </td>
    <td width="200">
    <ns0:R_Date>
    <xsl:attribute name="xsi:nil">
    <xsl:value-of select="ns0:R_Date/@xsi:nil"/>
    </xsl:attribute>
    <xsl:value-of select="ns0:R_Date"/>
    </ns0:R_Date>
    </td>
    </ns0:ResponseData>
    </tr>
    </xsl:for-each>
    </ns0:Response>
    </table>
    <xsl:text disable-output-escaping="yes">&lt;br&gt;</xsl:text>
    <xsl:text disable-output-escaping="yes">&lt;br&gt;</xsl:text>
    </xsl:template>
    </xsl:stylesheet>

    Try using ora:toCDATA function, I had the same issue and this seemed to work.
    <copy>
    <from expression="ora:toCDATA(xdk:processXSLT('xsl/GenerateHTML.xsl',bpws:getVariableData('ResponseOutput','/ns4:Response')))"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns6:Content/ns6:ContentBody"/>
    </copy>

  • Problems with XSLT Structure

    Hi,
    I'm doing some XSLT mapping to transform the input XML which is coming to XI from a non-SAP application which do not have any namespace prefix. All I'm doing in the transformation is adding the namespace prefix to the xml so that XI can understand the incoming xml message. my incoming xml is in this format
    <?xml version="1.0" standalone="yes" ?>
    <response xmlns="http://www.test.com/it">
      <request_id>UNKNOWN-TEST-1181313012309</request_id>
      <request_type>CREATE_TICKET</request_type>
      <result>APPROVED</result>
      <service_provider>VERIZON</service_provider>
      <extra>
        <extra_ReqAck_AckComment>A trouble ticket has already been
                                created for this circuit</extra_ReqAck_AckComment>
        <extra_ReqAck_ackType>Request_Completed</extra_ReqAck_ackType>
        <extra_ReqAck_date>2007-06-08</extra_ReqAck_date>
        <extra_ReqAck_time>10:29:17</extra_ReqAck_time>
      </extra>
      <vendor>
        <ticket_id>CARC349201</ticket_id>
      </vendor>
    </response>
    And my output xml should be in the following format
      <?xml version="1.0" standalone="yes" ?>
    <ns1:response xmlns:ns1="http://www.test.com/it">
      <request_id>UNKNOWN-TEST-1181313012309</request_id>
      <request_type>CREATE_TICKET</request_type>
      <result>APPROVED</result>
      <service_provider>VERIZON</service_provider>
      <vendor>
        <ticket_id>CARC349201</ticket_id>
      </vendor>
    </ns1:response>
    Here is my xsl file to
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="2.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" indent="yes"/>
       <xsl:template match="*">
    <ns1:response xmlns:ns1="http://www.test.com/it">
            <request_type>
              <xsl:value-of select="request_type"/>
            </request_type>
            <service_provider>
              <xsl:value-of select="service_provider"/>
            </service_provider>
             <vendor>
               <ticket_id>
                 <xsl:value-of select="ticket_id"/>
               </ticket_id>
               <ticket_status>
                 <xsl:value-of select="ticket_status"/>
               </ticket_status>
             </vendor>
        </ns1:response>
        </xsl:template>
    </xsl:stylesheet>
    When I use this stylesheet. I'm getting this response this is not adding the values to the nodes.
    <?xml version="1.0" encoding="utf-8"?>
    <ns1:response xmlns:ns1="http://www.test.com/it">
      <request_type/>
      <service_provider/>
      <vendor>
        <ticket_id/>
        <ticket_status/>
      </vendor>
    </ns1:response>
    I would really appreciate if anyone had ever came across this problem or had found solution.
    Thanks,
    Joe.P

    Hi Udo,
    Here is the problem as long as I do have namespace in my input xml that's coming from non sap application the XSLT transformation is failing. I did what you have suggested and here is the style sheet.
    <?xml version="1.0" encoding="utf-8" ?>
    <xsl:stylesheet  xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
      xmlns:ns1="http://www.test.com/it/app" >
         <xsl:output method="xml" version="2.0"  indent="yes"/>
         <xsl:template match="/">
         <ns1:response>
             <request_type>
              <xsl:value-of select="//request_type"/>
             </request_type>
              <result>
               <xsl:value-of select="//result" />
               </result>
               <result_reason>
               <xsl:value-of select="//result_reason"/>
               </result_reason>
               <service_provider>
              <xsl:value-of select="//service_provider"/>
               </service_provider>
             <vendor>
                <ticket_id>
                 <xsl:value-of select="//ticket_id"/>
                 </ticket_id>
                 <ticket_status>
                 <xsl:value-of select="//ticket_status"/>
                 </ticket_status>
             </vendor>
          </ns1:response>
        </xsl:template>
    </xsl:stylesheet>
    and as I mention in the initial posting the input xml does have a name space in the response node. so what I tried is I removed the namespace from the input xml from the response node and that works. But I can't remove the namespace from the input xml since that's coming from non sap application.
    Thanks,
    Joe.P

  • XSLT sender plugin fails to set JMS message properties

    When creating a JMS message to be put on a JMS queue, one of the XSLT for the XSLT automation plugin fails to set JMS string properties like: wlsmimehdrContent_Type
    The content on the xslt are listed below.
    The xslt in CPRLookupRequest.xslt sets:
    wlsmimehdrContent_Type
    SERVICE_SUFFIX
    OSM_EVENT_TYPE
    as expected, but the almost similar plugin NABSCreditEvalPluginRequest.xsl fails to set the same string JMS properties.
    I'm looking for a clue, because I'm clueless. I'm an XSLT newbie, so it might be something simple.
    The core part of the problem is put in bold in the listings below
    h2. CPRLookupRequest.xslt:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns="http://java.sun.com/products/oss/xml/ServiceActivation" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:oms="urn:com:metasolv:oms:xmlapi:1" xmlns:java="http://xml.apache.org/xalan/java" xmlns:xalan="http://xml.apache.org/xalan" xmlns:mslv-sa="http://www.metasolv.com/oss/ServiceActivation/2003" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co="http://java.sun.com/products/oss/xml/Common" exclude-result-prefixes="oms java xsl xalan">
         <xsl:param name="automator"/>
         <xsl:param name="log"/>
         <xsl:param name="context"/>
         <xsl:param name="outboundMessage"/>
         <xsl:output method="xml" indent="yes" omit-xml-declaration="no" xalan:indent-amount="5"/>
         <xsl:template match="/">
              <xsl:apply-templates select="oms:GetOrder.Response">
                   <xsl:with-param name="SERVICE_SUFFIX" select="'CprDomain/Cpr'"/>
                   <xsl:with-param name="OSM_EVENT_TYPE" select="'CPR_LOOKUP'"/>
              </xsl:apply-templates>
         </xsl:template>
         <xsl:template match="oms:GetOrder.Response">
              <xsl:param name="SERVICE_SUFFIX" />
              <xsl:param name="OSM_EVENT_TYPE" />
    *<xsl:variable name="void2" select="java:setStringProperty($outboundMessage, '_wls_mimehdrContent_Type', 'text/xml; charset=UTF-8')" />*
    *<xsl:variable name="void3" select="java:setStringProperty($outboundMessage, 'SERVICE_SUFFIX', $SERVICE_SUFFIX)" />*
    *<xsl:variable name="void4" select="java:setStringProperty($outboundMessage, 'OSM_EVENT_TYPE', $OSM_EVENT_TYPE)" />*
              <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                   <env:Body env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
                        <m:getPersonByCPR xmlns:m="/Cpr">
                             <getPersonByCprRequestInfo xmlns:n1="java:dk.tdc.soa.cpr.extern.datatypes" xsi:type="n1:GetPersonByCprRequestInfo">
                                  <applicationId xsi:type="xsd:string"><xsl:text>CPR</xsl:text></applicationId>
                                  <cprNumber xsi:type="xsd:string"><xsl:value-of select="oms:_root/oms:cpr" /></cprNumber>
                             </getPersonByCprRequestInfo>
                        </m:getPersonByCPR>
                   </env:Body>
              </env:Envelope>
         </xsl:template>
    </xsl:stylesheet>
    h2. NABSCreditEvalPluginRequest.xsl
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" exclude-result-prefixes="oms java xsl xalan"
         xmlns="http://java.sun.com/products/oss/xml/ServiceActivation"
         xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
         xmlns:oms="urn:com:metasolv:oms:xmlapi:1"
         xmlns:java="http://xml.apache.org/xalan/java"
         xmlns:xalan="http://xml.apache.org/xalan"
         xmlns:mslv-sa="http://www.metasolv.com/oss/ServiceActivation/2003"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:co="http://java.sun.com/products/oss/xml/Common">
         <xsl:param name="automator"/>
         <xsl:param name="log"/>
         <xsl:param name="context"/>
         <xsl:param name="outboundMessage"/>
         <xsl:template match="/">
              <xsl:apply-templates select="oms:GetOrder.Response">
                   <xsl:with-param name="SERVICE_SUFFIX" select="'/APILink/CreditServices'"/>
                   <xsl:with-param name="OSM_EVENT_TYPE" select="'NABS_CREDIT_EVAL'"/>
              </xsl:apply-templates>
         </xsl:template>
         <xsl:template match="oms:GetOrder.Response">
              <xsl:param name="SERVICE_SUFFIX"/>
              <xsl:param name="OSM_EVENT_TYPE"/>
    *<xsl:variable name="void2" select="java:setStringProperty($outboundMessage, '_wls_mimehdrContent_Type', 'text/xml; charset=UTF-8')"/>*
    *<xsl:variable name="void3" select="java:setStringProperty($outboundMessage, 'SERVICE_SUFFIX', $SERVICE_SUFFIX)"/>*
    *<xsl:variable name="void4" select="java:setStringProperty($outboundMessage, 'OSM_EVENT_TYPE', $OSM_EVENT_TYPE)"/>*
              <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                   <env:Body env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
                        <xsl:choose>
                             <xsl:when test="count(oms:_root/oms:cpr) + count(oms:_root/oms:birthDayPart) >0">
                                  <xsl:call-template name="private" />
                             </xsl:when>
                             <xsl:when test="count(oms:_root/oms:cvr) > 0">
                                  <xsl:call-template name="business" />
                             </xsl:when>
                        </xsl:choose>
                   </env:Body>
              </env:Envelope>
         </xsl:template>
         <xsl:template name="private">
              <m:validatePrivateCustomer xmlns:m="java:dk.tdc.apilink.logic.sessions.interfaces">
                   <validateCustomerCreditInput xsi:type="n1:ValidateCustomerCreditInput" xmlns:n1="java:dk.tdc.apilink.logic.datatypes">
                        <accountCategory xsi:type="java1:char" xmlns:java1="java:language_builtins">
                             <xsl:text>I</xsl:text>
                        </accountCategory>
                        <adrLocation xsi:type="xsd:string">
                             <xsl:value-of select="oms:_root/oms:houseNo"/>
                        </adrLocation>
                        <adrStreetName xsi:type="xsd:string">
                             <xsl:value-of select="oms:_root/oms:streetName"/>
                        </adrStreetName>
                        <adrZip xsi:type="xsd:string">
                             <xsl:value-of select="oms:_root/oms:zipCode"/>
                        </adrZip>
                        <xsl:choose>
                             <xsl:when test="count(oms:_root/oms:birthDayPart) > 0">
                                  <birthDate xsi:type="xsd:string">
                                       <xsl:value-of select="substring(oms:_root/oms:birthDayPart,1,4)"/><xsl:text>.</xsl:text>
                                       <xsl:value-of select="substring(oms:_root/oms:birthDayPart,5,2)"/><xsl:text>.</xsl:text>
                                       <xsl:value-of select="substring(oms:_root/oms:birthDayPart,7,2)"/>
                                  </birthDate>
                             </xsl:when>
                             <xsl:otherwise>
                                  <birthDate xsi:type="xsd:string">
                                       <xsl:text>19</xsl:text>
                                       <xsl:value-of select="substring(oms:_root/oms:cpr,5,2)"/><xsl:text>.</xsl:text>
                                       <xsl:value-of select="substring(oms:_root/oms:cpr,3,2)"/><xsl:text>.</xsl:text>
                                       <xsl:value-of select="substring(oms:_root/oms:cpr,1,2)"/>
                                  </birthDate>
                             </xsl:otherwise>
                        </xsl:choose>
                        <firstName xsi:type="xsd:string">
                             <xsl:value-of select="oms:_root/oms:firstName"/>
                        </firstName>
                        <lastBusinessName xsi:type="xsd:string">
                             <xsl:value-of select="oms:_root/oms:lastName"/>
                        </lastBusinessName>
                   </validateCustomerCreditInput>
              </m:validatePrivateCustomer>
         </xsl:template>
         <xsl:template name="business">
              <m:validateCompanyCustomer xmlns:m="java:dk.tdc.apilink.logic.sessions.interfaces">
                   <validateCustomerCreditInput xsi:type="n1:ValidateCustomerCreditInput" xmlns:n1="java:dk.tdc.apilink.logic.datatypes">
                        <accountCategory xsi:type="java1:char" xmlns:java1="java:language_builtins">
                             <xsl:text>B</xsl:text>
                        </accountCategory>
                        <cvrNumber xsi:type="xsd:string">
                             <xsl:value-of select="oms:_root/oms:cvr"/>
                        </cvrNumber>
                   </validateCustomerCreditInput>
              </m:validateCompanyCustomer>
         </xsl:template>
    </xsl:stylesheet>

    I have written an UDF to determine the filename dynamicly:
    //write your code here
    String str = "SAPDATA-" + a + "ES" + ".xml";
    DynamicConfiguration conf = (DynamicConfiguration)
    container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey FileName = DynamicConfigurationKey.create("http:/"+"/sap.com/xi/XI/System/File","FileName");
    conf.put(FileName, str);
    return "";

  • Real-Time Outbound Message Time-Out

    Hello,
    Could anyone give advice on how to properly handle Time-out errors when sending Real-time Outbound Messages?
    On the XAI Sender, I have set the HTTP Timeout context value to 30 (I'm assuming this is 30 seconds), but the server just keeps on retrying to send the message and eventually takes about 1-1.5 minutes before it eventually stops trying.
    Also, does anybody have any ideas on how to indicate the page is currently busy while trying to send the outbound message?

    hi andries
    can i know what type of invocation type you are using in external system
    If you use RTHTTPSNDR on xai sender then you must use invocation type as realtime on externalsystem( you can define xsl for both request and response)
    If you use HTTPSNDR then you must use invocation type as XAI (for which you can define a request xsl but not response xsl)
    so my advice is to go with RTHTTPSNDR and define both request and response xsl files
    MOST Important your xai sender never gets refreshed unless you restart your ccb server this is because invocation is REALTIME
    if you use HTTPSNDR then just by going to xai command you can refresh mpl refresh sender command
    I think its a bug in ccb 2.3.1 sender doesnt gets refreshed with new values
    Now for the purpose if you can post your request schema and then the request xsl and the response xsl ,ill clear your doubt happily.

  • Xsl/stylesheet transformation problem in soap response(usinf xmlx-tags.tld)

    Hi,
    I have problem in transforming the soap response using xmlx-tags.tld.....
    I was not able to read the <EmpName> value from the returned xml...
    The stylesheet / xsl does not return any elements if I use other then "/" in match
    attribute : <xsl:template match="/">
    here is my soap call and stylesheet in JSP:
    <x:xslt media="html">
    <x:xml>
    <ws:soap ttl="360000">
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    ... making soap call here...
    </soap:Body>
    </soap:Envelope>
    </ws:soap>
    </x:xml>
    <x:stylesheet media="html">
    <xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
    <xsl:output method="xmll" omit-xml-declaration="no"
    doctype-public="-//W3C//DTD HTML 4.0 Transitional//EN" indent="yes" />
    <xsl:template match="GetEmpResult">
    <html>
    <body>
    Result: <B>Symbol <xsl:value-of select="EmpName"/></B>
    </body
    </html>
    </xsl:stylesheet>
    </x:stylesheet>
    </x:xslt>
    the SOAP response looks like this:
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    <GetEmpResponse xmlns="http://ws.cdyne.com/">
    <GetEmpResult>
    <EmpID>string</EmpID>
    <EmpName>string</EmpName>
    <SalAmount>decimal</SalAmount>
    <Error>boolean</Error>
    </GetEmpResult>
    </GetEmpResponse>
    </soap:Body>
    </soap:Envelope>
    I tried all the possibilities of template matches, but not succeeded....
    Can somebody help me the correct <xsl:template> to access EmpName from the above
    SOAP responses...
    regards
    Vijay

    Hi,
    Dynamic xslt are not quite supported in OSB, there are some approaches that may be helpful for your case though...
    Have a look at these...
    http://atheek.wordpress.com/2011/12/21/using-xalanevaluate-to-parametrize-xpath/
    http://beatechnologies.wordpress.com/2010/12/01/dynamic-xquery-in-oracle-service-bus/
    Let me know how you go...
    Cheers,
    Vlad

  • Remove SOAP-ENV tags from xml RECEIVER RESPONSE payload (XSL needed?)

    Hi
    I need to remove some tags from the payload of a RESPONSE message in a SOAP webservice scenarion.
    The received payload looks like this:
    before -
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://tempuri.org/what.xsd">
    <SOAP-ENV:Body>
      <ns:crejob-resp>
        <response-data>
          <Result>0</Result>
        </response-data>
      </ns:crejob-resp>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    after it should look like this
    after -
    <?xml version="1.0" encoding="UTF-8"?>
    <crejob-resp>
       <response-data>
          <Result>0</Result>
       </response-data>
    </crejob-resp>
    I was thinking of using XSL as a "pre-burner" step before my mapping program but need help to XSL on this.
    Hope somebody can help
    Cheers

    I am sorry to be such a pain in the a..
    But I still get the wrong result (with your first option, 2nd option is not working):
    <?xml version="1.0" encoding="UTF-8"?>
    <crejob-resp>
      <response-data>0<Result>0</Result></response-data>
    </crejob-resp>
    Hope u can help again
    and also my source can look like: (unbounded on response-data)
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://tempuri.org/what.xsd">
    <SOAP-ENV:Body>
    <ns:crejob-resp>
       <response-data>
          <Result>0</Result>
       </response-data>
       <response-data>
          <Result>1</Result>
       </response-data>
       <response-data>
          <Result>2</Result>
       </response-data>
    </ns:crejob-resp>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Edited by: Bowie on Jul 2, 2009 3:08 PM

Maybe you are looking for

  • How to switch Game Center accounts?

    I used to use my parent's Game Center and Apple ID for playing games, but now I have my own.  The games are saved to their account, but how do I switch the data to mine?  I've already asked support and they have not been of muh help...

  • Question related to  performing  R computation in  database

    I am trying an example something similar to the one mention in the following document http://docs.oracle.com/cd/E11882_01/doc.112/e36761/using.htm#CEGJECHG However, for me its always failing... Just wanted to check with if you were able to execute a

  • Order the keys of Map

    Hi, Running the following code gives the output Map map = new Hashtable(); map.put("RatificationGroup","1"); map.put("XRatificationGroupMember","2"); map.put("RatificationPerEnvironment","3"); map.put("Ratification","4"); map.put ("RatificationCommen

  • Free beer, if you make this work....

    Provided that you come and collect it yourself..... First of all, new to flash, so I have properly made this all wrong First look here What I want to make is a scroller that can scroll movieclips, so I use a scrollPane and adds a empyt MC (a contentH

  • Accessing XI Repository Beans

    Hi, I'm going to query some of the Session stateless beans from XI like sap.com/com.sap.xi.directory/DirQueryServiceBean. This gives an object of com.sap.aii.ib.sbeans.query.QueryServiceHome_Stub. I can only cast this object to a QueryServiceHome obj