Within--interMedia

I use oracle 8.1.7.
I have a table
MedlineXML (PMID Number Primary Key,
MedlineId Number,
Citation CLOB)
where Citation is of xml format.
I create index:
CREATE INDEX xmlindex ON MedlineXML(Citation) INDEXTYPE IS
ctxsys.context
parameters('storage mystore filter ctxsys.null_filter section group
autogroup memory 30M');
I cannot explain the following, as Author is outer tag of LastName. But
"within Author results in less citations than within LastName.
Also I cannot do "nest within", i.e., 'Robinson within LastName within
Author'. Any help?
select count(*) from MedlineXML where CONTAINS (citation,'Robinson
within Author')>0;
COUNT(*)
20808
Elapsed: 00:00:36.28
select count(*) from MedlineXML where CONTAINS (citation,'Robinson
within LastName')>0;
COUNT(*)
20870
Elapsed: 00:00:29.23
PS. Eaxmple of xml data:
<AuthorList>
<Author>
<LastName>Courtright</LastName>
<ForeName>L J</ForeName>
<Initials>LJ</Initials>
</Author>
<Author>
<LastName>Kuzell</LastName>
<ForeName>W C</ForeName>
<Initials>WC</Initials>
</Author>
</AuthorList>

No, we did not try XML_SECTION_GROUP, as we got too many tags
and AUTO_SECTION_GROUP will automatically create a zone section
for each start_tag/end-tag pair in XML document.
According Intermedia Document, it should also work without problem.

Similar Messages

  • Problems clause within (Intermedia text)

    I have problems using the clause within in a XML file. I suspect that is impossible for the intermedia text to find words within tags with attributes, could you help me, my friend?
    Thanks a lot.
    And Merry Christmas.

    Hi Ralf,
    please define first your own preferences like this:
    exec CTX_DDL.drop_preference('MY_LEXER');
    exec CTX_DDL.create_preference('MY_LEXER','BASIC_LEXER');
    exec CTX_DDL.set_attribute('MY_LEXER','ALTERNATE_SPELLING',
    'GERMAN');
    exec CTX_DDL.set_attribute('MY_LEXER','BASE_LETTER','YES');
    exec CTX_DDL.set_attribute('MY_LEXER','MIXED_CASE', 'NO');
    exec CTX_DDL.set_attribute('MY_LEXER','INDEX_THEMES','NO');
    exec CTX_DDL.set_attribute('MY_LEXER','INDEX_TEXT', 'YES');
    exec CTX_DDL.set_attribute('MY_LEXER','COMPOSITE', 'GERMAN');
    exec ctx_ddl.Drop_Preference ('MY_FILTER');
    exec ctx_ddl.Create_Preference ('MY_FILTER','NULL_FILTER');
    exec ctx_ddl.drop_section_group ('MY_SECTION');
    exec ctx_ddl.create_section_group
    ('MY_SECTION','NULL_SECTION_GROUP');
    and then create your index with this preferences. You only need
    an INSO filter if you want to index pdf,word,...
    create index test.alldocs_ctx on test.alldocs(data)
         indextype is ctxsys.context
         parameters ('DATASTORE CTXSYS.MyUserDS FILTER
    CTXSYS.INSO_FILTER LEXER BASIC_LEXER');create index test.alldocs_ctx on test.alldocs(data)
         indextype is ctxsys.context
         parameters ('
    DATASTORE CTXSYS.MyUserDS
    lexer MY_LEXER
    filter MY_FILTER
    section group MY_SECTION');
    Then see in the token table what tokens are in the index:
    select token_text from dr$alldocs_ctx$i;
    If you got also an ORA-3113 see in alert.log if there is a trace
    referenced with this error and have a look in this file to find a
    better error message.
    Good luck.
    Thomas

  • Using XML_SECTION_GROUP within Intermedia

    Hello,
    I wanted to use Oracle's Intermedia Text services to store XML in a CLOB.
    I also wanted to see if I could do the following.
    1. create index only on certain elements (and not all as in a AUTO_SECTION_GROUP).Intermedia Text Manager does not allow creation of indexes with XML_SECTION_GROUP - though the help saya this is one of the possible sections.
    2. Be able to query on attributes of a tag.
    Is there an example that I can look up or any documentation on XML_SECTION_GROUP and it's features?
    Thanks in advance
    Rohit
    null

    Sorry,
    I posted the wrong sample xml.Please check the correct xml's below:
    XML 01:
    <A>
    <B>
    <C>value0</C>
    <D>value1</D>
    </B>
    </A>
    XML 02:
    <A>
    <B>
    <C>value0</C>
    </B>
    <B>
    <D>value1</D>
    </B>
    </A>
    contains(xml_doc, 'value0 INPATH (//B/C)) & value0 INPATH (//B/C))' > 0

  • Intermedia score for within

    the intermedia reference said within has no
    effect on score,and i have a query,the contains clause only include within,and i get a same score (very low,<10) for all the rows returns,so how this score generated?
    any ideas welcome!
    thanks in advance.

    Don't use the variable feature of the textfield.  Assign the textfield an instance name (let's say you name it scoreText), and when you are ready to add text to it use
    scoreText.text = 8 * (60 - count);
    If you are still getting NaN, that probably means your count variable is no longer in scope for where you are on the timeline.  So the easiest way to manage this for you would probably be to use count as a _global variable, meaning, everywhere you use count, you instead use _global.count.  Another way would be to have a layer dedicated to shared data that extends the entire length of the timeline, and in that layer you could declare:
    var count;
    That way, count will be avaiable to anything along the timeline.

  • InterMedia CONTAINS ... WITHIN clause

    Hello:
    I am trying to get a query that parses out a CLOB ( XML tags) to work but I get an error when I use an OR with the Contains clause.
    Error:
    ORA-29902: error in executing ODCIIndexStart() routine
    ORA-20000: Oracle Text error;
    DRG-50901: text query parser syntax error on line 1, column 33
    Part of the query that I am using is as follows :
    SELECT
    a.subj_key_val_txt, func_ctct_hist_xml_parse(XMLTYPE(a.adt_xml_desc).extract('/EVENT/CONTACT_HISTORY'), 'csrFirstName'), func_ctct_hist_xml_parse(XMLTYPE(a.adt_xml_desc).extract('/EVENT/CONTACT_HISTORY'), 'csrLastName'),
    a.adt_crt_dtm adt_crt_dtm, func_ctct_hist_audit_event(ae.adt_evt_typ_name,(XMLTYPE(a.adt_xml_desc).extract('/EVENT')) )
    FROM
    audit_v3 a,
    audit_evt_type_v3 ae
    WHERE
    a.adt_evt_typ_id = ae.adt_evt_typ_id and
    CONTAINS(a.adt_xml_desc, to_char(cons_seq_nbr_in) || ' WITHIN CONS_SEQ_NBR OR ' || to_char(member_id_in) || ' WITHIN (MEMBER_ID WITHIN CONTACT_HISTORY)') > 0)
    and
    trunc(a.adt_crt_dtm) between start_date_in and end_date_in
    Your assistance is much appreciated. Thank you

    Sorry, I do not have 2 WITHIN in the second Contains clause ..
    CONTAINS(a.adt_xml_desc, to_char(cons_seq_nbr_in) || ' WITHIN CONS_SEQ_NBR') > 0 or
    CONTAINS(a.adt_xml_desc, to_char(member_id_in) || ' WITHIN MEMBER_ID') > 0

  • InterMedia search within report components causing Oracle to run at 100%cpu

    Hi,
    Running Win NT SP5
    Oracle 8.1.7.1
    IAS 1.0.2.2
    Portal 3.0.9.8.1
    I have a table with an intermedia index.
    My report query has :
    AND contains(i.description,:b_description) > 0
    This appears to be the reason why my application components sometimes run othertime doesnt. It also seems to have caused my CPU to go to 100% .. such that Oracle process taking 100% CPU.
    Take out this line.. and everything works fine!
    Anyone else experienced this, any fix available ?
    matt.

    Hi,
    Running Win NT SP5
    Oracle 8.1.7.1
    IAS 1.0.2.2
    Portal 3.0.9.8.1
    I have a table with an intermedia index.
    My report query has :
    AND contains(i.description,:b_description) > 0
    This appears to be the reason why my application components sometimes run othertime doesnt. It also seems to have caused my CPU to go to 100% .. such that Oracle process taking 100% CPU.
    Take out this line.. and everything works fine!
    Anyone else experienced this, any fix available ?
    matt.

  • Usint Intermedia text to search within ORDMultiMedia object

    I atempted using the following querry after I setup up an index and accompaying preferences .
    select id, score(99)
    from VideoStorage V
    where
    CONTAINS(V.vsrc.comments, '(John Doe) WITHIN MOVIECASTTAG',
    99) > 0;
    It returned the following error message,
    ERROR at line 1:
    ORA-29900: operator binding does not exist
    ORA-06553: PLS-561: character set mismatch on value for parameter 'A0'
    Thanks for your help in advance.
    Venura
    null

    1. These are the contents of V$OPTION.
    PARAMETER                    VALUE
    Partitioning                    TRUE
    Objects                         TRUE
    Parallel Server                    FALSE
    Advanced replication               TRUE
    Bit-mapped indexes               TRUE
    Connection multiplexing               TRUE
    Connection pooling               TRUE
    Database queuing               TRUE
    Incremental backup and recovery          TRUE
    Instead-of triggers               TRUE
    Parallel backup and recovery          TRUE
    Parallel execution               TRUE
    Parallel load                    TRUE
    Point-in-time tablespace recovery     TRUE
    Fine-grained access control          TRUE
    N-Tier authentication/authorization     TRUE
    Function-based indexes               TRUE
    Plan Stability                    TRUE
    Online Index Build               TRUE
    Coalesce Index                    TRUE
    Managed Standby                    TRUE
    Materialized view rewrite          TRUE
    Materialized view warehouse refresh     TRUE
    Database resource manager          TRUE
    Spatial                         TRUE
    Visual Information Retrieval          TRUE
    Export transportable tablespaces     TRUE
    Transparent Application Failover     TRUE
    Fast-Start Fault Recovery          TRUE
    Sample Scan                    TRUE
    Duplexed backups               TRUE
    Java                         FALSE
    OLAP Window Functions               TRUE
    2. I tried to make a lexer preference but was not succesfull.
    May be you know the answer?

  • How do I use XSLT & XML is stored in InterMedia Text.....

    I use interMedia Text to store XML document. How do I use the XSLT Processor API to transform the data which is searched by XML SQL Utility??
    //***Source Code
    public Document xmlquery(String tabName,String xslfilename)
    Document xmlDocToReturn = null;
    String xmlString;
    try
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    //initiate a JDBC connection
    // initialize the OracleXMLQuery
    OracleXMLQuery qry = new OracleXMLQuery(conn,"select XML_TEXT from bookstore where contains (xml_text,'John WITHIN authorsec')>0");
    // structure the generated XML document
    qry.setMaxRows(2);
    // set the maximum number of rows to be returned
    // get the XML document in string format
    xmlString = qry.getXMLString();
    // print out the XML document
    System.out.println(" OUTPUT IS:\n"+xmlString);
    // get the XML document in string format
    xmlDocToReturn = qry.getXMLDOM();
    conn.close();
    catch (SQLException e) {
    return xmlDocToReturn;
    xml = (XMLDocument)query.xmlquery(args[1],args[0]);
    // Instantiate the stylesheet
    XSLStylesheet xsl = new XSLStylesheet(xsldoc, xslURL);
    XSLProcessor processor = new XSLProcessor();
    // Display any warnings that may occur
    processor.showWarnings(true);
    processor.setErrorStream(System.err);
    // Process XSL
    DocumentFragment result = processor.processXSL(xsl, xml);
    Thank you.
    null

    Your problem here is that when you store an XML document in a CLOB and search it using intermedia, when you do a query like:
    SELECT xml_text
    FROM bookstore
    WHERE CONTAINS(xml_text,'John WITHIN authorsec')>0
    The output from the XML SQL Utility using getXMLDOM() looks like this:<ROWSET>
    <ROW>
    <XML_TEXT><![CDATA[
    <bookstuff>
    <authorsec>
    <name>Steve</name>
    </authorsec>
    etc.
    </bookstuff>
    ]]>
    </XML_TEXT>
    </ROW>
    </ROWSET>with the document as a single text value (it's actually just a text node, not a CDATA node) but the above illustrates conceptually that the whole XML document is one big text node.
    To transform this you'll need to parse that XML text into an XML document in memory by passing constructing a StringReader() on the text value and parsing that reader.
    null

  • Too many recursive statements in PRO*C in comparing to SQLPLUS for Intermedia Index.

    Hi,
    I hope someone can help about this Problem. I don't know ehther its Intermedia Index or Database Problem...
    The following Query;
    SELECT SCORE(1),D.DOCUMENT_ID,DOCU_DATE_NUM,DOC_TYPE_ID
    FROM
    DOCUMENT D WHERE CONTAINS(SEARCH_INDEX,:b1,1) > 0 ORDER BY SCORE(1) DESC,
    DOCU_DATE_NUM DESC
    takes approx 7 sec in SQLPLUS , but in PRO*C it takes approx 55 sec. They call the same PL/SQL Stored Proc including the SQL above returning REF Cursor.
    In PROC*C running Program the Trace file contains 139 Statements of:
    SELECT/*+INDEX(T "DR$DOCXML_IX$X")*/ DISTINCT TOKEN_TEXT FROM "GETINFO"."DR$DOCXML_IX$I" T WHERE TOKEN_TEXT LIKE :lkexpr and TOKEN_TYPE NOT IN (1, 2, 5)
    but in SQLPLUS generated Trace File it has only 18 of the Statement.
    The TKPROF Report for PRO*C is:
    SELECT SCORE(1),D.DOCUMENT_ID,DOCU_DATE_NUM,DOC_TYPE_ID
    FROM
    DOCUMENT D WHERE CONTAINS(SEARCH_INDEX,:b1,1) > 0 ORDER BY SCORE(1) DESC,
    DOCU_DATE_NUM DESC
    call count cpu elapsed disk query current rows
    Parse 1 0.00 0.00 0 0 0 0
    Execute 1 33.37 33.72 3 94 0 0
    Fetch 44 0.04 0.04 29 69 4 43
    total 46 33.41 33.76 32 163 4 43
    For SQLPLUS:
    SELECT SCORE(1),D.DOCUMENT_ID,DOCU_DATE_NUM,DOC_TYPE_ID
    FROM
    DOCUMENT D WHERE CONTAINS(SEARCH_INDEX,:b1,1) > 0 ORDER BY SCORE(1) DESC,
    DOCU_DATE_NUM DESC
    call count cpu elapsed disk query current rows
    Parse 1 0.01 0.01 0 0 0 0
    Execute 1 4.36 4.37 0 0 0 0
    Fetch 44 0.02 0.02 10 44 0 43
    total 46 4.39 4.40 10 44 0 43
    Why is there so much difference? Even if they both do HARD Parse for the SQL above or run the same Stored Proc many times with "ALTER SESSION SET SESSION_CACHED_CURSORS=10", the difference in Time is the same.
    Can someone help about this, I think it is an important Tuning Problem for Intermedia Index or ORACLE Bug maybe...

    Hi,
    Thanks for answering.
    Yes I'm sure , both of them are using the same bind variables and it is:
    (FUZZY($INTERNATIONAL) AND FUZZY($JOURNAL) AND FUZZY($ELECTRONICS) AND FUZZY($COMMUNICATIONS)) WITHIN SERIES_TITLE';
    The same Query takes too long in Unix SQL*PLUS (~ 54 secs) also, but in Windows SQL*PLUS its faster (~ 7 secs).
    Bu t if I chabe the Bind Variable as :
    STR := '(($INTERNATIONAL OR ?INTERNATIONAL) AND ($JOURNAL OR ?JOURNAL) AND ($ELECTRONICS OR ?ELECTRONICS) AND ($COMMUNICATIONS OR ?COMMUNICATIONS)) WITHIN SERIES_TITLE';
    then its in both Environment faster and nearly the same. But its not the same as the previous one.
    I think the problem is when using the search as ?$<Word> (Fuzzy Stem together). But not everytime. Do you think its a Bug?

  • Using NOT comparison in SQL with Intermedia

    Ok, I have an issue where I am trying to create a search engine the most efficient way. I am using Oracle 8.1.7 and Java. I can't always use the Intermedia ~ as there has to be a comparison.
    Basically, there are cases when the not can be chosen and the criteria are from different zones in the index. For example if choose a type of Title and value of The Stand and type Author not Stephen King. The following is not valid, as Title is WITHIN TITLE and Author is WITHIN CTBR. And no I can't add one to the other zone.
    select ttl_id from table where CONTAINS(KYWD, '(${The}) & (${Stand}) WITHIN TITLE AND ((${The}) & (${Stand})) ~ ((${Stephen}) & {${King})) WITHIN CTBR') > 0
    This will not work properly as The Stand is not present in CTBR. So the alternative so far is this:
    select ttl_id from table where CONTAINS(KYWD, '(${The}) & (${Stand}) WITHIN TITLE') > 0 AND ttl_id NOT IN (Select ttl_id from table where CONTAINS(KYWD, '((${Stephen}) & {${King})) WITHIN CTBR') > 0)
    This is not the prefered option as the full table search that may be repeated in this query if all 5 nots are chosen with different criteria. This as you can imagine is to slow. So any ideas would be helpful.
    Thanks

    Hi Eric -
    I'd recommend that you post this question to the Intermedia/Text forum. While we all love Java here, our knowledge of Intermedia is likely to not be as good as the guru's of the Text/Intermedia world.
    The Intermedia/Text forum can be located at
    Text

  • Plugin error with Intermedia

    Background:
    table with 8 text fields, 3 Intermedia fields (1 audio, 1 video, and 1 image) where binary data is stored in the table
    I have a JSP page that pulls the text data from the database.
    I have a servlet that pulls the audio and video data from the database.
    The JSP references the servlet via a link - If I right click on the link, and select "save as...", I can save the audio and video data to disk, and it runs fine. The problem is if I want to just click on the link and spawn the audio/video plugin (in my case Windows Media Player). I get the following error - "Cannot determine the device type from the given filename extension".
    Within the servlet, I set the responses content type to the mime type of the Intermedia object. I then open an output stream from the Intermedia object, and write the data out to the stream.
    Are there any other HTTP headers that I need to set to get the plugin to work properly? How can I get the data to show a filename instead of the long URL query string?
    Thanks.
    Troy

    Hi,
    I suspect the problem here is that the plugin is looking for a file extension to decide the type of media that is to be played. I've seen this problem with some plugins with the Netscape browser, but not (so far) with Microsoft's IE browser.
    Here's what I think happens in Netscape: the browser gets the response and decides which plugin to use based on the Content-Type (MIME type) header. It saves the content in a file in its cache, then passes the filename to the plugin. However, as the URL doesn't have a file name/extension, then the file name in the cache doesn't have an extension either. This means that a plugin that can handle multiple content types, but that doesn't parse the content to determine the type, doesn't know what to do. For example, the Windows Media Player doesn't parse the content, so it has to rely on the file extension to know how to play the content. However, the Quicktime plugin works fine with most media it handles because it parses the content to determine how to play it. In this situation, I've seen problems with .WAV and .AVI files.
    I'm less sure exactly how IE handles things, but I do know that it relies heavily on a combination of file extensions and parsing content to determine the MIME type heuristically. That is to say, IE knows about a whole bunch of 'signatures' at the beginning of content from which it can determine the content type. So even if it doesn't have a file extension, it can figure things out. I believe it also does some form of sanity checking between the file extension, if there is one, the content-type header, if there is one, and the content type that it determines itself using its own heuristic algorithms, but I don't remember the details. Of course, this approach can also cause problems. For example, even slightly older versions of IE don't recognize the format of some of the newer versions of, for example, Microsoft Word. (I ran into this one myself not so long ago.)
    In your case, I think there are a couple of options:
    [list=1]
    [*] Include a dummy file extension when you build the URL to fetch the audio or video data, or
    [*] Use a plugin that can determine the MIME type dynamically.
    [list]
    Option 1 is fairly simple and has the advantage that it'll always work, no matter what browser and/or set of plugins is being used. I suspect there are a bunch of ways to do this, but here are a couple of ideas:
    [list=1]
    [*] When building the URL, include a dummy query string parameter (use any name you like) that contains the extension. I don't understand exactly how this gets parsed (it may be that the plugin simply searches the entire URL for known/supported extensions), but the following should work:
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>multimediaservlet?pkey=pkeyvalue&paramname=extension<HR></BLOCKQUOTE>
    Eg:
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>multimediaservlet?pkey=forty2&foo=.avi<HR></BLOCKQUOTE>
    Of course, you might want to use something more reasonable :-)
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>multimediaservlet?pkey=forty2&ext=.avi<HR></BLOCKQUOTE>
    [*]I've not tried this myself, but you should be able to build a dummy file name and include it in the UTL after the servlet name. The servlet can then get the file name (by calling HttpServletRequest.getPathInfo), decode what it needs (ie, extract the key), then retrieve and deliver the data:
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>multimediaservlet/pkeyvalue.extension<HR></BLOCKQUOTE>
    Eg:
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>multimediaservlet/forty2.avi<HR></BLOCKQUOTE>
    This method has the advantage that it will provide a default file name for a Save-As operation.
    [list]
    Hope this helps,
    Simon
    null

  • How to store XML and search within tags

    My question
    ===========
    exactly what steps do you need follow to take an XML doc, store
    it, and query based on a tag value.
    The 8i Intermedia text option Reference refers to
    XLM_SECTION_GROUP feature. However, no examples are given. There
    is no user guide.
    I searched Oracle's website and found one reference to
    XML_SECTION_GROUP. The example given is a single row insert into
    a CLOB column with a single pair of tags.
    This whitepaper gives an example of an XML doc, and a query on
    it:
    XML Support in Oracle8i and Beyond
    November 9, 1998
    It doesn't list the steps in between storing the doc and quering
    it. This is crucial to the whole thing: does XML_SECTION_GROUP
    allow all nested tags below the top level to be sectioned and
    indexed implicitly? Or do you need to tell Oracle about all the
    tags you are interested in, in which case what value is added by
    the XLM_SECTION_GROUP?
    Does Oracle have some better examples on this?
    Below is text cut and pasted from the whitepaper.
    -----------x---------
    Figure 5: InsuranceClaim Mixes Structured Data and Text
    <?xml version="1.0"?>
    <InsuranceClaim>
    <ClaimID>12345</ClaimID>
    <LossCategory>7</LossCategory>
    <Settlements>
    <Payment>
    <Payee>Borden Real Estate</Payee>
    <Date>12-OCT-1998</Date>
    <Amount>200000</Amount>
    <Approver>JCOX</Approver>
    </Payment>
    </Settlements>
    <DamageReport>
    A massive <Cause>Fire</Cause> ravaged the building
    and
    <Casualties>12</Casualties> people were killed.
    Early
    FBI reports indicate that <Motive>arson</Motive> is
    suspected.
    </DamageReport>
    </InsuranceClaim>
    Once instances of iFS file types (including XML-based ones) are
    stored in the database, their
    content can be searched using standard SQL queries, and these
    files can be organized, browsed,
    and versioned using familiar tools like the Windows Explorer.
    So an insurance agent sees a
    directory of InsuranceClaim files sheFs recently worked on in
    the field, while an
    InsuranceClaim-processing application developer can work with
    the information in the
    InsuranceClaim in any way he needs to.
    XML-Enabled "Section Searches" in ConText
    Any XML documents or document fragments saved into "text blobs"
    in the database can be
    enabled for indexing by Oracle8i InterMediaFs ConText
    text-search engine. ConText has been
    enhanced for Oracle8i to allow developers to pinpoint their
    searches to a particular section of a
    document, where sections are implicitly defined by the XML tags
    in the document (fragment).
    Since ConText is seamlessly integrated into the database and
    the SQL language, developers can
    use SQL to perform queries that involve both structured data
    and indexed document fragments.
    For example, Figure 6 shows the SQL statement you would write
    to search one million
    Insurance Claims in your database to answer the question, "How
    much money has Jim Cox
    approved to date in settlement payments for arson-related fire
    claims? "
    Figure 6: Searching on a Column & Text in XML
    Sections
    SELECT SUM(Amount)
    FROM Claim_Header ch,
    Claim_Settlements cs,
    Claim_Settlement_Payments csp
    WHERE csp.Approver = 'JCOX'
    AND CONTAINS (DamageReport, 'Arson WITHIN Motive') >
    0
    AND CONTAINS (DamageReport, 'Fire WITHIN Cause' ) >
    0
    AND . . . /* Join Clauses */
    null

    Geoff Ingram (guest) wrote:
    : My question
    : ===========
    : exactly what steps do you need follow to take an XML doc,
    store
    : it, and query based on a tag value.
    : The 8i Intermedia text option Reference refers to
    : XLM_SECTION_GROUP feature. However, no examples are given.
    There
    : is no user guide.
    : I searched Oracle's website and found one reference to
    : XML_SECTION_GROUP. The example given is a single row insert
    into
    : a CLOB column with a single pair of tags.
    : This whitepaper gives an example of an XML doc, and a query on
    : it:
    : XML Support in Oracle8i and Beyond
    : November 9, 1998
    : It doesn't list the steps in between storing the doc and
    quering
    : it. This is crucial to the whole thing: does XML_SECTION_GROUP
    : allow all nested tags below the top level to be sectioned and
    : indexed implicitly? Or do you need to tell Oracle about all
    the
    : tags you are interested in, in which case what value is added
    by
    : the XLM_SECTION_GROUP?
    : Does Oracle have some better examples on this?
    : Below is text cut and pasted from the whitepaper.
    : -----------x---------
    : Figure 5: InsuranceClaim Mixes Structured Data and Text
    : <?xml version="1.0"?>
    : <InsuranceClaim>
    : <ClaimID>12345</ClaimID>
    : <LossCategory>7</LossCategory>
    : <Settlements>
    : <Payment>
    : <Payee>Borden Real Estate</Payee>
    : <Date>12-OCT-1998</Date>
    : <Amount>200000</Amount>
    : <Approver>JCOX</Approver>
    : </Payment>
    : </Settlements>
    : <DamageReport>
    : A massive <Cause>Fire</Cause> ravaged the building
    : and
    : <Casualties>12</Casualties> people were killed.
    : Early
    : FBI reports indicate that <Motive>arson</Motive> is
    : suspected.
    : </DamageReport>
    : </InsuranceClaim>
    : Once instances of iFS file types (including XML-based ones)
    are
    : stored in the database, their
    : content can be searched using standard SQL queries, and
    these
    : files can be organized, browsed,
    : and versioned using familiar tools like the Windows
    Explorer.
    : So an insurance agent sees a
    : directory of InsuranceClaim files sheFs recently worked on
    in
    : the field, while an
    : InsuranceClaim-processing application developer can work
    with
    : the information in the
    : InsuranceClaim in any way he needs to.
    : XML-Enabled "Section Searches" in ConText
    : Any XML documents or document fragments saved into "text
    blobs"
    : in the database can be
    : enabled for indexing by Oracle8i InterMediaFs ConText
    : text-search engine. ConText has been
    : enhanced for Oracle8i to allow developers to pinpoint their
    : searches to a particular section of a
    : document, where sections are implicitly defined by the XML
    tags
    : in the document (fragment).
    : Since ConText is seamlessly integrated into the database and
    : the SQL language, developers can
    : use SQL to perform queries that involve both structured data
    : and indexed document fragments.
    : For example, Figure 6 shows the SQL statement you would
    write
    : to search one million
    : Insurance Claims in your database to answer the
    question, "How
    : much money has Jim Cox
    : approved to date in settlement payments for arson-related
    fire
    : claims? "
    : Figure 6: Searching on a Column & Text in XML
    : Sections
    : SELECT SUM(Amount)
    : FROM Claim_Header ch,
    : Claim_Settlements cs,
    : Claim_Settlement_Payments csp
    : WHERE csp.Approver = 'JCOX'
    : AND CONTAINS (DamageReport, 'Arson WITHIN Motive') >
    : 0
    : AND CONTAINS (DamageReport, 'Fire WITHIN Cause' ) >
    : 0
    : AND . . . /* Join Clauses */
    Currently you cannot break apart an arbitrary XML doc and store
    it into the database without using XSLT to create DDL to insert
    it. You can create a schema and have XML be read and written to
    it. Check out the XML SQL Utility available here for download.
    As for the section searching, in 8.1.5 you can only get section
    searching not hierarchical searches. interMedia in this version
    doesn't understand the XML structure. This will come in 8.1.6.
    Oracle XML Team
    http://technet.oracle.com
    Oracle Technology Network
    null

  • Storing Documents (Word, .PDF, etc) & Searching Across & Within

    Can any one direct me to a document or resource that describes
    how configure document storage (Word, .PDFs, etc.) and searching
    capabilities across the indexing - meta data, and/or within the
    documents for key words or phrases. Any feedback is greatly
    appreciated. We have a database that stores several medical
    documents in different formats and we want to provide the
    doctors and nurses that ability to key word search above and
    within these documents for different subjects they are
    interested in. This is obviously possible, just look at the
    searching technique on this site (technet, intermedia, etc.).
    If you have any other suggestions for these requirements they
    would also be greatly appretiated. Thank you very much.

    Can any one direct me to a document or resource that describes
    how configure document storage (Word, .PDFs, etc.) and searching
    capabilities across the indexing - meta data, and/or within the
    documents for key words or phrases. Any feedback is greatly
    appreciated. We have a database that stores several medical
    documents in different formats and we want to provide the
    doctors and nurses that ability to key word search above and
    within these documents for different subjects they are
    interested in. This is obviously possible, just look at the
    searching technique on this site (technet, intermedia, etc.).
    If you have any other suggestions for these requirements they
    would also be greatly appretiated. Thank you very much. Look at the online documentation:
    technet.oracle.com -> products -> Oracle Text
    Start reading with 8.1.5.
    Regards,
    Thomas

  • Oracle9i 인스톨후의 interMedia 를 이용한 SQL...(xpath.extract)

    * 질문한 사람 : atopos
    * 질문 등록일 : 2001-10-13 18:43:39
    * 조회 : 46904
    * 답변 : 3건 (Rainman1, atopos)
    -- 질문 내용 --
    안녕하세요 ^^
    Oracle9iAS를 인스톨했습니다.
    그리고 다음과 같은 테이블을 만들고,
    interMedia 를 이용해서 index를 만들고 SQL문을 실행하면 되는데..
    SELECT 절에 xpath를 사용하면 Oracle8i 에서와 같이 에러가 발생합니다. ^^;;;
    이것때문에 Oralce 9i를 인스톨했는데...
    테이블을 다음과 같이 만들었습니다.
    ..... xml_documents .....................
    DOCNAME NOT NULL VARCHAR2(200)
    XMLDOC CLOB
    TIMESTAMP DATE
    위와 같이 테이블이 구성되어 있는 경우
    SQL> select docname, xpath.extract(xmldoc, '//Alien') as title
    2 from xml_documents
    3 where contains(xmldoc, 'Alien within Title') > 0;
    select docname, xpath.extract(xmldoc, '//Alien') as title
    ERROR at line 1:
    ORA-00904: invalid column name
    갑자기 너무 난감해지네요. ^^;;;
    SELECT docname
    FROM xml_documents
    WHERE CONTAINS(xmldoc, 'Alien') >0 과 같은 SQL 문은 실행됩니다.
    어떻게 해야 할까요....
    -- 답변 내용 --
    1. Rainman1 님의 답변
    intermedia를 사용하시는게 아니라,
    9i를 install하셨으니 sys.XMLType을 이용하시는 겁니다.
    예를들어보이면..
    1) 테이블 생성(xml doc의 데이타 타입은 sys.xmltype)
    create table sample ( .... xmldoc sys.xmltype);
    2) xml document insert
    insert into sample values (.. sys.xmltype.createxml('<?xml ver..') );
    3) select xmldoc.getclobval() from sample;
    rownum 1 - xmldoc컬럼 첫째 로우에 들어있는 xml document
    rownum 2 - xmldoc컬럼 둘째 로우에 들어있는 xml document
    4) xpath로 해당 데이터를 찾아오기
    select xmldoc.extract('/rowset/row/col1').getclobval() from sample
    추가로, xmldoc형태로 저장하는 부분은 가급적이면 피해야 하기 때문에,
    일정형식을 취하는 형태라면 flat하게 매 컬럼을 쪼개서
    멀티테이블에 저장하는 형태가 아무래도 좋을 듯이 보여집니다.
    또 다르게, Node table을 만들고 이에 대한 Nodelist를 가지는 table을
    만들어서 검색하는 형태도 괜찮습니다.
    현재의 xml 추세가 그렇지만, 구분되어 있는 xml관련 util을
    모두 데이터베이스로 stored package, procedure 형태로 넣고 있답니다.
    xsu for java가 아니라 xml for pl/sql을 기본으로 add on시키고,
    사용자는 xml을 쓰는지 모르는지 모르게 DB를 이용하게 하는 형태로 가는거죠.
    Oracle, MS-SQL, DB2가 그렇게 가고 있고,
    Sybase만 아직은 별개로 java util로 지원하지만,
    조만간 DB통합할 것으로 생각됩니다.
    RDB측면에서는 이게 당연하고, 성능도 잘 나오긴 하겠지만,
    반드시 옳다고 생각되지는 않습니다. 아무래도 rdb위에 얹은 xml에 대한
    모델링에 대해 적합한 지침과 같은 부분이 각 밴더마다 있어야 하지 않을지..
    Co. Dasan tech.
    DB연구팀 권용훈
    e-mail : [email protected]
    2. atopos 님의 답변
    otn.oracle.com 에서 Oracle9i의 XMLtype에 대한 document를 읽으면서
    성급하게 질문을 올렸구나 생각했습니다. ^^;;;
    아직 document를 읽어보면서 실행해보고 테스트 중이지만
    제가 필요한 기능들을 찾아볼수 있을것 같습니다. ^^
    Rainman1(권용훈님) 의견 고맙습니다. ^________^
    xsu for java, xml for pl/sql 에 대해서는 맛보기만 한 상태라
    아직 잘 모르는 상태입니다.
    그리고 궁금한 점이 또~ 있습니다.
    이건 XML과 관련있는 것은 아닌데 (다른 포럼에도 올리긴 했지만요.)...
    resin servlet engine 을 설치하여 사용하려고 하는데
    resin을 start한 후 http://localhost:8080/ 을 실행하면
    resin 의 servlet engine 이 실행되는 것이 아니라
    Oracle servlet engine 이 실행됩니다.
    어떤 서비스를 중지시켜야 하는지 잘 모르겠습니다.
    OralcleOraHome90Agent 를 중지시켜도 그대로구요.
    현재 실행중인 서비스는 OracleOraHome90TNSListener와
    OracleServiceORA90 입니다.
    혹... Oracle9i 에서는 servlet engine을 Oracle servlet engine을
    사용해야 하는 건가요?
    다른 엔진은 사용할수 없는건지...
    Oracle 8i 에서는 resin 을 사용했었는데 Oracle9i 로 가니
    잘 모르겠네요. ^^;;;

  • InterMedia Section Searching

    I am thinking about inserting my XML document content into a
    database column and use interMedia's "Section Searching"
    capability to search author name, or headline etc.
    My DTD is an external DTD, and it is very complicate.
    On page 8 of your interMedia whitepaper at the following
    location:
    http://technet.oracle.com/products/intermedia/pdf/text_twp.pdf
    Under XML Support, the white paper says custom attributes must
    be specified in a in-line DTD. I am not clear on what your
    definition of "custon attributes" is. In the snippet below,
    <article pubdate=99.08.06 issue=12>...</article>,
    pubdate and issue are attributes, article is an element.
    Attributes are name/value paris that describe elements. Elements
    are defined by a bracket by a begin and end tags.
    Please clarify if my assumption below is correct:
    When I use external DTD, then
    (1) I can section search on element text. For example, search
    for all articles that contain the word 'wireless'.
    (2) I cannot section search on element's attributes, such as
    searching for all articles whose issue equals 12.
    Thanks.
    null

    Mei-Ching Tzeng (guest) wrote:
    : When will the release 2 of Oracle 8i be in Beta?
    : Thanks.
    : Mei-Ching
    : Mei-Ching Tzeng (guest) wrote:
    : : Oracle XML Team wrote:
    : : : Mei-Ching Tzeng (guest) wrote:
    : : : : I am thinking about inserting my XML document content
    into
    : a
    : : : : database column and use interMedia's "Section Searching"
    : : : : capability to search author name, or headline etc.
    : : : : My DTD is an external DTD, and it is very complicate.
    : : : : On page 8 of your interMedia whitepaper at the following
    : : : : location:
    http://technet.oracle.com/products/intermedia/pdf/text_twp.pdf
    : : : : Under XML Support, the white paper says custom
    attributes
    : : must
    : : : : be specified in a in-line DTD. I am not clear on what
    your
    : : : : definition of "custon attributes" is. In the snippet
    : below,
    : : : : <article pubdate=99.08.06 issue=12>...</article>,
    : : : : pubdate and issue are attributes, article is an element.
    : : : : Attributes are name/value paris that describe elements.
    : : : Elements
    : : : : are defined by a bracket by a begin and end tags.
    : : : : Please clarify if my assumption below is correct:
    : : : : When I use external DTD, then
    : : : : (1) I can section search on element text. For example,
    : : : search
    : : : : for all articles that contain the word 'wireless'.
    : : : : (2) I cannot section search on element's attributes,
    : such
    : : as
    : : : : searching for all articles whose issue equals 12.
    : : : : Thanks.
    : : : The current release of 8i, 8.1.5, does not permit
    attribute
    : : : searches because interMedia has no concept of attribute in
    : the
    : : : XML sense. It can find data words within tags which we
    : define
    : : : as section searching however it does not understand the
    : : : hierarchy of an XML doc in this release and therefore
    cannot
    : : : support conditional searches based on hierarchical
    position.
    : : : This support is in Release 2 of 8i.
    : : : Oracle XML Team
    : : : http://technet.oracle.com
    : : : Oracle Technology Network
    There is no beta cycle for Release 2 of 8i since it is simply
    the first maintenance release of 8i which has been announced for
    the end of the year.
    Oracle XML Team
    http://technet.oracle.com
    Oracle Technology Network
    null

Maybe you are looking for

  • LYNC update not showing up in WSUS Console.

    I want to update my Lync Clients to latest patch via WSUS3. Selected Lync 2010 for sync.but it doesnt show up in WSUS Console. Tried removing filters also. Pls. help Abhijeet Kasurde KPIT Cummins Infosystems Ltd.

  • Script Logic: How to test the sign of data

    Hi Forum, I'm looking for a function to test if the amount of an account is positive or negative. This test is necessary to choose the target account where transfer the amount. In MS version there is the TEST_WHEN function, but doesn't work in NW (no

  • I cannot mount my digital camera

    So I have very old and crappy digital camera HP Photosmart 433. I use it for reading memory cards on my pc. So I plug the usb cable.. Oct 10 20:24:41 marduk usbcore: registered new interface driver usb-storage Oct 10 20:24:41 marduk USB Mass Storage

  • Oracle Service Bus - Business Service - SSL Configuration

    Hi, I'm trying to configure a Business Service to use Client Certificate Authentication (to communicate via HTTPS) but I'm getting the following error when I try to run the BS: "The invocation resulted in an error: No SSL certificates present.". I ha

  • DOBTS ON ALV

    what is the use of BELOW MENTIONED Function module IN ALV : REUSE_ALV_EVENT_GET REUSE_ALV_COMMENTRY_WRITE AND CAN U TELL ME THE BENIFITS(ADVANTAGES)  AND DIFFERENCE OF CREATING A REPORT USING  NORMAL AVL AND OBJECT ORIIENTED ALV(WITH OOPS CONCEPT)