【发布时间】:2014-09-24 07:54:49
【问题描述】:
我正在使用 Apache Jena 来学习 SPARQL。每当我尝试运行查询时,我都会收到以下消息:
只允许一个查询字符串
我已通过使用 dotNetRDF 运行查询来检查我的查询,它们在那里运行良好。
这是我在命令提示符下使用的命令。
arq --data -/sparql data/ex090.ttl --query -/sparql data/ex091.rq
谁能告诉我我做错了什么?
【问题讨论】:
我正在使用 Apache Jena 来学习 SPARQL。每当我尝试运行查询时,我都会收到以下消息:
只允许一个查询字符串
我已通过使用 dotNetRDF 运行查询来检查我的查询,它们在那里运行良好。
这是我在命令提示符下使用的命令。
arq --data -/sparql data/ex090.ttl --query -/sparql data/ex091.rq
谁能告诉我我做错了什么?
【问题讨论】:
错误消息告诉你你做错了什么,arq 命令行工具一次只能运行一个查询,所以你需要运行一个查询然后另一个。
您似乎没有尝试这样做,但 ARQ 认为您这样做是因为您的命令外壳如何将参数传递给程序。您的路径 /sparql data/ex090.ttl 中似乎有一个空格,这个空格导致参数作为两个单独的参数传递给 ARQ,因此您收到错误消息。
您需要将参数包装在 " 或您的命令外壳使用的任何内容中,以允许包含具有特殊含义的字符的参数,例如
arq --data "/sparql data/ex090.ttl" --query "/sparql data/ex091.rq"
【讨论】: