UsiXML is a specification language for user interface design. It allows the designer to describe a user interface at different levels of abstraction. In other words, you can specify a UI in terms of: functionality (task analysis), the object it manipulates, or in a more concrete way, user interface.
The UsiXML language is currently being submitted for a standardisation plan to the W3C.
Another work with the same purpose is UIML.
There are plenty of tools that can be found for UsiXML. They include: a translator from UsiXML specification to Flash (FlashiXML), a tool for drawing/sketching user interfaces (SketchiXML), a tool for task analysis (idealXML).