InterMedia 9i... enabling Multi-Language Table support
Date: Fri, 11 Oct 2002 10:53:06 +0200
Message-ID: <ao63i7$jks8l$1_at_ID-114658.news.dfncis.de>
Hello all,
I want to create several text CONTEXT indexes in a Multi-Language table using the MULTI_LEXER preference, but to achive this I need a language column for InterMedia to match the different language rows. The problem is that what I actually have is a language_id which points to a master language table containing language codes not in ISO 639-2 (because my boss want it to be like that ;-( ) so I almost don't have a way out but to create a "Calculated Field" in my Multi-Language detail table to generate a virtual column with the ISO 639-2 language code corresponding to the language_id.
q1 - How do I create Calculated/Computed Fields with Oracle?
q2 - Is there an alternative way to specify row language appart of having
a language column?
q3 - If I convinced my boss to make the language table ISO 639-2 then
how could I enable the MULTI_LEXER Multi-Language making an join
of both tables? a View?
The way I found in the documentation:
create table globaldoc (
doc_id number primary key,
lang varchar2(3),
text clob
);
begin
ctx_ddl.create_preference('english_lexer','basic_lexer');
ctx_ddl.set_attribute('english_lexer','index_themes','yes'); ctx_ddl.set_attribute('english_lexer','theme_language','english'); ctx_ddl.create_preference('german_lexer','basic_lexer'); ctx_ddl.set_attribute('german_lexer','composite','german'); ctx_ddl.set_attribute('german_lexer','mixed_case','yes'); ctx_ddl.set_attribute('german_lexer','alternate_spelling','german'); ctx_ddl.create_preference('japanese_lexer','japanese_vgram_lexer');
ctx_ddl.create_preference('global_lexer', 'multi_lexer'); ctx_ddl.add_sub_lexer('global_lexer','default','english_lexer'); DDL.ADD_SUB_LEXER procedure. Also assume that the language column is
- expressed in the standard ISO 639-2 language codes, so add
- those as alternate values.
ctx_ddl.add_sub_lexer('global_lexer','german','german_lexer','ger');
ctx_ddl.add_sub_lexer('global_lexer','japanese','japanese_lexer','jpn');
end;
- Now create the index globalx, specifying the multi-lexer preference and the
- language column in the parameter clause as follows: create index globalx on globaldoc(text) indextype is ctxsys.context parameters ('lexer global_lexer language column lang') /
TIA,
Best Regards,
Giovanni
Received on Fri Oct 11 2002 - 10:53:06 CEST