当前位置:编程学习 > JAVA >>

基于Lucene为XML文档建立索引---求解答

本人小小白一个,求各位大神鼎力相助,纠结好久了~~

XML文件如下,只截取了一部分,这个xml文档比较特殊的是基本没有text,全部的信息都在属性里写着呢,而写属性有重名的。

<?xml version="1.0" encoding="UTF-8"?>
<list>
  <item name="一">
    <outline>
      <stroke name="横" idtag="1">
        <trunpoint x="40" y="221" status="0" smooth="0" />
        <trunpoint x="433" y="221" status="0" smooth="0" />
      </stroke>
    </outline>
    <view name="独体">
      <sub1 num="1" name="横~1/" idtag="1" idx="0/1" partname="s11" autoname="s1_012" />
    </view>
    <keyview rely="宽" num="1" />
    <tmpchecked>true</tmpchecked>
    <structview struct="0~" structname="" />
  </item>
</list>

小弟现在已经用JDOM把XML文档里的信息提取出来了,但是如果用Lucene给它加索引的话,我在网上查的都是以下这种形式的xml文档
<add>
<doc>
  <field name="id">USD</field>
  <field name="name">One Dollar</field>
  <field name="manu">Bank of America</field>
  <field name="manu_id_s">boa</field>
  <field name="cat">currency</field>
  <field name="features">Coins and notes</field>
  <field name="features">Coins and note</field>
  <field name="price_c">1,USD</field>
  <field name="inStock">true</field>
</doc>
</add>
这是solr里面的例子文档

现在的问题是,如果我把每个属性作为一个field的话,那它的name肯定会有重名的,不知道这个要怎么办?而且不知道改成后来这种xml格式会不会把本来的结构给丢了?因为原来的是item是list的孩子,outline是item的孩子嘛~改了以后还会有这种structure了么?

还有怎么为从xml中抽取出来的信息建立索引?用SAX么?可是我是用JDOM抽取出来的。

我的最终目的是想实现像XQuery一样的效果,就是比如输入一定的查询条件,后台把查询封装成XQuery语句,或者直接输入XQuery语句,不知道lucene支不支持这种查询?

问题比较多,见谅,希望大神们能救我于水火之中!!! Lucene XML 索引 --------------------编程问答-------------------- --------------------编程问答-------------------- 顶起来啊,大神们~求解答!!!不要沉了 --------------------编程问答-------------------- 楼主仁兄,问题解决了没有,能不能说一下 --------------------编程问答-------------------- 楼主,这个问题解决了吗
--------------------编程问答-------------------- 最近也在用Lucene解析xml 求指教啊啊啊
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,