在Semantic MediaWiki中缩小查询范围
问题描述:
我无法在Semantic Mediawiki中写入显示相关信息的查询。 假设作者:Quotes
和AuthorOf
有两个主要属性,并且对于书: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的相关书籍的表格?
答
我创建这些页面和查询您的位置: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=-
}}
我真的不知道你在这里试图做什么。正如我可以理解的faras,该查询应该只返回作者? – leo 2014-09-23 16:09:11
感谢您的回答。我试图改进我的问题。不应该查询返回作者,只有他们的书包括属性hasQuotedAuthor。 – user1453786 2014-09-23 17:20:23