Template:Uses from: Difference between revisions
Content added Content deleted
(Create template. Describe its goals. I'll need a lot of help getting it to behave to those design goals, though...) |
m (corrected template) |
||
Line 1: | Line 1: | ||
<div class="examplemeta libheader">'''Uses:''' [[SMW::off]][[:Category:{{{1}}}|{{{1}}}]][[Category:{{{1}}}]][[SMW::on]] <small>('''Component:''' {{{ |
<div class="examplemeta libheader">'''Uses:''' [[SMW::off]][[:Category:{{{1}}}|{{{1}}}]][[Category:{{{1}}}]][[SMW::on]] <small>('''Component:''' {{{2}}})</small><includeonly>{{#set:Uses library={{{1}}}}}{{#set:Uses tcllib package={{{2}}}}}</includeonly></div><noinclude> |
||
This template is derived from {{tmpl|tcllib}}, and seeks to have a similar aim, except more generically, and as a potential eventual replacement for {{tmpl|libheader}} and {{tmpl|works with}}. (And {{tmpl|tcllib}}, if it achieves sufficient functionality.) |
This template is derived from {{tmpl|tcllib}}, and seeks to have a similar aim, except more generically, and as a potential eventual replacement for {{tmpl|libheader}} and {{tmpl|works with}}. (And {{tmpl|tcllib}}, if it achieves sufficient functionality.) |
Revision as of 09:01, 12 November 2010
This template is derived from {{tcllib}}, and seeks to have a similar aim, except more generically, and as a potential eventual replacement for {{libheader}} and {{works with}}. (And {{tcllib}}, if it achieves sufficient functionality.)
Design goals in common with {{tcllib}}, {{libheader}} and {{works with}}:
- Use {{{1}}} as the library name.
Other ultimate goals that make its behavior variously different from current {{tcllib}}, {{libheader}} and {{works with}}:
- Avoid using MW categories. Use semantic properties instead. (MW categories have particular behavior when used in semantic queries.)
- Apply the semantic property uses::{{{1}}}
- Accept an undefined number of additional named arguments as components of that library. (var name might be component) Add a semantic property to the page indicating that it uses {{{1}}}. i.e. semantic syntax uses {{{1}}} component::{{{component}}}
- Accept library version as a single named argument. (var name might be version) Tag the transcluding page as using that version of library {{{1}}}. i.e. semantic syntax uses {{{1}}} version:{{{version}}}.
- If {{{component}}} is supplied, also apply uses {{{1}}} version {{{version}}} component::{{{component}}}' and uses {{{1}}} component {{{component}}} version::{{{version}}}.
The richer the relationships we can define, the more powerful the search options we'll have available.
(Unless someone can figure out a better way to apply pagename/libname/component/version with the semantic properties.)