+ AccessibleStateSet *retval;
+ Accessibility_StateSet corba_stateset;
+ Accessibility_StateSeq *corba_seq;
+
+ cspi_return_val_if_fail (obj != NULL, NULL);
+
+ corba_stateset = Accessibility_Accessible_getState (
+ CSPI_OBJREF (obj), cspi_ev ());
+ cspi_return_val_if_ev ("getState", NULL);
+
+ cspi_return_val_if_fail (corba_stateset != CORBA_OBJECT_NIL, NULL);
+ cspi_return_val_if_fail (cspi_ping (corba_stateset), NULL);
+ corba_seq = Accessibility_StateSet_getStates (corba_stateset, cspi_ev ());
+ cspi_return_val_if_ev ("getState", NULL);
+
+ retval = spi_state_set_cache_new (corba_seq);
+
+ CORBA_free (corba_seq);
+ cspi_release_unref (corba_stateset);
+
+ return retval;
+}
+
+/**
+ * Accessible_getAttributes:
+ * @obj: The #Accessible being queried.
+ *
+ * Get the #AttributeSet representing any assigned
+ * name-value pair attributes or annotations for this object.
+ * For typographic, textual, or textually-semantic attributes, see
+ * AccessibleText_getAttributes instead.
+ *
+ * Returns: The name-value-pair attributes assigned to this object.
+ */
+AccessibleAttributeSet *
+Accessible_getAttributes (Accessible *obj)
+{
+ AccessibleAttributeSet *retval;
+ Accessibility_AttributeSet *corba_seq;
+
+ cspi_return_val_if_fail (obj != NULL, NULL);
+
+ corba_seq = Accessibility_Accessible_getAttributes (
+ CSPI_OBJREF (obj), cspi_ev ());
+ cspi_return_val_if_ev ("getAttributes", NULL);
+
+ retval = cspi_attribute_set_from_sequence (corba_seq);
+ CORBA_free (corba_seq);
+
+ return NULL;
+}
+
+/**
+ * Accessible_getHostApplication:
+ * @obj: The #Accessible being queried.
+ *
+ * Get the containing #AccessibleApplication for an object.
+ *
+ * Returns: the containing AccessibleApplication instance for this object.
+ */
+AccessibleApplication *
+Accessible_getHostApplication (Accessible *obj)
+{
+ AccessibleApplication *retval;
+
+ cspi_return_val_if_fail (obj != NULL, NULL);
+
+ retval = Accessible_getApplication (cspi_object_add (
+ Accessibility_Accessible_getApplication (CSPI_OBJREF (obj),
+ cspi_ev ())));
+ cspi_return_val_if_ev ("getApplication", NULL);
+
+ return retval;