L.4.3.2.1 Theme

The theme is the root-level complex type associated with a shared-style sheet. This complex type holds all of the different formatting options available to a theme, and defines the overall look and feel of a document when themed objects are used within the document. In figure 1 below, we can see an example of two different themes applied to the same slide in a presentation.

Figure 1: A theme applied to the same slide in a presentation. Not only does the font and colors change, but also the effects applied to the shapes and table.

A theme consists of four main parts, although the themeElements element is the piece that holds the main formatting defined within the theme. The other parts provide overrides, defaults, and additions to the information contained in themeElements. The complex type defining a theme, CT_OfficeStyleSheet, is defined in the following manner:

<complexType name="CT_OfficeStyleSheet">
  <sequence>
    <element name="themeElements" type="CT_BaseStyles" minOccurs="1"
      maxOccurs="1"/>
    <element name="objectDefaults" type="CT_ObjectStyleDefaults"
      minOccurs="0" maxOccurs="1"/>
    <element name="extraClrSchemeLst" type="CT_ColorSchemeList"
      minOccurs="0" maxOccurs="1"/>
    <element name="custClrLst" type="CT_CustomColorList" minOccurs="0"
      maxOccurs="1"/>
    <element name="extLst" type="CT_OfficeArtExtensionList"
      minOccurs="0" maxOccurs="1"/>
  </sequence>
  <attribute name="name" type="xsd:string" use="optional" default=""/>
</complexType>

This complex type also holds a CT_OfficeArtExtensionList, which is used for future extensibility of this complex type.

Last updated on