Get Digit String in IVR with variable string?

Hello, everyone!
I  have the same problem, I need to have both 3 and 4 length input. With #  everything works fine, but I want to configure it without terminator to  be used by the caller.
This is what I got so far:
tranext = Extended Get String Digit
- succesfull
--if (tranext.length() == 4) then
----True
-------Call redirect
----False
--------If (tranext.length() == 3) then
-----------True
---------------- Call redirect
But it still calls only for 4 digit numbers, ignoring 3 digits.. What else do I have to do?
IPC Version
5.0(2)_Build064

You need to do the "If (tranext.length() == 3) " logic under the timeout branch.
HTH,
Chris

Similar Messages

  • Using include with variables (String)?

    Is it possible to include a *.jspf page from a variable (string)?
    I'm currently trying something like this, but I know it isn't quite correct (the PAGE string is already defined):
    <%@ include file="${PAGE}" %>I'm sure this is simple, but I'm pretty new to using JSP (I'm used to normal Java classes and the JSP syntax can be confusing at first...).
    Thanks!

    Ok, you're mixing up your EL expressions with scriptlet variables.
    These things are not the same.
    String PAGE = "pages/home.jspf"; decleares a scriptlet variable called PAGE
    You can normally access it using the scriptlet expression tag like <%= PAGE %>
    ${PAGE} is an EL expression.
    The EL variables are stored as attributes in the page, request, session and application scopes.
    So ${PAGE} will not give you the value of the scriptlet variable Page.
    ${PAGE} is approximately equal to pageContext.findAttribute("PAGE") in java.
    Probably the easiest fix would be to use a scriptlet expression rather than an EL expression.
    <jsp:include page="<%= PAGE %>"/>The better fix would be not to use any scriptlet code at all in your JSP, and maybe just use the JSTL conditional tags.
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <c:set var="PAGE" value="${requestScope.page}"/>
    <c:if test="${empty requestScope.page}">
      <c:set var="PAGE" value="pages/home.jspf"/>
    </c:if>
    <jsp:include page="${PAGE}"/>
    //or
    <c:import url="${PAGE}"/>Cheers,
    evnafets

  • How to check string array elements with a string with in one forEach tag ?

    Hi All,
    I am new to JSTL and EL. I need to change the following Java code into JSTL and EL.. I struggled to change this code into JSTL.
    How can i change the if loop which tests the string array element with one bean property ?
    -------------------------------------------------------------------------------------------------------------for(int j=0 ; j < iSelectedCount; j++)
    if(strSelectedRoleId[j].equals(lineRole.getRoleID()))
    isAvailable = true;
    Please help me on this.
    It is very urgent......
    Thank you for ur help,
    Natraj

    import java.util.Calendar;
    Calendar rightNow = Calendar.getInstance();  // gets the current date and time to millisec
    Calendar earlyTime = Calendar.getInstance().set(Calendar.HOUR_OF_DAY, 6).set(Calendar.MINUTE, 30);
    Calendar lateTime = Calendar.getInstance().set(Calendar.HOUR_OF_DAY, 8).set(Calendar.MINUTE, 0);
    if (rightNow.compareTo(earlyTime)> 0 && rightNow.compareTo(lateTime) < 0){
    // do something
    }Try this.

  • [OSB] Customize proxy with variable string

    Hi all,
    I've got this scenario:
    I need that my proxy service append a enviroment string to the output. I'm thinking to add this enviroment string on customization file. Is possible do this?
    For example i call a webservice that give me a link (ex. http://oracle.org), and i need that the proxy return link concat my string ("http://oracle.org" + mystring)
    Regards

    I got the same error with $accinfo/*:OutputParameters --->> BEA-382107: No value could be bound to variable: accsinf
    *$accinfo goes like this:*
    <get:OutputParameters      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:get="http://xmlns.oracle.com/pcbpel/adapter/db/SMS/GET_ACCOUNT_INFO/">
         <get:RESULTRECORDSET>
         <get:RESULTRECORDSET_Row>
         <get:BRANCH>87400</get:BRANCH>
    the XSLT:
    xmlns:ns1="http://xmlns.oracle.com/pcbpel/adapter/db/SMS/GET_ACCOUNT_INFO/"
    <!-- Where the variable is defined -->
    <xsl:param name="v_accinfo"/>
    <xsl:template match="/">
    <inp1:something>
    <accounts>
    <!-- Here's how I use the variable: -->
    <xsl:for-each select="$v_accinfo/ns1:OutputParameters/ns1:RESULTRECORDSET/ns1:RESULTRECORDSET_Row">
    <xsl:if test="(ns1:BRANCH = $br) and ((ns1:ACC_NUM = $ac) and (ns1:CURRENCY = $cr))">
    <acc_description1>
    <xsl:value-of select="ns1:TYPE"/>
    </acc_description1>
    </xsl:if>
    </xsl:for-each>
    I tested the XSLT in JDeveloper. I just used the content of the $accinfo and $body from "Invocation Trace" (OSB Console > Proxy Service >Test) and the transformation works Fine. But I have problems when I use it in the Proxy Service's flow in OSB.
    Edited by: 849874 on Apr 5, 2011 6:43 AM

  • Error when dynamically acquiring string with variable string length

    Hi,
    I have written a VI to send voltage signal and read back the channel 1 and channel 2 data of a SR830 lockin amplifier using serial port. I obtain the channel readings as a single string separated by "," using the snap function. The problem is that when ever the channel 2 data gets very close to zero then the output is in engineering format like say 6.73883e-005. This is where the problem occurs. When such a situation is encountered, I always get a time out error. I have tried to increase the byte count in the read VISA ( till around 50) but then I get this error more often, but if I reduce it to something like 17, I only get this error as I mentioned above only when the channel 2 reading is very nearly zero. I have tried to reduce the byte (to as low as 8), but then I donot get back the whole channel 2 reading (this ch2 reading is also important to me). I am in a fix. Please give me a way out.
    I am attaching here the VIs.
    Attachments:
    C-V measurement by SR830.vi ‏107 KB
    sr830readout1.vi ‏31 KB
    sr830 initialize.vi ‏15 KB

    I am really sorry for the late reply. Well, I tried to increase the time constant inthe sr830 initialize VI, upto 240,000 ms. But I still get the error, and not always now when the reading is near zero. Can you please tell me whats wrong? I am in my very early days in labview and this is infact the first program I have written. BTW i am using a serial port to communicate with the SR830 lockin amplifier. Can you tell me in this context how I use SRQ? thanks in advance.

  • Passing strings to method with Object as parameter?

    I'm having some trouble with comparing a string from my main class to another string stored in an array object in my ADT class using a method called remove. When I compare a string I enter with a string object I have stored in an array, I don't get the correct boolean return value (i.e. the two are equal - true). I thought that strings are objects by default but I'm wondering if I need to declare the string I am passing to the 'remove' method as an object?
    Any suggestions?
    Here is the main class and method from the ADT class (Set) I'm calling.
    Thanks,
    Mark
    import javax.swing.JOptionPane;
    public class TestSet {
    public static void main(String[] args) {
    //create set1
    Set set1 = new Set();
    String stringS1;
    // insert a string or strings into set1
    for(int i = 1; i < 50; i++){
    stringS1 = JOptionPane.showInputDialog(
    "Enter string " + i + " of set1");
    set1.insert(stringS1);
    System.out.println(set1);
    String stringCont1 = JOptionPane.showInputDialog("Do you wish to
    continue?" +
    "\n 1 for yes, 2 for no");
    int cont1 = Integer.parseInt(stringCont1);
    if (cont1 == 2)
    break;
    } // end for
    // remove a string from set1
    for(int i = 1; i < 50; i++){
    stringS1 = JOptionPane.showInputDialog(
    "remove a string of set1");
    System.out.println(set1.remove(stringS1));
    public class Set {
    private final int MAX_INDEX = 50;
    private Object list[];
    private int numItems = 0;
    //Creates a new, empty Set object which can store 50 objects
    public Set() {
    list = new Object[MAX_INDEX];
    // if any occurrances of item are in the set, removes one
    // Precondition: set is not empty
    // Postcondition: set may have one less item
    // success is set to true if item was removed
    // Returns: true if value was removed
    public boolean remove(Object item)
    throws SetIndexOutOfBoundsException {
    boolean success = false;
    int index = 0;
    if (numItems > MAX_INDEX) { // index out of range
    throw new SetIndexOutOfBoundsException("out of bounds exception on" +
    "remove");
    } // end if
    while (index < numItems && !success){
         if (list[index] == item)
              success = true;
         else
              index++;
         } // end while
         if (success){  // if one was found, it is at list[index]
    for (int position = index + 1; position <= numItems - 1; position++)
              list[position - 1] = list[position];
         numItems--;
    } // end if
    return success;
    } // end remove
    // output all list contents
         // Precondition : NONE
         // Postcondition: bag is unchanged
         public String toString() {
              String result = "[ ";
              for (int i = 0; i < numItems; i++)
              result = result + list[i] + " ";
              result = result + " ]";
              return result;
    }

    flounder wrote:
    cotton.m wrote:
    -- this message brought to you be the Jive Forum software sucks donkey balls foundationWhere can I donate?I'm hoping to stick that in enough threads to make for interesting Google results in the hope (faint) that it might inspire some embarrasment to Jive.
    I mentioned elsewhere before I think that I have now come across Jive on other sites as well. Same bugs, holes and shit as here. Sun has certainly not proved competent, thoughtful or careful in addressing issues, rolling out new versions and other maintainence however the real fault is that Jive is terrible shit that nobody should use ever.
    For example you remember all that terrible nonsense with the goatsex and the changes to profiles (and the other worse things that could have been done but weren't)? You can do that on 9 out of 10 Jive forums in the wild (in fact you can do exactly that on the 6 other Jive forums I have come across).
    And some of these are big companies too. It's the worst forum software ever and I wish it wasn't written in Java.

  • CCX 8/9.x Speech Reco ("get digit string")

    I need to be able to Speak a Date in such as January 20, 1990 and populate a String Variable with the result (granted my Grammars are straight) however, The Get Digit String step won't do this for me (and I don't have a test environment yet).  What Step will I need to Use?  How to populate the String would be helpful as well.  Thanks.
    Sam

    It's been a while since I did this, but I think it's the Generic Recognition Step.  It could also probably be done with the Simple Recognition step, but I think that one is more for when the user is making a selection from a set of choices.  I say probably, because technically, saying a date is making a selection from a set of all of the dates which have ever existed.  But, I think you can see how that might not work.
    Have you read the step reference guide?
    http://www.cisco.com/en/US/docs/voice_ip_comm/cust_contact/contact_center/crs/express_9_0/programming/guide/SeriesVol2.pdf
    This is a subject which does not get talked about often on these forums.  I wish more people used it, and then we'd have more discussions about it.  In my opinion, I think that it's just too complicated, expensive, and the masses just are not ready for it yet.  I've used a few ASR systems personally, and I always feel more comfotable just pressing the digits.  That's me though.
    Good luck.
    Anthony Holloway
    Please use the star ratings to help drive great content to the top of searches.

  • Get Digit String Step on UCCX 8.0.2

    Hello,
    I'm using the "Get Digit String" step to prompt callers for their account number.  I am using this step to collect account numbers from Spanish speaking callers.  I have created a spanish prompt asking the callers for their account number and am playing that when the call enters the "Get Digit String" step. I have also configured the "Timeout" and "Unsuccessful" steps to also play Spanish prompts before sending the call to the next step in the strip. The problem that I'm having is that if I don't enter a number, after the initial prompt, I hear a message, in English, that says "Are you still there" and then I'm prompted to enter my account number again.  How do I change the "Are you still there" message to a Spanish message?  Can this even be done?
    Any help would be greatly appreciated.
    Thanks.

    If you modify the system prompt, chances are in the future an upgrade can overwrite your recording. What you should do is set your retry and timeout counts to 0, put an increment node and increment an int variable, and use an if statement to check the index of that int to see how many times you retied. Within the timeout and and unsuccessful node put an audio file there to represent each message.

  • Get Digit String issue

    Hey Team, I am looking for the proper way to do this if the way I am doing it is not correct.
    I use a get digit string and play a menu prompt to a caller
    Press 1
    Press 2
    Press 3
    Etc...
    But if the caller presses a 5 digit code they get a super secret special menu.  All this works great.  When i do the debug I see the digits being passed to the sCED variable I use.  99% of all callers are not pressing the pound key after thier key press so the get digit string timeout brance gets used.
    I have fixed this in two ways.  I use an if statement in the timeout to check if sCED has a value I then send it to another if statement for routing to the various menu options.
    THe out way I fixed this is I just send every call which hits the time out on to be processed and evaluated.
    Am I doing this correctly?  It all works fine but I wanted to make sure there are no gotchas or better ways to accomplish this.
    Having the caller pass both a single digit and 5 digits is why I use the get digit string instead of a menu step.
    See screen shot.  Thanks in advance for any feedback.
    Go Butler Bulldogs!!

    A couple of suggestions in the form of pseudo code (all in the name of effeciency):
    label main_menu_resetset counter = 0label main_menuced = get digit string(timeout 3 sec, inter-digit 1 sec, no terminating or cancel digit, no retries)  successful    label main_menu_success    if (ced == super_secret_key)      true        goto super_secret_section      false    switch (ced)      case "1"        /* do menu option 1 tasks */      case N        /* do menu option N tasks */      default        goto main_menu_failure  timeout    goto main_menu_success  unsuccessful    label main_menu_failure    play prompt (invalid)    if (++counter > maximum)      true        goto customer_service      false        play prompt (try_again)        goto main_menu
    Questions to ask yourself about your approach and this new approach:
    How many steps do I have in this solution (not counting branches)?
    How many steps for best case scenario execution?
    "" worst case scenario?
    How easy is it to change the super secret key (and length of key)?
    How easy is it to add/remove menu options (steps required to add)?
    At how many points are you addressing the failures in your menu?

  • Good practice to initalize all instance variables with type String to emptr

    Is it a good practice to initalize all instance variables with
    type String to emptry string?
    #1 approach:
    public class A
    { private String name = "";
    private String address ="";
    //etc...
    rather than
    #2 approach:
    public class A
    { private String name;
    private String address;
    //etc...
    When I read Java books, the examples don't usually do #1 approach.
    The problem is if we don't initialize to empty string, when we call
    the getter method of that instance variable, it will return null.
    Please advise. Thanks!!

    Please advise. Thanks!!It depends on your coding style. If you can avoid lots of checks for null Strings in the rest of the code then why not initialize to "".
    You have the same situation when a method returns an array. If you under circumstances return a null array reference then you have to always check for this special case, but if you return a zero length array instead you have no special case. All loops will just run 0 iterations and everything will work fine.
    So in general I guess the return of zero objects instead of null references really boils down to whether it simplicates the rest of your code by removing lots of extra checks for the special null case. This usage is especially favourable in the zero length array case. See Effective Java by Bloch, item 27.

  • Forms.INS(72) No String value associated with this variable

    When I try to distribute my application I need to make sure that
    when my app installs it either adds or creates the environment
    variable Forms60_Path. This can be done in the project
    builder. When going through this one of the steps you have
    ability to add new environment variables. So I add on one named
    Forms60_Path with a value and contents of %PROD_HOME% and with
    the append set to yes.
    This now will give me either one or two errors when installing
    the application. The first error is that because i am choosing
    append set to yes it doesn't appear to be checking if the
    variable is already there or not. What it does do is give me a
    messages saying "A file not found while trying to translate
    Forms60_Path from '$Oracle' would u like to retry, ignore or
    process' I have choosen to process and the installer correctly
    adds the registry entry. That is a good thing but i still
    should not recieve an error when doing this it should check to
    see if the Reg entry is there if not then create it, if it is
    there then append to it. This only happens if you have append
    set to yes and the environment variable does not exist in the
    registry yet.
    The second error is more concerning because it just cancels out
    of the install all together. What it does no matter what under
    any circurmstance after you have added an environment variable
    in the delivery wizard is give u a message saying that
    "Form_Name.INS(72) No String Value associated with this
    variable" This error always comes up no matter what. After
    looking throught the INS file I took out the line
    "win32_register_map_variable(repl_var);" and I no longer
    recieved that error. My question is why do I get this error and
    what is the ramifications of taking this line out of the INS
    file?
    If no one else has had these problems I will be simply amazed!!!
    Thanks,
    Spencer Tabbert
    null

    Spencer,
    I am also getting the error you got months ago. (The second one: FORM.ins(72): No string value associated with this variable.) Can you tell me how you were able
    to fix it? I would appreciate it.
    I am new to Project Builder and pretty
    confused.
    Thanks,
    Monika

  • Have Firefox & Bing and when I open Firefox I get Ref A and string of characters; then when I get to Bing, no toolbar with bookmarks, etc or way to access mail.

    I made Bing my browser and it was working fine until today. When I open Firefox I get a message Ref A: and then a long string of characters. I click on the home icon and the string changes. After doing this several times I get the Bing search page. I do not get the Firefox start page with the tool bar that has my book marks, history etc. I cannot clear the cache if I cannot not get the history tab. If I go the the mozilla firefox program folder and open it, there is a tool bar but cannot clear recent history, etc. there. I do not have an administrator & password on my home desk top; it is just me. I tried to follow your suggestions, but they do not apply to my situation. I really don't know if this is a firefox or bing problem. I used google before bing and had no problems; just wanted to try bing.

    Can you attach a screenshot?
    *http://en.wikipedia.org/wiki/Screenshot
    *https://support.mozilla.org/kb/how-do-i-create-screenshot-my-problem
    Use a compressed image type like PNG or JPG to save the screenshot.
    Start Firefox in <u>[[Safe Mode|Safe Mode]]</u> to check if one of the extensions (Firefox/Tools > Add-ons > Extensions) or if hardware acceleration is causing the problem (switch to the DEFAULT theme: Firefox/Tools > Add-ons > Appearance).
    *Do NOT click the Reset button on the Safe Mode start window or otherwise make changes.
    *https://support.mozilla.org/kb/Safe+Mode
    *https://support.mozilla.org/kb/Troubleshooting+extensions+and+themes

  • How to create dynamic connection string with variables using ssis.

    Hello,
    Can anyone let me know on how to create dynamic connection string with variables using ssis?
    Any help would be appreciated.

    Hi vinay9738,
    According to your description, you want to connect multiple database from multiple servers using dynamic connection.
    If in this case, we can create a Table in our local database (whatever DB we want) and load all the connection strings.  We can use Execute SQL Task to query all the connection strings and store the result-set in a variable of object type in SSIS package.
    Then use ForEach Loop container to shred the content of the object variable and iterate through each of the connection strings. And then Place an Execute SQL task inside ForEach Loop container with the SQL statements we have to run in all the DB instances. 
    For more details, please refer to the following blog:
    http://sql-developers.blogspot.kr/2010/07/dynamic-database-connection-using-ssis.html
    If there are any other questions, please feel free to let me know.
    Regards,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Ignoring Keys in "Get Digit String" steps

    I have a "Get Digit String" step to allow users to press '1' to bypass some announcements.  The Prompt for this step is set to play the announcments.  On the Input tab, I've set Maximum Retries = 0, so that I don't hear "Are you still there?" after the announcements play.  On the Filter tab, I've set only the '1' key as a valid option.  I've also set the Input Length = 1.  What happens is that if any key other than '1' is pressed, then the Unsuccessful branch executes, and the announcements are terminated.  But I only want the announcements terminated if the '1' is pressed.  All other keys should just be ignored, and the announcements should continue playing.
    Any ideas on how to get this done?

    That's not possible for one simple reason.  The script executes in a serial fashion.  One step at a time.
    What you are asking requires asynchronous activity.
    In one instance you need to play a message, and in another you need to validate user input.
    From what I can think of, your best solution is to eliminate the exclusivity of the number 1 and just allow any digit.
    I did think of an alternate method, but it requires greater knowledge of CallManager an MOH sources.
    Here's an example:
    2 CTI Port Groups, 1 for the call to land on, and 1 for your to redirect to which has a special MOH source that plays messages to the caller.
    Call comes in on port group 1
    You process some info
    You redirect the caller to the messages phone number in port group 2
    Place Call Hold
    Get Digit String (filter "1")
         Success
              Call Unhold
              Call Redirect somewhere else
         Failure
              Loop Get Digit Step
    EDIT:  Again, I want to stress that this method requires exceptional knowledge of CallManager's ability to handle MOH.  There's a lot to consider on this one.

  • Prepared XmlQueryExpression with variables vs String query

    John,
    I have ran into another performance problem. This time it is the same xpath expression. The difference is one is a prepared one with variables that are being reset for each execution thread where as the other one is alway a new string query with each execution thread.
    dbxml> info
    Version: Oracle: Berkeley DB XML 2.3.10: (January 30, 2007)
    Berkeley DB 4.5.20: (September 20, 2006)
    Default container name: en-US
    Type of default container: NodeContainer
    Index Nodes: on
    Shell and XmlManager state:
    Verbose: on
    Query context state: LiveValues,Eager
    declare default element namespace "http://dto.destination.dbxml.valhalla.starwood.com";
    collection("en-US")/City[CityDetail/PropertyIds/PropertyId=100]/CityItems/CityItem[@CityItemId=(actual collection of 500 double values)]
    Time: 498 ms
    vs
    declare default element namespace "http://dto.destination.dbxml.valhalla.starwood.com"; collection("en-US")/City[CityDetail/PropertyIds/PropertyId=$PropertyId]/CityItems/CityItem[@CityItemId=$Ids]
    Time: 104291 ms
    A snippet of query plans is following:
    dbxml> queryplan 'declare default element namespace "http://dto.destination.dbxml.valhalla.starwood.com";
    collection("en-US")/City[CityDetail/PropertyIds/PropertyId=100]/CityItems/CityItem[@CityItemId=(196970,339036)]'
    <XQuery>
    <DbXmlNav>
    <LookupIndex container="en-US">
    <ValueQP index="node-element-equality-double" operation="eq" child="PropertyId:http://dto.destination.dbxml.valhalla.starwood.com"
    value="100"/>
    </LookupIndex>
    <DbXmlStep axis="parent-of-child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="PropertyIds" nodeType="element"/>
    <DbXmlStep axis="parent-of-child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="CityDetail" nodeType="element">
    <OQPlan>P(node-element-presence-none,=,CityDetail:http://dto.destination.dbxml.valhalla.starwood.com)</OQPlan>
    </DbXmlStep>
    <Join type="parent-of-child" return="argument">
    <DbXmlNav>
    <QueryPlanFunction result="collection" container="en-US">
    <OQPlan>n(P(node-element-presence-none,=,CityDetail:http://dto.destination.dbxml.valhalla.starwood.com),V(node-element-equality-double,P
    ropertyId:http://dto.destination.dbxml.valhalla.starwood.com,=,'100'),u(n(P(node-element-presence-none,=,CityItem:http://dto.destination
    .dbxml.valhalla.starwood.com),V(node-attribute-equality-double,@CityItemId,=,'196970')),n(V(node-attribute-equality-double,@CityItemId,=
    ,'339036'),P(node-element-presence-none,=,CityItem:http://dto.destination.dbxml.valhalla.starwood.com))))</OQPlan>
    </QueryPlanFunction>
    <DbXmlStep axis="child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="City" nodeType="element"/>
    </DbXmlNav>
    </Join>
    <DbXmlStep axis="child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="CityItems" nodeType="element"/>
    <DbXmlStep axis="child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="CityItem" nodeType="element">
    <OQPlan>P(node-element-presence-none,=,CityItem:http://dto.destination.dbxml.valhalla.starwood.com)</OQPlan>
    </DbXmlStep>
    <Join type="attribute" return="context_item">
    <LookupIndex container="en-US">
    <UnionQP>
    <ValueQP index="node-attribute-equality-double" operation="eq" child="CityItemId" value="196970"/>
    <ValueQP index="node-attribute-equality-double" operation="eq" child="CityItemId" value="339036"/>
    </UnionQP>
    </LookupIndex>
    </Join>
    </DbXmlNav>
    </XQuery>
    <XQuery>
    <DbXmlNav>
    <LookupIndex container="en-US">
    <ValueQP index="node-element-equality-double" operation="eq"
    child="PropertyId:http://dto.destination.dbxml.valhalla.starwood.com">
    <Variable name="PropertyId"/>
    </ValueQP>
    </LookupIndex>
    <DbXmlStep axis="parent-of-child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="PropertyIds" nodeType="element"/>
    <DbXmlStep axis="parent-of-child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="CityDetail" nodeType="element">
    <OQPlan>P(node-element-presence-none,=,CityDetail:http://dto.destination.dbxml.valhalla.starwood.com)</OQPlan>
    </DbXmlStep>
    <Join type="parent-of-child" return="argument">
    <DbXmlNav>
    <QueryPlanFunction result="collection" container="en-US">
    <OQPlan>n(P(node-element-presence-none,=,CityDetail:http://dto.destination.dbxml.valhalla.starwood.com),P(node-element-presence-none,=,C
    ityItem:http://dto.destination.dbxml.valhalla.starwood.com),P(node-attribute-equality-double,prefix,@CityItemId),P(node-element-presence
    -none,=,PropertyId:http://dto.destination.dbxml.valhalla.starwood.com))</OQPlan>
    </QueryPlanFunction>
    <DbXmlStep axis="child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="City" nodeType="element"/>
    </DbXmlNav>
    </Join>
    <DbXmlStep axis="child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="CityItems" nodeType="element"/>
    <DbXmlStep axis="child" uri="http://dto.destination.dbxml.valhalla.starwood.com" name="CityItem" nodeType="element">
    <OQPlan>P(node-element-presence-none,=,CityItem:http://dto.destination.dbxml.valhalla.starwood.com)</OQPlan>
    </DbXmlStep>
    <Join type="attribute" return="context_item">
    <DbXmlNav>
    <LookupIndex container="en-US">
    <PresenceQP index="node-attribute-equality-double" operation="prefix" child="CityItemId"/>
    </LookupIndex>
    <DbXmlCompare name="equal" join="self">
    <Variable name="Ids"/>
    </DbXmlCompare>
    </DbXmlNav>
    </Join>
    </DbXmlNav>
    </XQuery>
    Any ideas of what is going on?
    Thanks,
    Dmitriy

    Dmitriy,
    Do you have patch #4 for 2.3.10 applied?
    http://www.oracle.com/technology/products/berkeley-db/xml/update/2.3.10/patch.2.3.10.html
    Regards,
    George

Maybe you are looking for