Maple Worksheet XML Schema
<?xml version="1.0" encoding="UTF-8"?>
<!-- ================================================================== -->
<!-- -->
<!-- FILE: worksheet.xsd -->
<!-- DESCRIPTION: XML Schema for Maple Worksheets -->
<xsd:schema xmlns:mws="http://www.maplesoft.com/xml/schema/worksheet"
xmlns:xsd="http://www.w3.org/">
<xsd:annotation>
<xsd:documentation xml:lang="en">
XML Schema for Maple Worksheets.
</xsd:documentation>
</xsd:annotation>
<!-- ============================================================== -->
<!-- Includes -->
<!-- Common types -->
<xsd:include schemaLocation="common.xsd"/>
<!-- Schemas for sub-elements -->
<xsd:include schemaLocation="containers.xsd"/>
<xsd:include schemaLocation="options.xsd"/>
<xsd:include schemaLocation="plots.xsd"/>
<xsd:include schemaLocation="rtables.xsd"/>
<xsd:include schemaLocation="spread.xsd"/>
<xsd:include schemaLocation="styles.xsd"/>
<xsd:include schemaLocation="text.xsd"/>
<!-- Worksheet Element -->
<!-- Type MapleWorksheetType -->
<xsd:complexType name="MapleWorksheetType">
<xsd:sequence>
<xsd:element ref="version"/>
<xsd:element ref="style-table"/>
<xsd:element ref="section" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="hyperlink" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="mark" minOccurs="0" maxOccurs="1"/>
<xsd:element name="viewopts" type="ViewoptsType"/>
<xsd:element ref="pagenumbers"/>
<xsd:group ref="rtable-group" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<!-- worksheet element -->
<xsd:element name="worksheet" type="MapleWorksheetType">
<!-- never refer to a non-existing cstyle -->
<xsd:documentation>
Any cstyle attribute must refer to an existing cstyle.
<!-- Do not use references for the time being -->
<xsd:keyref name="CStyleRef1" refer="CStyleNameKey">
<xsd:selector xpath=".//xppmath|.//xppedit"/>
<xsd:field xpath="@cstyle"/>
</xsd:keyref>
<xsd:keyref name="CStyleRef2" refer="CStyleNameKey">
<xsd:selector xpath=".//text|.//mapletext"/>
<xsd:keyref name="CStyleRef3" refer="CStyleNameKey">
<xsd:selector xpath=".//pagenumbers|.//viewopts"/>
<xsd:keyref name="CStyleRef4" refer="CStyleNameKey">
<xsd:selector xpath=".//hyperlink"/>
<xsd:keyref name="PStyleRef1" refer="PStyleNameKey">
<xsd:selector xpath=".//para"/>
<xsd:field xpath="@pstyle"/>
-->
</xsd:element>
</xsd:schema>
<!-- FILE: common.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: commonly -->
<!-- used types -->
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!-- Common Attribute Types -->
<!-- StyleNameType -->
<xsd:simpleType name="StyleNameType">
Name of a cstyle or a pstyle.
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
<!-- ExtendedBooleanAttributeType -->
<xsd:simpleType name="ExtendedBooleanAttributeType">
This type can be used for attributes with
3 possible values: true, false, inherited.
<xsd:enumeration value="inherited">
Inherit this property from the parent style.
</xsd:enumeration>
<xsd:enumeration value="true">
Enable this attribute.
<xsd:enumeration value="false">
Disable this attribute.
<!-- BooleanAttributeType -->
<xsd:simpleType name="BooleanAttributeType">
2 possible values: true, false.
<!-- RGBColurType -->
<xsd:simpleType name="RGBColorType">
Specifies the value of color (between 0 and 255).
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="0"/>
<xsd:maxInclusive value="255"/>
<!-- Common Element Types -->
<!-- FILE: containers.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: basic containers -->
Text elements of a Maple Worksheet.
<!-- Attribute Types -->
<!-- Element Types -->
<!-- gut group -->
<xsd:group name="gut">
<xsd:element ref="exchange" minOccurs="0"/>
<xsd:element ref="glplot2d" minOccurs="0" />
<xsd:element ref="glplot3d" minOccurs="0" />
<xsd:element ref="hyperlink" minOccurs="0" />
<xsd:element ref="inline-plot" minOccurs="0" />
<xsd:element ref="mapletext" minOccurs="0" />
<xsd:element ref="newsmartplot2d" minOccurs="0" />
<xsd:element ref="newsmartplot3d" minOccurs="0" />
<xsd:element ref="para" minOccurs="0" />
<xsd:element ref="pagebreak" minOccurs="0" />
<xsd:element ref="section" minOccurs="0" />
<xsd:element ref="smartplot2d" minOccurs="0" />
<xsd:element ref="smartplot3d" minOccurs="0" />
<xsd:element ref="spreadsheet" minOccurs="0" />
<xsd:element ref="text" minOccurs="0" />
<xsd:element ref="urllink" minOccurs="0" />
<xsd:element ref="windows-metafile" minOccurs="0" />
<xsd:element ref="xppedit" minOccurs="0" />
<xsd:element ref="xppmath" minOccurs="0" />
</xsd:group>
<!-- ContainerType -->
<xsd:complexType name="ContainerType">
<xsd:group ref="gut" minOccurs="0" maxOccurs="unbounded"/>
<!-- ParaType -->
<xsd:complexType name="ParaType">
<xsd:complexContent>
<xsd:extension base="ContainerType">
<xsd:attribute name="prompt" type="xsd:string" default="> ">
Prompt.
</xsd:attribute>
<xsd:attribute name="maple-output" type="BooleanAttributeType"
default="false">
Records whether the paragraph is Maple
output.
<xsd:attribute name="bookmark" type="xsd:string"
use="optional">
Specifies the name of a bookmark that has
been placed in the enclosing paragraph.
<xsd:attribute name="pstyle" type="StyleNameType"
use="required">
Specified the name of a paragraph style used
in this section. Must refer to an existing
paragraph style.
</xsd:extension>
</xsd:complexContent>
<!-- SectionType -->
<xsd:complexType name="SectionType">
<xsd:attribute name="hidden" type="BooleanAttributeType"
default="false"/>
<!-- Actual Elements -->
<!-- exchange element -->
<xsd:element name="exchange" type="ContainerType"/>
<!-- para element -->
<xsd:element name="para" type="ParaType"/>
<!-- section element -->
<xsd:element name="section" type="SectionType"/>
<!-- FILE: options.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: elements for -->
<!-- representing various options -->
Elements for setting various worksheet options (like mark,
pagenumbers, etc.).
<!-- Version number types -->
<xsd:simpleType name="VersionMajorType">
Type for major version number.
<xsd:minInclusive value="4"/>
<xsd:simpleType name="VersionMinorType">
Type for minor version number.
<xsd:maxInclusive value="9"/>
<xsd:simpleType name="PlatformNameType">
Only the following platforms are expected:
"DEC ALPHA UNIX" "IBM INTEL SOLARIS" "SUN SPARC SOLARIS"
"HP RISC UNIX" "IBM RISC UNIX" "IBM INTEL NT"
"IBM INTEL LINUX" "MAC PPC" "IBM INTEL LINUX SUSE"
"SGI MIPS UNIX" "APPLE PPC OSX".
<xsd:enumeration value="DEC ALPHA UNIX"/>
<xsd:enumeration value="IBM INTEL SOLARIS"/>
<xsd:enumeration value="SUN SPARC SOLARIS"/>
<xsd:enumeration value="HP RISC UNIX"/>
<xsd:enumeration value="IBM RISC UNIX"/>
<xsd:enumeration value="IBM INTEL NT"/>
<xsd:enumeration value="IBM INTEL LINUX"/>
<xsd:enumeration value="MAC PPC"/>
<xsd:enumeration value="IBM INTEL LINUX SUSE"/>
<xsd:enumeration value="SGI MIPS UNIX"/>
<xsd:enumeration value="APPLE PPC OSX"/>
<!-- AlignmentType -->
<xsd:simpleType name="AlignmentType">
<xsd:enumeration value="left"/>
<xsd:enumeration value="centred"/>
<xsd:enumeration value="right"/>
<!-- VerticalLocationType -->
<xsd:simpleType name="VerticalLocationType">
<xsd:enumeration value="bottom"/>
<xsd:enumeration value="top"/>
<!-- ZoomCmdType -->
<xsd:simpleType name="ZoomCmdType">
<xsd:enumeration value="zoom50"/>
<xsd:enumeration value="zoom75"/>
<xsd:enumeration value="zoom100"/>
<xsd:enumeration value="zoom150"/>
<xsd:enumeration value="zoom200"/>
<xsd:enumeration value="zoom300"/>
<xsd:enumeration value="zoom400"/>
<xsd:attributeGroup name="ZoomParameters">
The zoom-numer and zoom-denom attributes are integer valued.
The value of zoom-numer gives the numerator of the zoom factor,
while zoom-denom gives the denominator of the zoom factor.
The zoom factor is therefore zoom-numer/zoom-denom. For example,
a zoom factor of 200% is specified by setting zoom-numer to 2,
and zoom-denom to 1.
<xsd:attribute name="zoom-numer" type="xsd:positiveInteger"
default="1"/>
<xsd:attribute name="zoom-denom" type="xsd:positiveInteger"
<xsd:attribute name="zoom-cmd" type="ZoomCmdType"
default="zoom100"/>
</xsd:attributeGroup>
<!-- VersionType -->
<xsd:complexType name="VersionType">
<xsd:attribute name="major" type="VersionMajorType"
use="required"/>
<xsd:attribute name="minor" type="VersionMinorType"
<xsd:attribute name="platform" type="PlatformNameType"
<!-- ViewoptsType -->
<xsd:complexType name="ViewoptsType">
<xsd:attribute name="show-sections" type="BooleanAttributeType"
default="true"/>
<xsd:attribute name="show-invisibles" type="BooleanAttributeType"
<xsd:attribute name="show-paralists" type="BooleanAttributeType"
<xsd:attribute name="show-spreadsheets" type="BooleanAttributeType"
<xsd:attribute name="show-input" type="BooleanAttributeType"
<xsd:attribute name="show-output" type="BooleanAttributeType"
<xsd:attribute name="show-graphics" type="BooleanAttributeType"
<xsd:attributeGroup ref="ZoomParameters"/>
<!-- PagenumbersType -->
<xsd:complexType name="PagenumbersType">
<xsd:attribute name="cstyle" type="StyleNameType" use="required">
Points to a character style that is used to
direct formatting of page numbers.
<xsd:attribute name="alignment" type="AlignmentType" default="left">
Horizontal alignment of page numbers.
<xsd:attribute name="location" type="VerticalLocationType"
default="bottom">
Vertical position of page numbers.
<xsd:attribute name="start" type="xsd:nonNegativeInteger"
default="0">
Which page to begin number at. Its value is a
positive integer.
<xsd:attribute name="numberfirst" type="BooleanAttributeType"
<xsd:attribute name="enabled" type="BooleanAttributeType"
<!-- MarkType -->
<xsd:complexType name="MarkType">
<xsd:attribute name="linedata" type="xsd:string" use="required"/>
<xsd:attribute name="markdata" type="xsd:nonNegativeInteger"
<!-- mark element -->
<xsd:element name="mark" type="MarkType">
Mark represents a location in the worksheet. Marks are
used extensively for document navigation. The saved Mark
element represents the position of the edit cursor upon
opening the worksheet.
<!-- pagenumbers element -->
<xsd:element name="pagenumbers" type="PagenumbersType"/>
<!-- version element -->
<xsd:element name="version" type="VersionType"/>
<!-- viewopts element -->
<!-- FILE: plots.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: plot-related -->
<!-- elements -->
Plot-related elements of a Maple Worksheet.
<!-- Attribute types -->
<!-- PlotDataModeType -->
<xsd:simpleType name="PlotDataModeType">
<xsd:restriction base="xsd:positiveInteger">
<xsd:enumeration value="2"/>
<xsd:enumeration value="3"/>
<!-- PlotDataStyleType -->
<xsd:simpleType name="PlotDataStyleType">
<xsd:enumeration value="patchcontour"/>
<xsd:enumeration value="line"/>
<xsd:enumeration value="contour"/>
<xsd:enumeration value="flatcontour"/>
<xsd:enumeration value="hidden"/>
<xsd:enumeration value="patch"/>
<xsd:enumeration value="point"/>
<xsd:enumeration value="patchnogrid"/>
<xsd:enumeration value="default"/>
<!-- PlotDataSymbolType -->
<xsd:simpleType name="PlotDataSymbolType">
<xsd:enumeration value="circle"/>
<xsd:enumeration value="diamond"/>
<xsd:enumeration value="cross"/>
<xsd:enumeration value="box"/>
<!-- PlotDataDashpatternType -->
<xsd:simpleType name="PlotDataDashpatternType">
<xsd:enumeration value="dash"/>
<xsd:enumeration value="dashdot"/>
<xsd:enumeration value="solid"/>
<xsd:enumeration value="dot"/>
<!-- PlotDataGridStyleType -->
<xsd:simpleType name="PlotDataGridStyleType">
<xsd:enumeration value="rectangular"/>
<xsd:enumeration value="triangular"/>
<!-- PlotDataColourStyleType -->
<xsd:simpleType name="PlotDataColourStyleType">
<xsd:enumeration value="xyz"/>
<xsd:enumeration value="xy"/>
<xsd:enumeration value="z"/>
<xsd:enumeration value="z-hue"/>
<xsd:enumeration value="z-grey"/>
<xsd:enumeration value="rgb"/>
<xsd:enumeration value="hue"/>
<xsd:enumeration value="hsv"/>
<xsd:enumeration value="none"/>
<!-- PlotDataLightmodelType -->
<xsd:simpleType name="PlotDataLightmodelType">
<xsd:enumeration value="light1"/>
<xsd:enumeration value="light2"/>
<xsd:enumeration value="light3"/>
<xsd:enumeration value="light4"/>
<xsd:enumeration value="user"/>
<!-- PlotDataAxesStyleType -->
<xsd:simpleType name="PlotDataAxesStyleType">
<xsd:enumeration value="frame"/>
<xsd:enumeration value="normal"/>
<!-- PlotDataProjectionStyleType -->
<xsd:simpleType name="PlotDataProjectionStyleType">
<xsd:enumeration value="orthogonal"/>
<xsd:enumeration value="perspective"/>
<!-- PlotDataType -->
<xsd:complexType name="PlotDataType">
<!-- sub-elements -->
<xsd:element ref="legends" minOccurs="0" maxOccurs="1"/>
<!-- attributes -->
<xsd:attribute name="mode" type="PlotDataModeType" use="required">
Indicates whether the plotdata object represents
a two- or three-dimensional plot.
<xsd:attribute name="style" type="PlotDataStyleType"
default="default">
Specifies the "drawing style" of the plot, which
affects the rendering of non-text objects in the
visual representation of the plot.
<xsd:attribute name="symbol" type="PlotDataSymbolType"
Determines what glyph is used to represent
specially distinguished points on a plot.
<xsd:attribute name="dashpattern"
type="PlotDataDashpatternType"
default="solid">
Determines the style of lines used in the plot.
<xsd:attribute name="symbol-size" type="xsd:nonNegativeInteger"
Determines the size of symbols used in the plot.
<xsd:attribute name="thickness" type="xsd:nonNegativeInteger"
Positive integer specifying the thickness of
lines used when the plot is rendered.
<xsd:attribute name="grid-style"
type="PlotDataGridStyleType"
Determines whether diagonals are shown.
<xsd:attribute name="colour-style"
type="PlotDataColourStyleType"
Indicates how colors in the plot are specified.
<xsd:attribute name="light-model"
type="PlotDataLightmodelType"
Selects one of a predefined set of lighting
settings used to illuminate the plot.
<xsd:attribute name="axes-style"
type="PlotDataAxesStyleType"
Specifies the style of axes drawn on the plot.
<xsd:attribute name="constrained"
type="ExtendedBooleanAttributeType"
default="inherited"/>
<xsd:attribute name="r" type="xsd:decimal" use="required"/>
<xsd:attribute name="phi" type="xsd:decimal" use="required"/>
<xsd:attribute name="theta" type="xsd:decimal" use="required"/>
<xsd:attribute name="projection-style"
type="PlotDataProjectionStyleType"
default="default"/>
<xsd:attribute name="display-legend" type="BooleanAttributeType"
default="true">
Controls whether legends are displayed.
<!-- PlotLegendsType -->
<xsd:complexType name="PlotLegendsType">
<xsd:element ref="legend" minOccurs="1"
maxOccurs="unbounded"/>
<!-- GLPlotType -->
<xsd:complexType name="GLPlotType">
<xsd:element ref="plotdata"/>
<xsd:attribute name="width" type="xsd:positiveInteger"
<xsd:attribute name="height" type="xsd:positiveInteger"
<xsd:attribute name="ascent" type="xsd:positiveInteger"
<!-- SmartplotType -->
<xsd:complexType name="SmartplotType">
<xsd:extension base="GLPlotType">
<xsd:attribute name="command" type="xsd:string"
use="optional"/>
<!-- BitmapType -->
<xsd:complexType name="BitmapType">
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="compression-type" type="xsd:integer"
</xsd:simpleContent>
<!-- InlinePlotType -->
<xsd:complexType name="InlinePlotType">
<xsd:extension base="PlotDataType">
<xsd:attribute name="width" type="xsd:nonNegativeInteger"
<xsd:attribute name="height" type="xsd:nonNegativeInteger"
<xsd:attribute name="ascent" type="xsd:nonNegativeInteger"
<!-- device analogs of plotdata attributes -->
<xsd:attribute name="device-style"
type="PlotDataStyleType"
<xsd:attribute name="device-line-style"
type="xsd:nonNegativeInteger" default="0"/>
<xsd:attribute name="device-symbol"
type="PlotDataSymbolType" default="default"/>
<xsd:attribute name="device-line-thickness"
type="xsd:nonNegativeInteger"
<xsd:attribute name="device-grid-style"
<xsd:attribute name="device-colour-style"
<xsd:attribute name="device-light-model"
<xsd:attribute name="device-axes-style"
<xsd:attribute name="device-projection-style"
<xsd:attribute name="device-constrained"
<xsd:attribute name="is-virtual-device"
type="BooleanAttributeType"
<!-- color control attributes -->
<xsd:attribute name="red" type="RGBColorType"
default="0"/>
<xsd:attribute name="green" type="RGBColorType"
<xsd:attribute name="blue" type="RGBColorType"
<xsd:attribute name="pen-red" type="RGBColorType"
<xsd:attribute name="pen-green" type="RGBColorType"
<xsd:attribute name="pen-blue" type="RGBColorType"
<!-- position control attributes -->
<xsd:attribute name="estyle" type="xsd:nonNegativeInteger"
<xsd:attribute name="current-width"
<xsd:attribute name="rotate-x"
<xsd:attribute name="rotate-y"
<xsd:attribute name="locate-x"
<xsd:attribute name="locate-y"
<xsd:attribute name="rotation-disabled"
<!-- animation control attributes -->
<xsd:attribute name="animation-mode"
<xsd:attribute name="fast-animation"
<xsd:attribute name="animation-type"
<xsd:attribute name="animation-direction"
<xsd:attribute name="frame-delay"
<!-- bitmap element -->
<xsd:element name="bitmap" type="BitmapType"/>
<!-- glplot2d element -->
<xsd:element name="glplot2d" type="GLPlotType"/>
<!-- glplot3d element -->
<xsd:element name="glplot3d" type="GLPlotType"/>
<!-- inline-plot element -->
<xsd:element name="inline-plot" type="InlinePlotType"/>
<!-- legend element -->
<xsd:element name="legend" type="xsd:string"/>
<!-- legends element -->
<xsd:element name="legends" type="PlotLegendsType"/>
<!-- windows-metafile element -->
<xsd:element name="windows-metafile" type="BitmapType"/>
<!-- newsmartplot2d element -->
<xsd:element name="newsmartplot2d" type="SmartplotType"/>
<!-- newsmartplot3d element -->
<xsd:element name="newsmartplot3d" type="SmartplotType"/>
<!-- smartplot2d element -->
<xsd:element name="smartplot2d" type="SmartplotType"/>
<!-- smartplot3d element -->
<xsd:element name="smartplot3d" type="SmartplotType"/>
<!-- plotdata element -->
<xsd:element name="plotdata" type="PlotDataType"/>
<!-- FILE: rtables.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: rtables -->
Rtables-relates elements of a Maple worksheet.
<!-- RtableHandlesType -->
<!-- at the moment this integer sequence is included simply as a
string -->
<xsd:simpleType name="RtableHandlesType">
<xsd:list itemType="xsd:positiveInteger"/>
<!-- Elements -->
<!-- rtable element -->
<xsd:element name="rtable" type="xsd:anyType">
<!-- rtable-handles element -->
<xsd:element name="rtable-handles" type="xsd:string"/>
<xsd:group name="rtable-group">
<xsd:element ref="rtable-handles"/>
<xsd:element ref="rtable" minOccurs="1" maxOccurs="unbounded"/>
<!-- FILE: spread.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: -->
<!-- spreadsheet-related elements -->
Spreadsheet-related elements of a Maple Worksheet.
<!-- BGColourValidType -->
<xsd:simpleType name="BGColourValidType">
<xsd:enumeration value="specified"/>
<xsd:enumeration value="conflict"/>
<!-- CellAlignmentType -->
<xsd:simpleType name="CellAlignmentType">
<xsd:enumeration value="centre"/>
<!-- CellType -->
<xsd:complexType name="CellType">
<xsd:element ref="cell-options"/>
<xsd:element ref="r5mathobj"/>
<xsd:attribute name="row" type="xsd:nonNegativeInteger"
<xsd:attribute name="col" type="xsd:nonNegativeInteger"
<xsd:attribute name="stale" type="BooleanAttributeType"
<!-- CellOptionsType -->
<xsd:complexType name="CellOptionsType">
<xsd:attribute name="alignment" type="CellAlignmentType"
default="centre"/>
<xsd:attribute name="calculate-precision" type="xsd:integer"
<xsd:attribute name="display-precision" type="xsd:integer"
<xsd:attribute name="evaltype" type="xsd:integer" default="0"/>
<xsd:attribute name="bgcolourvalid" type="BGColourValidType"
<xsd:attribute name="red" type="RGBColorType" default="0"/>
<xsd:attribute name="green" type="RGBColorType" default="0"/>
<xsd:attribute name="blue" type="RGBColorType" default="0"/>
<!-- R5mathobjType -->
<xsd:complexType name="R5mathobjType">
<xsd:attribute name="input" type="xsd:string" use="required"/>
<xsd:attribute name="cstyle" type="StyleNameType" use="required"/>
<!-- SpreadSheetType -->
<xsd:complexType name="SpreadSheetType">
<xsd:element ref="row-heights"/>
<xsd:element ref="column-widths"/>
<xsd:element ref="spreadsheet-options"/>
<xsd:element ref="cell" minOccurs="0" maxOccurs="unbounded"/>
<xsd:attribute name="name" type="xsd:string" use="required"/>
<!-- SpreadsheetOptionsType -->
<xsd:complexType name="SpreadsheetOptionsType">
<xsd:attribute name="show-border" type="BooleanAttributeType"
<!-- cell element -->
<xsd:element name="cell" type="CellType"/>
<!-- cell-options element -->
<xsd:element name="cell-options" type="CellOptionsType"/>
<!-- column-widths element -->
<xsd:element name="column-widths" type="xsd:string"/>
<!-- row-heights element -->
<xsd:element name="row-heights" type="xsd:string"/>
<!-- r5mathobj element -->
<xsd:element name="r5mathobj" type="R5mathobjType"/>
<!-- spreadsheet element -->
<xsd:element name="spreadsheet" type="SpreadSheetType"/>
<!-- spreadsheet-options element -->
<xsd:element name="spreadsheet-options" type="SpreadsheetOptionsType"/>
<!-- FILE: styles.xsd -->
<!-- DESCRIPTION: XML Schema for Style Table of Maple Worksheet -->
style table of Maple worksheet
<!-- Common Attributes -->
<!-- StyleNumberType -->
<xsd:simpleType name="StyleNumberType">
Integer index in the worksheets style table
<xsd:minInclusive value="-1"/>
<!-- Cstyle-specific Attributes -->
<!-- PontsizeControlType -->
<xsd:simpleType name="PointsizeControlType">
<xsd:enumeration value="inherited"/>
<xsd:enumeration value="stepdown"/>
<xsd:enumeration value="set"/>
<!-- CharsetType -->
<xsd:simpleType name="CharsetType">
<xsd:enumeration value="mac"/>
<xsd:enumeration value="shiftJIS"/>
<xsd:enumeration value="symbol"/>
<xsd:enumeration value="unknown"/>
<xsd:enumeration value="ansi"/>
<xsd:enumeration value="ibmpc"/>
<!-- PitchType -->
<xsd:simpleType name="PitchType">
<xsd:enumeration value="dontcare"/>
<xsd:enumeration value="variable"/>
<xsd:enumeration value="fixed"/>
<!-- LinebreakType -->
<xsd:simpleType name="LinebreakType">
<xsd:enumeration value="any"/>
<xsd:enumeration value="space"/>
<xsd:enumeration value="newline"/>
<!-- Pstyle-Specific Attributes -->
<!-- JustifyType -->
<xsd:simpleType name="JustifyType">
<xsd:enumeration value="justify"/>
<!-- IlspacingType -->
<xsd:simpleType name="IlspacingType">
<xsd:enumeration value="one-and-a-half"/>
<xsd:enumeration value="single"/>
<xsd:enumeration value="double"/>
<!-- MarginControlType -->
<xsd:simpleType name="MarginControlType">
<xsd:enumeration value="absolute"/>
<xsd:enumeration value="relative"/>
<!-- ListStyleType -->
<xsd:simpleType name="ListStyleType">
<xsd:enumeration value="bullet"/>
<xsd:enumeration value="nobullet"/>
<xsd:enumeration value="dashed"/>
<xsd:enumeration value="number"/>
<!-- Type for style element -->
<xsd:complexType name="CStyleType">
<xsd:attribute name="name" type="StyleNameType" use="required"/>
<xsd:attribute name="parent" type="StyleNumberType" default="-1">
Parent of a cstyle or a pstyle, an integer index
in the worksheets style table. It is a non-negative
integer, unless there is no parent style, in which case
it is stored as -1. The parent style is some other
style from which attributes may be inherited.
<xsd:attribute name="self" type="StyleNumberType" default="-1">
Index of this style in the worksheets style table.
It is a non-negative integer, but the value -1
indicates that the style has not yet been associated
with a style table.
<!-- attributes related to point size control -->
<xsd:attribute name="pointsize" type="xsd:integer" default="1"/>
<xsd:attribute name="pointsize-control" type="PointsizeControlType"
default="inherited">
Is used to control how the pointsize attribute is
interpreted (or used at all). Possible value are:
- inherit: inherit this property from the parent style
- step : step down the parent's font size by about 2/3,
or up by about 1/3
- set : use the font size given by the pointsize
attribute
<xsd:attribute name="colour-valid" type="BooleanAttributeType"
<!-- text style attributes -->
<xsd:attribute name="typeface" type="xsd:string" default="Times">
The font typeface for the character style. Text typeset
using this character style will be typeset using a font.
Default value for typeface attribute is Times on all
platforms except Windows, on Windows the dafault is
Times New Roman
<xsd:attribute name="bold" type="ExtendedBooleanAttributeType"
<xsd:attribute name="underline" type="ExtendedBooleanAttributeType"
<xsd:attribute name="italic" type="ExtendedBooleanAttributeType"
<xsd:attribute name="hidden" type="ExtendedBooleanAttributeType"
<xsd:attribute name="maple-input" type="ExtendedBooleanAttributeType"
Is used to control whether this character style should
be displayed as maple input.
<xsd:attribute name="zoom" type="ExtendedBooleanAttributeType"
The zoom attribute determines whether text to
which the style is applied is influenced by the
zoom factor. It takes the following values.
<xsd:attribute name="readonly" type="ExtendedBooleanAttributeType"
<xsd:attribute name="charset" type="CharsetType"
<xsd:attribute name="pitch" type="PitchType" default="inherited"/>
<xsd:attribute name="linebreak" type="LinebreakType"
<!-- Type for ptyle element -->
<xsd:complexType name="PStyleType">
<!-- subelements -->
<xsd:element name="cstyle" type="CStyleType"
minOccurs="0" maxOccurs="1"/>
<xsd:attribute name="parent" type="StyleNumberType" default="0"/>
<xsd:attribute name="self" type="StyleNumberType" default="0"/>
<xsd:attribute name="next-pstyle" type="StyleNumberType"
default="-1">
Index in the worksheets style table of the
next paragraph style.
<xsd:attribute name="embedded-cstyle" type="BooleanAttributeType"
<!-- formatting-related attributes -->
<xsd:attribute name="pagebreak" type="ExtendedBooleanAttributeType"
Text layout property that determines whether a
paragraph to which the style is applied begins
a new page.
<xsd:attribute name="keepnext" type="ExtendedBooleanAttributeType"
Text layout property that determines whether
pagebreak may follow a paragraph to which
this style has been applied. If the keepnext
property is set, then a paragraph using this style
cannot be the last paragraph on a page.
<xsd:attribute name="justify" type="JustifyType"
<xsd:attribute name="ilspacing" type="IlspacingType"
<xsd:attribute name="ilspace" type="xsd:nonNegativeInteger"
Computed value for the interline spacing.
It may have any non-negative integer value.
<xsd:attribute name="firstindent" type="xsd:integer" default="-1">
Amount by which to indent the first line of a
paragraph to which this style is applied. If the
value is -1, then the property is inherited from
the parent style.
<!-- margin control attributes -->
<xsd:attribute name="pre-leading" type="xsd:integer" default="-1">
Amount of white space to insert before a paragraph
to which this style is applied. Its value is a
non-negative integer, but the value -1 is used to
indicate that the value actually used is inherited
from the parent style.
<xsd:attribute name="post-leading" type="xsd:integer" default="-1">
Amount of white space to insert after a paragraph
<xsd:attribute name="left-margin-control"
type="MarginControlType" default="inherited">
The size of the margin of a paragraph to which
this style is applied is computed. The value of
this attribute determines how the value of the
left-margin-amount attribute is used to determine
the margin size, or whether it is used at all.
<xsd:attribute name="left-margin-amount"
The size of the left margin of a paragraph to
which this style is applied.
<xsd:attribute name="right-margin-control"
right-margin-amount attribute is used to determine
<xsd:attribute name="right-margin-amount"
The size of the right margin of a paragraph to
<xsd:attribute name="liststyle" type="ListStyleType"
Style used for lists in paragraphs to which this
style has been applied.
<!-- Type for style-table element -->
<xsd:complexType name="StyleTableType">
<xsd:group ref="Styles" maxOccurs="unbounded"/>
<xsd:group name="Styles">
<xsd:element ref="cstyle" minOccurs="0"/>
<xsd:element ref="pstyle" minOccurs="0"/>
<!-- cstyle element -->
<xsd:element name="cstyle" type="CStyleType"/>
<!-- pstyle element -->
<xsd:element name="pstyle" type="PStyleType"/>
<!-- style-table element -->
<xsd:element name="style-table" type="StyleTableType">
<!-- Uniqueness of style names is not required at the moment
<xsd:key name="CStyleNameKey">
<xsd:selector xpath="cstyle"/>
<xsd:field xpath="@name"/>
</xsd:key>
<xsd:key name="PStyleNameKey">
<xsd:selector xpath="pstyle"/>
<!-- FILE: text.xsd -->
<!-- DESCRIPTION: XML Schema - Maple Worksheet: text elements -->
<!-- HyperlinkTypeType -->
<xsd:simpleType name="HyperlinkTypeType">
<xsd:enumeration value="worksheet"/>
<xsd:enumeration value="inert"/>
<xsd:enumeration value="help"/>
<xsd:enumeration value="popup"/>
<xsd:enumeration value="url"/>
<!-- TextType -->
<xsd:complexType name="TextType">
<xsd:attribute name="cstyle" type="StyleNameType"
default="Maple Input"/>
<!-- HyperlinkType -->
<xsd:complexType name="HyperlinkType">
<xsd:extension base="TextType">
<xsd:attribute name="type" type="HyperlinkTypeType"
Specifies the kind of target this hyperlink
points to.
<xsd:attribute name="document" type="xsd:string"
Specifies the target document.
Specifies a label within the target document
<!-- MapleTextType -->
<xsd:complexType name="MapleTextType">
<xsd:attribute name="maple-input"
Indicates whether this element contains Maple
input.
<!-- XPPEditType -->
<xsd:complexType name="XPPEditType">
<xsd:attribute name="maple" type="xsd:string"
String containing Maple code for the expression
represented by an instance of this document
element. This text appears in the editing box
when an xpp expression is selected in the
worksheet.
<xsd:attribute name="isinput" type="BooleanAttributeType"
Determines whether the expression is an
input region. It is boolean-valued (either true
or false). A 'mapletext' element representing
linear Maple language input in the worksheet is
converted to an element with the 'isinput'
attribute set to true when the expression is
highlighted and converted to "2-D Math"
via the popup menu.
<!-- hyperlink element -->
<xsd:element name="hyperlink" type="HyperlinkType"/>
<!-- mapletext element -->
<xsd:element name="mapletext" type="MapleTextType"/>
<!-- pagebreak element -->
<xsd:element name="pagebreak">
<xsd:complexType>
<!-- text element -->
<xsd:element name="text" type="TextType"/>
<!-- urllink element -->
<xsd:element name="urllink">
<xsd:restriction base="HyperlinkType">
use="required" fixed="url">
The only difference between urllink and
hyperlink is that urllink has type "url".
<!-- xppedit element -->
<xsd:element name="xppedit" type="XPPEditType"/>
<!-- xppmath element -->
<xsd:element name="xppmath" type="TextType"/>
See Also
Worksheet
Worksheet/DTD
XMLTools
Download Help Document