Help:Document your semantic wiki

From semantic-mediawiki.org
Semantic extension(s):  -/-
Further extension(s):  -/-
Keyword(s):  -/-

Description:

Summary: Making the semantic structure of your wiki 'visible' is a pain. This template goes some way to helping manage that pain.

Background: Unfortunately, SMW/SF does not automatically generate self-documenting metadata. This would be useful if you wanted, for example, to query the set of properties associated with a form (class), and could be done using standard OWL terms. However, I'm digressing...

Solution: To help document your semantic wiki, it can be useful to list all the pages associated with each class. Typically a class consists of 1) a Form, 2) a Template, 3) a Category. Typically, all three will have the same name, occurring in the Form, Template and Category namespaces, respectively. Here is a simple template to automatically link those pages given the class name. The recommended name of the template is 'Class links':

<noinclude>A template to generate a convenient set of links for a given class name.

== Usage ==

== Template code ==
</noinclude>
[[Form:{{{class|{{{1|undef}}}}}}|Form]], 
[[Template:{{{class|{{{1|undef}}}}}}|Template]] and 
[[:Category:{{{class|{{{1|undef}}}}}}|Category]].

Additionally, each class has a set of associated properties and can also have filters. However, I'm not sure how to list them automatically.

Finally, create a page on your wiki to list all the classes, and include the template for each class that you list. For example:

== Classes ==
Click to see a list of all 
[[Special:Forms|Forms]], 
[[Special:Templates|Templates]], and 
[[Special:Categories|Categories]].

=== Library database ===
* Book: {{Class links|Car}}
* Author: {{Class links|Author}}

=== Car database ===
...

== Properties ==
By default, SMW does not create 'metadata'. For this reason, it isn't easy to list all the properties in each class.
* For a list of all properties in the wiki, see [[Special:Properties]].
* For a list of all property types in the wiki, see [[Special:Types]].

The most important site meta-properties are:
* [[Property:Has type]]
* [[Property:Has default form]]