7

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

例如:假设我有一个婚姻记录,其中设置了 2 个结婚的人的姓氏、他们结婚的年份和他们结婚的国家。

[[has marriage::Jones & Smith; 1990; United States]]看起来很轻它应该工作。问题是&被编码为&. 然后软件看到;并且我最终得到一个看起来像这样的记录:Jones & Smith; 1990因为;末尾的&被视为记录的一部分的结尾。有谁知道解决这个问题的任何方法?

4

3 回答 3

0

我的下一个尝试是#urlencode函数:

[[has marriage::{{#urlencode:Jones & Smith}}; 1990; United States]]
于 2013-04-30T09:23:36.090 回答
0

您是否尝试过像这样格式化链接?

[[has marriage::Jones %26 Smith; 1990; United States]]
于 2013-04-09T15:32:49.780 回答
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}}}
于 2016-07-05T20:02:09.887 回答