protected NSDictionary createYUIOptions(WOContext context) {
WOComponent component = context.component();
NSMutableArray ajaxOptionsArray = new NSMutableArray();
ajaxOptionsArray.addObject(new AjaxOption("text", AjaxOption.STRING));
ajaxOptionsArray.addObject(new AjaxOption("context", AjaxOption.STRING_OR_ARRAY));
ajaxOptionsArray.addObject(new AjaxOption("container", AjaxOption.SCRIPT));
ajaxOptionsArray.addObject(new AjaxOption("preventoverlap", AjaxOption.BOOLEAN));
ajaxOptionsArray.addObject(new AjaxOption("showdelay", AjaxOption.NUMBER));
ajaxOptionsArray.addObject(new AjaxOption("hidedelay", AjaxOption.NUMBER));
ajaxOptionsArray.addObject(new AjaxOption("autodismissdelay", AjaxOption.NUMBER));
ajaxOptionsArray.addObject(new AjaxOption("constraintoviewport", AjaxOption.BOOLEAN));
ajaxOptionsArray.addObject(new AjaxOption("effect", AjaxOption.SCRIPT));
ajaxOptionsArray.addObject(new AjaxOption("fixedcenter", AjaxOption.SCRIPT));
ajaxOptionsArray.addObject(new AjaxOption("height", AjaxOption.STRING));
ajaxOptionsArray.addObject(new AjaxOption("iframe", AjaxOption.BOOLEAN));
ajaxOptionsArray.addObject(new AjaxOption("monitorresize", AjaxOption.BOOLEAN));
ajaxOptionsArray.addObject(new AjaxOption("visible", AjaxOption.BOOLEAN));
ajaxOptionsArray.addObject(new AjaxOption("width", AjaxOption.STRING));
ajaxOptionsArray.addObject(new AjaxOption("x", AjaxOption.NUMBER));
ajaxOptionsArray.addObject(new AjaxOption("xy", AjaxOption.SCRIPT));
ajaxOptionsArray.addObject(new AjaxOption("y", AjaxOption.NUMBER));
ajaxOptionsArray.addObject(new AjaxOption("zIndex", AjaxOption.NUMBER));
NSMutableDictionary options = AjaxOption.createAjaxOptionsDictionary(ajaxOptionsArray, component, _associations);
if (options.objectForKey("text") == null && hasChildrenElements()) {
WOResponse childrenResponse = WOApplication.application().createResponseInContext(context);
super.appendToResponse(childrenResponse, context);