[
    {
        "role": "user",
        "content": "in%20the%20JAWS%20screen%20reader%2C%20what%20is%20UIA"
    },
    {
        "role": "assistant",
        "content": "In the context of the JAWS screen reader, **UIA** stands for **User Interface Automation**\u2014Microsoft\u2019s modern accessibility API for Windows. Below is a detailed explanation of what UIA means, how JAWS uses it, and how it compares to other accessibility APIs.\n\n---\n\n## What is UIA?\n\n- **UIA (User Interface Automation)** is the current Windows accessibility API. It\u2019s used by assistive technologies to access, identify, and manipulate User Interface elements (buttons, text fields, menus, etc.). ([en.wikipedia.org](https://en.wikipedia.org/wiki/Microsoft_UI_Automation?utm_source=openai))  \n- UIA is the successor to older APIs like **MSAA** (Microsoft Active Accessibility) and works alongside other APIs like **IAccessible2** for compatibility. ([en.wikipedia.org](https://en.wikipedia.org/wiki/Microsoft_UI_Automation?utm_source=openai))\n\n---\n\n## How JAWS uses UIA\n\n- JAWS supports UIA to interact with modern Windows controls, in addition to MSAA and IA2 for legacy or browser-specific compatibility. ([assistivlabs.com](https://assistivlabs.com/assistive-tech/screen-readers/jaws?utm_source=openai))  \n- It includes a **UIA Script API**, which allows script writers to tap into UIA\u2019s features via the JAWS scripting language. Through this API, scripts can:\n  - Retrieve UIA elements (which represent UI components),\n  - Access and monitor UI automation properties, patterns, and events,\n  - Respond to UI changes (e.g., when a button is clicked or content changes). ([support.freedomscientific.com](https://support.freedomscientific.com/support/jawsdocumentation/UIAScriptAPI?utm_source=openai))  \n\n- The JAWS UIA Script API has been available since JAWS 18 for most Windows versions, and earlier versions like JAWS 14 introduced key features such as `GetScreenXML` (returns screen content metadata including UIA properties). ([support.freedomscientific.com](https://support.freedomscientific.com/support/jawsdocumentation/UIAScriptAPI?utm_source=openai))\n\n---\n\n## Why UIA matters and how it\u2019s different from older APIs\n\n- **More robust access**: UIA can expose detailed information about UI elements (such as control type, state, structure in a UI tree) and supports event handling for dynamic changes. ([en.wikipedia.org](https://en.wikipedia.org/wiki/Microsoft_UI_Automation?utm_source=openai))  \n- **Greater granularity for interaction**: With UIA, assistive tools can perform finer-grained navigation (words, sentences, paragraphs) based on UI\u2019s semantic structure. ([chromium.googlesource.com](https://chromium.googlesource.com/chromium/src/%2B/HEAD/docs/accessibility/browser/uiautomation.md?utm_source=openai))  \n- **Compatibility with newer applications**: Modern Windows apps tend to support UIA natively. JAWS can use UIA or fall back to older APIs when necessary. ([assistivlabs.com](https://assistivlabs.com/assistive-tech/screen-readers/jaws?utm_source=openai))\n\n---\n\nIf you like, I can walk you through a few examples of using JAWS UIA Script API, or how to debug accessibility issues using UIA. Do you want me to show you that?"
    }
]