在语义记录中设置非绑定空间

时间:2013-03-29 21:08:12

标签: mediawiki mediawiki-templates semantic-mediawiki

无论如何,是否允许在语义记录中使用非绑定空间 或其他HTML编码字符?我遇到的问题是,;字符被软件视为记录的结尾。

例如:假设我的婚姻记录是为了结婚的2个人,结婚年份和他们结婚的国家的姓氏。

[[has marriage::Jones & Smith; 1990; United States]]似乎应该有效。问题是&被编码为&。然后,软件会看到;,我最终会得到一条类似于Jones & Smith; 1990的记录,因为;末尾的&被视为一部分的结尾的记录。有人知道这个吗?

3 个答案:

答案 0 :(得分:0)

您是否尝试过设置此类链接?

[[has marriage::Jones %26 Smith; 1990; United States]]

答案 1 :(得分:0)

我的下一次尝试是#urlencode功能:

[[has marriage::{{#urlencode:Jones & Smith}}; 1990; United States]]

答案 2 :(得分:0)

我无法在MW 1.25 + SMW 2.3上重现您的问题,也许最简单的答案就是升级您的安装。

但是,我认为您错误地尝试在单个属性中存储多个值,而是应该使用另一个功能来存储此记录类型。 Semantic Mediawiki有一个所谓的“子对象”实体,用于在一个地方存储彼此相关的一组属性。

{{#subobject:
 |Page=Title of page this object linked to
 |Name1=John
 |Name2=Smith
 |Year=1990
 |Location=United States
}}

然后您可以简单地查询这些数据:

{{#ask: [[Page::{{PAGENAME}}]] 
|?Name1 |?Name2 |?Year |?Location
|format=template 
|template=Item template
|named args=yes
}}

并拥有类似的模板:

Record info: 
 * Name 1: {{{?Name1}}}
 * Name 2: {{{?Name2}}}
 * Year: {{{?Year}}}
 * Location: {{{?Location}}}