【问题标题】:Can I use a property's value as a query in semantic-mediawiki?我可以在语义媒体维基中使用属性值作为查询吗?
【发布时间】:2018-12-27 19:32:44
【问题描述】:

我正在尝试查询通过模板变量指定的页面列表,但我无法充分了解 Semantic Mediawiki,甚至无法确定这是否可能,更不用说一个好主意了。

我有一组具有语义属性的页面。然后我有一个模板,它有一个“集合”变量,它只是一个页面列表,如下所示:

// Bucket template
{{#set:
 | Has fishes={{{fishes|none}}}|+sep=,
}}

// A bucket page
{{Bucket
 |fishes=Fish Page, Another Fish Page, Trout Page
}}

到目前为止一切顺利。

现在,我想在 Bucket 模板中创建一个表格,该表格显示列出的页面中的一些属性。如果我尝试使用#show 如下:

{{#show:{{PAGENAME}}|?Has fishes
 |format=table
 |?Has fishName= name
 |?Has fishHeight = height
}}

除了页面链接之外,我什么也得不到。我实际上无法查询这些页面的属性。我的问题是:

如何将当前页面Has fishes 属性中已有的页面提供给#ask?我不知道要问什么,因为我已经有了答案,但我似乎无法在不要求的情况下正确格式化答案。我尝试了一些{{PAGENAME}}: 的变体,但这只是在黑暗中刺伤。

{{#ask:
 [[---what goes here and why?---]]
 |?Has fishName= name
 |?Has fishHeight= height
}}

【问题讨论】:

标签: semantic-mediawiki


【解决方案1】:

Semantic Media Wiki 提供为 Sandbox,这对实验很有帮助。

我已根据您的问题添加页面为Fish Category.

请注意,沙盒的默认语言是法语。在英文 wiki 中,页面会有不同的名称。

为了使您的想法发挥作用,您正在研究如何基于逗号分隔的值列表创建表格列表。您实际上不必查询该列表,因为在模板中,参数“fishes”已经包含值列表。

您最终可能不得不使用Template Format 进行查询。

The Example that shows different style of showing a table of images 展示了不同的方法。标准方法是:

  1. 显示表头
  2. 查询每一行
  3. 显示表格的页脚

对于查询每一行,您有以下选项:

  1. 使用安装在sandbox wiki 中的阵列扩展 https://www.mediawiki.org/wiki/Extension:Arrays 可能有可用的循环功能。
  2. 使用subobjects

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    • 2017-06-21
    • 1970-01-01
    • 2021-12-04
    相关资源
    最近更新 更多