{"id":2608,"date":"2016-03-18T07:38:36","date_gmt":"2016-03-18T07:38:36","guid":{"rendered":"http:\/\/www.ericwhite.com\/home2\/bm8qcmjy\/public_html\/blog\/?page_id=2608"},"modified":"2016-03-18T07:38:36","modified_gmt":"2016-03-18T07:38:36","slug":"release-of-preview-of-the-open-xml-sdk-v3-0","status":"publish","type":"page","link":"https:\/\/www.ericwhite.com\/blog\/release-of-preview-of-the-open-xml-sdk-v3-0\/","title":{"rendered":"Release of Preview of the Open-Xml-Sdk v3.0"},"content":{"rendered":"<p>We&rsquo;re happy to announce the availability of a build of the Open-Xml-Sdk that supports the changes to the file format introduced in Office 2016.&nbsp; This is version 3.0 of the Open-Xml-Sdk.<\/p>\n<p>The biggest change to the file format is the addition of the ExtendedChartPart, which supports the new chart types, such as Waterfall, Box and Whisker, and Sunburst.<\/p>\n<p>The changes to the Open-Xml-Sdk include the ability to validate the markup in this new part, as well as the ability to use the<br \/>\nstrongly-typed object model to access the markup in this part.<\/p>\n<p>This release is a preview &ndash; based on feedback, it is possible that there will be further changes to the code.&nbsp; This release is intended to be 100% backwards compatible with v2.5.&nbsp; It is my intention to not introduce breaking changes going forward, but if there are any necessary changes, then I&rsquo;ll keep you informed.<\/p>\n<p>In addition to support for the new markup in Office 2016, I have fixed validation (to a limited extent) where the SDK was reporting<br \/>\nvalidation errors for markup as written by Office.&nbsp; My goal is that the markup that Office writes should validate properly using the SDK.<\/p>\n<div>\n<p style=\"padding-left:30px;\">Note: we have not updated the Open-Xml-Sdk Productivity Tool.&nbsp; That is a project<br \/>\nthat I may take on in the future.&nbsp; Time will tell.&nbsp; One aspect of the productivity tool that folks may miss is the document reflector, which can generate code that will produce an existing document.&nbsp; However, with regards to DOCX generation, generating code to generating markup is not the approach that I recommend. &nbsp;Instead, I recommend the approach of using content controls to pull in data from XML files.&nbsp; DocumentAssembler is a module in Open-Xml-PowerTools that makes it easy to do this.&nbsp; For more information, see the <a href=\"https:\/\/www.ericwhite.com\/blog\/documentassembler-developer-center\/\">DocumentAssembler Developer Center<\/a>, which contains screen-casts that will help you get started.<\/p>\n<\/div>\n<p style=\"padding-left:30px;\">\nIf you feel that the document reflector functionality in the Open-Xml-Sdk Productivity Tool is very important to you, please feel free to contact me at eric at ericwhite.com, or leave a comment for me on this post.&nbsp; I would be happy to hear about your scenario and why the document reflector functionality is important to you.<\/p>\n<p>This release is in the Office2016 branch at <a href=\"https:\/\/github.com\/OfficeDev\/Open-Xml-Sdk\">https:\/\/github.com\/OfficeDev\/Open-Xml-Sdk<\/a>.&nbsp; To build this release, clone the repo, checkout the Office2016 branch, and use Open-Xml-Sdk.sln to build the library.<\/p>\n<p>Cheers, Eric<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We&rsquo;re happy to announce the availability of a build of the Open-Xml-Sdk that supports the changes to the file format introduced in Office 2016.&nbsp; This is version 3.0 of the Open-Xml-Sdk. The biggest change to the file format is the addition of the ExtendedChartPart, which supports the new chart types, such as Waterfall, Box and [&hellip;]<\/p>\n","protected":false},"author":10567,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_s2mail":"","footnotes":""},"class_list":["post-2608","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/pages\/2608","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/users\/10567"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/comments?post=2608"}],"version-history":[{"count":1,"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/pages\/2608\/revisions"}],"predecessor-version":[{"id":2609,"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/pages\/2608\/revisions\/2609"}],"wp:attachment":[{"href":"https:\/\/www.ericwhite.com\/blog\/wp-json\/wp\/v2\/media?parent=2608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}