如何使用语义mediawiki创建一系列带AND / OR的高级查询?

时间:2013-10-14 07:51:28

标签: mediawiki semantic-mediawiki

如何创建如下的查询?

  

获取头发颜色为棕色或黑色和眼睛的人员列表   颜色为蓝色或绿色。

我问这个的原因是因为我不确定在这些查询中如何处理优先级。

例如,如果我写道:

#ask: [[Category:Person]] 
      [[Hair color::brown]] OR [[Hair color::black]] 
      [[Eye color::blue]] OR [[Eye color::green]]

将smw分组为:((头发=棕色或黑色)和(眼睛=蓝色或绿色))

将逻辑分组为:(头发=棕色或(头发=黑色,眼睛=蓝色)或眼睛=绿色)

从我最初的测试看来,后者似乎就是这样的情况,似乎无法创建我追求的查询。

这个功能是否缺少smw?

2 个答案:

答案 0 :(得分:3)

想想我刚刚找到答案:查询应该这样写:

  #ask: [[Category:Person]] 
  [[Hair color::brown||black]]
  [[Eye color::blue||green]]

这将给我正确的presecende,所以逻辑将分组为:((头发=棕色或黑色)和(眼睛=蓝色或绿色))

答案 1 :(得分:0)

我认为你不能这样做。这里登录将是:

类别:人和(头发=棕色或头发:黑色或眼睛:蓝色或眼睛:绿色)