SpecialSymbolsExample
This page shows a partial example of how to use semantic mediawiki via templates when page values contain characters (semantic) mediawiki uses for its template and/or property setting syntax.
The problematic symbols are
| = { } [ ] <
In various combinations or patterns these mess up the parsing of pages defined by mediawiki templates and with the semantic mediawiki property setting syntax.
While documentation for escaping `|` is easy to find, documentation for escaping the other special symbols is harder to discover - but can be found here on the mediawiki site.
| {{!}} = {{=}} { {{(}} } {{)}} [ {{!(}} ] {{!)}} < {{lessthan}}
However, as on this sandbox site, many of these "escape" templates are not predefined - but they are easy to define as needed.
These escapes are used in the defining template:
{{SpecialSymbolsTemplate |simple=no special symbols here! |code={{!}}{{=}}{{(}}{{!(}}{{)}}{{!)}}{{lessthan}} }}
The template can display this value without any further issues or enclose in html tags for display.
{{{code|}}} <code>{{{code|}}}</code> <div class="smwpre">{{{code|}}}<div>
The automatic property data-type dependent display implemented by semantic mediawiki is not available since the
[[Has code::{{{code|}}}]]
technique does not work.
The template should populate the relevant property using the #set: technique.
{{#set:|Has code={{{code|}}}}}
PageForms does not appear to support the editing of such fields other than by treating them literally.
SIMPLE | no special symbols here! |
---|---|
CODE | ={[}]< |