2016-04-11 43 views
0

目前我有3个类别,应用程序,应用程序实例和供应商。在Semantic MediaWiki中传递属性

现在应用程序有一个链接(通过属性Made By)给供应商。应用程序实例需要通过属性链接回供应商。我有查询我可以用退回的应用程序名称和供应商是

{{#ask: 
[[Category:Program]][[{{{Program}}}]] 
|?Made By 
}} 
然而

{{#set:Made By={{#ask: 
[[Category:Program]][[{{{Program}}}]] 
|?Made By 
}}}} 

不起作用的属性设置为这是由问查询返回的供应商的价值。

是否有其他方法可以做到这一点?

回答

1

也许有点晚,但你可以使用模板来设置属性。像这样?

在应用程序实例模板(或手动每个应用程序实例页)增加以下要求查询:

{{#ask:[[Category:Program]][[{{{Program}}}]] 
|?Made By 
|link=none 
|format=template 
|template=Set made by 
}} 

然后创建模板“维基/模板:设置所作”与以下内容:

includeonly> 
{{#set: 
Made By={{{2}}} 
}} 
</includeonly> 

  1. 参数{{{1}}}是所述受试者是页面名称和{{{2}}}瓦特生病是'Made By'的结果。
  2. 从查询结果中剥离链接可防止将额外文本传递给set命令,从而导致混淆。
  3. 您还可以通过在查询前添加一个减号来使用查询中的属性的逆。 (例如'-Made By')