Xml Markup Compatibility support in XAML
The XAML Language team has worked with the XPS team and others on a specification on how forward and backward compatibility could be achieved inside of a XAML document.
It turns out that we’ve built a technology that isn’t XAML specific, but can be used with other XML vocabularies as well.
Andy Simonds (XPS team GPM) recently announced that the Open XML Markup Compatibility specification has been seperated from the Open Packaging Conventions spec and published as a separate spec on Open XML Markup Compatibility.
For XAML users out there, calls to XamlReader.Load* or any navigation to XAML files (in WPF applications or standalone) will apply markup compatilibility rules. So go ahead and use "ignorable" markup and alternate content blocks to your XAML if you need.
Chuck Jazdzewski has written 3 articles that describe the use of Open XML Markup Compatibility (the xmlns uri has changed, but otherwise these are great overviews):
* – In Feb CTP and Beta 2 – XamlReader.Load() which takes in a XmlReader has a bug and does not apply these rules. We have fixed that in a build after Beta2.