Video TOC Expanded

Content Controls DocumentBuilder DOCX Generation Functional Programming
Introduction LINQ LINQ to XML Office Automation
Open XML SDK OpenXML PowerTools PPTX Generation
PresentationML SDK Productivity Tool SpreadsheetML VBA
Word Automation Word Automation Services WordprocessingML

Content Controls Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Video of use of Document Generation Example

First version of this document generation system that is driven by C# code that you write in content controls in a Word document. As an intro, he has recorded a small screen-cast that shows the doc gen system in action. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V1 of Simple DOCX Generation System

This is a preliminary version of a simple DOCX generation system, which you can download, unzip, and try. This article lists two screen casts, first 90 second screen-cast shows how to run the doc gen system after you download and unzip the zip file.The second 2 1/2 minute video shows using the document generation system at scale. It shows generating 3000 documents in under a minute. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Changing the Schema for this Open XML Document Generation System

In the following screen cast shows the process of adjusting the XML data that drives the document generation system, as well as adjusting the template document to use that data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V2 of Doc Gen System: XPath in Content Controls

In this post, I release V2 of this simple document generation example. I provide a 2-minute screen-cast that shows the document generation process, generating 3000 documents in less than 30 seconds. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Change the Schema for Simple Free Doc Generation System

Three minute screen-cast that demonstrates changing the schema for simple document generation system that you configure by placing XPath expressions in content controls. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

What is the glossary document used for?

The glossary part is used for the placeholder text for content controls. In DOTX, it is used for the content for quick parts. This 3 minute video demonstrates these two uses. It also shows a little trick you can do with content controls and the glossary part. (Video)

OpenXML
Content Controls
WordprocessingML

Custom XML Parts and Content Controls

Using custom XML parts and content controls, we can create smarter documents that provide needed functionality for users. Content controls and custom XML parts enable us to integrate business data with content in a document. In addition, content controls can be used to delineate data or content in a document. (Video)

OpenXML
WordprocessingML
Content Controls

DocumentBuilder Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Introduction to DocumentBuilder 2.0 – Screen-Cast 1 of 3

This post contains the first of three screen-casts that introduces DocumentBuilder 2.0, talks about interrelated markup, and explores how DocumentBuilder solves developer issues with regards to interrelated markup. While this screen-cast is a bit long (20 minutes), it will be important for developers using DocumentBuilder who want to know how DocumentBuilder works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 2 of 3

This screen-cast builds on the previous screen-cast where I walk through the process of transferring comments from multiple source documents into a destination document. In this screen-cast, I insert images into the comments. This introduces some complexity – the comments part has a relationship to an image part. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 3 of 3

This screen-cast builds on the previous two screen-casts where I walk through the process of transferring comments from multiple source documents into a destination document. In this final screen-cast in the series, I walk through some of the code in DocumentBuilder 2.0 – I explain how the code is data-driven to make it more robust, and discuss the structure of the code and how DocumentBuilder 2.0 works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Short and Sweet Intro to DocumentBuilder 2.0

This is a short screen-cast that explains what DocumentBuilder 2.0 is all about, in less than seven minutes. (Video)

OpenXML
DocumentBuilder
PowerTools
WordprocessingML

Advanced use of DocumentBuilder 2.0

The default approach to working with DocumentBuilder 2.0 enables you to take bits and pieces of multiple documents and assemble them together into a new document. However, there is an interesting scenario that this approach does not handle. You may want to import a document into a cell in a table, into a text box, or into a content control. You can do this with DocumentBuilder 2.0. This video shows how. (Video)

OpenXML
PowerTools
DocumentBuilder
WordprocessingML

DOCX Generation Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Video of use of Document Generation Example

First version of this document generation system that is driven by C# code that you write in content controls in a Word document. As an intro, he has recorded a small screen-cast that shows the doc gen system in action. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V1 of Simple DOCX Generation System

This is a preliminary version of a simple DOCX generation system, which you can download, unzip, and try. This article lists two screen casts, first 90 second screen-cast shows how to run the doc gen system after you download and unzip the zip file.The second 2 1/2 minute video shows using the document generation system at scale. It shows generating 3000 documents in under a minute. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Changing the Schema for this Open XML Document Generation System

In the following screen cast shows the process of adjusting the XML data that drives the document generation system, as well as adjusting the template document to use that data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V2 of Doc Gen System: XPath in Content Controls

In this post, I release V2 of this simple document generation example. I provide a 2-minute screen-cast that shows the document generation process, generating 3000 documents in less than 30 seconds. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Change the Schema for Simple Free Doc Generation System

Three minute screen-cast that demonstrates changing the schema for simple document generation system that you configure by placing XPath expressions in content controls. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Functional Programming Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Screen-Cast: Functional Programming Utility Methods and Classes for Open XML

In the process of developing the PowerTools for Open XML, over the years, I have developed some needed core functionality and utility methods, particularly for writing LINQ to XML code that queries and transforms Open XML documents. (Video)

OpenXML
PowerTools
Functional Programming
LINQ
LINQ to XML

Introduction Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Use the Open XML Package Editor together with Word to Research Markup

A question was recently posed to me – what is the best way to look at markup and the rendering of the markup simultaneously. This is important, for instance, when you are experimenting with markup and determining the exact markup that you want to generate. (Video)

OpenXML
Introduction

Getting Started with Open XML Development

This is the first in a series of screen-casts that are specifically for a developer starting development with Open XML for the first time. If you are starting out in Open XML development, watch this first. (Video)

OpenXML
Introduction

