             new UIComponentAccProps(component);
     }
     
+    /**
+     *  @private
+     *  Determines whether a component should avoid producing MSAA information
+     *  directly.  Components that are represented otherwise, such as
+     *  a form field's Required Field indicator (which causes "Required field"
+     *  to be included in the field's accessible name) should be made silent
+     *  in this way.
+     *
+     *  @param component The component to check.
+     *
+     *  @return true if this component should be silent.
+     */
+    mx_internal static function componentShouldBeSilent(component:UIComponent):Boolean
+    {
+        // All tests below require Group to exist and to be under a FormItem.
+        var groupClass:Class = Class(AccImpl.getDefinition(
+            "spark.components.Group", component.moduleFactory
+        ));
+        if (!groupClass)
+            return false;
+        var formItem:UIComponent = AccImpl.findMatchingAncestor(component, AccImpl.isFormItem);
+        if (!formItem)
+            return false;
+
+        // This catches labels for FormItem fields,
+        // and also one object related to the Required Field indicator.
+        // TODO:  We might want to silence all Group components under a FormItem,
+        // but this theory remains to be tested and so is not implemented here.
+        // component.parent should be a FormItem skin (possibly a custom one),
+        // so the parent of that should be the FormItem.
+        // The try/catch block prevents an RTE if
+        // component.parent.parent doesn't exist.
+        try
+        {
+            if (component is groupClass
+            && component.parent.parent === formItem)
+                return true;
+        }
+        catch (e:Error)
+        {
+        }
+
+        // This catches the Required Field graphic itself.
+        // Sought structure: Image in Group in skin in FormItem.
+        var imageClass:Class = Class(AccImpl.getDefinition(
+            "spark.components.Image", component.moduleFactory
+        ));
+        if (!imageClass)
+            return false;
+        try
+        {
+        if (component is imageClass && component.parent is groupClass
+        && component.parent.parent.parent === formItem)
+            return true;
+        }
+        catch (e:Error)
+        {
+        }
+
+        return false;
+    }
+
     //--------------------------------------------------------------------------
     //
     //  Constructor

                }

                Accessibility.updateProperties();
				break;
            }

            case "toolTipChanged":

    //--------------------------------------------------------------------------

    /**
     *  Enables accessibility in the UIComponent class.
     * 
     *  <p>This method is called by application startup code
     *  that is autogenerated by the MXML compiler.
     *  Afterwards, when instances of UIComponent are initialized,
     *  their <code>accessibilityProperties</code> property
     *  will be set to an instance of this class.</p>
     *  
     *  @langversion 3.0
     *  @playerversion Flash 9
