ISO/IEC 24752 is a multi-part International Standard to facilitate operation of information and electronic products through remote and alternative interfaces and intelligent agents. A user interface socket is an abstract concept that describes the functionality and state of a device or service (target) in a machine interpretable manner. This part of ISO/IEC 24752 defines an extensible Markup Language (XML) based language for describing a user interface socket. The purpose of the user interface socket is to expose the relevant information about a target so that a user can perceive its state and operate it. This includes data presented to the user, variables that can be manipulated by the user, commands that the user can activate, and exceptions that the user is notified about. The user interface socket specification is applicable to the construction or customization of user interfaces.