Template:Antibody/doc: Difference between revisions

From OpenWetWare
Jump to navigationJump to search
m (New page: <noinclude>{{Documentation subpage}} {{timw|Anibody}} </noinclude> <!----> == Purpose == This template should be added to the main page of all anibodys documented on this wiki (and only t...)
 
(attempt to fix template - removed nonfunctional create antibody button)
 
(39 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<noinclude>{{Documentation subpage}}
{{timw|Anibody}}
</noinclude>
<!---->
<!---->
== Purpose ==
== Purpose ==
This template should be added to the main page of all anibodys documented on this wiki (and only the main page).  It will add a useful infobox using the information supplied (see below) and will automatically add the anibody to [[:Category:All anibodys]], plus the appropriate [[:Category:Anibodys by status|status]] and [[:Category:Anibodys by implementation type|implementation type]] categories.
This template should be added to the main page of all antibodies documented on this wiki (and only the main page).  It will add a useful infobox using the information supplied (see below) and will automatically add the antibody to <nowiki>[[Category:All antibodies]]</nowiki>.


== Usage ==  
== Usage ==  
Line 14: Line 10:
|- valign="top"
|- valign="top"
| align="left" |
| align="left" |
<span id="CutAndPaste">Cut and paste:</span>
<span id="CutAndPaste">Cutting and pasting the text below will create an infobox (see right):</span>
<pre>{{Anibody|templatemode =
<pre>{{Antibody
|name          =  
|name          =
|status        =
|antibodytype  =
|type1        =
|uniprotid    =
|type2        =
|xreactive    =
|hook1        =
|nonxreactive  =
|hook2        =
|against      =
|username      =
|provider-name =
|author        =
|provider-url  =
|description   =
|westernblot   =
|image        =
|ip            =
|imagesize    =
|icc          =
|version      =
|ihc-cryo     =
|update        =
|ihc-paraffin  =
|mediawiki    =  
|license      =
|download     =
|readme        =
|changelog    =
|parameters    =
|tags          =
|rights        =
|example      =
|compatibility =
}}</pre>
}}</pre>


For help with parameter values, see [[#Content parameters|below]].
For help with parameter values, see [[#Content parameters|below]].


| align="right"|{{Anibody|templatemode=nocats
| align="right"|{{Antibody
|name          = {{{name}}}
|name          = {{{name}}}
|status        = {{{status}}}
|antibodytype  = {{{antibodytype}}}
|type1        = {{{type1}}}
|uniprotid    = {{{uniprotid}}}
|type2        = {{{type2}}}
|xreactive    = {{{xreactive}}}
|hook1        = hook1
|nonxreactive  = {{{nonxreactive}}}
|hook2        = hook2
|against       = {{{against}}}
|username      = SomeUser
|provider-name = {{{provider-name}}}
|author        = SomeAuthor
|provider-url  = {{{provider-url}}}
|image        = Placeholder.png
|westernblot   = {{{westernblot}}}
|version      = {{{version}}}
|ip            = {{{ip}}}
|update        = {{{update}}}
|icc          = {{{icc}}}  
|mediawiki    = {{{mediawiki}}}
|ihc-cryo      = {{{ihc-cryo}}}
|license       = {{{license}}}
|ihc-paraffin  = {{{ihc-paraffin}}}
|download      = {{{download}}}
|readme        = {{{readme}}}
|changelog    = {{{changelog}}}
|description   = {{{description}}}
|parameters    = {{{parameters}}}
|tags          = {{{tags}}}
|rights        = {{{rights}}}
|example      = {{{example}}}
|compatibility = {{{compatibility}}}
}}
}}
|}
|}
Line 71: Line 48:


== Content parameters ==
== Content parameters ==
This section describes parameters that govern infobox content. For help with '''templatemode''' and other control parameters, please see  ''[[#Control parameters|Control parameters]]''.
This section describes parameters that govern infobox content.
 
<!-- BEFORE YOU EDIT THIS:
<!-- BEFORE YOU EDIT THIS:
     span ids on each parameter are used by the code in Template:Anibody.
     span ids on each parameter are used by the code in Template:Antibody.
     They enable each label in the info box to link its documentation.
     They enable each label in the info box to link its documentation.
     If you change an id, please update the code in Template:Anibody accordingly
     If you change an id, please update the code in Template:Antibody accordingly
-->   
-->   
{|
{|
|
|
{|border="1"
{|border="1"
|+ '''Content parameters'''
|<span id="name">'''name'''</span> || '''Name''' of the antibody e.g. gamma Tubulin 1 Abcam 12345
|-
|<span id="name">'''name'''</span> || '''name of the anibody'''
|-
|<span id="status">'''status'''</span> || '''current release status'''
One of:
* ''[[:Category:Unstable anibodys|unstable]]'' (broken - do not use this anibody)
* ''[[:Category:Experimental anibodys|experimental]]'' (early stages of development, may change drastically.)
* ''[[:Category:Beta status anibodys|beta]]'' (stable but not fully tested)
* ''[[:Category:Stable anibodys|stable]]'' (stable version)
* ''[[:Category:Anibodys with unknown status|unknown]]'' (default)
If the status is anything other than the above, it will be ignored and the default value of 'Unknown' will be displayed in the template instead.  In cases where the value is omitted, it will be categorised as [[:category:anibodys with unknown status|unknown]].  In cases where the value is invalid, it will be placed in a [[:category:anibodys with invalid status|special category]] so that the error can be caught and fixed.
|-
| '''type1'''<br/>''type2''<br/>''type3''<br/>''type4''<br/>''type5''<br/>''type6''<br/> || <span id="type">'''implementation type'''</span><!-- id here so at top of documentation -->
 
The  implementation strategy(s) employed in building this anibody. This parameter is used to create categories that help programmers find examples of various MediaWiki specific implementation strategies or patterns.  Although the values of this parameter sometimes coincide with the use case or purpose of an anibody, that is not reason for this parameter.  If the values you have chosen for this parameter do not adequately identify the [[w:Requirements|purpose]] or possible [[w:Use case|use case]]s, we recommend you add additional [[Help:Categories|category links]] as needed.
 
 
Legal values for the '''type1''','''type2''',... parameters are:
* '''''[[:Category:Parser anibodys|parser]]''''' - catchall for uncategorized [[Manual:Extending wiki markup|parser anibodys]]. If you have written a parser anibody, please use one of the following more specific types:
** ''[[:Category:Link markup anibodys|link]]'' - customized [[Manual:Extending wiki markup|link markup]], e.g. <code><nowiki>[[</nowiki>...]]</code>
** ''[[:Category:Parser function anibodys|parser function]]'' - custom [[Manual:Parser functions|parameterized template markup]], e.g. <code><nowiki>{{</nowiki>''#name:'' ... }}</code>
** ''[[:Category:Tag anibodys|tag]]'' - [[Manual:Tag anibodys|custom XML tag markup]], e.g. <code><nowiki><</nowiki>''tagname''>...<nowiki></</nowiki>''tagname''></code>
** ''[[:Category:Variable anibodys|variable]]'' - custom [[Manual:Variables|unparameterized template markup]], e.g. <code><nowiki>{{NAME}}</nowiki></code>
** ''[[:Category:Extended syntax anibodys|extended syntax]]'' - Anibodys that add non-standard wiki syntax (i.e. <em>not</em> [[Manual:Tag anibodys|tags]], [[Manual:Parser functions|parser functions]], or [[Manual:Variables|variables]]).
*:
* [[:Category:User access anibodys|'''''access''''']] - catchall for [[Manual:User access anibodys|user access anibodys]], that is, anibodys that create, authenticate, grant permissions, revoke permissions, or monitor the activity of users.  If you have written an access anibody, please use one of the following more specific types:
** [[:Category:User activity anibodys|''user activity'']] - anibodys that monitor user activity (logins, logouts, new user creation, etc)
** [[:Category:User identity anibodys|''user identity'']] - anibodys that create and delete users, and/or verify the identity of a user
** [[:Category:User rights anibodys|''user rights'']] - anibodys to the rights management system, e.g. changes to the way rights are assigned, apis, maintenance tools (does not include anibodys that merely name the rights needed to use the features of that anibody.  For this purpose use the [[#rights|rights parameter]].).
*:
* [[:Category:User interface anibodys|'''''interface''''']] - catchall for uncategorized user interface anibodys.
** ''[[:Category:Media handling anibodys|media]]'' - anibodys that permit the embedding of multimedia content on wiki pages by registering a file anibody with [[Manual:$wgMediaHandlers|$wgMediaHandlers]].
** ''[[:Category:Personalization anibodys|mywiki]]'' - anibodys that provide infrastructure so that users may personalize their MediaWiki experience and/or assist in the management of that infrastructure
** [[:Category:Notification anibodys|''notify'']] - anibodys that email users, broadcast messages and provide other forms of community notification
** ''[[:Category:Page action anibodys|''page action'']]'' - anibodys that enhance or modify [[Manual:Page action|page action]]s.  This includes anything that implements an action that reads, writes, searches for, creates, renames, deletes, redirects or discusses a page.  It does not include rights (use ''user rights'') or logs (use ''user activity'').
** [[:Category:Search anibodys|''search'']] - anibodys that search through and select articles for users.
** [[:Category:Skin anibodys|''skin'']] - anibodys adding [[w:CSS|CSS]] or [[w:JavaScript|JavaScript]], or implementing hook functions to change the look and feel of MediaWiki via the skins framework.
** [[:Category:Ajax anibodys|''ajax'']] - anibodys that use [[w:Ajax|Ajax]] programming techniques.
** [[:Category:Special page anibodys|''special'']] - anibodys that subclass the [[Manual:SpecialPage class|SpecialPage class]], use one of its hooks, or patch one or more functions in [http://svn.wikimedia.org/doc/SpecialPage_8php-source.html SpecialPage.php]. See [[Manual:Special pages]] for more information.
* '''other'''
** [[:Category:API anibodys|''api'']] - anibodys that add a new API module or extend a core API module.
** [[:Category:Hook anibodys|''hook'']] - Hook anibody - defines a <em>new</em> hook - see hook1, etc below if you want to define hooks <em>used</em> by your anibody
 
 
* ''[[:Category:Parser function anibodys|pfunc]]'' - same as ''parser function''
 
<div style="border: thin solid blue">We are in the process of revising the values of this page.  Types below this point are likely to be deprecated or redefined. We apologize for the inconvenience.  See [[Template talk:Anibody#Type taxonomy]] for more information.</div>
* ''[[:Category:Database anibodys|database]]'' - adds tables and/or fields to the database backing a MediaWiki installation
* ''[[:Category:Database anibodys|db]]'' - same as ''database''
* ''[[:Category:Data extraction anibodys|data extraction]]'' - Data extraction
* ''[[:Category:Anibody examples|example]]'' - Not a real anibody, but an example of how to write one
 
Any other value for 'type' is invalid, and will cause the anibody to be placed in [[:Category:Anibodys with invalid or missing type]].
 
Note: Many anibodys have more than one type, if this applies to yours,replace <code><nowiki>|type=</nowiki></code> with <code><nowiki>|type1=|type2=|type3=...</nowiki></code>.  You may define up to six types for an anibody.
|-
| <span id="hook">'''hook1'''</span><br/>''hook2''<br/>''hook3''<br/>''hook4''<br/>...<br/>''hook30''
|valign="top"| '''name of each hook used by the anibody'''
 
Entering values in this field is a good way to get exposure for your anibody and help other developers.  Each documented hook will automatically add the anibody to a category listing anibodys that use that hook.  This category is autolinked to each hook article so that programmers can easily find examples of anibodys that use a particular hook.
 
For built-in hooks:
* use the hook name alone.  Please see [[Manual:Hooks]] for values (but omit introductory '/').
 
For custom hooks defined by anibodys:
* use ''anibodyName''/''hookName''.  For a partial list of custom hooks, see [[Anibody hook registry]]. 
 
For multiple hooks, assign the first hook to '''hook1''', the second to '''hook2''' and so on.
|-
|-
| <span id="username">'''username'''</span> || The author's username on MediaWiki.org (if they have one). May be omitted, but if present it will be used to link to the author's user & user_talk page.
|<span id="antibodytype">'''antibodytype'''</span> || '''Type of antibody''' e.g. mouse monoclonal, lama polyclonal, etc.
|-
|-
| <span id="author">author</span>|| The anibody author's name, if different from their MediaWiki.org username. Free text. If omitted then the 'username' field will be used (if present).
|<span id="uniprotid">'''uniprotid'''</span> || '''UNIPROT Database id''' of the antibody e.g. P23258
|-
|-
| <span id="description">'''description'''</span>|| '''short description'''
| <span id="xreactive">'''xreactive'''</span>|| '''Cross-reactive against''': antibody works against proteins of these species; e.g. human and mouse
|-
|-
| <span id="image">image</span>|| screenshot or logo of anibody
| <span id="nonxreactive">'''nonxreactive'''</span>|| '''Not Cross-reactive with''': antibody does not recognise proteins of these species; e.g. rat
|-
|-
| <span id="imagesize">imagesize</span>|| ''facultative'', size of the image (default size is 220px)
| <span id="against">'''against'''</span>||'''Raised Against''':  type of molecule the antibody was raised against; e.g. peptide or full-length protein
|-
|-
| <span id="version">version</span>|| last version
| <span id="provider-name">'''provider-name'''</span>||'''Commercial Provider''' or source for this antibody based upon experience.
|-
|-
| <span id="update">update</span>|| date of the last update
| <span id="provider-url">'''provider-url'''</span>||'''Commercial Provider URL''': web page related to this antibody.
|-
|-
| <span id="mediawiki">mediawiki</span>|| required version of MediaWiki
| <span id="westernblot">'''westernblot'''</span>|| '''Suitable for Western Blotting''': Is the antibody suitable for Western Blotting? Possible values: failed, worked, uncertain, untested
|-
|-
| <span id="license">license</span>|| license(s) governing use of this anibody, e.g. GPL
| <span id="ip">'''ip'''</span>|| '''Immunoprecipitation:''' as above; does the antibody work in this experiment? Possible values: failed, worked, uncertain, untested
|-
|-
| <span id="download">'''download'''</span>|| '''link to the download''' : [http://svn.wikimedia.org/svnroot/mediawiki/trunk/anibodys/ SVN] or other. If you put the code into page in the MediaWiki Wiki, link to it using a full page name and section name, e.g. <code> <nowiki>[[Anibody:Example/version_1.22a#Code]]</nowiki> </code> (it must reamain valid when bot-copied elsewhere)
| <span id="icc">'''icc'''</span>|| '''Immunocytochemistry:''' As above; please add the evidence to the main page. Possible values: failed, worked, uncertain, untested
|-
|-
| <span id="readme">readme</span>|| link to the readme file : [http://svn.wikimedia.org/svnroot/mediawiki/trunk/anibodys/Sort/Sort README] or other
| <span id="ihc-cryo">'''ihc-cryo'''</span>|| '''Immuno-histo-cryo-chemistry:''' Possible values: failed, worked, uncertain, untested
|-
|-
| <span id="changelog">changelog</span>|| link to the changelog file : [http://svn.wikimedia.org/svnroot/mediawiki/trunk/anibodys/Sort/Sort CHANGELOG] or other
| <span id="ihc-paraffin">'''ihc-paraffin'''</span>|| '''Immuno-histo-paraffin-chemistry''': Possible values: failed, worked, uncertain, untested
|-
| <span id="parameters">parameters</span> || available parameters for LocalSettings.php
|-
| <span id="tags">tags</span> || any tags your anibody uses (e.g. &lt;tag1&gt;, &lt;tag2&gt;).
|-
| rights|| <span id="rights">rights</span> added by the anibody. '''Not to be confused with the license!''' Rights are such as ''[[Anibody:MakeBot|makebot]]'' or ''[[Anibody:Desysop|desysop]]'', not such as GFDL or LGPL or GPL - those are licenses!
|-
| <span id="example">example</span> || example, website or screenshot of working anibody
|-
| <span id="compatibility">compatibility</span> || compatibility chart, e.g. [[Template:Anibody Testing]]
|}
|}


== Control parameters ==
{| border="1"
|+ '''Control parameters'''
|-
| '''templatemode''' || '''Controls auto-categorization of host page.'''
Normally left blank.  Alternate values are:
* ''nocats'' - suppresses categorization. Use this value if you are adding this template to [[Help:Subpage|subpages]] of an anibody or to how-to documentation of anibodys. For example, the usage image above sets <code>templatemode=nocats</code> because this isn't an actual anibody page and we don't want to add this page to any categories on account of it.


== Using the infobox ==


If this is left blank, this template will add the host page to [[:Category:All anibodys]] and to one or more additional categories, depending on the values assigned to the [[#Content parameters|Content parameters]].
=== Existing antibody pages ===
|}
 
== Using the infobox ==
=== Existing anibody pages ===
If you want to add the infobox to an existing page, copy and paste the code at the [[#CutAndPaste|top of this page]].
If you want to add the infobox to an existing page, copy and paste the code at the [[#CutAndPaste|top of this page]].
=== Create a new anibody article ===
If you want to create a new anibody page, enter the name below and click the button. A new page will be created with the infobox template already in place.
{{Anibody/CreateAnibodyInputBox}}


== Enhancing this template ==
== Enhancing this template ==
Line 215: Line 95:
=== Fixing documentation ===
=== Fixing documentation ===
If you would like to fix documentation, please be aware that documentation and code is split into two files:
If you would like to fix documentation, please be aware that documentation and code is split into two files:
* '''[[Template:Anibody/Doc]]''' - stores all documentation.
* '''[[Template:Antibody/doc]]''' - stores all documentation.
* '''[[Template:Anibody]]''' - stores only the code for the template and a small amount of non-included material (category links, transcluded documentation link).
* '''[[Template:Antibody]]''' - stores only the code for the template and a small amount of non-included material (category links, transcluded documentation link).


 
In addition, [[Template:Antibody/Sample]] stores the boiler plate that is preloaded into newly created pages and contains some basic documentation on how to fill in the template parameters.  It needs to be kept in sync with [[Template:Antibody/doc]].
In addition, [[Template:Anibody/Sample]] stores the boiler plate that is preloaded into newly created pages and contains some basic documentation on how to fill in the template parameters.  It needs to be kept in sync with [[Template:Anibody/Doc]].
 
=== The Create anibody button ===
To improve the create anibody button behavior:
* '''[[Template:Anibody/Sample]]:''' The boilerplate anibody that is preloaded into newly-created pages.
* '''[[Template:Anibody/CreateAnibodyInputBox]]:''' An input box that can be inserted wherever you want users to easily create anibodys.  For documentation on the <code><nowiki><inputbox></nowiki></code> tag, please see [[Anibody:InputBox]].
* '''[[Anibody:MyAnibody]]:''' - Defines a placeholder, in case a user accidentally hits the create button without changing the anibody name.


=== Infobox parameters ===
=== Infobox parameters ===
In general:
In general:
* To make this template easy to use, each label in the infobox is linked to documentation on the template parameter(s) it displays.  If you add a parameter, please be sure to also add it to the [[Template:Anibody/Doc#Content parameters|content parameter documentation]] and link its label to that documentation.
* To make this template easy to use, each label in the infobox is linked to documentation on the template parameter(s) it displays.  If you add a parameter, please be sure to also add it to the [[Template:Antibody/doc#Content parameters|content parameter documentation]] and link its label to that documentation.
 
 
To change/correct/add to the implementation type parameters:
* Check the [[Template_talk:Anibody|talk page]] - there have been some extensive discussions about this field.
* '''[[Template:Anibody/TypeSwitch]]:''' Stores the possible values for the type field.  Multiple values are implemented by calling this template with [[Template:Foreach]].
* '''[[Template:Anibody/TypeSwitchNoCats]]:''' Used instead of [[Template:Anibody/TypeSwitch]] when this template is used in <code>templatemode=nocats</code>.  Templates used with [[Template:Foreach]] can only take one parameter so we need to wrap the call to [[Template:Anibody/TypeSwitch]] with another template that sets the mode.
* '''[[Template:Anibody/Doc]]:''' Documentation for this template needs to be kept in sync with any changes to the implementation type taxonomy.
 
 
To change the behavior of the hook parameters:
* '''[[Template:Anibody/HookInUse]]:''' Adds links and categories for a hook in use.  Multiple hooks in use are implemented by calling this template with [[Template:Foreach]].
* '''[[Template:Anibody/HookInUseNoCats]]:''' Used instead of [[Template:Anibody/HookInUse]] when this template is used in <code>templatemode=nocats</code>.  Templates used with [[Template:Foreach]] can only take one parameter so we need to wrap the call to [[Template:Anibody/HookInUse]] with another template that sets the mode.


== Test case ==
== Test case ==
See if the following pages are still ok, after edited this template.
See if the following pages are still ok, after edited this template.
* [[Anibody:Description]]
* [[Antibody:X]]
* [[User:Ans/{{FULLPAGENAME}}#{{FULLPAGENAME}}]]

Latest revision as of 03:49, 8 June 2010

Purpose

This template should be added to the main page of all antibodies documented on this wiki (and only the main page). It will add a useful infobox using the information supplied (see below) and will automatically add the antibody to [[Category:All antibodies]].

Usage

Cutting and pasting the text below will create an infobox (see right):

{{Antibody
|name          =
|antibodytype  =
|uniprotid     =
|xreactive     =
|nonxreactive  =
|against       =
|provider-name =
|provider-url  =
|westernblot   =
|ip            =
|icc           =
|ihc-cryo      =
|ihc-paraffin  =
}}

For help with parameter values, see below.

                       
List of OpenWetWare Antibodies
anti {{{name}}}
Antibody Type  {{{antibodytype}}}
Target UniProt ID  {{{uniprotid}}}
Cross-Reactive w  {{{xreactive}}}
Not Cross-Reactive w  {{{nonxreactive}}}
Raised Against  {{{against}}}
Provider  [{{{provider-url}}} {{{provider-name}}}]
Suitability for..
Western Blot  {{{westernblot}}}
Immunoprecipitation  {{{ip}}}
Staining fixed cells   {{{icc}}}
Staining cryo-sections  {{{ihc-cryo}}}
Staining paraffin sections  {{{ihc-paraffin}}}
Help


Content parameters

This section describes parameters that govern infobox content.

name Name of the antibody e.g. gamma Tubulin 1 Abcam 12345
antibodytype Type of antibody e.g. mouse monoclonal, lama polyclonal, etc.
uniprotid UNIPROT Database id of the antibody e.g. P23258
xreactive Cross-reactive against: antibody works against proteins of these species; e.g. human and mouse
nonxreactive Not Cross-reactive with: antibody does not recognise proteins of these species; e.g. rat
against Raised Against: type of molecule the antibody was raised against; e.g. peptide or full-length protein
provider-name Commercial Provider or source for this antibody based upon experience.
provider-url Commercial Provider URL: web page related to this antibody.
westernblot Suitable for Western Blotting: Is the antibody suitable for Western Blotting? Possible values: failed, worked, uncertain, untested
ip Immunoprecipitation: as above; does the antibody work in this experiment? Possible values: failed, worked, uncertain, untested
icc Immunocytochemistry: As above; please add the evidence to the main page. Possible values: failed, worked, uncertain, untested
ihc-cryo Immuno-histo-cryo-chemistry: Possible values: failed, worked, uncertain, untested
ihc-paraffin Immuno-histo-paraffin-chemistry: Possible values: failed, worked, uncertain, untested


Using the infobox

Existing antibody pages

If you want to add the infobox to an existing page, copy and paste the code at the top of this page.

Enhancing this template

If you would like to improve on this template, thanks! This is a complicated template so here is some help along the way:

Fixing documentation

If you would like to fix documentation, please be aware that documentation and code is split into two files:

  • Template:Antibody/doc - stores all documentation.
  • Template:Antibody - stores only the code for the template and a small amount of non-included material (category links, transcluded documentation link).

In addition, Template:Antibody/Sample stores the boiler plate that is preloaded into newly created pages and contains some basic documentation on how to fill in the template parameters. It needs to be kept in sync with Template:Antibody/doc.

Infobox parameters

In general:

  • To make this template easy to use, each label in the infobox is linked to documentation on the template parameter(s) it displays. If you add a parameter, please be sure to also add it to the content parameter documentation and link its label to that documentation.

Test case

See if the following pages are still ok, after edited this template.