<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body dir="auto"><div dir="auto">Good Morning.</div><div dir="auto"><br></div><div dir="auto">A quick error check is to write the output of each function so that you can confirm all is working as it should.  </div><div dir="auto"><br></div><div dir="auto">Your error coukd be a faulty input into the algorithm D, in your case the ressult of A or B or the vector input..</div><div dir="auto"><br></div><div dir="auto">Kirk Schmidt</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div id="composer_signature" dir="auto"><div style="font-size:14px;color:#909090" dir="auto">Sent from my Galaxy</div></div><div dir="auto"><br></div><div><br></div><div align="left" dir="auto" style="font-size:100%;color:#000000"><div>-------- Original message --------</div><div>From: celati Laurent via QGIS-User <qgis-user@lists.osgeo.org> </div><div>Date: 2026-01-14  5:28 a.m.  (GMT-04:00) </div><div>To: qgis-user <qgis-user@lists.osgeo.org> </div><div>Subject: [Qgis-user] QGIS modeler error message : "Unable to evaluate the expression for the extra parameter : no root node!" </div><div><br></div></div><div dir="ltr"><div>Dear all,</div><div><br></div><div>I'm working with QGIS 3.4. This is my first QGIS model. I'm facing to
 an error message during the running of the modeler. If I understand the
 error message, the error seems to occur during the step "D" on my 
little screenshot (below) showing the modeler. For information, I've 
defined a conditional branch. In addition to the screenshot of the 
modeler, I paste also the error message.<div class="gmail-postcell gmail-post-layout--right"><div class="gmail-s-prose gmail-js-post-body">
<p>Modeler explanation :</p>
<ul><li>The output of the algorithm A is a raster clipped with a polygon (an area of interest)</li><li>For the algorithm B (difference vector processing between 2 input 
layers), I've setted a dependency so that it only triggers if a 
condition is met (we can see the conditional branch 'C' on the 
screenshot).</li><li>Algorithm D (clip raster with a polygon) takes as input the raster 
output/result of the algorithm A. And as a mask layer, the vector result
 of algorithm B (difference). For this algorithm D, I've still enable 
the same dependency setted for the algorithm B.</li><li>For algorithm E (raster polygonization),we can see there are 2 
possible raster inputs. The output of the algorithm A and the output of 
the algorithm D. Thus, as input to algorithm E, I set the following 
expression (pre-calculated value):</li></ul></div></div></div><div><pre><code> if (@exclude_forest_zones , @cut_raster_segmentation_by_mask_vector_NO_foret_OUTPUT , @cut_raster_segmentation_by_study_area_vector_OUTPUT)</code></pre><br><img style="margin-right: 0px;" height="431" width="762" alt="image.png" src="cid:com_samsung_android_email_attachmentprovider_1_13049_RAW_1768392247666" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)" name="com_samsung_android_email_attachmentprovider_1_13049_RAW_1768392247666"></div><div><br></div><div><br></div><div>
When I run the modeler, I get an error message that seems to be related to algorithm D. Below is the error message: </div><div><br></div><div>
<pre><code>"Unable to evaluate the expression for the extra parameter to clip the raster segmentation by the NO forest mask: no root node! Execution failed after 8 seconds."</code></pre></div><div><br></div><div><img style="margin-right: 0px;" height="237" width="687" alt="image.png" src="cid:com_samsung_android_email_attachmentprovider_1_13050_RAW_1768392247667" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)" name="com_samsung_android_email_attachmentprovider_1_13050_RAW_1768392247667"></div><div>
For information, I paste below the overview of the algorithm D :

<br></div><div><br><img style="margin-right: 0px;" height="381" width="681" alt="image.png" src="cid:com_samsung_android_email_attachmentprovider_1_13051_RAW_1768392247667" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)" name="com_samsung_android_email_attachmentprovider_1_13051_RAW_1768392247667"><br><br></div><div>
And I paste below for information the overview of the algorithm E :
As you can see on the screenshot, I haven't defined any dependencies for algorithm this algo E. </div><div><br></div><div><img style="margin-right: 0px;" height="297" width="682" alt="image.png" src="cid:com_samsung_android_email_attachmentprovider_1_13052_RAW_1768392247667" onmouseover="imageMousePointerUpdate(true)" onmouseout="imageMousePointerUpdate(false)" name="com_samsung_android_email_attachmentprovider_1_13052_RAW_1768392247667"></div><div><br></div><div>Thanks so much for your valuable help.</div><div><br></div><div><br><br></div><div><br></div><div><br></div><div><br></div></div>
</body></html>