Getting Started with Open XML Development – Part II Tools

In this screen-cast, I introduce the three most important tools that you will want to be familiar with: 1) Open XML Package Editor Power Tool for Visual Studio, 2) Open XML SDK 2.0 Productivity Tool, 3) PowerTools for Open XML. (Video)

OpenXML
Introduction

LINQ Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Screen-Cast: Functional Programming Utility Methods and Classes for Open XML

In the process of developing the PowerTools for Open XML, over the years, I have developed some needed core functionality and utility methods, particularly for writing LINQ to XML code that queries and transforms Open XML documents. (Video)

OpenXML
PowerTools
Functional Programming
LINQ
LINQ to XML

LINQ to XML Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Screen-Cast: Functional Programming Utility Methods and Classes for Open XML

In the process of developing the PowerTools for Open XML, over the years, I have developed some needed core functionality and utility methods, particularly for writing LINQ to XML code that queries and transforms Open XML documents. (Video)

OpenXML
PowerTools
Functional Programming
LINQ
LINQ to XML

Office Automation Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Exploring Tables-of-Contents in Open XML WordprocessingML Documents (Part 3)

In this screen-cast, I show how you can use Word Automation to open and save the document, thereby causing all fields to be updated, including the TOC. (Video)

OpenXML
WordprocessingML
Word Automation
Office Automation

Open XML SDK Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Video of use of Document Generation Example

First version of this document generation system that is driven by C# code that you write in content controls in a Word document. As an intro, he has recorded a small screen-cast that shows the doc gen system in action. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V1 of Simple DOCX Generation System

This is a preliminary version of a simple DOCX generation system, which you can download, unzip, and try. This article lists two screen casts, first 90 second screen-cast shows how to run the doc gen system after you download and unzip the zip file.The second 2 1/2 minute video shows using the document generation system at scale. It shows generating 3000 documents in under a minute. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Getting Started with Open XML PowerTools Markup Simplifier

In PowerTools, in the HtmlConverter project, there is a class called MarkupSimplifier, which can remove proofing errors. In addition, it can simplify WordprocessingML markup in a variety of ways, including removal of comments, content controls, and etc.
Here is a small screen-cast that shows the use of MarkupSimplifier. This screen-cast uses Open XML Package Editor Power Tool for Visual Studio 2010. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
PowerTools

Changing the Schema for this Open XML Document Generation System

In the following screen cast shows the process of adjusting the XML data that drives the document generation system, as well as adjusting the template document to use that data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V2 of Doc Gen System: XPath in Content Controls

In this post, I release V2 of this simple document generation example. I provide a 2-minute screen-cast that shows the document generation process, generating 3000 documents in less than 30 seconds. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Update Data behind an embedded Chart in an Open XML WordprocessingML Document

11 minute video that walks through the process of embedding a chart in a word-processing document, and then programmatically updating that data so that the chart reflects the new data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

How to Solve Open XML Developer Problems

This screen-cast shows the general approach that I use to solve Open XML developer problems. The general gist of the approach is that I create two documents, one without the feature of interest, and one with. I then use the Open XML SDK productivity tool to compare the two and find out the differences. I then use the Open XML Package Editor Power Tool for Visual Studio 2010 to examine the markup, and I use the PDF form of the ECMA 376 Second Edition Part 1 to research the markup. (Video)

OpenXML
WordprocessingML
Open XML SDK
SDK Productivity Tool

How to Create Protected Spreadsheets with Locked and Unlocked Cells

7-minute video that shows markup related to protected sheets with locked and unlocked cells. (Article,Video)

OpenXML
Open XML SDK
SpreadsheetML

Change the Schema for Simple Free Doc Generation System

Three minute screen-cast that demonstrates changing the schema for simple document generation system that you configure by placing XPath expressions in content controls. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Open XML Markup Simplifier Application makes it easier to research WordprocessingML

This article describes WinForms Application that makes it easier to research OpenXML markup, by creating documents, altering documents, and then comparing the two documents. The MarkupSimplifier class (which is part of the PowerTools for Open XML project) can help, but as downloaded from CodePlex it is simply a class. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

In-Depth Exploration of WordprocessingML Fields

First video in a two-part series that explains how field markup works. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

In-Depth Exploration of WordprocessingML Fields – Part 2

See how to use a MarkupSimplifier utility program to make field markup more understandable. In walk through two cases where fields can be embedded in other fields. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Screen-cast: Exploring Margins in Open XML WordprocessingML Documents

This blog has recorded short screen-cast that explores some approaches to setting margins in a word-processing document. It shows setting margins for cells, paragraphs, and sections. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Exploring Margins in Open XML WordprocessingML Documents

Article has a short screen-cast that shows the markup for various ways of setting margins – for cells, paragraphs, and sections. In addition, the video shows general approach for researching Open XML markup. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Using XML DOM to Detect Tracked Revisions in an Open XML WordprocessingML Document

