Open main menu

Changes

7,854 bytes added ,  00:36, 28 February 2023
no edit summary
<noinclude>
This is the template for all types of Topics Non- Definitional, Topics (Descriptive, or Normative). This template is to be used for all topics/questions the answers to which are definitions, descriptions, or prescriptions (it is used by [[Form:Topic]]).
It should be called in the following format:
<pre>
{{Topic
|Subject= //For first order questions, the subject must be a term registered in the encyclopedia. For higher order questions, the subject can be any lower level non-definitional theory question or theory.|Topic Type={Descriptive, Normative}|Subfield= {Ontology, Dynamics, etc.}|Heritable= {Yes, No}|Inherited From= //the question that this question is inherited from|Question Text Formula= //For heritable questions only.|Question Title Formula= //For heritable questions only.|Question Title= //Ignored for heritable questions.|Question=//For non heritable questions only. For heritable questions, this is available to the editors only to use in cases when the text produced by the formula should be overridden. |Predicate= //Some text or a term registered in the encyclopedia|Object Type= {Boolean, Class, Enumeration, Regular Expression, Text}|Parent TopicObject Value True= //optional. Used only if Object Type=Boolean|Object Value False= //optional. Used only if Object Type=Boolean|Object Class= //optional. Used only if Object Type=Class|Object Enum Values= //optional. Used only if Object Type=Enumeration|Object Regexp= //optional. Used only if Object Type=Regexp|Single Answer Text Formula=|Multiple Answers Text Formula=|Answer Title Formula=
|Description=
|Authors List=
|Formulated Year=
|Academic Events=
|Prehistory=
|History=
|Current View=
|Parent Topic= //This will be deprecated. It will be calculated automatically in an agent-relative way following the current inheritance hierarchy of that agent. For now it is allowed as a backdoor so that it can be assigned manually.|Related Topics=//This will be deprecated. It will be calculated automatically in an agent-relative way following the current inheritance hierarchy of that agent.
|Page Status=
|Editor Notes=
|Sorting Order=
}}
</pre>
Edit the page to see the template text.
 
