Dear friends! I use SMW in my origami wiki. In version SMW 1.5 and SemanticResultFormats 1.5 I can use Wiki syntax with parser in #set
property for model - text. See here property on russian (описание модели)
On page in gallery caption I get wiki text
After update to version SMW 1.7.1 and SemanticResultFormats 1.7.1 now property model is empty.
Can you help me, how I can use parser and wiki syntax in my property for caption.
Thanks
This is the code that sets the property:
{{#set:Описание модели={{{!}} class="oritable" width="100%" {{!}}- {{!}}{{#if:{{{шагов|}}}|({{{шагов|}}})|}} ''{{{название модели|}}}'' {{#if:{{{opus|}}}|(op.{{{opus|}}}{{#if:{{{ver_opus|}}}| v.{{{ver_opus|}}}|}}{{#if:{{{num_opus|}}}|-{{{num_opus|}}}|}})|}} {{#if: {{{konkurs|}}}|([[{{{konkurs|}}}{{!}}{{{num_tur|}}} тур]])|}} {{!}}- {{!}}{{#if:{{{источник|}}}|[[{{{источник|}}}]]|~ ~ ~}} {{#if:{{{страница|}}}|(стр.{{{страница|}}})}} {{#if:{{{источники|}}}|{{!}}- {{!}} & ({{#arraymap:{{{источники|}}}|,|x|[[x]]}})}} {{#if:{{{автор|}}}|{{!}}- {{!}}[[{{{автор|}}}]]}} {{#if:{{{addtomodel|}}}|{{!}}- {{!}}({{{addtomodel|}}}{{#if:{{{formattomodel|}}}| + {{{formattomodel|}}}}})|}} {{!}}} }}
It is called from within a template hence the named parametres.
This wikicode is almost undebuggable. Sir, I can only suggest:
- copy it into a separate template, check its calls with different combinations of empty and non-empty parametres, and comment out fragments of the template (using binary search) until the source of trouble is found;
- replace wiki markup for the table with pure HTML;
- upgrade to the last stable versions of MW and SMW.
Thanks for reply!
1. First, I am upgrade wiki to v.1.20 and SMW to 1.8. - my query not displayed. Now I use on local SMF 1.7.1
2. Yes, I did it. And find problem with parser
{{#set:Описание модели= ''{{{название модели|}}}'' }} - work is good
{{#set:Описание модели= {{#if:{{{var|}}}|({{{var|}}})|}} ''{{{название модели|}}}'' }} - not worked. Property is empty.
If you have SMW > 1.7 - Can you check it out with parser function {{#if:{{{var|}}}|({{{var|}}})|}}
Thanks
If {{{название модели|}}} is empty, the apostrophes are interpreted as ''' ' and therefore unbalanced. Try replacing them with <em>. Not that I hope it would help (in a wiki I checked it in, the property was set anyway).
You could also try to replace emptyness in the else branch of the {{#if:}} call with a space or, better, <nowiki></nowiki>. {{#set:}} might break on empty substrings.
Worst of all, {{#set:}} may be called before {{#if:}}, not after as expected.
Видно, мне это не по силам сообразить. Перепробовал массу вариантов, и последовательно обновлял вики и SMF. Не сочтите за наглость - обратился к вам за помощью через http://www.formspring.me.
Попробую еще убрать апострофы.
Anyway, look here. It works. So I recommend to upgrade anyway (don't forget to run the upgrade scripts for MW and SMW).
Действительно, работает. Большое спасибо. Я обновляю как раз-таки через web-интерфейс. Видимо в этом и кроется пробема. А по другому у меня не получится - я делаю все на локалке (windows). Или можно как-то по другому обновить (руководство по обновлению читал)
Тогда учтите, что семантические данные обновляются не мгновенно, а посредством рабочих заданий, что может привести ко временному отсутствию результатов в запросах SMW, пока данные не перегенерируются. Кстати, недавно в этой вики обсуждался вопрос (ссылки не могу найти) обновления, когда доступен только веб-интерфейс. Кажется, написали даже страницу справки. У кого-то тоже были затруднения.
Вообще, для полноценного администрирования вики его недостаточно. Подумайте об организации доступа через удалённый рабочий стол или по telnet.
В том то и дело. После обновления мои старые свойства сохраняются. Как только я делаю правку на модели - свойство обновляется и становится пустым. Ну и результат вы можете видеть сверху.
Про обновления - я так и делаю. Уже месяц вожусь с этим обновлением. Только сегодня вот решил спросить, мало надеясь, что ответят ).
Взгляните сюда.
You also should make sure that, after the upgrade, SMW still understands that Описание модели is still of Text type. Merry Christmas.