首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SPARQL查询中的对数函数

SPARQL查询中的对数函数
EN

Stack Overflow用户
提问于 2013-04-29 22:07:56
回答 1查看 512关注 0票数 3

我正在尝试创建一个对返回结果执行对数函数的SPARQL查询。我已经在java程序中实现了Jena SPARQL引擎,但只能找到以下可用函数:http://jena.sourceforge.net/ARQ/library-function.html

有没有人知道取SPARQL返回变量的对数(最好是自然对数)的方法?

有效的查询示例:

代码语言:javascript
复制
SELECT DISTINCT ((?Transactions_Num) AS ?BusinessValue) 
WHERE {{?BusinessProcess relation:Transactions_Num ?Transactions_Num ;} }

我想要工作的查询示例(尽管目前还不能):

代码语言:javascript
复制
SELECT DISTINCT (LOG(?Transactions_Num) AS ?BusinessValue) 
WHERE {{?BusinessProcess relation:Transactions_Num ?Transactions_Num ;} }

非常感谢您提前给予的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-29 23:05:41

very easy to write your own不是标准或ARQ's additions的一部分,但它是日志。

代码语言:javascript
复制
package app;

public class log extends FunctionBase1
{
    public log() { super() ; }

    public NodeValue exec(NodeValue v)
    {
        return Math.log(v.getDouble());
    }
}

注册它的最简单方法如下:

代码语言:javascript
复制
FunctionRegistry.get().put("http://example.org/function#log", log.class) ;

然后您可以像这样使用它:

代码语言:javascript
复制
PREFIX myfun: <http://example.org/function#>
SELECT DISTINCT (myfun:log(?Transactions_Num) AS ?BusinessValue)
{
   ...
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16280758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档