{"id":852,"date":"2008-09-02T08:15:40","date_gmt":"2008-09-02T07:15:40","guid":{"rendered":"http:\/\/www.itwriting.com\/blog\/852-10-things-you-might-not-have-known-about-xaml.html"},"modified":"2008-09-02T08:15:40","modified_gmt":"2008-09-02T07:15:40","slug":"10-things-you-might-not-have-known-about-xaml","status":"publish","type":"post","link":"https:\/\/www.itwriting.com\/blog\/852-10-things-you-might-not-have-known-about-xaml.html","title":{"rendered":"10 things you might not have known about XAML"},"content":{"rendered":"<p>I\u2019ve written a short <a href=\"http:\/\/www.theregister.co.uk\/2008\/09\/01\/understand_xaml\/\">piece on XAML<\/a> for the Register. Here\u2019s a few things you might not have known about Microsoft\u2019s Extensible Application Markup Language:<\/p>\n<p>1. It is not just for WPF (Windows Presentation Foundation); it is also used as a language for Workflow Foundation (WF). Microsoft has hinted that we will see more XAML applications announced at the forthcoming <a href=\"http:\/\/www.microsoftpdc.com\/\">PDC<\/a>.<\/p>\n<p>2. XAML doesn\u2019t have to be XML \u2013 see the intro to the <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/cc441434.aspx\">XAML Object Mapping Specification 2006<\/a>, which says that \u201cany physical representation may be used.\u201d<\/p>\n<p>3. XAML is a small core and distinct from XAML vocabularies. The huge WPF is a XAML vocabulary. WF is another vocabulary.<\/p>\n<p>4. Although XAML is usually represented as XML, it is near-impossible to create an XML Schema to validate it usefully. Here\u2019s where Microsoft <a href=\"http:\/\/blogs.msdn.com\/wpfsdk\/archive\/2006\/12\/08\/warning-xsd-xaml-whatever.aspx\">explains why<\/a>. <\/p>\n<p>5. In Visual Studio 2005, a huge but imperfect .xsd schema file was used for validation and to drive IntelliSense (things like code completion) in the XAML editor. In Visual Studio 2008 Microsoft abandoned that idea and uses a <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/bb165099(VS.80).aspx\">language service<\/a> instead.<\/p>\n<p>6. The core idea behind XAML is to be a declarative language for .NET. WPF is merely an early application for XAML. <\/p>\n<p>7. <a href=\"http:\/\/www.microsoft.com\/whdc\/xps\/default.mspx\">XPS<\/a>, Microsoft\u2019s fixed-layout language that competes (just about) with Adobe\u2019s PDF, uses XAML that is a subset of WPF. This means that you can actually <a href=\"http:\/\/blogs.msdn.com\/delay\/archive\/2008\/06\/13\/proof-of-concept-silverlight-xps-reader-comes-to-beta-2-simplesilverlightxpsviewer-sample-updated-for-silverlight-2-beta-2.aspx\">display XPS documents in Silverlight<\/a> \u2013 there\u2019s no need for a viewer, it is native Silverlight code.<\/p>\n<p>8. When you compile a Silverlight application, the XAML stays as XAML, albeit bundled into a resource.<\/p>\n<p>9. Silverlight allows you to write <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/bb979776(VS.95).aspx\">inline XAML<\/a> within HTML. <\/p>\n<p>10. XAML rhymes with Camel. Sorry, you knew that already. But did you know that CAML (Compiled Application Markup Language) is XAML compiled to MSIL (Microsoft Intermediate Language)? Microsoft tested this idea in pre-release versions of WPF, but apparently the performance benefits were disappointing and it was less compact than BAML (Binary Application Markup Language), a tokenized representation of XAML. Silverlight doesn\u2019t bother with either: XAML is saved as a resource in a .NET DLL, and then zipped as part of the .XAP package by which a Silverlight application is delivered.<\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:0767317B-992E-4b12-91E0-4F059A8CECA8:27ad90a5-da64-4acb-94f3-032d92ccfeda\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">Technorati tags: <a href=\"http:\/\/technorati.com\/tags\/xaml\" rel=\"tag\">xaml<\/a>, <a href=\"http:\/\/technorati.com\/tags\/microsoft\" rel=\"tag\">microsoft<\/a>, <a href=\"http:\/\/technorati.com\/tags\/xps\" rel=\"tag\">xps<\/a>, <a href=\"http:\/\/technorati.com\/tags\/pdc\" rel=\"tag\">pdc<\/a>, <a href=\"http:\/\/technorati.com\/tags\/silverlight\" rel=\"tag\">silverlight<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I\u2019ve written a short piece on XAML for the Register. Here\u2019s a few things you might not have known about Microsoft\u2019s Extensible Application Markup Language: 1. It is not just for WPF (Windows Presentation Foundation); it is also used as a language for Workflow Foundation (WF). Microsoft has hinted that we will see more XAML &hellip; <a href=\"https:\/\/www.itwriting.com\/blog\/852-10-things-you-might-not-have-known-about-xaml.html\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">10 things you might not have known about XAML<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[55,77,80,96,101],"tags":[],"class_list":["post-852","post","type-post","status-publish","format-standard","hentry","category-microsoft","category-silverlight","category-software-development","category-web-authoring","category-xml"],"_links":{"self":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/posts\/852","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/comments?post=852"}],"version-history":[{"count":0,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/posts\/852\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/media?parent=852"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/categories?post=852"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/tags?post=852"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}