rhinoObject.Attributes.GetUserString() doesn't work for hidden objects

Is it intended behavior?
Seems a bit counterintuitive to me

Sorry my bad,
I used iteration like this

foreach (var obj in Rhino.RhinoDoc.ActiveDoc.Objects)
{
    var id = obj.Attributes.GetUserString("id");
    ...
}

Appears, it doesn’t iterate through hidden objects.
I had to implicitly state that I want to include them:

var settings = new Rhino.DocObjects.ObjectEnumeratorSettings()
{
    HiddenObjects = true
};
var objs = Rhino.RhinoDoc.ActiveDoc.Objects.GetObjectList(settings);
foreach (var obj in objs)
{
    var id = obj.Attributes.GetUserString("id");
    ...
}