IBM webMethods Hybrid Integration

IBM webMethods Hybrid Integration

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  [XQuery] problem with the character "-"

    Posted Tue March 21, 2006 10:38 AM

    Hi,

    I have this XQuery:

    
    declare namespace tf='http://namespaces.softwareag.com/tamino/TaminoFunction' for $Person in (input()/Person/Name[/Person/Name/Firstname[tf:containsText(., 'e-a')]])[position() > 0 and position() <= 1000] return <Persons Name={$Person/Name/Lastname}>{$Person/Firstname}</Persons> sort by (@Name)

    Like result, there are:

    
    <Firstname>Pierre-Alain</Firstname>
    <Firstname>Line ally</Firstname>
    <Firstname>Janeat</Firstname>

    Normally, I would like to have like result, only Pierre-Alain

    Is anyone know how I can do this!

    Thank you very much for your help!

    C


    #Tamino
    #API-Management
    #webMethods


  • 2.  RE: [XQuery] problem with the character "-"

    Posted Tue March 21, 2006 11:02 AM

    Hi Cedric,

    in this query, there are a lot of issues:

    1. your filter is not relative (it starts with a /). Expected:
      input()/Person/Name[Firstname[…]]

    2. your filter selects person names, not firstnames. If a person has multiple firstnames, you will see them all, if one of them matches the ccondition. You probably want something like
      for $firstname in (input()/Person/Name/Firstname[tf:containsText(…)]) …

    3. are you sure there is an attribute @Name in Element Name. Otherwise, your sort will fail

    4. most probably Pierre-Alain is part of the result only by chance, because it does not match the condition tf:containsText(., ‘e-a’). tf:cointainsText is NOT a substring function, but is based on tokens, i.e. handles whole words. You probably want to use the function contains

    Regards

    Harald


    #Tamino
    #API-Management
    #webMethods


  • 3.  RE: [XQuery] problem with the character "-"

    Posted Tue March 21, 2006 01:28 PM

    Hi Harald,

    I follow your advices 1) and 2) and I modify my Xquery like thhis:

    
    declare namespace tf='http://namespaces.softwareag.com/tamino/TaminoFunction' for $Person in (input()/Person/Name/Firstname[tf:containsText(., 'e-a')])[position() > 0 and position() <= 1000] return <Persons Name={$Person}>{$Person}</Persons> sort by (@Name)

    But the result is always the same, It doesn’t resolve my problem.

    
    <Firstname>Pierre-Alain</Firstname> 
    <Firstname>Line ally</Firstname> 
    <Firstname>Janeat</Firstname> 

    For me, I seem that Tamino considers “tf:containsText(., ‘e-a’)” like “tf:containsText(., ‘ea’)” or “tf:containsText(., ‘e a’)”. I would like to know how I can do that Tamino consider the character ‘-’ like a normal character like a,b,c,…

    Is anyone know how I can do this!

    Thank you very much, for your heslp!

    C


    #Tamino
    #API-Management
    #webMethods


  • 4.  RE: [XQuery] problem with the character "-"

    Posted Tue March 21, 2006 04:14 PM

    Hi Cedric,

    I still wonder how you get these results. Could you please send the data?

    The answer to your question on the handling of “-” is buried in the follwoing documentation section:
    file:///C:/Program%20Files/Software%20AG/Tamino/Tamino%204.4.1.1/Documentation/en/unicode/unicode.htm#char-representation

    I can give you more hints how to configure when I see your data

    regards

    Harald


    #API-Management
    #webMethods
    #Tamino


  • 5.  RE: [XQuery] problem with the character "-"

    Posted Tue April 11, 2006 09:30 AM

    Hi Harald,

    I give you the real query, that you can test on the database you downloaded there were two weeks ago on http://www.powernet.ch/ftp/zefix.zip ([XQuery] Tamino Error - ino:returnValue: 8599 …)

    The xquery is:

    
    declare namespace tf='http://namespaces.softwareag.com/tamino/TaminoFunction' for $Zefix in (input()/Zefix/Search[SearchAIM[tf:containsText(., 'a-b')]])[position() > 0 and position() <= 1000] return <ZefixFound Hauptfassung={$Zefix/Found/FirmaSort}>{$Zefix/Found}</ZefixFound> sort by (@Hauptfassung)

    Or I tried this other xquery

    
    declare namespace tf='http://namespaces.softwareag.com/tamino/TaminoFunction' for $Zefix in (input()/Zefix/Search/SearchAIM[tf:containsText(., 'a-b')])[position() > 0 and position() <= 1000] return <ZefixFound Hauptfassung={$Zefix}>{$Zefix}</ZefixFound> sort by (@Hauptfassung)

    In these two cases, we have the same result! It seems that the character ‘-’ is ignored by Tamino.

    Which is the best way to resolve this problem?

    Thank you for your help!

    Regards

    C


    #Tamino
    #API-Management
    #webMethods


  • 6.  RE: [XQuery] problem with the character "-"

    Posted Wed April 12, 2006 10:58 PM

    Hi Cedric,

    yes, as documented in the documentation section I mentioned in my last reply, the “-” is ignored by Tamino by default. You can change this behaviour by modifying the document in collection ino:vocabulary doctype ino:transliteration. Change
    <ino:character ino:class=“ignore” ino:value=“-”></ino:character>
    to
    <ino:character ino:class=“character” ino:value=“-”></ino:character>

    and recreate the text indexes
    Then, your query will retrieve only documents containing the WORD a-b,
    e.g.
    _ benvenue a - b _ benvenue a-b _
    If you want to find documents which contain the STRING a-b, you have to ask for tf:conainsText(.,“a-b”). In this case, you should turn the word fragment index on

    Regards

    Harald


    #Tamino
    #API-Management
    #webMethods


  • 7.  RE: [XQuery] problem with the character "-"

    Posted Wed April 19, 2006 08:17 AM

    Hi Harald,

    thank you for your help, now the query gives me the good answer with the character “-”.

    Regards

    C


    #Tamino
    #webMethods
    #API-Management