2013-03-29 9 views
7

Czy jest możliwe zezwolenie na użycie niewiążącej przestrzeni   lub innej zakodowanej postaci HTML w rekordzie semantycznym? Problem, który napotykam, polega na tym, że znak ; zostaje potraktowany przez oprogramowanie jako koniec rekordu.Ustawianie niewiążącej przestrzeni w rekordzie semantycznym

Na przykład: załóżmy, że mam rekord małżeństwa, które jest skonfigurowany do mają nazwisk 2 ludzi, którzy pobrali, rok ich małżeństwa, a kraj pobrali w

[[has marriage::Jones & Smith; 1990; United States]] wydaje lekki go. powinno działać. Problem polega na tym, że kod & jest kodowany jako &. Wtedy oprogramowanie widzi ; i kończę z rekordem, który wygląda tak: Jones & Smith; 1990, ponieważ ; na końcu & jest traktowane jako koniec jednej części rekordu. Ktoś wie w jaki sposób?

+0

Zgaduję, jak nie używać sam typ rekordu (nie widzę powodu, dla którego nie powinienem używać znacznie potężniejszego typu sobobject), ale spróbuję '' lub nawet '-20'. – leo

Odpowiedz

0

Czy próbowałeś sformatować taki link?

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

Wiesz, nie miałem. To była naprawdę dobra myśl. Niestety, to nie działa. Rekord po prostu staje się pusty. :-(Dzięki za pomysł! – Zack

0

Moja następna próba będzie #urlencode funkcja:

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

byłem w stanie odtworzyć problemu na MW 1,25 + 2,3 SMW, może najprostszym rozwiązaniem jest po prostu zaktualizować swoją instalację.

Jednak uważam, że niesłusznie próbuje się przechowywać wiele wartości w pojedynczej właściwości, zamiast tego należy użyć innej funkcji do przechowywania tego typu rekordu. Semantic Mediawiki posiada tak zwany obiekt "podobiektowy" do przechowywania zestawu właściwości powiązanych ze sobą w jednym miejscu.

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

a następnie można po prostu zapytać tych danych tak:

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

I mieć coś takiego szablonu:

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

Warto zauważyć, że zadałem to pytanie ponad 3 lata temu ... – Zack

+0

Och, jakoś tęskniłem :) – wakalaka