</noinclude><includeonly><!--
--><!----><!-- set values-->{{#set:<!-- -->Subject={{{Subject|}}}|<!-- -->Topic Type={{{Topic Type|}}}|<!-- -->Subfield={{{Subfield|Dynamics}}}|<!-- //TODO: remove the default when the transition is complete. -->Question Text Formula={{{Question Text Formula|}}}|<!-- -->QuestionTitle Formula={{{QuestionTitle Formula|}}}|<!-- -->Question Title={{PAGENAME}}|<!-- -->Predicate={{{Predicate|}}}|<!-- -->Object Type={{{Object Type|Text}}}|<!-- -->Object Value True={{{Object Value True|Yes}}}|<!-- -->Object Value False={{{Object Value False|No}}}|<!-- -->Object Class={{{Object Class|}}}|<!-- -->Object Enum Values={{{Object Enum Values|}}}|<!-- -->Object Regexp={{{Object Regexp|}}}|<!-- -->Single Answer Text Formula={{{Single Answer Text Formula|}}}|<!-- -->Multiple Answers Text Formula={{{Multiple Answers Text Formula|}}}|<!-- -->Answer Title Formula={{{Answer Title Formula|}}}|<!-- -->Formulated Year={{{Formulated Year|}}}|<!-- -->Page Status={{{Page Status|Stub}}}|<!-- -->Editor Notes={{{Editor Notes|}}}|<!-- -->Sorting Order={{{Sorting Order|10000}}}|<!-- default is 10000 -->Parent Topic={{{Parent Topic|}}}|<!-- this allows for a backdoor to assign parent topics manually -->Authors List={{{Authors List|}}}|<!---->}}<!-- set--><!----><!-- set the order-->{{#vardefine: varSubjectOrder|{{#show: {{{Subject|}}}|?Order|link=none}}|}}<!---->{{#if: {{#var: varSubjectOrder}}<!-- -->|{{#vardefine: varOrder| {{#expr: {{#var: varSubjectOrder}} + 1}} }}<!-- -->|{{#vardefine: varOrder| 1 }}<!-- no subject. Set 1 by default-->}}<!-- if subject order is given-->{{#set:Order={{#var: varOrder}}|}}<!-- --><!-- --><!-- set the inherited from and heritable-->{{#if: {{{Inherited From|}}}<!-- -->|<!-- an inherited question is not itself heritable -->{{#set:Heritable=No|Inherited From={{{Inherited From|}}}|Inherited=Yes}}<!-- -->|<!-- a non-inherited question can be heritable -->{{#set:Heritable={{{Heritable|No}}}|Inherited=No}}<!-- -->}}<!-- if--><!----><!-- set the question text-->{{#if: {{{Question|}}}<!-- -->|<!-- --><!-- the question is given -->{{#vardefine: varQuestion|{{{Question|}}}}}<!-- -->|<!-- --><!-- the question is not given: calculate it from the formula -->{{#vardefine: varQuestion|{{DecodeTextFormula|formula={{{Question Text Formula|}}}|subject={{{Subject|}}}|predicate={{{Predicate|}}}|object={{{Object Class}}}|link=yes}}}}<!-- -->}}<!-- if --><!---->{{#set: Question={{#var: varQuestion}}}}<!----><!----><!-- set the inheritance hierarchy-->{{#set:Subsumes items={{FULLPAGENAME}}}}<!---->{{#arraydefine:varChildrenArray|{{#ask: [[-Subsumes items::<q>[[Parent Topic Type::{{FULLPAGENAME}}]]</q>]]|headers=hide|link=none}}|,|}}<!---->{{#arrayunique:varChildrenArray}}<!---->{{#arrayprint:varChildrenArray||@@@@|{{#set:Subsumes items=@@@@}}|}}<!-- --><!----><!-- have to do it again to include the subsumed elements of the subsumed elements-->{{#arraydefine:varSubsumeArray|{{#ask: [[-Subsumes items::<q>[[Parent Topic::{{FULLPAGENAME}}]]</q>]]|headers=hide|link=none}}|,|}}<!---->{{#arrayunique:varSubsumeArray}}<!---->{{#arrayprint:varSubsumeArray||@@@@|{{#set:Subsumes items=@@@@}}|}}<!-- --><!----><!----><!-- set parent topic. Currently the parent topic and the ensuing hierarchy of Subsumed/Subsumes etc. is community agnostic. --><!-- TODO: moving forward we need to come up with a more intricate way of storing this such that each community can have its own hierarchy. --><!---->{{#if: {{{Inherited From|}}}<!-- -->|<!-- --><!-- Get the properties required to format the title from Inherited From -->{{#vardefine: varTitleFormula| {{#show: {{{Inherited From|}}}|?Question Title Formula|link=none}} }}<!-- -->{{#vardefine: varPredicate| {{#show: {{{Inherited From|}}}|?Predicate|link=none}} }}<!-- -->{{#vardefine: varObject| {{#show: {{{Inherited From|}}}|?Object Class|link=none}} }}<!-- --><!-- --><!-- get the inherited topic's subject -->{{#vardefine: varInheritedSubject| {{#show: {{{Inherited From|}}}|?Subject|link=none}} }}<!-- --><!-- --><!-- Get the list of all the classes that the Subject of the Inherited From subsumes -->{{#arraydefine: arraySubsumesTerms|{{#ask: [[-Subsumes items::{{#var: varInheritedSubject}}]]|link=none}} | , |unique}}<!-- --><!-- --><!-- Get the list of all the parent classes of the Subject of the question -->{{#arraydefine: arrayParentTerms|{{GetPropertyValues|object={{{Subject|}}}|property=Parent Class|link=none}} | , |unique}}<!-- --><!-- --><!-- Get the intersection of the two arrays -->{{#arrayintersect: arrayIntersectTerms|arraySubsumesTerms|arrayParentTerms|}}<!-- --><!-- --><!-- For each item in the intersection array, format the question page title according to the formula taken from Inherited From -->{{#arrayprint: arrayIntersectTerms||varTerm<!-- -->|<!-- -->{{#vardefine: varTitle| {{DecodeTitleFormula|formula={{#var: varTitleFormula}}|subject=varTerm|predicate={{#var: varPredicate}}|object={{#var: varObject}}|}} }}<!-- --><!-- -->{{#set: Parent Topic={{#var: varTitle}}|}}<!-- --><!-- -->}}<!-- arrayprint --><!-- --><!-- also construct an array with links or red links to be displayed at the bottom -->{{#arraydefine: arrayParentPageLinks<!-- -->|{{#arrayprint: arrayIntersectTerms||varTerm<!-- -->|<!-- -->{{#vardefine: varTitle| {{DecodeTitleFormula|formula={{#var: varTitleFormula}}|subject=varTerm|predicate={{#var: varPredicate}}|object={{#var: varObject}}|}} }}<!-- --><!-- --><!-- check if the page exists -->{{#ifexist:{{#var: varTitle}}<!-- -->|<!-- exist: add the link to the page -->[[{{#var: varTitle}}]]<!-- -->|<!-- doesn't exist: add the formlink -->{{#formlink:form=Topic|link text={{#var: varTitle}}|target={{#var: varTitle}}|query string=Topic[Subject]=varTerm&Topic Type[Inherited From]={{{Inherited From|}}}|}}<!-- -->}}<!-- if exists --><!-- -->}}<!-- arrayprint -->| , |unique<!-- -->}}<!-- arraydefine --><!-- -->|<!-- not inherited: still construct an empty array for the use below -->{{#arraydefine: arrayParentPageLinks}}<!-- --><!---->}}<!-- if inherited from--><!-- 
--><!--
--><!-- set the authors
-->{{#arrayunique:topicsArray}}<!--
-->{{#arrayprint:topicsArray||@@@@|{{#set:Has Related Topic=@@@@}}|}}<!--
--><!--
--><!-- set the related theories
-->{{#arraydefine:theoriesArray|{{{Related Theories|}}}|,|}}<!--
-->{{#arrayunique:theoriesArray}}<!--
-->{{#arrayprint:theoriesArray||@@@@|{{#set:Has Related Theory=@@@@}}|}}<!--
--><!--
--><!-- set the academic events
--><!--
--><!-- set Has Accepted Answer and Has No Accepted Answer
-->{{SetTopicHasAcceptedAnswerSetTopicCurrentAnswer|topic={{FULLPAGENAME}}|subfield={{{Subfield|Dynamics}}}|}}<!--
--><!--
--><!-- Calculate completion rates for each major property
--><!--
-->{{#vardefine: varCRDes|{{SetTextPropertyCompletionRate|propertyname=Description|propertyvalue={{{Description|}}}|requiredwordcount=100|returnvalue=true}}|}}<!--
-->{{#vardefine: varCRPre|{{SetTextPropertyCompletionRate|propertyname=Prehistory|propertyvalue={{{Prehistory|}}}|requiredwordcount=200350|returnvalue=true}}|}}<!--
-->{{#vardefine: varCRHst|{{SetTextPropertyCompletionRate|propertyname=History|propertyvalue={{{History|}}}|requiredwordcount=50|returnvalue=true}}|}}<!--
-->{{#vardefine: varCRRel|{{SetTextPropertyCompletionRate|propertyname=Related Topics|propertyvalue={{{Related Topics|}}}|requiredwordcount=1|returnvalue=true}}|}}<!-- one related topic is sufficient
--><!--
--><!-- Now calculate the overall completion rate. 40 35 45 10 5
--><!--
-->{{#ifeq: {{{Page Status|}}}|Editor Approved<!--
--><!--
-->|<!-- not approved: calculate completion rate (90% max)
-->{{#vardefine: varCRtotal| {{#expr: ((4035/100 * {{#var:varCRDes}}) + (3545/100 * {{#var:varCRPre}}) + (10/100 * {{#var:varCRHst}}) + (5/100 * {{#var:varCRRel}}) ) round 0}} }}<!--
--><!--
-->}}<!-- if page status
-->{{#set: CR_Total={{#var:varCRtotal}} }}<!--
--><!--
--> <p>{{{Question|}#var: varQuestion}}</p><!--  -->{{#if: {PrintSectionVideos|page={{FULLPAGENAME}}|section=Description|}}}|<nowiki/>!--
-->{{#if: {{{Description|}}}|<p>{{{Description|}}} </p>}}<!--
--><p>{{PrintTopicSubtitle|topic={{FULLPAGENAME}}|}}&#32;<!---->{{PrintTopicCurrentlyAcceptedInCommunities|topic={{FULLPAGENAME}}|link=all|pretty=yes}}<!---->{{PrintTopicAcceptedTheoriesListPrintTopicAcceptedTheoriesFormulations<!-- -->|topic={{FULLPAGENAME}}<!-- -->|details=no|bullets=no|linebreak=|communitiesfirst=no|groupbycommunitylink=yes}}<!-- -->{{PrintTopicHasNoAcceptedAnswer|topic={{FULLPAGENAME}}|intro=&#32;At the moment, the question has no accepted answer in&#32;|outro=<nowiki>.</nowikip>|link=all|pretty=yes}}<!--
-->{{#if:{{{Prehistory|}}}|<nowiki/>
==PrehistoryBroader History==
<div class="mw-collapsible mw-collapsed">
{{PrintSectionVideos|page={{FULLPAGENAME}}|section=Prehistory}}
{{{Prehistory|}}}
</div>}}
==Scientonomic History=={{PrintSectionVideos|page={{FULLPAGENAME}}|section=History}}
{{{History|}}}
===Acceptance Record===
-->}}<!--
-->
{{#switch: {{{Topic Type|}}} |Normative=If a theory on this normative question is missing, please {{#formlink:form=Normative Theory|link text=click here an answer to add it|query string=Theory[Theory Type]=Normative&Theory[Topic]={{FULLPAGENAME}}|}}. |Descriptive=If a theory on this descriptive question is missing, please {{#formlink:form=Descriptive Theory|link text=click here to add it|query string=Theory[Theory Type]=Descriptive&Theory[Topic]={{FULLPAGENAME}}|}}. |Definitional=If a definition of this term is missing, please {{#formlink:form=Definition|link text=click here to add it|query string=Theory[Theory Type]=Definition&Theory[Topic]={{FULLPAGENAME}}|}}. }}</div><!----></div><!--
-->
===Accepted Theories===
-->
==Current View==
<!---->{{#if: {{{Current View|}}}|<p>{{{Current View|}}}<p>|}}<!-- --><!-- --><!-- print the answers--><!-- --><p>{{PrintTopicAcceptedTheoriesList<!-- -->|topic={{FULLPAGENAME}}<!-- -->|default=There is currently no accepted answer to this question.<!-- -->|detailscommunitiesfirst=yes<!-- -->|bullets=no |linebreakgroupbycommunity=yes |communitiesfirst=yes}}<!-- -->{{#if: {{{Current View|}}}|<nowiki/p><br/!-- --><!-- --><nowiki/!-- print the answer details: description etc.--><!-- -->{{PrintTopicAcceptedTheoriesDetails|topic={Current View|}{FULLPAGENAME}}|}}<!---->
{{PrintTopicOpenQuestionsList
|topic={{FULLPAGENAME}}
}}
==Related Topics==
<!-- construct the manual array-->{{#if:{{{Parent Topic|}}}<!-- -->|This topic is a sub<!-- add to the array --topic of >{{#arraydefine: arrayManual|[[{{{Parent Topic|}}}]]|}}<!-- -->|<!-- define an empty array -->{{#arraydefine: arrayManual}}<!---->}}<!----><!----><!-- create the union of the manual and calculated arrays of parent topics-->{{#arrayunion: arrayMerged|arrayManual|arrayParentPageLinks}}<!----><!---->{{#switch: {{#arraysize: arrayMerged}}<!-- -->|0=<!-- nothing to do -->|<!-- print -->This question is a subquestion of&#32;<!-- -->{{#arrayprint: arrayMerged||@@@@|@@@@|print=pretty}}<!-- -->.|<!-- -->}}<!---->
{{PrintTopicSubtopics
|topic={{FULLPAGENAME}}
|link=all
|bullets=yes
}}<!----><!----><!--add categories --><!---->{{#switch: {{{Topic Type|}}}<!-- -->|Normative=[[Category:Normative Topic]] <!-- -->|Descriptive=[[Category:Descriptive Topic]] <!-- -->|Definitional=[[Category:Definitional Topic]]<!-- -->|{{Note}} Something went wrong and the topic type is undefined. If you see this message, please contact the editors with the details. <!-- -->}}<!----><!--add categories -->{{#switch: {{{Page Status|Stub}}}<!-- -->|Editor Approved=[[Category:Editor Approved Topic Pages]]<!-- -->|Needs Editing=[[Category:Need Editing Topic Pages]] <!-- -->|Stub=[[Category:Stub Topic Pages]]<!---->}}<!----><!---->__NOEDITSECTION__<!---->__NOCACHE__<!----></includeonly>