在语义mediawiki #ask查询中使用页面属性

时间:2012-02-02 02:40:20

标签: mediawiki semantics

使用当前页面的语义属性构建 #ask 查询的最佳方法是什么?

假设我有一个包含属性'featurestart(具有type :: Number)','featurestop(具有type :: Number)'和'srcfeature(具有type :: Page)'的页面。 Featurestart和featurestop是坐标。我想在相同的srcfeature上找到下一个查询。

{{#ask:
[[featurestart::>{{#show: {{PAGENAME}} | ?featurestop}}]]
[[srcfeature::{{#show: {{PAGENAME}} | ?srcfeature}}]]
| limit=1
}}

#ask查询失败,给出错误:

  

查询部分“| Scaffold 16”未被理解。结果可能会   不像预期的那样。

其中'Scaffold 16'是我正在测试的页面上srcfeature属性的值。注意额外的“|”字符。

featurestart(数字属性)工作得很好。我怀疑这个问题是由 #show 查询引起的,不仅返回属性的名称,还返回格式化的链接。


有没有办法清理 #show 的返回值,以便只给出值? 的 OR 有没有更好的方法来检索当前页面的属性,以便它们可以包含在#ask查询中?

1 个答案:

答案 0 :(得分:2)

问题是这里的 #show 查询返回了一个wiki链接到scaffold_16页面,而不仅仅是文本。

#ask 查询需要干净的文字,因此 #show 查询需要指定 link = none

[[srcfeature::{{#show: {{PAGENAME}} | link=none | ?srcfeature}}]]