Clarification for scope of parameters
In the documentation: “The scope of a parameter is the subtree rooted in the element where the ParameterDeclarations is located. That means, if a parameter "ego_speed" is defined at the root of a Maneuver, "ego_speed" may be referenced in every Event, Action and Trigger located in that Maneuver. The parameter shall not be used in other Maneuver instances.”
Question: Does the scope include the element where the ParameterDeclaration is located or is the parameter only available in its subelements? The question is basically: Are the attributes of the including element (Maneuver, Vehicle, …) within the scope or not. If yes, this gets particularly interesting in (dumb) cases like this with a catalog reference where the name is a parameter reference and there is a parameter assignment on this parameter:
<Catalog name="VehicleCatalog">
<Vehicle name="$vName" vehicleCategory="car" mass="1234.5">
<ParameterDeclarations>
<ParameterDeclaration name="vName" parameterType="string" value="car1">
</ParameterDeclarations>
...
<Entities>
<ScenarioObject name="Ego">
<CatalogReference catalogName="VehicleCatalog" entryName="car1">
<ParameterAssignments>
<ParameterAssignment parameterName="vName" value="truck1"
</ParameterAssignments>
</CatalogReference>
</ScenarioObject>
...