Parser Functions: Difference between revisions

From SemanticOrganization
Jump to: navigation, search
 
(68 intermediate revisions by the same user not shown)
Line 23: Line 23:
sets all the attributes and spits out a nicely formatted table with all the contact information and also a download link for a .vcard file
sets all the attributes and spits out a nicely formatted table with all the contact information and also a download link for a .vcard file


=== #semorg-person-ref ===
=== #semorg-field-rows ===


=== #semorg-form ===
Returns the markup for the fields in a form.


=== #semorg-field ===
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<pre><nowiki>{{#semorg-field-rows:name
  |template=person
}}</nowiki></pre>
|''only works in form definitions''
|}


=== #semorg-fields ===
The following system messages control the appearance of the list:


=== #semorg-field-rows ===
{| class="table table-bordered table-condensed"
! Message !! Function
|-
|semorg-field-<feature>-<field>-parameters
|Any of Page Form's parameters for fields.
|-
|semorg-field-<feature>-<field>-placeholder
|
|-
|semorg-field-<feature>-<field>-input-type
|
|-
|semorg-field-<feature>-<field>-values
|
|-
|semorg-field-<feature>-<field>-mapping-template
|
|-
|semorg-field-<feature>-<field>-class
|
|-
|semorg-field-<feature>-<field>-prefix
|Content to be displayed before the field.
|-
|semorg-field-<feature>-<field>-suffix
|Content to be displayed after the field.
|}
 
The following parameters are available:
 
{| class="table table-bordered table-condensed"
! Parameter !! Description
|-
|template
|The name of the feature.
|}


=== #semorg-set ===
=== #semorg-set ===
Shorthand for <code><nowiki>{{#set:}}</nowiki></code>
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<pre><nowiki>{{#semorg-set:person
  |name={{{name|}}}
}}</nowiki></pre>
|<pre><nowiki>{{#set:
  |semorg-person-name={{{name|}}}
}}</nowiki></pre>
|}


=== #semorg-set-list ===
=== #semorg-set-list ===


=== #semorg-table ===
Shorthand for <code><nowiki>{{#set:}}</nowiki></code> for properties with multiple values.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<pre><nowiki>{{#semorg-set-list:person
  |name={{{name|}}}
}}</nowiki></pre>
|<pre><nowiki>{{#set:
  |semorg-person-name={{{name|}}}|+sep=,
}}</nowiki></pre>
|}


=== #semorg-subobject ===
=== #semorg-subobject ===


=== #semorg-network ===
Shorthand for <code><nowiki>{{#subobject:}}</nowiki></code>.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<pre><nowiki>{{#semorg-subobject:person
  |name={{{name|}}}
}}</nowiki></pre>
|<pre><nowiki>{{#subobject:
  |semorg-person-name={{{name|}}}|+sep=,
}}</nowiki></pre>
|}
 
=== #semorg-table ===


=== #semorg-cooperation ===
Rendering template parameters (or other content) as a table. Field names are used for the first column.


=== #semorg-circles ===
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<pre><nowiki>{{#semorg-table:person
  |name={{{name|Dummy Person}}}
}}</nowiki></pre>
|{{#semorg-table:person
  |name={{{name|Dummy Person}}}
}}
|}


=== #semorg-toggle ===
=== #semorg-toggle ===
Rendering template parameters (or other content) as a table. Field names are used for the first column.
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<pre><nowiki>{{#semorg-toggle:
  |class=semorg-toggle-test
  |original-text=hide it
  |toggle-text=show it
}}
<div class="semorg-toggle-test">
Text to be toggled
</div></nowiki></pre>
|{{#semorg-toggle:
  |class=semorg-toggle-test
  |original-text=hide it
  |toggle-text=show it
}}<div class="semorg-toggle-test">
Text to be toggled
</div>
|-
|<pre><nowiki>{{#semorg-toggle:
  |class=semorg-toggle-hidden-test
  |original-text=show it
  |toggle-text=hide it
}}
<div class="semorg-toggle-hidden-test" style="display:none">
Initially hidden
</div></nowiki></pre>
|{{#semorg-toggle:
  |class=semorg-toggle-hidden-test
  |original-text=show it
  |toggle-text=hide it
}}<div class="semorg-toggle-hidden-test" style="display:none">
Initially hidden
</div>
|}


=== #semorg-list ===
=== #semorg-list ===


This parser function is used to show lists of pages belonging to a certain category.  
This parser function is used to show lists of pages belonging to a certain category. For the details about this highly configurable parser function see [[Parser Function semorg-list]]
 