Using XML DOM to Detect Tracked Revisions in an Open XML WordprocessingML Document (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Search and Replace Text in an Open XML WordprocessingML Document

Search and Replace Text in an Open XML WordprocessingML Document (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Open XML Presentation Generation using a Template Presentation

Article discusses an approach of creating an Open XML template presentation that you can use to generate multiple presentations from data. (Article,Video)

OpenXML
Open XML SDK
PresentationML
PPTX Generation

OpenXML Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Video of use of Document Generation Example

First version of this document generation system that is driven by C# code that you write in content controls in a Word document. As an intro, he has recorded a small screen-cast that shows the doc gen system in action. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V1 of Simple DOCX Generation System

This is a preliminary version of a simple DOCX generation system, which you can download, unzip, and try. This article lists two screen casts, first 90 second screen-cast shows how to run the doc gen system after you download and unzip the zip file.The second 2 1/2 minute video shows using the document generation system at scale. It shows generating 3000 documents in under a minute. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Getting Started with Open XML PowerTools Markup Simplifier

In PowerTools, in the HtmlConverter project, there is a class called MarkupSimplifier, which can remove proofing errors. In addition, it can simplify WordprocessingML markup in a variety of ways, including removal of comments, content controls, and etc.
Here is a small screen-cast that shows the use of MarkupSimplifier. This screen-cast uses Open XML Package Editor Power Tool for Visual Studio 2010. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
PowerTools

Changing the Schema for this Open XML Document Generation System

In the following screen cast shows the process of adjusting the XML data that drives the document generation system, as well as adjusting the template document to use that data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Updating Data for an Embedded Chart in an Open XML WordprocessingML Document

Embedding charts in a word-processing document is a good way to put together documents that display graphical data. When you embed a chart in a document, an Open XML SpreadsheetML workbook is stored as an embedded part in the WordprocessingML document. The spreadsheet contains the data behind the chart. When you maintain that data, Word starts Excel, opening that embedded spreadsheet. (Video)

OpenXML
WordprocessingML
SpreadsheetML

Release of V2 of Doc Gen System: XPath in Content Controls

In this post, I release V2 of this simple document generation example. I provide a 2-minute screen-cast that shows the document generation process, generating 3000 documents in less than 30 seconds. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Update Data behind an embedded Chart in an Open XML WordprocessingML Document

11 minute video that walks through the process of embedding a chart in a word-processing document, and then programmatically updating that data so that the chart reflects the new data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

How to Solve Open XML Developer Problems

This screen-cast shows the general approach that I use to solve Open XML developer problems. The general gist of the approach is that I create two documents, one without the feature of interest, and one with. I then use the Open XML SDK productivity tool to compare the two and find out the differences. I then use the Open XML Package Editor Power Tool for Visual Studio 2010 to examine the markup, and I use the PDF form of the ECMA 376 Second Edition Part 1 to research the markup. (Video)

OpenXML
WordprocessingML
Open XML SDK
SDK Productivity Tool

How to Create Protected Spreadsheets with Locked and Unlocked Cells

7-minute video that shows markup related to protected sheets with locked and unlocked cells. (Article,Video)

OpenXML
Open XML SDK
SpreadsheetML

Change the Schema for Simple Free Doc Generation System

Three minute screen-cast that demonstrates changing the schema for simple document generation system that you configure by placing XPath expressions in content controls. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Open XML Markup Simplifier Application makes it easier to research WordprocessingML

This article describes WinForms Application that makes it easier to research OpenXML markup, by creating documents, altering documents, and then comparing the two documents. The MarkupSimplifier class (which is part of the PowerTools for Open XML project) can help, but as downloaded from CodePlex it is simply a class. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Open XML Markup Simplifier Application makes it easier to research WordprocessingML

Sometimes when researching and examining Open XML WordprocessingML markup, extraneous markup that is not relevant to the issue at hand gets in the way of seeing what is going on. If you are researching markup by creating documents, altering documents, and then comparing the two documents, as detailed in How to Solve Open XML Developer Problems, your research process is made significantly easier by simplifying the markup before comparing. (Video)

OpenXML
WordprocessingML
PowerTools

In-Depth Exploration of WordprocessingML Fields

First video in a two-part series that explains how field markup works. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

In-Depth Exploration of WordprocessingML Fields – Part 2

See how to use a MarkupSimplifier utility program to make field markup more understandable. In walk through two cases where fields can be embedded in other fields. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Screen-cast: Exploring Margins in Open XML WordprocessingML Documents

This blog has recorded short screen-cast that explores some approaches to setting margins in a word-processing document. It shows setting margins for cells, paragraphs, and sections. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Exploring Margins in Open XML WordprocessingML Documents

Article has a short screen-cast that shows the markup for various ways of setting margins – for cells, paragraphs, and sections. In addition, the video shows general approach for researching Open XML markup. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Using XML DOM to Detect Tracked Revisions in an Open XML WordprocessingML Document

Using XML DOM to Detect Tracked Revisions in an Open XML WordprocessingML Document (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Search and Replace Text in an Open XML WordprocessingML Document

Search and Replace Text in an Open XML WordprocessingML Document (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Exploring Table Markup in Open XML SpreadsheetML

Tables are a convenient and useful feature of Open XML SpreadsheetML. This post explores table markup, and links to a screen-cast that shows how to create a table programmatically
(Video)

OpenXML
SpreadsheetML

Open XML Presentation Generation using a Template Presentation

Article discusses an approach of creating an Open XML template presentation that you can use to generate multiple presentations from data. (Article,Video)

OpenXML
Open XML SDK
PresentationML
PPTX Generation

Introduction to DocumentBuilder 2.0 – Screen-Cast 1 of 3

This post contains the first of three screen-casts that introduces DocumentBuilder 2.0, talks about interrelated markup, and explores how DocumentBuilder solves developer issues with regards to interrelated markup. While this screen-cast is a bit long (20 minutes), it will be important for developers using DocumentBuilder who want to know how DocumentBuilder works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 2 of 3

This screen-cast builds on the previous screen-cast where I walk through the process of transferring comments from multiple source documents into a destination document. In this screen-cast, I insert images into the comments. This introduces some complexity – the comments part has a relationship to an image part. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 3 of 3

This screen-cast builds on the previous two screen-casts where I walk through the process of transferring comments from multiple source documents into a destination document. In this final screen-cast in the series, I walk through some of the code in DocumentBuilder 2.0 – I explain how the code is data-driven to make it more robust, and discuss the structure of the code and how DocumentBuilder 2.0 works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Query Open XML Spreadsheets in VB.NET using LINQ

When working with SpreadsheetML, one of the most common needs is to retrieve the data from a worksheet or a table in as easy a fashion as possible. There has been a fair amount written for C# developers to do this, but not nearly as much for VB.NET. (Video)

OpenXML
SpreadsheetML

Introducing TextReplacer: A New Class for PowerTools for Open XML

This code to search-and-replace in an Open XML WordprocessingML document uses LINQ to XML to implement a functional transform. (Video)

OpenXML
WordprocessingML
PowerTools

Exploring Tables-of-Contents in Open XML WordprocessingML Documents

Many Open XML developers need to generate documents, and then generate and insert an updated table-of-content for the document. TOC’s in Open XML are not hard, but they require a bit of explanation. This blog post introduces the first of several screen-casts around Open XML WordprocessingML TOCs. (Video)

OpenXML
WordprocessingML

Exploring Tables-of-Contents in Open XML WordprocessingML Documents (Part 2)

In this screen-cast, I discuss a bit more about the markup, and then walk through some example code that is part of the PowerTools for Open XML project. The example code shows how to insert a TOC at a desired point in a document, and then set the element. Then, when the user next opens that document, Word will present them with the option to repaginate and update the TOC. (Video)

OpenXML
WordprocessingML

Exploring Tables-of-Contents in Open XML WordprocessingML Documents (Part 3)

In this screen-cast, I show how you can use Word Automation to open and save the document, thereby causing all fields to be updated, including the TOC. (Video)

OpenXML
WordprocessingML
Word Automation
Office Automation

Remove Speaker Notes from an Open XML Presentation

When sending a presentation to customers or others outside of your organization, you often want to remove speaker notes. It is easy enough to use PowerPoint automation to remove the speaker notes, but if you are processing presentations server-side, you probably don’t want to rely on automation to accomplish this task. (Video)

OpenXML
PresentationML

Short and Sweet Intro to DocumentBuilder 2.0

This is a short screen-cast that explains what DocumentBuilder 2.0 is all about, in less than seven minutes. (Video)

OpenXML
DocumentBuilder
PowerTools
WordprocessingML

What is the glossary document used for?

The glossary part is used for the placeholder text for content controls. In DOTX, it is used for the content for quick parts. This 3 minute video demonstrates these two uses. It also shows a little trick you can do with content controls and the glossary part. (Video)

OpenXML
Content Controls
WordprocessingML

Adding/Updating the TOC in OpenXML WordprocessingML Documents (4th Screen-cast

Shows how to use Word Automation Services to repaginate a document and update the table-of-contents. (Video)

Word Automation Services
OpenXML
WordprocessingML

Updating the TOC in a WordprocessingML Document using an AutoOpen Macro

In the screen-cast that I present in this post, I show how you can add a TOC using the Open XML SDK, and then modify the normal.dotx, adding a macro, so that whenever you open a document that contains a TOC, Word repaginates the document and updates the TOC. (Video)

VBA
Word Automation
OpenXML
WordprocessingML

How to Retrieve the Text of a Bookmark from an OpenXML WordprocessingML Document

Sometimes developers use bookmarks to delineate text in an OpenXML WordprocessingML document. Then, as part of a larger system, they want to retrieve the text of that bookmark to process in some fashion. (Video)

OpenXML
WordprocessingML

Replacing Text of a Bookmark in an OpenXML WordprocessingML Document

In a previous screen-cast, I showed how to retrieve the text of an OpenXML WordprocessingML document. In this post and screen-cast, I introduce some code that enables you to replace the text of a bookmark. (Video)

OpenXML
WordprocessingML

Advanced use of DocumentBuilder 2.0

The default approach to working with DocumentBuilder 2.0 enables you to take bits and pieces of multiple documents and assemble them together into a new document. However, there is an interesting scenario that this approach does not handle. You may want to import a document into a cell in a table, into a text box, or into a content control. You can do this with DocumentBuilder 2.0. This video shows how. (Video)

OpenXML
PowerTools
DocumentBuilder
WordprocessingML

Use the Open XML Package Editor together with Word to Research Markup

A question was recently posed to me – what is the best way to look at markup and the rendering of the markup simultaneously. This is important, for instance, when you are experimenting with markup and determining the exact markup that you want to generate. (Video)

OpenXML
Introduction

Custom XML Parts and Content Controls

Using custom XML parts and content controls, we can create smarter documents that provide needed functionality for users. Content controls and custom XML parts enable us to integrate business data with content in a document. In addition, content controls can be used to delineate data or content in a document. (Video)

OpenXML
WordprocessingML
Content Controls

Exploring the Set-OpenXmlString CMDLET in PowerTools for Open XML 2.2

The Set-OpenXmlString cmdlet enables interesting functionality – you can do a search-and-replace of content without automating Word, and you can search-and-replace in many documents at once. The Set-OpenXmlString can search-and-replace in both WordprocessingML documents and PresentationML documents. (Video)

OpenXML
WordprocessingML
PresentationML
PowerTools

Getting Started with Open XML Development

This is the first in a series of screen-casts that are specifically for a developer starting development with Open XML for the first time. If you are starting out in Open XML development, watch this first. (Video)

OpenXML
Introduction

Getting Started with Open XML Development – Part II Tools

In this screen-cast, I introduce the three most important tools that you will want to be familiar with: 1) Open XML Package Editor Power Tool for Visual Studio, 2) Open XML SDK 2.0 Productivity Tool, 3) PowerTools for Open XML. (Video)

OpenXML
Introduction

Merge Comments from Multiple OpenXML WordprocessingML Documents into a Single Document

Introduces code that shows how to merge comments from multiple WordprocessingML documents into a single document. (Video)

OpenXML
WordprocessingML
PowerTools

Split-OpenXmlDocument cmdlet in PowerTools for Open XML

In document processing parlance, shredding a document is the process of dividing a source document according to certain rules, and creating a number of documents from the source document. This is useful, for instance, when you have a huge document, and you want to divide it into multiple documents to hand off to different authors or editors. Then, after all edits have been completed, you can merge the various parts back into a complete document. (Video)

OpenXML
WordprocessingML
PowerTools

Exploring the Markup for Bibliographies in OpenXML WordprocessingML

This screen-cast walks through bibliography markup. Bibliographies use custom XML parts, so in addition to showing the field markup for citations and the generated bibliography, the screen-cast discusses the mechanism by which you can determine the purpose of any particular custom XML part. (Video)

OpenXML
WordprocessingML

Screen-Cast: Functional Programming Utility Methods and Classes for Open XML

In the process of developing the PowerTools for Open XML, over the years, I have developed some needed core functionality and utility methods, particularly for writing LINQ to XML code that queries and transforms Open XML documents. (Video)

OpenXML
PowerTools
Functional Programming
LINQ
LINQ to XML

Screen-Cast: Sections, Headers, and Footers

When generating documents, you sometimes will want to create documents with multiple sections, so that you can control page layout separately for each section. In addition, you sometimes will want to create headers and footers for each section. (Video)

OpenXML
WordprocessingML

Screen-Cast: Write Simpler SpreadsheetML when Generating Spreadsheets

This screen-cast presents a small tip that can make it easier to write code to generate SpreadsheetML. You can avoid the complications of updating the shared string table by using the idea in this tip. (Video)

OpenXML
SpreadsheetML

PowerTools Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Getting Started with Open XML PowerTools Markup Simplifier

In PowerTools, in the HtmlConverter project, there is a class called MarkupSimplifier, which can remove proofing errors. In addition, it can simplify WordprocessingML markup in a variety of ways, including removal of comments, content controls, and etc.
Here is a small screen-cast that shows the use of MarkupSimplifier. This screen-cast uses Open XML Package Editor Power Tool for Visual Studio 2010. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
PowerTools

Open XML Markup Simplifier Application makes it easier to research WordprocessingML

Sometimes when researching and examining Open XML WordprocessingML markup, extraneous markup that is not relevant to the issue at hand gets in the way of seeing what is going on. If you are researching markup by creating documents, altering documents, and then comparing the two documents, as detailed in How to Solve Open XML Developer Problems, your research process is made significantly easier by simplifying the markup before comparing. (Video)

OpenXML
WordprocessingML
PowerTools

Introduction to DocumentBuilder 2.0 – Screen-Cast 1 of 3

This post contains the first of three screen-casts that introduces DocumentBuilder 2.0, talks about interrelated markup, and explores how DocumentBuilder solves developer issues with regards to interrelated markup. While this screen-cast is a bit long (20 minutes), it will be important for developers using DocumentBuilder who want to know how DocumentBuilder works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 2 of 3

This screen-cast builds on the previous screen-cast where I walk through the process of transferring comments from multiple source documents into a destination document. In this screen-cast, I insert images into the comments. This introduces some complexity – the comments part has a relationship to an image part. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 3 of 3

This screen-cast builds on the previous two screen-casts where I walk through the process of transferring comments from multiple source documents into a destination document. In this final screen-cast in the series, I walk through some of the code in DocumentBuilder 2.0 – I explain how the code is data-driven to make it more robust, and discuss the structure of the code and how DocumentBuilder 2.0 works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introducing TextReplacer: A New Class for PowerTools for Open XML

This code to search-and-replace in an Open XML WordprocessingML document uses LINQ to XML to implement a functional transform. (Video)

OpenXML
WordprocessingML
PowerTools

Short and Sweet Intro to DocumentBuilder 2.0

This is a short screen-cast that explains what DocumentBuilder 2.0 is all about, in less than seven minutes. (Video)

OpenXML
DocumentBuilder
PowerTools
WordprocessingML

Advanced use of DocumentBuilder 2.0

The default approach to working with DocumentBuilder 2.0 enables you to take bits and pieces of multiple documents and assemble them together into a new document. However, there is an interesting scenario that this approach does not handle. You may want to import a document into a cell in a table, into a text box, or into a content control. You can do this with DocumentBuilder 2.0. This video shows how. (Video)

OpenXML
PowerTools
DocumentBuilder
WordprocessingML

Exploring the Set-OpenXmlString CMDLET in PowerTools for Open XML 2.2

The Set-OpenXmlString cmdlet enables interesting functionality – you can do a search-and-replace of content without automating Word, and you can search-and-replace in many documents at once. The Set-OpenXmlString can search-and-replace in both WordprocessingML documents and PresentationML documents. (Video)

OpenXML
WordprocessingML
PresentationML
PowerTools

Merge Comments from Multiple OpenXML WordprocessingML Documents into a Single Document

Introduces code that shows how to merge comments from multiple WordprocessingML documents into a single document. (Video)

OpenXML
WordprocessingML
PowerTools

Split-OpenXmlDocument cmdlet in PowerTools for Open XML

In document processing parlance, shredding a document is the process of dividing a source document according to certain rules, and creating a number of documents from the source document. This is useful, for instance, when you have a huge document, and you want to divide it into multiple documents to hand off to different authors or editors. Then, after all edits have been completed, you can merge the various parts back into a complete document. (Video)

OpenXML
WordprocessingML
PowerTools

Screen-Cast: Functional Programming Utility Methods and Classes for Open XML

In the process of developing the PowerTools for Open XML, over the years, I have developed some needed core functionality and utility methods, particularly for writing LINQ to XML code that queries and transforms Open XML documents. (Video)

OpenXML
PowerTools
Functional Programming
LINQ
LINQ to XML

PPTX Generation Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Open XML Presentation Generation using a Template Presentation

Article discusses an approach of creating an Open XML template presentation that you can use to generate multiple presentations from data. (Article,Video)

OpenXML
Open XML SDK
PresentationML
PPTX Generation

PresentationML Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Open XML Presentation Generation using a Template Presentation

Article discusses an approach of creating an Open XML template presentation that you can use to generate multiple presentations from data. (Article,Video)

OpenXML
Open XML SDK
PresentationML
PPTX Generation

Remove Speaker Notes from an Open XML Presentation

When sending a presentation to customers or others outside of your organization, you often want to remove speaker notes. It is easy enough to use PowerPoint automation to remove the speaker notes, but if you are processing presentations server-side, you probably don’t want to rely on automation to accomplish this task. (Video)

OpenXML
PresentationML

Exploring the Set-OpenXmlString CMDLET in PowerTools for Open XML 2.2

The Set-OpenXmlString cmdlet enables interesting functionality – you can do a search-and-replace of content without automating Word, and you can search-and-replace in many documents at once. The Set-OpenXmlString can search-and-replace in both WordprocessingML documents and PresentationML documents. (Video)

OpenXML
WordprocessingML
PresentationML
PowerTools

SDK Productivity Tool Videos

All TopicsCondensed TOC

Link

Summary

Keywords

How to Solve Open XML Developer Problems

This screen-cast shows the general approach that I use to solve Open XML developer problems. The general gist of the approach is that I create two documents, one without the feature of interest, and one with. I then use the Open XML SDK productivity tool to compare the two and find out the differences. I then use the Open XML Package Editor Power Tool for Visual Studio 2010 to examine the markup, and I use the PDF form of the ECMA 376 Second Edition Part 1 to research the markup. (Video)

OpenXML
WordprocessingML
Open XML SDK
SDK Productivity Tool

SpreadsheetML Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Updating Data for an Embedded Chart in an Open XML WordprocessingML Document

Embedding charts in a word-processing document is a good way to put together documents that display graphical data. When you embed a chart in a document, an Open XML SpreadsheetML workbook is stored as an embedded part in the WordprocessingML document. The spreadsheet contains the data behind the chart. When you maintain that data, Word starts Excel, opening that embedded spreadsheet. (Video)

OpenXML
WordprocessingML
SpreadsheetML

How to Create Protected Spreadsheets with Locked and Unlocked Cells

7-minute video that shows markup related to protected sheets with locked and unlocked cells. (Article,Video)

OpenXML
Open XML SDK
SpreadsheetML

Exploring Table Markup in Open XML SpreadsheetML

Tables are a convenient and useful feature of Open XML SpreadsheetML. This post explores table markup, and links to a screen-cast that shows how to create a table programmatically
(Video)

OpenXML
SpreadsheetML

Query Open XML Spreadsheets in VB.NET using LINQ

When working with SpreadsheetML, one of the most common needs is to retrieve the data from a worksheet or a table in as easy a fashion as possible. There has been a fair amount written for C# developers to do this, but not nearly as much for VB.NET. (Video)

OpenXML
SpreadsheetML

Screen-Cast: Write Simpler SpreadsheetML when Generating Spreadsheets

This screen-cast presents a small tip that can make it easier to write code to generate SpreadsheetML. You can avoid the complications of updating the shared string table by using the idea in this tip. (Video)

OpenXML
SpreadsheetML

VBA Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Updating the TOC in a WordprocessingML Document using an AutoOpen Macro

In the screen-cast that I present in this post, I show how you can add a TOC using the Open XML SDK, and then modify the normal.dotx, adding a macro, so that whenever you open a document that contains a TOC, Word repaginates the document and updates the TOC. (Video)

VBA
Word Automation
OpenXML
WordprocessingML

Word Automation Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Exploring Tables-of-Contents in Open XML WordprocessingML Documents (Part 3)

In this screen-cast, I show how you can use Word Automation to open and save the document, thereby causing all fields to be updated, including the TOC. (Video)

OpenXML
WordprocessingML
Word Automation
Office Automation

Updating the TOC in a WordprocessingML Document using an AutoOpen Macro

In the screen-cast that I present in this post, I show how you can add a TOC using the Open XML SDK, and then modify the normal.dotx, adding a macro, so that whenever you open a document that contains a TOC, Word repaginates the document and updates the TOC. (Video)

VBA
Word Automation
OpenXML
WordprocessingML

Word Automation Services Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Adding/Updating the TOC in OpenXML WordprocessingML Documents (4th Screen-cast

Shows how to use Word Automation Services to repaginate a document and update the table-of-contents. (Video)

Word Automation Services
OpenXML
WordprocessingML

WordprocessingML Videos

All TopicsCondensed TOC

Link

Summary

Keywords

Video of use of Document Generation Example

First version of this document generation system that is driven by C# code that you write in content controls in a Word document. As an intro, he has recorded a small screen-cast that shows the doc gen system in action. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Release of V1 of Simple DOCX Generation System

This is a preliminary version of a simple DOCX generation system, which you can download, unzip, and try. This article lists two screen casts, first 90 second screen-cast shows how to run the doc gen system after you download and unzip the zip file.The second 2 1/2 minute video shows using the document generation system at scale. It shows generating 3000 documents in under a minute. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Getting Started with Open XML PowerTools Markup Simplifier

In PowerTools, in the HtmlConverter project, there is a class called MarkupSimplifier, which can remove proofing errors. In addition, it can simplify WordprocessingML markup in a variety of ways, including removal of comments, content controls, and etc.
Here is a small screen-cast that shows the use of MarkupSimplifier. This screen-cast uses Open XML Package Editor Power Tool for Visual Studio 2010. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
PowerTools

Changing the Schema for this Open XML Document Generation System

In the following screen cast shows the process of adjusting the XML data that drives the document generation system, as well as adjusting the template document to use that data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Updating Data for an Embedded Chart in an Open XML WordprocessingML Document

Embedding charts in a word-processing document is a good way to put together documents that display graphical data. When you embed a chart in a document, an Open XML SpreadsheetML workbook is stored as an embedded part in the WordprocessingML document. The spreadsheet contains the data behind the chart. When you maintain that data, Word starts Excel, opening that embedded spreadsheet. (Video)

OpenXML
WordprocessingML
SpreadsheetML

Release of V2 of Doc Gen System: XPath in Content Controls

In this post, I release V2 of this simple document generation example. I provide a 2-minute screen-cast that shows the document generation process, generating 3000 documents in less than 30 seconds. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Update Data behind an embedded Chart in an Open XML WordprocessingML Document

11 minute video that walks through the process of embedding a chart in a word-processing document, and then programmatically updating that data so that the chart reflects the new data. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

How to Solve Open XML Developer Problems

This screen-cast shows the general approach that I use to solve Open XML developer problems. The general gist of the approach is that I create two documents, one without the feature of interest, and one with. I then use the Open XML SDK productivity tool to compare the two and find out the differences. I then use the Open XML Package Editor Power Tool for Visual Studio 2010 to examine the markup, and I use the PDF form of the ECMA 376 Second Edition Part 1 to research the markup. (Video)

OpenXML
WordprocessingML
Open XML SDK
SDK Productivity Tool

Change the Schema for Simple Free Doc Generation System

Three minute screen-cast that demonstrates changing the schema for simple document generation system that you configure by placing XPath expressions in content controls. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML
Content Controls
DOCX Generation

Open XML Markup Simplifier Application makes it easier to research WordprocessingML

This article describes WinForms Application that makes it easier to research OpenXML markup, by creating documents, altering documents, and then comparing the two documents. The MarkupSimplifier class (which is part of the PowerTools for Open XML project) can help, but as downloaded from CodePlex it is simply a class. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Open XML Markup Simplifier Application makes it easier to research WordprocessingML

Sometimes when researching and examining Open XML WordprocessingML markup, extraneous markup that is not relevant to the issue at hand gets in the way of seeing what is going on. If you are researching markup by creating documents, altering documents, and then comparing the two documents, as detailed in How to Solve Open XML Developer Problems, your research process is made significantly easier by simplifying the markup before comparing. (Video)

OpenXML
WordprocessingML
PowerTools

In-Depth Exploration of WordprocessingML Fields

First video in a two-part series that explains how field markup works. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

In-Depth Exploration of WordprocessingML Fields – Part 2

See how to use a MarkupSimplifier utility program to make field markup more understandable. In walk through two cases where fields can be embedded in other fields. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Screen-cast: Exploring Margins in Open XML WordprocessingML Documents

This blog has recorded short screen-cast that explores some approaches to setting margins in a word-processing document. It shows setting margins for cells, paragraphs, and sections. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Exploring Margins in Open XML WordprocessingML Documents

Article has a short screen-cast that shows the markup for various ways of setting margins – for cells, paragraphs, and sections. In addition, the video shows general approach for researching Open XML markup. (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Using XML DOM to Detect Tracked Revisions in an Open XML WordprocessingML Document

Using XML DOM to Detect Tracked Revisions in an Open XML WordprocessingML Document (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Search and Replace Text in an Open XML WordprocessingML Document

Search and Replace Text in an Open XML WordprocessingML Document (Article,Video)

OpenXML
Open XML SDK
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 1 of 3

This post contains the first of three screen-casts that introduces DocumentBuilder 2.0, talks about interrelated markup, and explores how DocumentBuilder solves developer issues with regards to interrelated markup. While this screen-cast is a bit long (20 minutes), it will be important for developers using DocumentBuilder who want to know how DocumentBuilder works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 2 of 3

This screen-cast builds on the previous screen-cast where I walk through the process of transferring comments from multiple source documents into a destination document. In this screen-cast, I insert images into the comments. This introduces some complexity – the comments part has a relationship to an image part. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introduction to DocumentBuilder 2.0 – Screen-Cast 3 of 3

This screen-cast builds on the previous two screen-casts where I walk through the process of transferring comments from multiple source documents into a destination document. In this final screen-cast in the series, I walk through some of the code in DocumentBuilder 2.0 – I explain how the code is data-driven to make it more robust, and discuss the structure of the code and how DocumentBuilder 2.0 works. (Video)

DocumentBuilder
OpenXML
PowerTools
WordprocessingML

Introducing TextReplacer: A New Class for PowerTools for Open XML

This code to search-and-replace in an Open XML WordprocessingML document uses LINQ to XML to implement a functional transform. (Video)

OpenXML
WordprocessingML
PowerTools

Exploring Tables-of-Contents in Open XML WordprocessingML Documents

Many Open XML developers need to generate documents, and then generate and insert an updated table-of-content for the document. TOC’s in Open XML are not hard, but they require a bit of explanation. This blog post introduces the first of several screen-casts around Open XML WordprocessingML TOCs. (Video)

OpenXML
WordprocessingML

Exploring Tables-of-Contents in Open XML WordprocessingML Documents (Part 2)

In this screen-cast, I discuss a bit more about the markup, and then walk through some example code that is part of the PowerTools for Open XML project. The example code shows how to insert a TOC at a desired point in a document, and then set the element. Then, when the user next opens that document, Word will present them with the option to repaginate and update the TOC. (Video)

OpenXML
WordprocessingML

Exploring Tables-of-Contents in Open XML WordprocessingML Documents (Part 3)

In this screen-cast, I show how you can use Word Automation to open and save the document, thereby causing all fields to be updated, including the TOC. (Video)

OpenXML
WordprocessingML
Word Automation
Office Automation

Short and Sweet Intro to DocumentBuilder 2.0

This is a short screen-cast that explains what DocumentBuilder 2.0 is all about, in less than seven minutes. (Video)

OpenXML
DocumentBuilder
PowerTools
WordprocessingML

What is the glossary document used for?

The glossary part is used for the placeholder text for content controls. In DOTX, it is used for the content for quick parts. This 3 minute video demonstrates these two uses. It also shows a little trick you can do with content controls and the glossary part. (Video)

OpenXML
Content Controls
WordprocessingML

Adding/Updating the TOC in OpenXML WordprocessingML Documents (4th Screen-cast

Shows how to use Word Automation Services to repaginate a document and update the table-of-contents. (Video)

Word Automation Services
OpenXML
WordprocessingML

Updating the TOC in a WordprocessingML Document using an AutoOpen Macro

In the screen-cast that I present in this post, I show how you can add a TOC using the Open XML SDK, and then modify the normal.dotx, adding a macro, so that whenever you open a document that contains a TOC, Word repaginates the document and updates the TOC. (Video)

VBA
Word Automation
OpenXML
WordprocessingML

How to Retrieve the Text of a Bookmark from an OpenXML WordprocessingML Document

Sometimes developers use bookmarks to delineate text in an OpenXML WordprocessingML document. Then, as part of a larger system, they want to retrieve the text of that bookmark to process in some fashion. (Video)

OpenXML
WordprocessingML

Replacing Text of a Bookmark in an OpenXML WordprocessingML Document

In a previous screen-cast, I showed how to retrieve the text of an OpenXML WordprocessingML document. In this post and screen-cast, I introduce some code that enables you to replace the text of a bookmark. (Video)

OpenXML
WordprocessingML

Advanced use of DocumentBuilder 2.0

The default approach to working with DocumentBuilder 2.0 enables you to take bits and pieces of multiple documents and assemble them together into a new document. However, there is an interesting scenario that this approach does not handle. You may want to import a document into a cell in a table, into a text box, or into a content control. You can do this with DocumentBuilder 2.0. This video shows how. (Video)

OpenXML
PowerTools
DocumentBuilder
WordprocessingML

Custom XML Parts and Content Controls

Using custom XML parts and content controls, we can create smarter documents that provide needed functionality for users. Content controls and custom XML parts enable us to integrate business data with content in a document. In addition, content controls can be used to delineate data or content in a document. (Video)

OpenXML
WordprocessingML
Content Controls

Exploring the Set-OpenXmlString CMDLET in PowerTools for Open XML 2.2

The Set-OpenXmlString cmdlet enables interesting functionality – you can do a search-and-replace of content without automating Word, and you can search-and-replace in many documents at once. The Set-OpenXmlString can search-and-replace in both WordprocessingML documents and PresentationML documents. (Video)

OpenXML
WordprocessingML
PresentationML
PowerTools

Merge Comments from Multiple OpenXML WordprocessingML Documents into a Single Document

Introduces code that shows how to merge comments from multiple WordprocessingML documents into a single document. (Video)

OpenXML
WordprocessingML
PowerTools

Split-OpenXmlDocument cmdlet in PowerTools for Open XML

In document processing parlance, shredding a document is the process of dividing a source document according to certain rules, and creating a number of documents from the source document. This is useful, for instance, when you have a huge document, and you want to divide it into multiple documents to hand off to different authors or editors. Then, after all edits have been completed, you can merge the various parts back into a complete document. (Video)

OpenXML
WordprocessingML
PowerTools

Exploring the Markup for Bibliographies in OpenXML WordprocessingML

This screen-cast walks through bibliography markup. Bibliographies use custom XML parts, so in addition to showing the field markup for citations and the generated bibliography, the screen-cast discusses the mechanism by which you can determine the purpose of any particular custom XML part. (Video)

OpenXML
WordprocessingML

Screen-Cast: Sections, Headers, and Footers

When generating documents, you sometimes will want to create documents with multiple sections, so that you can control page layout separately for each section. In addition, you sometimes will want to create headers and footers for each section. (Video)

OpenXML
WordprocessingML