diff --git a/application/datamodel.application.xml b/application/datamodel.application.xml
index e20a1a95b..8142a0fdc 100644
--- a/application/datamodel.application.xml
+++ b/application/datamodel.application.xml
@@ -849,5 +849,222 @@ Call $this->AddInitialAttributeFlags($sAttCode, $iFlags) for all the initial att
+
+
+ Dashlet
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{query.selected_class}}
+
+
+
+
+
+ bars
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{query.selected_class}}
+
+
+
+
+ {{aggregation_function.value != 'count'}}
+
+
+
+
+ {{query.selected_class}}
+ numeric
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{order_by.value = 'function'}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ desc
+
+
+
+
+ Dashlet
+
+
+
+
+ bizmodel
+
+
+
+
+
+
+
+ Dashlet
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dashlet
+
+
+
+
+
+
+
+
+
+
+
diff --git a/core/datamodel.core.xml b/core/datamodel.core.xml
index e2712615c..872b4cef8 100644
--- a/core/datamodel.core.xml
+++ b/core/datamodel.core.xml
@@ -1185,169 +1185,5 @@
-
-
- Dashlet
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{query.selected_class}}
-
-
-
-
-
- bars
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{query.selected_class}}
-
-
-
-
- {{aggregation_function.value != 'count'}}
-
-
-
-
- {{query.selected_class}}
- numeric
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{order_by.value = 'function'}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- desc
-
-
-
-
- Dashlet
-
-
-
-
- bizmodel
-
-
-
-
-
-
diff --git a/lib/composer/autoload_classmap.php b/lib/composer/autoload_classmap.php
index fbce8a65a..cbc2b2c08 100644
--- a/lib/composer/autoload_classmap.php
+++ b/lib/composer/autoload_classmap.php
@@ -553,6 +553,9 @@ return array(
'Combodo\\iTop\\PropertyTree\\AbstractProperty' => $baseDir . '/sources/PropertyTree/AbstractProperty.php',
'Combodo\\iTop\\PropertyTree\\CollectionOfTrees' => $baseDir . '/sources/PropertyTree/CollectionOfTrees.php',
'Combodo\\iTop\\PropertyTree\\CollectionOfValues' => $baseDir . '/sources/PropertyTree/CollectionOfValues.php',
+ 'Combodo\\iTop\\PropertyTree\\CollectionType\\AbstractCollectionType' => $baseDir . '/sources/PropertyTree/CollectionType/AbstractCollectionType.php',
+ 'Combodo\\iTop\\PropertyTree\\CollectionType\\CollectionTypeCollection' => $baseDir . '/sources/PropertyTree/CollectionType/CollectionTypeCollection.php',
+ 'Combodo\\iTop\\PropertyTree\\CollectionType\\CollectionTypeFactory' => $baseDir . '/sources/PropertyTree/CollectionType/CollectionTypeFactory.php',
'Combodo\\iTop\\PropertyTree\\Property' => $baseDir . '/sources/PropertyTree/Property.php',
'Combodo\\iTop\\PropertyTree\\PropertyTree' => $baseDir . '/sources/PropertyTree/PropertyTree.php',
'Combodo\\iTop\\PropertyTree\\PropertyTreeDesign' => $baseDir . '/sources/PropertyTree/PropertyTreeDesign.php',
@@ -560,6 +563,7 @@ return array(
'Combodo\\iTop\\PropertyTree\\PropertyTreeFactory' => $baseDir . '/sources/PropertyTree/PropertyTreeFactory.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\AbstractValueType' => $baseDir . '/sources/PropertyTree/ValueType/AbstractValueType.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeAggregateFunction' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeAggregateFunction.php',
+ 'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeBoolean' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeBoolean.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeChoice' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeChoice.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeChoiceFromInput' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeChoiceFromInput.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeClass' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeClass.php',
@@ -567,11 +571,13 @@ return array(
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeClassAttributeGroupBy' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeClassAttributeGroupBy.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeClassAttributeValue' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeClassAttributeValue.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeFactory' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeFactory.php',
+ 'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeIcon' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeIcon.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeInteger' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeInteger.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeLabel' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeLabel.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeOQL' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeOQL.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeProfileName' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeProfileName.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeString' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeString.php',
+ 'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeText' => $baseDir . '/sources/PropertyTree/ValueType/ValueTypeText.php',
'Combodo\\iTop\\Renderer\\BlockRenderer' => $baseDir . '/sources/Renderer/BlockRenderer.php',
'Combodo\\iTop\\Renderer\\Bootstrap\\BsFieldRendererMappings' => $baseDir . '/sources/Renderer/Bootstrap/BsFieldRendererMappings.php',
'Combodo\\iTop\\Renderer\\Bootstrap\\BsFormRenderer' => $baseDir . '/sources/Renderer/Bootstrap/BsFormRenderer.php',
diff --git a/lib/composer/autoload_static.php b/lib/composer/autoload_static.php
index ce5699a0f..6d6bf00d0 100644
--- a/lib/composer/autoload_static.php
+++ b/lib/composer/autoload_static.php
@@ -939,6 +939,9 @@ class ComposerStaticInit7f81b4a2a468a061c306af5e447a9a9f
'Combodo\\iTop\\PropertyTree\\AbstractProperty' => __DIR__ . '/../..' . '/sources/PropertyTree/AbstractProperty.php',
'Combodo\\iTop\\PropertyTree\\CollectionOfTrees' => __DIR__ . '/../..' . '/sources/PropertyTree/CollectionOfTrees.php',
'Combodo\\iTop\\PropertyTree\\CollectionOfValues' => __DIR__ . '/../..' . '/sources/PropertyTree/CollectionOfValues.php',
+ 'Combodo\\iTop\\PropertyTree\\CollectionType\\AbstractCollectionType' => __DIR__ . '/../..' . '/sources/PropertyTree/CollectionType/AbstractCollectionType.php',
+ 'Combodo\\iTop\\PropertyTree\\CollectionType\\CollectionTypeCollection' => __DIR__ . '/../..' . '/sources/PropertyTree/CollectionType/CollectionTypeCollection.php',
+ 'Combodo\\iTop\\PropertyTree\\CollectionType\\CollectionTypeFactory' => __DIR__ . '/../..' . '/sources/PropertyTree/CollectionType/CollectionTypeFactory.php',
'Combodo\\iTop\\PropertyTree\\Property' => __DIR__ . '/../..' . '/sources/PropertyTree/Property.php',
'Combodo\\iTop\\PropertyTree\\PropertyTree' => __DIR__ . '/../..' . '/sources/PropertyTree/PropertyTree.php',
'Combodo\\iTop\\PropertyTree\\PropertyTreeDesign' => __DIR__ . '/../..' . '/sources/PropertyTree/PropertyTreeDesign.php',
@@ -946,6 +949,7 @@ class ComposerStaticInit7f81b4a2a468a061c306af5e447a9a9f
'Combodo\\iTop\\PropertyTree\\PropertyTreeFactory' => __DIR__ . '/../..' . '/sources/PropertyTree/PropertyTreeFactory.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\AbstractValueType' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/AbstractValueType.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeAggregateFunction' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeAggregateFunction.php',
+ 'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeBoolean' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeBoolean.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeChoice' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeChoice.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeChoiceFromInput' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeChoiceFromInput.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeClass' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeClass.php',
@@ -953,11 +957,13 @@ class ComposerStaticInit7f81b4a2a468a061c306af5e447a9a9f
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeClassAttributeGroupBy' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeClassAttributeGroupBy.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeClassAttributeValue' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeClassAttributeValue.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeFactory' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeFactory.php',
+ 'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeIcon' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeIcon.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeInteger' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeInteger.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeLabel' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeLabel.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeOQL' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeOQL.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeProfileName' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeProfileName.php',
'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeString' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeString.php',
+ 'Combodo\\iTop\\PropertyTree\\ValueType\\ValueTypeText' => __DIR__ . '/../..' . '/sources/PropertyTree/ValueType/ValueTypeText.php',
'Combodo\\iTop\\Renderer\\BlockRenderer' => __DIR__ . '/../..' . '/sources/Renderer/BlockRenderer.php',
'Combodo\\iTop\\Renderer\\Bootstrap\\BsFieldRendererMappings' => __DIR__ . '/../..' . '/sources/Renderer/Bootstrap/BsFieldRendererMappings.php',
'Combodo\\iTop\\Renderer\\Bootstrap\\BsFormRenderer' => __DIR__ . '/../..' . '/sources/Renderer/Bootstrap/BsFormRenderer.php',
diff --git a/sources/Forms/Block/Base/CollectionBlock.php b/sources/Forms/Block/Base/CollectionBlock.php
index 8c3f60564..576d10ffb 100644
--- a/sources/Forms/Block/Base/CollectionBlock.php
+++ b/sources/Forms/Block/Base/CollectionBlock.php
@@ -11,6 +11,8 @@ use Combodo\iTop\Forms\Block\AbstractFormBlock;
use Combodo\iTop\Forms\Block\AbstractTypeFormBlock;
use Combodo\iTop\Forms\FormType\Base\CollectionFormType;
use Combodo\iTop\Forms\IO\Format\ClassIOFormat;
+use Combodo\iTop\Forms\IO\Format\IntegerIOFormat;
+use Combodo\iTop\Forms\IO\Format\NumberIOFormat;
use Combodo\iTop\Forms\Register\IORegister;
use Combodo\iTop\Forms\Register\OptionsRegister;
use Combodo\iTop\Forms\Register\RegisterException;
@@ -23,10 +25,8 @@ use Combodo\iTop\Forms\Register\RegisterException;
*/
class CollectionBlock extends AbstractTypeFormBlock
{
- // Inputs
- public const INPUT_CLASS_NAME = 'class';
-
private AbstractTypeFormBlock $oPrototypeBlock;
+ public const OUTPUT_COUNT = 'count';
/** @inheritdoc */
public function GetFormType(): string
@@ -53,7 +53,7 @@ class CollectionBlock extends AbstractTypeFormBlock
protected function RegisterIO(IORegister $oIORegister): void
{
parent::RegisterIO($oIORegister);
- $oIORegister->AddInput(self::INPUT_CLASS_NAME, ClassIOFormat::class);
+ $oIORegister->AddOutput(self::OUTPUT_COUNT, IntegerIOFormat::class);
}
/** @inheritdoc */
diff --git a/sources/Forms/Block/DataModel/AttributeChoiceFormBlock.php b/sources/Forms/Block/DataModel/AttributeChoiceFormBlock.php
index f6f2100e0..5edf03482 100644
--- a/sources/Forms/Block/DataModel/AttributeChoiceFormBlock.php
+++ b/sources/Forms/Block/DataModel/AttributeChoiceFormBlock.php
@@ -104,7 +104,7 @@ class AttributeChoiceFormBlock extends ChoiceFormBlock
}
break;
- case 'group_by':
+ case 'groupable':
$aForbiddenAttType = [
'AttributeLinkedSet',
'AttributeFriendlyName',
diff --git a/sources/PropertyTree/AbstractProperty.php b/sources/PropertyTree/AbstractProperty.php
index a03cfbddf..5baf0718a 100644
--- a/sources/PropertyTree/AbstractProperty.php
+++ b/sources/PropertyTree/AbstractProperty.php
@@ -9,7 +9,6 @@ namespace Combodo\iTop\PropertyTree;
use Combodo\iTop\DesignElement;
use Combodo\iTop\PropertyTree\ValueType\AbstractValueType;
-use utils;
/**
* @since 3.3.0
diff --git a/sources/PropertyTree/CollectionOfTrees.php b/sources/PropertyTree/CollectionOfTrees.php
index 7974fe838..26fa3970f 100644
--- a/sources/PropertyTree/CollectionOfTrees.php
+++ b/sources/PropertyTree/CollectionOfTrees.php
@@ -9,6 +9,10 @@ namespace Combodo\iTop\PropertyTree;
use Combodo\iTop\DesignElement;
use Combodo\iTop\Forms\Block\Base\CollectionBlock;
+use Combodo\iTop\PropertyTree\CollectionType\AbstractCollectionType;
+use Combodo\iTop\PropertyTree\CollectionType\CollectionTypeFactory;
+use Combodo\iTop\PropertyTree\ValueType\AbstractValueType;
+use Combodo\iTop\PropertyTree\ValueType\ValueTypeFactory;
/**
* @since 3.3.0
@@ -16,6 +20,7 @@ use Combodo\iTop\Forms\Block\Base\CollectionBlock;
class CollectionOfTrees extends AbstractProperty
{
protected ?string $sButtonLabel;
+ protected ?AbstractCollectionType $oCollectionType;
/**
* @inheritDoc
@@ -27,6 +32,13 @@ class CollectionOfTrees extends AbstractProperty
$this->sButtonLabel = $oDomNode->GetChildText('button-label');
+ $oCollectionTypeNode = $oDomNode->GetOptionalElement('collection-type');
+ if ($oCollectionTypeNode) {
+ $this->oCollectionType = CollectionTypeFactory::GetInstance()->CreateCollectionTypeFromDomNode($oCollectionTypeNode);
+ } else {
+ throw new PropertyTreeException("Node: {$this->sId}, missing collection-type in node specification");
+ }
+
// read child properties
foreach ($oDomNode->GetUniqueElement('prototype')->childNodes as $oNode) {
if ($oNode instanceof DesignElement) {
diff --git a/sources/PropertyTree/CollectionType/AbstractCollectionType.php b/sources/PropertyTree/CollectionType/AbstractCollectionType.php
new file mode 100644
index 000000000..511367230
--- /dev/null
+++ b/sources/PropertyTree/CollectionType/AbstractCollectionType.php
@@ -0,0 +1,34 @@
+GetFormBlockClass();
+ $oBlockNode = new $sBlockNodeClass('foo');
+ foreach ($oBlockNode->GetInputs() as $oInput) {
+ $sInputName = $oInput->GetName();
+ $this->aInputs[$sInputName] = $oInput;
+ $sInputValue = $oDomNode->GetChildText($sInputName);
+ if (utils::IsNotNullOrEmptyString($sInputValue)) {
+ $this->aInputValues[$sInputName] = $sInputValue;
+ }
+ }
+ foreach ($oBlockNode->GetOutputs() as $oOutput) {
+ $this->aOutputs[] = $oOutput->GetName();
+ }
+ }
+
+}
diff --git a/sources/PropertyTree/CollectionType/CollectionTypeCollection.php b/sources/PropertyTree/CollectionType/CollectionTypeCollection.php
new file mode 100644
index 000000000..17ed7401b
--- /dev/null
+++ b/sources/PropertyTree/CollectionType/CollectionTypeCollection.php
@@ -0,0 +1,18 @@
+getAttribute('xsi:type');
+
+ if (is_a($sNodeType, AbstractCollectionType::class, true)) {
+ $oNode = new $sNodeType();
+ $oNode->InitFromDomNode($oDomNode);
+
+ return $oNode;
+ }
+
+ throw new PropertyTreeException('Unknown collection-type node class: '.json_encode($sNodeType));
+ }
+
+}
diff --git a/sources/PropertyTree/PropertyTreeDesign.php b/sources/PropertyTree/PropertyTreeDesign.php
index 0c0576d36..3e8cc917d 100644
--- a/sources/PropertyTree/PropertyTreeDesign.php
+++ b/sources/PropertyTree/PropertyTreeDesign.php
@@ -9,6 +9,7 @@ namespace Combodo\iTop\PropertyTree;
use Combodo\iTop\DesignDocument;
use Exception;
+use ReturnTypeWillChange;
use utils;
class PropertyTreeDesign extends DesignDocument
@@ -70,7 +71,7 @@ class PropertyTreeDesign extends DesignDocument
* @return int
*/
// Return type union is not supported by PHP 7.4, we can remove the following PHP attribute and add the return type once iTop min PHP version is PHP 8.0+
- #[\ReturnTypeWillChange]
+ #[ReturnTypeWillChange]
public function save($filename, $options = null)
{
$this->documentElement->setAttribute('xsi:noNamespaceSchemaLocation', 'https://www.combodo.com/itop-schema/'.ITOP_DESIGN_LATEST_VERSION);
diff --git a/sources/PropertyTree/PropertyTreeException.php b/sources/PropertyTree/PropertyTreeException.php
index c7132cd06..2f6c164d0 100644
--- a/sources/PropertyTree/PropertyTreeException.php
+++ b/sources/PropertyTree/PropertyTreeException.php
@@ -7,6 +7,8 @@
namespace Combodo\iTop\PropertyTree;
-class PropertyTreeException extends \Exception
+use Exception;
+
+class PropertyTreeException extends Exception
{
}
diff --git a/sources/PropertyTree/PropertyTreeFactory.php b/sources/PropertyTree/PropertyTreeFactory.php
index fff06f9e8..e00779d26 100644
--- a/sources/PropertyTree/PropertyTreeFactory.php
+++ b/sources/PropertyTree/PropertyTreeFactory.php
@@ -9,7 +9,6 @@ namespace Combodo\iTop\PropertyTree;
use Combodo\iTop\DesignDocument;
use Combodo\iTop\DesignElement;
-use utils;
class PropertyTreeFactory
{
diff --git a/sources/PropertyTree/ValueType/ValueTypeBoolean.php b/sources/PropertyTree/ValueType/ValueTypeBoolean.php
new file mode 100644
index 000000000..01662f936
--- /dev/null
+++ b/sources/PropertyTree/ValueType/ValueTypeBoolean.php
@@ -0,0 +1,19 @@
+
-
+
-
+
test
@@ -115,12 +115,12 @@ PHP,
-
+
-
+
@@ -133,48 +133,48 @@ PHP,
-
+
test
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -257,15 +257,16 @@ PHP,
UI:AddSubTree
+
-
+
-
+
@@ -309,7 +310,7 @@ PHP,
-
+
Contact
Test
@@ -338,7 +339,7 @@ PHP,
-
+
{{CONCAT("'", '"')}}
'Class' and "Attribute"
Test
@@ -373,13 +374,13 @@ PHP,
-
+
test
-
+
{{class_property.text}}
@@ -413,13 +414,13 @@ PHP,
-
+
test
-
+
{{IF(class_property.value = '', 'Person', class_property.value)}}
@@ -458,13 +459,13 @@ PHP,
-
+
{{source_property.text != 'count'}}
-
+
@@ -500,18 +501,18 @@ PHP,
-
+
-
+
{{IF(source_a_property.text != '', source_a_property.text, source_b_property.text)}}
-
+
@@ -551,7 +552,7 @@ PHP,
-
+
addon/authentication,grant_by_profile,silo
@@ -569,9 +570,9 @@ class FormFor__ClassCategory extends Combodo\iTop\Forms\Block\Base\FormBlock
\Dict::S('Class:UserExternal') => 'UserExternal',
\Dict::S('Class:UserLDAP') => 'UserLDAP',
\Dict::S('Class:UserLocal') => 'UserLocal',
- \Dict::S('Class:AuditRule') => 'AuditRule',
\Dict::S('Class:AuditCategory') => 'AuditCategory',
\Dict::S('Class:AuditDomain') => 'AuditDomain',
+ \Dict::S('Class:AuditRule') => 'AuditRule',
\Dict::S('Class:QueryOQL') => 'QueryOQL',
\Dict::S('Class:ActionEmail') => 'ActionEmail',
\Dict::S('Class:TriggerOnPortalUpdate') => 'TriggerOnPortalUpdate',
@@ -651,7 +652,7 @@ PHP,
{{source_property.text == 'count'}}
-
+
@@ -669,7 +670,7 @@ XML,
{{source_property.text = 'count'}}
-
+
@@ -686,13 +687,13 @@ XML,
-
+
{{source_property.text_output != 'count'}}
-
+
@@ -709,13 +710,13 @@ XML,
-
+
{{source_property != 'count'}}
-
+