Groups inside shape layers are like shape “sublayers” and as such they also have a “content” property. It has been hidden probably to lighten the ui (less things to expand).
Now why only hide it instead of get completely rid of it ?
Apparently it is so for consistency reasons. The properties inside a layer can be of two types: those that can be added/duplicated/renamed/moved/removed, etc, by the user, and those that cannot. The thing is that After Effects does not mix different kinds of properties inside a given property group. This means that there are also two types of groups:
- groups than cannot accept new properties (the children inside those groups all have a fixed name and cannot be added/removed). Example: “Transform”, “Material Options”, “Layer Styles”,….
- groups that can accept new properties (the children inside those groups can all be added/removed, etc). Example: “Masks”, “Effects”…
Again, no mixing. Therefore everytime you see in the GUI a renamable property at the same level as a non renamable property, you can guess somehow that something has been hidden (the parent group of the renamable property).
In the case of a “Group” inside a shape layer: it has a property called “Transform” (its transform group) that is not renamable, and, at the same level in the gui, all the addable stuff (fill/stroke/etc), but the actual internal stucture is <“Group”> : <“Content”, “Transform”> and the addable stuff is actually children of “Content”.
Note that in the expression, “content” is not a command, it is actually the group called “content”.
If in the text layer you put this expression:
thisComp.layer(“Shape Layer 1”).content(“Ellipse 1”).content.name;
…you’ll get its name (“Contents”).
Finally, there is the same situation for animators and selectors in text layers.
Hopefully, it’s clear (not quite sure). If you are interested, you can find more info on this in the scripting guide (at PropertyBase > propertyType).
Xavier.