From da6145d03b9860f214e45a9f7bbf89b94547f829 Mon Sep 17 00:00:00 2001
From: Carsten  Rose <carsten.rose@math.uzh.ch>
Date: Fri, 3 Mar 2017 16:28:10 +0100
Subject: [PATCH] CODING.md: Update about form load.

---
 doc/CODING.md | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/doc/CODING.md b/doc/CODING.md
index c53251075..f22598e9f 100644
--- a/doc/CODING.md
+++ b/doc/CODING.md
@@ -30,17 +30,23 @@ LOAD
   * (Report)
     * Process all <number>.[<number.>].sql statements
 
-* Access code variables:     
+* Access variables:     
   * active/valid formname: [$this->store->setVar(SYSTEM_FORM, $formName, STORE_SYSTEM);]
   * SIP: [$this->store->getVar('form', STORE_SIP)]
   * All parameters from active SIP:  [$this->store->getStore(STORE_SIP)]
-  * Check Contstants.php for known Store members: 
+  * Check Contstants.php for known Store *members*.
   
 * In QuickFormQuery.php the whole Form will be copied to `$this->formSpec` and depending on further processing, the 
-  elements are available in `$this->feNative` and `$this->feAction`.
-  * The Form specificaton (table form) will be evaluated direct after loading.
-  * The FormElement specification will be evaluated later on in BuildForm*.php
-
+  elements are available in `$this->feSpecNative` and `$this->feSpecAction`.
+  * The Form specificaton (table form) will be evaluated direct after loading (no `dynamicUpdate`).
+  * The FormElement specification will be evaluated later in BuildForm*.php:
+    * $formSpec, and root elements of $feSpecAction & $feSpecNative will be read in QuickFormQuery.php.
+    * AbstractBuildForm.php/BuildFormBootstrap.php receives a copy during instantiating of that class.
+    * Processing of FormElements in  AbstractBuildForm.php/BuildFormBootstrap.php typically do not change values, 
+      especially there is no evaluation, in $feSpecAction & $feSpecNative. 
+  * *Dynamic Update*: remember, an update(=Form load) is a complete new rendering of the form in that moment. All 
+    values/elements/notes/debug are fresh with the latest form content.  
+  
 * If a form is called without a SIP (form.permitNew='always'), than a SIP is created on the fly (as a 
   parameter in the form).
 * Uniq SIP for mutliple tabs with r=0  
-- 
GitLab