新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     >>计算机科学论坛<<     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论Semantic Web(语义Web,语义网或语义万维网, Web 3.0)及相关理论,如:Ontology(本体,本体论), OWL(Web Ontology Langauge,Web本体语言), Description Logic(DL, 描述逻辑),RDFa,Ontology Engineering等。
    [返回] 计算机科学论坛W3CHINA.ORG讨论区 - Web新技术讨论『 Semantic Web(语义Web)/描述逻辑/本体 』 → SPARQL Query for RDF 如何做到像SQL相似查詢 LIKE '%字串%'的語法呢? 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 3804 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: SPARQL Query for RDF 如何做到像SQL相似查詢 LIKE '%字串%'的語法呢? 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     blackcrazy 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:6
      积分:77
      门派:XML.ORG.CN
      注册:2006/7/12

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给blackcrazy发送一个短消息 把blackcrazy加入好友 查看blackcrazy的个人资料 搜索blackcrazy在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看blackcrazy的博客楼主
    发贴心情 SPARQL Query for RDF 如何做到像SQL相似查詢 LIKE '%字串%'的語法呢?


    例如資料有WindowsXP、Windows2000、Widnows2003

    今天SQL可以使用 LIKE '%Windows%' 來查詢全部相似字句,

    那 SPARQL Query for RDF該如何針對RDF文件作關鍵字的相似查詢呢?

    我翻前文有看到有人說用 在WHERE 後加  AND  ?Given =~ /關鍵字串/i 即可

    可是我仍然顯示錯誤

    我的程式碼Sparql查詢部份如下:
    *************************************************
      //Sparql query
      StringBuilder sb=new StringBuilder();
      sb.append("PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>");
      sb.append("SELECT ?Given ?Family                 ");
      sb.append("WHERE                                      ");
      sb.append("{ ?y vcard:Family ?Family    ");
      sb.append(" ?y vcard:Given  ?Given    ");
      sb.append("}                                              ");
      sb.append("AND  ?Given =~ /關鍵字串/i         ");
      sb.append("USING vcard FOR <http://www.w3.org/2001/vcard-rdf/3.0#> ");

    系統顯示錯誤
    exception
    org.apache.jasper.JasperException: Exception in JSP

    root cause
    com.hp.hpl.jena.query.QueryParseException: Encountered "AND" at line 1, column 192.
    Was expecting one of:
        <EOF>
        "limit" ...
        "offset" ...
        "order" ...

    ***********************************

    有人知道哪裡需改進嗎?

    或是有哪些提議跟想法,煩請指教,謝謝您的答覆!


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/7/16 16:10:00
     
     jpz6311whu 帅哥哟,离线,有人找我吗?
      
      
      
      威望:9
      等级:研三(收到微软亚洲研究院的Offer了)(版主)
      文章:1718
      积分:10610
      门派:W3CHINA.ORG
      注册:2005/4/12

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给jpz6311whu发送一个短消息 把jpz6311whu加入好友 查看jpz6311whu的个人资料 搜索jpz6311whu在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看jpz6311whu的博客2
    发贴心情 
    11.4.12 regex
    xsd:boolean   regex (simple literal text, simple literal pattern)
    xsd:boolean   regex (simple literal text, simple literal pattern, simple literal flags)

    Invokes the XPath fn:matches function to match text against a regular expression pattern. The regular expression language is defined in XQuery 1.0 and XPath 2.0 Functions and Operators section 7.6.1 Regular Expression Syntax [FUNCOP].

    @prefix foaf:       <http://xmlns.com/foaf/0.1/> .

    _:a  foaf:name       "Alice".
    _:b  foaf:name       "Bob" .

    PREFIX foaf: <http://xmlns.com/foaf/0.1/>
    SELECT ?name
    WHERE { ?x foaf:name  ?name
             FILTER regex(?name, "^ali", "i") }

    Query result:

    name
    "Alice"

    from http://www.w3.org/TR/rdf-sparql-query/#funcex-regex

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/7/16 16:38:00
     
     blackcrazy 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:6
      积分:77
      门派:XML.ORG.CN
      注册:2006/7/12

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给blackcrazy发送一个短消息 把blackcrazy加入好友 查看blackcrazy的个人资料 搜索blackcrazy在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看blackcrazy的博客3
    发贴心情 
    十分感謝您點出http://www.w3.org/TR/rdf-sparql-query/#funcex-regex中的

    11.4.12 regex章節給我參考,不然我還真的找不到 =.=

    我已經按照這個方法成功了!謝謝~!

    查詢成功的程式碼如下:
    ********************************
      //Sparql query
      StringBuilder sb=new StringBuilder();
      sb.append("PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>");
      sb.append("SELECT ?Given ?Family                   ");
      sb.append("WHERE                                       ");
      sb.append("{ ?y vcard:Family ?Family     .");
      sb.append(" ?y vcard:Given ?Given        ");
      sb.append("FILTER regex(?Given, '關鍵字串', 'i') ");
      sb.append("}                                                ");

    **********************************
    如此一來,不論關鍵字串前頭or後頭還有其他字都可以查詢來囉~

    若只要後面相符合則用'^關鍵字串' ,同理單前面符合用'關鍵字串^' 。

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/7/16 19:42:00
     
     yayatu 美女呀,离线,快来找我吧!双子座1981-6-1
      
      
      
      威望:1
      等级:大三暑假(2个月背完了红宝书)(贵宾)
      文章:134
      积分:965
      门派:XML.ORG.CN
      注册:2004/7/6

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给yayatu发送一个短消息 把yayatu加入好友 查看yayatu的个人资料 搜索yayatu在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看yayatu的博客4
    发贴心情 

           请问SPARQL支持对OWL的查询吗?
           
           SPARQL与SQL之间是否存在转换器?

    ----------------------------------------------
    研究描述逻辑,努力中……

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/7/17 9:00:00
     
     GoogleAdSense双子座1981-6-1
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/10/7 20:06:41

    本主题贴数4,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    70.313ms