Extensible Application Markup Language

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Atlason (talk | contribs) at 00:58, 18 January 2007 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Jump to navigation Jump to search
Extensible Application Markup Language (XAML)
Filename extension
.xaml
Internet media type
application/xaml+xml
Developed byMicrosoft
Type of formatmarkup language

Extensible Application Markup Language (XAML; pronounced "Zammel") is a declarative XML-based language used to define objects and their properties, relationships and interactions. The acronym originally stood for Extensible Avalon Markup Language, where Avalon was the code-name for Windows Presentation Foundation (WPF).[1]

XAML is used extensively in the .NET Framework 3.0 technologies, particularly in Windows Presentation Foundation (WPF), where it is used as a user interface markup language to define UI elements, data binding, eventing, and other features, and in Windows Workflow Foundation (WF), in which workflows themselves can be defined using XAML.

XAML elements map to Common Language Runtime object instances whereas attributes map to CLR properties and events on those objects. In typical usage, XAML files will be produced by visual design and developer tools, such as Microsoft Expression Interactive Designer, Microsoft Visual Studio or XAMLPad. The resulting XAML file is compiled into a .baml binary file, which is inserted as a resource into a .NET Framework assembly. At run-time, the framework engine extracts the .baml file from assembly resources, parses it, and creates a corresponding WPF visual tree or workflow.

When used in WPF, XAML is used to describe graphically rich visual user interfaces, such as those created by Adobe Flash. XUL and UIML are other examples of XML-based user interface languages. The language allows for the definition of both 2D and 3D objects, rotations, animations, and a variety of other effects and features.

Anything that is created or implemented in XAML can be expressed using a more traditional .net language, such as C# or Visual Basic .NET. However, a key aspect of the XAML technology is the more simple approach required for tools because it is simply XML. Consequently, a variety of products are emerging, particularly in the WPF space, to create XAML files. Being XML-based, XAML allows analysts, designers and developers to share artifacts more realistically and to enable these artifacts to be re-edited by any of these roles without requiring additional re-integration work by the others.

See also