首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >有没有一种方法可以根据MarkLogic 8中的相关性评分对SPARQL查询结果进行排序?

有没有一种方法可以根据MarkLogic 8中的相关性评分对SPARQL查询结果进行排序?
EN

Stack Overflow用户
提问于 2017-02-24 12:42:21
回答 1查看 516关注 0票数 1

我们正在对MarkLogic服务器中的一些临床本体数据运行SPARQL查询。我们的查询如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX cts: <http://marklogic.com/cts#>

SELECT *
FROM <http://example/ontologies/snomedct>
WHERE {
  ?s rdfs:label ?o .
  FILTER cts:contains(?o, cts:word-query("Smoke*", "wildcarded"))
}
LIMIT 10

我们期望得到基于相关评分的排序结果,但结果似乎是随机的。在查询中尝试了许多方法,但都没有效果。经过一些研究,我们在MarkLogic文档中找到了这样的语句:

当理解表达式返回的顺序时,有两个主要规则需要考虑:

  • cts:搜索表达式总是按关联顺序返回(最相关的是最不相关的)。
  • XPath表达式总是按文档顺序返回。

这是否意味着cts: in是一个始终按文档顺序返回的XPath表达式?如果是这样的话,我们如何构造一个按关联顺序返回的SPARQL查询?

谢谢,凯文

EN

回答 1

Stack Overflow用户

发布于 2017-02-24 14:10:14

在您所使用的示例中,您使用的语言是SPARQL --带有cts:contains的片段筛选器。

在本例中,cts:contains仅用于隔离匹配的片段ID,从而过滤SPARQL查询中使用的候选文档。因此,我认为没有考虑到反恐战略的相关性。

但是,您可能会以另一种方式获得正在寻找的结果:对所讨论的文档执行实际的cts:搜索,然后使用cts:triple查询对它们进行筛选。

https://docs.marklogic.com/cts:triple-range-query

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42447920

