5 Backward compatibility

ASAM OpenSCENARIO v1.4.0 contains new attributes and enums for semantics which had to be encoded in other attributes in former releases or could not be defined at all. In previous versions of ASAM OpenSCENARIO, the 'name' attribute was used to describe the semantics of a traffic signal phase. Traffic signals now have semantics, which shall be used instead going forward. To stay backwards compatible, the cardinality is set to 0..1.
Lane layers are introduced to support roadworks scenarios with temporary changes to the lanes. A new PreferredLaneLayerAction is added to be able to specify a preferred lane layer for an entity. Default routing has been updated to consider the lane layer. A priority hierarchy is introduced for handling conflicting lane layer values.
Trajectories using Vertex, Clothoid, ClothoidSpline, or ClothoidSplineSegment now allow the definition of motion values with the new Motion class. Longitudinal acceleration and speed values are supported. An overview for resolving conflicting parameters is introduced as well. Polyline trajectories now also contain a new interpolation option. Using the <Interpolation> element overrides the default interpolation behavior. Future releases may introduce further settings to specify the exact interpolation behavior.
The math constant 'pi' is introduced.
VehicleCategory, Role, and PedestrianCategory where unified with other ASAM standards in a joint harmonization project. For more details, see the ASAM TrafficParticipants Specification.
TrafficDistributionEntry now implements the CatalogElement interface. This allows to reuse TrafficDistribution in multiple scenarios.
ASAM OpenSCENARIO v1.4.0 is fully backwards compatible with v1.3.1.

ASAM OpenSCENARIO v1.3.1 does not contain any changes to the schema or concepts and only introduces rules based on the defined concepts of v1.3.0. Therefore, v1.3.1 is fully backwards compatible with v1.3.0.

ASAM OpenSCENARIO v1.3.0 contains several corrections of errors in the XML schema file (.xsd) and is therefore not fully backwards compatible. All these corrections refer to errors where it was allowed to define semantically invalid scenarios (for example, specifying no element instead of exactly one element in an XOR). Therefore, a migration script (.xslt) is provided for converting scenario files from v1.2.0 to v1.3.0. If the migration script issues a warning, then the v1.2.0 scenario was already semantically invalid and would be syntactically invalid in v1.3.0. A scenario for which the migration script issues warnings has to be checked and fixed manually.

ASAM OpenSCENARIO v1.3.0 also contains several corrections of calculation specifications for positions and orientations in the Position sub-classes, which makes this version not fully backward compatible. These changes do not affect the XML schema file, but alter the interpretation and implementation of the standard in simulators. Because the previous calculation specifications would lead to incorrect or unexpected positions / orientations of entities in specific use cases, it is not necessary to implement different calculations for scenarios of version >= v1.3.0 and <= v1.2.0 respectively.

ASAM OpenSCENARIO v1.2.0 is fully backward compatible to v1.1.1 as well as v1.0.0. That means, there is no need for migration.

For all versions, a strict XML schema file without the deprecated elements is provided, so that deprecated elements can be detected and removed or replaced manually.