Microsoft Assistance Markup Language
Microsoft Assistance Markup Language (Microsoft AML, generally referred to as MAML) is an XML-based markup language developed by the Microsoft User Assistance Platform team to provide user assistance ("online help") for the Microsoft Windows Vista operating system. MAML is also used to provide help information for PowerShell Cmdlets, modules and advanced functions.
MAML is a departure from all previous types of user assistance for Windows operating systems. Some of its features have been available in .NET Framework 2, but more options shipped with the release of .NET Framework 3. Previously, user assistance for Windows operating systems used files created with a command line compiler (hhc.exe). This compiler is used to compile a .hhp (project) file, .hhc (table of contents) file, .hhk (index) file, and a collection of HTML topic files and the related resources (CSS, JavaScript, and image files) into one .chm file.
The most significant aspect of MAML is that it shifts the production of user assistance to the concept of structured authoring (somewhat similar to DITA or DocBook). Documents and their constituent elements are defined by their context. With MAML, the emphasis is on content and the tasks a user performs with a computer, not the features of the software. Presentation is managed as part of the rendering engine when a user requests a topic.
The MAML authoring structure is divided into segments related to a type of content: conceptual, FAQ, glossary, procedure, reference, reusable content, task, troubleshooting, and tutorial. At present, there are no Microsoft released automated tools to assist in the creation of MAML - you need to create the XML files by hand.
Three levels of transformation occur when a topic is displayed: structure, presentation, and rendering:
- The structural transformation contains reusable content and applies conditional logic to determine the structure that content should take when it is displayed, and the content of the text itself.
- The presentation transformation enables content authored in MAML to use many different formats, including DHTML, XAML, RTF, and printed material.
- The rendering transformation applies style sheets and displays the final content to users.
Unfortunately, there is no decent tool available for IT Pros to author MAML. You can use Notepad (which is pretty tedious). James O'Neil (former MSFT employee) shows you how you can use InfoPath to author this information,[1] but this is far from perfect as his article suggests.
See also
References
- ↑ http://blogs.technet.com/b/jamesone/archive/2009/07/24/powershell-on-line-help-a-change-you-should-make-for-v2-3-and-how-to-author-maml-help-files-for-powershell.aspx
External links
- Microsoft Vista User Experience Guidelines at the MSDN Library
- Assistance Platform Team Blog at the Microsoft Developer Network (discontinued)
- Sandcastle MAML Guide
- Help-Info: Information around Online Help (Microsoft), Examples, ..