2014-09-22 46 views
1

我无法在Semantic Mediawiki中写入显示相关信息的查询。 假设作者QuotesAuthorOf有两个主要属性,并且对于HasQuotedAuthor有一个主要属性。在Semantic MediaWiki中缩小查询范围

假设有三个作者:柯勒律治拜伦狄更斯

  • 拜伦狄更斯具有这样的性质[[Quotes::Byron]]
  • 拜伦拥有财产[[AuthorOf::The first kiss of love]][[AuthorOf::The Dream]]
  • 狄更斯拥有财产[[AuthorOf::A Christmas Carol]][[AuthorOf::Oliver Twist]]
  • 梦想圣诞颂歌有财产[[HasQuotedAuthor::Coleridge]]

如何在Coleridge页面上创建一个查询来获取包括引用他的作者以及仅引用实际引用Coleridge的相关书籍的表格?

+0

我真的不知道你在这里试图做什么。正如我可以理解的faras,该查询应该只返回作者? – leo 2014-09-23 16:09:11

+0

感谢您的回答。我试图改进我的问题。不应该查询返回作者,只有他们的书包括属性hasQuotedAuthor。 – user1453786 2014-09-23 17:20:23

回答

2

我创建这些页面和查询您的位置:http://smw.referata.com/wiki/Coleridge

您所要求的一本书,{{PAGENAME}}(在这种情况下,柯勒律治)被引用的任何作者。您的查询应该是这样的:

{{#ask: [[Author of::<q>[[HasQuotedAuthor::{{PAGENAME}}]]</q>]] }} 

,其结果将是:Byron, Dickens

或者你也可以在同一时间打印的书籍和作者:

{{#ask:[[HasQuotedAuthor::{{PAGENAME}}]] 
    |?-Author of 
}} 

Author of前面的负号表示反向性质。换句话说,我们想展示作者撰写本书的作者。我们也可以用这个查询来创建一个类似于第一个列表的列表,只需隐藏第一列:

{{#ask:[[HasQuotedAuthor::{{PAGENAME}}]] 
    |?-Author of 
    |format=ul 
    |mainlabel=- 
}}