SMW notes

From zooid Wiki
Jump to navigation Jump to search

Some tips and tricks for using Semantic Mediawiki.

Other tip sources

http://smwforum.ontoprise.com/smwforum/images/a/ad/Manual_SMW.pdf

http://smw.referata.com/wiki/Special:BrowseData/Tips

http://smwforum.ontoprise.com/smwforum/index.php/Example:All_libraries

http://help.wikia.com/wiki/Help:Semantic_MediaWiki/Tips_and_tricks

(from mailing list)

Data design

http://www.mediawiki.org/wiki/Extension:Semantic_Forms#Data_design_issues

- Create a top category for Semantic Classes. I called mine 'Categories'. It holds only categories used to define a 'Is-a' relationship. Doing so has at least two benefits : 1- You can do a query on your core content by restricting it to the 'Categories' level. 2- You can define other categories outside of that structure for whatever your system needs.

http://smwforum.ontoprise.com/smwforum/index.php/Example:How_to_realize_a_range_constraint_for_a_property

Redirects can be used to create property synonyms.

Discussion

Categories can be hierarchical; properties can't (yet).


MW tricks

If you want to clear out old pages you can delete them and use deleteArchivedRevisions.php to erase the deleted revisions from the database.

Variables

You can make use of the VariablesExtension [1] and store the query (or its result? I'd like to know which one, but in the end it doesn't really matter) in a variable, which is helpful when you need the same query multiple times within a page. It looks like this:


(silent) or

 (with output)

Further down in the page you can write


Specific searches

 
  <inputbox>
  type=search
  width=30
  namespaces=Help**,Wikipedia**,Template** 
  searchbuttonlabel=Search help pages
  bgcolor=#cee0f2
  break=no
  </inputbox>
  

(requires the Input Box extension)

Profiling mediawiki

http://www.mediawiki.org/wiki/How_to_debug#Profiling

Mediawiki performance tuning

http://www.mediawiki.org/wiki/Manual:Performance_tuning

  • APC can be used with SMW without problems

SMW tricks

[[Went past deadline::{{#expr:{{{End date|}}}>{{{Deadline|}}} }}]]

Hiding set data

 [[propertyA::{{{propertyA|}}}|]]

By adding the | after the enclosing }}}, the property value will not show.

For multi value properties:

 {{#arraymap:{{{Eating disorders behaviors|}}}|,|x|[[Eating disorders behaviors::x|]]}}

Misc

Enable links in property values

$smwgLinksInValues = true;

Must add namespaces to config

Otherwise they won't have semantic properties.

$smwgNamespacesWithSemanticLinks array

Media

Neat talk on MW, with refs to SMW: http://www.youtube.com/watch?v=Ukytqe9pwDM

Semantics