ARIA (Accessible Rich Internet Applications) is the W3C specification for adding accessibility semantics to web content where native HTML falls short. ARIA provides three categories of attributes: roles (role="dialog"), states (aria-expanded="true"), and properties (aria-label="Close").
The first rule of ARIA: don't use ARIA. Native HTML elements (<button>, <input type="checkbox">, <dialog>) carry the right semantics for free; reaching for <div role="button"> is almost always wrong. Use ARIA only when no native element fits (custom comboboxes, tab panels) or to enhance existing elements (aria-label on an icon-only button).
Wrong ARIA is worse than no ARIA -- a role="button" on a <div> without keyboard handlers actively breaks keyboard navigation for assistive-technology users. Test every ARIA addition with a screen reader before shipping.