Introduction to WordprocessingML

ReturnThis page contains links to a set of introductory screen-casts on WordprocessingML, which is the markup language for DOCX.

1 Paragraphs, Runs, and Text Provides a basic introduction to WordprocessingML
2 Overview of WordprocessingML Parts Provides a high-level overview of all of the parts in an Open XML WordprocessingML document. Discusses which ones you are interested in, which ones you are not interested in, and why
3 Styles and Sections Introduces styles and sections. It demonstrates the nature of inheritance in styles, and shows a couple of key points about section markup
4 Annotations Introduces annotations, including comments, bookmarks, proofing errors, range permissions, and revision tracking. It contains some key points about best practices for dealing with each of these
5 Images Discusses images in WordprocessingML. It shows how you can resize an image in either the horizontal or vertical direction. It also shows how you can control the space taken up by the image
6 Tables
Part 1
Discusses tables in WordprocessingML. It examines the structure of tables, and notes how WordprocessingML tables differ from HTML tables
7 Tables
Part 2
Continues the discussion of tables in WordprocessingML. It examines table rendering in detail. In particular, it discusses the w:tblLook and w:cnfStyle elements, and how they are related
8 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
9 Margins Explains the markup for various ways of setting margins – for cells, paragraphs, and sections
10 Vertical Spacing
Part 1
When generating word-processing documents, you sometimes want to control vertical spacing very explicitly. You may want to control how much space there is between lines in a paragraph, and how much space there is between paragraphs. This screen-cast shows how to control spacing between lines in a paragraph
11 Vertical Spacing
Part 2
This screen-cast shows how to control spacing between paragraphs
12 Tables-of-Contents
Part 1
TOC’s in Open XML are not hard, but they require a bit of explanation. This screen-cast discussed the element in the settings part, and showed Word’s behavior when that field is set.
13 Tables-of-Contents
Part 2
Discuss a bit more about the markup, and then walks through some example code that is part of the PowerTools for Open XML project. 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.
14 Fields and Hyperlinks
Part 1
WordprocessingML fields are an important construct of Open XML markup. Hyperlinks, the TOC, dates, computed values, page references, and much more are represented by fields
15 Fields and Hyperlinks
Part 2
Explains how to use a MarkupSimplifier utility program to make field markup more understandable. Walks through two cases where fields can be embedded in other fields
16 Starting Chapters on Odd Pages in WordprocessingML Shows how to set up section breaks so that each section starts on an odd-numbered page
17 WordprocessingML Numbering Numbering in Open XML WordprocessingML is complex, and justifiably so. It has extensive capabilities to meet almost any numbering need. However, while it is good to have a basic understanding of how numbering works, you don’t need to know every last detail in order to accomplish interesting tasks with numbering, as there is a module, ListItemRetriever, in PowerTools for Open XML, that can aid you in working with numbered lists
18 Using altChunk to Import Content The altChunk technique is a powerful tool for importing content from a variety of formats into an Open XML WordprocessingML document. This screen-cast walks through the details of the markup, relationships, and content types. It also shows importing MHT content, which is the approach that you need to take when importing HTML that contains images