<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSAccessibilityElementProtocol",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(pl)NSAccessibilityElement"
  },
  "title" : "NSAccessibilityElementProtocol"
}
-->

# NSAccessibilityElementProtocol

A role-based protocol that declares the minimum interface necessary to interact with an assistive app.

```
protocol NSAccessibilityElementProtocol : NSObjectProtocol
```

## Overview

This protocol provides the base behavior for more specific, role-based accessibility protocols. In general, your user interface elements shouldn’t adopt this protocol. They should adopt a more specific, role-based protocol instead. See [Custom Controls](/documentation/AppKit/custom-controls).

> Explicit Implementation Required:
> Any class that adopts this protocol must implement all of its methods, and the required methods of any protocol it inherits from. The compiler may require you to override some methods that your ancestors have already implemented. Simply follow the compiler’s warnings, and reimplement these methods as necessary.

## Topics

### Supporting Accessibility

[`-  accessibilityFrame`](/documentation/AppKit/NSAccessibilityElementProtocol/accessibilityFrame())

Returns the accessibility element’s frame in screen coordinates.

[`-  accessibilityIdentifier`](/documentation/AppKit/NSAccessibilityElementProtocol/accessibilityIdentifier())

Returns the accessibility element’s identity.

[`-  accessibilityParent`](/documentation/AppKit/NSAccessibilityElementProtocol/accessibilityParent())

Returns the accessibility element’s parent in the accessibility hierarchy.

[`-  isAccessibilityFocused`](/documentation/AppKit/NSAccessibilityElementProtocol/isAccessibilityFocused())

Returns a Boolean value that indicates whether the accessibility element has the keyboard focus.

## Relationships

### Conforming Types

[`NSCell`](/documentation/AppKit/NSCell)

[`NSRuleEditor`](/documentation/AppKit/NSRuleEditor)

[`NSComboBoxCell`](/documentation/AppKit/NSComboBoxCell)

[`NSView`](/documentation/AppKit/NSView)

[`NSClipView`](/documentation/AppKit/NSClipView)

[`NSStepperCell`](/documentation/AppKit/NSStepperCell)

[`NSScrubberImageItemView`](/documentation/AppKit/NSScrubberImageItemView)

[`NSScrubberItemView`](/documentation/AppKit/NSScrubberItemView)

[`NSBrowserCell`](/documentation/AppKit/NSBrowserCell)

[`NSImageView`](/documentation/AppKit/NSImageView)

[`NSLevelIndicatorCell`](/documentation/AppKit/NSLevelIndicatorCell)

[`NSLevelIndicator`](/documentation/AppKit/NSLevelIndicator)

[`NSScrubberTextItemView`](/documentation/AppKit/NSScrubberTextItemView)

[`NSTextInsertionIndicator`](/documentation/AppKit/NSTextInsertionIndicator)

[`NSProgressIndicator`](/documentation/AppKit/NSProgressIndicator)

[`NSSplitView`](/documentation/AppKit/NSSplitView)

[`NSBox`](/documentation/AppKit/NSBox)

[`NSPathControl`](/documentation/AppKit/NSPathControl)

[`NSTabView`](/documentation/AppKit/NSTabView)

[`NSBrowser`](/documentation/AppKit/NSBrowser)

[`NSSliderAccessory`](/documentation/AppKit/NSSliderAccessory)

[`NSComboBox`](/documentation/AppKit/NSComboBox)

[`NSPredicateEditor`](/documentation/AppKit/NSPredicateEditor)

[`NSScroller`](/documentation/AppKit/NSScroller)

[`NSTableView`](/documentation/AppKit/NSTableView)

[`NSTextView`](/documentation/AppKit/NSTextView)

[`NSControl`](/documentation/AppKit/NSControl)

[`NSTokenField`](/documentation/AppKit/NSTokenField)

[`NSTextAttachmentCell-swift.class`](/documentation/AppKit/NSTextAttachmentCell-swift.class)

[`NSButtonCell`](/documentation/AppKit/NSButtonCell)

[`NSSecureTextFieldCell`](/documentation/AppKit/NSSecureTextFieldCell)

[`NSTableCellView`](/documentation/AppKit/NSTableCellView)

[`NSSegmentedCell`](/documentation/AppKit/NSSegmentedCell)

[`NSTableHeaderView`](/documentation/AppKit/NSTableHeaderView)

[`NSStepper`](/documentation/AppKit/NSStepper)

[`NSColorPanel`](/documentation/AppKit/NSColorPanel)

[`NSTableHeaderCell`](/documentation/AppKit/NSTableHeaderCell)

[`NSDatePicker`](/documentation/AppKit/NSDatePicker)

[`NSOpenGLView`](/documentation/AppKit/NSOpenGLView)

[`NSRulerView`](/documentation/AppKit/NSRulerView)

[`NSApplication`](/documentation/AppKit/NSApplication)

[`NSFormCell`](/documentation/AppKit/NSFormCell)

[`NSTableRowView`](/documentation/AppKit/NSTableRowView)

[`NSColorWell`](/documentation/AppKit/NSColorWell)

[`NSGlassEffectContainerView`](/documentation/AppKit/NSGlassEffectContainerView)

