tldr: it’s what zarf said.
In more detail, I6 has three types of ‘property’- Attributes
(declared with Attribute
), common properties (declared with Property
) and individual properties (declared within class or object definitions with with
).
I7 just has properties, but under the hood they will be translated into one of these three I6 types.
New properties you declare in I7 will be translated as individual properties declared within class/object definitions, which don’t require a separate declaration line in I6, unless they are either-or properties- in which case they will usually translate as Attributes, requiring a separate declaration line Attribute ...;
which if you want a particular I6 name translation you must provide yourself as an I6 inclusion.
small print there are only a limited number of Attributes available in I6 and if these are exhausted (unlikely except in very large projects or ones using many extensions) either-or properties will be translated to I6 as individual properties instead- something which would need to be dealt with on a case-by-case basis as since Ver 10 in particular, there’s no easy way to tell programmatically whether an either-or I7 property is/will be an Attribute or an individual property… see more detailed discussion here and here