发明内容
针对上述提到的现有技术中手持学习终端仅能在单本辞典压缩库中搜索单个单词或词组,适用范围窄,且无法搜索理科公式的缺点,本发明在现有手持学习终端上提供一种联合搜索的实现方法,有效解决了上述问题。
本发明解决其技术问题采用的技术方案是:一种在手持学习终端上实现的联合搜索的方法,其特征是:
A、所述的手持学习终端上提供用于试题搜索、书籍搜索、百科资料搜索、多语种词条搜索、句子搜索的输入装置,所述输入装置分别与手持学习终端的数据输入端连接;
B、在所述手持学习终端的存储器中分别存储有可通过网络或其它存储介质更新的试题库、书籍库、百科资料库、各个语种独立的词典库、句子库各个相对独立的经过压缩的数据库;
C、在所述的手持学习终端的存储器中分别存储有多个语种的标准对照库,所有的标准对照库均遵从“前面若干部分内容及顺序都相同的词条以相邻的地址按顺序排序”的排序规则;
D、根据需要选择待搜索的数据库,设置搜索范围;
E、在输入区输入要搜索的内容;
F、微处理器识别输入的内容,并对所有输入内容进行关键字的分词处理;
G、微处理器在选择的数据库内搜索与关键词内容和顺序完全匹配或部分匹配的内容;
H、如果搜索到与输入的关键词相匹配的内容,则微处理器驱动显示装置显示相关的内容,并高亮显示与关键词若干内容相匹配的搜索结果;
I、选择并查看匹配成功的内容。
本发明解决其技术问题采用的技术方案进一步还包括:
所述的数据库中文本类型内容采用通用的Huffman压缩算法或<前缀长度,后缀>的压缩算法压缩后保存在手持学习终端的存储器内,其中前缀长度采用数值表示。
所述的数据库中数字类型内容采用通用的Huffman或<数值,数值标识>的压缩算法压缩后保存在手持学习终端的存储器内,数值采用原值或差值来表示,数值标识用来区分数值的种类,即数值为差值还是原值。
所述的数据库中含有理科公式的,公式按照国际标准的MathML数学标记语言以文本和数字结合的形式存储在手持学习终端的存储器内。
所述的数据库压缩包对应着唯一的可识别的包号(即包ID号),其中试题包中包含试题内容、与试题关联的知识点对应的用于用户学习的各类学习课件、根据试题内容建立的索引文件;其它数据库包中包含搜索内容、根据内容建立的索引文件。
所述的各类数据库可分别建立供搜索的索引文件,
A、其中试题库、书籍库、百科资料数据库的索引文件包括<词典文件,频率文件,位置文件,Field域库>,
a、其中词典文件包括<关键词,指向频率文件的指针,指向位置文件的指针>;
b、其中Field域库用于表达文章与其属性的关联关系,其属性包括文章号、试题号QID、句子号、文章标题、指向文章内容的地址、认知分类、难易程度、答案、解析、同类试题中的一项或多项;
B、其中句子库的索引文件包括<词典文件,频率文件,位置文件>,其中词典文件包括<关键词,指向频率文件的指针,指向位置文件的指针>;
C、其中多个语种的词典库中每本词典的索引文件都包括<关键词,指向关键词属性的指针,指向所属词典中所属释义的指针>。
对所述的输入内容进行关键字分词处理,
A、输入的关键字为英文的,用空格作为分词标记;
B、输入的关键字为中文的,先以前两个字(即将第一字和第二个字组合后)作为第一个预关键词,在“中文标准对照库”内搜索与之匹配的词条,如果搜索到与之内容和顺序完全匹配的词条,则在其后加入第三个字在“中文标准对照库”内再次匹配内容和顺序,如果匹配成功,则继续加入其后的字进行循环匹配直到匹配最大化构成关键词组,如果匹配不成功,则将前两个字作为一个关键词进行分隔标记,再将第三个字加入其后的一个字后循环匹配直到匹配最大化构成关键词组;如果没有搜索到与前两个字(即第一个字和第二个字组合后)的内容和顺序完全匹配的词条,则在第一个字后作出分隔标记将其作为一个关键词,再将第二个字加上其后的一个字在“中文标准对照库”内搜索与之匹配的词条,如果加上后在“中文标准对照库”内能找到内容和顺序均匹配的词条,则再加入其后的第三个字进行循环匹配直到匹配最大化构成关键词组,如果加上后词条不构成关键词,则采用上一次匹配成功的词条作为关键词,后面一个字则作为后面词条的开始,依此方法将所有中文输入内容进行分词;
C、输入的关键字为文本和数字类型的理科公式的,按公式输入的顺序进行非跳跃性的最小化单元或包含若干个最小化单元组合的方法进行分词;
D、输入内容为其它语种的文本:遵从以空格为分隔标记或与相关语种的标准对照库中关键字相匹配取最大化词条的规则。
对输入内容进行分词后,则在手持学习终端上进行:
A、将分词后的的关键词中大写字母全部改为小写,并作出相应的标记;
B、将动词的过去式、过去分词、现在进行时、第三人称单数形式还原为动词原形;将名词复数形式全部还原为原形;
C、滤除没有实际意义的关键词和标点符号。
搜索的结果经微处理器对显示的内容进行优先级排序后显示:
A、试题搜索、句子搜索:经分词后相邻的关键词在数据库的文章中位置也相邻的,则此文章优先显示;否则,关键词出现频率高的文章优先显示;否则,第一个关键词在数据库文章中出现的位置靠前的文章优先显示;
B、书籍搜索:关键词内容和顺序均与数据库中文章标题完全匹配的优先显示,否则,关键词的内容均顺序包含于文章标题中的优先显示,否则,按照A中所述方法优先显示;
C、百科资料搜索:数据库中文章标题与关键词的内容和顺序均完全匹配的文章优先显示;否则,关键词的内容均顺序包含于文章标题中的优先显示,否则,按照A中所述方法优先显示。
显示结果为文本和数字时,将匹配成功的内容直接显示在显示装置上,并将关键词高亮显示;显示结果包含公式时,数据库中将用MathML数学标记语言表示的文本和数字类型的公式反向解析成对应的图片,并将该公式对应的图片显示在显示装置上。
针对试题库压缩包建立相应的“错题集数据库文件”,用来记录用户解错的试题;针对所有的数据库压缩包建立相应的“收藏夹数据库文件”,用来记录有收藏意义的内容,所述的“错题集数据库文件”和“收藏夹数据库文件”两者的数据存储结构相同,均包含:包ID号、试题QID号、试题包名称、收藏日期,其中试题包名称中包含了其保存路径。
对搜索显示的结果进行任意词的选择即屏幕取词后,可启动多语种词条搜索功能查看所取词的包括中、英文在内的多个语种相对应的释义。
本发明的有益效果是:本专利技术是全球首次将PC的搜索引擎技术应用到个人手持设备嵌入式领域,并在此基础上将垂直搜索技术引入到传统的教育领域,厂家将各行各业各领域的信息资料进行收集、并将其分类加工成多种数据库压缩包;用户根据需要选取相应的数据库信息压缩包到手持设备后,可随时、随地从数据库压缩包中搜索满足条件的内容。这种在特定的领域内垂直搜索信息的方法,提高了搜索的准确性、专业性、全面性,一方面为用户节省了大量的信息排查时间;同时按照国际标准MathML数学标记语言将理科公式表示成文本和数字类型的内容后,能够对公式进行分词处理,使得包含理科公式的试题能够随意搜索;另一方面搜学相结合的方法使用户形成集“预习、学习、练习、复习、测试”于一体的系统的学习方法;同时通过与厂家数据库包的交互,保证了数据的更新性;另外,本专利是全球首次将PC搜索引擎技术应用到个人手持设备的技术,为用户提供更便利、更便携的专业服务。
下面将结合附图和具体实施方式对本发明做进一步说明。
具体实施方式
本实施例为本发明优选实施方式,其它凡其原理和基本实现方法与本实施例相同或近似的,均在本发明保护范围之内。
本发明新开发了一种在教育领域内应用垂直搜索方法在个人手持学习终端上实现的搜索技术,包括试题搜索、书籍搜索、百科资料搜索、多语种词条搜索、句子搜索五个搜索部分。主要面向学生用户,全面覆盖现行的中小学生的语、数、英、物、化、生、地、历、政等九门课程及大学各专业;而百科资料搜索的范围更为广泛!用户通过互联网络或其它存储介质等载体将包含海量信息的各种类型的数据库压缩包下载到个人手持学习终端上作为搜索的目标库(并可通过此种方式将个人手持学习终端上的数据库包更新),然后在个人手持学习终端上输入搜索条件,再分别通过输入设备一键启动上述相应的搜索引擎,得到满足条件的信息。
带有联合搜索功能的手持学习终端,其采用现有技术中的内部控制电路,在手持学习终端外侧分别设有如图1中的试题搜索按钮3,书籍搜索按钮4,百科资料搜索按钮5,多语种词条搜索按钮6,句子搜索按钮7等输入装置,可通过各个功能按钮一键启动相应数据库的搜索引擎。
本发明中的手持学习终端的存储器内存储有经过压缩的可更新的试题库、书籍库、百科资料库、各个语种的词典库、句子库及各种标准对照库等各个相互独立的数据库。各个数据库在PC机上经过加工处理后存储在手持学习终端的存储器中。
本发明实现的过程分为下述两个相互独立而又关联的部分:
1、PC机上建立原始数据库、与各个语种相关的标准对照库,及对所有库的加工处理过程,主要包含如下两方面:
(1)、建立与各个语种相关的标准对照库原始库文件,包括词条、标点、无意义词等标准对照库文件(如“英文标准对照库”、“英文动词时态标准对照库”、“英文名词单复数标准对照库”、“中文标准对照库”、“数字标准对照库”、与其它语种相关的标准对照库),并对其进行排序、压缩形成相关的目标标准对照库文件的过程;
(2)、参看附图7,针对包含各种语种的文本、图片、图像、动漫、声音、音乐和/或用国际标准数学标记语言MathML所表示的理科公式的内容建立原始数据库文件,并对原始数据库文件进行下列处理后形成一个索引文件;分词;滤除无意义词和标点符号;将所有大写字母转换为小写;将动词的过去式、过去分词、现在进行时、第三人称单数还原为原形;将名词的复数形式还原为单数原形;排序;倒排;索引。再将原始数据库内容及上述形成的索引文件进行压缩后形成一个包含“原始库文件内容”、“根据原始库文件内容建立的索引文件”的目标数据库压缩包,其中目标试题库压缩包还包括“与试题内容关联的知识点对应的各类用于用户学习的学习课件”。
2、手持学习终端启动搜索引擎对目标数据库压缩包的解析、调用、显示等处理过程。
(一)、下面结合实例说明PC机对相关标准对照库及原始数据库的加工处理过程:
1、各类标准对照库及根据原始数据库建立的索引文件中的关键词进行排序处理:
(1)、英文的排序:按照英文字母对应的ASCII码进行相应的关键词条的相关排序,每一个词条对应一个相应的内码地址,由此可知,前面若干部分内容及顺序都相同的词条会以相邻的地址按顺序排序;经排序后的关键词条库如下表所示:
排序后的关键词条库 |
a |
able |
ablove |
about |
…… |
d |
dad |
day |
…… |
(2)、中文的排序:按照国标内码对词条进行排序,每一个词条对应一个相应的内码地址,前面若干部分内容及顺序都相同的词条会以相邻的地址按照顺序排序,如下表所示:
排序后的关键词条库 |
安 |
安份 |
安份守己 |
安份守己的人 |
…… |
(3)、其它语种的关键词排序处理:按照国际标准Unicode内码从小到大的排序规则。
2、PC机对原始数据库倒排、建立索引文件、手持学习终端对数据库的相关解析
(1)、针对“试题库、百科资料库、句子库、书籍库”的原始数据库进行倒排:
A.倒排过程:将“文章号”与“其包含的所有关键词”之间一对多的关系倒排为“文章中包含的所有关键词”与“关键词所属的文章号”之间多对一的关系:
a、其中,一道试题即一篇文章,故试题库中的试题号(QID号)即“文章号”;
b、其中,一个句子即一篇文章,故句子库中的句子号即“文章号”;
B.倒排结构:由上述A可知,倒排结构由“关键字”、“关键词对应的文章号”所组成。
(2)、针对所有的原始数据库建立索引文件:
A、针对“各个语种的词典库”建立索引文件,其中每本词典的索引结构为:<关键词,指向关键词属性的指针,指向所属词典中所属释义的指针>;其中关键词属性包括:例证、用法、习语、句型、派生、学习、分类、年级等;其中所属词典中所属释义的指针包括:该关键词在所属的每本词典中对应的各个释义的指针;
B、针对“试题库、百科资料库、句子库、书籍库”的原始库内容对应的所有关键词进行分词、滤除无意义词和标点符号、将所有大写字母转换为小写、将动词的各种时态包括过去式、过去分词、现在进行时、第三人称单数还原为原形、将名词的复数形式还原为单数原形、排序、倒排后建立索引文件。
a、索引文件的结构如下:
a)、其中“各个语种的词典库”中每本词典的索引文件结构如下表所示:
关键词 |
指向关键词属性的指针 |
指向所属词典中所属释义的指针 |
b)、其中“试题库、百科资料库、书籍库”的索引文件结构如下表所示:
词典文件 |
频率文件 |
位置文件 |
Field域库 |
关键词 |
指向频率文件的指针 |
指向位置文件的指针 |
c)、其中“句子库”的索引文件结构如下表所示:
词典文件 |
频率文件 |
位置文件 |
关键词 |
指向频率文件的指针 |
指向位置文件的指针 |
b、上述索引结构的解释:
a)、词典文件:
关键词:即原始数据库中所有内容经分词、滤除无意义词及标点符号、统一大小写、将动词的各种时态还原为原形,将名词的复数形式还原为单数原形后的关键词;
指向频率文件的指针:关键词指向所属频率文件的指针;
指向位置文件的指针:关键词指向所属位置文件的指针;
b)、频率文件:关键词在原始数据库所属的文章中出现的所有次数;
c)、位置文件:关键词在原始数据库所属的文章中出现的字节位置;
d)、Field域库:用于表达文章与其属性的关联关系,其属性包含文章号、文章标题、指向文章内容的地址、试题对应的知识点认知分类、试题的难易程度、试题答案、试题解析、同类试题中的一项或多项,由此可见,一个关键词对应着一个或多个Field域库,文章号与标题Field域库的对应关系如下表所示:
e)、由Field域库所引出的关联关系及益处如下:
一道试题即为一篇文章,故试题号(QID号)即为文章号;试题的标题即文章标题即为其对应的知识点名称,由于一道试题对应一个或多个知识点,故一道试题可能有一个或多个文章标题,即试题库中文章号与知识点名称或者说是文章标题域存在一对一或一对多的关系;
由于一道试题对应着一个或多个知识点,而一个知识点对应着一个或多个学习课件,从而可知一道试题亦对应着一个或多个学习课件。
C、建立了上述索引结构后,则显然可以看出各个数据库的结构组成如下所述:
a、“各个语种的词典库”中每本词典的结构组成如下表所示:
索引文件 |
关键词 |
指向关键词属性的指针 |
指向所属词典中所属释义的指针 |
一本词典库的所有内容 |
a)、其中索引文件包括“关键词、指向关键词属性的指针、指向所属词典中所属释义的指针”;
b)、其中“一本词典库的所有内容”包括该本词典的“词条、释义、发音音源”等等。
b、“试题库”由“根据试题内容建立的索引文件”、“试题内容”、“学习课件”三个部分所组成,其结构组成关系如下表所示:
索引文件 |
词典文件 |
关键词 |
指向频率文件的指针 |
指向位置文件的指针 |
频率文件 |
位置文件 |
Field域库 |
试题内容 |
学习课件 |
a)、其中索引文件由“词典文件、频率文件、位置文件、Field域库”所组成,其中“词典文件”由“关键词、指向频率文件的指针、指向位置文件的指针”;其中Field域库用于表达试题与其属性的关联关系,其属性包含试题号即QID号、文章标题、指向试题内容的地址、认知分类、难易程度、答案、解析、同类试题等;
b)、其中试题内容由包括各语种的文本、数字、图片、图像、动漫、声音、音乐、MathML国际数学标记语言所表示的理科公式;
c)、其中学习课件包括“各语种的文本、数字、图片、图像、动漫、声音、音乐、MathML国际数学标记语言所表示的理科公式”所组成的多媒体学习课件。
c、其中“百科资料库、书籍库”的结构组成如下表所示:
索引文件 |
词典文件 |
关键词 |
指向频率文件的指针 |
指向位置文件的指针 |
频率文件 |
位置文件 |
Field域库 |
数据库原始内容 |
a)、其中索引文件包括“词典文件、频率文件、位置文件、Field域库”;
b)、其中“数据库原始内容”由“百科资料库、书籍库”建库时的原始内容所组成;
d、其中“句子库”的组成结构如下表所示:
索引文件 |
词典文件 |
关键词 |
指向频率文件的指针 |
指向位置文件的指针 |
频率文件 |
位置文件 |
数据库原始内容 |
a)、其中索引文件由“词典文件、频率文件、位置文件”所组成;
b)、其中数据库原始内容由“句子库”建库时的原始内容所组成
D、手持学习终端启动搜索引擎,与各个数据库中关键词匹配的过程:
a、将输入的关键词与索引文件中的关键词进行内容和顺序的匹配;
b、“试题库、百科资料库、书籍库、句子库”根据索引文件中匹配成功的关键词对应的指向频率文件的指针和指向位置文件的指针找到对应的频率文件和位置文件;“各个语种的词典库”根据索引文件中匹配成功的关键词对应的指向所属词典中所属释义的指针找到该本词典中该词对应的释义、通过指向关键词属性的指针找到该词对应的所有属性;
c、“试题库、百科资料库、书籍库、句子库”根据频率文件和位置文件找到数据库原始内容中关键词所属的所有文章和在所属文章中的所有位置;
E、上述“试题库、百科资料库、书籍库、句子库”的索引结构用一个二维结构图举例说明如下:
|
文章A |
文章B |
文章C |
文章D |
关键词1(中华) |
|
3(P1,P2,P3) |
|
1(P1) |
关键词2(人民) |
3(P1,P2,P3) |
2(P1,P2) |
|
2(P1,P2) |
关键词3(共和国) |
1(P1) |
2(P1,P2) |
3(P1,P2,P3) |
2(P1,P2) |
a、第一列即内容为“关键词1-3”表示的是词典文件,而“文章A”、“文章B”、“文章C”、“文章D”所在列则表示频率文件和位置文件,频率文件用数字表示(如上表中的数字3、1、2),指所在行的关键词在所在列的文章中出现的频率次数;位置文件用数字表示(如上表中<P*>,其中*为1-3),指所在行的关键词在所在列的文章中出现的位置,也即是关键词字符在所属试题中的位置,用字节数来表示;
b、针对上表中的频率文件及位置文件可以分析出,关键词与所属的所有文章号的对应关系如下:
关键词 |
对应的文章号 |
关键词1(中华) |
B、D |
关键词2(人民) |
A、B、D |
关键词3(共和国) |
A、B、C、D |
F、确立索引结构、建立索引文件的益处在于:
a、在各个独立的数据库压缩包中建立索引文件牺牲了手持学习终端的存储空间,但输入的关键词只需与索引文件中的关键词匹配即可,避免了搜索引擎将输入关键词与整个数据库压缩包中的海量信息进行字符串的顺序匹配,从而节省了手持学习终端的处理时间,进而节省用户的等待时间,提高了效率;
b、举例而言:假设要查询单词“good”,搜索引擎先对索引文件中的关键词用二分法查找、找到匹配的该词,读出所属的所有文章号,再由频率文件和位置文件或指向所属词典中所属释义的指针或指向关键词属性的指针确定所有的搜索结果。“索引文件”通常非常小,因而,整个过程的时间是毫秒级的,而如果是用普通的顺序匹配算法,不建索引,而是对整个数据库压缩包内所有文章的内容进行字符串匹配,这个过程将会相当缓慢,当数据库压缩包信息量很大时,时间往往是无法忍受的。
c、在任何数据库的搜索结果显示界面选择任意词即屏幕取词后,可启动多语种词条搜索功能查看所取词的包括中、英文在内的多个语种相对应的释义。
d、便于用户收藏具有收藏价值的文章或做错题的试题,形成针对各个数据库的“我的收藏夹数据库文件”和/或“错题集数据库文件”,方便用户下次快速找到该文章,其中“我的收藏夹数据库文件”与“错题集数据库文件”两者的数据结构相同,均包含:所属数据库包的ID号、文章号、数据库包名称、收藏日期,其中数据库包名称中包含了该文章的保存路径。
3、各类标准对照库及包含索引文件和数据库原始内容在内的各个原始数据库的压缩、手持学习终端对其相关解压处理:
(1)、压缩方法至少有如下三种:
A、第一种是针对所有语种的文本或数字所采用的通用的Huffman压缩方法;
B、第二种是针对所有语种的文本所采用的<前缀长度,后缀>的压缩方法
a、其中前缀长度用数字表示,使当前词条与其上一条相邻的词条相关联,后缀则为相关语种的文本如字母或中文或其它语种的字符;
b、解压还原时手持学习机微处理器先找到当前词条上一相邻地址的词条,再将上述相邻词条按照从左至右的顺序取前缀长度所表示数值个数的字母或中文或其它语种的字符,依次逆序回找到前缀长度正确表示的所有字母或中文或其它语种的字符,最后将回找到的所有对象与后缀相组合则完成对词条的解压过程。
c、英文的压缩及解压过程举例如下所示
如“about”用此方法表示为<3,ut>,“day”表示为<2,y>,解压还原“about”及“day”的过程如下表所示:取<3,ut>上一词条即<2,ove>从左至右的前三个字母即为2,o,其中的数字2表示词条<2,ove>中的前缀,即还需要对<2,ove>进行解压得到其原形,而结合词条<2,ove>的前三个字母与<3,ut>的后缀“ut”,此时about解压还原为2,out,再按此法还原2为ab,则此时about还原完全;同理,“day”经过一次还原后亦得到正确的还原结果。
d、中文的压缩及解压过程举例如下所示:
如“安份守己的人”用此方法表示为<4,的人>,还原“安份守己的人”的过程如下表所示(同英文的解压还原方法一致)。
e、其它语种的压缩及解压均遵从上述英文或中文的压缩、解压方法;
C、第三种是针对数字所采用的<数值,数值标识>的压缩方法:
a、其中的数值以原值或当前值与上一个值的差值来表示,数值标识用以表示数值的种类是原值还是差值,如用0代表原值、1代表其为差值。
b、数值用原值表示可防止手持学习终端解压时间过长从而使得用户等待的时间过长,故在某部分位置直接保存数字即原值,而不保存其与前一个数字的差值,故保存为原值时,不需要解压还原,从而节省时间,达到时间、空间的合理均衡。
c、差值的表示方法可以减小数字的长度,进而减少保存该数字需要的字节数。例如当前文章号是16390,不压缩时要用3个字节保存,上一试题号是16383,压缩后保存与16390的差值即7,则只用一个字节即可保存,第三个文章号如果是16391,则压缩后保存为1(即16391与16390的差值),从而达到节省空间的目的;
d、差值的解压还原过程类似于上述英文和中文的<前缀长度,后缀>的向上相邻地址进行逆序顺次回找累加法。下面举例说明差值压缩的存储方法及手持学习终端对其的解压过程:
a)、下表是一组原值的数字采用<数值,数值标识>压缩前后的对比:
b)、上表中,“压缩后”所在的列包含<数值,数值标识>,其中第一列数字代表原值或差值(如1、2、60、70、80、81),第二列包含0、1的数字即为数值标识,其中0表示原值,1表示差值。
c)、数值“70”经过一次还原即得到其原值,其还原过程如下表所示:
d)、数值“80”经过两次还原即得到其原值,其还原过程如下表所示:
(2)、利用上述各压缩方法对各原始数据库进行压缩的益处在于:
A、缩小了各原始数据库的容量,从而节省了手持学习终端的存储空间;
B、使得手持学习终端在CPU的处理速度和存储空间之间取得平衡。
4、至此,PC机上对各原始数据库的处理过程完毕。
(二)、下面结合实例及附图说明手持学习终端启动搜索引擎对各目标数据库压缩包的解析、调用、显示等处理过程:
1、参看附图4、附图5,在手持学习终端上输入所有的关键词,包括中文、英文等各语种的文本内容的输入、启动公式编辑器输入的采用MathML表示的文本和数字类型的理科公式,之后启动搜索引擎:
(1)、公式的输入:
A、用户启动某个公式编辑器,并按规则输入数据,手持学习终端根据每个特殊符号或公式框架对应的唯一编号及特定的、通用的MathML解析格式生成对应的MathML标记;
B、公式编辑器将生成的MathML标记将其反向解析,生成该标记对应的图片并展现给用户;
C、用户启动其它公式编辑器按规则输入其它的公式直至所有公式输入完成,对应于公式的MathML标记生成的图片全部展现给用户;
D、组合整个公式的MathML标记,对应输出用于表达所有公式内容的MathML文本和经反向解析后的完整图片,则公式的编辑完成;
(2)、输入普通文本:利用相关的输入法输入普通文本。
(3)、理科公式采用MathML数学标记语言表示成文本和数字类型的的示例如下:
MathML=<math><mrow><msqrt><mrow><mi>x</mi></mrow></msqrt><mo>*43*</mo><msqrt><mrow><mo>-</mo><mi>x</mi></mrow></msqrt></mrow></math>
2、对所有关键词进行分词处理:
(1)、英文的分词:
A、方法:以空格为标记分隔一个关键词;
B、示例:文章“He once lived in Shanghai.”分词后的结果为:[He]、[once]、[lived]、[in]、[Shanghai]、[.]。
(2)、中文的分词:
A、方法:参看附图2,本发明中对输入的关键字为中文的,先以前两个字(即将第一字和第二个字组合后)作为第一个预关键词,在“中文标准对照库”内搜索与之匹配的词条,如果搜索到与之内容和顺序完全匹配的词条,则在其后加入第三个字在“中文标准对照库”内再次匹配内容和顺序,如果匹配成功,则继续加入其后的字进行循环匹配直到匹配最大化构成关键词组,如果匹配不成功,则将前两个字作为一个关键词进行分隔标记,再将第三个字加入其后的一个字后循环匹配直到匹配最大化构成关键词组;如果没有搜索到与前两个字(即第一个字和第二个字组合后)的内容和顺序完全匹配的词条,则在第一个字后作出分隔标记将其作为一个关键词,再将第二个字加上其后的一个字在“中文标准对照库”内搜索与之匹配的词条,如果加上后在“中文标准对照库”内能找到内容和顺序均匹配的词条,则再加入其后的第三个字进行循环匹配直到匹配最大化构成关键词组,如果加上后词条不构成关键词,则采用上一次匹配成功的词条作为关键词,后面一个字则作为后面词条的开始,依此方法将所有中文输入内容进行分词
B、示例:输入关键字“诺亚舟实业有限公司成立于1999年”,先取“诺亚”与“中文标准对照库”中关键词比较,并找到了包含“诺亚”的词条,然后加入“舟”字即取“诺亚舟”三字与“中文标准对照库”比较,在该库中亦找到了“诺亚舟”一词,则再加入“实”字即取“诺亚舟实”四字与“中文标准对照库”进行比较,在该库中找不到“诺亚舟实”这样的词,则说明“诺亚舟实”不能作为一个分词处理,而去除最后一次加入的关键字“实”字后的“诺亚舟”即可为一个关键词,再将“实”字与其后的“业”字组合成新的词条,与“中文标准对照库”比较,在该库中找到了“实业”这个词,如此类推下去,则上述关键字分词结果为:“诺亚舟/实业/有限/公司/成立/于/1999年”,则说明例中找到了“诺亚舟”、“实业”、“有限”、“公司”、“成立”、“于”、“1999”这些关键词。(3)、公式的分词:
A、方法:在表示公式的文本中按公式输入的顺序进行非跳跃性的最小化单元或包含若干个最小化单元组合的方法进行分词;
B、示例:公式“X2+3XY+Y2=5”可分解为下表中38个分词:
序号 |
关键词 |
序号 |
关键词 |
序号 |
关键词 |
1 |
X2+3XY+Y2=5 |
2 |
X2+3XY+Y2= |
3 |
X2+3XY+Y2 |
4 |
X2+3XY+ |
5 |
X2+3XY |
6 |
X2+3 |
7 |
X2+ |
8 |
X2 |
9 |
X |
10 |
2 |
11 |
+3XY+Y2=5 |
12 |
+3XY+Y2= |
13 |
+3XY+Y2 |
14 |
+3XY+ |
15 |
+3XY |
16 |
+3 |
17 |
+ |
18 |
3XY+Y2=5 |
19 |
3XY+Y2= |
20 |
3XY+Y2 |
21 |
3XY+ |
22 |
3XY |
23 |
3 |
24 |
XY+Y2=5 |
25 |
XY+Y2= |
26 |
XY+Y2 |
27 |
XY+ |
28 |
XY |
29 |
+Y2=5 |
30 |
+Y2= |
31 |
+Y2 |
32 |
Y2=5 |
33 |
Y2= |
34 |
Y2 |
35 |
Y |
36 |
=5 |
37 |
= |
38 |
5 |
|
|
(4)、搜索内容为其它语种的文本:遵从以空格为分隔标记或与相关语种的标准对照库中关键字相匹配取最大化词条的规则。
3、过滤关键词中无实际意义之词及标点符号(如英文中的“in、at”等,中文中的“的”“是”等);
4、统一关键词内容中的所有大小写,将所有的大写字母转换成小写;
5、将动词的各种时态包括过去式、过去分词、现在进行时、第三人称单数还原为原形,并将名词的复数形式还原为单数原形;
6、微处理器将输入的关键词与各个数据库压缩包内的数据进行匹配:
(1)、将所有输入的关键词与索引文件中的关键词进行内容和顺序的匹配,包括与索引文件中各语种的普通文本和采用MahtML数学标记语言所表示的理科公式的匹配;
(2)、“试题库、百科资料库、书籍库、句子库”根据“索引文件”中匹配成功的关键词对应的指向频率文件和位置文件的指针找到对应的频率文件和位置文件;“各个语种的词典库”根据索引文件中匹配成功的关键词对应的指向所属词典中所属释义的指针找到该本词典中该词对应的释义、通过指向关键词属性的指针找到该词对应的所有属性;
(3)、“试题库、百科资料库、书籍库、句子库”根据频率文件和位置文件找到对应的数据库压缩包中关键词所属的所有文章和在所属文章中的所有位置;
7、对所有搜索的结果进行显示排序:
(1)、各个语种的词典库的显示排序:由于一本词典即为一个目标压缩库,故一本词典中一个词条只对应一个释义,也即完全匹配的搜索结果仅有一条,因而不需要显示排序;
(2)、试题库、句子库的显示排序:对所有匹配成功的搜索结果内容按照相邻关键词在不同的文章中的位置是否相邻、关键词在文章中被提及的频率次数的多少、第一个关键词在文章中的位置的“优先级显示”的原则进行显示排序:
A、首先,相邻关键词在匹配成功的文章中位置相邻则优先显示。
B、其次,相邻关键词在匹配成功的文章中位置不相邻,则比较关键词在文章中被提及的频率次数,频率多的优先显示。
C、最后,关键词在匹配成功的文章中被提及的频率次数相同的,则按照第一个关键词在匹配成功的文章中首次出现的字符位置的前后顺序优先显示
(3)、书籍库的显示排序原则:按目录来搜索:在目录范围中搜索所有与关键词内容和顺序完全匹配或部分匹配的目录;
A、高级搜索排序:
a、按书名搜索:以输入书名为关键词,显示数据库压缩包中所有文章的标题即书名包含该关键词的文章,优先显示关键词与标题内容和顺序完全一致的文章,其次再显示关键词内容顺序包含于标题内容的文章;
b、按作者搜索:显示数据库压缩包中该作者所有的书,按存储顺序显示;
c、按内容搜索:同上述试题库、句子库中显示排序规则:将所有包含该关键词的内容显示,并按照上述以相邻关键词在数据库压缩包中的位置是否相邻、关键词在数据库中出现的频率次数多少、频率次数相同则比较第一个关键词在匹配成功的文章中首次的出现位置的顺序进行显示排序。
B、普通搜索(通用搜索):
a、将关键词当作书名,与上述高级搜索中“按书名搜索”的排序规则一致;否则,将关键词当作作者,与上述高级搜索中的“按作者搜索”的排序规则一致;否则,将关键词当作文章内容,与上述高级搜索中的“按内容搜索”的排序规则一致。
(4)、搜百科的显示排序:
A、将关键词当作文章标题,与数据库压缩包中的文章标题进行匹配,与上述书籍库的高级搜索中“按书名搜索”的排序规则一致;否则,将关键词当作作者,与上述书籍库的高级搜索中的“按作者搜索”的排序规则一致;否则,将关键词当作文章内容,与上述书籍库的高级搜索中的“按内容搜索”的排序规则一致。
8、根据上述显示排序结果调用手持学习终端的显示驱动设备显示所有搜索结果:
(1)、显示内容为文本,将匹配成功的文章内容显示在显示装置上,并将关键词高亮显示;
(2)、显示内容为公式,微处理器将数据库压缩包中采用MathML所表示的文本和数字类型的公式反向解析成对应的图片,并将该公式对应的图片显示在显示装置上
(三)、下面举例具体说明本发明中试题搜索的操作过程。
1、原始试题库的建库、排序、倒排、索引、压缩:
(1)、设有文章1(试题1)和文章2(试题2)构成一个原始试题库文件:
A、文章1的内容为:Tom lives in Guangzhou,I live in Guangzhou too.
B、文章2的内容为:He once lived in Shanghai.
(2)、对文章1和文章2的内容进行关键词分词处理:
A、分词目的:由于搜索引擎是基于索引文件中的关键词进行索引和查询的,首先要取得这两篇文章的关键词,即为建索引文件提取关键词;
B、分词方法:文章内容相当于一个字符串,先找出字符串中的所有单词,即采用以空隔为标记的分词方法,则文章1及文章2的关键词为:
a、文章1的所有关键词为:[Tom][lives][in][Guangzhou][,][I][live][in][Guangzhou][too].
b、文章2的所有关键词为:[He][once][lived][in][shanghai].
(3)、参照“无意义词标准对照库”、“标点符号对照库”滤除无意义的关键词及标点符号、并参照“英文大小写标准对照库”统一大小写,则文章1及文章2的关键词为:
A、文章1的所有关键词为:[tom][lives][guangzhou][i][live][guangzhou]
B、文章2的所有关键词为:[he][lived][shanghai].
(4)、参照“动词原形标准对照库”将动词的各种时态还原为原形,并参照“名词单数标准对照库”将名词的复数形式还原为单数原形,则文章1及文章2的关键词为:
A、文章1的所有关键词为:[tom][live][guangzhou][i][live][guangzhou]
B、文章2的所有关键词为:[he][live][shanghai].
(5)、倒排:
A、将上述文章1及文章2中“文章号”对“试题中所有关键词”倒排成:“试题中所有关键词”对“拥有该关键词的所有文章号”;
B、将试题中所有关键词按照“前面若干部分内容和顺序都相同的词条以相邻的地址按顺序排序”的排序规则进行排序;
C、倒排结果如下表所示:
关键词 |
所属试题号 |
guangzhou |
1 |
he |
2 |
i |
1 |
live |
1,2 |
shanghai |
2 |
tom |
1 |
(6)、建立索引文件:
A、将文章1及文章2在倒排基础上加上“出现频率”和“出现位置”信息后,索引结构变为“关键词+试题号+[出现频率]+出现位置”,其中“试题号+[出现频率]”即为频率文件,“出现位置”即为位置文件,则包含
上述文章1和文章2的试题库压缩包内的索引文件如下表中所示:
关键词 |
所属文章号及出现频率 |
出现位置 |
说明 |
guangzhou |
1[2] |
3,6 |
“guangzhou”在文章1中出现两次,位置分别为第3和第6个字符 |
he |
2[1] |
1 |
“he”在文章2中出现一次,位置为第1个字符 |
i |
1[1] |
4 |
“i”在文章1中出现1次,位置为第4个字符 |
live |
1[2],2[1] |
2,5,2 |
“live”在文章1中出现2次,位置为第2个和第5个字符;在文章2中出现1次,位置为第1个字符 |
shanghai |
2[1] |
3 |
“shanghai”在文章2中出现1次,位置为第3个字符 |
tom |
1[1] |
1 |
“tom”在文章1中出现1次,位置为第1个字符 |
B、上表的索引结构说明:
a、第一列“关键词”即为索引文件中的“词典文件”,词典文件中包含了“关键词”、“指向频率文件的频率指针”、“指向频率文件的位置指针”;
b、第二列即“频率文件”,包含关键词所属的文章号及在该文章中出现的频率次数;
c、第三列即“位置文件”,包含了关键词在所属的文章中出现的位置。
(7)、将索引文件及原始试题库中的试题内容进行压缩;
(8)、加入与试题相关联的知识点对应的用于用户学习的学习课件后即形成目标试题库压缩包,由上述可知,目标试题库压缩包中包含“试题内容”、“与试题内容关联的知识点对应的各类用于用户学习的学习课件”、“根据试题内容建立的索引文件”三大部分;
(9)、至此,PC机上将原始试题库加工成目标试题库压缩包的过程完成。
2、手持学习终端启动搜索引擎、解析目标试题库压缩包、显示搜索结果:
(1)、输入所有关键字,如“He lives in Guangzhou,”;
(2)、对关键字进行分词处理后,得到五个关键词:[He][lives][in][Guangzhou][,];
(3)、参照手持学习终端上的“无意义词标准对照库”、“标点符号对照库”滤除无意义词及标点符号后,得到三个关键词[He][lives][Guangzhou];
(4)、参照手持学习终端上“英文大小写标准对照库”统一关键词大小写,将大写统一改为小写,得到三个关键词:[he][lives][guangzhou];
(5)、参照手持学习终端上的“动词原形标准对照库”将动词的各种时态还原为原形,并参照“名词单数标准对照库”将名词的复数形式还原为单数原形,得到三个关键词:[he][live][guangzhou];
(6)、用二分搜索法将关键词与试题库压缩包的索引文件中词典文件内的关键词相匹配,得到如下匹配结果:
关键词 |
频率文件 |
位置文件 |
说明 |
guangzhou |
1[2] |
3, 6 |
“guangzhou”在文章1中出现2次,其位置分别为文章1中的第3和第6个字符位置 |
he |
2[1] |
1 |
“he”在文章2中出现1次,其位置为文章2中的第一个字符位置 |
live |
1[2],2[1] |
2, 5, 2 |
“live”在文章1中出现2次,在文章2中出现1次,其位置分别为文章1中的第2和第5个字符位置,文章2的第2个字符位置 |
(7)、根据上表中关键词与索引文件的频率文件和位置文件相匹配的结果找到试题库压缩包中对应的文章和内容,即找到文章1和文章2;
(8)、对匹配成功的文章内容进行显示排序:
A、按照相邻关键词在试题库压缩包中的位置相邻所属的文章优先显示的原则,输入的关键词[he]与[live]相邻,而文章2中上述两关键词亦相邻,故文章2的内容优先于文章1的内容显示位置靠前;
(9)、根据显示排序的结果,手持学习终端驱动显示驱动装置显示搜索结果;
本发明可广泛应用于各种手持学习终端中,如电子词典、学习机等。