[`NSSearchFieldCell`](/documentation/AppKit/NSSearchFieldCell)

[`NSImageCell`](/documentation/AppKit/NSImageCell)

[`NSScrollView`](/documentation/AppKit/NSScrollView)

[`NSSlider`](/documentation/AppKit/NSSlider)

[`NSSliderCell`](/documentation/AppKit/NSSliderCell)

[`NSSegmentedControl`](/documentation/AppKit/NSSegmentedControl)

[`NSMenuItemCell`](/documentation/AppKit/NSMenuItemCell)

[`NSSecureTextField`](/documentation/AppKit/NSSecureTextField)

[`NSTextField`](/documentation/AppKit/NSTextField)

[`NSPanel`](/documentation/AppKit/NSPanel)

[`NSButton`](/documentation/AppKit/NSButton)

[`NSOpenPanel`](/documentation/AppKit/NSOpenPanel)

[`NSComboButton`](/documentation/AppKit/NSComboButton)

[`NSStackView`](/documentation/AppKit/NSStackView)

[`NSPopUpButtonCell`](/documentation/AppKit/NSPopUpButtonCell)

[`NSScrubberArrangedView`](/documentation/AppKit/NSScrubberArrangedView)

[`NSGridView`](/documentation/AppKit/NSGridView)

[`NSForm`](/documentation/AppKit/NSForm)

[`NSWindow`](/documentation/AppKit/NSWindow)

[`NSSwitch`](/documentation/AppKit/NSSwitch)

[`NSText`](/documentation/AppKit/NSText)

[`NSFontPanel`](/documentation/AppKit/NSFontPanel)

[`NSSavePanel`](/documentation/AppKit/NSSavePanel)

[`NSOutlineView`](/documentation/AppKit/NSOutlineView)

[`NSPathCell`](/documentation/AppKit/NSPathCell)

[`NSSearchField`](/documentation/AppKit/NSSearchField)

[`NSMatrix`](/documentation/AppKit/NSMatrix)

[`NSDatePickerCell`](/documentation/AppKit/NSDatePickerCell)

[`NSPopUpButton`](/documentation/AppKit/NSPopUpButton)

[`NSDrawer`](/documentation/AppKit/NSDrawer)

[`NSTokenFieldCell`](/documentation/AppKit/NSTokenFieldCell)

[`NSScrubberSelectionView`](/documentation/AppKit/NSScrubberSelectionView)

[`NSBackgroundExtensionView`](/documentation/AppKit/NSBackgroundExtensionView)

[`NSActionCell`](/documentation/AppKit/NSActionCell)

[`NSStatusBarButton`](/documentation/AppKit/NSStatusBarButton)

[`NSPathComponentCell`](/documentation/AppKit/NSPathComponentCell)

[`NSMenuItem`](/documentation/AppKit/NSMenuItem)

[`NSGlassEffectView`](/documentation/AppKit/NSGlassEffectView)

[`NSPopover`](/documentation/AppKit/NSPopover)

[`NSMenu`](/documentation/AppKit/NSMenu)

[`NSVisualEffectView`](/documentation/AppKit/NSVisualEffectView)

[`NSCollectionView`](/documentation/AppKit/NSCollectionView)

[`NSTextFieldCell`](/documentation/AppKit/NSTextFieldCell)

[`NSScrubber`](/documentation/AppKit/NSScrubber)

### Inherited By

[`NSAccessibilitySwitch`](/documentation/AppKit/NSAccessibilitySwitch)

[`NSAccessibilityGroup`](/documentation/AppKit/NSAccessibilityGroup)

[`NSAccessibilityList`](/documentation/AppKit/NSAccessibilityList)

[`NSAccessibilityContainsTransientUI`](/documentation/AppKit/NSAccessibilityContainsTransientUI)

[`NSAccessibilityCheckBox`](/documentation/AppKit/NSAccessibilityCheckBox)

[`NSAccessibilityStaticText`](/documentation/AppKit/NSAccessibilityStaticText)

[`NSAccessibilityImage`](/documentation/AppKit/NSAccessibilityImage)

[`NSAccessibilitySlider`](/documentation/AppKit/NSAccessibilitySlider)

[`NSAccessibilityNavigableStaticText`](/documentation/AppKit/NSAccessibilityNavigableStaticText)

[`NSAccessibilityLayoutItem`](/documentation/AppKit/NSAccessibilityLayoutItem)

[`NSAccessibilityProgressIndicator`](/documentation/AppKit/NSAccessibilityProgressIndicator)

[`NSAccessibilityRow`](/documentation/AppKit/NSAccessibilityRow)

[`NSAccessibilityButton`](/documentation/AppKit/NSAccessibilityButton)

[`NSAccessibilityStepper`](/documentation/AppKit/NSAccessibilityStepper)

[`NSAccessibilityRadioButton`](/documentation/AppKit/NSAccessibilityRadioButton)

[`NSAccessibilityLayoutArea`](/documentation/AppKit/NSAccessibilityLayoutArea)

[`NSAccessibilityTable`](/documentation/AppKit/NSAccessibilityTable)

[`NSAccessibilityOutline`](/documentation/AppKit/NSAccessibilityOutline)

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)