major
minor
major
minor
The tl:VersionedObjectNaming is a tl:ModelNamingScheme for persistent objects. It has properties for the object's branch and revision to identify historical objects as well.
If the corresponding object is on the Trunk branch and in the Current revision, the properties are set to null. This is undesirable.
For example, recording a `tl:StructuredElement` (which extends `tl:VersionedObjectNaming`) could result in the following action:
{{{#!xml <root config:interface="com.top_logic.element.layout.scripting.StructuredElementNaming$Name"
path="foo"
structure="bar"
>
<branch config:interface=""/>
<revision config:interface=""/>
</root> }}}
A better option would be: {{{#!xml <root config:interface="com.top_logic.element.layout.scripting.StructuredElementNaming$Name"
path="foo"
structure="bar"
/> }}}
The branch and revision should only be set if necessary—that is, if the branch is different from Trunk or the revision is different from Current.
Test
Refactoring.