<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.verzauberte-welten.de/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AClassengine-content-documentation-methods</id>
	<title>MediaWiki:Classengine-content-documentation-methods - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://www.verzauberte-welten.de/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AClassengine-content-documentation-methods"/>
	<link rel="alternate" type="text/html" href="https://www.verzauberte-welten.de/index.php?title=MediaWiki:Classengine-content-documentation-methods&amp;action=history"/>
	<updated>2026-04-06T02:15:04Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Verzauberte Welten e.V.</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://www.verzauberte-welten.de/index.php?title=MediaWiki:Classengine-content-documentation-methods&amp;diff=4434&amp;oldid=prev</id>
		<title>imported&gt;Oetterer: Änderung 5423 von Oetterer (Diskussion) rückgängig gemacht.</title>
		<link rel="alternate" type="text/html" href="https://www.verzauberte-welten.de/index.php?title=MediaWiki:Classengine-content-documentation-methods&amp;diff=4434&amp;oldid=prev"/>
		<updated>2016-04-05T05:03:21Z</updated>

		<summary type="html">&lt;p&gt;Änderung 5423 von &lt;a href=&quot;/Spezial:Beitr%C3%A4ge/Oetterer&quot; title=&quot;Spezial:Beiträge/Oetterer&quot;&gt;Oetterer&lt;/a&gt; (&lt;a href=&quot;/index.php?title=Benutzer_Diskussion:Oetterer&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer Diskussion:Oetterer (Seite nicht vorhanden)&quot;&gt;Diskussion&lt;/a&gt;) rückgängig gemacht.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== Constructor ===&lt;br /&gt;
{{ombox|type=delete|text='''Warning''' When you instantiate an object from another object, you have to supply the ''superhandler''. Otherwise you might get categorized or defaultsorted!}}&lt;br /&gt;
&lt;br /&gt;
{{ombox|type=delete|text='''Warning''' If you want to be able to use [[#initMyself(uid)|initMyself()]], then you have to submit the correct uid-value here. &lt;br /&gt;
The method must be able to identify itself by this value!}}&lt;br /&gt;
&lt;br /&gt;
==== new(uid, superhandler) ====&lt;br /&gt;
Creates a new Object for the class.&lt;br /&gt;
;uid&lt;br /&gt;
:variable, suggested&lt;br /&gt;
:used to identify the object. defaults to mw.title.getCurrentTitle().prefixedText&lt;br /&gt;
;superhandler&lt;br /&gt;
:object of childclass of Foundationclass, optional&lt;br /&gt;
:supply the superhandler, if you instanciate an object within another object. the instanciated object will pass errors and warnings to the superhandler and forgo adding an object category&lt;br /&gt;
;return&lt;br /&gt;
:object, of the class&lt;br /&gt;
&lt;br /&gt;
{{Hidden begin&lt;br /&gt;
|header=&amp;lt;h3&amp;gt;Abstract Methods&amp;lt;/h3&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{clear}}&lt;br /&gt;
{{ombox|type=content|text=&amp;lt;p&amp;gt;'''Warning''' You have to implement (thus overwriting) the following abstract methods in your childclass, otherwise the execution of most of your methods will fail!&lt;br /&gt;
&amp;lt;p&amp;gt;'''Take note:''' [[#FoundationClass:mySfDynamicFieldAttribute(fieldname, attribute, value)|FoundationClass:mySfDynamicFieldAttribute(fieldname, attribute, value)]] is a ''static'' method, the rest must be declared ''public''!}}&lt;br /&gt;
&lt;br /&gt;
==== myArgumentProcessing(coreData) ====&lt;br /&gt;
Performs the individual argument processing in [[#initFromArgs(args)|initFromArgs(args)]] right before inititializing it.&lt;br /&gt;
{{small|&lt;br /&gt;
;coreData&lt;br /&gt;
:table, mandatory&lt;br /&gt;
:the core data of the object. the one to process individually before initialization&lt;br /&gt;
;return&lt;br /&gt;
:table, the new core data array to be used&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== myDataAdjustments(data) ====&lt;br /&gt;
Performs a transformation form data (coming from the datastore) into data used for argument processing. This is called by [[#initFromData(data)|initFromData(data)]] (for smw: after property to parameter conversion)&lt;br /&gt;
and is directly passed to [[#initFromArgs(args)|initFromArgs(args)]] and subsequently plausibility test.&lt;br /&gt;
{{small|&lt;br /&gt;
;data&lt;br /&gt;
:table, mandatory&lt;br /&gt;
:a data table coming directly from the data store&lt;br /&gt;
;return&lt;br /&gt;
:table, the new data table suiteable for argument processing&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== myPlausibilityTest(args) ====&lt;br /&gt;
Performs the individual plausibility tests in [[#initFromArgs(args)|initFromArgs(args)]] before entering the initialization part.&lt;br /&gt;
NOTE: The return value will be ignored. If this finds errors, it must add them to the list of errors via [[#addError(errortext)|addError(errortext)]].&lt;br /&gt;
{{small|&lt;br /&gt;
;args&lt;br /&gt;
:table, mandatory&lt;br /&gt;
:arguments passed to the template to be checked&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether the object is plausible or not.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== myStashAdjustments(stash, storeType) ====&lt;br /&gt;
Can adjusts the stash in [[#storeData()|storeData()]] right before storing it.&lt;br /&gt;
{{small|&lt;br /&gt;
;stash&lt;br /&gt;
:table, mandatory&lt;br /&gt;
:the array of data to be saved (in the form fieldname: value)&lt;br /&gt;
;storeType&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:type of storage method used with the current call (either 'cargo' or 'swm'). In case you use both stores and your stash adjustment differs with each of this methods&lt;br /&gt;
;return&lt;br /&gt;
:table, the new stash&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:mySfDynamicFieldAttribute(fieldname, attribute, value) ====&lt;br /&gt;
For some semantic form fields there are attribute values, that are not static, thus can not be provided at forehand in the [[#Configuration Data|configuration file]].&lt;br /&gt;
This method does the trick to adapt them at runtime shortly before the field is rendered. Essentially: the method checks, if it has a special rule for the pair&lt;br /&gt;
fieldname:attribute and if so, calculates the new value. if not, the old value is returned. Note, that you can completely disable a form field with this when you &lt;br /&gt;
return false on attribute &amp;quot;disable&amp;quot;.&lt;br /&gt;
{{small|&lt;br /&gt;
;fieldname&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:the form field's name, needed to match current paring to an existing special treatment rule&lt;br /&gt;
;attribute&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:the form field's attribute, needed to match current paring to an existing special treatment rule&lt;br /&gt;
;value&lt;br /&gt;
:variable, mandatory&lt;br /&gt;
:the value, that is already provided in the [[#Configuration Data|configuration file]]. this will be adapted by the method, if there is a special rule for the pair fieldname:attribute.&lt;br /&gt;
;return&lt;br /&gt;
:string, the value to be used forthwith (which can be the old one or a freshly calculated)&lt;br /&gt;
}}&lt;br /&gt;
{{Hidden end}}&lt;br /&gt;
&lt;br /&gt;
{{Hidden begin&lt;br /&gt;
|header=&amp;lt;h3&amp;gt;Public methods&amp;lt;/h3&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
==== addCategory(category) ====&lt;br /&gt;
Prepares to add the page to category ''category''. Note: until you actually call [[#render()|render()]] or [[#renderCategories()|renderCategories()]], this will not be implemented&lt;br /&gt;
{{small|&lt;br /&gt;
;category&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:the name of the category, to add the page to&lt;br /&gt;
;return&lt;br /&gt;
:boolean, true&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== addError(errortext) ====&lt;br /&gt;
adds errortext as new error to the list of errors, rendered at a later time.&lt;br /&gt;
{{small|&lt;br /&gt;
;errortext&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:text added to list of errors&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether adding was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== addInfobox() ====&lt;br /&gt;
If no errors and data is present, adds an infobox to the object's output.&lt;br /&gt;
NOTE: This is a shell method and should be overwritten!&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether adding was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== addOutput(content) ====&lt;br /&gt;
Adds something to the page's output. Something can be of type string, int, or table (that needs to have __tostring() implemented)&lt;br /&gt;
{{small|&lt;br /&gt;
;content&lt;br /&gt;
:string, int, or table; mandatory&lt;br /&gt;
:content element that is added to page's output&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether adding was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== addPageBody() ====&lt;br /&gt;
Adds a page body (all content besides the infobox) to the object's output: Errors and Warnings, sample configuration, statistics, ... Of course, only if there is data.&lt;br /&gt;
NOTE: This is a shell method and should be overwritten!&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether adding was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== addWarning(warning) ====&lt;br /&gt;
adds warning as new warning to the list of warnings, to be rendered at a later time (with [[#renderWarnings()|renderWarnings()]]).&lt;br /&gt;
{{small|&lt;br /&gt;
;warning&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:text added to list of warnings&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether adding was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== getCoreData() ====&lt;br /&gt;
Returns the table of coreData&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:table, the value for _private[self].coreData, emtpy if not initialized&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== getUid() ====&lt;br /&gt;
Returns the object's uid, nil if not set&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:variable, the value for _private[self].uid&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== goodToGo() ====&lt;br /&gt;
Is this a proper object (with data and no errors)&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether we are proper initialized&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== initFromArgs(args) ====&lt;br /&gt;
Initializes the object with a data table, containing arguments (template parameter). Does plausibility tests and mangling of input and either fills list of errors or adds input to the object's data.&lt;br /&gt;
{{small|&lt;br /&gt;
;args&lt;br /&gt;
:table, mandatory&lt;br /&gt;
:array of input data in the form &amp;lt;code&amp;gt;{ paramname = argumentdata }&amp;lt;/code&amp;gt;&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether initialization was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== initFromData(data) ====&lt;br /&gt;
Initializes the object with a data table, coming from the datastore. Depending on datastore, that means that the table keys might be different than when using arguments form the template.&lt;br /&gt;
Does plausibility tests and mangling of input and either fills list of errors or adds input to the object's data.&lt;br /&gt;
{{small|&lt;br /&gt;
;data&lt;br /&gt;
:table, mandatory&lt;br /&gt;
:array of input data in the form &amp;lt;code&amp;gt;{ fieldname = argumentdata }&amp;lt;/code&amp;gt;&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether initialization was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== initMyself(uid) ====&lt;br /&gt;
Initializes the object with data from the data store. The method queries for the object's uid in the container defined by Foundationclass.globalConfig.uidFieldName&lt;br /&gt;
(can be set to an infividual name in Module:Foundationclass/globalconfig) in either the class's table (in case of datastore cargo) or for objects that have&lt;br /&gt;
Foundationclass.globalConfig.smwClassProperty set to class.name (in case of datastore smw). The uid was either passed to the method (priority) or submitted to the constructor.&lt;br /&gt;
Does NOT do plausibility tests and mangling of input but assumes the data comes directly from the data store and thus can be trusted (i.e. passes _plausibilityTest())&lt;br /&gt;
{{small|&lt;br /&gt;
;uid&lt;br /&gt;
:string, optional&lt;br /&gt;
:the data, the object can use to identify itself. This field can be omitted, in which case the uid that was submitted to the constructor will be used.&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether initialization was successful or not&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== render() ====&lt;br /&gt;
Renders the object's output&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:string, the textual representation of the object (which can vary, depending on what add*-methods you called before)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== renderCategories() ====&lt;br /&gt;
Renders the object's categories (if any), thus adding them to the output stream and in turn sorting the page in it, &amp;lt;strong&amp;gt;if and only if&amp;lt;/strong&amp;gt; render() is called on the object's page (when self:getUid == {{PAGENAME}}).&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of type mw.html, the wikitext necessary to add the page to the categories&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== renderErrors() ====&lt;br /&gt;
Renders the object's errors (if any)&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of type mw.html, the representation of the list of errors&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== renderWarnings() ====&lt;br /&gt;
Renders the object's warnings (if any)&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of type mw.html, the representation of the list of warnings&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== setSortkey(sortkey) ====&lt;br /&gt;
Sets a default sortkey for this page using the magic word DEFAULTSORT. Only applies, if no superhandler is given.&lt;br /&gt;
{{small|&lt;br /&gt;
;sortkey&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:new sortkey for this page&lt;br /&gt;
;return&lt;br /&gt;
:void&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== setUid(value) ====&lt;br /&gt;
Sets my uid to the given value. normally this should be set by constructor&lt;br /&gt;
{{small|&lt;br /&gt;
;value&lt;br /&gt;
:string/integer, mandatory&lt;br /&gt;
:new valued for my uid&lt;br /&gt;
;return&lt;br /&gt;
:boolean, true/false&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== storeData() ====&lt;br /&gt;
If this was initialized with outside data and there are no errors, stores the arguments in an appropriate data store (smw or cargo).&lt;br /&gt;
In case of cargo, also calls the necessary #cargo_declare parser function if in the template namespace.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:boolean, whether store was successful or not&lt;br /&gt;
}}&lt;br /&gt;
{{Hidden end}}&lt;br /&gt;
&lt;br /&gt;
{{Hidden begin&lt;br /&gt;
|header=&amp;lt;h3&amp;gt;Static methods&amp;lt;/h3&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
==== FoundationClass:categorize() ====&lt;br /&gt;
Placed on one to class's pages (usually not on the class object pages), this calculates the necessary (meta-) category, to put the page in, using pagetitle, subpagetitle, namespace, and so on. Your project's categories (defined in [[Module:Foundationclass/globalconfig]]) are used.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:string, to be put on page, so that it will be categorized&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:categoryPage() ====&lt;br /&gt;
Procudes the output for our corresponding category page. Including the message box and the display of the data structure.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of type mw.html, the representation of the category page's content&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:cargoGenerateTableStructure() ====&lt;br /&gt;
Produces a cargo table declaration array (fieldname =&amp;gt; declaration of field) that can be used in method [[#storeData()|storeData()]] for cargo_declare.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:table, data structure for cargo table&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:explainDataStore() ====&lt;br /&gt;
Produces a textual explanation of the used datastructure (table definition for cargo or property list and types for smw) that can be printed on various dodumentation pages&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:string, a textual explanation&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:formRedlink(target, form, linktext, queryString) ====&lt;br /&gt;
Takes a pagename (''target'') and a formname (''form'') and then generates a link to that page if the page exists. Otherwise it links to the form to create the page. Linktext is target per default, if you do not provide ''linktext''&lt;br /&gt;
{{small|&lt;br /&gt;
;target&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:the pagename (including namespace) to link to&lt;br /&gt;
;form&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:the name of the form (w/o the form namespace!!) to fallback to, if page does not exist&lt;br /&gt;
;linktext&lt;br /&gt;
:string, optional&lt;br /&gt;
:text you want to display instead of ''target''&lt;br /&gt;
;queryString&lt;br /&gt;
:string, optional&lt;br /&gt;
:the query string provided to the form, e.g. {{code snippet|lang=lua|code='Template[page]=' .. mw.title.getCurrentTitle().prefixedText}}&lt;br /&gt;
;return&lt;br /&gt;
:string, the requested link&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:gardeningCategoryPage() ====&lt;br /&gt;
Procudes the output for the class' gardening category page (if any). Includung the message boxes.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of type mw.html, the representation of the gardening category page's content&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:mwLink(object) ====&lt;br /&gt;
Takes ''object'' and links it (adding square brackets). If object is a table, it iterates over it with lua's ''mw.text.listToText()''&lt;br /&gt;
{{small|&lt;br /&gt;
;object&lt;br /&gt;
:mixed&lt;br /&gt;
:object to return as linked string(s)&lt;br /&gt;
;return&lt;br /&gt;
:string, with all elements of ''object'' mw-linked&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:sfGenerateForm() ====&lt;br /&gt;
Generates all output necessary for a form, that can be used to create or maintain an object of this class.&lt;br /&gt;
Note: this output is to be put inside the &amp;amp;lt;includeonly&amp;amp;gt;-tag on the Form page.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of class mw.html, the representation of the form&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:sfGenerateFormEntry() ====&lt;br /&gt;
Generates the &amp;quot;teaser&amp;quot; text shown on the form page when accessing it to create a form (before you type in the name in the input field)&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of class mw.html, the representation of the form teaser&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:sfGenerateFormInfoTag() ====&lt;br /&gt;
Generates a form's info-tag, together with create and edit title and - if applicable - the query string (in case we have createLinkType formlink).&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:string, a semantic form info tag&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:sfGenerateFormLink() ====&lt;br /&gt;
Generates a form input field or a form link that links to the class's form (essentially calls the parser function #forminput or #formlink respectively).&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:string, the input field, that lints to the form&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:sfGenerateFormTable(fieldlist) ====&lt;br /&gt;
Generates a table that can be used in a form inside the {{((}}{for template}{{))}} tag. The table contains all fields, that are named in the table&lt;br /&gt;
parameter ''fieldlist'' (which defaults to _CFG.form.fieldOrder) and that are present in _CFG.parameter..&lt;br /&gt;
All fields with attribute hidden are placed after the closing /table-tag&lt;br /&gt;
{{small|&lt;br /&gt;
;fieldlist&lt;br /&gt;
:table, optional&lt;br /&gt;
:contains a list of fieldnames, to be processed and added to the return node.&lt;br /&gt;
;return&lt;br /&gt;
:object of class mw.html, the representation of the formtable&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:sfInitField(fieldname) ====&lt;br /&gt;
Creates a field object of Class SFfield and initializes it per myConfiguration.parameters[fieldname] if entry is present&lt;br /&gt;
{{small|&lt;br /&gt;
;fieldname&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:contains the name of the field to initialize&lt;br /&gt;
;return&lt;br /&gt;
:object of Class SFfield, the initialized field object. nil if fieldname is not present in parameter-array&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:smwGetProperty2ParameterTranslationTable() ====&lt;br /&gt;
Returns a translation table property-name =&amp;gt; parametername, if data store smw is used.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:table, for every property used in the class the corresponding parameter name&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:templateDocumentation() ====&lt;br /&gt;
Generates almost all the output, necessary to have a good documentation page for the corresponding template. Only missing the&lt;br /&gt;
{{((}}[[:Template:documentation subpage|documentation subpage]]{{))}} call at the top and the includeonly part at the bottom.&lt;br /&gt;
{{small|&lt;br /&gt;
;return&lt;br /&gt;
:object of class mw.html, the representation of the template documentation&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== FoundationClass:usesDataStore(store) ====&lt;br /&gt;
Returs true, if class uses store as datastore. Available stores are 'cargo' and 'smw'&lt;br /&gt;
{{small|&lt;br /&gt;
;store&lt;br /&gt;
:string, mandatory&lt;br /&gt;
:store type to check against&lt;br /&gt;
;return&lt;br /&gt;
:bool, whether store ''store'' is used as data store&lt;br /&gt;
}}&lt;br /&gt;
{{Hidden end}}&lt;/div&gt;</summary>
		<author><name>imported&gt;Oetterer</name></author>
	</entry>
</feed>