复制
相关文章
sparql语句进行查询
1、打开网站:http://dbpedia.org/sparql/ 2、查询有哪些书和书的简介 输入:
DC童生
2019/05/07
2.3K0
sparql语句进行查询
MySQL | 如何对查询结果集进行排序
数据操作语言:结果集排序 如果没有设置,查询语句不会对结果集进行排序。也就是说,如果想让结果集按照某种顺序排列,就必须使用 ORDER BY 子句。 SELECT ...... FROM ...... ORDER BY 列名 [ASC | DESC]; SELECT ename,sal FROM t_emp ORDER BY sal; SELECT empno,ename,sal,deptno FROM t_emp ORDER BY sal DESC; 排序关键字 ASC 代表升序(默认),DESC
Zkeq
2022/05/18
6.3K0
MySQL | 如何对查询结果集进行排序
Mysql常用sql语句(7)- order by 对查询结果进行排序
https://www.cnblogs.com/poloyy/category/1683347.html
小菠萝测试笔记
2020/06/09
2.9K0
Mysql常用sql语句(7)- order by 对查询结果进行排序
sparql 查询语句快速入门
SPARQL即SPARQL Protocol and RDF Query Language的递归缩写,被专门设计用来访问和操作RDF数据,是语义网的核心技术之一。W3C的RDF数据存取小组(RDF Data Access Working Group, RDAWG)对其进行了标准化。2008年1月15日,SPARQL正式成为一项W3C推荐标准。
JadePeng
2022/03/24
1.7K0
sparql  查询语句快速入门
Java 对查询出来的list,根据时间字段进行升序 或者 降序排序
目录 1 代码 1 代码 ArrayList<User> users = new ArrayList<User>(); 升序 Collections.sort(users , new Comparator<User>() { @Override public int compare(Userh1, Userh2) { return h1.getBeginTime().compareTo(h2.getBeginTime())
一写代码就开心
2022/09/30
2.3K0
九、查询结果排序与分页
我们已经掌握使用 SELECT 语句结合 WHERE 查询条件获取需要的数据,但在实际应用中还会遇到例如学生按身高从高到低排序、商品按价格排序、博客文章按发布的先后顺序排序等等这类需求,那么遇到这类需求该如何解决呢?
喵叔
2021/06/25
8880
Oracle查询优化-02给查询结果排序
translate和replace函数从每一行中去掉数字或者字符,这样就很容易的可以根据具体情况来排序。
小小工匠
2021/08/16
1.2K0
Flask传参到后台,根据参数进行查询,将结果显示到前端
在 index.html 获取 id ,通过 id 在后台进行数据的查询,然后将结果显示到另一个页面 other.html 。
Lokinli
2023/03/09
1.9K0
Flask传参到后台,根据参数进行查询,将结果显示到前端
利用Boost影响Lucene查询结果的排序
以下代码在Lucene2.1下通过,主要是通过设置Document的Boost来影响文档的权重,以达到控制查询结果顺序的目的(前提是不利用Sort排序的情况下): private void btnSearch_Click(object sender, EventArgs e)         {             RAMDirectory ramDir = new RAMDirectory();             IndexWriter iw = new IndexWriter(ramD
菩提树下的杨过
2018/01/22
1.3K0
利用Boost影响Lucene查询结果的排序
以下代码在Lucene2.1下通过,主要是通过设置Document的Boost来影响文档的权重,以达到控制查询结果顺序的目的(前提是不利用Sort排序的情况下): private void btnSearch_Click(object sender, EventArgs e)         {             RAMDirectory ramDir = new RAMDirectory();             IndexWriter iw = new IndexWriter(ramD
菩提树下的杨过
2018/01/22
8810
Java根据IP地址进行分类排序
IP地址划分为 A,B,C,D,E五类 A类地址1.0.0.0~126.255.255.255; B类地址128.0.0.0~191.255.255.255; C类地址192.0.0.0~223.255.255.255; D类地址224.0.0.0~239.255.255.255; E类地址240.0.0.0~255.255.255.255 私网IP范围是: 10.0.0.0~10.255.255.255 172.16.0.0~172.31.255.255 192.168.0.0~192.168.255.2
来自银河系的员程序
2022/05/16
1.6K0
关于搜索出来的内容根据权重进行排序
对于这需求要做到百度搜索我呸,谷歌搜索的权重排序,我接到这个需求是拒绝的。后来经过和小伙伴的研究,觉得这个按照权重排序是可以实现的。
君赏
2018/08/31
1.5K0
关于搜索出来的内容根据权重进行排序
EasyGBS云端录像查询结果跟实际的查询结果不同调整方法
近期我们一直在对EasyGBS的云端录像做测试,其中一个重要原因就是广大用户对云端录像的要求不断提高,因此对于云端录像的检查仍然是必不可少的一个环节。在测试过程中,我们就发现在云端录像的查询结果跟想要查询的结果不同。
TSINGSEE青犀视频
2021/08/10
1.5K0
EasyGBS云端录像查询结果跟实际的查询结果不同调整方法
Python对字典根据键值分组进行排序
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/119530.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/11
4.5K0
arm平台根据栈进行backtrace的方法
嵌入式设备开发过程中,难免会遇到各种死机问题。这类问题的定位一直是开发人员的噩梦。 死机问题常见定位手段如下:
coderhuo
2018/08/29
6K0
arm平台根据栈进行backtrace的方法
《SQL Cookbook》 - 第二章 查询结果排序
1. 默认情况下,ORDER BY会做升序排列,因此ASC子句是可选的。可以通过DESC执行降序排列。可以再ORDER BY子句中列出不同的排序列,逗号分隔。
bisal
2021/09/06
1K0
希尔排序是一种…排序方法_希尔排序法属于
(1)插入排序的基本方法是:每步将一个待排序的元素,按其排序码大小插入到前面已经排好序的一组元素的适当位置上去,直到元素全部插入为止。 (2)可以选择不同的方法在已经排好序的有序数据表中寻找插入位置,依据查找方法的不同,有多种插入排序方法。下面是常用的三种。 1>直接插入排序 2>折半插入排序 3>希尔排序 (3)直接插入排序基本思想:当插入第i(i>1)个元素时,前面的data[0],data[1]……data[i-1]已经排好序。这时用data[i]的排序码与data[i-1],data[i-2],……的排序码顺序进行比较,找到插入位置即将data[i]插入,原来位置上的元素向后顺序移动。 (4)折半插入排序基本思想:设元素序列data[0],data[1],……data[n-1]。其中data[0],data[1],……data[i-1]是已经排好序的元素。在插入data[i]时,利用折半搜索法寻找data[i]的插入位置。 (5)希尔排序的过程相比前两种有些不同,下面我们主要介绍希尔排序的过程实现。
全栈程序员站长
2022/09/21
4210
希尔排序是一种…排序方法_希尔排序法属于
Java的HashMap中的常用方法总结遍历HashMap打印HashMap根据HashMap的value进行排序
HashMap在编程中是一个非常有用的工具,使用的频率很高,所以本文简单总结一下hashmap的常用方法
desperate633
2018/08/22
1.5K0
jdk1.8根据Map的值进行排序的
<, > <, > (<, > aMap) {     <, > = LinkedHashMap<>();     aMap.entrySet()             .stream()             .sorted((p1, p2) -> p2.getValue().compareTo(p1.getValue()))             .collect(.()).forEach(ele -> .put(ele.getKey(), ele.getValue()));     ; }
凯哥Java
2022/12/16
1K0
点击加载更多

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文