如何根据当前year/month/etc进行SMW查询?
How to do a SMW query based on the current year/month/etc.?
我想根据当前年月信息执行 SMW 查询。问题:似乎我需要以非静态方式将值输入 SMW 询问部分,因为我无法对这些值进行硬编码。我该怎么做并执行这样的查询?
使用{{#time:}}
parser function. Date formats that SMW will understand are given here。下面,我使用了 d.m.Y
和 d xg Y
,它们在俄语 wiki 中绝对有效。
使用 Unix 格式(U
,自 Unix 时代以来的秒数;使用 @
将其转换回日期对象)进行日期算法。
示例(假设您激活了特殊的 属性 Creation date):
<!-- Pages created today -->
{{#ask:
[[Creation date::>={{#time:d.m.Y}}]]
}}
<!-- Pages created yesterday -->
{{#ask:
[[Creation date::>={{#time:d xg Y|@{{#expr:{{#time:U}}-86400}}}}]]
[[Creation date::<{{#time:d xg Y}}]]
}}
您也可以使用 MediaWiki 魔法词 https://www.mediawiki.org/wiki/Help:Magic_words/de 例如
{{#ask:
[[Modification date::>={{CURRENTYEAR}}-{{CURRENTMONTH}}-{{CURRENTDAY2}}]]
}}
我想根据当前年月信息执行 SMW 查询。问题:似乎我需要以非静态方式将值输入 SMW 询问部分,因为我无法对这些值进行硬编码。我该怎么做并执行这样的查询?
使用{{#time:}}
parser function. Date formats that SMW will understand are given here。下面,我使用了 d.m.Y
和 d xg Y
,它们在俄语 wiki 中绝对有效。
使用 Unix 格式(U
,自 Unix 时代以来的秒数;使用 @
将其转换回日期对象)进行日期算法。
示例(假设您激活了特殊的 属性 Creation date):
<!-- Pages created today -->
{{#ask:
[[Creation date::>={{#time:d.m.Y}}]]
}}
<!-- Pages created yesterday -->
{{#ask:
[[Creation date::>={{#time:d xg Y|@{{#expr:{{#time:U}}-86400}}}}]]
[[Creation date::<{{#time:d xg Y}}]]
}}
您也可以使用 MediaWiki 魔法词 https://www.mediawiki.org/wiki/Help:Magic_words/de 例如
{{#ask:
[[Modification date::>={{CURRENTYEAR}}-{{CURRENTMONTH}}-{{CURRENTDAY2}}]]
}}