=== #semorg-overview ===
 
This parser function is used to create calls to  <code><nowiki>{{#semorg-list:}}</nowiki></code> using defaults partly defined by system messages.
 
As an example the call <code><nowiki>{{#semorg-list:person-contact}}</nowiki></code> will be translated into:
 
<nowiki>{{#semorg-list:person
  |category=semorg-person-contact
  |row template=person-contact
  |links={{#ifexist:Template:semorg-person-contact-custom-links
    |{{semorg-person-contact-custom-links}}
    |{{#ifexist:Template:semorg-person-contact-links
      |{{semorg-person-contact-links}}
    }}
  }}
  |heading={{int:semorg-person-contact-page-name}}
  |formlink={{#semorg-formlink:person-contact}}
}}</nowiki>
 
Behind the scenes it is using the following pre-defined system messages:
* semorg-overview-person-contact-parent-feature (“person”)
* semorg-overview-person-contact-row-template (“person-contact”)
* semorg-overview-person-contact-category (“semorg-person-contact”)
 
=== #semorg-user-create ===
 
Render a link to create a new user account if it doesn't exist already


{| class="table table-bordered table-condensed"
{| class="table table-bordered table-condensed"
! Markup !! Result
! Markup !! Result
|-
|-
|<code><nowiki>{{#semorg-list:group}}</nowiki></code>
|<pre><nowiki>{{#semorg-user-create:Dummy User}}</nowiki></pre>
|{{#semorg-list:group}}
|{{#semorg-user-create:Dummy User}}
|}
 
=== #semorg-formlink ===
 
This parser function is an abbreviation to call <code><nowiki>{{#formlink}}</nowiki></code> with smart defaults.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-formlink:meeting-group}}</nowiki></code>
|{{#semorg-formlink:meeting-group}}
|}
|}


Line 65: Line 230:
! Message !! Function
! Message !! Function
|-
|-
|semorg-list-<feature>-headers
|semorg-formlink-<feature>-link-text
|Should contain a list of message keys that contain the texts for the table headers. For the example above the content of <code>semorg-list-group-headers</code> is <code>group-name, group-description, group-host, group-members</code>“. The elements of the list should have the general form of <code><feature>-<field></code>. The list is used to reference another set of messages following the naming convention <code>semorg-field-<feature>-<field>-name</code>. So <code>semorg-field-group-name-name</code> is used to populate the heading of the first column in the example above.
|The link text to be displayed.
|-
|semorg-formlink-<feature>-link-type
|Use this to set a wiki-wide default for all calls of <code><nowiki>{{#semorg-formlink:<feature>}}</nowiki></code>
|-
|semorg-formlink-<feature>-target
|
|-
|semorg-formlink-<feature>-tooltip
|
|-
|semorg-formlink-<feature>-popup
|
|-
|semorg-formlink-<feature>-new-window
|
|-
|semorg-formlink-<feature>-query-string
|
|-
|semorg-formlink-<feature>-returnto
|
|}
 
The following parameters are available:
 
{| class="table table-bordered table-condensed"
! Parameter !! Description
|-
|link text, link type, target, tooltip, popup, new window, query string, returnto
|These are the default parameters for Page Form's <code><nowiki>{{#formlink}}</nowiki></code> function
|}
 
=== #semorg-forminput ===
 
This parser function is an abbreviation to call <code><nowiki>{{#forminput}}</nowiki></code> with smart defaults.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-forminput:group}}</nowiki></code>
|{{#semorg-forminput:group}}
|}
 
The following system messages control the appearance of the list:
 
{| class="table table-bordered table-condensed"
! Message !! Function
|-
|semorg-forminput-<feature>-button-text
|The button text to be displayed.
|-
|semorg-forminput-<feature>-size
|Use this to set a wiki-wide default for all calls of <code><nowiki>{{#semorg-forminput:<feature>}}</nowiki></code>
|-
|semorg-forminput-<feature>-default-value
|
|-
|semorg-forminput-<feature>-query-string
|
|-
|semorg-forminput-<feature>-autocomplete-on-category
|
|-
|semorg-forminput-<feature>-autocomplete-on-namespace
|
|-
|semorg-forminput-<feature>-placeholder
|
|-
|semorg-forminput-<feature>-popup
|
|-
|semorg-forminput-<feature>-returnto
|
|}
 
The following parameters are available:
 
{| class="table table-bordered table-condensed"
! Parameter !! Description
|-
|button text, size, default value, query string, autocomplete on category, autocomplete on namespace, placeholder, popup, returnto
|These are the default parameters for Page Form's <code><nowiki>{{#forminput}}</nowiki></code> function
|}
 
NB: The <code>no autofocus</code> parameter is set by default.
 
=== #semorg-meetings ===
 
This is a shorthand to display
* a link to create a new meeting
* a list of scheduled meetings
* a list of recent meetings
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-meetings:group
  |group=Testgroup
}}</nowiki></code>
|{{#semorg-meetings:group|group=Testgroup}}
|}
 
The following system messages control the appearance:
 
{| class="table table-bordered table-condensed"
! Message !! Function
|-
|semorg-list-meeting-current-heading
|The heading for the list of current meetings
|-
|semorg-list-meeting-past-heading
|The heading for the list of recent meetings
|}
 
The following parameters are available:
 
{| class="table table-bordered table-condensed"
! Parameter !! Description
|-
|group
|If the group is not explicitly set it is assumed to be the title of the current page. You can set it to '+' if you want no specific group.
|}
 
=== #semorg-properties ===
 
Show a feature's properties/fields.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-properties:group}}</nowiki></code>
|{{#semorg-properties:group}}
|}
 
=== #semorg-values ===
 
Render all values for a specific property.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-values:person-name}}</nowiki></code>
|
{{#semorg-values:person-name}}
 
<small>this is the result of the following code: <pre><nowiki>
{{#ask:[[semorg-person-name::+]]
  |mainlabel=-
  |headers=hide
  |limit=1000
  |searchlabel=
  |?semorg-person-name#
}}</nowiki></pre></small>
|}
 
=== #semorg-tabs ===
 
Creates togglable tabs.
 
The following system messages control the appearance of the header:
 
{| class="table table-bordered table-condensed"
! Message !! Function
|-
|semorg-tab-<feature>-<tab-id>
|The link text for the tab.
|}
 
The following parameters are available:
 
{| class="table table-bordered table-condensed"
! Parameter !! Description
|-
|?<tab-id>=<tab-content>
|ID and content for a tab.
|}
 
=== #semorg-tabs-card ===
 
=== #semorg-user ===
 
Show the current user.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-user:}}</nowiki></code>
|
{{#semorg-user:}}
|}
 
=== #semorg-true ===
 
Test whether the first argument is one of SMW's true words.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-true:yes|true|false}}</nowiki></code><br>
<code><nowiki>{{#semorg-true:nope|true|false}}</nowiki></code>
|
{{#semorg-true:yes|true|false}}<br>
{{#semorg-true:nope|true|false}}
|}
 
=== #semorg-detail ===
 
Show header details for page. Replaces the main heading and provides a backlink to the overview page. See the documentation for [[Detail pages]].
 
The following system messages control the appearance of the header:
 
{| class="table table-bordered table-condensed"
! Message !! Function
|-
|semorg-<feature>-page-name
|The title of the overview page
|-
|semorg-<feature>-entity name
|Name for the instance. Displayed over the page title.
|}
|}


Line 74: Line 459:
! Parameter !! Description
! Parameter !! Description
|-
|-
|category
|heading
|The default category is the content of <code>semorg-<feature>-category</code>. If you want to use a different category, you can overwrite the default using this parameter.
|Heading to be displayed instead of the standard heading. Will also call <code><nowiki>{{DISPLAYTITLE:}}</nowiki></code>.
|-
|-
|row template
|overview page
|The parser function constructs a query that calls a template for every row. The default value is the same as the name of the feature. The actual name of the template called should be <code>semorg-<row template>-row</code>. You'll have to provide it on your own if you want to replace the default.
|Page that should be linked to as the parent page.
|}
 
=== #semorg-datediff ===
 
Return the difference of two given datetimes. The function's optional third argument defines the unit and can have the values <code>days</code>, <code>hours</code> (the default), <code>minutes</code>, or <code>seconds</code>.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|-
|query
|<code><nowiki>{{#semorg-datediff:{{#time:c}}|{{#time:c|+1 day}}}}</nowiki></code>
|You can add additional query conditions using Semantic MediaWiki's syntax. For example, if you would like to list only active groups, just add <code><nowiki>query=[[semorg-group-active::true]]</nowiki></code>.
|{{#semorg-datediff:{{#time:c}}|{{#time:c|+1 day}}}}
|}
 
=== #semorg-datediff-human ===
 
Return the difference of a given past datetime to the current time as readable for humans (“x ago“).
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|-
|?<field-name>
|<code><nowiki>{{#semorg-datediff-human:{{#time:c|+100 days}}}}</nowiki></code>
|By default, the parser function queries all fields that are defined for the feature and passes them on to the row template as [Help:Template_format#Usage_for_template_arguments.3D.5Bnamed.7Clegacy.5D_.28named_args.29 named args]. You can add custom lines to query for your custom fields or for chained properties. For example, if you would like to use the city of the group's host in the row template you could add <code><nowiki>|?semorg-group-host.semorg-person-email=email</nowiki></code>.
|{{#semorg-datediff-human:{{#time:c|-100 days}}}}
|}
 
=== #semorg-counter ===
 
Return an incrementing counter (can be used to create unique IDs).


In order for this to work, you will need to use the <code>row template</code> parameter to call your custom template, where you can then use <code><nowiki>{{{?email|}}}</nowiki></code> to get the value. You can customize the headers if you also create a <code><nowiki>semorg-list-<row template>-headers</nowiki></code> system message. If a message of that name doesn't exist, the default <code><nowiki>semorg-list-<feature>-headers</nowiki></code> message will be used.
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|-
|sort, order, default, limit
|<code><nowiki>{{#semorg-counter:}}</nowiki></code>
|These are the standard parameters for <code><nowiki>{{#ask}}</nowiki></code> queries.
|{{#semorg-counter:}}
|}
|}


=== #semorg-user-create ===
=== #semorg-hash ===
 
Return MD5-Hash for given string.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-hash:test}}</nowiki></code>
|{{#semorg-hash:test}}
|}
 
=== #semorg-count ===
 
Return number of array entries (using explode). The separator is an optional second parameter.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-count:entry1,entry2}}</nowiki></code>
|{{#semorg-count:entry1,entry2}}
|-
|<code><nowiki>{{#semorg-count:entry1;entry2, including comma|;}}</nowiki></code>
|{{#semorg-count:entry1;entry2, including comma|;}}
|}
 
=== #semorg-query ===
 
Get query value (from URL). Use [{{fullurl:{{FULLPAGENAME}}##semorg-query|test=test}} this link] to see the effect.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-query:test}}</nowiki></code>
|{{#semorg-query:test}}
|}
 
=== #semorg-phone ===
 
Render phone number in Semantic MediaWiki format. The default country code is set via [[MediaWiki:Semorg-default-country-code]].
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-phone:0699/1234567}}</nowiki></code>
| {{#semorg-phone:0699/1234567}}
|}
 
=== #semorg-nocache ===
 
Can be used to disable caching on a page.
 
=== #semorg-sum ===
 
Add amounts and return the sum by leaving out the amount parameter.
 
{| class="table table-bordered table-condensed"
! Markup !! Result
|-
|<code><nowiki>{{#semorg-sum:test|5}}{{#semorg-sum:test|10}}{{#semorg-sum:test}}</nowiki></code>
| {{#semorg-sum:test|5}}{{#semorg-sum:test|10}}{{#semorg-sum:test}}
|}
 
== Visualization ==
 
=== #semorg-network ===
 
''tbd''
 
=== #semorg-cooperation ===


=== #semorg-formlink ===
''tbd''


=== #semorg-forminput ===
=== #semorg-circles ===


=== #semorg-meetings ===
''tbd''

Latest revision as of 06:47, 14 November 2024

#semorg-person

called like this (preferably via template):

{{#semorg-person:
 |ref={{FULLPAGENAME}}
 |prefix={{{prefix|}}}
 |firstname={{{firstname|}}}
 |lastname={{{lastname|}}}
 |name={{{firstname|}}} {{{lastname|}}}
 |suffix={{{suffix|}}}
 |workstreet={{{workstreet|}}}
 |workpostalcode={{{workpostalcode|}}}
 |worklocality={{{worklocality|}}}
 |email={{{email|}}}
 |workphone={{{workphone|}}}
 |homepage={{{homepage|}}}
 |note={{{note|}}}
 |organization={{{organization|}}}
 |gender={{{gender|}}}
}}

sets all the attributes and spits out a nicely formatted table with all the contact information and also a download link for a .vcard file

#semorg-field-rows

Returns the markup for the fields in a form.

Markup Result
{{#semorg-field-rows:name
  |template=person
}}
only works in form definitions

The following system messages control the appearance of the list:

Message Function
semorg-field-<feature>-<field>-parameters Any of Page Form's parameters for fields.
semorg-field-<feature>-<field>-placeholder
semorg-field-<feature>-<field>-input-type
semorg-field-<feature>-<field>-values
semorg-field-<feature>-<field>-mapping-template
semorg-field-<feature>-<field>-class
semorg-field-<feature>-<field>-prefix Content to be displayed before the field.
semorg-field-<feature>-<field>-suffix Content to be displayed after the field.

The following parameters are available:

Parameter Description
template The name of the feature.

#semorg-set

Shorthand for {{#set:}}

Markup Result
{{#semorg-set:person
  |name={{{name|}}}
}}
{{#set:
  |semorg-person-name={{{name|}}}
}}

#semorg-set-list

Shorthand for {{#set:}} for properties with multiple values.

Markup Result
{{#semorg-set-list:person
  |name={{{name|}}}
}}
{{#set:
  |semorg-person-name={{{name|}}}|+sep=,
}}

#semorg-subobject

Shorthand for {{#subobject:}}.

Markup Result
{{#semorg-subobject:person
  |name={{{name|}}}
}}
{{#subobject:
  |semorg-person-name={{{name|}}}|+sep=,
}}

#semorg-table

Rendering template parameters (or other content) as a table. Field names are used for the first column.

Markup Result
{{#semorg-table:person
  |name={{{name|Dummy Person}}}
}}
Name

Dummy Person

#semorg-toggle

Rendering template parameters (or other content) as a table. Field names are used for the first column.

Markup Result
{{#semorg-toggle:
  |class=semorg-toggle-test
  |original-text=hide it
  |toggle-text=show it
}}
<div class="semorg-toggle-test">
Text to be toggled
</div>

Text to be toggled

{{#semorg-toggle:
  |class=semorg-toggle-hidden-test
  |original-text=show it
  |toggle-text=hide it
}}
<div class="semorg-toggle-hidden-test" style="display:none">
Initially hidden
</div>

#semorg-list

This parser function is used to show lists of pages belonging to a certain category. For the details about this highly configurable parser function see Parser Function semorg-list

#semorg-overview

This parser function is used to create calls to {{#semorg-list:}} using defaults partly defined by system messages.

As an example the call {{#semorg-list:person-contact}} will be translated into:

{{#semorg-list:person
  |category=semorg-person-contact
  |row template=person-contact
  |links={{#ifexist:Template:semorg-person-contact-custom-links
    |{{semorg-person-contact-custom-links}}
    |{{#ifexist:Template:semorg-person-contact-links
      |{{semorg-person-contact-links}}
    }}
  }}
  |heading={{int:semorg-person-contact-page-name}}
  |formlink={{#semorg-formlink:person-contact}}
}}

Behind the scenes it is using the following pre-defined system messages:

  • semorg-overview-person-contact-parent-feature (“person”)
  • semorg-overview-person-contact-row-template (“person-contact”)
  • semorg-overview-person-contact-category (“semorg-person-contact”)

#semorg-user-create

Render a link to create a new user account if it doesn't exist already

Markup Result
{{#semorg-user-create:Dummy User}}

#semorg-formlink

This parser function is an abbreviation to call {{#formlink}} with smart defaults.

Markup Result
{{#semorg-formlink:meeting-group}} Create Meeting

The following system messages control the appearance of the list:

Message Function
semorg-formlink-<feature>-link-text The link text to be displayed.
semorg-formlink-<feature>-link-type Use this to set a wiki-wide default for all calls of {{#semorg-formlink:<feature>}}
semorg-formlink-<feature>-target
semorg-formlink-<feature>-tooltip
semorg-formlink-<feature>-popup
semorg-formlink-<feature>-new-window
semorg-formlink-<feature>-query-string
semorg-formlink-<feature>-returnto

The following parameters are available:

Parameter Description
link text, link type, target, tooltip, popup, new window, query string, returnto These are the default parameters for Page Form's {{#formlink}} function

#semorg-forminput

This parser function is an abbreviation to call {{#forminput}} with smart defaults.

Markup Result
{{#semorg-forminput:group}}

The following system messages control the appearance of the list:

Message Function
semorg-forminput-<feature>-button-text The button text to be displayed.
semorg-forminput-<feature>-size Use this to set a wiki-wide default for all calls of {{#semorg-forminput:<feature>}}
semorg-forminput-<feature>-default-value
semorg-forminput-<feature>-query-string
semorg-forminput-<feature>-autocomplete-on-category
semorg-forminput-<feature>-autocomplete-on-namespace
semorg-forminput-<feature>-placeholder
semorg-forminput-<feature>-popup
semorg-forminput-<feature>-returnto

The following parameters are available:

Parameter Description
button text, size, default value, query string, autocomplete on category, autocomplete on namespace, placeholder, popup, returnto These are the default parameters for Page Form's {{#forminput}} function

NB: The no autofocus parameter is set by default.

#semorg-meetings

This is a shorthand to display

  • a link to create a new meeting
  • a list of scheduled meetings
  • a list of recent meetings
Markup Result
{{#semorg-meetings:group |group=Testgroup }}
Scheduled Group Meetings
no meetings scheduled…
no meetings scheduled…
Past Group Meetings
GroupDateLocationModeratorSecretaryParticipants
Testgroup
20/07/21

The following system messages control the appearance:

Message Function
semorg-list-meeting-current-heading The heading for the list of current meetings
semorg-list-meeting-past-heading The heading for the list of recent meetings

The following parameters are available:

Parameter Description
group If the group is not explicitly set it is assumed to be the title of the current page. You can set it to '+' if you want no specific group.

#semorg-properties

Show a feature's properties/fields.

Markup Result
{{#semorg-properties:group}} domain, co-host, description, goals, name, host, permanent, active

#semorg-values

Render all values for a specific property.

Markup Result
{{#semorg-values:person-name}}

ACME Corp., Ad Min, Brad Pitt, Darth Vader, Jane Doe, John Doe, Luke Skywalker, UNO

this is the result of the following code:
{{#ask:[[semorg-person-name::+]]
  |mainlabel=- 
  |headers=hide 
  |limit=1000 
  |searchlabel= 
  |?semorg-person-name# 
}}

#semorg-tabs

Creates togglable tabs.

The following system messages control the appearance of the header:

Message Function
semorg-tab-<feature>-<tab-id> The link text for the tab.

The following parameters are available:

Parameter Description
?<tab-id>=<tab-content> ID and content for a tab.

#semorg-tabs-card

#semorg-user

Show the current user.

Markup Result
{{#semorg-user:}}

User:192.168.0.1

#semorg-true

Test whether the first argument is one of SMW's true words.

Markup Result
{{#semorg-true:yes|true|false}}

{{#semorg-true:nope|true|false}}

true
false

#semorg-detail

Show header details for page. Replaces the main heading and provides a backlink to the overview page. See the documentation for Detail pages.

The following system messages control the appearance of the header:

Message Function
semorg-<feature>-page-name The title of the overview page
semorg-<feature>-entity name Name for the instance. Displayed over the page title.

The following parameters are available:

Parameter Description
heading Heading to be displayed instead of the standard heading. Will also call {{DISPLAYTITLE:}}.
overview page Page that should be linked to as the parent page.

#semorg-datediff

Return the difference of two given datetimes. The function's optional third argument defines the unit and can have the values days, hours (the default), minutes, or seconds.

Markup Result
{{#semorg-datediff:{{#time:c}}|{{#time:c|+1 day}}}} 24

#semorg-datediff-human

Return the difference of a given past datetime to the current time as readable for humans (“x ago“).

Markup Result
{{#semorg-datediff-human:{{#time:c|+100 days}}}} 3 months ago

#semorg-counter

Return an incrementing counter (can be used to create unique IDs).

Markup Result
{{#semorg-counter:}} 1

#semorg-hash

Return MD5-Hash for given string.

Markup Result
{{#semorg-hash:test}} 098f6bcd4621d373cade4e832627b4f6

#semorg-count

Return number of array entries (using explode). The separator is an optional second parameter.

Markup Result
{{#semorg-count:entry1,entry2}} 2
{{#semorg-count:entry1;entry2, including comma|;}} 2

#semorg-query

Get query value (from URL). Use this link to see the effect.

Markup Result
{{#semorg-query:test}}

#semorg-phone

Render phone number in Semantic MediaWiki format. The default country code is set via MediaWiki:Semorg-default-country-code.

Markup Result
{{#semorg-phone:0699/1234567}} +1-699-1234567

#semorg-nocache

Can be used to disable caching on a page.

#semorg-sum

Add amounts and return the sum by leaving out the amount parameter.

Markup Result
{{#semorg-sum:test|5}}{{#semorg-sum:test|10}}{{#semorg-sum:test}} 15

Visualization

#semorg-network

tbd

#semorg-cooperation

tbd

#semorg-circles

tbd