ooo-build r15383 - trunk/patches/dev300
- From: cbosdo svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r15383 - trunk/patches/dev300
- Date: Fri, 20 Feb 2009 09:32:18 +0000 (UTC)
Author: cbosdo
Date: Fri Feb 20 09:32:18 2009
New Revision: 15383
URL: http://svn.gnome.org/viewvc/ooo-build?rev=15383&view=rev
Log:
Docx import: implemented table stylesheet import
Added:
trunk/patches/dev300/sw-docx-import-tables.diff
Modified:
trunk/patches/dev300/apply
trunk/patches/dev300/writerfilter-docx-import-tables.diff
Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply (original)
+++ trunk/patches/dev300/apply Fri Feb 20 09:32:18 2009
@@ -1834,6 +1834,7 @@
writerfilter-module-writer.diff
writerfilter-docx-import-tables.diff, i#90093, cbosdo
+sw-docx-import-tables.diff, i#90093, cbosdo
writerfilter-source-dmapper-domainmapper-debug.diff
buildfix-oox-depends-on-unotools.diff
Added: trunk/patches/dev300/sw-docx-import-tables.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/sw-docx-import-tables.diff Fri Feb 20 09:32:18 2009
@@ -0,0 +1,87 @@
+Index: sw/source/core/unocore/unotext.cxx
+===================================================================
+--- sw/source/core/unocore/unotext.cxx (rÃvision 267004)
++++ sw/source/core/unocore/unotext.cxx (copie de travail)
+@@ -68,6 +68,8 @@
+ #include <memory>
+ #include <stdlib.h>
+
++#include <iostream>
++
+ using namespace ::com::sun::star;
+ using ::rtl::OUString;
+
+@@ -256,8 +258,8 @@
+ sal::static_int_cast< sal_IntPtr >( xRangeTunnel->getSomething( OTextCursorHelper::getUnoTunnelId()) ));
+ }
+
+- if(pRange && pRange->GetDoc() == GetDoc() ||
+- pCursor && pCursor->GetDoc() == GetDoc())
++ if( ( pRange && pRange->GetDoc() == GetDoc() ) ||
++ ( pCursor && pCursor->GetDoc() == GetDoc() ) )
+ {
+ const SwStartNode* pOwnStartNode = GetStartNode();
+ if(pCursor)
+@@ -1995,7 +1997,16 @@
+ const beans::PropertyValue* pTableProperties = rTableProperties.getConstArray();
+ sal_Int32 nProperty = 0;
+ for( ; nProperty < rTableProperties.getLength(); ++nProperty)
+- xPrSet->setPropertyValue( pTableProperties[nProperty].Name, pTableProperties[nProperty].Value );
++ {
++ try
++ {
++ xPrSet->setPropertyValue( pTableProperties[nProperty].Name, pTableProperties[nProperty].Value );
++ }
++ catch ( const uno::Exception e )
++ {
++ // TODO log
++ }
++ }
+
+ //apply row properties
+ uno::Reference< table::XTableRows > xRows = xRet->getRows();
+@@ -2052,6 +2063,7 @@
+ //--<
+ #endif
+
++
+ //apply cell properties
+ for( nRow = 0; nRow < rCellProperties.getLength(); ++nRow)
+ {
+@@ -2064,7 +2076,8 @@
+ uno::Reference< beans::XPropertySet > xCell( pTextTable->getCellByPosition(nCell, nRow), uno::UNO_QUERY );
+ for( nProperty = 0; nProperty < nCellProperties; ++nProperty)
+ {
+- if(aCellProperties[nProperty].Name.equalsAsciiL(
++ const OUString& rName = aCellProperties[nProperty].Name;
++ if( rName.equalsAsciiL(
+ RTL_CONSTASCII_STRINGPARAM ( "VerticalMerge")))
+ {
+ //determine left border position
+@@ -2127,8 +2140,24 @@
+ }
+ }
+ }
+- else
+- xCell->setPropertyValue(aCellProperties[nProperty].Name, aCellProperties[nProperty].Value);
++ else
++ {
++ try
++ {
++ xCell->setPropertyValue(rName, aCellProperties[nProperty].Value);
++ }
++ catch ( const uno::Exception e )
++ {
++ // Apply the paragraph and char properties to the cell's content
++ uno::Reference< text::XText > xCellText( xCell, uno::UNO_QUERY );
++ uno::Reference< text::XTextCursor > xCellCurs = xCellText->createTextCursor( );
++ xCellCurs->gotoStart( false );
++ xCellCurs->gotoEnd( true );
++
++ uno::Reference< beans::XPropertySet > xCellTextProps( xCellCurs, uno::UNO_QUERY );
++ xCellTextProps->setPropertyValue( rName, aCellProperties[nProperty].Value );
++ }
++ }
+ }
+ }
+ }
Modified: trunk/patches/dev300/writerfilter-docx-import-tables.diff
==============================================================================
--- trunk/patches/dev300/writerfilter-docx-import-tables.diff (original)
+++ trunk/patches/dev300/writerfilter-docx-import-tables.diff Fri Feb 20 09:32:18 2009
@@ -1,8 +1,199 @@
+Index: writerfilter/inc/dmapper/DomainMapper.hxx
+===================================================================
+--- writerfilter/inc/dmapper/DomainMapper.hxx (rÃvision 267004)
++++ writerfilter/inc/dmapper/DomainMapper.hxx (copie de travail)
+@@ -120,8 +120,8 @@
+
+ void sprm( Sprm& sprm, ::boost::shared_ptr<PropertyMap> pContext, SprmType = SPRM_DEFAULT );
+
+- void PushStyleSheetProperties( ::boost::shared_ptr<PropertyMap> pStyleProperties );
+- void PopStyleSheetProperties();
++ void PushStyleSheetProperties( ::boost::shared_ptr<PropertyMap> pStyleProperties, bool bAffectTableMngr = false );
++ void PopStyleSheetProperties( bool bAffectTableMngr = false );
+
+ void PushListProperties( ::boost::shared_ptr<PropertyMap> pListProperties );
+ void PopListProperties();
+Index: writerfilter/source/dmapper/BorderHandler.hxx
+===================================================================
+--- writerfilter/source/dmapper/BorderHandler.hxx (rÃvision 267004)
++++ writerfilter/source/dmapper/BorderHandler.hxx (copie de travail)
+@@ -63,6 +63,7 @@
+ sal_Int32 m_nLineDistance;
+ bool m_bOOXML;
+
++ bool m_aFilledLines[BORDER_COUNT];
+ ::com::sun::star::table::BorderLine m_aBorderLines[BORDER_COUNT];
+
+ public:
+Index: writerfilter/source/dmapper/PropertyMap.cxx
+===================================================================
+--- writerfilter/source/dmapper/PropertyMap.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/PropertyMap.cxx (copie de travail)
+@@ -724,8 +724,8 @@
+
+ sal_Int32 nCharWidth = 423; //240 twip/ 12 pt
+ //todo: is '0' the right index here?
+- const StyleSheetEntry* pEntry = rDM_Impl.GetStyleSheetTable()->FindStyleSheetByISTD(::rtl::OUString::valueOf(static_cast<sal_Int32>(0), 16));
+- if( pEntry )
++ const StyleSheetEntryPtr pEntry = rDM_Impl.GetStyleSheetTable()->FindStyleSheetByISTD(::rtl::OUString::valueOf(static_cast<sal_Int32>(0), 16));
++ if( pEntry.get( ) )
+ {
+ PropertyMap::iterator aElement_ = pEntry->pProperties->find(PropertyDefinition( PROP_CHAR_HEIGHT_ASIAN, false ));
+ if( aElement_ != pEntry->pProperties->end())
Index: writerfilter/source/dmapper/DomainMapperTableHandler.cxx
===================================================================
--- writerfilter/source/dmapper/DomainMapperTableHandler.cxx (rÃvision 267004)
+++ writerfilter/source/dmapper/DomainMapperTableHandler.cxx (copie de travail)
-@@ -140,7 +140,7 @@
+@@ -68,7 +68,22 @@
+ {
+ rtl::OUString aOUStr = rPropSupplier.GetName( aMapIter->first.eId );
+ rtl::OString aOStr(aOUStr.getStr(), aOUStr.getLength(), RTL_TEXTENCODING_ASCII_US );
+- clog << aOStr.getStr() << '-';
++ clog << aOStr.getStr();
++
++ table::BorderLine aLine;
++ sal_Int32 nColor;
++ if ( aMapIter->second >>= aLine )
++ {
++ clog << ": BorderLine ( Color: " << aLine.Color;
++ clog << ", Inner: " << aLine.InnerLineWidth;
++ clog << ", Outer: " << aLine.OuterLineWidth << ") ";
++ }
++ else if ( aMapIter->second >>= nColor )
++ {
++ clog << ": Color ( " << nColor << " ) ";
++ }
++
++ clog << " - ";
+ }
+ clog << endl;
+ }
+@@ -106,21 +121,122 @@
+ /*-- 22.02.2008 10:18:37---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-PropertyMapPtr lcl_SearchParentStyleSheetAndMergeProperties(const StyleSheetEntry* pStyleSheet, StyleSheetTablePtr pStyleSheetTable)
++PropertyMapPtr lcl_SearchParentStyleSheetAndMergeProperties(const StyleSheetEntryPtr pStyleSheet, StyleSheetTablePtr pStyleSheetTable)
+ {
+ PropertyMapPtr pRet;
+ if( pStyleSheet->sBaseStyleIdentifier.getLength())
+ {
+- const StyleSheetEntry* pParentStyleSheet = pStyleSheetTable->FindStyleSheetByISTD( pStyleSheet->sBaseStyleIdentifier );
++ const StyleSheetEntryPtr pParentStyleSheet = pStyleSheetTable->FindStyleSheetByISTD( pStyleSheet->sBaseStyleIdentifier );
+ pRet = lcl_SearchParentStyleSheetAndMergeProperties( pParentStyleSheet, pStyleSheetTable );
+ }
+ else
+ {
+ pRet.reset( new PropertyMap );
+ }
++
+ pRet->insert( pStyleSheet->pProperties, true );
+ return pRet;
+ }
++
++void lcl_mergeBorder( PropertyIds nId, PropertyMapPtr pOrig, PropertyMapPtr pDest )
++{
++ PropertyDefinition aDef( nId, false );
++ PropertyMap::iterator pOrigIt = pOrig->find( aDef );
++ PropertyMap::iterator pDestIt = pDest->find( aDef );
++
++ if ( pDestIt == pDest->end( ) && pOrigIt != pOrig->end( ) )
++ {
++ pDest->Insert( nId, false, pOrigIt->second );
++ }
++}
++
++void lcl_computeCellBorders( PropertyMapPtr pTableBorders, PropertyMapPtr pCellProps,
++ sal_Int32 nCell, sal_Int32 nRow, bool bIsEndCol, bool bIsEndRow )
++{
++ PropertyDefinition aVertPDef( META_PROP_VERTICAL_BORDER, false );
++ PropertyDefinition aHorizPDef( META_PROP_HORIZONTAL_BORDER, false );
++
++ PropertyMap::iterator aVerticalIter = pCellProps->find( aVertPDef );
++ PropertyMap::iterator aHorizontalIter = pCellProps->find( aHorizPDef );
++
++ // Handle the vertical and horizontal borders
++ bool bHasVert = ( aVerticalIter != pCellProps->end( ) );
++ uno::Any aVertProp;
++ if ( !bHasVert )
++ {
++ aVerticalIter = pTableBorders->find( aVertPDef );
++ bHasVert = ( aVerticalIter != pTableBorders->end( ) );
++ if ( bHasVert )
++ aVertProp = aVerticalIter->second;
++ }
++ else
++ {
++ aVertProp = aVerticalIter->second;
++ pCellProps->erase( aVerticalIter );
++ }
++
++ bool bHasHoriz = ( aHorizontalIter != pCellProps->end( ) );
++ uno::Any aHorizProp;
++ if ( !bHasHoriz )
++ {
++ aHorizontalIter = pTableBorders->find( aHorizPDef );
++ bHasHoriz = ( aHorizontalIter != pTableBorders->end( ) );
++ if ( bHasHoriz )
++ aHorizProp = aHorizontalIter->second;
++ }
++ else
++ {
++ aHorizProp = aHorizontalIter->second;
++ pCellProps->erase( aHorizontalIter );
++ }
++
++ if ( nCell == 0 )
++ {
++ lcl_mergeBorder( PROP_LEFT_BORDER, pTableBorders, pCellProps );
++ if ( bHasVert )
++ pCellProps->Insert( PROP_RIGHT_BORDER, false, aVertProp );
++ }
++
++ if ( bIsEndCol )
++ {
++ lcl_mergeBorder( PROP_RIGHT_BORDER, pTableBorders, pCellProps );
++ if ( bHasVert )
++ pCellProps->Insert( PROP_LEFT_BORDER, false, aVertProp );
++ }
++
++ if ( nCell > 0 && !bIsEndCol )
++ {
++ if ( bHasVert )
++ {
++ pCellProps->Insert( PROP_RIGHT_BORDER, false, aVertProp);
++ pCellProps->Insert( PROP_LEFT_BORDER, false, aVertProp );
++ }
++ }
++
++ if ( nRow == 0 )
++ {
++ lcl_mergeBorder( PROP_TOP_BORDER, pTableBorders, pCellProps );
++ if ( bHasHoriz )
++ pCellProps->Insert( PROP_BOTTOM_BORDER, false, aHorizProp );
++ }
++
++ if ( bIsEndRow )
++ {
++ lcl_mergeBorder( PROP_BOTTOM_BORDER, pTableBorders, pCellProps );
++ if ( bHasHoriz )
++ pCellProps->Insert( PROP_TOP_BORDER, false, aHorizProp );
++ }
++
++ if ( nRow > 0 && !bIsEndRow )
++ {
++ if ( bHasHoriz )
++ {
++ pCellProps->Insert( PROP_TOP_BORDER, false, aHorizProp );
++ pCellProps->Insert( PROP_BOTTOM_BORDER, false, aHorizProp );
++ }
++ }
++}
++
+ void DomainMapperTableHandler::endTable()
+ {
+ #if OSL_DEBUG_LEVEL > 1
+@@ -140,7 +256,7 @@
if( nTblPropSize )
{
const beans::PropertyValues aDebugTbl = m_aTableProperties->GetPropertyValues();
@@ -11,38 +202,141 @@
{
const ::rtl::OUString sName = aDebugTbl[nDebug].Name;
sNames += sName;
-@@ -156,6 +156,8 @@
+@@ -156,6 +272,13 @@
sal_Int32 nLeftBorderDistance, nRightBorderDistance, nTopBorderDistance, nBottomBorderDistance;
nLeftBorderDistance = nRightBorderDistance = DEF_BORDER_DIST;
nTopBorderDistance = nBottomBorderDistance = 0;
-+ table::TableBorder aTableBorder;
++
++ PropertyMapPtr pTableDefaults( new PropertyMap );
++ PropertyMapPtr pTableBorders( new PropertyMap );
++
++ // will receive the table style if any
++ TableStyleSheetEntry* pTableStyle = NULL;
+
if( m_aTableProperties.get() )
{
//create properties from the table attributes
-@@ -177,9 +179,10 @@
+@@ -169,35 +292,31 @@
+ m_aTableProperties->find( PropertyDefinition( META_PROP_TABLE_STYLE_NAME, false ) );
+ if(aTableStyleIter != m_aTableProperties->end())
+ {
+- //TODO: apply table style properties recursively
++ // Apply table style properties recursively
+ ::rtl::OUString sTableStyleName;
+ aTableStyleIter->second >>= sTableStyleName;
+ StyleSheetTablePtr pStyleSheetTable = m_rDMapper_Impl.GetStyleSheetTable();
+- const StyleSheetEntry* pStyleSheet = pStyleSheetTable->FindStyleSheetByISTD( sTableStyleName );
++ const StyleSheetEntryPtr pStyleSheet = pStyleSheetTable->FindStyleSheetByISTD( sTableStyleName );
++ pTableStyle = static_cast<TableStyleSheetEntry*>( pStyleSheet.get( ) );
++ m_aTableProperties->erase( aTableStyleIter );
++
if( pStyleSheet )
{
- PropertyMapPtr pMergedProperties = lcl_SearchParentStyleSheetAndMergeProperties(pStyleSheet, pStyleSheetTable);
+- PropertyMapPtr pMergedProperties = lcl_SearchParentStyleSheetAndMergeProperties(pStyleSheet, pStyleSheetTable);
-
- PropertyMap::const_iterator aStylePropIter =
- pMergedProperties->find(PropertyDefinition( META_PROP_CELL_MAR_TOP, false ) );
+- if( aStylePropIter != pMergedProperties->end() )
+- aStylePropIter->second >>= nTopBorderDistance;
++ // First get the style properties, then the table ones
++ PropertyMapPtr pTableProps( m_aTableProperties );
++ TablePropertyMapPtr pEmptyProps( new TablePropertyMap );
+
+- aStylePropIter = pMergedProperties->find(PropertyDefinition( META_PROP_CELL_MAR_BOTTOM, false ) );
+- if( aStylePropIter != pMergedProperties->end() )
+- aStylePropIter->second >>= nBottomBorderDistance;
++ m_aTableProperties = pEmptyProps;
+
+- aStylePropIter = pMergedProperties->find(PropertyDefinition( META_PROP_CELL_MAR_LEFT, false ) );
+- if( aStylePropIter != pMergedProperties->end() )
+- aStylePropIter->second >>= nLeftBorderDistance;
+-
+- aStylePropIter = pMergedProperties->find(PropertyDefinition( META_PROP_CELL_MAR_RIGHT, false ) );
+- if( aStylePropIter != pMergedProperties->end() )
+- aStylePropIter->second >>= nRightBorderDistance;
+-
++ PropertyMapPtr pMergedProperties = lcl_SearchParentStyleSheetAndMergeProperties(pStyleSheet, pStyleSheetTable);
++
++ m_aTableProperties->insert( pMergedProperties );
++ m_aTableProperties->insert( pTableProps );
+ }
+- m_aTableProperties->erase( aTableStyleIter );
+ }
++
++ // Set the table default attributes for the cells
++ pTableDefaults->insert( m_aTableProperties );
+
+ m_aTableProperties->getValue( TablePropertyMap::GAP_HALF, nGapHalf );
+ m_aTableProperties->getValue( TablePropertyMap::LEFT_MARGIN, nLeftMargin );
+@@ -228,6 +347,11 @@
+ aTblBorderIter->second >>= aTableBorder.TopLine;
+ aTableBorder.IsTopLineValid = true;
+ m_aTableProperties->erase( aTblBorderIter );
+
-+ PropertyMap::const_iterator aStylePropIter;
++ pTableBorders->Insert( PROP_TOP_BORDER, false, uno::makeAny( aTableBorder.TopLine ) );
++ PropertyMap::iterator pIt = pTableDefaults->find( PropertyDefinition( PROP_TOP_BORDER, false ) );
++ if ( pIt != pTableDefaults->end( ) )
++ pTableDefaults->erase( pIt );
+ }
+ aTblBorderIter = m_aTableProperties->find( PropertyDefinition(PROP_BOTTOM_BORDER, false) );
+ if( aTblBorderIter != m_aTableProperties->end() )
+@@ -235,6 +359,11 @@
+ aTblBorderIter->second >>= aTableBorder.BottomLine;
+ aTableBorder.IsBottomLineValid = true;
+ m_aTableProperties->erase( aTblBorderIter );
+
-+ aStylePropIter = pMergedProperties->find(PropertyDefinition( META_PROP_CELL_MAR_TOP, false ) );
- if( aStylePropIter != pMergedProperties->end() )
- aStylePropIter->second >>= nTopBorderDistance;
-
-@@ -220,7 +223,6 @@
- m_aTableProperties->Insert( PROP_TABLE_BORDER_DISTANCES, false, uno::makeAny( aDistances ) );
-
- //table border settings
-- table::TableBorder aTableBorder;
-
- PropertyMap::iterator aTblBorderIter = m_aTableProperties->find( PropertyDefinition(PROP_TOP_BORDER, false) );
++ pTableBorders->Insert( PROP_BOTTOM_BORDER, false, uno::makeAny( aTableBorder.BottomLine ) );
++ PropertyMap::iterator pIt = pTableDefaults->find( PropertyDefinition( PROP_BOTTOM_BORDER, false ) );
++ if ( pIt != pTableDefaults->end( ) )
++ pTableDefaults->erase( pIt );
+ }
+ aTblBorderIter = m_aTableProperties->find( PropertyDefinition(PROP_LEFT_BORDER, false) );
if( aTblBorderIter != m_aTableProperties->end() )
-@@ -266,7 +268,7 @@
+@@ -242,6 +371,11 @@
+ aTblBorderIter->second >>= aTableBorder.LeftLine;
+ aTableBorder.IsLeftLineValid = true;
+ m_aTableProperties->erase( aTblBorderIter );
++
++ pTableBorders->Insert( PROP_LEFT_BORDER, false, uno::makeAny( aTableBorder.LeftLine ) );
++ PropertyMap::iterator pIt = pTableDefaults->find( PropertyDefinition( PROP_LEFT_BORDER, false ) );
++ if ( pIt != pTableDefaults->end( ) )
++ pTableDefaults->erase( pIt );
+ }
+ aTblBorderIter = m_aTableProperties->find( PropertyDefinition(PROP_RIGHT_BORDER, false) );
+ if( aTblBorderIter != m_aTableProperties->end() )
+@@ -249,6 +383,11 @@
+ aTblBorderIter->second >>= aTableBorder.RightLine;
+ aTableBorder.IsRightLineValid = true;
+ m_aTableProperties->erase( aTblBorderIter );
++
++ pTableBorders->Insert( PROP_RIGHT_BORDER, false, uno::makeAny( aTableBorder.RightLine ) );
++ PropertyMap::iterator pIt = pTableDefaults->find( PropertyDefinition( PROP_RIGHT_BORDER, false ) );
++ if ( pIt != pTableDefaults->end( ) )
++ pTableDefaults->erase( pIt );
+ }
+ aTblBorderIter = m_aTableProperties->find( PropertyDefinition(META_PROP_HORIZONTAL_BORDER, false) );
+ if( aTblBorderIter != m_aTableProperties->end() )
+@@ -256,6 +395,11 @@
+ aTblBorderIter->second >>= aTableBorder.HorizontalLine;
+ aTableBorder.IsHorizontalLineValid = true;
+ m_aTableProperties->erase( aTblBorderIter );
++
++ pTableBorders->Insert( META_PROP_HORIZONTAL_BORDER, false, uno::makeAny( aTableBorder.HorizontalLine ) );
++ PropertyMap::iterator pIt = pTableDefaults->find( PropertyDefinition( META_PROP_HORIZONTAL_BORDER, false ) );
++ if ( pIt != pTableDefaults->end( ) )
++ pTableDefaults->erase( pIt );
+ }
+ aTblBorderIter = m_aTableProperties->find( PropertyDefinition(META_PROP_VERTICAL_BORDER, false) );
+ if( aTblBorderIter != m_aTableProperties->end() )
+@@ -263,10 +407,15 @@
+ aTblBorderIter->second >>= aTableBorder.VerticalLine;
+ aTableBorder.IsVerticalLineValid = true;
+ m_aTableProperties->erase( aTblBorderIter );
++
++ pTableBorders->Insert( META_PROP_VERTICAL_BORDER, false, uno::makeAny( aTableBorder.VerticalLine ) );
++ PropertyMap::iterator pIt = pTableDefaults->find( PropertyDefinition( META_PROP_VERTICAL_BORDER, false ) );
++ if ( pIt != pTableDefaults->end( ) )
++ pTableDefaults->erase( pIt );
}
aTableBorder.Distance = 0;
aTableBorder.IsDistanceValid = false;
@@ -51,47 +345,171 @@
m_aTableProperties->Insert( PROP_TABLE_BORDER, false, uno::makeAny( aTableBorder ) );
m_aTableProperties->Insert( PROP_LEFT_MARGIN, false, uno::makeAny( nLeftMargin - nGapHalf - nLeftBorderDistance));
-@@ -307,6 +309,13 @@
- //contains the default border of the line
- PropertyMapPtr aCellBorders( new PropertyMap );
-
-+ // Fill the defaults with the table default borders
-+ aCellBorders->Insert( PROP_TOP_BORDER, false, uno::makeAny( aTableBorder.TopLine ) );
-+ aCellBorders->Insert( PROP_RIGHT_BORDER, false, uno::makeAny( aTableBorder.RightLine ) );
-+ aCellBorders->Insert( PROP_LEFT_BORDER, false, uno::makeAny( aTableBorder.LeftLine ) );
-+ aCellBorders->Insert( PROP_BOTTOM_BORDER, false, uno::makeAny( aTableBorder.BottomLine ) );
-+
+@@ -294,8 +443,9 @@
+ // std::vector< std::vector<PropertyMapPtr> > m_aCellProperties
+ PropertyMapVector2::const_iterator aRowOfCellsIterator = m_aCellProperties.begin();
+ PropertyMapVector2::const_iterator aRowOfCellsIteratorEnd = m_aCellProperties.end();
++ PropertyMapVector2::const_iterator aLastRowIterator = --m_aCellProperties.end();
+ sal_Int32 nRow = 0;
+-
+
+ //it's a uno::Sequence< beans::PropertyValues >*
+ RowPropertyValuesSeq_t* pCellProperties = aCellProperties.getArray();
+ while( aRowOfCellsIterator != aRowOfCellsIteratorEnd )
+@@ -303,67 +453,70 @@
+ //aRowOfCellsIterator points to a vector of PropertyMapPtr
+ PropertyMapVector1::const_iterator aCellIterator = aRowOfCellsIterator->begin();
+ PropertyMapVector1::const_iterator aCellIteratorEnd = aRowOfCellsIterator->end();
+-
+- //contains the default border of the line
+- PropertyMapPtr aCellBorders( new PropertyMap );
+-
++ PropertyMapVector1::const_iterator aLastCellIterator = --aRowOfCellsIterator->end();
++
++ // Get the row style properties
++ sal_Int32 nRowStyleMask = sal_Int32( 0 );
++ PropertyMapPtr pRowProps = m_aRowProperties[nRow];
++ if ( pRowProps.get( ) )
++ {
++ PropertyMap::iterator pTcCnfStyleIt = pRowProps->find( PropertyDefinition( PROP_CNF_STYLE, true ) );
++ if ( pTcCnfStyleIt != pRowProps->end( ) )
++ {
++ if ( pTableStyle )
++ {
++ rtl::OUString sMask;
++ pTcCnfStyleIt->second >>= sMask;
++ nRowStyleMask = sMask.toInt32( 2 );
++ }
++ pRowProps->erase( pTcCnfStyleIt );
++ }
++ }
++
sal_Int32 nCell = 0;
pCellProperties[nRow].realloc( aRowOfCellsIterator->size() );
beans::PropertyValues* pSingleCellProperties = pCellProperties[nRow].getArray();
-@@ -318,7 +327,7 @@
+ while( aCellIterator != aCellIteratorEnd )
+ {
+- //TODO: aCellIterator contains HorizontalBorder and VerticalBorder
+- // they have to be removed, depending on the position of the cell they
+- // have to be moved to BottomBorder/RightBorder respectively
++ PropertyMapPtr pAllCellProps( new PropertyMap );
++
++ bool bIsEndCol = aCellIterator == aLastCellIterator;
++ bool bIsEndRow = aRowOfCellsIterator == aLastRowIterator;
++
//aCellIterator points to a PropertyMapPtr;
if( aCellIterator->get() )
{
- if( nCell && aCellBorders->size() )
-+ if( aCellBorders->size() )
++ if ( pTableDefaults->size( ) )
++ pAllCellProps->insert( pTableDefaults );
++
++ // Fill the cell properties with the ones of the style
++ sal_Int32 nCellStyleMask = 0;
++ const PropertyMap::iterator aCnfStyleIter =
++ aCellIterator->get()->find( PropertyDefinition( PROP_CNF_STYLE, false ) );
++ if ( aCnfStyleIter != aCellIterator->get( )->end( ) )
{
- //now apply the default border
- //TODO: This overwrites the existing values!
-@@ -479,7 +488,7 @@
+- //now apply the default border
+- //TODO: This overwrites the existing values!
+- aCellIterator->get()->insert( aCellBorders, false );
+- }
++ if ( pTableStyle ) {
++ // Add the style properties
++ rtl::OUString sMask;
++ aCnfStyleIter->second >>= sMask;
+
+-
+- const PropertyMap::iterator aVerticalIter =
+- aCellIterator->get()->find( PropertyDefinition(META_PROP_VERTICAL_BORDER, false) );
+- const PropertyMap::iterator aHorizontalIter =
+- aCellIterator->get()->find( PropertyDefinition(META_PROP_HORIZONTAL_BORDER, false) );
+- const PropertyMap::const_iterator aRightIter =
+- aCellIterator->get()->find( PropertyDefinition(PROP_RIGHT_BORDER, false) );
+- const PropertyMap::const_iterator aBottomIter =
+- aCellIterator->get()->find( PropertyDefinition(PROP_BOTTOM_BORDER, false) );
++ nCellStyleMask = sMask.toInt32( 2 );
++ }
++ aCellIterator->get( )->erase( aCnfStyleIter );
++ }
+
+- if( aVerticalIter != aCellIterator->get()->end())
++ if ( pTableStyle )
+ {
+- if( !nCell )
+- aCellBorders->insert(*aVerticalIter);
+- aCellIterator->get()->erase( aVerticalIter );
++ PropertyMapPtr pStyleProps = pTableStyle->GetProperties( nCellStyleMask + nRowStyleMask );
++ pAllCellProps->insert( pStyleProps );
+ }
+- if( aHorizontalIter != aCellIterator->get()->end())
+- {
+- if( !nCell )
+- aCellBorders->insert(*aHorizontalIter);
+- aCellIterator->get()->erase( aHorizontalIter );
+- }
+- //fill the additional borders into the line default border
+- if( !nCell )
+- {
+- const PropertyMap::const_iterator aLeftIter =
+- aCellIterator->get()->find( PropertyDefinition(PROP_RIGHT_BORDER, false) );
+- if(aLeftIter != aCellIterator->get()->end())
+- aCellBorders->insert(*aLeftIter);
+- if(aRightIter != aCellIterator->get()->end())
+- aCellBorders->insert(*aRightIter);
+- const PropertyMap::const_iterator aTopIter =
+- aCellIterator->get()->find( PropertyDefinition(PROP_TOP_BORDER, false) );
+- if(aTopIter != aCellIterator->get()->end())
+- aCellBorders->insert(*aTopIter);
+- if(aBottomIter != aCellIterator->get()->end())
+- aCellBorders->insert(*aBottomIter);
+- }
+-
++
++ // Then add the cell properties
++ pAllCellProps->insert( *aCellIterator );
++ aCellIterator->get( )->swap( *pAllCellProps.get( ) );
++
++ lcl_computeCellBorders( pTableBorders, *aCellIterator, nCell, nRow, bIsEndCol, bIsEndRow );
++
+ //now set the default left+right border distance TODO: there's an sprm containing the default distance!
+ const PropertyMap::const_iterator aLeftDistanceIter =
+ aCellIterator->get()->find( PropertyDefinition(PROP_LEFT_BORDER_DISTANCE, false) );
+@@ -410,7 +563,7 @@
+ sNames += sName;
+ sNames += ::rtl::OUString('-');
+ }
+- sNames += ::rtl::OUString(' ');
++ sNames += ::rtl::OUString('\n');
+ }
+ (void)sNames;
+ }
+@@ -479,7 +632,8 @@
(void) nCellPropertiesProperties;
++nCellPropertiesProperties;
}
-#endif
+#endif
++ clog << "Converting table" << endl;
m_xText->convertToTable(*m_pTableSeq,
aCellProperties,
aRowProperties,
-@@ -492,6 +501,7 @@
+@@ -491,7 +645,14 @@
+ clog << "failed to import table!" << endl;
#endif
}
++#if OSL_DEBUG_LEVEL > 1
++ catch ( uno::Exception e )
++ {
++ clog << "Caught an other exception: " << rtl::OUStringToOString( e.Message, RTL_TEXTENCODING_UTF8 ).getStr( ) << endl;
++ }
++#endif
}
+
m_aTableProperties.reset();
m_aCellProperties.clear();
m_aRowProperties.clear();
-@@ -529,7 +539,15 @@
+@@ -529,7 +690,15 @@
TablePropertyMapPtr pProps )
{
sal_uInt32 nRow = m_aRowProperties.size();
@@ -108,6 +526,1145 @@
#if OSL_DEBUG_LEVEL > 1
clog << "<table.cell>";
+Index: writerfilter/source/dmapper/TDefTableHandler.cxx
+===================================================================
+--- writerfilter/source/dmapper/TDefTableHandler.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/TDefTableHandler.cxx (copie de travail)
+@@ -155,6 +155,11 @@
+ case NS_rtf::LN_UNUSED2_15: // 0x2877
+ // ignored
+ break;
++ case NS_ooxml::LN_CT_Border_themeColor:
++ case NS_ooxml::LN_CT_Border_themeTint:
++ case NS_ooxml::LN_CT_Border_themeShade:
++ // ignored
++ break;
+ default:
+ OSL_ENSURE(false, "unknown attribute");
+ }
+@@ -199,6 +204,12 @@
+ case NS_rtf::LN_BRCRIGHT:
+ m_aRightBorderLines.push_back(aBorderLine);
+ break;
++ case NS_ooxml::LN_CT_TcBorders_insideH:
++ m_aInsideHBorderLines.push_back(aBorderLine);
++ break;
++ case NS_ooxml::LN_CT_TcBorders_insideV:
++ m_aInsideVBorderLines.push_back(aBorderLine);
++ break;
+ default:;
+ }
+ }
+@@ -219,6 +230,10 @@
+ case NS_ooxml::LN_CT_TcBorders_bottom:
+ /* WRITERFILTERSTATUS: done: 1, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_TcBorders_right:
++ case NS_ooxml::LN_CT_TcBorders_insideH:
++ case NS_ooxml::LN_CT_TcBorders_insideV:
++ case NS_ooxml::LN_CT_TcBorders_tl2br:
++ case NS_ooxml::LN_CT_TcBorders_tr2bl:
+ {
+ writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+ localResolve( rSprm.getId(), pProperties );
+@@ -281,6 +296,10 @@
+ pCellProperties->Insert( PROP_BOTTOM_BORDER, false, uno::makeAny( m_aBottomBorderLines[nCell] ) );
+ if( m_aRightBorderLines.size() > nCell )
+ pCellProperties->Insert( PROP_RIGHT_BORDER, false, uno::makeAny( m_aRightBorderLines[nCell] ) );
++ if( m_aInsideHBorderLines.size() > nCell )
++ pCellProperties->Insert( META_PROP_HORIZONTAL_BORDER, false, uno::makeAny( m_aInsideHBorderLines[nCell] ) );
++ if( m_aInsideVBorderLines.size() > nCell )
++ pCellProperties->Insert( META_PROP_VERTICAL_BORDER, false, uno::makeAny( m_aInsideVBorderLines[nCell] ) );
+ }
+ /*-- 09.05.2007 13:14:17---------------------------------------------------
+
+Index: writerfilter/source/dmapper/TDefTableHandler.hxx
+===================================================================
+--- writerfilter/source/dmapper/TDefTableHandler.hxx (rÃvision 267004)
++++ writerfilter/source/dmapper/TDefTableHandler.hxx (copie de travail)
+@@ -56,6 +56,10 @@
+ ::std::vector< ::com::sun::star::table::BorderLine > m_aRightBorderLines;
+ ::std::vector< ::com::sun::star::table::BorderLine > m_aTopBorderLines;
+ ::std::vector< ::com::sun::star::table::BorderLine > m_aBottomBorderLines;
++ ::std::vector< ::com::sun::star::table::BorderLine > m_aInsideHBorderLines;
++ ::std::vector< ::com::sun::star::table::BorderLine > m_aInsideVBorderLines;
++ ::std::vector< ::com::sun::star::table::BorderLine > m_aTl2brBorderLines;
++ ::std::vector< ::com::sun::star::table::BorderLine > m_aTr2blBorderLines;
+
+ //values of the current border
+ sal_Int32 m_nLineWidth;
+Index: writerfilter/source/dmapper/StyleSheetTable.cxx
+===================================================================
+--- writerfilter/source/dmapper/StyleSheetTable.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/StyleSheetTable.cxx (copie de travail)
+@@ -30,6 +30,7 @@
+ #include <StyleSheetTable.hxx>
+ #include <dmapper/DomainMapper.hxx>
+ #include <ConversionHelper.hxx>
++#include <TblStylePrHandler.hxx>
+ #include <BorderHandler.hxx>
+ #include <doctok/resourceids.hxx>
+ #include <ooxml/resourceids.hxx>
+@@ -70,6 +71,175 @@
+ {
+ }
+
++TableStyleSheetEntry::TableStyleSheetEntry( StyleSheetEntry& rEntry, StyleSheetTable* pStyles ):
++ StyleSheetEntry( ),
++ m_pStyleSheet( pStyles )
++{
++ bIsDefaultStyle = rEntry.bIsDefaultStyle;
++ bInvalidHeight = rEntry.bInvalidHeight;
++ bHasUPE = rEntry.bHasUPE;
++ nStyleTypeCode = STYLE_TYPE_TABLE;
++ sBaseStyleIdentifier = rEntry.sBaseStyleIdentifier;
++ sNextStyleIdentifier = rEntry.sNextStyleIdentifier;
++ sStyleName = rEntry.sStyleName;
++ sStyleName1 = rEntry.sStyleName1;
++
++ m_nColBandSize = 1;
++ m_nRowBandSize = 1;
++}
++
++TableStyleSheetEntry::~TableStyleSheetEntry( )
++{
++ m_pStyleSheet = NULL;
++}
++
++void TableStyleSheetEntry::AddTblStylePr( TblStyleType nType, PropertyMapPtr pProps )
++{
++ TblStyleType pTypesToFix[] =
++ {
++ TBL_STYLE_FIRSTROW,
++ TBL_STYLE_LASTROW,
++ TBL_STYLE_FIRSTCOL,
++ TBL_STYLE_LASTCOL
++ };
++
++ PropertyIds pPropsToCheck[] =
++ {
++ PROP_BOTTOM_BORDER,
++ PROP_TOP_BORDER,
++ PROP_RIGHT_BORDER,
++ PROP_LEFT_BORDER
++ };
++
++ int i = 0;
++ while ( i < 4 )
++ {
++ if ( nType == pTypesToFix[i] )
++ {
++ PropertyIds nChecked = pPropsToCheck[i];
++ PropertyMap::iterator pCheckedIt = pProps->find( PropertyDefinition( nChecked, false ) );
++
++ PropertyIds nInsideProp = ( i < 2 ) ? META_PROP_HORIZONTAL_BORDER : META_PROP_VERTICAL_BORDER;
++ PropertyMap::iterator pInsideIt = pProps->find( PropertyDefinition( nInsideProp, false ) );
++
++ bool bHasChecked = pCheckedIt != pProps->end( );
++ bool bHasInside = pInsideIt != pProps->end( );
++
++ if ( bHasChecked && bHasInside )
++ {
++ // In this case, remove the inside border
++ pProps->erase( pInsideIt );
++ }
++
++ i = 4; // Stop looping stupidly
++ }
++ i++;
++ }
++
++ // Append the tblStylePr
++ m_aStyles[nType] = pProps;
++}
++
++PropertyMapPtr TableStyleSheetEntry::GetProperties( sal_Int32 nMask )
++{
++ PropertyMapPtr pProps( new PropertyMap );
++
++ // First get the parent properties
++ StyleSheetEntryPtr pEntry = m_pStyleSheet->FindParentStyleSheet( sBaseStyleIdentifier );
++
++ if ( pEntry.get( ) )
++ {
++ TableStyleSheetEntry* pParent = static_cast<TableStyleSheetEntry *>( pEntry.get( ) );
++ pProps->insert( pParent->GetProperties( nMask ) );
++ }
++
++ // And finally get the mask ones
++ pProps->insert( GetLocalPropertiesFromMask( nMask ) );
++
++ return pProps;
++}
++
++void lcl_mergeProps( PropertyMapPtr pToFill, PropertyMapPtr pToAdd, TblStyleType nStyleId )
++{
++ static PropertyIds pPropsToCheck[] =
++ {
++ PROP_BOTTOM_BORDER,
++ PROP_TOP_BORDER,
++ PROP_RIGHT_BORDER,
++ PROP_LEFT_BORDER,
++ };
++
++ bool pRemoveInside[] =
++ {
++ ( nStyleId == TBL_STYLE_FIRSTROW ),
++ ( nStyleId == TBL_STYLE_LASTROW ),
++ ( nStyleId == TBL_STYLE_LASTCOL ),
++ ( nStyleId == TBL_STYLE_FIRSTCOL )
++ };
++
++ for ( int i = 0 ; i < 7; i++ )
++ {
++ PropertyIds nId = pPropsToCheck[i];
++ PropertyDefinition aProp( nId, false );
++ PropertyMap::iterator pIt = pToAdd->find( aProp );
++
++ if ( pIt != pToAdd->end( ) )
++ {
++ PropertyMap::iterator pDestIt = pToFill->find( aProp );
++
++ if ( pRemoveInside[i] )
++ {
++ // Remove the insideH and insideV depending on the cell pos
++ PropertyIds nInsideProp = ( i < 2 ) ? META_PROP_HORIZONTAL_BORDER : META_PROP_VERTICAL_BORDER;
++ pDestIt = pToFill->find( PropertyDefinition( nInsideProp, false ) );
++ if ( pDestIt != pToFill->end( ) )
++ pToFill->erase( pDestIt );
++ }
++ }
++ }
++
++ pToFill->insert( pToAdd );
++}
++
++PropertyMapPtr TableStyleSheetEntry::GetLocalPropertiesFromMask( sal_Int32 nMask )
++{
++ // Order from right to left
++ static TblStyleType aBitsOrder[] =
++ {
++ TBL_STYLE_SWCELL,
++ TBL_STYLE_SECELL,
++ TBL_STYLE_NWCELL,
++ TBL_STYLE_NECELL,
++ TBL_STYLE_BAND2HORZ,
++ TBL_STYLE_BAND1HORZ,
++ TBL_STYLE_BAND2VERT,
++ TBL_STYLE_BAND1VERT,
++ TBL_STYLE_LASTCOL,
++ TBL_STYLE_FIRSTCOL,
++ TBL_STYLE_LASTROW,
++ TBL_STYLE_FIRSTROW
++ };
++
++ // Get the properties applying according to the mask
++ PropertyMapPtr pProps( new PropertyMap( ) );
++ short nBit = 0;
++ do
++ {
++ TblStyleType nStyleId = aBitsOrder[nBit];
++ TblStylePrs::iterator pIt = m_aStyles.find( nStyleId );
++
++ short nTestBit = 1 << nBit;
++ sal_Int32 nBitMask = sal_Int32( nTestBit );
++ if ( ( nMask & nBitMask ) && ( pIt != m_aStyles.end( ) ) )
++ lcl_mergeProps( pProps, pIt->second, nStyleId );
++
++ nBit++;
++ }
++ while ( nBit < 12 );
++
++ return pProps;
++}
++
+ /*-- 06.02.2008 11:30:46---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+@@ -92,8 +262,8 @@
+ DomainMapper& m_rDMapper;
+ uno::Reference< text::XTextDocument> m_xTextDocument;
+ uno::Reference< beans::XPropertySet> m_xTextDefaults;
+- std::vector< StyleSheetEntry > m_aStyleSheetEntries;
+- StyleSheetEntry *m_pCurrentEntry;
++ std::vector< StyleSheetEntryPtr > m_aStyleSheetEntries;
++ StyleSheetEntryPtr m_pCurrentEntry;
+ PropertyMapPtr m_pDefaultParaProps, m_pDefaultCharProps;
+ PropertyMapPtr m_pCurrentProps;
+ StringPairMap_t m_aStyleNameMap;
+@@ -110,7 +280,7 @@
+ StyleSheetTable_Impl::StyleSheetTable_Impl(DomainMapper& rDMapper, uno::Reference< text::XTextDocument> xTextDocument ) :
+ m_rDMapper( rDMapper ),
+ m_xTextDocument( xTextDocument ),
+- m_pCurrentEntry(0),
++ m_pCurrentEntry(),
+ m_pDefaultParaProps(new PropertyMap),
+ m_pDefaultCharProps(new PropertyMap)
+ {
+@@ -659,13 +829,23 @@
+ // case NS_rtf::LN_STYLESHEET: break;
+ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_Style_type:
++ {
+ /* defaults should be set at the service "com.sun.star.text.Defaults"
+ if (nIntValue == 1)
+ *(m_pImpl->m_pCurrentEntry->pProperties) = *(m_pImpl->m_pDefaultParaProps);
+ else if (nIntValue == 2)
+ *(m_pImpl->m_pCurrentEntry->pProperties) = *(m_pImpl->m_pDefaultCharProps);*/
+- m_pImpl->m_pCurrentEntry->nStyleTypeCode = (StyleType)nIntValue;
++ StyleType nType = ( StyleType ) nIntValue;
++ if ( nType == STYLE_TYPE_TABLE )
++ {
++ StyleSheetEntryPtr pEntry = m_pImpl->m_pCurrentEntry;
++ TableStyleSheetEntryPtr pTableEntry( new TableStyleSheetEntry( *pEntry.get( ), this ) );
++ m_pImpl->m_pCurrentEntry = pTableEntry;
++ }
++ else
++ m_pImpl->m_pCurrentEntry->nStyleTypeCode = (StyleType)nIntValue;
+ break;
++ }
+ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_Style_default:
+ m_pImpl->m_pCurrentEntry->bIsDefaultStyle = (nIntValue != 0);
+@@ -707,7 +887,7 @@
+ (void)nIntValue;
+ rtl::OUString sStringValue = pValue.get() ? pValue->getString() : rtl::OUString();
+ //printf ( "StyleSheetTable::sprm(0x%.4x, 0x%.4x) [%s]\n", (unsigned int)nSprmId, (unsigned int)nIntValue, ::rtl::OUStringToOString(sStringValue, RTL_TEXTENCODING_DONTKNOW).getStr());
+-
++
+ /* WRITERFILTERSTATUS: table: StyleSheetTable_sprm */
+ switch(nSprmId)
+ {
+@@ -753,14 +933,29 @@
+ case NS_ooxml::LN_CT_Style_rsid:
+ /* WRITERFILTERSTATUS: done: 0, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_Style_trPr:
+- /* WRITERFILTERSTATUS: done: 0, planned: 0, spent: 0 */
+- case NS_ooxml::LN_CT_Style_tcPr:
+ break;
+ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
++ case NS_ooxml::LN_CT_Style_tblStylePr: //contains to table properties
++ {
++ writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
++ if( pProperties.get())
++ {
++ TblStylePrHandlerPtr pTblStylePrHandler( new TblStylePrHandler( m_pImpl->m_rDMapper ) );
++ pProperties->resolve( *pTblStylePrHandler );
++
++ // Add the properties to the table style
++ TblStyleType nType = pTblStylePrHandler->getType( );
++ PropertyMapPtr pProps = pTblStylePrHandler->getProperties( );
++ StyleSheetEntryPtr pEntry = m_pImpl->m_pCurrentEntry;
++ TableStyleSheetEntry* pTableEntry = static_cast<TableStyleSheetEntry*>( pEntry.get( ) );
++ pTableEntry->AddTblStylePr( nType, pProps );
++ }
++ break;
++ }
++ case NS_ooxml::LN_CT_Style_tcPr:
++ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_Style_tblPr: //contains table properties
+ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+- case NS_ooxml::LN_CT_Style_tblStylePr: //contains to table properties
+- /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_DocDefaults_pPrDefault:
+ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_DocDefaults_rPrDefault:
+@@ -805,14 +1000,35 @@
+ }
+ }
+ break;
+- /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
++ case NS_ooxml::LN_CT_TblPrBase_tblStyleRowBandSize:
++ case NS_ooxml::LN_CT_TblPrBase_tblStyleColBandSize:
++ {
++ StyleSheetEntry* pEntry = m_pImpl->m_pCurrentEntry.get( );
++ TableStyleSheetEntry *pTEntry = static_cast<TableStyleSheetEntry*>( pEntry );
++ if ( pTEntry )
++ {
++ if ( nSprmId == NS_ooxml::LN_CT_TblPrBase_tblStyleRowBandSize )
++ pTEntry->m_nRowBandSize = nIntValue;
++ else
++ pTEntry->m_nColBandSize = nIntValue;
++ }
++ }
++ break;
++ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_Style_pPr:
+ /* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
+ case NS_ooxml::LN_CT_Style_rPr:
+ default:
+ if (!m_pImpl->m_pCurrentEntry)
+ break;
+- m_pImpl->m_rDMapper.sprm( rSprm, m_pImpl->m_pCurrentEntry->pProperties );
++ TablePropertiesHandlerPtr pTblHandler( new TablePropertiesHandler( true ) );
++ pTblHandler->SetProperties( m_pImpl->m_pCurrentEntry->pProperties );
++ if ( !pTblHandler->sprm( rSprm ) )
++ {
++ m_pImpl->m_rDMapper.PushStyleSheetProperties( m_pImpl->m_pCurrentEntry->pProperties );
++ m_pImpl->m_rDMapper.sprm( rSprm );
++ m_pImpl->m_rDMapper.PopStyleSheetProperties( );
++ }
+ }
+ }
+ /*-- 19.06.2006 12:04:33---------------------------------------------------
+@@ -823,7 +1039,8 @@
+ //create a new style entry
+ // printf("StyleSheetTable::entry(...)\n");
+ OSL_ENSURE( !m_pImpl->m_pCurrentEntry, "current entry has to be NULL here");
+- m_pImpl->m_pCurrentEntry = new StyleSheetEntry;
++ StyleSheetEntryPtr pNewEntry( new StyleSheetEntry );
++ m_pImpl->m_pCurrentEntry = pNewEntry;
+ m_pImpl->m_rDMapper.PushStyleSheetProperties( m_pImpl->m_pCurrentEntry->pProperties );
+ ref->resolve(*this);
+ //append it to the table
+@@ -831,13 +1048,14 @@
+ if( !m_pImpl->m_rDMapper.IsOOXMLImport() || m_pImpl->m_pCurrentEntry->sStyleName.getLength() >0)
+ {
+ m_pImpl->m_pCurrentEntry->sConvertedStyleName = ConvertStyleName( m_pImpl->m_pCurrentEntry->sStyleName );
+- m_pImpl->m_aStyleSheetEntries.push_back( *m_pImpl->m_pCurrentEntry );
++ m_pImpl->m_aStyleSheetEntries.push_back( m_pImpl->m_pCurrentEntry );
+ }
+ else
+ {
+ //TODO: this entry contains the default settings - they have to be added to the settings
+ }
+- m_pImpl->m_pCurrentEntry = 0;
++ StyleSheetEntryPtr pEmptyEntry;
++ m_pImpl->m_pCurrentEntry = pEmptyEntry;
+ }
+ /*-- 21.06.2006 15:34:49---------------------------------------------------
+ sorting helper
+@@ -910,16 +1128,17 @@
+ xStyleFamilies->getByName(rPropNameSupplier.GetName( PROP_PARAGRAPH_STYLES )) >>= xParaStyles;
+ if(xCharStyles.is() && xParaStyles.is())
+ {
+- std::vector< StyleSheetEntry >::iterator aIt = m_pImpl->m_aStyleSheetEntries.begin();
++ std::vector< StyleSheetEntryPtr >::iterator aIt = m_pImpl->m_aStyleSheetEntries.begin();
+ while( aIt != m_pImpl->m_aStyleSheetEntries.end() )
+ {
+- if( aIt->nStyleTypeCode == STYLE_TYPE_CHAR || aIt->nStyleTypeCode == STYLE_TYPE_PARA )
++ StyleSheetEntryPtr pEntry = *aIt;
++ if( pEntry->nStyleTypeCode == STYLE_TYPE_CHAR || pEntry->nStyleTypeCode == STYLE_TYPE_PARA )
+ {
+- bool bParaStyle = aIt->nStyleTypeCode == STYLE_TYPE_PARA;
++ bool bParaStyle = pEntry->nStyleTypeCode == STYLE_TYPE_PARA;
+ bool bInsert = false;
+ uno::Reference< container::XNameContainer > xStyles = bParaStyle ? xParaStyles : xCharStyles;
+ uno::Reference< style::XStyle > xStyle;
+- ::rtl::OUString sConvertedStyleName = ConvertStyleName( aIt->sStyleName );
++ ::rtl::OUString sConvertedStyleName = ConvertStyleName( pEntry->sStyleName );
+ if(xStyles->hasByName( sConvertedStyleName ))
+ xStyles->getByName( sConvertedStyleName ) >>= xStyle;
+ else
+@@ -931,12 +1150,12 @@
+ rPropNameSupplier.GetName( PROP_SERVICE_CHAR_STYLE )),
+ uno::UNO_QUERY_THROW);
+ }
+- if( aIt->sBaseStyleIdentifier.getLength() )
++ if( pEntry->sBaseStyleIdentifier.getLength() )
+ {
+ try
+ {
+ //TODO: Handle cases where a paragraph <> character style relation is needed
+- xStyle->setParentStyle(ConvertStyleName( aIt->sBaseStyleIdentifier ));
++ xStyle->setParentStyle(ConvertStyleName( pEntry->sBaseStyleIdentifier ));
+ }
+ catch( const uno::RuntimeException& )
+ {
+@@ -955,37 +1174,37 @@
+ {
+ uno::Any aTwoHundredFortyTwip = uno::makeAny(12.);
+ // font size to 240 twip (12 pts) for all if not set
+- aIt->pProperties->Insert(PROP_CHAR_HEIGHT, true, aTwoHundredFortyTwip, false);
++ pEntry->pProperties->Insert(PROP_CHAR_HEIGHT, true, aTwoHundredFortyTwip, false);
+ // western font not already set -> apply first font
+ const FontEntry* pWesternFontEntry = rFontTable->getFontEntry( 0 );
+ rtl::OUString sWesternFontName = pWesternFontEntry->sFontName;
+- aIt->pProperties->Insert(PROP_CHAR_FONT_NAME, true, uno::makeAny( sWesternFontName ), false);
++ pEntry->pProperties->Insert(PROP_CHAR_FONT_NAME, true, uno::makeAny( sWesternFontName ), false);
+
+ // CJK ... apply second font
+ const FontEntry* pCJKFontEntry = rFontTable->getFontEntry( 2 );
+- aIt->pProperties->Insert(PROP_CHAR_FONT_NAME_ASIAN, true, uno::makeAny( pCJKFontEntry->sFontName ), false);
+- aIt->pProperties->Insert(PROP_CHAR_HEIGHT_ASIAN, true, aTwoHundredFortyTwip, false);
++ pEntry->pProperties->Insert(PROP_CHAR_FONT_NAME_ASIAN, true, uno::makeAny( pCJKFontEntry->sFontName ), false);
++ pEntry->pProperties->Insert(PROP_CHAR_HEIGHT_ASIAN, true, aTwoHundredFortyTwip, false);
+ // CTL ... apply third font, if available
+ if( nFontCount > 3 )
+ {
+ const FontEntry* pCTLFontEntry = rFontTable->getFontEntry( 3 );
+- aIt->pProperties->Insert(PROP_CHAR_FONT_NAME_COMPLEX, true, uno::makeAny( pCTLFontEntry->sFontName ), false);
+- aIt->pProperties->Insert(PROP_CHAR_HEIGHT_COMPLEX, true, aTwoHundredFortyTwip, false);
++ pEntry->pProperties->Insert(PROP_CHAR_FONT_NAME_COMPLEX, true, uno::makeAny( pCTLFontEntry->sFontName ), false);
++ pEntry->pProperties->Insert(PROP_CHAR_HEIGHT_COMPLEX, true, aTwoHundredFortyTwip, false);
+ }
+ }
+ // Widow/Orphan -> set both to two if not already set
+ uno::Any aTwo = uno::makeAny(sal_Int8(2));
+- aIt->pProperties->Insert(PROP_PARA_WIDOWS, true, aTwo, false);
+- aIt->pProperties->Insert(PROP_PARA_ORPHANS, true, aTwo, false);
++ pEntry->pProperties->Insert(PROP_PARA_WIDOWS, true, aTwo, false);
++ pEntry->pProperties->Insert(PROP_PARA_ORPHANS, true, aTwo, false);
+ // Left-to-right direction if not already set
+- aIt->pProperties->Insert(PROP_WRITING_MODE, true, uno::makeAny( sal_Int16(text::WritingMode_LR_TB) ), false);
++ pEntry->pProperties->Insert(PROP_WRITING_MODE, true, uno::makeAny( sal_Int16(text::WritingMode_LR_TB) ), false);
+ // font color COL_AUTO if not already set
+- aIt->pProperties->Insert(PROP_CHAR_COLOR, true, uno::makeAny( sal_Int32(0xffffffff) ), false);
++ pEntry->pProperties->Insert(PROP_CHAR_COLOR, true, uno::makeAny( sal_Int32(0xffffffff) ), false);
+ }
+
+- uno::Sequence< beans::PropertyValue > aPropValues = aIt->pProperties->GetPropertyValues();
++ uno::Sequence< beans::PropertyValue > aPropValues = pEntry->pProperties->GetPropertyValues();
+ bool bAddFollowStyle = false;
+- if(bParaStyle && !aIt->sNextStyleIdentifier.getLength() )
++ if(bParaStyle && !pEntry->sNextStyleIdentifier.getLength() )
+ {
+ bAddFollowStyle = true;
+ }
+@@ -1037,15 +1256,15 @@
+ if(bAddFollowStyle)
+ {
+ //find the name of the Next style
+- std::vector< StyleSheetEntry >::iterator aNextStyleIt = m_pImpl->m_aStyleSheetEntries.begin();
++ std::vector< StyleSheetEntryPtr >::iterator aNextStyleIt = m_pImpl->m_aStyleSheetEntries.begin();
+ for( ; aNextStyleIt != m_pImpl->m_aStyleSheetEntries.end(); ++aNextStyleIt )
+ {
+- if( aNextStyleIt->sStyleName.getLength() &&
+- aNextStyleIt->sStyleName == aIt->sNextStyleIdentifier)
++ if( ( *aNextStyleIt )->sStyleName.getLength() &&
++ ( *aNextStyleIt )->sStyleName == pEntry->sNextStyleIdentifier)
+ {
+ beans::PropertyValue aNew;
+ aNew.Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FollowStyle"));
+- aNew.Value = uno::makeAny(ConvertStyleName( aNextStyleIt->sStyleIdentifierD ));
++ aNew.Value = uno::makeAny(ConvertStyleName( ( *aNextStyleIt )->sStyleIdentifierD ));
+ aSortedPropVals.Insert( aNew );
+ break;
+ }
+@@ -1084,14 +1303,14 @@
+ /*-- 22.06.2006 15:56:56---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-const StyleSheetEntry* StyleSheetTable::FindStyleSheetByISTD(const ::rtl::OUString& sIndex)
++const StyleSheetEntryPtr StyleSheetTable::FindStyleSheetByISTD(const ::rtl::OUString& sIndex)
+ {
+- const StyleSheetEntry* pRet = 0;
++ StyleSheetEntryPtr pRet;
+ for( sal_uInt32 nPos = 0; nPos < m_pImpl->m_aStyleSheetEntries.size(); ++nPos )
+ {
+- if( m_pImpl->m_aStyleSheetEntries[nPos].sStyleIdentifierD == sIndex)
++ if( m_pImpl->m_aStyleSheetEntries[nPos]->sStyleIdentifierD == sIndex)
+ {
+- pRet = &m_pImpl->m_aStyleSheetEntries[nPos];
++ pRet = m_pImpl->m_aStyleSheetEntries[nPos];
+ break;
+ }
+ }
+@@ -1100,14 +1319,14 @@
+ /*-- 28.12.2007 14:45:45---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-const StyleSheetEntry* StyleSheetTable::FindStyleSheetByStyleName(const ::rtl::OUString& sIndex)
++const StyleSheetEntryPtr StyleSheetTable::FindStyleSheetByStyleName(const ::rtl::OUString& sIndex)
+ {
+- const StyleSheetEntry* pRet = 0;
++ StyleSheetEntryPtr pRet;
+ for( sal_uInt32 nPos = 0; nPos < m_pImpl->m_aStyleSheetEntries.size(); ++nPos )
+ {
+- if( m_pImpl->m_aStyleSheetEntries[nPos].sStyleName == sIndex)
++ if( m_pImpl->m_aStyleSheetEntries[nPos]->sStyleName == sIndex)
+ {
+- pRet = &m_pImpl->m_aStyleSheetEntries[nPos];
++ pRet = m_pImpl->m_aStyleSheetEntries[nPos];
+ break;
+ }
+ }
+@@ -1116,14 +1335,14 @@
+ /*-- 28.12.2007 14:45:45---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-const StyleSheetEntry* StyleSheetTable::FindStyleSheetByConvertedStyleName(const ::rtl::OUString& sIndex)
++const StyleSheetEntryPtr StyleSheetTable::FindStyleSheetByConvertedStyleName(const ::rtl::OUString& sIndex)
+ {
+- const StyleSheetEntry* pRet = 0;
++ StyleSheetEntryPtr pRet;
+ for( sal_uInt32 nPos = 0; nPos < m_pImpl->m_aStyleSheetEntries.size(); ++nPos )
+ {
+- if( m_pImpl->m_aStyleSheetEntries[nPos].sConvertedStyleName == sIndex)
++ if( m_pImpl->m_aStyleSheetEntries[nPos]->sConvertedStyleName == sIndex)
+ {
+- pRet = &m_pImpl->m_aStyleSheetEntries[nPos];
++ pRet = m_pImpl->m_aStyleSheetEntries[nPos];
+ break;
+ }
+ }
+@@ -1133,23 +1352,17 @@
+ /*-- 17.07.2006 11:47:00---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-const StyleSheetEntry* StyleSheetTable::FindParentStyleSheet(::rtl::OUString sBaseStyle)
++const StyleSheetEntryPtr StyleSheetTable::FindParentStyleSheet(::rtl::OUString sBaseStyle)
+ {
+ if( !sBaseStyle.getLength() )
+- return 0;
++ {
++ StyleSheetEntryPtr pEmptyPtr;
++ return pEmptyPtr;
++ }
+ if( m_pImpl->m_pCurrentEntry)
+ sBaseStyle = m_pImpl->m_pCurrentEntry->sBaseStyleIdentifier;
+
+- const StyleSheetEntry* pRet = 0;
+- for( sal_uInt32 nPos = 0; nPos < m_pImpl->m_aStyleSheetEntries.size(); ++nPos )
+- {
+- if( m_pImpl->m_aStyleSheetEntries[nPos].sStyleIdentifierD == sBaseStyle )
+- {
+- pRet = &m_pImpl->m_aStyleSheetEntries[nPos];
+- break;
+- }
+- }
+- return pRet;
++ return FindStyleSheetByISTD( sBaseStyle );
+ }
+ /*-- 21.12.2006 15:58:23---------------------------------------------------
+
+@@ -1307,12 +1520,12 @@
+ if( bExtendedSearch )
+ {
+ //search for the rWWName in the IdentifierD of the existing styles and convert the sStyleName member
+- std::vector< StyleSheetEntry >::iterator aIt = m_pImpl->m_aStyleSheetEntries.begin();
++ std::vector< StyleSheetEntryPtr >::iterator aIt = m_pImpl->m_aStyleSheetEntries.begin();
+ //TODO: performance issue - put styles list into a map sorted by it's sStyleIdentifierD members
+ while( aIt != m_pImpl->m_aStyleSheetEntries.end() )
+ {
+- if( rWWName == aIt->sStyleIdentifierD )
+- sRet = aIt->sStyleName;
++ if( rWWName == ( *aIt )->sStyleIdentifierD )
++ sRet = ( *aIt )->sStyleName;
+ ++aIt;
+ }
+ }
+Index: writerfilter/source/dmapper/StyleSheetTable.hxx
+===================================================================
+--- writerfilter/source/dmapper/StyleSheetTable.hxx (rÃvision 267004)
++++ writerfilter/source/dmapper/StyleSheetTable.hxx (copie de travail)
+@@ -30,6 +30,8 @@
+ #ifndef INCLUDED_STYLESHEETTABLE_HXX
+ #define INCLUDED_STYLESHEETTABLE_HXX
+
++#include "TblStylePrHandler.hxx"
++
+ #include <WriterFilterDllApi.hxx>
+ #include <dmapper/DomainMapper.hxx>
+ #include <com/sun/star/lang/XComponent.hpp>
+@@ -41,6 +43,7 @@
+ class XTextDocument;
+ }}}}
+
++
+ namespace writerfilter {
+ namespace dmapper
+ {
+@@ -72,6 +75,9 @@
+ ::rtl::OUString sConvertedStyleName;
+ StyleSheetEntry();
+ };
++
++typedef boost::shared_ptr<StyleSheetEntry> StyleSheetEntryPtr;
++
+ class DomainMapper;
+ class WRITERFILTER_DLLPRIVATE StyleSheetTable :
+ public Properties,
+@@ -92,11 +98,11 @@
+ virtual void entry(int pos, writerfilter::Reference<Properties>::Pointer_t ref);
+
+ void ApplyStyleSheets( FontTablePtr rFontTable );
+- const StyleSheetEntry* FindStyleSheetByISTD(const ::rtl::OUString& sIndex);
+- const StyleSheetEntry* FindStyleSheetByStyleName(const ::rtl::OUString& rIndex);
+- const StyleSheetEntry* FindStyleSheetByConvertedStyleName(const ::rtl::OUString& rIndex);
++ const StyleSheetEntryPtr FindStyleSheetByISTD(const ::rtl::OUString& sIndex);
++ const StyleSheetEntryPtr FindStyleSheetByStyleName(const ::rtl::OUString& rIndex);
++ const StyleSheetEntryPtr FindStyleSheetByConvertedStyleName(const ::rtl::OUString& rIndex);
+ // returns the parent of the one with the given name - if empty the parent of the current style sheet is returned
+- const StyleSheetEntry* FindParentStyleSheet(::rtl::OUString sBaseStyle);
++ const StyleSheetEntryPtr FindParentStyleSheet(::rtl::OUString sBaseStyle);
+
+ ::rtl::OUString ConvertStyleName( const ::rtl::OUString& rWWName, bool bExtendedSearch = false );
+ ::rtl::OUString GetStyleIdFromIndex(const sal_uInt32 sti);
+@@ -110,6 +116,38 @@
+ };
+ typedef boost::shared_ptr< StyleSheetTable > StyleSheetTablePtr;
+
++
++class WRITERFILTER_DLLPRIVATE TableStyleSheetEntry :
++ public StyleSheetEntry
++{
++private:
++ typedef std::map<TblStyleType, PropertyMapPtr> TblStylePrs;
++
++ StyleSheetTable* m_pStyleSheet;
++ TblStylePrs m_aStyles;
++
++public:
++
++ short m_nColBandSize;
++ short m_nRowBandSize;
++
++ // Adds a new tblStylePr to the table style entry. This method
++ // fixes some possible properties conflicts, like borders ones.
++ void AddTblStylePr( TblStyleType nType, PropertyMapPtr pProps );
++
++ // Gets all the properties
++ // + corresponding to the mask,
++ // + from the parent styles
++ PropertyMapPtr GetProperties( sal_Int32 nMask );
++
++ TableStyleSheetEntry( StyleSheetEntry& aEntry, StyleSheetTable* pStyles );
++ ~TableStyleSheetEntry( );
++
++protected:
++ PropertyMapPtr GetLocalPropertiesFromMask( sal_Int32 nMask );
++};
++typedef boost::shared_ptr<TableStyleSheetEntry> TableStyleSheetEntryPtr;
++
+ }}
+
+ #endif //
+Index: writerfilter/source/dmapper/DomainMapperTableManager.cxx
+===================================================================
+--- writerfilter/source/dmapper/DomainMapperTableManager.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/DomainMapperTableManager.cxx (copie de travail)
+@@ -56,14 +56,18 @@
+ m_nCellBorderIndex(0),
+ m_nHeaderRepeat(0),
+ m_nTableWidth(0),
+- m_bOOXML( bOOXML )
++ m_bOOXML( bOOXML ),
++ m_pTablePropsHandler( new TablePropertiesHandler( bOOXML ) )
+ {
++ m_pTablePropsHandler->SetTableManager( this );
+ }
+ /*-- 23.04.2007 14:57:49---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+ DomainMapperTableManager::~DomainMapperTableManager()
+ {
++ if ( m_pTablePropsHandler )
++ delete m_pTablePropsHandler, m_pTablePropsHandler = NULL;
+ }
+ /*-- 23.04.2007 15:25:37---------------------------------------------------
+
+@@ -73,40 +77,18 @@
+ bool bRet = DomainMapperTableManager_Base_t::sprm(rSprm);
+ if( !bRet )
+ {
++ bRet = m_pTablePropsHandler->sprm( rSprm );
++ }
++
++ if ( !bRet )
++ {
+ bRet = true;
+ sal_uInt32 nSprmId = rSprm.getId();
+ Value::Pointer_t pValue = rSprm.getValue();
+ sal_Int32 nIntValue = ((pValue.get() != NULL) ? pValue->getInt() : 0);
+- /* WRITERFILTERSTATUS: table: table_sprmdata */
+- switch( nSprmId )
++ switch ( nSprmId )
+ {
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 2 */
+- case NS_ooxml::LN_CT_TrPrBase_jc: //90706
+- /* WRITERFILTERSTATUS: done: 1, planned: 0.5, spent: 0.5 */
+- case NS_ooxml::LN_CT_TblPrBase_jc:
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 2 */
+- case 0x5400: // sprmTJc
+- {
+- //table justification 0: left, 1: center, 2: right
+- sal_Int16 nOrient = ConversionHelper::convertTableJustification( nIntValue );
+- TablePropertyMapPtr pTableMap( new TablePropertyMap );
+- pTableMap->setValue( TablePropertyMap::HORI_ORIENT, nOrient );
+- insertTableProps( pTableMap );
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */
+- case 0x9601: // sprmTDxaLeft
+- break;
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0x9602: // sprmTDxaGapHalf
+- {
+- //m_nGapHalf = ConversionHelper::convertTwipToMM100( nIntValue );
+- TablePropertyMapPtr pPropMap( new TablePropertyMap );
+- pPropMap->setValue( TablePropertyMap::GAP_HALF, ConversionHelper::convertTwipToMM100( nIntValue ) );
+- insertTableProps(pPropMap);
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case 0xf661: //sprmTTRLeft left table indent
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case 0xf614: // sprmTTPreferredWidth - preferred table width
+@@ -136,33 +118,7 @@
+ }
+ }
+ break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 2 */
+- case NS_ooxml::LN_CT_TrPrBase_trHeight: //90703
+- {
+- //contains unit and value
+- writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+- if( pProperties.get())
+- { //contains attributes x2902 (LN_unit) and x17e2 (LN_trleft)
+- MeasureHandlerPtr pMeasureHandler( new MeasureHandler );
+- pProperties->resolve(*pMeasureHandler);
+- TablePropertyMapPtr pPropMap( new TablePropertyMap );
+- pPropMap->Insert( PROP_SIZE_TYPE, false, uno::makeAny( pMeasureHandler->GetRowHeightSizeType() ));
+- pPropMap->Insert( PROP_HEIGHT, false, uno::makeAny(pMeasureHandler->getMeasureValue() ));
+- insertRowProps(pPropMap);
+- }
+- }
+- break;
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0x3403: // sprmTFCantSplit
+- case NS_sprm::LN_TCantSplit: // 0x3644
+- {
+- //row can't break across pages if nIntValue == 1
+- TablePropertyMapPtr pPropMap( new TablePropertyMap );
+- pPropMap->Insert( PROP_IS_SPLIT_ALLOWED, false, uno::makeAny(sal_Bool( nIntValue == 1 ? sal_False : sal_True ) ));
+- insertRowProps(pPropMap);
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case 0x3404:// sprmTTableHeader
+ case NS_ooxml::LN_CT_TrPrBase_tblHeader: //90704
+ // if nIntValue == 1 then the row is a repeated header line
+@@ -178,23 +134,6 @@
+ m_nHeaderRepeat = -1;
+ break;
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0x9407: // sprmTDyaRowHeight
+- {
+- // table row height - negative values indicate 'exact height' - positive 'at least'
+- TablePropertyMapPtr pPropMap( new TablePropertyMap );
+- bool bMinHeight = true;
+- sal_Int16 nHeight = static_cast<sal_Int16>( nIntValue );
+- if( nHeight < 0 )
+- {
+- bMinHeight = false;
+- nHeight *= -1;
+- }
+- pPropMap->Insert( PROP_SIZE_TYPE, false, uno::makeAny(bMinHeight ? text::SizeType::MIN : text::SizeType::FIX ));
+- pPropMap->Insert( PROP_HEIGHT, false, uno::makeAny(ConversionHelper::convertTwipToMM100( nHeight )));
+- insertRowProps(pPropMap);
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case 0xd608: // TDefTable
+ {
+ writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+@@ -226,22 +165,6 @@
+ }
+ break;
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case NS_ooxml::LN_CT_TcPrBase_vAlign://90694
+- {
+- sal_Int16 nVertOrient = text::VertOrientation::NONE;
+- switch( nIntValue ) //0 - top 1 - center 3 - bottom
+- {
+- case 1: nVertOrient = text::VertOrientation::CENTER; break;
+- case 3: nVertOrient = text::VertOrientation::BOTTOM; break;
+- default:;
+- };
+- TablePropertyMapPtr pCellPropMap( new TablePropertyMap() );
+- pCellPropMap->Insert( PROP_VERT_ORIENT, false, uno::makeAny( nVertOrient ) );
+- //todo: in ooxml import the value of m_ncell is wrong
+- cellProps( pCellPropMap );
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case 0xD605: // sprmTTableBorders
+ {
+ writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+@@ -256,70 +179,6 @@
+ }
+ }
+ break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case NS_ooxml::LN_CT_TblPrBase_tblBorders: //table borders, might be defined in table style
+- {
+- writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+- if( pProperties.get())
+- {
+- BorderHandlerPtr pBorderHandler( new BorderHandler(m_bOOXML) );
+- pProperties->resolve(*pBorderHandler);
+- TablePropertyMapPtr pTablePropMap( new TablePropertyMap );
+- pTablePropMap->insert( pBorderHandler->getProperties() );
+- insertTableProps( pTablePropMap );
+- }
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case NS_ooxml::LN_CT_TcPrBase_tcBorders ://cell borders
+- //contains CT_TcBorders_left, right, top, bottom
+- {
+- writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+- if( pProperties.get())
+- {
+- //in OOXML there's one set of borders at each cell (if there is any)
+- TDefTableHandlerPtr pTDefTableHandler( new TDefTableHandler( m_bOOXML ));
+- pProperties->resolve( *pTDefTableHandler );
+- TablePropertyMapPtr pCellPropMap( new TablePropertyMap );
+- pTDefTableHandler->fillCellProperties( 0, pCellPropMap );
+- cellProps( pCellPropMap );
+- }
+- }
+- break;
+- case NS_ooxml::LN_CT_TblPrBase_shd:
+- {
+- writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+- if( pProperties.get())
+- {
+- CellColorHandlerPtr pCellColorHandler( new CellColorHandler);
+- pProperties->resolve( *pCellColorHandler );
+- TablePropertyMapPtr pTablePropMap( new TablePropertyMap );
+- insertTableProps( pCellColorHandler->getProperties() );
+- }
+- }
+- break;
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0xd61a : // sprmTCellTopColor
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0xd61b : // sprmTCellLeftColor
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0xd61c : // sprmTCellBottomColor
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case 0xd61d : // sprmTCellRightColor
+- /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+- case NS_ooxml::LN_CT_TcPrBase_shd:
+- {
+- // each color sprm contains as much colors as cells are in a row
+- //LN_CT_TcPrBase_shd: cell shading contains: LN_CT_Shd_val, LN_CT_Shd_fill, LN_CT_Shd_color
+- writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+- if( pProperties.get())
+- {
+- CellColorHandlerPtr pCellColorHandler( new CellColorHandler );
+- pProperties->resolve( *pCellColorHandler );
+- cellProps( pCellColorHandler->getProperties());
+- }
+- }
+- break;
+ /* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */
+ case 0xd632 : //sprmTNewSpacing
+ /* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */
+@@ -356,7 +215,6 @@
+ case 0xf618 : //unknown
+ bRet = false;
+ break;
+-//OOXML table properties
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case NS_ooxml::LN_CT_TblPrBase_tblStyle: //table style name
+ {
+@@ -374,28 +232,6 @@
+ m_aTableGrid.push_back( ConversionHelper::convertTwipToMM100( nIntValue ) );
+ }
+ break;
+- /* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */
+- case NS_ooxml::LN_CT_TblPrBase_tblCellMar: //cell margins
+- {
+- //contains LN_CT_TblCellMar_top, LN_CT_TblCellMar_left, LN_CT_TblCellMar_bottom, LN_CT_TblCellMar_right
+- writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+- if( pProperties.get())
+- {
+- CellMarginHandlerPtr pCellMarginHandler( new CellMarginHandler );
+- pProperties->resolve( *pCellMarginHandler );
+- TablePropertyMapPtr pMarginProps( new TablePropertyMap );
+- if( pCellMarginHandler->m_bTopMarginValid )
+- pMarginProps->setValue( TablePropertyMap::CELL_MAR_TOP, pCellMarginHandler->m_nTopMargin );
+- if( pCellMarginHandler->m_bBottomMarginValid )
+- pMarginProps->setValue( TablePropertyMap::CELL_MAR_BOTTOM, pCellMarginHandler->m_nBottomMargin );
+- if( pCellMarginHandler->m_bLeftMarginValid )
+- pMarginProps->setValue( TablePropertyMap::CELL_MAR_LEFT, pCellMarginHandler->m_nLeftMargin );
+- if( pCellMarginHandler->m_bRightMarginValid )
+- pMarginProps->setValue( TablePropertyMap::CELL_MAR_RIGHT, pCellMarginHandler->m_nRightMargin );
+- insertTableProps(pMarginProps);
+- }
+- }
+- break;
+ /* WRITERFILTERSTATUS: done: 1, planned: 2, spent: 0 */
+ case NS_ooxml::LN_CT_TcPrBase_vMerge : //vertical merge
+ {
+@@ -419,10 +255,30 @@
+ }
+ break;
+ /* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */
+- case NS_ooxml::LN_CT_TblPrBase_tblLook: break; //todo: table look specifier
++ case NS_ooxml::LN_CT_TblPrBase_tblLook:
++ break; //todo: table look specifier
+ /* WRITERFILTERSTATUS: done: 100, planned: 0.5, spent: 0 */
+- case NS_ooxml::LN_CT_TcPrBase_tcW: break; //fixed column width is not supported
+- default: bRet = false;
++ case NS_ooxml::LN_CT_TcPrBase_tcW:
++ break; //fixed column width is not supported
++ case NS_ooxml::LN_CT_TrPrBase_cnfStyle:
++ {
++ TablePropertyMapPtr pProps( new TablePropertyMap );
++ pProps->Insert( PROP_CNF_STYLE, true, uno::makeAny( pValue->getString( ) ) );
++ insertRowProps( pProps );
++ }
++ break;
++ case NS_ooxml::LN_CT_PPrBase_cnfStyle:
++ // TODO cnfStyle on a paragraph
++ break;
++ case NS_ooxml::LN_CT_TcPrBase_cnfStyle:
++ {
++ TablePropertyMapPtr pProps( new TablePropertyMap );
++ pProps->Insert( PROP_CNF_STYLE, true, uno::makeAny( pValue->getString( ) ) );
++ cellProps( pProps );
++ }
++ break;
++ default:
++ bRet = false;
+ }
+ }
+ return bRet;
+@@ -521,10 +377,10 @@
+ //fill base style properties first, recursively
+ if( pStyleSheetEntry->sBaseStyleIdentifier.getLength())
+ {
+- const StyleSheetEntry* pParentStyleSheet =
++ const StyleSheetEntryPtr pParentStyleSheet =
+ pStyleSheetTable->FindStyleSheetByISTD(pStyleSheetEntry->sBaseStyleIdentifier);
+ OSL_ENSURE( pParentStyleSheet, "table style not found" );
+- lcl_CopyTextProperties( pToFill, pParentStyleSheet, pStyleSheetTable);
++ lcl_CopyTextProperties( pToFill, pParentStyleSheet.get( ), pStyleSheetTable);
+ }
+
+ PropertyMap::const_iterator aPropIter = pStyleSheetEntry->pProperties->begin();
+@@ -541,10 +397,10 @@
+ if( !m_pTableStyleTextProperies.get())
+ {
+ m_pTableStyleTextProperies.reset( new PropertyMap );
+- const StyleSheetEntry* pStyleSheetEntry = pStyleSheetTable->FindStyleSheetByISTD(
++ const StyleSheetEntryPtr pStyleSheetEntry = pStyleSheetTable->FindStyleSheetByISTD(
+ m_sTableStyleName);
+ OSL_ENSURE( pStyleSheetEntry, "table style not found" );
+- lcl_CopyTextProperties(m_pTableStyleTextProperies, pStyleSheetEntry, pStyleSheetTable);
++ lcl_CopyTextProperties(m_pTableStyleTextProperies, pStyleSheetEntry.get( ), pStyleSheetTable);
+ }
+ pContext->insert( m_pTableStyleTextProperies );
+ }
+Index: writerfilter/source/dmapper/makefile.mk
+===================================================================
+--- writerfilter/source/dmapper/makefile.mk (rÃvision 267004)
++++ writerfilter/source/dmapper/makefile.mk (copie de travail)
+@@ -43,6 +43,8 @@
+ # --- Files -------------------------------------
+
+ SLOFILES= $(SLO)$/BorderHandler.obj \
++ $(SLO)$/TblStylePrHandler.obj \
++ $(SLO)$/TablePropertiesHandler.obj \
+ $(SLO)$/CellColorHandler.obj \
+ $(SLO)$/CellMarginHandler.obj \
+ $(SLO)$/SectionColumnHandler.obj \
+Index: writerfilter/source/dmapper/DomainMapperTableManager.hxx
+===================================================================
+--- writerfilter/source/dmapper/DomainMapperTableManager.hxx (rÃvision 267004)
++++ writerfilter/source/dmapper/DomainMapperTableManager.hxx (copie de travail)
+@@ -30,6 +30,8 @@
+ #ifndef INCLUDED_DOMAIN_MAPPER_TABLE_MANAGER_HXX
+ #define INCLUDED_DOMAIN_MAPPER_TABLE_MANAGER_HXX
+
++#include "TablePropertiesHandler.hxx"
++
+ #include <resourcemodel/TableManager.hxx>
+ #include <PropertyMap.hxx>
+ #include <StyleSheetTable.hxx>
+@@ -38,8 +40,6 @@
+
+ namespace writerfilter {
+ namespace dmapper {
+-typedef ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > Handle_t;
+-typedef TableManager<Handle_t , TablePropertyMapPtr > DomainMapperTableManager_Base_t;
+ class DomainMapperTableManager : public DomainMapperTableManager_Base_t
+ {
+ sal_uInt32 m_nRow;
+@@ -54,6 +54,9 @@
+ ::std::vector<sal_Int32> m_aTableGrid;
+ ::std::vector<sal_Int32> m_aGridSpans;
+
++ TablePropertiesHandler *m_pTablePropsHandler;
++ PropertyMapPtr m_pStyleProps;
++
+ virtual void clearData();
+
+ public:
+@@ -61,6 +64,10 @@
+ DomainMapperTableManager(bool bOOXML);
+ virtual ~DomainMapperTableManager();
+
++ // use this method to avoid adding the properties for the table
++ // but in the provided properties map.
++ inline void SetStyleProperties( PropertyMapPtr pProperties ) { m_pStyleProps = pProperties; };
++
+ virtual bool sprm(Sprm & rSprm);
+
+ virtual void endOfCellAction();
+@@ -70,6 +77,37 @@
+ /// copy the text properties of the table style and its parent into pContext
+ void CopyTextProperties(PropertyMapPtr pContext, StyleSheetTablePtr pStyleSheetTable);
+
++ inline virtual void cellProps(TablePropertyMapPtr pProps)
++ {
++ if ( m_pStyleProps.get( ) )
++ m_pStyleProps->insert( pProps, true );
++ else
++ DomainMapperTableManager_Base_t::cellProps( pProps );
++ };
++
++ inline virtual void cellPropsByCell(unsigned int i, TablePropertyMapPtr pProps)
++ {
++ if ( m_pStyleProps.get( ) )
++ m_pStyleProps->insert( pProps, true );
++ else
++ DomainMapperTableManager_Base_t::cellPropsByCell( i, pProps );
++ };
++
++ inline virtual void insertRowProps(TablePropertyMapPtr pProps)
++ {
++ if ( m_pStyleProps.get( ) )
++ m_pStyleProps->insert( pProps, true );
++ else
++ DomainMapperTableManager_Base_t::insertRowProps( pProps );
++ };
++
++ inline virtual void insertTableProps(TablePropertyMapPtr pProps)
++ {
++ if ( m_pStyleProps.get( ) )
++ m_pStyleProps->insert( pProps, true );
++ else
++ DomainMapperTableManager_Base_t::insertTableProps( pProps );
++ };
+ };
+
+ }}
+Index: writerfilter/source/dmapper/PropertyIds.cxx
+===================================================================
+--- writerfilter/source/dmapper/PropertyIds.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/PropertyIds.cxx (copie de travail)
+@@ -315,6 +315,7 @@
+ case PROP_STREAM_NAME: sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("StreamName")); break;
+ case PROP_BITMAP : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Bitmap")); break;
+ case PROP_IS_DATE : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("IsDate")); break;
++ case PROP_CNF_STYLE : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("CnfStyle")); break;
+ // case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+ // case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+ // case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+@@ -324,9 +325,6 @@
+ // case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+ // case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+ // case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+-// case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+-// case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+-// case : sName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("")); break;
+ }
+ ::std::pair<PropertyNameMap_t::iterator,bool> aInsertIt =
+ m_pImpl->aNameMap.insert( PropertyNameMap_t::value_type( eId, sName ));
Index: writerfilter/source/dmapper/ConversionHelper.cxx
===================================================================
--- writerfilter/source/dmapper/ConversionHelper.cxx (rÃvision 267004)
@@ -133,3 +1690,6863 @@
};
rToFill.Color = nLineColor;
+Index: writerfilter/source/dmapper/PropertyIds.hxx
+===================================================================
+--- writerfilter/source/dmapper/PropertyIds.hxx (rÃvision 267004)
++++ writerfilter/source/dmapper/PropertyIds.hxx (copie de travail)
+@@ -278,6 +278,7 @@
+ /*239*/ ,PROP_STREAM_NAME
+ /*240*/ ,PROP_BITMAP
+ /*241*/ ,PROP_IS_DATE
++/*242*/ ,PROP_CNF_STYLE
+ };
+ struct PropertyNameSupplier_Impl;
+ class PropertyNameSupplier
+Index: writerfilter/source/dmapper/DomainMapper_Impl.cxx
+===================================================================
+--- writerfilter/source/dmapper/DomainMapper_Impl.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/DomainMapper_Impl.cxx (copie de travail)
+@@ -688,13 +688,13 @@
+ -----------------------------------------------------------------------*/
+ uno::Any DomainMapper_Impl::GetPropertyFromStyleSheet(PropertyIds eId)
+ {
+- const StyleSheetEntry* pEntry = 0;
++ StyleSheetEntryPtr pEntry;
+ if( m_bInStyleSheetImport )
+ pEntry = GetStyleSheetTable()->FindParentStyleSheet(::rtl::OUString());
+ else
+ pEntry =
+ GetStyleSheetTable()->FindStyleSheetByISTD(GetCurrentParaStyleId());
+- while(pEntry)
++ while(pEntry.get( ) )
+ {
+ //is there a tab stop set?
+ if(pEntry->pProperties)
+@@ -906,11 +906,11 @@
+ try
+ {
+ //
+- const StyleSheetEntry* pParaStyle =
++ StyleSheetEntryPtr pParaStyle =
+ m_pStyleSheetTable->FindStyleSheetByConvertedStyleName(rAppendContext.pLastParagraphProperties->GetParaStyleName());
+
+ uno::Sequence< beans::PropertyValue > aFrameProperties(pParaStyle ? 15: 0);
+- if(pParaStyle)
++ if ( pParaStyle.get( ) )
+ {
+ const ParagraphProperties* pStyleProperties = dynamic_cast<const ParagraphProperties*>( pParaStyle->pProperties.get() );
+ beans::PropertyValue* pFrameProperties = aFrameProperties.getArray();
+Index: writerfilter/source/dmapper/BorderHandler.cxx
+===================================================================
+--- writerfilter/source/dmapper/BorderHandler.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/BorderHandler.cxx (copie de travail)
+@@ -137,6 +137,8 @@
+ pProperties->resolve(*this);
+ ConversionHelper::MakeBorderLine( m_nLineWidth, m_nLineType, m_nLineColor,
+ m_aBorderLines[rSprm.getId() - NS_ooxml::LN_CT_TblBorders_top], m_bOOXML );
++
++ m_aFilledLines[ rSprm.getId( ) - NS_ooxml::LN_CT_TblBorders_top] = true;
+ }
+ break;
+ default:;
+@@ -161,7 +163,11 @@
+ if( m_bOOXML || m_nCurrentBorderPosition )
+ {
+ for( sal_Int32 nProp = 0; nProp < BORDER_COUNT; ++nProp)
+- pPropertyMap->Insert( aPropNames[nProp], false, uno::makeAny( m_aBorderLines[nProp] ) );
++ {
++ if ( m_aFilledLines[nProp] ) {
++ pPropertyMap->Insert( aPropNames[nProp], false, uno::makeAny( m_aBorderLines[nProp] ) );
++ }
++ }
+ }
+ return pPropertyMap;
+ }
+Index: writerfilter/source/dmapper/CellColorHandler.cxx
+===================================================================
+--- writerfilter/source/dmapper/CellColorHandler.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/CellColorHandler.cxx (copie de travail)
+@@ -110,6 +110,11 @@
+ // }
+ // }
+ // break;
++ case NS_ooxml::LN_CT_Shd_themeFill:
++ case NS_ooxml::LN_CT_Shd_themeFillTint:
++ case NS_ooxml::LN_CT_Shd_themeFillShade:
++ // ignored
++ break;
+ default:
+ OSL_ENSURE( false, "unknown attribute");
+ }
+Index: writerfilter/source/dmapper/DomainMapper.cxx
+===================================================================
+--- writerfilter/source/dmapper/DomainMapper.cxx (rÃvision 267004)
++++ writerfilter/source/dmapper/DomainMapper.cxx (copie de travail)
+@@ -551,8 +551,8 @@
+ //if the style is a user defined style then it must have an ISTD - built-in styles might not have it
+ StyleSheetTablePtr pStyleSheets = m_pImpl->GetStyleSheetTable();
+ ::rtl::OUString sValue = ::rtl::OUString::valueOf(nIntValue, 16);
+- const StyleSheetEntry* pEntry = pStyleSheets->FindStyleSheetByISTD(sValue);
+- if(pEntry)
++ const StyleSheetEntryPtr pEntry = pStyleSheets->FindStyleSheetByISTD(sValue);
++ if( pEntry.get( ) )
+ {
+ bool bParaStyle = (pEntry->nStyleTypeCode == STYLE_TYPE_PARA);
+ if(bParaStyle)
+@@ -3882,9 +3882,9 @@
+ const ::rtl::OUString sConvertedStyleName = pStyleTable->ConvertStyleName( sStringValue, true );
+ if (m_pImpl->GetTopContext() && m_pImpl->GetTopContextType() != CONTEXT_SECTION)
+ m_pImpl->GetTopContext()->Insert( PROP_PARA_STYLE_NAME, true, uno::makeAny( sConvertedStyleName ));
+- const StyleSheetEntry* pEntry = pStyleTable->FindStyleSheetByISTD(sStringValue);
++ const StyleSheetEntryPtr pEntry = pStyleTable->FindStyleSheetByISTD(sStringValue);
+ //apply numbering to paragraph if it was set at the style
+- OSL_ENSURE( pEntry, "no style sheet found" );
++ OSL_ENSURE( pEntry.get(), "no style sheet found" );
+ const StyleSheetPropertyMap* pStyleSheetProperties = dynamic_cast<const StyleSheetPropertyMap*>(pEntry ? pEntry->pProperties.get() : 0);
+ if( pStyleSheetProperties && pStyleSheetProperties->GetListId() >= 0 )
+ rContext->Insert( PROP_NUMBERING_RULES, true, uno::makeAny(m_pImpl->GetListTable()->GetNumberingRules(pStyleSheetProperties->GetListId())), false);
+@@ -4224,16 +4224,23 @@
+ /*-- 13.06.2007 16:15:55---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-void DomainMapper::PushStyleSheetProperties( PropertyMapPtr pStyleProperties )
++void DomainMapper::PushStyleSheetProperties( PropertyMapPtr pStyleProperties, bool bAffectTableMngr )
+ {
+ m_pImpl->PushStyleProperties( pStyleProperties );
++ if ( bAffectTableMngr )
++ m_pImpl->getTableManager( ).SetStyleProperties( pStyleProperties );
+ }
+ /*-- 13.06.2007 16:15:55---------------------------------------------------
+
+ -----------------------------------------------------------------------*/
+-void DomainMapper::PopStyleSheetProperties()
++void DomainMapper::PopStyleSheetProperties( bool bAffectTableMngr )
+ {
+ m_pImpl->PopProperties( CONTEXT_STYLESHEET );
++ if ( bAffectTableMngr )
++ {
++ PropertyMapPtr emptyPtr;
++ m_pImpl->getTableManager( ).SetStyleProperties( emptyPtr );
++ }
+ }
+ /*-- 28.01.2008 14:52:33---------------------------------------------------
+
+Index: writerfilter/source/ooxml/model.xml
+===================================================================
+--- writerfilter/source/ooxml/model.xml (rÃvision 267004)
++++ writerfilter/source/ooxml/model.xml (copie de travail)
+@@ -23,10 +23,10 @@
+ <start name="themeOverride"/>
+ <start name="themeManager"/>
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseStylesheet.rng"/>
+ <include href="dml-styleDefaults.rng"/>
+-<!-- start = theme | themeOverride | themeManager -->
++ <!-- start = theme | themeOverride | themeManager -->
+ <define name="CT_EmptyElement">
+ <empty/>
+ </define>
+@@ -194,7 +194,7 @@
+ </namespace>
+ <namespace name="dml-styleDefaults" file="dml-styleDefaults">
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-shapeProperties.rng"/>
+ <include href="dml-shapeStyle.rng"/>
+ <include href="dml-text.rng"/>
+@@ -245,27 +245,27 @@
+ </namespace>
+ <namespace name="dml-shape3DLighting" file="dml-shape3DLighting.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseTypes.rng"/>
+ <define name="ST_LightRigDirection">
+ <list>
+ <xs:documentation>Light Rig Direction</xs:documentation>
+ <choice>
+-<!-- Top Left -->
++ <!-- Top Left -->
+ <value>tl</value>
+-<!-- Top -->
++ <!-- Top -->
+ <value>t</value>
+-<!-- Top Right -->
++ <!-- Top Right -->
+ <value>tr</value>
+-<!-- Left -->
++ <!-- Left -->
+ <value>l</value>
+-<!-- Right -->
++ <!-- Right -->
+ <value>r</value>
+-<!-- Bottom Left -->
++ <!-- Bottom Left -->
+ <value>bl</value>
+-<!-- Bottom -->
++ <!-- Bottom -->
+ <value>b</value>
+-<!-- Bottom Right -->
++ <!-- Bottom Right -->
+ <value>br</value>
+ </choice>
+ </list>
+@@ -274,59 +274,59 @@
+ <list>
+ <xs:documentation>Light Rig Type</xs:documentation>
+ <choice>
+-<!-- Legacy Flat 1 -->
++ <!-- Legacy Flat 1 -->
+ <value>legacyFlat1</value>
+-<!-- Legacy Flat 2 -->
++ <!-- Legacy Flat 2 -->
+ <value>legacyFlat2</value>
+-<!-- Legacy Flat 3 -->
++ <!-- Legacy Flat 3 -->
+ <value>legacyFlat3</value>
+-<!-- Legacy Flat 4 -->
++ <!-- Legacy Flat 4 -->
+ <value>legacyFlat4</value>
+-<!-- Legacy Normal 1 -->
++ <!-- Legacy Normal 1 -->
+ <value>legacyNormal1</value>
+-<!-- Legacy Normal 2 -->
++ <!-- Legacy Normal 2 -->
+ <value>legacyNormal2</value>
+-<!-- Legacy Normal 3 -->
++ <!-- Legacy Normal 3 -->
+ <value>legacyNormal3</value>
+-<!-- Legacy Normal 4 -->
++ <!-- Legacy Normal 4 -->
+ <value>legacyNormal4</value>
+-<!-- Legacy Harsh 1 -->
++ <!-- Legacy Harsh 1 -->
+ <value>legacyHarsh1</value>
+-<!-- Legacy Harsh 2 -->
++ <!-- Legacy Harsh 2 -->
+ <value>legacyHarsh2</value>
+-<!-- Legacy Harsh 3 -->
++ <!-- Legacy Harsh 3 -->
+ <value>legacyHarsh3</value>
+-<!-- Legacy Harsh 4 -->
++ <!-- Legacy Harsh 4 -->
+ <value>legacyHarsh4</value>
+-<!-- Three Point -->
++ <!-- Three Point -->
+ <value>threePt</value>
+-<!-- Light Rig Enum ( Balanced ) -->
++ <!-- Light Rig Enum ( Balanced ) -->
+ <value>balanced</value>
+-<!-- Soft -->
++ <!-- Soft -->
+ <value>soft</value>
+-<!-- Harsh -->
++ <!-- Harsh -->
+ <value>harsh</value>
+-<!-- Flood -->
++ <!-- Flood -->
+ <value>flood</value>
+-<!-- Contrasting -->
++ <!-- Contrasting -->
+ <value>contrasting</value>
+-<!-- Morning -->
++ <!-- Morning -->
+ <value>morning</value>
+-<!-- Sunrise -->
++ <!-- Sunrise -->
+ <value>sunrise</value>
+-<!-- Sunset -->
++ <!-- Sunset -->
+ <value>sunset</value>
+-<!-- Chilly -->
++ <!-- Chilly -->
+ <value>chilly</value>
+-<!-- Freezing -->
++ <!-- Freezing -->
+ <value>freezing</value>
+-<!-- Flat -->
++ <!-- Flat -->
+ <value>flat</value>
+-<!-- Two Point -->
++ <!-- Two Point -->
+ <value>twoPt</value>
+-<!-- Glow -->
++ <!-- Glow -->
+ <value>glow</value>
+-<!-- Bright Room -->
++ <!-- Bright Room -->
+ <value>brightRoom</value>
+ </choice>
+ </list>
+@@ -389,7 +389,7 @@
+ </namespace>
+ <namespace name="dml-shape3DScene" file="dml-shape3DScene.rng">
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-shape3DCamera.rng"/>
+ <include href="dml-shape3DLighting.rng"/>
+ <include href="dml-shape3DScenePlane.rng"/>
+@@ -415,35 +415,35 @@
+ </namespace>
+ <namespace name="dml-shape3DStyles" file="dml-shape3DStyles.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-shapeGeometry.rng"/>
+ <define name="ST_BevelPresetType">
+ <list>
+ <xs:documentation>Bevel Presets</xs:documentation>
+ <choice>
+-<!-- Relaxed Inset -->
++ <!-- Relaxed Inset -->
+ <value>relaxedInset</value>
+-<!-- Circle -->
++ <!-- Circle -->
+ <value>circle</value>
+-<!-- Slope -->
++ <!-- Slope -->
+ <value>slope</value>
+-<!-- Cross -->
++ <!-- Cross -->
+ <value>cross</value>
+-<!-- Angle -->
++ <!-- Angle -->
+ <value>angle</value>
+-<!-- Soft Round -->
++ <!-- Soft Round -->
+ <value>softRound</value>
+-<!-- Convex -->
++ <!-- Convex -->
+ <value>convex</value>
+-<!-- Cool Slant -->
++ <!-- Cool Slant -->
+ <value>coolSlant</value>
+-<!-- Divot -->
++ <!-- Divot -->
+ <value>divot</value>
+-<!-- Riblet -->
++ <!-- Riblet -->
+ <value>riblet</value>
+-<!-- Hard Edge -->
++ <!-- Hard Edge -->
+ <value>hardEdge</value>
+-<!-- Art Deco -->
++ <!-- Art Deco -->
+ <value>artDeco</value>
+ </choice>
+ </list>
+@@ -472,35 +472,35 @@
+ <list>
+ <xs:documentation>Preset Material Type</xs:documentation>
+ <choice>
+-<!-- Legacy Matte -->
++ <!-- Legacy Matte -->
+ <value>legacyMatte</value>
+-<!-- Legacy Plastic -->
++ <!-- Legacy Plastic -->
+ <value>legacyPlastic</value>
+-<!-- Legacy Metal -->
++ <!-- Legacy Metal -->
+ <value>legacyMetal</value>
+-<!-- Legacy Wireframe -->
++ <!-- Legacy Wireframe -->
+ <value>legacyWireframe</value>
+-<!-- Matte -->
++ <!-- Matte -->
+ <value>matte</value>
+-<!-- Plastic -->
++ <!-- Plastic -->
+ <value>plastic</value>
+-<!-- Metal -->
++ <!-- Metal -->
+ <value>metal</value>
+-<!-- Warm Matte -->
++ <!-- Warm Matte -->
+ <value>warmMatte</value>
+-<!-- Translucent Powder -->
++ <!-- Translucent Powder -->
+ <value>translucentPowder</value>
+-<!-- Powder -->
++ <!-- Powder -->
+ <value>powder</value>
+-<!-- Dark Edge -->
++ <!-- Dark Edge -->
+ <value>dkEdge</value>
+-<!-- Soft Edge -->
++ <!-- Soft Edge -->
+ <value>softEdge</value>
+-<!-- Clear -->
++ <!-- Clear -->
+ <value>clear</value>
+-<!-- Flat -->
++ <!-- Flat -->
+ <value>flat</value>
+-<!-- Soft Metal -->
++ <!-- Soft Metal -->
+ <value>softmetal</value>
+ </choice>
+ </list>
+@@ -611,135 +611,135 @@
+ </namespace>
+ <namespace name="dml-shape3DCamera" file="dml-shape3DCamera.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseTypes.rng"/>
+ <define name="ST_PresetCameraType">
+ <list>
+ <xs:documentation>Preset Camera Type</xs:documentation>
+ <choice>
+-<!-- Legacy Oblique Top Left -->
++ <!-- Legacy Oblique Top Left -->
+ <value>legacyObliqueTopLeft</value>
+-<!-- Legacy Oblique Top -->
++ <!-- Legacy Oblique Top -->
+ <value>legacyObliqueTop</value>
+-<!-- Legacy Oblique Top Right -->
++ <!-- Legacy Oblique Top Right -->
+ <value>legacyObliqueTopRight</value>
+-<!-- Legacy Oblique Left -->
++ <!-- Legacy Oblique Left -->
+ <value>legacyObliqueLeft</value>
+-<!-- Legacy Oblique Front -->
++ <!-- Legacy Oblique Front -->
+ <value>legacyObliqueFront</value>
+-<!-- Legacy Oblique Right -->
++ <!-- Legacy Oblique Right -->
+ <value>legacyObliqueRight</value>
+-<!-- Legacy Oblique Bottom Left -->
++ <!-- Legacy Oblique Bottom Left -->
+ <value>legacyObliqueBottomLeft</value>
+-<!-- Legacy Oblique Bottom -->
++ <!-- Legacy Oblique Bottom -->
+ <value>legacyObliqueBottom</value>
+-<!-- Legacy Oblique Bottom Right -->
++ <!-- Legacy Oblique Bottom Right -->
+ <value>legacyObliqueBottomRight</value>
+-<!-- Legacy Perspective Top Left -->
++ <!-- Legacy Perspective Top Left -->
+ <value>legacyPerspectiveTopLeft</value>
+-<!-- Legacy Perspective Top -->
++ <!-- Legacy Perspective Top -->
+ <value>legacyPerspectiveTop</value>
+-<!-- Legacy Perspective Top Right -->
++ <!-- Legacy Perspective Top Right -->
+ <value>legacyPerspectiveTopRight</value>
+-<!-- Legacy Perspective Left -->
++ <!-- Legacy Perspective Left -->
+ <value>legacyPerspectiveLeft</value>
+-<!-- Legacy Perspective Front -->
++ <!-- Legacy Perspective Front -->
+ <value>legacyPerspectiveFront</value>
+-<!-- Legacy Perspective Right -->
++ <!-- Legacy Perspective Right -->
+ <value>legacyPerspectiveRight</value>
+-<!-- Legacy Perspective Bottom Left -->
++ <!-- Legacy Perspective Bottom Left -->
+ <value>legacyPerspectiveBottomLeft</value>
+-<!-- Legacy Perspective Bottom -->
++ <!-- Legacy Perspective Bottom -->
+ <value>legacyPerspectiveBottom</value>
+-<!-- Legacy Perspective Bottom Right -->
++ <!-- Legacy Perspective Bottom Right -->
+ <value>legacyPerspectiveBottomRight</value>
+-<!-- Orthographic Front -->
++ <!-- Orthographic Front -->
+ <value>orthographicFront</value>
+-<!-- Isometric Top Up -->
++ <!-- Isometric Top Up -->
+ <value>isometricTopUp</value>
+-<!-- Isometric Top Down -->
++ <!-- Isometric Top Down -->
+ <value>isometricTopDown</value>
+-<!-- Isometric Bottom Up -->
++ <!-- Isometric Bottom Up -->
+ <value>isometricBottomUp</value>
+-<!-- Isometric Bottom Down -->
++ <!-- Isometric Bottom Down -->
+ <value>isometricBottomDown</value>
+-<!-- Isometric Left Up -->
++ <!-- Isometric Left Up -->
+ <value>isometricLeftUp</value>
+-<!-- Isometric Left Down -->
++ <!-- Isometric Left Down -->
+ <value>isometricLeftDown</value>
+-<!-- Isometric Right Up -->
++ <!-- Isometric Right Up -->
+ <value>isometricRightUp</value>
+-<!-- Isometric Right Down -->
++ <!-- Isometric Right Down -->
+ <value>isometricRightDown</value>
+-<!-- Isometric Off Axis 1 Left -->
++ <!-- Isometric Off Axis 1 Left -->
+ <value>isometricOffAxis1Left</value>
+-<!-- Isometric Off Axis 1 Right -->
++ <!-- Isometric Off Axis 1 Right -->
+ <value>isometricOffAxis1Right</value>
+-<!-- Isometric Off Axis 1 Top -->
++ <!-- Isometric Off Axis 1 Top -->
+ <value>isometricOffAxis1Top</value>
+-<!-- Isometric Off Axis 2 Left -->
++ <!-- Isometric Off Axis 2 Left -->
+ <value>isometricOffAxis2Left</value>
+-<!-- Isometric Off Axis 2 Right -->
++ <!-- Isometric Off Axis 2 Right -->
+ <value>isometricOffAxis2Right</value>
+-<!-- Isometric Off Axis 2 Top -->
++ <!-- Isometric Off Axis 2 Top -->
+ <value>isometricOffAxis2Top</value>
+-<!-- Isometric Off Axis 3 Left -->
++ <!-- Isometric Off Axis 3 Left -->
+ <value>isometricOffAxis3Left</value>
+-<!-- Isometric Off Axis 3 Right -->
++ <!-- Isometric Off Axis 3 Right -->
+ <value>isometricOffAxis3Right</value>
+-<!-- Isometric Off Axis 3 Bottom -->
++ <!-- Isometric Off Axis 3 Bottom -->
+ <value>isometricOffAxis3Bottom</value>
+-<!-- Isometric Off Axis 4 Left -->
++ <!-- Isometric Off Axis 4 Left -->
+ <value>isometricOffAxis4Left</value>
+-<!-- Isometric Off Axis 4 Right -->
++ <!-- Isometric Off Axis 4 Right -->
+ <value>isometricOffAxis4Right</value>
+-<!-- Isometric Off Axis 4 Bottom -->
++ <!-- Isometric Off Axis 4 Bottom -->
+ <value>isometricOffAxis4Bottom</value>
+-<!-- Oblique Top Left -->
++ <!-- Oblique Top Left -->
+ <value>obliqueTopLeft</value>
+-<!-- Oblique Top -->
++ <!-- Oblique Top -->
+ <value>obliqueTop</value>
+-<!-- Oblique Top Right -->
++ <!-- Oblique Top Right -->
+ <value>obliqueTopRight</value>
+-<!-- Oblique Left -->
++ <!-- Oblique Left -->
+ <value>obliqueLeft</value>
+-<!-- Oblique Right -->
++ <!-- Oblique Right -->
+ <value>obliqueRight</value>
+-<!-- Oblique Bottom Left -->
++ <!-- Oblique Bottom Left -->
+ <value>obliqueBottomLeft</value>
+-<!-- Oblique Bottom -->
++ <!-- Oblique Bottom -->
+ <value>obliqueBottom</value>
+-<!-- Oblique Bottom Right -->
++ <!-- Oblique Bottom Right -->
+ <value>obliqueBottomRight</value>
+-<!-- Perspective Front -->
++ <!-- Perspective Front -->
+ <value>perspectiveFront</value>
+-<!-- Perspective Left -->
++ <!-- Perspective Left -->
+ <value>perspectiveLeft</value>
+-<!-- Perspective Right -->
++ <!-- Perspective Right -->
+ <value>perspectiveRight</value>
+-<!-- Orthographic Above -->
++ <!-- Orthographic Above -->
+ <value>perspectiveAbove</value>
+-<!-- Perspective Below -->
++ <!-- Perspective Below -->
+ <value>perspectiveBelow</value>
+-<!-- Perspective Above Left Facing -->
++ <!-- Perspective Above Left Facing -->
+ <value>perspectiveAboveLeftFacing</value>
+-<!-- Perspective Above Right Facing -->
++ <!-- Perspective Above Right Facing -->
+ <value>perspectiveAboveRightFacing</value>
+-<!-- Perspective Contrasting Left Facing -->
++ <!-- Perspective Contrasting Left Facing -->
+ <value>perspectiveContrastingLeftFacing</value>
+-<!-- Perspective Contrasting Right Facing -->
++ <!-- Perspective Contrasting Right Facing -->
+ <value>perspectiveContrastingRightFacing</value>
+-<!-- Perspective Heroic Left Facing -->
++ <!-- Perspective Heroic Left Facing -->
+ <value>perspectiveHeroicLeftFacing</value>
+-<!-- Perspective Heroic Right Facing -->
++ <!-- Perspective Heroic Right Facing -->
+ <value>perspectiveHeroicRightFacing</value>
+-<!-- Perspective Heroic Extreme Left Facing -->
++ <!-- Perspective Heroic Extreme Left Facing -->
+ <value>perspectiveHeroicExtremeLeftFacing</value>
+-<!-- Perspective Heroic Extreme Right Facing -->
++ <!-- Perspective Heroic Extreme Right Facing -->
+ <value>perspectiveHeroicExtremeRightFacing</value>
+-<!-- Perspective Relaxed -->
++ <!-- Perspective Relaxed -->
+ <value>perspectiveRelaxed</value>
+-<!-- Perspective Relaxed Moderately -->
++ <!-- Perspective Relaxed Moderately -->
+ <value>perspectiveRelaxedModerately</value>
+ </choice>
+ </list>
+@@ -838,7 +838,7 @@
+ </namespace>
+ <namespace name="dml-baseStylesheet" file="dml-baseStylesheet.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <define name="ST_StyleMatrixColumnIndex">
+ <data type="unsignedInt">
+ <xs:documentation>Style Matrix Column Index</xs:documentation>
+@@ -848,11 +848,11 @@
+ <list>
+ <xs:documentation>Font Collection Index</xs:documentation>
+ <choice>
+-<!-- Major Font -->
++ <!-- Major Font -->
+ <value>major</value>
+-<!-- Minor Font -->
++ <!-- Minor Font -->
+ <value>minor</value>
+-<!-- None -->
++ <!-- None -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -861,29 +861,29 @@
+ <list>
+ <xs:documentation>Theme Color Reference</xs:documentation>
+ <choice>
+-<!-- Dark 1 -->
++ <!-- Dark 1 -->
+ <value>dk1</value>
+-<!-- Light 1 -->
++ <!-- Light 1 -->
+ <value>lt1</value>
+-<!-- Dark 2 -->
++ <!-- Dark 2 -->
+ <value>dk2</value>
+-<!-- Light 2 -->
++ <!-- Light 2 -->
+ <value>lt2</value>
+-<!-- Accent 1 -->
++ <!-- Accent 1 -->
+ <value>accent1</value>
+-<!-- Accent 2 -->
++ <!-- Accent 2 -->
+ <value>accent2</value>
+-<!-- Accent 3 -->
++ <!-- Accent 3 -->
+ <value>accent3</value>
+-<!-- Accent 4 -->
++ <!-- Accent 4 -->
+ <value>accent4</value>
+-<!-- Accent 5 -->
++ <!-- Accent 5 -->
+ <value>accent5</value>
+-<!-- Accent 6 -->
++ <!-- Accent 6 -->
+ <value>accent6</value>
+-<!-- Hyperlink -->
++ <!-- Hyperlink -->
+ <value>hlink</value>
+-<!-- Followed Hyperlink -->
++ <!-- Followed Hyperlink -->
+ <value>folHlink</value>
+ </choice>
+ </list>
+@@ -1166,7 +1166,7 @@
+ </namespace>
+ <namespace name="dml-textCharacter" file="dml-textCharacter.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseTypes.rng"/>
+ <include href="dml-shapeEffects.rng"/>
+ <include href="dml-shapeLineProperties.rng"/>
+@@ -1239,41 +1239,41 @@
+ <list>
+ <xs:documentation>Text Underline Types</xs:documentation>
+ <choice>
+-<!-- Text Underline Enum ( None ) -->
++ <!-- Text Underline Enum ( None ) -->
+ <value>none</value>
+-<!-- Text Underline Enum ( Words ) -->
++ <!-- Text Underline Enum ( Words ) -->
+ <value>words</value>
+-<!-- Text Underline Enum ( Single ) -->
++ <!-- Text Underline Enum ( Single ) -->
+ <value>sng</value>
+-<!-- Text Underline Enum ( Double ) -->
++ <!-- Text Underline Enum ( Double ) -->
+ <value>dbl</value>
+-<!-- Text Underline Enum ( Heavy ) -->
++ <!-- Text Underline Enum ( Heavy ) -->
+ <value>heavy</value>
+-<!-- Text Underline Enum ( Dotted ) -->
++ <!-- Text Underline Enum ( Dotted ) -->
+ <value>dotted</value>
+-<!-- Text Underline Enum ( Heavy Dotted ) -->
++ <!-- Text Underline Enum ( Heavy Dotted ) -->
+ <value>dottedHeavy</value>
+-<!-- Text Underline Enum ( Dashed ) -->
++ <!-- Text Underline Enum ( Dashed ) -->
+ <value>dash</value>
+-<!-- Text Underline Enum ( Heavy Dashed ) -->
++ <!-- Text Underline Enum ( Heavy Dashed ) -->
+ <value>dashHeavy</value>
+-<!-- Text Underline Enum ( Long Dashed ) -->
++ <!-- Text Underline Enum ( Long Dashed ) -->
+ <value>dashLong</value>
+-<!-- Text Underline Enum ( Heavy Long Dashed ) -->
++ <!-- Text Underline Enum ( Heavy Long Dashed ) -->
+ <value>dashLongHeavy</value>
+-<!-- Text Underline Enum ( Dot Dash ) -->
++ <!-- Text Underline Enum ( Dot Dash ) -->
+ <value>dotDash</value>
+-<!-- Text Underline Enum ( Heavy Dot Dash ) -->
++ <!-- Text Underline Enum ( Heavy Dot Dash ) -->
+ <value>dotDashHeavy</value>
+-<!-- Text Underline Enum ( Dot Dot Dash ) -->
++ <!-- Text Underline Enum ( Dot Dot Dash ) -->
+ <value>dotDotDash</value>
+-<!-- Text Underline Enum ( Heavy Dot Dot Dash ) -->
++ <!-- Text Underline Enum ( Heavy Dot Dot Dash ) -->
+ <value>dotDotDashHeavy</value>
+-<!-- Text Underline Enum ( Wavy ) -->
++ <!-- Text Underline Enum ( Wavy ) -->
+ <value>wavy</value>
+-<!-- Text Underline Enum ( Heavy Wavy ) -->
++ <!-- Text Underline Enum ( Heavy Wavy ) -->
+ <value>wavyHeavy</value>
+-<!-- Text Underline Enum ( Double Wavy ) -->
++ <!-- Text Underline Enum ( Double Wavy ) -->
+ <value>wavyDbl</value>
+ </choice>
+ </list>
+@@ -1313,11 +1313,11 @@
+ <list>
+ <xs:documentation>Text Strike Type</xs:documentation>
+ <choice>
+-<!-- Text Strike Enum ( No Strike ) -->
++ <!-- Text Strike Enum ( No Strike ) -->
+ <value>noStrike</value>
+-<!-- Text Strike Enum ( Single Strike ) -->
++ <!-- Text Strike Enum ( Single Strike ) -->
+ <value>sngStrike</value>
+-<!-- Text Strike Enum ( Double Strike ) -->
++ <!-- Text Strike Enum ( Double Strike ) -->
+ <value>dblStrike</value>
+ </choice>
+ </list>
+@@ -1326,11 +1326,11 @@
+ <list>
+ <xs:documentation>Text Cap Types</xs:documentation>
+ <choice>
+-<!-- Text Caps Enum ( None ) -->
++ <!-- Text Caps Enum ( None ) -->
+ <value>none</value>
+-<!-- Text Caps Enum ( Small ) -->
++ <!-- Text Caps Enum ( Small ) -->
+ <value>small</value>
+-<!-- Text Caps Enum ( All ) -->
++ <!-- Text Caps Enum ( All ) -->
+ <value>all</value>
+ </choice>
+ </list>
+@@ -1576,9 +1576,9 @@
+ </namespace>
+ <namespace name="dml-shapeEffects" file="dml-shapeEffects.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseTypes.rng"/>
+-<!-- start = blip -->
++ <!-- start = blip -->
+ <define name="CT_AlphaBiLevelEffect">
+ <attribute name="thresh">
+ <ref name="ST_PositiveFixedPercentage"/>
+@@ -1796,45 +1796,45 @@
+ <list>
+ <xs:documentation>Preset Shadow Type</xs:documentation>
+ <choice>
+-<!-- Top Left Drop Shadow -->
++ <!-- Top Left Drop Shadow -->
+ <value>shdw1</value>
+-<!-- Top Right Drop Shadow -->
++ <!-- Top Right Drop Shadow -->
+ <value>shdw2</value>
+-<!-- Back Left Perspective Shadow -->
++ <!-- Back Left Perspective Shadow -->
+ <value>shdw3</value>
+-<!-- Back Right Perspective Shadow -->
++ <!-- Back Right Perspective Shadow -->
+ <value>shdw4</value>
+-<!-- Bottom Left Drop Shadow -->
++ <!-- Bottom Left Drop Shadow -->
+ <value>shdw5</value>
+-<!-- Bottom Right Drop Shadow -->
++ <!-- Bottom Right Drop Shadow -->
+ <value>shdw6</value>
+-<!-- Front Left Perspective Shadow -->
++ <!-- Front Left Perspective Shadow -->
+ <value>shdw7</value>
+-<!-- Front Right Perspective Shadow -->
++ <!-- Front Right Perspective Shadow -->
+ <value>shdw8</value>
+-<!-- Top Left Small Drop Shadow -->
++ <!-- Top Left Small Drop Shadow -->
+ <value>shdw9</value>
+-<!-- Top Left Large Drop Shadow -->
++ <!-- Top Left Large Drop Shadow -->
+ <value>shdw10</value>
+-<!-- Back Left Long Perspective Shadow -->
++ <!-- Back Left Long Perspective Shadow -->
+ <value>shdw11</value>
+-<!-- Back Right Long Perspective Shadow -->
++ <!-- Back Right Long Perspective Shadow -->
+ <value>shdw12</value>
+-<!-- Top Left Double Drop Shadow -->
++ <!-- Top Left Double Drop Shadow -->
+ <value>shdw13</value>
+-<!-- Bottom Right Small Drop Shadow -->
++ <!-- Bottom Right Small Drop Shadow -->
+ <value>shdw14</value>
+-<!-- Front Left Long Perspective Shadow -->
++ <!-- Front Left Long Perspective Shadow -->
+ <value>shdw15</value>
+-<!-- Front Right LongPerspective Shadow -->
++ <!-- Front Right LongPerspective Shadow -->
+ <value>shdw16</value>
+-<!-- 3D Outer Box Shadow -->
++ <!-- 3D Outer Box Shadow -->
+ <value>shdw17</value>
+-<!-- 3D Inner Box Shadow -->
++ <!-- 3D Inner Box Shadow -->
+ <value>shdw18</value>
+-<!-- Back Center Perspective Shadow -->
++ <!-- Back Center Perspective Shadow -->
+ <value>shdw19</value>
+-<!-- Front Bottom Shadow -->
++ <!-- Front Bottom Shadow -->
+ <value>shdw20</value>
+ </choice>
+ </list>
+@@ -2046,11 +2046,11 @@
+ <list>
+ <xs:documentation>Path Shade Type</xs:documentation>
+ <choice>
+-<!-- Shape -->
++ <!-- Shape -->
+ <value>shape</value>
+-<!-- Circle -->
++ <!-- Circle -->
+ <value>circle</value>
+-<!-- Rectangle -->
++ <!-- Rectangle -->
+ <value>rect</value>
+ </choice>
+ </list>
+@@ -2082,13 +2082,13 @@
+ <list>
+ <xs:documentation>Tile Flip Mode</xs:documentation>
+ <choice>
+-<!-- None -->
++ <!-- None -->
+ <value>none</value>
+-<!-- Horizontal -->
++ <!-- Horizontal -->
+ <value>x</value>
+-<!-- Vertical -->
++ <!-- Vertical -->
+ <value>y</value>
+-<!-- Horizontal and Vertical -->
++ <!-- Horizontal and Vertical -->
+ <value>xy</value>
+ </choice>
+ </list>
+@@ -2197,15 +2197,15 @@
+ <list>
+ <xs:documentation>Blip Compression Type</xs:documentation>
+ <choice>
+-<!-- Email Compression -->
++ <!-- Email Compression -->
+ <value>email</value>
+-<!-- Screen Viewing Compression -->
++ <!-- Screen Viewing Compression -->
+ <value>screen</value>
+-<!-- Printing Compression -->
++ <!-- Printing Compression -->
+ <value>print</value>
+-<!-- High Quality Printing Compression -->
++ <!-- High Quality Printing Compression -->
+ <value>hqprint</value>
+-<!-- No Compression -->
++ <!-- No Compression -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -2318,113 +2318,113 @@
+ <list>
+ <xs:documentation>Preset Pattern Value</xs:documentation>
+ <choice>
+-<!-- 5% -->
++ <!-- 5% -->
+ <value>pct5</value>
+-<!-- 10% -->
++ <!-- 10% -->
+ <value>pct10</value>
+-<!-- 20% -->
++ <!-- 20% -->
+ <value>pct20</value>
+-<!-- 25% -->
++ <!-- 25% -->
+ <value>pct25</value>
+-<!-- 30% -->
++ <!-- 30% -->
+ <value>pct30</value>
+-<!-- 40% -->
++ <!-- 40% -->
+ <value>pct40</value>
+-<!-- 50% -->
++ <!-- 50% -->
+ <value>pct50</value>
+-<!-- 60% -->
++ <!-- 60% -->
+ <value>pct60</value>
+-<!-- 70% -->
++ <!-- 70% -->
+ <value>pct70</value>
+-<!-- 75% -->
++ <!-- 75% -->
+ <value>pct75</value>
+-<!-- 80% -->
++ <!-- 80% -->
+ <value>pct80</value>
+-<!-- 90% -->
++ <!-- 90% -->
+ <value>pct90</value>
+-<!-- Horizontal -->
++ <!-- Horizontal -->
+ <value>horz</value>
+-<!-- Vertical -->
++ <!-- Vertical -->
+ <value>vert</value>
+-<!-- Light Horizontal -->
++ <!-- Light Horizontal -->
+ <value>ltHorz</value>
+-<!-- Light Vertical -->
++ <!-- Light Vertical -->
+ <value>ltVert</value>
+-<!-- Dark Horizontal -->
++ <!-- Dark Horizontal -->
+ <value>dkHorz</value>
+-<!-- Dark Vertical -->
++ <!-- Dark Vertical -->
+ <value>dkVert</value>
+-<!-- Narrow Horizontal -->
++ <!-- Narrow Horizontal -->
+ <value>narHorz</value>
+-<!-- Narrow Vertical -->
++ <!-- Narrow Vertical -->
+ <value>narVert</value>
+-<!-- Dashed Horizontal -->
++ <!-- Dashed Horizontal -->
+ <value>dashHorz</value>
+-<!-- Dashed Vertical -->
++ <!-- Dashed Vertical -->
+ <value>dashVert</value>
+-<!-- Cross -->
++ <!-- Cross -->
+ <value>cross</value>
+-<!-- Downward Diagonal -->
++ <!-- Downward Diagonal -->
+ <value>dnDiag</value>
+-<!-- Upward Diagonal -->
++ <!-- Upward Diagonal -->
+ <value>upDiag</value>
+-<!-- Light Downward Diagonal -->
++ <!-- Light Downward Diagonal -->
+ <value>ltDnDiag</value>
+-<!-- Light Upward Diagonal -->
++ <!-- Light Upward Diagonal -->
+ <value>ltUpDiag</value>
+-<!-- Dark Downward Diagonal -->
++ <!-- Dark Downward Diagonal -->
+ <value>dkDnDiag</value>
+-<!-- Dark Upward Diagonal -->
++ <!-- Dark Upward Diagonal -->
+ <value>dkUpDiag</value>
+-<!-- Wide Downward Diagonal -->
++ <!-- Wide Downward Diagonal -->
+ <value>wdDnDiag</value>
+-<!-- Wide Upward Diagonal -->
++ <!-- Wide Upward Diagonal -->
+ <value>wdUpDiag</value>
+-<!-- Dashed Downward Diagonal -->
++ <!-- Dashed Downward Diagonal -->
+ <value>dashDnDiag</value>
+-<!-- Dashed Upward DIagonal -->
++ <!-- Dashed Upward DIagonal -->
+ <value>dashUpDiag</value>
+-<!-- Diagonal Cross -->
++ <!-- Diagonal Cross -->
+ <value>diagCross</value>
+-<!-- Small Checker Board -->
++ <!-- Small Checker Board -->
+ <value>smCheck</value>
+-<!-- Large Checker Board -->
++ <!-- Large Checker Board -->
+ <value>lgCheck</value>
+-<!-- Small Grid -->
++ <!-- Small Grid -->
+ <value>smGrid</value>
+-<!-- Large Grid -->
++ <!-- Large Grid -->
+ <value>lgGrid</value>
+-<!-- Dotted Grid -->
++ <!-- Dotted Grid -->
+ <value>dotGrid</value>
+-<!-- Small Confetti -->
++ <!-- Small Confetti -->
+ <value>smConfetti</value>
+-<!-- Large Confetti -->
++ <!-- Large Confetti -->
+ <value>lgConfetti</value>
+-<!-- Horizontal Brick -->
++ <!-- Horizontal Brick -->
+ <value>horzBrick</value>
+-<!-- Diagonal Brick -->
++ <!-- Diagonal Brick -->
+ <value>diagBrick</value>
+-<!-- Solid Diamond -->
++ <!-- Solid Diamond -->
+ <value>solidDmnd</value>
+-<!-- Open Diamond -->
++ <!-- Open Diamond -->
+ <value>openDmnd</value>
+-<!-- Dotted Diamond -->
++ <!-- Dotted Diamond -->
+ <value>dotDmnd</value>
+-<!-- Plaid -->
++ <!-- Plaid -->
+ <value>plaid</value>
+-<!-- Sphere -->
++ <!-- Sphere -->
+ <value>sphere</value>
+-<!-- Weave -->
++ <!-- Weave -->
+ <value>weave</value>
+-<!-- Divot -->
++ <!-- Divot -->
+ <value>divot</value>
+-<!-- Shingle -->
++ <!-- Shingle -->
+ <value>shingle</value>
+-<!-- Wave -->
++ <!-- Wave -->
+ <value>wave</value>
+-<!-- Trellis -->
++ <!-- Trellis -->
+ <value>trellis</value>
+-<!-- Zig Zag -->
++ <!-- Zig Zag -->
+ <value>zigZag</value>
+ </choice>
+ </list>
+@@ -2484,15 +2484,15 @@
+ <list>
+ <xs:documentation>Blend Mode</xs:documentation>
+ <choice>
+-<!-- Overlay -->
++ <!-- Overlay -->
+ <value>over</value>
+-<!-- Multiply -->
++ <!-- Multiply -->
+ <value>mult</value>
+-<!-- Screen -->
++ <!-- Screen -->
+ <value>screen</value>
+-<!-- Darken -->
++ <!-- Darken -->
+ <value>darken</value>
+-<!-- Lighten -->
++ <!-- Lighten -->
+ <value>lighten</value>
+ </choice>
+ </list>
+@@ -2610,9 +2610,9 @@
+ <list>
+ <xs:documentation>Effect Container Type</xs:documentation>
+ <choice>
+-<!-- Sibling -->
++ <!-- Sibling -->
+ <value>sib</value>
+-<!-- Tree -->
++ <!-- Tree -->
+ <value>tree</value>
+ </choice>
+ </list>
+@@ -2903,23 +2903,23 @@
+ </namespace>
+ <namespace name="dml-shapeLineProperties" file="dml-shapeLineProperties.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-shapeEffects.rng"/>
+ <define name="ST_LineEndType">
+ <list>
+ <xs:documentation>Line End Type</xs:documentation>
+ <choice>
+-<!-- None -->
++ <!-- None -->
+ <value>none</value>
+-<!-- Triangle Arrow Head -->
++ <!-- Triangle Arrow Head -->
+ <value>triangle</value>
+-<!-- Stealth Arrow -->
++ <!-- Stealth Arrow -->
+ <value>stealth</value>
+-<!-- Diamond -->
++ <!-- Diamond -->
+ <value>diamond</value>
+-<!-- Oval -->
++ <!-- Oval -->
+ <value>oval</value>
+-<!-- Arrow Head -->
++ <!-- Arrow Head -->
+ <value>arrow</value>
+ </choice>
+ </list>
+@@ -2928,11 +2928,11 @@
+ <list>
+ <xs:documentation>Line End Width</xs:documentation>
+ <choice>
+-<!-- Small -->
++ <!-- Small -->
+ <value>sm</value>
+-<!-- Medium -->
++ <!-- Medium -->
+ <value>med</value>
+-<!-- Large -->
++ <!-- Large -->
+ <value>lg</value>
+ </choice>
+ </list>
+@@ -2941,11 +2941,11 @@
+ <list>
+ <xs:documentation>Line End Length</xs:documentation>
+ <choice>
+-<!-- Small -->
++ <!-- Small -->
+ <value>sm</value>
+-<!-- Medium -->
++ <!-- Medium -->
+ <value>med</value>
+-<!-- Large -->
++ <!-- Large -->
+ <value>lg</value>
+ </choice>
+ </list>
+@@ -3017,27 +3017,27 @@
+ <list>
+ <xs:documentation>Preset Line Dash Value</xs:documentation>
+ <choice>
+-<!-- Solid -->
++ <!-- Solid -->
+ <value>solid</value>
+-<!-- Dot -->
++ <!-- Dot -->
+ <value>dot</value>
+-<!-- Dash -->
++ <!-- Dash -->
+ <value>dash</value>
+-<!-- Large Dash -->
++ <!-- Large Dash -->
+ <value>lgDash</value>
+-<!-- Dash Dot -->
++ <!-- Dash Dot -->
+ <value>dashDot</value>
+-<!-- Large Dash Dot -->
++ <!-- Large Dash Dot -->
+ <value>lgDashDot</value>
+-<!-- Large Dash Dot Dot -->
++ <!-- Large Dash Dot Dot -->
+ <value>lgDashDotDot</value>
+-<!-- System Dash -->
++ <!-- System Dash -->
+ <value>sysDash</value>
+-<!-- System Dot -->
++ <!-- System Dot -->
+ <value>sysDot</value>
+-<!-- System Dash Dot -->
++ <!-- System Dash Dot -->
+ <value>sysDashDot</value>
+-<!-- System Dash Dot Dot -->
++ <!-- System Dash Dot Dot -->
+ <value>sysDashDotDot</value>
+ </choice>
+ </list>
+@@ -3081,11 +3081,11 @@
+ <list>
+ <xs:documentation>End Line Cap</xs:documentation>
+ <choice>
+-<!-- Round Line Cap -->
++ <!-- Round Line Cap -->
+ <value>rnd</value>
+-<!-- Square Line Cap -->
++ <!-- Square Line Cap -->
+ <value>sq</value>
+-<!-- Flat Line Cap -->
++ <!-- Flat Line Cap -->
+ <value>flat</value>
+ </choice>
+ </list>
+@@ -3097,9 +3097,9 @@
+ <list>
+ <xs:documentation>Alignment Type</xs:documentation>
+ <choice>
+-<!-- Center Alignment -->
++ <!-- Center Alignment -->
+ <value>ctr</value>
+-<!-- Inset Alignment -->
++ <!-- Inset Alignment -->
+ <value>in</value>
+ </choice>
+ </list>
+@@ -3108,15 +3108,15 @@
+ <list>
+ <xs:documentation>Compound Line Type</xs:documentation>
+ <choice>
+-<!-- Single Line -->
++ <!-- Single Line -->
+ <value>sng</value>
+-<!-- Double Lines -->
++ <!-- Double Lines -->
+ <value>dbl</value>
+-<!-- Thick Thin Double Lines -->
++ <!-- Thick Thin Double Lines -->
+ <value>thickThin</value>
+-<!-- Thin Thick Double Lines -->
++ <!-- Thin Thick Double Lines -->
+ <value>thinThick</value>
+-<!-- Thin Thick Thin Triple Lines -->
++ <!-- Thin Thick Thin Triple Lines -->
+ <value>tri</value>
+ </choice>
+ </list>
+@@ -3244,7 +3244,7 @@
+ </namespace>
+ <namespace name="dml-shapeProperties" file="dml-shapeProperties.rng">
+ <grammar xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-shape3DStyles.rng"/>
+ <include href="dml-shape3DScene.rng"/>
+ <include href="dml-shapeGeometry.rng"/>
+@@ -3337,7 +3337,7 @@
+ </namespace>
+ <namespace name="dml-baseTypes" file="dml-baseTypes">
+ <grammar xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="shared-relationshipReference.rng"/>
+ <define name="CT_OfficeArtExtension">
+ <element>
+@@ -3624,65 +3624,65 @@
+ <list>
+ <xs:documentation>System Color Value</xs:documentation>
+ <choice>
+-<!-- Scroll Bar System Color -->
++ <!-- Scroll Bar System Color -->
+ <value>scrollBar</value>
+-<!-- Background System Color -->
++ <!-- Background System Color -->
+ <value>background</value>
+-<!-- Active Caption System Color -->
++ <!-- Active Caption System Color -->
+ <value>activeCaption</value>
+-<!-- Inactive Caption System Color -->
++ <!-- Inactive Caption System Color -->
+ <value>inactiveCaption</value>
+-<!-- Menu System Color -->
++ <!-- Menu System Color -->
+ <value>menu</value>
+-<!-- Window System Color -->
++ <!-- Window System Color -->
+ <value>window</value>
+-<!-- Window Frame System Color -->
++ <!-- Window Frame System Color -->
+ <value>windowFrame</value>
+-<!-- Menu Text System Color -->
++ <!-- Menu Text System Color -->
+ <value>menuText</value>
+-<!-- Window Text System Color -->
++ <!-- Window Text System Color -->
+ <value>windowText</value>
+-<!-- Caption Text System Color -->
++ <!-- Caption Text System Color -->
+ <value>captionText</value>
+-<!-- Active Border System Color -->
++ <!-- Active Border System Color -->
+ <value>activeBorder</value>
+-<!-- Inactive Border System Color -->
++ <!-- Inactive Border System Color -->
+ <value>inactiveBorder</value>
+-<!-- Application Workspace System Color -->
++ <!-- Application Workspace System Color -->
+ <value>appWorkspace</value>
+-<!-- Highlight System Color -->
++ <!-- Highlight System Color -->
+ <value>highlight</value>
+-<!-- Highlight Text System Color -->
++ <!-- Highlight Text System Color -->
+ <value>highlightText</value>
+-<!-- Button Face System Color -->
++ <!-- Button Face System Color -->
+ <value>btnFace</value>
+-<!-- Button Shadow System Color -->
++ <!-- Button Shadow System Color -->
+ <value>btnShadow</value>
+-<!-- Gray Text System Color -->
++ <!-- Gray Text System Color -->
+ <value>grayText</value>
+-<!-- Button Text System Color -->
++ <!-- Button Text System Color -->
+ <value>btnText</value>
+-<!-- Inactive Caption Text System Color -->
++ <!-- Inactive Caption Text System Color -->
+ <value>inactiveCaptionText</value>
+-<!-- Button Highlight System Color -->
++ <!-- Button Highlight System Color -->
+ <value>btnHighlight</value>
+-<!-- 3D Dark System Color -->
++ <!-- 3D Dark System Color -->
+ <value>3dDkShadow</value>
+-<!-- 3D Light System Color -->
++ <!-- 3D Light System Color -->
+ <value>3dLight</value>
+-<!-- Info Text System Color -->
++ <!-- Info Text System Color -->
+ <value>infoText</value>
+-<!-- Info Back System Color -->
++ <!-- Info Back System Color -->
+ <value>infoBk</value>
+-<!-- Hot Light System Color -->
++ <!-- Hot Light System Color -->
+ <value>hotLight</value>
+-<!-- Gradient Active Caption System Color -->
++ <!-- Gradient Active Caption System Color -->
+ <value>gradientActiveCaption</value>
+-<!-- Gradient Inactive Caption System Color -->
++ <!-- Gradient Inactive Caption System Color -->
+ <value>gradientInactiveCaption</value>
+-<!-- Menu Highlight System Color -->
++ <!-- Menu Highlight System Color -->
+ <value>menuHighlight</value>
+-<!-- Menu Bar System Color -->
++ <!-- Menu Bar System Color -->
+ <value>menuBar</value>
+ </choice>
+ </list>
+@@ -3706,39 +3706,39 @@
+ <list>
+ <xs:documentation>Scheme Color</xs:documentation>
+ <choice>
+-<!-- Background Color 1 -->
++ <!-- Background Color 1 -->
+ <value>bg1</value>
+-<!-- Text Color 1 -->
++ <!-- Text Color 1 -->
+ <value>tx1</value>
+-<!-- Background Color 2 -->
++ <!-- Background Color 2 -->
+ <value>bg2</value>
+-<!-- Text Color 2 -->
++ <!-- Text Color 2 -->
+ <value>tx2</value>
+-<!-- Accent Color 1 -->
++ <!-- Accent Color 1 -->
+ <value>accent1</value>
+-<!-- Accent Color 2 -->
++ <!-- Accent Color 2 -->
+ <value>accent2</value>
+-<!-- Accent Color 3 -->
++ <!-- Accent Color 3 -->
+ <value>accent3</value>
+-<!-- Accent Color 4 -->
++ <!-- Accent Color 4 -->
+ <value>accent4</value>
+-<!-- Accent Color 5 -->
++ <!-- Accent Color 5 -->
+ <value>accent5</value>
+-<!-- Accent Color 6 -->
++ <!-- Accent Color 6 -->
+ <value>accent6</value>
+-<!-- Hyperlink Color -->
++ <!-- Hyperlink Color -->
+ <value>hlink</value>
+-<!-- Followed Hyperlink Color -->
++ <!-- Followed Hyperlink Color -->
+ <value>folHlink</value>
+-<!-- Style Color -->
++ <!-- Style Color -->
+ <value>phClr</value>
+-<!-- Dark Color 1 -->
++ <!-- Dark Color 1 -->
+ <value>dk1</value>
+-<!-- Light Color 1 -->
++ <!-- Light Color 1 -->
+ <value>lt1</value>
+-<!-- Dark Color 2 -->
++ <!-- Dark Color 2 -->
+ <value>dk2</value>
+-<!-- Light Color 2 -->
++ <!-- Light Color 2 -->
+ <value>lt2</value>
+ </choice>
+ </list>
+@@ -3756,285 +3756,285 @@
+ <list>
+ <xs:documentation>Preset Color Value</xs:documentation>
+ <choice>
+-<!-- Alice Blue Preset Color -->
++ <!-- Alice Blue Preset Color -->
+ <value>aliceBlue</value>
+-<!-- Antique White Preset Color -->
++ <!-- Antique White Preset Color -->
+ <value>antiqueWhite</value>
+-<!-- Aqua Preset Color -->
++ <!-- Aqua Preset Color -->
+ <value>aqua</value>
+-<!-- Aquamarine Preset Color -->
++ <!-- Aquamarine Preset Color -->
+ <value>aquamarine</value>
+-<!-- Azure Preset Color -->
++ <!-- Azure Preset Color -->
+ <value>azure</value>
+-<!-- Beige Preset Color -->
++ <!-- Beige Preset Color -->
+ <value>beige</value>
+-<!-- Bisque Preset Color -->
++ <!-- Bisque Preset Color -->
+ <value>bisque</value>
+-<!-- Black Preset Color -->
++ <!-- Black Preset Color -->
+ <value>black</value>
+-<!-- Blanched Almond Preset Color -->
++ <!-- Blanched Almond Preset Color -->
+ <value>blanchedAlmond</value>
+-<!-- Blue Preset Color -->
++ <!-- Blue Preset Color -->
+ <value>blue</value>
+-<!-- Blue Violet Preset Color -->
++ <!-- Blue Violet Preset Color -->
+ <value>blueViolet</value>
+-<!-- Brown Preset Color -->
++ <!-- Brown Preset Color -->
+ <value>brown</value>
+-<!-- Burly Wood Preset Color -->
++ <!-- Burly Wood Preset Color -->
+ <value>burlyWood</value>
+-<!-- Cadet Blue Preset Color -->
++ <!-- Cadet Blue Preset Color -->
+ <value>cadetBlue</value>
+-<!-- Chartreuse Preset Color -->
++ <!-- Chartreuse Preset Color -->
+ <value>chartreuse</value>
+-<!-- Chocolate Preset Color -->
++ <!-- Chocolate Preset Color -->
+ <value>chocolate</value>
+-<!-- Coral Preset Color -->
++ <!-- Coral Preset Color -->
+ <value>coral</value>
+-<!-- Cornflower Blue Preset Color -->
++ <!-- Cornflower Blue Preset Color -->
+ <value>cornflowerBlue</value>
+-<!-- Cornsilk Preset Color -->
++ <!-- Cornsilk Preset Color -->
+ <value>cornsilk</value>
+-<!-- Crimson Preset Color -->
++ <!-- Crimson Preset Color -->
+ <value>crimson</value>
+-<!-- Cyan Preset Color -->
++ <!-- Cyan Preset Color -->
+ <value>cyan</value>
+-<!-- Dark Blue Preset Color -->
++ <!-- Dark Blue Preset Color -->
+ <value>dkBlue</value>
+-<!-- Dark Cyan Preset Color -->
++ <!-- Dark Cyan Preset Color -->
+ <value>dkCyan</value>
+-<!-- Dark Goldenrod Preset Color -->
++ <!-- Dark Goldenrod Preset Color -->
+ <value>dkGoldenrod</value>
+-<!-- Dark Gray Preset Color -->
++ <!-- Dark Gray Preset Color -->
+ <value>dkGray</value>
+-<!-- Dark Green Preset Color -->
++ <!-- Dark Green Preset Color -->
+ <value>dkGreen</value>
+-<!-- Dark Khaki Preset Color -->
++ <!-- Dark Khaki Preset Color -->
+ <value>dkKhaki</value>
+-<!-- Dark Magenta Preset Color -->
++ <!-- Dark Magenta Preset Color -->
+ <value>dkMagenta</value>
+-<!-- Dark Olive Green Preset Color -->
++ <!-- Dark Olive Green Preset Color -->
+ <value>dkOliveGreen</value>
+-<!-- Dark Orange Preset Color -->
++ <!-- Dark Orange Preset Color -->
+ <value>dkOrange</value>
+-<!-- Dark Orchid Preset Color -->
++ <!-- Dark Orchid Preset Color -->
+ <value>dkOrchid</value>
+-<!-- Dark Red Preset Color -->
++ <!-- Dark Red Preset Color -->
+ <value>dkRed</value>
+-<!-- Dark Salmon Preset Color -->
++ <!-- Dark Salmon Preset Color -->
+ <value>dkSalmon</value>
+-<!-- Dark Sea Green Preset Color -->
++ <!-- Dark Sea Green Preset Color -->
+ <value>dkSeaGreen</value>
+-<!-- Dark Slate Blue Preset Color -->
++ <!-- Dark Slate Blue Preset Color -->
+ <value>dkSlateBlue</value>
+-<!-- Dark Slate Gray Preset Color -->
++ <!-- Dark Slate Gray Preset Color -->
+ <value>dkSlateGray</value>
+-<!-- Dark Turquoise Preset Color -->
++ <!-- Dark Turquoise Preset Color -->
+ <value>dkTurquoise</value>
+-<!-- Dark Violet Preset Color -->
++ <!-- Dark Violet Preset Color -->
+ <value>dkViolet</value>
+-<!-- Deep Pink Preset Color -->
++ <!-- Deep Pink Preset Color -->
+ <value>deepPink</value>
+-<!-- Deep Sky Blue Preset Color -->
++ <!-- Deep Sky Blue Preset Color -->
+ <value>deepSkyBlue</value>
+-<!-- Dim Gray Preset Color -->
++ <!-- Dim Gray Preset Color -->
+ <value>dimGray</value>
+-<!-- Dodger Blue Preset Color -->
++ <!-- Dodger Blue Preset Color -->
+ <value>dodgerBlue</value>
+-<!-- Firebrick Preset Color -->
++ <!-- Firebrick Preset Color -->
+ <value>firebrick</value>
+-<!-- Floral White Preset Color -->
++ <!-- Floral White Preset Color -->
+ <value>floralWhite</value>
+-<!-- Forest Green Preset Color -->
++ <!-- Forest Green Preset Color -->
+ <value>forestGreen</value>
+-<!-- Fuchsia Preset Color -->
++ <!-- Fuchsia Preset Color -->
+ <value>fuchsia</value>
+-<!-- Gainsboro Preset Color -->
++ <!-- Gainsboro Preset Color -->
+ <value>gainsboro</value>
+-<!-- Ghost White Preset Color -->
++ <!-- Ghost White Preset Color -->
+ <value>ghostWhite</value>
+-<!-- Gold Preset Color -->
++ <!-- Gold Preset Color -->
+ <value>gold</value>
+-<!-- Goldenrod Preset Color -->
++ <!-- Goldenrod Preset Color -->
+ <value>goldenrod</value>
+-<!-- Gray Preset Color -->
++ <!-- Gray Preset Color -->
+ <value>gray</value>
+-<!-- Green Preset Color -->
++ <!-- Green Preset Color -->
+ <value>green</value>
+-<!-- Green Yellow Preset Color -->
++ <!-- Green Yellow Preset Color -->
+ <value>greenYellow</value>
+-<!-- Honeydew Preset Color -->
++ <!-- Honeydew Preset Color -->
+ <value>honeydew</value>
+-<!-- Hot Pink Preset Color -->
++ <!-- Hot Pink Preset Color -->
+ <value>hotPink</value>
+-<!-- Indian Red Preset Color -->
++ <!-- Indian Red Preset Color -->
+ <value>indianRed</value>
+-<!-- Indigo Preset Color -->
++ <!-- Indigo Preset Color -->
+ <value>indigo</value>
+-<!-- Ivory Preset Color -->
++ <!-- Ivory Preset Color -->
+ <value>ivory</value>
+-<!-- Khaki Preset Color -->
++ <!-- Khaki Preset Color -->
+ <value>khaki</value>
+-<!-- Lavender Preset Color -->
++ <!-- Lavender Preset Color -->
+ <value>lavender</value>
+-<!-- Lavender Blush Preset Color -->
++ <!-- Lavender Blush Preset Color -->
+ <value>lavenderBlush</value>
+-<!-- Lawn Green Preset Color -->
++ <!-- Lawn Green Preset Color -->
+ <value>lawnGreen</value>
+-<!-- Lemon Chiffon Preset Color -->
++ <!-- Lemon Chiffon Preset Color -->
+ <value>lemonChiffon</value>
+-<!-- Light Blue Preset Color -->
++ <!-- Light Blue Preset Color -->
+ <value>ltBlue</value>
+-<!-- Light Coral Preset Color -->
++ <!-- Light Coral Preset Color -->
+ <value>ltCoral</value>
+-<!-- Light Cyan Preset Color -->
++ <!-- Light Cyan Preset Color -->
+ <value>ltCyan</value>
+-<!-- Light Goldenrod Yellow Preset Color -->
++ <!-- Light Goldenrod Yellow Preset Color -->
+ <value>ltGoldenrodYellow</value>
+-<!-- Light Gray Preset Color -->
++ <!-- Light Gray Preset Color -->
+ <value>ltGray</value>
+-<!-- Light Green Preset Color -->
++ <!-- Light Green Preset Color -->
+ <value>ltGreen</value>
+-<!-- Light Pink Preset Color -->
++ <!-- Light Pink Preset Color -->
+ <value>ltPink</value>
+-<!-- Light Salmon Preset Color -->
++ <!-- Light Salmon Preset Color -->
+ <value>ltSalmon</value>
+-<!-- Light Sea Green Preset Color -->
++ <!-- Light Sea Green Preset Color -->
+ <value>ltSeaGreen</value>
+-<!-- Light Sky Blue Preset Color -->
++ <!-- Light Sky Blue Preset Color -->
+ <value>ltSkyBlue</value>
+-<!-- Light Slate Gray Preset Color -->
++ <!-- Light Slate Gray Preset Color -->
+ <value>ltSlateGray</value>
+-<!-- Light Steel Blue Preset Color -->
++ <!-- Light Steel Blue Preset Color -->
+ <value>ltSteelBlue</value>
+-<!-- Light Yellow Preset Color -->
++ <!-- Light Yellow Preset Color -->
+ <value>ltYellow</value>
+-<!-- Lime Preset Color -->
++ <!-- Lime Preset Color -->
+ <value>lime</value>
+-<!-- Lime Green Preset Color -->
++ <!-- Lime Green Preset Color -->
+ <value>limeGreen</value>
+-<!-- Linen Preset Color -->
++ <!-- Linen Preset Color -->
+ <value>linen</value>
+-<!-- Magenta Preset Color -->
++ <!-- Magenta Preset Color -->
+ <value>magenta</value>
+-<!-- Maroon Preset Color -->
++ <!-- Maroon Preset Color -->
+ <value>maroon</value>
+-<!-- Medium Aquamarine Preset Color -->
++ <!-- Medium Aquamarine Preset Color -->
+ <value>medAquamarine</value>
+-<!-- Medium Blue Preset Color -->
++ <!-- Medium Blue Preset Color -->
+ <value>medBlue</value>
+-<!-- Medium Orchid Preset Color -->
++ <!-- Medium Orchid Preset Color -->
+ <value>medOrchid</value>
+-<!-- Medium Purple Preset Color -->
++ <!-- Medium Purple Preset Color -->
+ <value>medPurple</value>
+-<!-- Medium Sea Green Preset Color -->
++ <!-- Medium Sea Green Preset Color -->
+ <value>medSeaGreen</value>
+-<!-- Medium Slate Blue Preset Color -->
++ <!-- Medium Slate Blue Preset Color -->
+ <value>medSlateBlue</value>
+-<!-- Medium Spring Green Preset Color -->
++ <!-- Medium Spring Green Preset Color -->
+ <value>medSpringGreen</value>
+-<!-- Medium Turquoise Preset Color -->
++ <!-- Medium Turquoise Preset Color -->
+ <value>medTurquoise</value>
+-<!-- Medium Violet Red Preset Color -->
++ <!-- Medium Violet Red Preset Color -->
+ <value>medVioletRed</value>
+-<!-- Midnight Blue Preset Color -->
++ <!-- Midnight Blue Preset Color -->
+ <value>midnightBlue</value>
+-<!-- Mint Cream Preset Color -->
++ <!-- Mint Cream Preset Color -->
+ <value>mintCream</value>
+-<!-- Misty Rose Preset Color -->
++ <!-- Misty Rose Preset Color -->
+ <value>mistyRose</value>
+-<!-- Moccasin Preset Color -->
++ <!-- Moccasin Preset Color -->
+ <value>moccasin</value>
+-<!-- Navajo White Preset Color -->
++ <!-- Navajo White Preset Color -->
+ <value>navajoWhite</value>
+-<!-- Navy Preset Color -->
++ <!-- Navy Preset Color -->
+ <value>navy</value>
+-<!-- Old Lace Preset Color -->
++ <!-- Old Lace Preset Color -->
+ <value>oldLace</value>
+-<!-- Olive Preset Color -->
++ <!-- Olive Preset Color -->
+ <value>olive</value>
+-<!-- Olive Drab Preset Color -->
++ <!-- Olive Drab Preset Color -->
+ <value>oliveDrab</value>
+-<!-- Orange Preset Color -->
++ <!-- Orange Preset Color -->
+ <value>orange</value>
+-<!-- Orange Red Preset Color -->
++ <!-- Orange Red Preset Color -->
+ <value>orangeRed</value>
+-<!-- Orchid Preset Color -->
++ <!-- Orchid Preset Color -->
+ <value>orchid</value>
+-<!-- Pale Goldenrod Preset Color -->
++ <!-- Pale Goldenrod Preset Color -->
+ <value>paleGoldenrod</value>
+-<!-- Pale Green Preset Color -->
++ <!-- Pale Green Preset Color -->
+ <value>paleGreen</value>
+-<!-- Pale Turquoise Preset Color -->
++ <!-- Pale Turquoise Preset Color -->
+ <value>paleTurquoise</value>
+-<!-- Pale Violet Red Preset Color -->
++ <!-- Pale Violet Red Preset Color -->
+ <value>paleVioletRed</value>
+-<!-- Papaya Whip Preset Color -->
++ <!-- Papaya Whip Preset Color -->
+ <value>papayaWhip</value>
+-<!-- Peach Puff Preset Color -->
++ <!-- Peach Puff Preset Color -->
+ <value>peachPuff</value>
+-<!-- Peru Preset Color -->
++ <!-- Peru Preset Color -->
+ <value>peru</value>
+-<!-- Pink Preset Color -->
++ <!-- Pink Preset Color -->
+ <value>pink</value>
+-<!-- Plum Preset Color -->
++ <!-- Plum Preset Color -->
+ <value>plum</value>
+-<!-- Powder Blue Preset Color -->
++ <!-- Powder Blue Preset Color -->
+ <value>powderBlue</value>
+-<!-- Purple Preset Color -->
++ <!-- Purple Preset Color -->
+ <value>purple</value>
+-<!-- Red Preset Color -->
++ <!-- Red Preset Color -->
+ <value>red</value>
+-<!-- Rosy Brown Preset Color -->
++ <!-- Rosy Brown Preset Color -->
+ <value>rosyBrown</value>
+-<!-- Royal Blue Preset Color -->
++ <!-- Royal Blue Preset Color -->
+ <value>royalBlue</value>
+-<!-- Saddle Brown Preset Color -->
++ <!-- Saddle Brown Preset Color -->
+ <value>saddleBrown</value>
+-<!-- Salmon Preset Color -->
++ <!-- Salmon Preset Color -->
+ <value>salmon</value>
+-<!-- Sandy Brown Preset Color -->
++ <!-- Sandy Brown Preset Color -->
+ <value>sandyBrown</value>
+-<!-- Sea Green Preset Color -->
++ <!-- Sea Green Preset Color -->
+ <value>seaGreen</value>
+-<!-- Sea Shell Preset Color -->
++ <!-- Sea Shell Preset Color -->
+ <value>seaShell</value>
+-<!-- Sienna Preset Color -->
++ <!-- Sienna Preset Color -->
+ <value>sienna</value>
+-<!-- Silver Preset Color -->
++ <!-- Silver Preset Color -->
+ <value>silver</value>
+-<!-- Sky Blue Preset Color -->
++ <!-- Sky Blue Preset Color -->
+ <value>skyBlue</value>
+-<!-- Slate Blue Preset Color -->
++ <!-- Slate Blue Preset Color -->
+ <value>slateBlue</value>
+-<!-- Slate Gray Preset Color -->
++ <!-- Slate Gray Preset Color -->
+ <value>slateGray</value>
+-<!-- Snow Preset Color -->
++ <!-- Snow Preset Color -->
+ <value>snow</value>
+-<!-- Spring Green Preset Color -->
++ <!-- Spring Green Preset Color -->
+ <value>springGreen</value>
+-<!-- Steel Blue Preset Color -->
++ <!-- Steel Blue Preset Color -->
+ <value>steelBlue</value>
+-<!-- Tan Preset Color -->
++ <!-- Tan Preset Color -->
+ <value>tan</value>
+-<!-- Teal Preset Color -->
++ <!-- Teal Preset Color -->
+ <value>teal</value>
+-<!-- Thistle Preset Color -->
++ <!-- Thistle Preset Color -->
+ <value>thistle</value>
+-<!-- Tomato Preset Color -->
++ <!-- Tomato Preset Color -->
+ <value>tomato</value>
+-<!-- Turquoise Preset Color -->
++ <!-- Turquoise Preset Color -->
+ <value>turquoise</value>
+-<!-- Violet Preset Color -->
++ <!-- Violet Preset Color -->
+ <value>violet</value>
+-<!-- Wheat Preset Color -->
++ <!-- Wheat Preset Color -->
+ <value>wheat</value>
+-<!-- White Preset Color -->
++ <!-- White Preset Color -->
+ <value>white</value>
+-<!-- White Smoke Preset Color -->
++ <!-- White Smoke Preset Color -->
+ <value>whiteSmoke</value>
+-<!-- Yellow Preset Color -->
++ <!-- Yellow Preset Color -->
+ <value>yellow</value>
+-<!-- Yellow Green Preset Color -->
++ <!-- Yellow Green Preset Color -->
+ <value>yellowGreen</value>
+ </choice>
+ </list>
+@@ -4220,23 +4220,23 @@
+ <list>
+ <xs:documentation>Rectangle Alignments</xs:documentation>
+ <choice>
+-<!-- Rectangle Alignment Enum ( Top Left ) -->
++ <!-- Rectangle Alignment Enum ( Top Left ) -->
+ <value>tl</value>
+-<!-- Rectangle Alignment Enum ( Top ) -->
++ <!-- Rectangle Alignment Enum ( Top ) -->
+ <value>t</value>
+-<!-- Rectangle Alignment Enum ( Top Right ) -->
++ <!-- Rectangle Alignment Enum ( Top Right ) -->
+ <value>tr</value>
+-<!-- Rectangle Alignment Enum ( Left ) -->
++ <!-- Rectangle Alignment Enum ( Left ) -->
+ <value>l</value>
+-<!-- Rectangle Alignment Enum ( Center ) -->
++ <!-- Rectangle Alignment Enum ( Center ) -->
+ <value>ctr</value>
+-<!-- Rectangle Alignment Enum ( Right ) -->
++ <!-- Rectangle Alignment Enum ( Right ) -->
+ <value>r</value>
+-<!-- Rectangle Alignment Enum ( Bottom Left ) -->
++ <!-- Rectangle Alignment Enum ( Bottom Left ) -->
+ <value>bl</value>
+-<!-- Rectangle Alignment Enum ( Bottom ) -->
++ <!-- Rectangle Alignment Enum ( Bottom ) -->
+ <value>b</value>
+-<!-- Rectangle Alignment Enum ( Bottom Right ) -->
++ <!-- Rectangle Alignment Enum ( Bottom Right ) -->
+ <value>br</value>
+ </choice>
+ </list>
+@@ -4281,27 +4281,27 @@
+ <list>
+ <xs:documentation>Black and White Mode</xs:documentation>
+ <choice>
+-<!-- Color -->
++ <!-- Color -->
+ <value>clr</value>
+-<!-- Automatic -->
++ <!-- Automatic -->
+ <value>auto</value>
+-<!-- Gray -->
++ <!-- Gray -->
+ <value>gray</value>
+-<!-- Light Gray -->
++ <!-- Light Gray -->
+ <value>ltGray</value>
+-<!-- Inverse Gray -->
++ <!-- Inverse Gray -->
+ <value>invGray</value>
+-<!-- Gray and White -->
++ <!-- Gray and White -->
+ <value>grayWhite</value>
+-<!-- Black and Gray -->
++ <!-- Black and Gray -->
+ <value>blackGray</value>
+-<!-- Black and White -->
++ <!-- Black and White -->
+ <value>blackWhite</value>
+-<!-- Black -->
++ <!-- Black -->
+ <value>black</value>
+-<!-- White -->
++ <!-- White -->
+ <value>white</value>
+-<!-- Hidden -->
++ <!-- Hidden -->
+ <value>hidden</value>
+ </choice>
+ </list>
+@@ -4696,7 +4696,7 @@
+ </namespace>
+ <namespace name="dml-documentProperties" file="dml-documentProperties.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseTypes.rng"/>
+ <include href="dml-shapeGeometry.rng"/>
+ <define name="AG_Locking">
+@@ -5106,8 +5106,8 @@
+ <namespace name="dml-graphicalObject" file="dml-graphicalObject.rng">
+ <start name="graphic"/>
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
+-<!-- start = graphic -->
++ <!-- ISO RELAX NG Schema -->
++ <!-- start = graphic -->
+ <define name="CT_GraphicalObjectData">
+ <zeroOrMore>
+ <ref name="pic"/>
+@@ -5147,385 +5147,385 @@
+ </namespace>
+ <namespace name="dml-shapeGeometry" file="dml-shapeGeometry.rng">
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-baseTypes.rng"/>
+ <define name="ST_ShapeType">
+ <list>
+ <xs:documentation>Preset Shape Types</xs:documentation>
+ <choice>
+-<!-- Line Shape -->
++ <!-- Line Shape -->
+ <value>line</value>
+-<!-- Line Inverse Shape -->
++ <!-- Line Inverse Shape -->
+ <value>lineInv</value>
+-<!-- Triangle Shape -->
++ <!-- Triangle Shape -->
+ <value>triangle</value>
+-<!-- Right Triangle Shape -->
++ <!-- Right Triangle Shape -->
+ <value>rtTriangle</value>
+-<!-- Rectangle Shape -->
++ <!-- Rectangle Shape -->
+ <value>rect</value>
+-<!-- Diamond Shape -->
++ <!-- Diamond Shape -->
+ <value>diamond</value>
+-<!-- Parallelogram Shape -->
++ <!-- Parallelogram Shape -->
+ <value>parallelogram</value>
+-<!-- Trapezoid Shape -->
++ <!-- Trapezoid Shape -->
+ <value>trapezoid</value>
+-<!-- Non-Isosceles Trapezoid Shape -->
++ <!-- Non-Isosceles Trapezoid Shape -->
+ <value>nonIsoscelesTrapezoid</value>
+-<!-- Pentagon Shape -->
++ <!-- Pentagon Shape -->
+ <value>pentagon</value>
+-<!-- Hexagon Shape -->
++ <!-- Hexagon Shape -->
+ <value>hexagon</value>
+-<!-- Heptagon Shape -->
++ <!-- Heptagon Shape -->
+ <value>heptagon</value>
+-<!-- Octagon Shape -->
++ <!-- Octagon Shape -->
+ <value>octagon</value>
+-<!-- Decagon Shape -->
++ <!-- Decagon Shape -->
+ <value>decagon</value>
+-<!-- Dodecagon Shape -->
++ <!-- Dodecagon Shape -->
+ <value>dodecagon</value>
+-<!-- Four Pointed Star Shape -->
++ <!-- Four Pointed Star Shape -->
+ <value>star4</value>
+-<!-- Five Pointed Star Shape -->
++ <!-- Five Pointed Star Shape -->
+ <value>star5</value>
+-<!-- Six Pointed Star Shape -->
++ <!-- Six Pointed Star Shape -->
+ <value>star6</value>
+-<!-- Seven Pointed Star Shape -->
++ <!-- Seven Pointed Star Shape -->
+ <value>star7</value>
+-<!-- Eight Pointed Star Shape -->
++ <!-- Eight Pointed Star Shape -->
+ <value>star8</value>
+-<!-- Ten Pointed Star Shape -->
++ <!-- Ten Pointed Star Shape -->
+ <value>star10</value>
+-<!-- Twelve Pointed Star Shape -->
++ <!-- Twelve Pointed Star Shape -->
+ <value>star12</value>
+-<!-- Sixteen Pointed Star Shape -->
++ <!-- Sixteen Pointed Star Shape -->
+ <value>star16</value>
+-<!-- Twenty Four Pointed Star Shape -->
++ <!-- Twenty Four Pointed Star Shape -->
+ <value>star24</value>
+-<!-- Thirty Two Pointed Star Shape -->
++ <!-- Thirty Two Pointed Star Shape -->
+ <value>star32</value>
+-<!-- Round Corner Rectangle Shape -->
++ <!-- Round Corner Rectangle Shape -->
+ <value>roundRect</value>
+-<!-- One Round Corner Rectangle Shape -->
++ <!-- One Round Corner Rectangle Shape -->
+ <value>round1Rect</value>
+-<!-- Two Same-side Round Corner Rectangle Shape -->
++ <!-- Two Same-side Round Corner Rectangle Shape -->
+ <value>round2SameRect</value>
+-<!-- Two Diagonal Round Corner Rectangle Shape -->
++ <!-- Two Diagonal Round Corner Rectangle Shape -->
+ <value>round2DiagRect</value>
+-<!-- One Snip One Round Corner Rectangle Shape -->
++ <!-- One Snip One Round Corner Rectangle Shape -->
+ <value>snipRoundRect</value>
+-<!-- One Snip Corner Rectangle Shape -->
++ <!-- One Snip Corner Rectangle Shape -->
+ <value>snip1Rect</value>
+-<!-- Two Same-side Snip Corner Rectangle Shape -->
++ <!-- Two Same-side Snip Corner Rectangle Shape -->
+ <value>snip2SameRect</value>
+-<!-- Two Diagonal Snip Corner Rectangle Shape -->
++ <!-- Two Diagonal Snip Corner Rectangle Shape -->
+ <value>snip2DiagRect</value>
+-<!-- Plaque Shape -->
++ <!-- Plaque Shape -->
+ <value>plaque</value>
+-<!-- Ellipse Shape -->
++ <!-- Ellipse Shape -->
+ <value>ellipse</value>
+-<!-- Teardrop Shape -->
++ <!-- Teardrop Shape -->
+ <value>teardrop</value>
+-<!-- Home Plate Shape -->
++ <!-- Home Plate Shape -->
+ <value>homePlate</value>
+-<!-- Chevron Shape -->
++ <!-- Chevron Shape -->
+ <value>chevron</value>
+-<!-- Pie Wedge Shape -->
++ <!-- Pie Wedge Shape -->
+ <value>pieWedge</value>
+-<!-- Pie Shape -->
++ <!-- Pie Shape -->
+ <value>pie</value>
+-<!-- Block Arc Shape -->
++ <!-- Block Arc Shape -->
+ <value>blockArc</value>
+-<!-- Donut Shape -->
++ <!-- Donut Shape -->
+ <value>donut</value>
+-<!-- No Smoking Shape -->
++ <!-- No Smoking Shape -->
+ <value>noSmoking</value>
+-<!-- Right Arrow Shape -->
++ <!-- Right Arrow Shape -->
+ <value>rightArrow</value>
+-<!-- Left Arrow Shape -->
++ <!-- Left Arrow Shape -->
+ <value>leftArrow</value>
+-<!-- Up Arrow Shape -->
++ <!-- Up Arrow Shape -->
+ <value>upArrow</value>
+-<!-- Down Arrow Shape -->
++ <!-- Down Arrow Shape -->
+ <value>downArrow</value>
+-<!-- Striped Right Arrow Shape -->
++ <!-- Striped Right Arrow Shape -->
+ <value>stripedRightArrow</value>
+-<!-- Notched Right Arrow Shape -->
++ <!-- Notched Right Arrow Shape -->
+ <value>notchedRightArrow</value>
+-<!-- Bent Up Arrow Shape -->
++ <!-- Bent Up Arrow Shape -->
+ <value>bentUpArrow</value>
+-<!-- Left Right Arrow Shape -->
++ <!-- Left Right Arrow Shape -->
+ <value>leftRightArrow</value>
+-<!-- Up Down Arrow Shape -->
++ <!-- Up Down Arrow Shape -->
+ <value>upDownArrow</value>
+-<!-- Left Up Arrow Shape -->
++ <!-- Left Up Arrow Shape -->
+ <value>leftUpArrow</value>
+-<!-- Left Right Up Arrow Shape -->
++ <!-- Left Right Up Arrow Shape -->
+ <value>leftRightUpArrow</value>
+-<!-- Quad-Arrow Shape -->
++ <!-- Quad-Arrow Shape -->
+ <value>quadArrow</value>
+-<!-- Callout Left Arrow Shape -->
++ <!-- Callout Left Arrow Shape -->
+ <value>leftArrowCallout</value>
+-<!-- Callout Right Arrow Shape -->
++ <!-- Callout Right Arrow Shape -->
+ <value>rightArrowCallout</value>
+-<!-- Callout Up Arrow Shape -->
++ <!-- Callout Up Arrow Shape -->
+ <value>upArrowCallout</value>
+-<!-- Callout Down Arrow Shape -->
++ <!-- Callout Down Arrow Shape -->
+ <value>downArrowCallout</value>
+-<!-- Callout Left Right Arrow Shape -->
++ <!-- Callout Left Right Arrow Shape -->
+ <value>leftRightArrowCallout</value>
+-<!-- Callout Up Down Arrow Shape -->
++ <!-- Callout Up Down Arrow Shape -->
+ <value>upDownArrowCallout</value>
+-<!-- Callout Quad-Arrow Shape -->
++ <!-- Callout Quad-Arrow Shape -->
+ <value>quadArrowCallout</value>
+-<!-- Bent Arrow Shape -->
++ <!-- Bent Arrow Shape -->
+ <value>bentArrow</value>
+-<!-- U-Turn Arrow Shape -->
++ <!-- U-Turn Arrow Shape -->
+ <value>uturnArrow</value>
+-<!-- Circular Arrow Shape -->
++ <!-- Circular Arrow Shape -->
+ <value>circularArrow</value>
+-<!-- Left Circular Arrow Shape -->
++ <!-- Left Circular Arrow Shape -->
+ <value>leftCircularArrow</value>
+-<!-- Left Right Circular Arrow Shape -->
++ <!-- Left Right Circular Arrow Shape -->
+ <value>leftRightCircularArrow</value>
+-<!-- Curved Right Arrow Shape -->
++ <!-- Curved Right Arrow Shape -->
+ <value>curvedRightArrow</value>
+-<!-- Curved Left Arrow Shape -->
++ <!-- Curved Left Arrow Shape -->
+ <value>curvedLeftArrow</value>
+-<!-- Curved Up Arrow Shape -->
++ <!-- Curved Up Arrow Shape -->
+ <value>curvedUpArrow</value>
+-<!-- Curved Down Arrow Shape -->
++ <!-- Curved Down Arrow Shape -->
+ <value>curvedDownArrow</value>
+-<!-- Swoosh Arrow Shape -->
++ <!-- Swoosh Arrow Shape -->
+ <value>swooshArrow</value>
+-<!-- Cube Shape -->
++ <!-- Cube Shape -->
+ <value>cube</value>
+-<!-- Can Shape -->
++ <!-- Can Shape -->
+ <value>can</value>
+-<!-- Lightning Bolt Shape -->
++ <!-- Lightning Bolt Shape -->
+ <value>lightningBolt</value>
+-<!-- Heart Shape -->
++ <!-- Heart Shape -->
+ <value>heart</value>
+-<!-- Sun Shape -->
++ <!-- Sun Shape -->
+ <value>sun</value>
+-<!-- Moon Shape -->
++ <!-- Moon Shape -->
+ <value>moon</value>
+-<!-- Smiley Face Shape -->
++ <!-- Smiley Face Shape -->
+ <value>smileyFace</value>
+-<!-- Irregular Seal 1 Shape -->
++ <!-- Irregular Seal 1 Shape -->
+ <value>irregularSeal1</value>
+-<!-- Irregular Seal 2 Shape -->
++ <!-- Irregular Seal 2 Shape -->
+ <value>irregularSeal2</value>
+-<!-- Folded Corner Shape -->
++ <!-- Folded Corner Shape -->
+ <value>foldedCorner</value>
+-<!-- Bevel Shape -->
++ <!-- Bevel Shape -->
+ <value>bevel</value>
+-<!-- Frame Shape -->
++ <!-- Frame Shape -->
+ <value>frame</value>
+-<!-- Half Frame Shape -->
++ <!-- Half Frame Shape -->
+ <value>halfFrame</value>
+-<!-- Corner Shape -->
++ <!-- Corner Shape -->
+ <value>corner</value>
+-<!-- Diagonal Stripe Shape -->
++ <!-- Diagonal Stripe Shape -->
+ <value>diagStripe</value>
+-<!-- Chord Shape -->
++ <!-- Chord Shape -->
+ <value>chord</value>
+-<!-- Curved Arc Shape -->
++ <!-- Curved Arc Shape -->
+ <value>arc</value>
+-<!-- Left Bracket Shape -->
++ <!-- Left Bracket Shape -->
+ <value>leftBracket</value>
+-<!-- Right Bracket Shape -->
++ <!-- Right Bracket Shape -->
+ <value>rightBracket</value>
+-<!-- Left Brace Shape -->
++ <!-- Left Brace Shape -->
+ <value>leftBrace</value>
+-<!-- Right Brace Shape -->
++ <!-- Right Brace Shape -->
+ <value>rightBrace</value>
+-<!-- Bracket Pair Shape -->
++ <!-- Bracket Pair Shape -->
+ <value>bracketPair</value>
+-<!-- Brace Pair Shape -->
++ <!-- Brace Pair Shape -->
+ <value>bracePair</value>
+-<!-- Straight Connector 1 Shape -->
++ <!-- Straight Connector 1 Shape -->
+ <value>straightConnector1</value>
+-<!-- Bent Connector 2 Shape -->
++ <!-- Bent Connector 2 Shape -->
+ <value>bentConnector2</value>
+-<!-- Bent Connector 3 Shape -->
++ <!-- Bent Connector 3 Shape -->
+ <value>bentConnector3</value>
+-<!-- Bent Connector 4 Shape -->
++ <!-- Bent Connector 4 Shape -->
+ <value>bentConnector4</value>
+-<!-- Bent Connector 5 Shape -->
++ <!-- Bent Connector 5 Shape -->
+ <value>bentConnector5</value>
+-<!-- Curved Connector 2 Shape -->
++ <!-- Curved Connector 2 Shape -->
+ <value>curvedConnector2</value>
+-<!-- Curved Connector 3 Shape -->
++ <!-- Curved Connector 3 Shape -->
+ <value>curvedConnector3</value>
+-<!-- Curved Connector 4 Shape -->
++ <!-- Curved Connector 4 Shape -->
+ <value>curvedConnector4</value>
+-<!-- Curved Connector 5 Shape -->
++ <!-- Curved Connector 5 Shape -->
+ <value>curvedConnector5</value>
+-<!-- Callout 1 Shape -->
++ <!-- Callout 1 Shape -->
+ <value>callout1</value>
+-<!-- Callout 2 Shape -->
++ <!-- Callout 2 Shape -->
+ <value>callout2</value>
+-<!-- Callout 3 Shape -->
++ <!-- Callout 3 Shape -->
+ <value>callout3</value>
+-<!-- Callout 1 Shape -->
++ <!-- Callout 1 Shape -->
+ <value>accentCallout1</value>
+-<!-- Callout 2 Shape -->
++ <!-- Callout 2 Shape -->
+ <value>accentCallout2</value>
+-<!-- Callout 3 Shape -->
++ <!-- Callout 3 Shape -->
+ <value>accentCallout3</value>
+-<!-- Callout 1 with Border Shape -->
++ <!-- Callout 1 with Border Shape -->
+ <value>borderCallout1</value>
+-<!-- Callout 2 with Border Shape -->
++ <!-- Callout 2 with Border Shape -->
+ <value>borderCallout2</value>
+-<!-- Callout 3 with Border Shape -->
++ <!-- Callout 3 with Border Shape -->
+ <value>borderCallout3</value>
+-<!-- Callout 1 with Border and Accent Shape -->
++ <!-- Callout 1 with Border and Accent Shape -->
+ <value>accentBorderCallout1</value>
+-<!-- Callout 2 with Border and Accent Shape -->
++ <!-- Callout 2 with Border and Accent Shape -->
+ <value>accentBorderCallout2</value>
+-<!-- Callout 3 with Border and Accent Shape -->
++ <!-- Callout 3 with Border and Accent Shape -->
+ <value>accentBorderCallout3</value>
+-<!-- Callout Wedge Rectangle Shape -->
++ <!-- Callout Wedge Rectangle Shape -->
+ <value>wedgeRectCallout</value>
+-<!-- Callout Wedge Round Rectangle Shape -->
++ <!-- Callout Wedge Round Rectangle Shape -->
+ <value>wedgeRoundRectCallout</value>
+-<!-- Callout Wedge Ellipse Shape -->
++ <!-- Callout Wedge Ellipse Shape -->
+ <value>wedgeEllipseCallout</value>
+-<!-- Callout Cloud Shape -->
++ <!-- Callout Cloud Shape -->
+ <value>cloudCallout</value>
+-<!-- Cloud Shape -->
++ <!-- Cloud Shape -->
+ <value>cloud</value>
+-<!-- Ribbon Shape -->
++ <!-- Ribbon Shape -->
+ <value>ribbon</value>
+-<!-- Ribbon 2 Shape -->
++ <!-- Ribbon 2 Shape -->
+ <value>ribbon2</value>
+-<!-- Ellipse Ribbon Shape -->
++ <!-- Ellipse Ribbon Shape -->
+ <value>ellipseRibbon</value>
+-<!-- Ellipse Ribbon 2 Shape -->
++ <!-- Ellipse Ribbon 2 Shape -->
+ <value>ellipseRibbon2</value>
+-<!-- Left Right Ribbon Shape -->
++ <!-- Left Right Ribbon Shape -->
+ <value>leftRightRibbon</value>
+-<!-- Vertical Scroll Shape -->
++ <!-- Vertical Scroll Shape -->
+ <value>verticalScroll</value>
+-<!-- Horizontal Scroll Shape -->
++ <!-- Horizontal Scroll Shape -->
+ <value>horizontalScroll</value>
+-<!-- Wave Shape -->
++ <!-- Wave Shape -->
+ <value>wave</value>
+-<!-- Double Wave Shape -->
++ <!-- Double Wave Shape -->
+ <value>doubleWave</value>
+-<!-- Plus Shape -->
++ <!-- Plus Shape -->
+ <value>plus</value>
+-<!-- Process Flow Shape -->
++ <!-- Process Flow Shape -->
+ <value>flowChartProcess</value>
+-<!-- Decision Flow Shape -->
++ <!-- Decision Flow Shape -->
+ <value>flowChartDecision</value>
+-<!-- Input Output Flow Shape -->
++ <!-- Input Output Flow Shape -->
+ <value>flowChartInputOutput</value>
+-<!-- Predefined Process Flow Shape -->
++ <!-- Predefined Process Flow Shape -->
+ <value>flowChartPredefinedProcess</value>
+-<!-- Internal Storage Flow Shape -->
++ <!-- Internal Storage Flow Shape -->
+ <value>flowChartInternalStorage</value>
+-<!-- Document Flow Shape -->
++ <!-- Document Flow Shape -->
+ <value>flowChartDocument</value>
+-<!-- Multi-Document Flow Shape -->
++ <!-- Multi-Document Flow Shape -->
+ <value>flowChartMultidocument</value>
+-<!-- Terminator Flow Shape -->
++ <!-- Terminator Flow Shape -->
+ <value>flowChartTerminator</value>
+-<!-- Preparation Flow Shape -->
++ <!-- Preparation Flow Shape -->
+ <value>flowChartPreparation</value>
+-<!-- Manual Input Flow Shape -->
++ <!-- Manual Input Flow Shape -->
+ <value>flowChartManualInput</value>
+-<!-- Manual Operation Flow Shape -->
++ <!-- Manual Operation Flow Shape -->
+ <value>flowChartManualOperation</value>
+-<!-- Connector Flow Shape -->
++ <!-- Connector Flow Shape -->
+ <value>flowChartConnector</value>
+-<!-- Punched Card Flow Shape -->
++ <!-- Punched Card Flow Shape -->
+ <value>flowChartPunchedCard</value>
+-<!-- Punched Tape Flow Shape -->
++ <!-- Punched Tape Flow Shape -->
+ <value>flowChartPunchedTape</value>
+-<!-- Summing Junction Flow Shape -->
++ <!-- Summing Junction Flow Shape -->
+ <value>flowChartSummingJunction</value>
+-<!-- Or Flow Shape -->
++ <!-- Or Flow Shape -->
+ <value>flowChartOr</value>
+-<!-- Collate Flow Shape -->
++ <!-- Collate Flow Shape -->
+ <value>flowChartCollate</value>
+-<!-- Sort Flow Shape -->
++ <!-- Sort Flow Shape -->
+ <value>flowChartSort</value>
+-<!-- Extract Flow Shape -->
++ <!-- Extract Flow Shape -->
+ <value>flowChartExtract</value>
+-<!-- Merge Flow Shape -->
++ <!-- Merge Flow Shape -->
+ <value>flowChartMerge</value>
+-<!-- Offline Storage Flow Shape -->
++ <!-- Offline Storage Flow Shape -->
+ <value>flowChartOfflineStorage</value>
+-<!-- Online Storage Flow Shape -->
++ <!-- Online Storage Flow Shape -->
+ <value>flowChartOnlineStorage</value>
+-<!-- Magnetic Tape Flow Shape -->
++ <!-- Magnetic Tape Flow Shape -->
+ <value>flowChartMagneticTape</value>
+-<!-- Magnetic Disk Flow Shape -->
++ <!-- Magnetic Disk Flow Shape -->
+ <value>flowChartMagneticDisk</value>
+-<!-- Magnetic Drum Flow Shape -->
++ <!-- Magnetic Drum Flow Shape -->
+ <value>flowChartMagneticDrum</value>
+-<!-- Display Flow Shape -->
++ <!-- Display Flow Shape -->
+ <value>flowChartDisplay</value>
+-<!-- Delay Flow Shape -->
++ <!-- Delay Flow Shape -->
+ <value>flowChartDelay</value>
+-<!-- Alternate Process Flow Shape -->
++ <!-- Alternate Process Flow Shape -->
+ <value>flowChartAlternateProcess</value>
+-<!-- Off-Page Connector Flow Shape -->
++ <!-- Off-Page Connector Flow Shape -->
+ <value>flowChartOffpageConnector</value>
+-<!-- Blank Button Shape -->
++ <!-- Blank Button Shape -->
+ <value>actionButtonBlank</value>
+-<!-- Home Button Shape -->
++ <!-- Home Button Shape -->
+ <value>actionButtonHome</value>
+-<!-- Help Button Shape -->
++ <!-- Help Button Shape -->
+ <value>actionButtonHelp</value>
+-<!-- Information Button Shape -->
++ <!-- Information Button Shape -->
+ <value>actionButtonInformation</value>
+-<!-- Forward or Next Button Shape -->
++ <!-- Forward or Next Button Shape -->
+ <value>actionButtonForwardNext</value>
+-<!-- Back or Previous Button Shape -->
++ <!-- Back or Previous Button Shape -->
+ <value>actionButtonBackPrevious</value>
+-<!-- End Button Shape -->
++ <!-- End Button Shape -->
+ <value>actionButtonEnd</value>
+-<!-- Beginning Button Shape -->
++ <!-- Beginning Button Shape -->
+ <value>actionButtonBeginning</value>
+-<!-- Return Button Shape -->
++ <!-- Return Button Shape -->
+ <value>actionButtonReturn</value>
+-<!-- Document Button Shape -->
++ <!-- Document Button Shape -->
+ <value>actionButtonDocument</value>
+-<!-- Sound Button Shape -->
++ <!-- Sound Button Shape -->
+ <value>actionButtonSound</value>
+-<!-- Movie Button Shape -->
++ <!-- Movie Button Shape -->
+ <value>actionButtonMovie</value>
+-<!-- Gear 6 Shape -->
++ <!-- Gear 6 Shape -->
+ <value>gear6</value>
+-<!-- Gear 9 Shape -->
++ <!-- Gear 9 Shape -->
+ <value>gear9</value>
+-<!-- Funnel Shape -->
++ <!-- Funnel Shape -->
+ <value>funnel</value>
+-<!-- Plus Math Shape -->
++ <!-- Plus Math Shape -->
+ <value>mathPlus</value>
+-<!-- Minus Math Shape -->
++ <!-- Minus Math Shape -->
+ <value>mathMinus</value>
+-<!-- Multiply Math Shape -->
++ <!-- Multiply Math Shape -->
+ <value>mathMultiply</value>
+-<!-- Divide Math Shape -->
++ <!-- Divide Math Shape -->
+ <value>mathDivide</value>
+-<!-- Equal Math Shape -->
++ <!-- Equal Math Shape -->
+ <value>mathEqual</value>
+-<!-- Not Equal Math Shape -->
++ <!-- Not Equal Math Shape -->
+ <value>mathNotEqual</value>
+-<!-- Corner Tabs Shape -->
++ <!-- Corner Tabs Shape -->
+ <value>cornerTabs</value>
+-<!-- Square Tabs Shape -->
++ <!-- Square Tabs Shape -->
+ <value>squareTabs</value>
+-<!-- Plaque Tabs Shape -->
++ <!-- Plaque Tabs Shape -->
+ <value>plaqueTabs</value>
+-<!-- Chart X Shape -->
++ <!-- Chart X Shape -->
+ <value>chartX</value>
+-<!-- Chart Star Shape -->
++ <!-- Chart Star Shape -->
+ <value>chartStar</value>
+-<!-- Chart Plus Shape -->
++ <!-- Chart Plus Shape -->
+ <value>chartPlus</value>
+ </choice>
+ </list>
+@@ -5534,87 +5534,87 @@
+ <list>
+ <xs:documentation>Preset Text Shape Types</xs:documentation>
+ <choice>
+-<!-- No Text Shape -->
++ <!-- No Text Shape -->
+ <value>textNoShape</value>
+-<!-- Plain Text Shape -->
++ <!-- Plain Text Shape -->
+ <value>textPlain</value>
+-<!-- Stop Sign Text Shape -->
++ <!-- Stop Sign Text Shape -->
+ <value>textStop</value>
+-<!-- Triangle Text Shape -->
++ <!-- Triangle Text Shape -->
+ <value>textTriangle</value>
+-<!-- Inverted Triangle Text Shape -->
++ <!-- Inverted Triangle Text Shape -->
+ <value>textTriangleInverted</value>
+-<!-- Chevron Text Shape -->
++ <!-- Chevron Text Shape -->
+ <value>textChevron</value>
+-<!-- Inverted Chevron Text Shape -->
++ <!-- Inverted Chevron Text Shape -->
+ <value>textChevronInverted</value>
+-<!-- Inside Ring Text Shape -->
++ <!-- Inside Ring Text Shape -->
+ <value>textRingInside</value>
+-<!-- Outside Ring Text Shape -->
++ <!-- Outside Ring Text Shape -->
+ <value>textRingOutside</value>
+-<!-- Upward Arch Text Shape -->
++ <!-- Upward Arch Text Shape -->
+ <value>textArchUp</value>
+-<!-- Downward Arch Text Shape -->
++ <!-- Downward Arch Text Shape -->
+ <value>textArchDown</value>
+-<!-- Circle Text Shape -->
++ <!-- Circle Text Shape -->
+ <value>textCircle</value>
+-<!-- Button Text Shape -->
++ <!-- Button Text Shape -->
+ <value>textButton</value>
+-<!-- Upward Pour Arch Text Shape -->
++ <!-- Upward Pour Arch Text Shape -->
+ <value>textArchUpPour</value>
+-<!-- Downward Pour Arch Text Shape -->
++ <!-- Downward Pour Arch Text Shape -->
+ <value>textArchDownPour</value>
+-<!-- Circle Pour Text Shape -->
++ <!-- Circle Pour Text Shape -->
+ <value>textCirclePour</value>
+-<!-- Button Pour Text Shape -->
++ <!-- Button Pour Text Shape -->
+ <value>textButtonPour</value>
+-<!-- Upward Curve Text Shape -->
++ <!-- Upward Curve Text Shape -->
+ <value>textCurveUp</value>
+-<!-- Downward Curve Text Shape -->
++ <!-- Downward Curve Text Shape -->
+ <value>textCurveDown</value>
+-<!-- Upward Can Text Shape -->
++ <!-- Upward Can Text Shape -->
+ <value>textCanUp</value>
+-<!-- Downward Can Text Shape -->
++ <!-- Downward Can Text Shape -->
+ <value>textCanDown</value>
+-<!-- Wave 1 Text Shape -->
++ <!-- Wave 1 Text Shape -->
+ <value>textWave1</value>
+-<!-- Wave 2 Text Shape -->
++ <!-- Wave 2 Text Shape -->
+ <value>textWave2</value>
+-<!-- Double Wave 1 Text Shape -->
++ <!-- Double Wave 1 Text Shape -->
+ <value>textDoubleWave1</value>
+-<!-- Wave 4 Text Shape -->
++ <!-- Wave 4 Text Shape -->
+ <value>textWave4</value>
+-<!-- Inflate Text Shape -->
++ <!-- Inflate Text Shape -->
+ <value>textInflate</value>
+-<!-- Deflate Text Shape -->
++ <!-- Deflate Text Shape -->
+ <value>textDeflate</value>
+-<!-- Bottom Inflate Text Shape -->
++ <!-- Bottom Inflate Text Shape -->
+ <value>textInflateBottom</value>
+-<!-- Bottom Deflate Text Shape -->
++ <!-- Bottom Deflate Text Shape -->
+ <value>textDeflateBottom</value>
+-<!-- Top Inflate Text Shape -->
++ <!-- Top Inflate Text Shape -->
+ <value>textInflateTop</value>
+-<!-- Top Deflate Text Shape -->
++ <!-- Top Deflate Text Shape -->
+ <value>textDeflateTop</value>
+-<!-- Deflate-Inflate Text Shape -->
++ <!-- Deflate-Inflate Text Shape -->
+ <value>textDeflateInflate</value>
+-<!-- Deflate-Inflate-Deflate Text Shape -->
++ <!-- Deflate-Inflate-Deflate Text Shape -->
+ <value>textDeflateInflateDeflate</value>
+-<!-- Right Fade Text Shape -->
++ <!-- Right Fade Text Shape -->
+ <value>textFadeRight</value>
+-<!-- Left Fade Text Shape -->
++ <!-- Left Fade Text Shape -->
+ <value>textFadeLeft</value>
+-<!-- Upward Fade Text Shape -->
++ <!-- Upward Fade Text Shape -->
+ <value>textFadeUp</value>
+-<!-- Downward Fade Text Shape -->
++ <!-- Downward Fade Text Shape -->
+ <value>textFadeDown</value>
+-<!-- Upward Slant Text Shape -->
++ <!-- Upward Slant Text Shape -->
+ <value>textSlantUp</value>
+-<!-- Downward Slant Text Shape -->
++ <!-- Downward Slant Text Shape -->
+ <value>textSlantDown</value>
+-<!-- Upward Cascade Text Shape -->
++ <!-- Upward Cascade Text Shape -->
+ <value>textCascadeUp</value>
+-<!-- Downward Cascade Text Shape -->
++ <!-- Downward Cascade Text Shape -->
+ <value>textCascadeDown</value>
+ </choice>
+ </list>
+@@ -5652,14 +5652,14 @@
+ <ref name="ST_GeomGuideName"/>
+ </choice>
+ </define>
+-<!-- Union -->
++ <!-- Union -->
+ <define name="ST_AdjAngle">
+ <choice>
+ <ref name="ST_Angle"/>
+ <ref name="ST_GeomGuideName"/>
+ </choice>
+ </define>
+-<!-- Union -->
++ <!-- Union -->
+ <define name="CT_AdjPoint2D">
+ <attribute name="x">
+ <ref name="ST_AdjCoordinate"/>
+@@ -5859,17 +5859,17 @@
+ <list>
+ <xs:documentation>Path Fill Mode</xs:documentation>
+ <choice>
+-<!-- No Path Fill -->
++ <!-- No Path Fill -->
+ <value>none</value>
+-<!-- Normal Path Fill -->
++ <!-- Normal Path Fill -->
+ <value>norm</value>
+-<!-- Lighten Path Fill -->
++ <!-- Lighten Path Fill -->
+ <value>lighten</value>
+-<!-- Lighten Path Fill Less -->
++ <!-- Lighten Path Fill Less -->
+ <value>lightenLess</value>
+-<!-- Darken Path Fill -->
++ <!-- Darken Path Fill -->
+ <value>darken</value>
+-<!-- Darken Path Fill Less -->
++ <!-- Darken Path Fill Less -->
+ <value>darkenLess</value>
+ </choice>
+ </list>
+@@ -6278,10 +6278,10 @@
+ <start name="inline"/>
+ <start name="anchor"/>
+ <grammar xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-graphicalObject.rng"/>
+ <include href="dml-documentProperties.rng"/>
+-<!-- start = inline | anchor -->
++ <!-- start = inline | anchor -->
+ <define name="CT_EffectExtent">
+ <attribute name="l">
+ <ref name="ST_Coordinate"/>
+@@ -6356,13 +6356,13 @@
+ <list>
+ <xs:documentation>Text Wrapping Location</xs:documentation>
+ <choice>
+-<!-- Both Sides -->
++ <!-- Both Sides -->
+ <value>bothSides</value>
+-<!-- Left Side Only -->
++ <!-- Left Side Only -->
+ <value>left</value>
+-<!-- Right Side Only -->
++ <!-- Right Side Only -->
+ <value>right</value>
+-<!-- Largest Side Only -->
++ <!-- Largest Side Only -->
+ <value>largest</value>
+ </choice>
+ </list>
+@@ -6514,15 +6514,15 @@
+ <list>
+ <xs:documentation>Relative Horizontal Alignment Positions</xs:documentation>
+ <choice>
+-<!-- Left Alignment -->
++ <!-- Left Alignment -->
+ <value>left</value>
+-<!-- Right Alignment -->
++ <!-- Right Alignment -->
+ <value>right</value>
+-<!-- Center Alignment -->
++ <!-- Center Alignment -->
+ <value>center</value>
+-<!-- Inside -->
++ <!-- Inside -->
+ <value>inside</value>
+-<!-- Outside -->
++ <!-- Outside -->
+ <value>outside</value>
+ </choice>
+ </list>
+@@ -6531,21 +6531,21 @@
+ <list>
+ <xs:documentation>Horizontal Relative Positioning</xs:documentation>
+ <choice>
+-<!-- Page Margin -->
++ <!-- Page Margin -->
+ <value>margin</value>
+-<!-- Page Edge -->
++ <!-- Page Edge -->
+ <value>page</value>
+-<!-- Column -->
++ <!-- Column -->
+ <value>column</value>
+-<!-- Character -->
++ <!-- Character -->
+ <value>character</value>
+-<!-- Left Margin -->
++ <!-- Left Margin -->
+ <value>leftMargin</value>
+-<!-- Right Margin -->
++ <!-- Right Margin -->
+ <value>rightMargin</value>
+-<!-- Inside Margin -->
++ <!-- Inside Margin -->
+ <value>insideMargin</value>
+-<!-- Outside Margin -->
++ <!-- Outside Margin -->
+ <value>outsideMargin</value>
+ </choice>
+ </list>
+@@ -6568,15 +6568,15 @@
+ <list>
+ <xs:documentation>Vertical Alignment Definition</xs:documentation>
+ <choice>
+-<!-- Top -->
++ <!-- Top -->
+ <value>top</value>
+-<!-- Bottom -->
++ <!-- Bottom -->
+ <value>bottom</value>
+-<!-- Center Alignment -->
++ <!-- Center Alignment -->
+ <value>center</value>
+-<!-- Inside -->
++ <!-- Inside -->
+ <value>inside</value>
+-<!-- Outside -->
++ <!-- Outside -->
+ <value>outside</value>
+ </choice>
+ </list>
+@@ -6585,21 +6585,21 @@
+ <list>
+ <xs:documentation>Vertical Relative Positioning</xs:documentation>
+ <choice>
+-<!-- Page Margin -->
++ <!-- Page Margin -->
+ <value>margin</value>
+-<!-- Page Edge -->
++ <!-- Page Edge -->
+ <value>page</value>
+-<!-- Paragraph -->
++ <!-- Paragraph -->
+ <value>paragraph</value>
+-<!-- Line -->
++ <!-- Line -->
+ <value>line</value>
+-<!-- Top Margin -->
++ <!-- Top Margin -->
+ <value>topMargin</value>
+-<!-- Bottom Margin -->
++ <!-- Bottom Margin -->
+ <value>bottomMargin</value>
+-<!-- Inside Margin -->
++ <!-- Inside Margin -->
+ <value>insideMargin</value>
+-<!-- Outside Margin -->
++ <!-- Outside Margin -->
+ <value>outsideMargin</value>
+ </choice>
+ </list>
+@@ -6868,8 +6868,8 @@
+ <namespace name="sml-customXmlMappings" file="sml-customXmlMappings-rng">
+ <start name="schemaLibrary"/>
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/schemaLibrary/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
+-<!-- start = schemaLibrary -->
++ <!-- ISO RELAX NG Schema -->
++ <!-- start = schemaLibrary -->
+ <define name="CT_Schema">
+ <attribute name="uri">
+ <data type="string">
+@@ -6909,9 +6909,9 @@
+ <start name="oMathPara"/>
+ <start name="oMath"/>
+ <grammar xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/officeDocument/2006/math" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" attributeFormDefault="qualified">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="wml.rng"/>
+-<!-- start = mathPr | oMathPara | oMath -->
++ <!-- start = mathPr | oMathPara | oMath -->
+ <define name="ST_Integer255">
+ <data type="integer">
+ <xs:documentation>Integer value (1 to 255)</xs:documentation>
+@@ -6978,9 +6978,9 @@
+ <list>
+ <xs:documentation>On Off</xs:documentation>
+ <choice>
+-<!-- On -->
++ <!-- On -->
+ <value>on</value>
+-<!-- Off -->
++ <!-- Off -->
+ <value>off</value>
+ </choice>
+ </list>
+@@ -7006,11 +7006,11 @@
+ <list>
+ <xs:documentation>Horizontal Alignment</xs:documentation>
+ <choice>
+-<!-- Left Justification -->
++ <!-- Left Justification -->
+ <value>left</value>
+-<!-- Center -->
++ <!-- Center -->
+ <value>center</value>
+-<!-- Right -->
++ <!-- Right -->
+ <value>right</value>
+ </choice>
+ </list>
+@@ -7025,11 +7025,11 @@
+ <list>
+ <xs:documentation>Vertical Alignment</xs:documentation>
+ <choice>
+-<!-- Top -->
++ <!-- Top -->
+ <value>top</value>
+-<!-- Center (Function) -->
++ <!-- Center (Function) -->
+ <value>center</value>
+-<!-- Bottom Alignment -->
++ <!-- Bottom Alignment -->
+ <value>bot</value>
+ </choice>
+ </list>
+@@ -7044,9 +7044,9 @@
+ <list>
+ <xs:documentation>Shape (Delimiters)</xs:documentation>
+ <choice>
+-<!-- Centered (Delimiters) -->
++ <!-- Centered (Delimiters) -->
+ <value>centered</value>
+-<!-- Match -->
++ <!-- Match -->
+ <value>match</value>
+ </choice>
+ </list>
+@@ -7061,13 +7061,13 @@
+ <list>
+ <xs:documentation>Fraction Type</xs:documentation>
+ <choice>
+-<!-- Bar Fraction -->
++ <!-- Bar Fraction -->
+ <value>bar</value>
+-<!-- Skewed -->
++ <!-- Skewed -->
+ <value>skw</value>
+-<!-- Linear Fraction -->
++ <!-- Linear Fraction -->
+ <value>lin</value>
+-<!-- No-Bar Fraction (Stack) -->
++ <!-- No-Bar Fraction (Stack) -->
+ <value>noBar</value>
+ </choice>
+ </list>
+@@ -7082,9 +7082,9 @@
+ <list>
+ <xs:documentation>Limit Location</xs:documentation>
+ <choice>
+-<!-- Under-Over location -->
++ <!-- Under-Over location -->
+ <value>undOvr</value>
+-<!-- Subscript-Superscript location -->
++ <!-- Subscript-Superscript location -->
+ <value>subSup</value>
+ </choice>
+ </list>
+@@ -7099,9 +7099,9 @@
+ <list>
+ <xs:documentation>Top-Bottom</xs:documentation>
+ <choice>
+-<!-- Top -->
++ <!-- Top -->
+ <value>top</value>
+-<!-- Bottom Alignment -->
++ <!-- Bottom Alignment -->
+ <value>bot</value>
+ </choice>
+ </list>
+@@ -7116,17 +7116,17 @@
+ <list>
+ <xs:documentation>Script</xs:documentation>
+ <choice>
+-<!-- Roman -->
++ <!-- Roman -->
+ <value>roman</value>
+-<!-- Script -->
++ <!-- Script -->
+ <value>script</value>
+-<!-- Fraktur -->
++ <!-- Fraktur -->
+ <value>fraktur</value>
+-<!-- double-struck -->
++ <!-- double-struck -->
+ <value>double-struck</value>
+-<!-- Sans-Serif -->
++ <!-- Sans-Serif -->
+ <value>sans-serif</value>
+-<!-- Monospace -->
++ <!-- Monospace -->
+ <value>monospace</value>
+ </choice>
+ </list>
+@@ -7141,13 +7141,13 @@
+ <list>
+ <xs:documentation>Style</xs:documentation>
+ <choice>
+-<!-- Plain -->
++ <!-- Plain -->
+ <value>p</value>
+-<!-- Bold -->
++ <!-- Bold -->
+ <value>b</value>
+-<!-- Italic -->
++ <!-- Italic -->
+ <value>i</value>
+-<!-- Bold-Italic -->
++ <!-- Bold-Italic -->
+ <value>bi</value>
+ </choice>
+ </list>
+@@ -7976,13 +7976,13 @@
+ <list>
+ <xs:documentation>Justification</xs:documentation>
+ <choice>
+-<!-- Left Justification -->
++ <!-- Left Justification -->
+ <value>left</value>
+-<!-- Right -->
++ <!-- Right -->
+ <value>right</value>
+-<!-- Center (Equation) -->
++ <!-- Center (Equation) -->
+ <value>center</value>
+-<!-- Centered as Group (Equations) -->
++ <!-- Centered as Group (Equations) -->
+ <value>centerGroup</value>
+ </choice>
+ </list>
+@@ -8015,11 +8015,11 @@
+ <list>
+ <xs:documentation>Break Binary Operators</xs:documentation>
+ <choice>
+-<!-- Before -->
++ <!-- Before -->
+ <value>before</value>
+-<!-- After -->
++ <!-- After -->
+ <value>after</value>
+-<!-- Repeat -->
++ <!-- Repeat -->
+ <value>repeat</value>
+ </choice>
+ </list>
+@@ -8034,11 +8034,11 @@
+ <list>
+ <xs:documentation>Break on Binary Subtraction</xs:documentation>
+ <choice>
+-<!-- Minus Minus -->
++ <!-- Minus Minus -->
+ <value>--</value>
+-<!-- Minus Plus -->
++ <!-- Minus Plus -->
+ <value>-+</value>
+-<!-- Plus Minus -->
++ <!-- Plus Minus -->
+ <value>+-</value>
+ </choice>
+ </list>
+@@ -8238,7 +8238,7 @@
+ </namespace>
+ <namespace name="shared-relationshipReference" file="shared-relationshipReference.rng">
+ <grammar xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <define name="ST_RelationshipId">
+ <data type="string">
+ <xs:documentation>Explicit Relationship ID</xs:documentation>
+@@ -8289,10 +8289,10 @@
+ <namespace name="dml-chartDrawing" file="dml-chartDrawing.rng">
+ <start name="pic"/>
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/drawingml/2006/picture">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="dml-shapeProperties.rng"/>
+ <include href="dml-documentProperties.rng"/>
+-<!-- start = pic -->
++ <!-- start = pic -->
+ <define name="CT_PictureNonVisual">
+ <element name="cNvPr">
+ <ref name="CT_NonVisualDrawingProps"/>
+@@ -8356,14 +8356,14 @@
+ <start name="rect"/>
+ <start name="roundrect"/>
+ <grammar xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:wvml="urn:schemas-microsoft-com:office:word" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" ns="urn:schemas-microsoft-com:vml" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="vml-officeDrawing.rng"/>
+-<!-- External schema: http://schemas.openxmlformats.org/wordprocessingml/2006/main -->
++ <!-- External schema: http://schemas.openxmlformats.org/wordprocessingml/2006/main -->
+ <include href="vml-wordprocessingDrawing.rng"/>
+-<!-- External schema: http://schemas.openxmlformats.org/officeDocument/2006/relationships -->
++ <!-- External schema: http://schemas.openxmlformats.org/officeDocument/2006/relationships -->
+ <include href="vml-spreadsheetDrawing.rng"/>
+ <include href="vml-presentationDrawing.rng"/>
+-<!-- start = shape | shapetype | group | background | fill | formulas | handles | imagedata | path | textbox | shadow | stroke | textpath | arc | curve | image | line | oval | polyline | rect | roundrect -->
++ <!-- start = shape | shapetype | group | background | fill | formulas | handles | imagedata | path | textbox | shadow | stroke | textpath | arc | curve | image | line | oval | polyline | rect | roundrect -->
+ <define name="AG_Id">
+ <optional>
+ <attribute name="id">
+@@ -9728,11 +9728,11 @@
+ <list>
+ <xs:documentation>VML Extension Handling Behaviors</xs:documentation>
+ <choice>
+-<!-- Not renderable -->
++ <!-- Not renderable -->
+ <value>view</value>
+-<!-- Editable -->
++ <!-- Editable -->
+ <value>edit</value>
+-<!-- Renderable -->
++ <!-- Renderable -->
+ <value>backwardCompatible</value>
+ </choice>
+ </list>
+@@ -9741,13 +9741,13 @@
+ <list>
+ <xs:documentation>Boolean Value</xs:documentation>
+ <choice>
+-<!-- True -->
++ <!-- True -->
+ <value>t</value>
+-<!-- False -->
++ <!-- False -->
+ <value>f</value>
+-<!-- True -->
++ <!-- True -->
+ <value>true</value>
+-<!-- False -->
++ <!-- False -->
+ <value>false</value>
+ </choice>
+ </list>
+@@ -9761,17 +9761,17 @@
+ <list>
+ <xs:documentation>Shape Fill Type</xs:documentation>
+ <choice>
+-<!-- Solid Fill -->
++ <!-- Solid Fill -->
+ <value>solid</value>
+-<!-- Linear Gradient -->
++ <!-- Linear Gradient -->
+ <value>gradient</value>
+-<!-- Radial Gradient -->
++ <!-- Radial Gradient -->
+ <value>gradientRadial</value>
+-<!-- Tiled Image -->
++ <!-- Tiled Image -->
+ <value>tile</value>
+-<!-- Image Pattern -->
++ <!-- Image Pattern -->
+ <value>pattern</value>
+-<!-- Stretch Image to Fit -->
++ <!-- Stretch Image to Fit -->
+ <value>frame</value>
+ </choice>
+ </list>
+@@ -9780,15 +9780,15 @@
+ <list>
+ <xs:documentation>Gradient Fill Computation Type</xs:documentation>
+ <choice>
+-<!-- No Gradient Fill -->
++ <!-- No Gradient Fill -->
+ <value>none</value>
+-<!-- Linear Fill -->
++ <!-- Linear Fill -->
+ <value>linear</value>
+-<!-- Sigma Fill -->
++ <!-- Sigma Fill -->
+ <value>sigma</value>
+-<!-- Application Default Fill -->
++ <!-- Application Default Fill -->
+ <value>any</value>
+-<!-- Linear Sigma Fill -->
++ <!-- Linear Sigma Fill -->
+ <value>linear sigma</value>
+ </choice>
+ </list>
+@@ -9797,13 +9797,13 @@
+ <list>
+ <xs:documentation>Shadow Type</xs:documentation>
+ <choice>
+-<!-- Single Shadow -->
++ <!-- Single Shadow -->
+ <value>single</value>
+-<!-- Double Shadow -->
++ <!-- Double Shadow -->
+ <value>double</value>
+-<!-- Embossed Shadow -->
++ <!-- Embossed Shadow -->
+ <value>emboss</value>
+-<!-- Perspective Shadow -->
++ <!-- Perspective Shadow -->
+ <value>perspective</value>
+ </choice>
+ </list>
+@@ -9812,15 +9812,15 @@
+ <list>
+ <xs:documentation>Stroke Line Style</xs:documentation>
+ <choice>
+-<!-- Single Line -->
++ <!-- Single Line -->
+ <value>single</value>
+-<!-- Two Thin Lines -->
++ <!-- Two Thin Lines -->
+ <value>thinThin</value>
+-<!-- Thin Line Outside Thick Line -->
++ <!-- Thin Line Outside Thick Line -->
+ <value>thinThick</value>
+-<!-- Thick Line Outside Thin Line -->
++ <!-- Thick Line Outside Thin Line -->
+ <value>thickThin</value>
+-<!-- Thck Line Between Thin Lines -->
++ <!-- Thck Line Between Thin Lines -->
+ <value>thickBetweenThin</value>
+ </choice>
+ </list>
+@@ -9829,11 +9829,11 @@
+ <list>
+ <xs:documentation>Line Join Type</xs:documentation>
+ <choice>
+-<!-- Round Joint -->
++ <!-- Round Joint -->
+ <value>round</value>
+-<!-- Bevel Joint -->
++ <!-- Bevel Joint -->
+ <value>bevel</value>
+-<!-- Miter Joint -->
++ <!-- Miter Joint -->
+ <value>miter</value>
+ </choice>
+ </list>
+@@ -9842,11 +9842,11 @@
+ <list>
+ <xs:documentation>Stroke End Cap Type</xs:documentation>
+ <choice>
+-<!-- Flat End -->
++ <!-- Flat End -->
+ <value>flat</value>
+-<!-- Square End -->
++ <!-- Square End -->
+ <value>square</value>
+-<!-- Round End -->
++ <!-- Round End -->
+ <value>round</value>
+ </choice>
+ </list>
+@@ -9855,11 +9855,11 @@
+ <list>
+ <xs:documentation>Stroke Arrowhead Length</xs:documentation>
+ <choice>
+-<!-- Short Arrowhead -->
++ <!-- Short Arrowhead -->
+ <value>short</value>
+-<!-- Medium Arrowhead -->
++ <!-- Medium Arrowhead -->
+ <value>medium</value>
+-<!-- Long Arrowhead -->
++ <!-- Long Arrowhead -->
+ <value>long</value>
+ </choice>
+ </list>
+@@ -9868,11 +9868,11 @@
+ <list>
+ <xs:documentation>Stroke Arrowhead Width</xs:documentation>
+ <choice>
+-<!-- Narrow Arrowhead -->
++ <!-- Narrow Arrowhead -->
+ <value>narrow</value>
+-<!-- Medium Arrowhead -->
++ <!-- Medium Arrowhead -->
+ <value>medium</value>
+-<!-- Wide Arrowhead -->
++ <!-- Wide Arrowhead -->
+ <value>wide</value>
+ </choice>
+ </list>
+@@ -9881,17 +9881,17 @@
+ <list>
+ <xs:documentation>Stroke Arrowhead Type</xs:documentation>
+ <choice>
+-<!-- No Arrowhead -->
++ <!-- No Arrowhead -->
+ <value>none</value>
+-<!-- Block Arrowhead -->
++ <!-- Block Arrowhead -->
+ <value>block</value>
+-<!-- Classic Arrowhead -->
++ <!-- Classic Arrowhead -->
+ <value>classic</value>
+-<!-- Oval Arrowhead -->
++ <!-- Oval Arrowhead -->
+ <value>oval</value>
+-<!-- Diamond Arrowhead -->
++ <!-- Diamond Arrowhead -->
+ <value>diamond</value>
+-<!-- Open Arrowhead -->
++ <!-- Open Arrowhead -->
+ <value>open</value>
+ </choice>
+ </list>
+@@ -9900,11 +9900,11 @@
+ <list>
+ <xs:documentation>Image Scaling Behavior</xs:documentation>
+ <choice>
+-<!-- Ignore Aspect Ratio -->
++ <!-- Ignore Aspect Ratio -->
+ <value>ignore</value>
+-<!-- At Most -->
++ <!-- At Most -->
+ <value>atMost</value>
+-<!-- At Least -->
++ <!-- At Least -->
+ <value>atLeast</value>
+ </choice>
+ </list>
+@@ -9913,15 +9913,15 @@
+ <list>
+ <xs:documentation>Boolean Value with Blank [False] State</xs:documentation>
+ <choice>
+-<!-- Logical True -->
++ <!-- Logical True -->
+ <value>t</value>
+-<!-- Logical False -->
++ <!-- Logical False -->
+ <value>f</value>
+-<!-- Logical True -->
++ <!-- Logical True -->
+ <value>true</value>
+-<!-- Logical False -->
++ <!-- Logical False -->
+ <value>false</value>
+-<!-- Blank â Logical False -->
++ <!-- Blank â Logical False -->
+ <value/>
+ </choice>
+ </list>
+@@ -9930,19 +9930,19 @@
+ <list>
+ <xs:documentation>Shape Grouping Types</xs:documentation>
+ <choice>
+-<!-- Shape Canvas -->
++ <!-- Shape Canvas -->
+ <value>canvas</value>
+-<!-- Organization Chart Diagram -->
++ <!-- Organization Chart Diagram -->
+ <value>orgchart</value>
+-<!-- Radial Diagram -->
++ <!-- Radial Diagram -->
+ <value>radial</value>
+-<!-- Cycle Diagram -->
++ <!-- Cycle Diagram -->
+ <value>cycle</value>
+-<!-- Pyramid Diagram -->
++ <!-- Pyramid Diagram -->
+ <value>stacked</value>
+-<!-- Venn Diagram -->
++ <!-- Venn Diagram -->
+ <value>venn</value>
+-<!-- Bullseye Diagram -->
++ <!-- Bullseye Diagram -->
+ <value>bullseye</value>
+ </choice>
+ </list>
+@@ -10072,10 +10072,10 @@
+ <start name="clippath"/>
+ <start name="fill"/>
+ <grammar xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns:v="urn:schemas-microsoft-com:vml" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" ns="urn:schemas-microsoft-com:office:office" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="vml-main.rng"/>
+-<!-- External schema: http://schemas.openxmlformats.org/officeDocument/2006/relationships -->
+-<!-- start = shapedefaults | shapelayout | signatureline | ink | diagram | skew | extrusion | callout | lock | OLEObject | complex | left | top | right | bottom | column | clippath | fill -->
++ <!-- External schema: http://schemas.openxmlformats.org/officeDocument/2006/relationships -->
++ <!-- start = shapedefaults | shapelayout | signatureline | ink | diagram | skew | extrusion | callout | lock | OLEObject | complex | left | top | right | bottom | column | clippath | fill -->
+ <define name="bwmode">
+ <attribute name="bwmode"/>
+ </define>
+@@ -11486,13 +11486,13 @@
+ <list>
+ <xs:documentation>Rule Type</xs:documentation>
+ <choice>
+-<!-- Arc Rule -->
++ <!-- Arc Rule -->
+ <value>arc</value>
+-<!-- Callout Rule -->
++ <!-- Callout Rule -->
+ <value>callout</value>
+-<!-- Connector Rule -->
++ <!-- Connector Rule -->
+ <value>connector</value>
+-<!-- Alignment Rule -->
++ <!-- Alignment Rule -->
+ <value>align</value>
+ </choice>
+ </list>
+@@ -11501,17 +11501,17 @@
+ <list>
+ <xs:documentation>Alignment Type</xs:documentation>
+ <choice>
+-<!-- Top Alignment -->
++ <!-- Top Alignment -->
+ <value>top</value>
+-<!-- Middle Alignment -->
++ <!-- Middle Alignment -->
+ <value>middle</value>
+-<!-- Bottom Alignment -->
++ <!-- Bottom Alignment -->
+ <value>bottom</value>
+-<!-- Left Alignment -->
++ <!-- Left Alignment -->
+ <value>left</value>
+-<!-- Center Alignment -->
++ <!-- Center Alignment -->
+ <value>center</value>
+-<!-- Right Alignment -->
++ <!-- Right Alignment -->
+ <value>right</value>
+ </choice>
+ </list>
+@@ -11520,29 +11520,29 @@
+ <list>
+ <xs:documentation>Black And White Modes</xs:documentation>
+ <choice>
+-<!-- Color -->
++ <!-- Color -->
+ <value>color</value>
+-<!-- Automatic -->
++ <!-- Automatic -->
+ <value>auto</value>
+-<!-- Grayscale -->
++ <!-- Grayscale -->
+ <value>grayScale</value>
+-<!-- Light grayscale -->
++ <!-- Light grayscale -->
+ <value>lightGrayscale</value>
+-<!-- Inverse Grayscale -->
++ <!-- Inverse Grayscale -->
+ <value>inverseGray</value>
+-<!-- Gray Outlines -->
++ <!-- Gray Outlines -->
+ <value>grayOutline</value>
+-<!-- Black And White -->
++ <!-- Black And White -->
+ <value>highContrast</value>
+-<!-- Black -->
++ <!-- Black -->
+ <value>black</value>
+-<!-- White -->
++ <!-- White -->
+ <value>white</value>
+-<!-- Hide Object When Displayed in Black and White -->
++ <!-- Hide Object When Displayed in Black and White -->
+ <value>hide</value>
+-<!-- Do Not Show -->
++ <!-- Do Not Show -->
+ <value>undrawn</value>
+-<!-- Black Text And Lines -->
++ <!-- Black Text And Lines -->
+ <value>blackTextAndLines</value>
+ </choice>
+ </list>
+@@ -11551,17 +11551,17 @@
+ <list>
+ <xs:documentation>Screen Sizes Type</xs:documentation>
+ <choice>
+-<!-- 544x376 pixels -->
++ <!-- 544x376 pixels -->
+ <value>544,376</value>
+-<!-- 640x480 pixels -->
++ <!-- 640x480 pixels -->
+ <value>640,480</value>
+-<!-- 720x512 pixels -->
++ <!-- 720x512 pixels -->
+ <value>720,512</value>
+-<!-- 800x600 pixels -->
++ <!-- 800x600 pixels -->
+ <value>800,600</value>
+-<!-- 1024x768 pixels -->
++ <!-- 1024x768 pixels -->
+ <value>1024,768</value>
+-<!-- 1152x862 pixels -->
++ <!-- 1152x862 pixels -->
+ <value>1152,862</value>
+ </choice>
+ </list>
+@@ -11570,9 +11570,9 @@
+ <list>
+ <xs:documentation>Inset Margin Type</xs:documentation>
+ <choice>
+-<!-- Automatic Margins -->
++ <!-- Automatic Margins -->
+ <value>auto</value>
+-<!-- Custom Margins -->
++ <!-- Custom Margins -->
+ <value>custom</value>
+ </choice>
+ </list>
+@@ -11581,9 +11581,9 @@
+ <list>
+ <xs:documentation>Extrusion Color Types</xs:documentation>
+ <choice>
+-<!-- Use Shape Fill Color -->
++ <!-- Use Shape Fill Color -->
+ <value>auto</value>
+-<!-- Use Custom Color -->
++ <!-- Use Custom Color -->
+ <value>custom</value>
+ </choice>
+ </list>
+@@ -11597,9 +11597,9 @@
+ <list>
+ <xs:documentation>Extrusion Type</xs:documentation>
+ <choice>
+-<!-- Perspective Projection -->
++ <!-- Perspective Projection -->
+ <value>perspective</value>
+-<!-- Parallel Projection -->
++ <!-- Parallel Projection -->
+ <value>parallel</value>
+ </choice>
+ </list>
+@@ -11608,11 +11608,11 @@
+ <list>
+ <xs:documentation>Extrusion Rendering Types</xs:documentation>
+ <choice>
+-<!-- Solid -->
++ <!-- Solid -->
+ <value>solid</value>
+-<!-- Wireframe -->
++ <!-- Wireframe -->
+ <value>wireFrame</value>
+-<!-- Bounding Cube -->
++ <!-- Bounding Cube -->
+ <value>boundingCube</value>
+ </choice>
+ </list>
+@@ -11621,11 +11621,11 @@
+ <list>
+ <xs:documentation>Extrusion Planes</xs:documentation>
+ <choice>
+-<!-- XY Plane -->
++ <!-- XY Plane -->
+ <value>XY</value>
+-<!-- ZX Plane -->
++ <!-- ZX Plane -->
+ <value>ZX</value>
+-<!-- YZ Plane -->
++ <!-- YZ Plane -->
+ <value>YZ</value>
+ </choice>
+ </list>
+@@ -11634,17 +11634,17 @@
+ <list>
+ <xs:documentation>Callout Angles</xs:documentation>
+ <choice>
+-<!-- Any Angle -->
++ <!-- Any Angle -->
+ <value>any</value>
+-<!-- 30 degrees -->
++ <!-- 30 degrees -->
+ <value>30</value>
+-<!-- 45 degrees -->
++ <!-- 45 degrees -->
+ <value>45</value>
+-<!-- 60 degrees -->
++ <!-- 60 degrees -->
+ <value>60</value>
+-<!-- 90 degrees -->
++ <!-- 90 degrees -->
+ <value>90</value>
+-<!-- Automatic Angle -->
++ <!-- Automatic Angle -->
+ <value>auto</value>
+ </choice>
+ </list>
+@@ -11658,13 +11658,13 @@
+ <list>
+ <xs:documentation>Callout Placement</xs:documentation>
+ <choice>
+-<!-- Top placement -->
++ <!-- Top placement -->
+ <value>top</value>
+-<!-- Center placement -->
++ <!-- Center placement -->
+ <value>center</value>
+-<!-- Bottom placement -->
++ <!-- Bottom placement -->
+ <value>bottom</value>
+-<!-- User-defined placement -->
++ <!-- User-defined placement -->
+ <value>user</value>
+ </choice>
+ </list>
+@@ -11673,13 +11673,13 @@
+ <list>
+ <xs:documentation>Connector Type</xs:documentation>
+ <choice>
+-<!-- No Connector -->
++ <!-- No Connector -->
+ <value>none</value>
+-<!-- Straight Connector -->
++ <!-- Straight Connector -->
+ <value>straight</value>
+-<!-- Elbow Connector -->
++ <!-- Elbow Connector -->
+ <value>elbow</value>
+-<!-- Curved Connector -->
++ <!-- Curved Connector -->
+ <value>curved</value>
+ </choice>
+ </list>
+@@ -11688,11 +11688,11 @@
+ <list>
+ <xs:documentation>Alignment Type</xs:documentation>
+ <choice>
+-<!-- Left Alignment -->
++ <!-- Left Alignment -->
+ <value>left</value>
+-<!-- Right Alignment -->
++ <!-- Right Alignment -->
+ <value>right</value>
+-<!-- Center Alignment -->
++ <!-- Center Alignment -->
+ <value>center</value>
+ </choice>
+ </list>
+@@ -11701,13 +11701,13 @@
+ <list>
+ <xs:documentation>Connection Locations Type</xs:documentation>
+ <choice>
+-<!-- No -->
++ <!-- No -->
+ <value>none</value>
+-<!-- Four Connections -->
++ <!-- Four Connections -->
+ <value>rect</value>
+-<!-- Edit Point Connections -->
++ <!-- Edit Point Connections -->
+ <value>segments</value>
+-<!-- Custom Connections -->
++ <!-- Custom Connections -->
+ <value>custom</value>
+ </choice>
+ </list>
+@@ -11716,11 +11716,11 @@
+ <list>
+ <xs:documentation>Embedded Object Alternate Image Request Types</xs:documentation>
+ <choice>
+-<!-- Other Image -->
++ <!-- Other Image -->
+ <value>Picture</value>
+-<!-- Bitmap Image -->
++ <!-- Bitmap Image -->
+ <value>Bitmap</value>
+-<!-- Enhanced Metafile Image -->
++ <!-- Enhanced Metafile Image -->
+ <value>EnhancedMetaFile</value>
+ </choice>
+ </list>
+@@ -11729,9 +11729,9 @@
+ <list>
+ <xs:documentation>OLE Connection Type</xs:documentation>
+ <choice>
+-<!-- Embedded Object -->
++ <!-- Embedded Object -->
+ <value>Embed</value>
+-<!-- Linked Object -->
++ <!-- Linked Object -->
+ <value>Link</value>
+ </choice>
+ </list>
+@@ -11740,9 +11740,9 @@
+ <list>
+ <xs:documentation>OLE Object Representations</xs:documentation>
+ <choice>
+-<!-- Snapshot -->
++ <!-- Snapshot -->
+ <value>Content</value>
+-<!-- Icon -->
++ <!-- Icon -->
+ <value>Icon</value>
+ </choice>
+ </list>
+@@ -11751,9 +11751,9 @@
+ <list>
+ <xs:documentation>OLE Update Method Type</xs:documentation>
+ <choice>
+-<!-- Server Application Update -->
++ <!-- Server Application Update -->
+ <value>Always</value>
+-<!-- User Update -->
++ <!-- User Update -->
+ <value>OnCall</value>
+ </choice>
+ </list>
+@@ -11773,13 +11773,13 @@
+ <list>
+ <xs:documentation>Boolean Value</xs:documentation>
+ <choice>
+-<!-- True -->
++ <!-- True -->
+ <value>t</value>
+-<!-- False -->
++ <!-- False -->
+ <value>f</value>
+-<!-- True -->
++ <!-- True -->
+ <value>true</value>
+-<!-- False -->
++ <!-- False -->
+ <value>false</value>
+ </choice>
+ </list>
+@@ -11788,15 +11788,15 @@
+ <list>
+ <xs:documentation>Boolean Value with Blank [False] State</xs:documentation>
+ <choice>
+-<!-- Blank â Logical False -->
++ <!-- Blank â Logical False -->
+ <value/>
+-<!-- Logical True -->
++ <!-- Logical True -->
+ <value>t</value>
+-<!-- Logical False -->
++ <!-- Logical False -->
+ <value>f</value>
+-<!-- Logical True -->
++ <!-- Logical True -->
+ <value>true</value>
+-<!-- Logical False -->
++ <!-- Logical False -->
+ <value>false</value>
+ </choice>
+ </list>
+@@ -11805,23 +11805,23 @@
+ <list>
+ <xs:documentation>Shape Fill Type</xs:documentation>
+ <choice>
+-<!-- Centered Radial Gradient -->
++ <!-- Centered Radial Gradient -->
+ <value>gradientCenter</value>
+-<!-- Solid Fill -->
++ <!-- Solid Fill -->
+ <value>solid</value>
+-<!-- Image Pattern -->
++ <!-- Image Pattern -->
+ <value>pattern</value>
+-<!-- Tiled Image -->
++ <!-- Tiled Image -->
+ <value>tile</value>
+-<!-- Stretch Image to Fit -->
++ <!-- Stretch Image to Fit -->
+ <value>frame</value>
+-<!-- Unscaled Gradient -->
++ <!-- Unscaled Gradient -->
+ <value>gradientUnscaled</value>
+-<!-- Radial Gradient -->
++ <!-- Radial Gradient -->
+ <value>gradientRadial</value>
+-<!-- Linear Gradient -->
++ <!-- Linear Gradient -->
+ <value>gradient</value>
+-<!-- Use Background Fill -->
++ <!-- Use Background Fill -->
+ <value>background</value>
+ </choice>
+ </list>
+@@ -12000,8 +12000,8 @@
+ <start name="wrap"/>
+ <start name="anchorlock"/>
+ <grammar xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" ns="urn:schemas-microsoft-com:office:word" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+-<!-- ISO RELAX NG Schema -->
+-<!-- start = bordertop | borderleft | borderright | borderbottom | wrap | anchorlock -->
++ <!-- ISO RELAX NG Schema -->
++ <!-- start = bordertop | borderleft | borderright | borderbottom | wrap | anchorlock -->
+ <define name="bordertop">
+ <element name="bordertop">
+ <ref name="CT_Border"/>
+@@ -12087,59 +12087,59 @@
+ <list>
+ <xs:documentation>Border Type</xs:documentation>
+ <choice>
+-<!-- No Border -->
++ <!-- No Border -->
+ <value>none</value>
+-<!-- Single Line Border -->
++ <!-- Single Line Border -->
+ <value>single</value>
+-<!-- Thick Line Border -->
++ <!-- Thick Line Border -->
+ <value>thick</value>
+-<!-- Double Line Border -->
++ <!-- Double Line Border -->
+ <value>double</value>
+-<!-- Hairline Border -->
++ <!-- Hairline Border -->
+ <value>hairline</value>
+-<!-- Dotted Border -->
++ <!-- Dotted Border -->
+ <value>dot</value>
+-<!-- pecifies a line border consisting of a dashed line around the parent object. -->
++ <!-- pecifies a line border consisting of a dashed line around the parent object. -->
+ <value>dash</value>
+-<!-- Dot Dash Border -->
++ <!-- Dot Dash Border -->
+ <value>dotDash</value>
+-<!-- Dash Dot Dot Border -->
++ <!-- Dash Dot Dot Border -->
+ <value>dashDotDot</value>
+-<!-- Triple Line Border -->
++ <!-- Triple Line Border -->
+ <value>triple</value>
+-<!-- Thin Thick Small Gap Border -->
++ <!-- Thin Thick Small Gap Border -->
+ <value>thinThickSmall</value>
+-<!-- Small thick-thin lines border -->
++ <!-- Small thick-thin lines border -->
+ <value>thickThinSmall</value>
+-<!-- Small thin-thick-thin Lines Border -->
++ <!-- Small thin-thick-thin Lines Border -->
+ <value>thickBetweenThinSmall</value>
+-<!-- Thin Thick Line Border -->
++ <!-- Thin Thick Line Border -->
+ <value>thinThick</value>
+-<!-- Thick Thin Line Border -->
++ <!-- Thick Thin Line Border -->
+ <value>thickThin</value>
+-<!-- Thin-thick-thin Border -->
++ <!-- Thin-thick-thin Border -->
+ <value>thickBetweenThin</value>
+-<!-- Thin Thick Large Gap Border -->
++ <!-- Thin Thick Large Gap Border -->
+ <value>thinThickLarge</value>
+-<!-- Thick Thin Large Gap Border -->
++ <!-- Thick Thin Large Gap Border -->
+ <value>thickThinLarge</value>
+-<!-- Large thin-thick-thin Border -->
++ <!-- Large thin-thick-thin Border -->
+ <value>thickBetweenThinLarge</value>
+-<!-- Wavy Border -->
++ <!-- Wavy Border -->
+ <value>wave</value>
+-<!-- Double Wavy Lines Border -->
++ <!-- Double Wavy Lines Border -->
+ <value>doubleWave</value>
+-<!-- Small Dash Border -->
++ <!-- Small Dash Border -->
+ <value>dashedSmall</value>
+-<!-- Stroked Dash Dot Border -->
++ <!-- Stroked Dash Dot Border -->
+ <value>dashDotStroked</value>
+-<!-- 3D Embossed Border -->
++ <!-- 3D Embossed Border -->
+ <value>threeDEmboss</value>
+-<!-- 3D Engraved Border -->
++ <!-- 3D Engraved Border -->
+ <value>threeDEngrave</value>
+-<!-- Outset Border -->
++ <!-- Outset Border -->
+ <value>HTMLOutset</value>
+-<!-- Inset Border -->
++ <!-- Inset Border -->
+ <value>HTMLInset</value>
+ </choice>
+ </list>
+@@ -12148,13 +12148,13 @@
+ <list>
+ <xs:documentation>Border Shadow Type</xs:documentation>
+ <choice>
+-<!-- True -->
++ <!-- True -->
+ <value>t</value>
+-<!-- True -->
++ <!-- True -->
+ <value>true</value>
+-<!-- False -->
++ <!-- False -->
+ <value>f</value>
+-<!-- False -->
++ <!-- False -->
+ <value>false</value>
+ </choice>
+ </list>
+@@ -12163,15 +12163,15 @@
+ <list>
+ <xs:documentation>Text Wrapping Type</xs:documentation>
+ <choice>
+-<!-- Top and bottom wrapping -->
++ <!-- Top and bottom wrapping -->
+ <value>topAndBottom</value>
+-<!-- Square wrapping -->
++ <!-- Square wrapping -->
+ <value>square</value>
+-<!-- No wrapping -->
++ <!-- No wrapping -->
+ <value>none</value>
+-<!-- Tight wrapping -->
++ <!-- Tight wrapping -->
+ <value>tight</value>
+-<!-- Through wrapping -->
++ <!-- Through wrapping -->
+ <value>through</value>
+ </choice>
+ </list>
+@@ -12180,13 +12180,13 @@
+ <list>
+ <xs:documentation>Text Wrapping Side</xs:documentation>
+ <choice>
+-<!-- Both sides -->
++ <!-- Both sides -->
+ <value>both</value>
+-<!-- Left side -->
++ <!-- Left side -->
+ <value>left</value>
+-<!-- Right side -->
++ <!-- Right side -->
+ <value>right</value>
+-<!-- Largest side -->
++ <!-- Largest side -->
+ <value>largest</value>
+ </choice>
+ </list>
+@@ -12195,13 +12195,13 @@
+ <list>
+ <xs:documentation>Horizontal Anchor Type</xs:documentation>
+ <choice>
+-<!-- Margin -->
++ <!-- Margin -->
+ <value>margin</value>
+-<!-- Page -->
++ <!-- Page -->
+ <value>page</value>
+-<!-- Text -->
++ <!-- Text -->
+ <value>text</value>
+-<!-- Character -->
++ <!-- Character -->
+ <value>char</value>
+ </choice>
+ </list>
+@@ -12210,13 +12210,13 @@
+ <list>
+ <xs:documentation>Vertical Anchor Type</xs:documentation>
+ <choice>
+-<!-- Margin -->
++ <!-- Margin -->
+ <value>margin</value>
+-<!-- Page -->
++ <!-- Page -->
+ <value>page</value>
+-<!-- Text -->
++ <!-- Text -->
+ <value>text</value>
+-<!-- Line -->
++ <!-- Line -->
+ <value>line</value>
+ </choice>
+ </list>
+@@ -12308,12 +12308,12 @@
+ <start name="document"/>
+ <start name="glossaryDocument"/>
+ <grammar xmlns:sl="http://schemas.openxmlformats.org/schemaLibrary/2006/main" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:rel="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2006/xpath-functions" xmlns="http://relaxng.org/ns/structure/1.0" ns="http://schemas.openxmlformats.org/wordprocessingml/2006/main" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" attributeFormDefault="qualified">
+-<!-- ISO RELAX NG Schema -->
++ <!-- ISO RELAX NG Schema -->
+ <include href="shared-customXmlSchemaProperties.rng"/>
+ <include href="shared-math.rng"/>
+ <include href="dml-wordprocessingDrawing.rng"/>
+ <include href="shared-relationshipReference.rng"/>
+-<!-- start = recipients | txbxContent | comments | footnotes | endnotes | hdr | ftr | settings | webSettings | fonts | numbering | styles | document | glossaryDocument -->
++ <!-- start = recipients | txbxContent | comments | footnotes | endnotes | hdr | ftr | settings | webSettings | fonts | numbering | styles | document | glossaryDocument -->
+ <define name="CT_Empty">
+ <empty/>
+ </define>
+@@ -12321,17 +12321,17 @@
+ <list>
+ <xs:documentation>On/Off Value</xs:documentation>
+ <choice>
+-<!-- True -->
++ <!-- True -->
+ <value>true</value>
+-<!-- False -->
++ <!-- False -->
+ <value>false</value>
+-<!-- True -->
++ <!-- True -->
+ <value>on</value>
+-<!-- False -->
++ <!-- False -->
+ <value>off</value>
+-<!-- False -->
++ <!-- False -->
+ <value>0</value>
+-<!-- True -->
++ <!-- True -->
+ <value>1</value>
+ </choice>
+ </list>
+@@ -12504,39 +12504,39 @@
+ <list>
+ <xs:documentation>Text Highlight Colors</xs:documentation>
+ <choice>
+-<!-- Black Highlighting Color -->
++ <!-- Black Highlighting Color -->
+ <value>black</value>
+-<!-- Blue Highlighting Color -->
++ <!-- Blue Highlighting Color -->
+ <value>blue</value>
+-<!-- Cyan Highlighting Color -->
++ <!-- Cyan Highlighting Color -->
+ <value>cyan</value>
+-<!-- Green Highlighting Color -->
++ <!-- Green Highlighting Color -->
+ <value>green</value>
+-<!-- Magenta Highlighting Color -->
++ <!-- Magenta Highlighting Color -->
+ <value>magenta</value>
+-<!-- Red Highlighting Color -->
++ <!-- Red Highlighting Color -->
+ <value>red</value>
+-<!-- Yellow Highlighting Color -->
++ <!-- Yellow Highlighting Color -->
+ <value>yellow</value>
+-<!-- White Highlighting Color -->
++ <!-- White Highlighting Color -->
+ <value>white</value>
+-<!-- Dark Blue Highlighting Color -->
++ <!-- Dark Blue Highlighting Color -->
+ <value>darkBlue</value>
+-<!-- Dark Cyan Highlighting Color -->
++ <!-- Dark Cyan Highlighting Color -->
+ <value>darkCyan</value>
+-<!-- Dark Green Highlighting Color -->
++ <!-- Dark Green Highlighting Color -->
+ <value>darkGreen</value>
+-<!-- Dark Magenta Highlighting Color -->
++ <!-- Dark Magenta Highlighting Color -->
+ <value>darkMagenta</value>
+-<!-- Dark Red Highlighting Color -->
++ <!-- Dark Red Highlighting Color -->
+ <value>darkRed</value>
+-<!-- Dark Yellow Highlighting Color -->
++ <!-- Dark Yellow Highlighting Color -->
+ <value>darkYellow</value>
+-<!-- Dark Gray Highlighting Color -->
++ <!-- Dark Gray Highlighting Color -->
+ <value>darkGray</value>
+-<!-- Light Gray Highlighting Color -->
++ <!-- Light Gray Highlighting Color -->
+ <value>lightGray</value>
+-<!-- No Text Highlighting -->
++ <!-- No Text Highlighting -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -12550,7 +12550,7 @@
+ <define name="ST_HexColorAuto">
+ <list>
+ <xs:documentation>‘Automatic’ Color Value</xs:documentation>
+-<!-- Automatically Determined Color -->
++ <!-- Automatically Determined Color -->
+ <value>auto</value>
+ </list>
+ </define>
+@@ -12566,7 +12566,7 @@
+ <ref name="ST_HexColorRGB"/>
+ </choice>
+ </define>
+-<!-- Union -->
++ <!-- Union -->
+ <define name="CT_Color">
+ <attribute name="val">
+ <ref name="ST_HexColor"/>
+@@ -12603,7 +12603,7 @@
+ <ref name="ST_String"/>
+ </choice>
+ </define>
+-<!-- Union -->
++ <!-- Union -->
+ <define name="CT_Lang">
+ <attribute name="val">
+ <ref name="ST_Lang"/>
+@@ -12626,41 +12626,41 @@
+ <list>
+ <xs:documentation>Underline Patterns</xs:documentation>
+ <choice>
+-<!-- Single Underline -->
++ <!-- Single Underline -->
+ <value>single</value>
+-<!-- Underline Non-Space Characters Only -->
++ <!-- Underline Non-Space Characters Only -->
+ <value>words</value>
+-<!-- Double Underline -->
++ <!-- Double Underline -->
+ <value>double</value>
+-<!-- Thick Underline -->
++ <!-- Thick Underline -->
+ <value>thick</value>
+-<!-- Dotted Underline -->
++ <!-- Dotted Underline -->
+ <value>dotted</value>
+-<!-- Thick Dotted Underline -->
++ <!-- Thick Dotted Underline -->
+ <value>dottedHeavy</value>
+-<!-- Dashed Underline -->
++ <!-- Dashed Underline -->
+ <value>dash</value>
+-<!-- Thick Dashed Underline -->
++ <!-- Thick Dashed Underline -->
+ <value>dashedHeavy</value>
+-<!-- Long Dashed Underline -->
++ <!-- Long Dashed Underline -->
+ <value>dashLong</value>
+-<!-- Thick Long Dashed Underline -->
++ <!-- Thick Long Dashed Underline -->
+ <value>dashLongHeavy</value>
+-<!-- Dash-Dot Underline -->
++ <!-- Dash-Dot Underline -->
+ <value>dotDash</value>
+-<!-- Thick Dash-Dot Underline -->
++ <!-- Thick Dash-Dot Underline -->
+ <value>dashDotHeavy</value>
+-<!-- Dash-Dot-Dot Underline -->
++ <!-- Dash-Dot-Dot Underline -->
+ <value>dotDotDash</value>
+-<!-- Thick Dash-Dot-Dot Underline -->
++ <!-- Thick Dash-Dot-Dot Underline -->
+ <value>dashDotDotHeavy</value>
+-<!-- Wave Underline -->
++ <!-- Wave Underline -->
+ <value>wave</value>
+-<!-- Heavy Wave Underline -->
++ <!-- Heavy Wave Underline -->
+ <value>wavyHeavy</value>
+-<!-- Double Wave Underline -->
++ <!-- Double Wave Underline -->
+ <value>wavyDouble</value>
+-<!-- No Underline -->
++ <!-- No Underline -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -12697,19 +12697,19 @@
+ <list>
+ <xs:documentation>Animated Text Effects</xs:documentation>
+ <choice>
+-<!-- Blinking Background Animation -->
++ <!-- Blinking Background Animation -->
+ <value>blinkBackground</value>
+-<!-- Colored Lights Animation -->
++ <!-- Colored Lights Animation -->
+ <value>lights</value>
+-<!-- Black Dashed Line Animation -->
++ <!-- Black Dashed Line Animation -->
+ <value>antsBlack</value>
+-<!-- Marching Red Ants -->
++ <!-- Marching Red Ants -->
+ <value>antsRed</value>
+-<!-- Shimmer Animation -->
++ <!-- Shimmer Animation -->
+ <value>shimmer</value>
+-<!-- Sparkling Lights Animation -->
++ <!-- Sparkling Lights Animation -->
+ <value>sparkle</value>
+-<!-- No Animation -->
++ <!-- No Animation -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -12724,387 +12724,387 @@
+ <list>
+ <xs:documentation>Border Styles</xs:documentation>
+ <choice>
+-<!-- No Border -->
++ <!-- No Border -->
+ <value>nil</value>
+-<!-- No Border -->
++ <!-- No Border -->
+ <value>none</value>
+-<!-- Single Line Border -->
++ <!-- Single Line Border -->
+ <value>single</value>
+-<!-- Single Line Border -->
++ <!-- Single Line Border -->
+ <value>thick</value>
+-<!-- Double Line Border -->
++ <!-- Double Line Border -->
+ <value>double</value>
+-<!-- Dotted Line Border -->
++ <!-- Dotted Line Border -->
+ <value>dotted</value>
+-<!-- Dashed Line Border -->
++ <!-- Dashed Line Border -->
+ <value>dashed</value>
+-<!-- Dot Dash Line Border -->
++ <!-- Dot Dash Line Border -->
+ <value>dotDash</value>
+-<!-- Dot Dot Dash Line Border -->
++ <!-- Dot Dot Dash Line Border -->
+ <value>dotDotDash</value>
+-<!-- Triple Line Border -->
++ <!-- Triple Line Border -->
+ <value>triple</value>
+-<!-- Thin, Thick Line Border -->
++ <!-- Thin, Thick Line Border -->
+ <value>thinThickSmallGap</value>
+-<!-- Thick, Thin Line Border -->
++ <!-- Thick, Thin Line Border -->
+ <value>thickThinSmallGap</value>
+-<!-- Thin, Thick, Thin Line Border -->
++ <!-- Thin, Thick, Thin Line Border -->
+ <value>thinThickThinSmallGap</value>
+-<!-- Thin, Thick Line Border -->
++ <!-- Thin, Thick Line Border -->
+ <value>thinThickMediumGap</value>
+-<!-- Thick, Thin Line Border -->
++ <!-- Thick, Thin Line Border -->
+ <value>thickThinMediumGap</value>
+-<!-- Thin, Thick, Thin Line Border -->
++ <!-- Thin, Thick, Thin Line Border -->
+ <value>thinThickThinMediumGap</value>
+-<!-- Thin, Thick Line Border -->
++ <!-- Thin, Thick Line Border -->
+ <value>thinThickLargeGap</value>
+-<!-- Thick, Thin Line Border -->
++ <!-- Thick, Thin Line Border -->
+ <value>thickThinLargeGap</value>
+-<!-- Thin, Thick, Thin Line Border -->
++ <!-- Thin, Thick, Thin Line Border -->
+ <value>thinThickThinLargeGap</value>
+-<!-- Wavy Line Border -->
++ <!-- Wavy Line Border -->
+ <value>wave</value>
+-<!-- Double Wave Line Border -->
++ <!-- Double Wave Line Border -->
+ <value>doubleWave</value>
+-<!-- Dashed Line Border -->
++ <!-- Dashed Line Border -->
+ <value>dashSmallGap</value>
+-<!-- Dash Dot Strokes Line Border -->
++ <!-- Dash Dot Strokes Line Border -->
+ <value>dashDotStroked</value>
+-<!-- 3D Embossed Line Border -->
++ <!-- 3D Embossed Line Border -->
+ <value>threeDEmboss</value>
+-<!-- 3D Engraved Line Border -->
++ <!-- 3D Engraved Line Border -->
+ <value>threeDEngrave</value>
+-<!-- Outset Line Border -->
++ <!-- Outset Line Border -->
+ <value>outset</value>
+-<!-- Inset Line Border -->
++ <!-- Inset Line Border -->
+ <value>inset</value>
+-<!-- Apples Art Border -->
++ <!-- Apples Art Border -->
+ <value>apples</value>
+-<!-- Arched Scallops Art Border -->
++ <!-- Arched Scallops Art Border -->
+ <value>archedScallops</value>
+-<!-- Baby Pacifier Art Border -->
++ <!-- Baby Pacifier Art Border -->
+ <value>babyPacifier</value>
+-<!-- Baby Rattle Art Border -->
++ <!-- Baby Rattle Art Border -->
+ <value>babyRattle</value>
+-<!-- Three Color Balloons Art Border -->
++ <!-- Three Color Balloons Art Border -->
+ <value>balloons3Colors</value>
+-<!-- Hot Air Balloons Art Border -->
++ <!-- Hot Air Balloons Art Border -->
+ <value>balloonsHotAir</value>
+-<!-- Black Dash Art Border -->
++ <!-- Black Dash Art Border -->
+ <value>basicBlackDashes</value>
+-<!-- Black Dot Art Border -->
++ <!-- Black Dot Art Border -->
+ <value>basicBlackDots</value>
+-<!-- Black Square Art Border -->
++ <!-- Black Square Art Border -->
+ <value>basicBlackSquares</value>
+-<!-- Thin Line Art Border -->
++ <!-- Thin Line Art Border -->
+ <value>basicThinLines</value>
+-<!-- White Dash Art Border -->
++ <!-- White Dash Art Border -->
+ <value>basicWhiteDashes</value>
+-<!-- White Dot Art Border -->
++ <!-- White Dot Art Border -->
+ <value>basicWhiteDots</value>
+-<!-- White Square Art Border -->
++ <!-- White Square Art Border -->
+ <value>basicWhiteSquares</value>
+-<!-- Wide Inline Art Border -->
++ <!-- Wide Inline Art Border -->
+ <value>basicWideInline</value>
+-<!-- Wide Midline Art Border -->
++ <!-- Wide Midline Art Border -->
+ <value>basicWideMidline</value>
+-<!-- Wide Outline Art Border -->
++ <!-- Wide Outline Art Border -->
+ <value>basicWideOutline</value>
+-<!-- Bats Art Border -->
++ <!-- Bats Art Border -->
+ <value>bats</value>
+-<!-- Birds Art Border -->
++ <!-- Birds Art Border -->
+ <value>birds</value>
+-<!-- Birds Flying Art Border -->
++ <!-- Birds Flying Art Border -->
+ <value>birdsFlight</value>
+-<!-- Cabin Art Border -->
++ <!-- Cabin Art Border -->
+ <value>cabins</value>
+-<!-- Cake Art Border -->
++ <!-- Cake Art Border -->
+ <value>cakeSlice</value>
+-<!-- Candy Corn Art Border -->
++ <!-- Candy Corn Art Border -->
+ <value>candyCorn</value>
+-<!-- Knot Work Art Border -->
++ <!-- Knot Work Art Border -->
+ <value>celticKnotwork</value>
+-<!-- Certificate Banner Art Border -->
++ <!-- Certificate Banner Art Border -->
+ <value>certificateBanner</value>
+-<!-- Chain Link Art Border -->
++ <!-- Chain Link Art Border -->
+ <value>chainLink</value>
+-<!-- Champagne Bottle Art Border -->
++ <!-- Champagne Bottle Art Border -->
+ <value>champagneBottle</value>
+-<!-- Black and White Bar Art Border -->
++ <!-- Black and White Bar Art Border -->
+ <value>checkedBarBlack</value>
+-<!-- Color Checked Bar Art Border -->
++ <!-- Color Checked Bar Art Border -->
+ <value>checkedBarColor</value>
+-<!-- Checkerboard Art Border -->
++ <!-- Checkerboard Art Border -->
+ <value>checkered</value>
+-<!-- Christmas Tree Art Border -->
++ <!-- Christmas Tree Art Border -->
+ <value>christmasTree</value>
+-<!-- Circles And Lines Art Border -->
++ <!-- Circles And Lines Art Border -->
+ <value>circlesLines</value>
+-<!-- Circles and Rectangles Art Border -->
++ <!-- Circles and Rectangles Art Border -->
+ <value>circlesRectangles</value>
+-<!-- Wave Art Border -->
++ <!-- Wave Art Border -->
+ <value>classicalWave</value>
+-<!-- Clocks Art Border -->
++ <!-- Clocks Art Border -->
+ <value>clocks</value>
+-<!-- Compass Art Border -->
++ <!-- Compass Art Border -->
+ <value>compass</value>
+-<!-- Confetti Art Border -->
++ <!-- Confetti Art Border -->
+ <value>confetti</value>
+-<!-- Confetti Art Border -->
++ <!-- Confetti Art Border -->
+ <value>confettiGrays</value>
+-<!-- Confetti Art Border -->
++ <!-- Confetti Art Border -->
+ <value>confettiOutline</value>
+-<!-- Confetti Streamers Art Border -->
++ <!-- Confetti Streamers Art Border -->
+ <value>confettiStreamers</value>
+-<!-- Confetti Art Border -->
++ <!-- Confetti Art Border -->
+ <value>confettiWhite</value>
+-<!-- Corner Triangle Art Border -->
++ <!-- Corner Triangle Art Border -->
+ <value>cornerTriangles</value>
+-<!-- Dashed Line Art Border -->
++ <!-- Dashed Line Art Border -->
+ <value>couponCutoutDashes</value>
+-<!-- Dotted Line Art Border -->
++ <!-- Dotted Line Art Border -->
+ <value>couponCutoutDots</value>
+-<!-- Maze Art Border -->
++ <!-- Maze Art Border -->
+ <value>crazyMaze</value>
+-<!-- Butterfly Art Border -->
++ <!-- Butterfly Art Border -->
+ <value>creaturesButterfly</value>
+-<!-- Fish Art Border -->
++ <!-- Fish Art Border -->
+ <value>creaturesFish</value>
+-<!-- Insects Art Border -->
++ <!-- Insects Art Border -->
+ <value>creaturesInsects</value>
+-<!-- Ladybug Art Border -->
++ <!-- Ladybug Art Border -->
+ <value>creaturesLadyBug</value>
+-<!-- Cross-stitch Art Border -->
++ <!-- Cross-stitch Art Border -->
+ <value>crossStitch</value>
+-<!-- Cupid Art Border -->
++ <!-- Cupid Art Border -->
+ <value>cup</value>
+-<!-- Archway Art Border -->
++ <!-- Archway Art Border -->
+ <value>decoArch</value>
+-<!-- Color Archway Art Border -->
++ <!-- Color Archway Art Border -->
+ <value>decoArchColor</value>
+-<!-- Blocks Art Border -->
++ <!-- Blocks Art Border -->
+ <value>decoBlocks</value>
+-<!-- Gray Diamond Art Border -->
++ <!-- Gray Diamond Art Border -->
+ <value>diamondsGray</value>
+-<!-- Double D Art Border -->
++ <!-- Double D Art Border -->
+ <value>doubleD</value>
+-<!-- Diamond Art Border -->
++ <!-- Diamond Art Border -->
+ <value>doubleDiamonds</value>
+-<!-- Earth Art Border -->
++ <!-- Earth Art Border -->
+ <value>earth1</value>
+-<!-- Earth Art Border -->
++ <!-- Earth Art Border -->
+ <value>earth2</value>
+-<!-- Shadowed Square Art Border -->
++ <!-- Shadowed Square Art Border -->
+ <value>eclipsingSquares1</value>
+-<!-- Shadowed Square Art Border -->
++ <!-- Shadowed Square Art Border -->
+ <value>eclipsingSquares2</value>
+-<!-- Painted Egg Art Border -->
++ <!-- Painted Egg Art Border -->
+ <value>eggsBlack</value>
+-<!-- Fans Art Border -->
++ <!-- Fans Art Border -->
+ <value>fans</value>
+-<!-- Film Reel Art Border -->
++ <!-- Film Reel Art Border -->
+ <value>film</value>
+-<!-- Firecracker Art Border -->
++ <!-- Firecracker Art Border -->
+ <value>firecrackers</value>
+-<!-- Flowers Art Border -->
++ <!-- Flowers Art Border -->
+ <value>flowersBlockPrint</value>
+-<!-- Daisy Art Border -->
++ <!-- Daisy Art Border -->
+ <value>flowersDaisies</value>
+-<!-- Flowers Art Border -->
++ <!-- Flowers Art Border -->
+ <value>flowersModern1</value>
+-<!-- Flowers Art Border -->
++ <!-- Flowers Art Border -->
+ <value>flowersModern2</value>
+-<!-- Pansy Art Border -->
++ <!-- Pansy Art Border -->
+ <value>flowersPansy</value>
+-<!-- Red Rose Art Border -->
++ <!-- Red Rose Art Border -->
+ <value>flowersRedRose</value>
+-<!-- Roses Art Border -->
++ <!-- Roses Art Border -->
+ <value>flowersRoses</value>
+-<!-- Flowers in a Teacup Art Border -->
++ <!-- Flowers in a Teacup Art Border -->
+ <value>flowersTeacup</value>
+-<!-- Small Flower Art Border -->
++ <!-- Small Flower Art Border -->
+ <value>flowersTiny</value>
+-<!-- Gems Art Border -->
++ <!-- Gems Art Border -->
+ <value>gems</value>
+-<!-- Gingerbread Man Art Border -->
++ <!-- Gingerbread Man Art Border -->
+ <value>gingerbreadMan</value>
+-<!-- Triangle Gradient Art Border -->
++ <!-- Triangle Gradient Art Border -->
+ <value>gradient</value>
+-<!-- Handmade Art Border -->
++ <!-- Handmade Art Border -->
+ <value>handmade1</value>
+-<!-- Handmade Art Border -->
++ <!-- Handmade Art Border -->
+ <value>handmade2</value>
+-<!-- Heart-Shaped Balloon Art Border -->
++ <!-- Heart-Shaped Balloon Art Border -->
+ <value>heartBalloon</value>
+-<!-- Gray Heart Art Border -->
++ <!-- Gray Heart Art Border -->
+ <value>heartGray</value>
+-<!-- Hearts Art Border -->
++ <!-- Hearts Art Border -->
+ <value>hearts</value>
+-<!-- Pattern Art Border -->
++ <!-- Pattern Art Border -->
+ <value>heebieJeebies</value>
+-<!-- Holly Art Border -->
++ <!-- Holly Art Border -->
+ <value>holly</value>
+-<!-- House Art Border -->
++ <!-- House Art Border -->
+ <value>houseFunky</value>
+-<!-- Circular Art Border -->
++ <!-- Circular Art Border -->
+ <value>hypnotic</value>
+-<!-- Ice Cream Cone Art Border -->
++ <!-- Ice Cream Cone Art Border -->
+ <value>iceCreamCones</value>
+-<!-- Light Bulb Art Border -->
++ <!-- Light Bulb Art Border -->
+ <value>lightBulb</value>
+-<!-- Lightning Art Border -->
++ <!-- Lightning Art Border -->
+ <value>lightning1</value>
+-<!-- Lightning Art Border -->
++ <!-- Lightning Art Border -->
+ <value>lightning2</value>
+-<!-- Map Pins Art Border -->
++ <!-- Map Pins Art Border -->
+ <value>mapPins</value>
+-<!-- Maple Leaf Art Border -->
++ <!-- Maple Leaf Art Border -->
+ <value>mapleLeaf</value>
+-<!-- Muffin Art Border -->
++ <!-- Muffin Art Border -->
+ <value>mapleMuffins</value>
+-<!-- Marquee Art Border -->
++ <!-- Marquee Art Border -->
+ <value>marquee</value>
+-<!-- Marquee Art Border -->
++ <!-- Marquee Art Border -->
+ <value>marqueeToothed</value>
+-<!-- Moon Art Border -->
++ <!-- Moon Art Border -->
+ <value>moons</value>
+-<!-- Mosaic Art Border -->
++ <!-- Mosaic Art Border -->
+ <value>mosaic</value>
+-<!-- Musical Note Art Border -->
++ <!-- Musical Note Art Border -->
+ <value>musicNotes</value>
+-<!-- Patterned Art Border -->
++ <!-- Patterned Art Border -->
+ <value>northwest</value>
+-<!-- Oval Art Border -->
++ <!-- Oval Art Border -->
+ <value>ovals</value>
+-<!-- Package Art Border -->
++ <!-- Package Art Border -->
+ <value>packages</value>
+-<!-- Black Palm Tree Art Border -->
++ <!-- Black Palm Tree Art Border -->
+ <value>palmsBlack</value>
+-<!-- Color Palm Tree Art Border -->
++ <!-- Color Palm Tree Art Border -->
+ <value>palmsColor</value>
+-<!-- Paper Clip Art Border -->
++ <!-- Paper Clip Art Border -->
+ <value>paperClips</value>
+-<!-- Papyrus Art Border -->
++ <!-- Papyrus Art Border -->
+ <value>papyrus</value>
+-<!-- Party Favor Art Border -->
++ <!-- Party Favor Art Border -->
+ <value>partyFavor</value>
+-<!-- Party Glass Art Border -->
++ <!-- Party Glass Art Border -->
+ <value>partyGlass</value>
+-<!-- Pencils Art Border -->
++ <!-- Pencils Art Border -->
+ <value>pencils</value>
+-<!-- Character Art Border -->
++ <!-- Character Art Border -->
+ <value>people</value>
+-<!-- Waving Character Border -->
++ <!-- Waving Character Border -->
+ <value>peopleWaving</value>
+-<!-- Character With Hat Art Border -->
++ <!-- Character With Hat Art Border -->
+ <value>peopleHats</value>
+-<!-- Poinsettia Art Border -->
++ <!-- Poinsettia Art Border -->
+ <value>poinsettias</value>
+-<!-- Postage Stamp Art Border -->
++ <!-- Postage Stamp Art Border -->
+ <value>postageStamp</value>
+-<!-- Pumpkin Art Border -->
++ <!-- Pumpkin Art Border -->
+ <value>pumpkin1</value>
+-<!-- Push Pin Art Border -->
++ <!-- Push Pin Art Border -->
+ <value>pushPinNote2</value>
+-<!-- Push Pin Art Border -->
++ <!-- Push Pin Art Border -->
+ <value>pushPinNote1</value>
+-<!-- Pyramid Art Border -->
++ <!-- Pyramid Art Border -->
+ <value>pyramids</value>
+-<!-- Pyramid Art Border -->
++ <!-- Pyramid Art Border -->
+ <value>pyramidsAbove</value>
+-<!-- Quadrants Art Border -->
++ <!-- Quadrants Art Border -->
+ <value>quadrants</value>
+-<!-- Rings Art Border -->
++ <!-- Rings Art Border -->
+ <value>rings</value>
+-<!-- Safari Art Border -->
++ <!-- Safari Art Border -->
+ <value>safari</value>
+-<!-- Saw tooth Art Border -->
++ <!-- Saw tooth Art Border -->
+ <value>sawtooth</value>
+-<!-- Gray Saw tooth Art Border -->
++ <!-- Gray Saw tooth Art Border -->
+ <value>sawtoothGray</value>
+-<!-- Scared Cat Art Border -->
++ <!-- Scared Cat Art Border -->
+ <value>scaredCat</value>
+-<!-- Umbrella Art Border -->
++ <!-- Umbrella Art Border -->
+ <value>seattle</value>
+-<!-- Shadowed Squares Art Border -->
++ <!-- Shadowed Squares Art Border -->
+ <value>shadowedSquares</value>
+-<!-- Shark Tooth Art Border -->
++ <!-- Shark Tooth Art Border -->
+ <value>sharksTeeth</value>
+-<!-- Bird Tracks Art Border -->
++ <!-- Bird Tracks Art Border -->
+ <value>shorebirdTracks</value>
+-<!-- Rocket Art Border -->
++ <!-- Rocket Art Border -->
+ <value>skyrocket</value>
+-<!-- Snowflake Art Border -->
++ <!-- Snowflake Art Border -->
+ <value>snowflakeFancy</value>
+-<!-- Snowflake Art Border -->
++ <!-- Snowflake Art Border -->
+ <value>snowflakes</value>
+-<!-- Sombrero Art Border -->
++ <!-- Sombrero Art Border -->
+ <value>sombrero</value>
+-<!-- Southwest-themed Art Border -->
++ <!-- Southwest-themed Art Border -->
+ <value>southwest</value>
+-<!-- Stars Art Border -->
++ <!-- Stars Art Border -->
+ <value>stars</value>
+-<!-- Stars On Top Art Border -->
++ <!-- Stars On Top Art Border -->
+ <value>starsTop</value>
+-<!-- 3-D Stars Art Border -->
++ <!-- 3-D Stars Art Border -->
+ <value>stars3d</value>
+-<!-- Stars Art Border -->
++ <!-- Stars Art Border -->
+ <value>starsBlack</value>
+-<!-- Stars With Shadows Art Border -->
++ <!-- Stars With Shadows Art Border -->
+ <value>starsShadowed</value>
+-<!-- Sun Art Border -->
++ <!-- Sun Art Border -->
+ <value>sun</value>
+-<!-- Whirligig Art Border -->
++ <!-- Whirligig Art Border -->
+ <value>swirligig</value>
+-<!-- Torn Paper Art Border -->
++ <!-- Torn Paper Art Border -->
+ <value>tornPaper</value>
+-<!-- Black Torn Paper Art Border -->
++ <!-- Black Torn Paper Art Border -->
+ <value>tornPaperBlack</value>
+-<!-- Tree Art Border -->
++ <!-- Tree Art Border -->
+ <value>trees</value>
+-<!-- Triangle Art Border -->
++ <!-- Triangle Art Border -->
+ <value>triangleParty</value>
+-<!-- Triangles Art Border -->
++ <!-- Triangles Art Border -->
+ <value>triangles</value>
+-<!-- Tribal Art Border One -->
++ <!-- Tribal Art Border One -->
+ <value>tribal1</value>
+-<!-- Tribal Art Border Two -->
++ <!-- Tribal Art Border Two -->
+ <value>tribal2</value>
+-<!-- Tribal Art Border Three -->
++ <!-- Tribal Art Border Three -->
+ <value>tribal3</value>
+-<!-- Tribal Art Border Four -->
++ <!-- Tribal Art Border Four -->
+ <value>tribal4</value>
+-<!-- Tribal Art Border Five -->
++ <!-- Tribal Art Border Five -->
+ <value>tribal5</value>
+-<!-- Tribal Art Border Six -->
++ <!-- Tribal Art Border Six -->
+ <value>tribal6</value>
+-<!-- Twisted Lines Art Border -->
++ <!-- Twisted Lines Art Border -->
+ <value>twistedLines1</value>
+-<!-- Twisted Lines Art Border -->
++ <!-- Twisted Lines Art Border -->
+ <value>twistedLines2</value>
+-<!-- Vine Art Border -->
++ <!-- Vine Art Border -->
+ <value>vine</value>
+-<!-- Wavy Line Art Border -->
++ <!-- Wavy Line Art Border -->
+ <value>waveline</value>
+-<!-- Weaving Angles Art Border -->
++ <!-- Weaving Angles Art Border -->
+ <value>weavingAngles</value>
+-<!-- Weaving Braid Art Border -->
++ <!-- Weaving Braid Art Border -->
+ <value>weavingBraid</value>
+-<!-- Weaving Ribbon Art Border -->
++ <!-- Weaving Ribbon Art Border -->
+ <value>weavingRibbon</value>
+-<!-- Weaving Strips Art Border -->
++ <!-- Weaving Strips Art Border -->
+ <value>weavingStrips</value>
+-<!-- White Flowers Art Border -->
++ <!-- White Flowers Art Border -->
+ <value>whiteFlowers</value>
+-<!-- Woodwork Art Border -->
++ <!-- Woodwork Art Border -->
+ <value>woodwork</value>
+-<!-- Crisscross Art Border -->
++ <!-- Crisscross Art Border -->
+ <value>xIllusions</value>
+-<!-- Triangle Art Border -->
++ <!-- Triangle Art Border -->
+ <value>zanyTriangles</value>
+-<!-- Zigzag Art Border -->
++ <!-- Zigzag Art Border -->
+ <value>zigZag</value>
+-<!-- Zigzag stitch -->
++ <!-- Zigzag stitch -->
+ <value>zigZagStitch</value>
+ </choice>
+ </list>
+@@ -13167,81 +13167,81 @@
+ <list>
+ <xs:documentation>Shading Patterns</xs:documentation>
+ <choice>
+-<!-- No Pattern -->
++ <!-- No Pattern -->
+ <value>nil</value>
+-<!-- No Pattern -->
++ <!-- No Pattern -->
+ <value>clear</value>
+-<!-- 100% Fill Pattern -->
++ <!-- 100% Fill Pattern -->
+ <value>solid</value>
+-<!-- Horizontal Stripe Pattern -->
++ <!-- Horizontal Stripe Pattern -->
+ <value>horzStripe</value>
+-<!-- Vertical Stripe Pattern -->
++ <!-- Vertical Stripe Pattern -->
+ <value>vertStripe</value>
+-<!-- Reverse Diagonal Stripe Pattern -->
++ <!-- Reverse Diagonal Stripe Pattern -->
+ <value>reverseDiagStripe</value>
+-<!-- Diagonal Stripe Pattern -->
++ <!-- Diagonal Stripe Pattern -->
+ <value>diagStripe</value>
+-<!-- Horizontal Cross Pattern -->
++ <!-- Horizontal Cross Pattern -->
+ <value>horzCross</value>
+-<!-- Diagonal Cross Pattern -->
++ <!-- Diagonal Cross Pattern -->
+ <value>diagCross</value>
+-<!-- Thin Horizontal Stripe Pattern -->
++ <!-- Thin Horizontal Stripe Pattern -->
+ <value>thinHorzStripe</value>
+-<!-- Thin Vertical Stripe Pattern -->
++ <!-- Thin Vertical Stripe Pattern -->
+ <value>thinVertStripe</value>
+-<!-- Thin Reverse Diagonal Stripe Pattern -->
++ <!-- Thin Reverse Diagonal Stripe Pattern -->
+ <value>thinReverseDiagStripe</value>
+-<!-- Thin Diagonal Stripe Pattern -->
++ <!-- Thin Diagonal Stripe Pattern -->
+ <value>thinDiagStripe</value>
+-<!-- Thin Horizontal Cross Pattern -->
++ <!-- Thin Horizontal Cross Pattern -->
+ <value>thinHorzCross</value>
+-<!-- Thin Diagonal Cross Pattern -->
++ <!-- Thin Diagonal Cross Pattern -->
+ <value>thinDiagCross</value>
+-<!-- 5% Fill Pattern -->
++ <!-- 5% Fill Pattern -->
+ <value>pct5</value>
+-<!-- 10% Fill Pattern -->
++ <!-- 10% Fill Pattern -->
+ <value>pct10</value>
+-<!-- 12.5% Fill Pattern -->
++ <!-- 12.5% Fill Pattern -->
+ <value>pct12</value>
+-<!-- 15% Fill Pattern -->
++ <!-- 15% Fill Pattern -->
+ <value>pct15</value>
+-<!-- 20% Fill Pattern -->
++ <!-- 20% Fill Pattern -->
+ <value>pct20</value>
+-<!-- 25% Fill Pattern -->
++ <!-- 25% Fill Pattern -->
+ <value>pct25</value>
+-<!-- 30% Fill Pattern -->
++ <!-- 30% Fill Pattern -->
+ <value>pct30</value>
+-<!-- 35% Fill Pattern -->
++ <!-- 35% Fill Pattern -->
+ <value>pct35</value>
+-<!-- 37.5% Fill Pattern -->
++ <!-- 37.5% Fill Pattern -->
+ <value>pct37</value>
+-<!-- 40% Fill Pattern -->
++ <!-- 40% Fill Pattern -->
+ <value>pct40</value>
+-<!-- 45% Fill Pattern -->
++ <!-- 45% Fill Pattern -->
+ <value>pct45</value>
+-<!-- 50% Fill Pattern -->
++ <!-- 50% Fill Pattern -->
+ <value>pct50</value>
+-<!-- 55% Fill Pattern -->
++ <!-- 55% Fill Pattern -->
+ <value>pct55</value>
+-<!-- 60% Fill Pattern -->
++ <!-- 60% Fill Pattern -->
+ <value>pct60</value>
+-<!-- 62.5% Fill Pattern -->
++ <!-- 62.5% Fill Pattern -->
+ <value>pct62</value>
+-<!-- 65% Fill Pattern -->
++ <!-- 65% Fill Pattern -->
+ <value>pct65</value>
+-<!-- 70% Fill Pattern -->
++ <!-- 70% Fill Pattern -->
+ <value>pct70</value>
+-<!-- 75% Fill Pattern -->
++ <!-- 75% Fill Pattern -->
+ <value>pct75</value>
+-<!-- 80% Fill Pattern -->
++ <!-- 80% Fill Pattern -->
+ <value>pct80</value>
+-<!-- 85% Fill Pattern -->
++ <!-- 85% Fill Pattern -->
+ <value>pct85</value>
+-<!-- 87.5% Fill Pattern -->
++ <!-- 87.5% Fill Pattern -->
+ <value>pct87</value>
+-<!-- 90% Fill Pattern -->
++ <!-- 90% Fill Pattern -->
+ <value>pct90</value>
+-<!-- 95% Fill Pattern -->
++ <!-- 95% Fill Pattern -->
+ <value>pct95</value>
+ </choice>
+ </list>
+@@ -13304,11 +13304,11 @@
+ <list>
+ <xs:documentation>Vertical Positioning Location</xs:documentation>
+ <choice>
+-<!-- Regular Vertical Positioning -->
++ <!-- Regular Vertical Positioning -->
+ <value>baseline</value>
+-<!-- Superscript -->
++ <!-- Superscript -->
+ <value>superscript</value>
+-<!-- Subscript -->
++ <!-- Subscript -->
+ <value>subscript</value>
+ </choice>
+ </list>
+@@ -13335,15 +13335,15 @@
+ <list>
+ <xs:documentation>Emphasis Mark Type</xs:documentation>
+ <choice>
+-<!-- No Emphasis Mark -->
++ <!-- No Emphasis Mark -->
+ <value>none</value>
+-<!-- Dot Emphasis Mark Above Characters -->
++ <!-- Dot Emphasis Mark Above Characters -->
+ <value>dot</value>
+-<!-- Comma Emphasis Mark Above Characters -->
++ <!-- Comma Emphasis Mark Above Characters -->
+ <value>comma</value>
+-<!-- Circle Emphasis Mark Above Characters -->
++ <!-- Circle Emphasis Mark Above Characters -->
+ <value>circle</value>
+-<!-- Dot Emphasis Mark Below Characters -->
++ <!-- Dot Emphasis Mark Below Characters -->
+ <value>underDot</value>
+ </choice>
+ </list>
+@@ -13378,15 +13378,15 @@
+ <list>
+ <xs:documentation>Two Lines in One Enclosing Character Type</xs:documentation>
+ <choice>
+-<!-- No Enclosing Brackets -->
++ <!-- No Enclosing Brackets -->
+ <value>none</value>
+-<!-- Round Brackets -->
++ <!-- Round Brackets -->
+ <value>round</value>
+-<!-- Square Brackets -->
++ <!-- Square Brackets -->
+ <value>square</value>
+-<!-- Angle Brackets -->
++ <!-- Angle Brackets -->
+ <value>angle</value>
+-<!-- Curly Brackets -->
++ <!-- Curly Brackets -->
+ <value>curly</value>
+ </choice>
+ </list>
+@@ -13427,15 +13427,15 @@
+ <list>
+ <xs:documentation>Horizontal Alignment Location</xs:documentation>
+ <choice>
+-<!-- Left Aligned Horizontally -->
++ <!-- Left Aligned Horizontally -->
+ <value>left</value>
+-<!-- Centered Horizontally -->
++ <!-- Centered Horizontally -->
+ <value>center</value>
+-<!-- Right Aligned Horizontally -->
++ <!-- Right Aligned Horizontally -->
+ <value>right</value>
+-<!-- Inside -->
++ <!-- Inside -->
+ <value>inside</value>
+-<!-- Outside -->
++ <!-- Outside -->
+ <value>outside</value>
+ </choice>
+ </list>
+@@ -13444,17 +13444,17 @@
+ <list>
+ <xs:documentation>Vertical Alignment Location</xs:documentation>
+ <choice>
+-<!-- In line With Text -->
++ <!-- In line With Text -->
+ <value>inline</value>
+-<!-- Top -->
++ <!-- Top -->
+ <value>top</value>
+-<!-- Centered Vertically -->
++ <!-- Centered Vertically -->
+ <value>center</value>
+-<!-- Bottom -->
++ <!-- Bottom -->
+ <value>bottom</value>
+-<!-- Inside Anchor Extents -->
++ <!-- Inside Anchor Extents -->
+ <value>inside</value>
+-<!-- Outside Anchor Extents -->
++ <!-- Outside Anchor Extents -->
+ <value>outside</value>
+ </choice>
+ </list>
+@@ -13463,11 +13463,11 @@
+ <list>
+ <xs:documentation>Height Rule</xs:documentation>
+ <choice>
+-<!-- Determine Height Based On Contents -->
++ <!-- Determine Height Based On Contents -->
+ <value>auto</value>
+-<!-- Exact Height -->
++ <!-- Exact Height -->
+ <value>exact</value>
+-<!-- Minimum Height -->
++ <!-- Minimum Height -->
+ <value>atLeast</value>
+ </choice>
+ </list>
+@@ -13476,17 +13476,17 @@
+ <list>
+ <xs:documentation>Text Wrapping around Text Frame Type</xs:documentation>
+ <choice>
+-<!-- Default Text Wrapping Around Frame -->
++ <!-- Default Text Wrapping Around Frame -->
+ <value>auto</value>
+-<!-- No Text Wrapping Beside Frame -->
++ <!-- No Text Wrapping Beside Frame -->
+ <value>notBeside</value>
+-<!-- Allow Text Wrapping Around Frame -->
++ <!-- Allow Text Wrapping Around Frame -->
+ <value>around</value>
+-<!-- Tight Text Wrapping Around Frame -->
++ <!-- Tight Text Wrapping Around Frame -->
+ <value>tight</value>
+-<!-- Through Text Wrapping Around Frame -->
++ <!-- Through Text Wrapping Around Frame -->
+ <value>through</value>
+-<!-- No Text Wrapping Around Frame -->
++ <!-- No Text Wrapping Around Frame -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -13495,11 +13495,11 @@
+ <list>
+ <xs:documentation>Vertical Anchor Location</xs:documentation>
+ <choice>
+-<!-- Relative To Vertical Text Extents -->
++ <!-- Relative To Vertical Text Extents -->
+ <value>text</value>
+-<!-- Relative To Margin -->
++ <!-- Relative To Margin -->
+ <value>margin</value>
+-<!-- Relative To Page -->
++ <!-- Relative To Page -->
+ <value>page</value>
+ </choice>
+ </list>
+@@ -13508,11 +13508,11 @@
+ <list>
+ <xs:documentation>Horizontal Anchor Location</xs:documentation>
+ <choice>
+-<!-- Relative to Text Extents -->
++ <!-- Relative to Text Extents -->
+ <value>text</value>
+-<!-- Relative To Margin -->
++ <!-- Relative To Margin -->
+ <value>margin</value>
+-<!-- Relative to Page -->
++ <!-- Relative to Page -->
+ <value>page</value>
+ </choice>
+ </list>
+@@ -13521,11 +13521,11 @@
+ <list>
+ <xs:documentation>Text Frame Drop Cap Location</xs:documentation>
+ <choice>
+-<!-- Not Drop Cap -->
++ <!-- Not Drop Cap -->
+ <value>none</value>
+-<!-- Drop Cap Inside Margin -->
++ <!-- Drop Cap Inside Margin -->
+ <value>drop</value>
+-<!-- Drop Cap Outside Margin -->
++ <!-- Drop Cap Outside Margin -->
+ <value>margin</value>
+ </choice>
+ </list>
+@@ -13626,19 +13626,19 @@
+ <list>
+ <xs:documentation>Custom Tab Stop Type</xs:documentation>
+ <choice>
+-<!-- No Tab Stop -->
++ <!-- No Tab Stop -->
+ <value>clear</value>
+-<!-- Left Tab -->
++ <!-- Left Tab -->
+ <value>left</value>
+-<!-- Centered Tab -->
++ <!-- Centered Tab -->
+ <value>center</value>
+-<!-- Right Tab -->
++ <!-- Right Tab -->
+ <value>right</value>
+-<!-- Decimal Tab -->
++ <!-- Decimal Tab -->
+ <value>decimal</value>
+-<!-- Bar Tab -->
++ <!-- Bar Tab -->
+ <value>bar</value>
+-<!-- List Tab -->
++ <!-- List Tab -->
+ <value>num</value>
+ </choice>
+ </list>
+@@ -13647,17 +13647,17 @@
+ <list>
+ <xs:documentation>Custom Tab Stop Leader Character</xs:documentation>
+ <choice>
+-<!-- No tab stop leader -->
++ <!-- No tab stop leader -->
+ <value>none</value>
+-<!-- Dotted leader line -->
++ <!-- Dotted leader line -->
+ <value>dot</value>
+-<!-- Dashed tab stop leader line -->
++ <!-- Dashed tab stop leader line -->
+ <value>hyphen</value>
+-<!-- Solid leader line -->
++ <!-- Solid leader line -->
+ <value>underscore</value>
+-<!-- Heavy solid leader line -->
++ <!-- Heavy solid leader line -->
+ <value>heavy</value>
+-<!-- Middle dot leader line -->
++ <!-- Middle dot leader line -->
+ <value>middleDot</value>
+ </choice>
+ </list>
+@@ -13682,11 +13682,11 @@
+ <list>
+ <xs:documentation>Line Spacing Rule</xs:documentation>
+ <choice>
+-<!-- Automatically Determined Line Height -->
++ <!-- Automatically Determined Line Height -->
+ <value>auto</value>
+-<!-- Exact Line Height -->
++ <!-- Exact Line Height -->
+ <value>exact</value>
+-<!-- Minimum Line Height -->
++ <!-- Minimum Line Height -->
+ <value>atLeast</value>
+ </choice>
+ </list>
+@@ -13795,25 +13795,25 @@
+ <list>
+ <xs:documentation>Horizontal Alignment Type</xs:documentation>
+ <choice>
+-<!-- Align Left -->
++ <!-- Align Left -->
+ <value>left</value>
+-<!-- Align Center -->
++ <!-- Align Center -->
+ <value>center</value>
+-<!-- Align Right -->
++ <!-- Align Right -->
+ <value>right</value>
+-<!-- Justified -->
++ <!-- Justified -->
+ <value>both</value>
+-<!-- Medium Kashida Length -->
++ <!-- Medium Kashida Length -->
+ <value>mediumKashida</value>
+-<!-- Distribute All Characters Equally -->
++ <!-- Distribute All Characters Equally -->
+ <value>distribute</value>
+-<!-- Align to List Tab -->
++ <!-- Align to List Tab -->
+ <value>numTab</value>
+-<!-- Widest Kashida Length -->
++ <!-- Widest Kashida Length -->
+ <value>highKashida</value>
+-<!-- Low Kashida Length -->
++ <!-- Low Kashida Length -->
+ <value>lowKashida</value>
+-<!-- Thai Language Justification -->
++ <!-- Thai Language Justification -->
+ <value>thaiDistribute</value>
+ </choice>
+ </list>
+@@ -13828,17 +13828,17 @@
+ <list>
+ <xs:documentation>Document View Values</xs:documentation>
+ <choice>
+-<!-- Default View -->
++ <!-- Default View -->
+ <value>none</value>
+-<!-- Print Layout View -->
++ <!-- Print Layout View -->
+ <value>print</value>
+-<!-- Outline View -->
++ <!-- Outline View -->
+ <value>outline</value>
+-<!-- Master Document View -->
++ <!-- Master Document View -->
+ <value>masterPages</value>
+-<!-- Draft View -->
++ <!-- Draft View -->
+ <value>normal</value>
+-<!-- Web Page View -->
++ <!-- Web Page View -->
+ <value>web</value>
+ </choice>
+ </list>
+@@ -13853,13 +13853,13 @@
+ <list>
+ <xs:documentation>Magnification Preset Values</xs:documentation>
+ <choice>
+-<!-- No Preset Magnification -->
++ <!-- No Preset Magnification -->
+ <value>none</value>
+-<!-- Display One Full Page -->
++ <!-- Display One Full Page -->
+ <value>fullPage</value>
+-<!-- Display Page Width -->
++ <!-- Display Page Width -->
+ <value>bestFit</value>
+-<!-- Display Text Width -->
++ <!-- Display Text Width -->
+ <value>textFit</value>
+ </choice>
+ </list>
+@@ -13908,9 +13908,9 @@
+ <list>
+ <xs:documentation>Proofing State Values</xs:documentation>
+ <choice>
+-<!-- Check Completed -->
++ <!-- Check Completed -->
+ <value>clean</value>
+-<!-- Check Not Completed -->
++ <!-- Check Not Completed -->
+ <value>dirty</value>
+ </choice>
+ </list>
+@@ -13933,11 +13933,11 @@
+ <list>
+ <xs:documentation>Document Classification Values</xs:documentation>
+ <choice>
+-<!-- Default Document -->
++ <!-- Default Document -->
+ <value>notSpecified</value>
+-<!-- Letter -->
++ <!-- Letter -->
+ <value>letter</value>
+-<!-- E-Mail Message -->
++ <!-- E-Mail Message -->
+ <value>eMail</value>
+ </choice>
+ </list>
+@@ -13952,15 +13952,15 @@
+ <list>
+ <xs:documentation>Document Protection Types</xs:documentation>
+ <choice>
+-<!-- No Editing Restrictions -->
++ <!-- No Editing Restrictions -->
+ <value>none</value>
+-<!-- Allow No Editing -->
++ <!-- Allow No Editing -->
+ <value>readOnly</value>
+-<!-- Allow Editing of Comments -->
++ <!-- Allow Editing of Comments -->
+ <value>comments</value>
+-<!-- Allow Editing With Revision Tracking -->
++ <!-- Allow Editing With Revision Tracking -->
+ <value>trackedChanges</value>
+-<!-- Allow Editing of Form Fields -->
++ <!-- Allow Editing of Form Fields -->
+ <value>forms</value>
+ </choice>
+ </list>
+@@ -13969,9 +13969,9 @@
+ <list>
+ <xs:documentation>Cryptographic Provider Types</xs:documentation>
+ <choice>
+-<!-- AES Provider -->
++ <!-- AES Provider -->
+ <value>rsaAES</value>
+-<!-- Any Provider -->
++ <!-- Any Provider -->
+ <value>rsaFull</value>
+ </choice>
+ </list>
+@@ -13979,14 +13979,14 @@
+ <define name="ST_AlgClass">
+ <list>
+ <xs:documentation>Cryptographic Algorithm Classes</xs:documentation>
+-<!-- Hashing -->
++ <!-- Hashing -->
+ <value>hash</value>
+ </list>
+ </define>
+ <define name="ST_AlgType">
+ <list>
+ <xs:documentation>Cryptographic Algorithm Types</xs:documentation>
+-<!-- Any Type -->
++ <!-- Any Type -->
+ <value>typeAny</value>
+ </list>
+ </define>
+@@ -14067,17 +14067,17 @@
+ <list>
+ <xs:documentation>Source Document Types</xs:documentation>
+ <choice>
+-<!-- Catalog Source Document -->
++ <!-- Catalog Source Document -->
+ <value>catalog</value>
+-<!-- Envelope Source Document -->
++ <!-- Envelope Source Document -->
+ <value>envelopes</value>
+-<!-- Mailing Label Source Document -->
++ <!-- Mailing Label Source Document -->
+ <value>mailingLabels</value>
+-<!-- Form Letter Source Document -->
++ <!-- Form Letter Source Document -->
+ <value>formLetters</value>
+-<!-- E-Mail Source Document -->
++ <!-- E-Mail Source Document -->
+ <value>email</value>
+-<!-- Fax Source Document -->
++ <!-- Fax Source Document -->
+ <value>fax</value>
+ </choice>
+ </list>
+@@ -14092,17 +14092,17 @@
+ <list>
+ <xs:documentation>Mail Merge Data Source Type Values</xs:documentation>
+ <choice>
+-<!-- Text File Data Source -->
++ <!-- Text File Data Source -->
+ <value>textFile</value>
+-<!-- Database Data Source -->
++ <!-- Database Data Source -->
+ <value>database</value>
+-<!-- Spreadsheet Data Source -->
++ <!-- Spreadsheet Data Source -->
+ <value>spreadsheet</value>
+-<!-- Query Data Source -->
++ <!-- Query Data Source -->
+ <value>query</value>
+-<!-- Open Database Connectivity Data Source -->
++ <!-- Open Database Connectivity Data Source -->
+ <value>odbc</value>
+-<!-- Office Data Source Object Data Source -->
++ <!-- Office Data Source Object Data Source -->
+ <value>native</value>
+ </choice>
+ </list>
+@@ -14117,13 +14117,13 @@
+ <list>
+ <xs:documentation>Merged Document Destination Types</xs:documentation>
+ <choice>
+-<!-- Send Merged Documents to New Documents -->
++ <!-- Send Merged Documents to New Documents -->
+ <value>newDocument</value>
+-<!-- Send Merged Documents to Printer -->
++ <!-- Send Merged Documents to Printer -->
+ <value>printer</value>
+-<!-- Send Merged Documents as E-mail Messages -->
++ <!-- Send Merged Documents as E-mail Messages -->
+ <value>email</value>
+-<!-- Send Merged Documents as Faxes -->
++ <!-- Send Merged Documents as Faxes -->
+ <value>fax</value>
+ </choice>
+ </list>
+@@ -14138,9 +14138,9 @@
+ <list>
+ <xs:documentation>Merge Field Mapping Types</xs:documentation>
+ <choice>
+-<!-- Field Not Mapped -->
++ <!-- Field Not Mapped -->
+ <value>null</value>
+-<!-- Field Mapping to Data Source Column -->
++ <!-- Field Mapping to Data Source Column -->
+ <value>dbColumn</value>
+ </choice>
+ </list>
+@@ -14197,17 +14197,17 @@
+ <list>
+ <xs:documentation>Text Flow Direction</xs:documentation>
+ <choice>
+-<!-- Left to Right, Top to Bottom -->
++ <!-- Left to Right, Top to Bottom -->
+ <value>lrTb</value>
+-<!-- Top to Bottom, Right to Left -->
++ <!-- Top to Bottom, Right to Left -->
+ <value>tbRl</value>
+-<!-- Bottom to Top, Left to Right -->
++ <!-- Bottom to Top, Left to Right -->
+ <value>btLr</value>
+-<!-- Left to Right, Top to Bottom Rotated -->
++ <!-- Left to Right, Top to Bottom Rotated -->
+ <value>lrTbV</value>
+-<!-- Top to Bottom, Right to Left Rotated -->
++ <!-- Top to Bottom, Right to Left Rotated -->
+ <value>tbRlV</value>
+-<!-- Top to Bottom, Left to Right Rotated -->
++ <!-- Top to Bottom, Left to Right Rotated -->
+ <value>tbLrV</value>
+ </choice>
+ </list>
+@@ -14222,15 +14222,15 @@
+ <list>
+ <xs:documentation>Vertical Text Alignment Types</xs:documentation>
+ <choice>
+-<!-- Align Text at Top -->
++ <!-- Align Text at Top -->
+ <value>top</value>
+-<!-- Align Text at Center -->
++ <!-- Align Text at Center -->
+ <value>center</value>
+-<!-- Align Text at Baseline -->
++ <!-- Align Text at Baseline -->
+ <value>baseline</value>
+-<!-- Align Text at Bottom -->
++ <!-- Align Text at Bottom -->
+ <value>bottom</value>
+-<!-- Automatically Determine Alignment -->
++ <!-- Automatically Determine Alignment -->
+ <value>auto</value>
+ </choice>
+ </list>
+@@ -14245,9 +14245,9 @@
+ <list>
+ <xs:documentation>Location of Custom XML Markup Displacing an Annotation</xs:documentation>
+ <choice>
+-<!-- Displaced by Next Custom XML Markup Tag -->
++ <!-- Displaced by Next Custom XML Markup Tag -->
+ <value>next</value>
+-<!-- Displaced by Previous Custom XML Markup Tag -->
++ <!-- Displaced by Previous Custom XML Markup Tag -->
+ <value>prev</value>
+ </choice>
+ </list>
+@@ -14256,9 +14256,9 @@
+ <list>
+ <xs:documentation>Table Cell Vertical Merge Revision Type</xs:documentation>
+ <choice>
+-<!-- Vertically Merged Cell -->
++ <!-- Vertically Merged Cell -->
+ <value>cont</value>
+-<!-- Vertically Split Cell -->
++ <!-- Vertically Split Cell -->
+ <value>rest</value>
+ </choice>
+ </list>
+@@ -14581,15 +14581,15 @@
+ <list>
+ <xs:documentation>Lines To Tight Wrap Within Text Box</xs:documentation>
+ <choice>
+-<!-- Do Not Tight Wrap -->
++ <!-- Do Not Tight Wrap -->
+ <value>none</value>
+-<!-- Tight Wrap All Lines -->
++ <!-- Tight Wrap All Lines -->
+ <value>allLines</value>
+-<!-- Tight Wrap First and Last Lines -->
++ <!-- Tight Wrap First and Last Lines -->
+ <value>firstAndLastLine</value>
+-<!-- Tight Wrap First Line -->
++ <!-- Tight Wrap First Line -->
+ <value>firstLineOnly</value>
+-<!-- Tight Wrap Last Line -->
++ <!-- Tight Wrap Last Line -->
+ <value>lastLineOnly</value>
+ </choice>
+ </list>
+@@ -14923,11 +14923,11 @@
+ <list>
+ <xs:documentation>Complex Field Character Type</xs:documentation>
+ <choice>
+-<!-- Start Character -->
++ <!-- Start Character -->
+ <value>begin</value>
+-<!-- Separator Character -->
++ <!-- Separator Character -->
+ <value>separate</value>
+-<!-- End Character -->
++ <!-- End Character -->
+ <value>end</value>
+ </choice>
+ </list>
+@@ -14936,9 +14936,9 @@
+ <list>
+ <xs:documentation>Help or Status Text Type</xs:documentation>
+ <choice>
+-<!-- Literal Text -->
++ <!-- Literal Text -->
+ <value>text</value>
+-<!-- Glossary Document Entry -->
++ <!-- Glossary Document Entry -->
+ <value>autoText</value>
+ </choice>
+ </list>
+@@ -14965,17 +14965,17 @@
+ <list>
+ <xs:documentation>Text Box Form Field Type Values</xs:documentation>
+ <choice>
+-<!-- Text Box -->
++ <!-- Text Box -->
+ <value>regular</value>
+-<!-- Number -->
++ <!-- Number -->
+ <value>number</value>
+-<!-- Date -->
++ <!-- Date -->
+ <value>date</value>
+-<!-- Current Time Display -->
++ <!-- Current Time Display -->
+ <value>currentTime</value>
+-<!-- Current Date Display -->
++ <!-- Current Date Display -->
+ <value>currentDate</value>
+-<!-- Field Calculation -->
++ <!-- Field Calculation -->
+ <value>calculated</value>
+ </choice>
+ </list>
+@@ -15190,15 +15190,15 @@
+ <list>
+ <xs:documentation>Section Type</xs:documentation>
+ <choice>
+-<!-- Next Page Section Break -->
++ <!-- Next Page Section Break -->
+ <value>nextPage</value>
+-<!-- Column Section Break -->
++ <!-- Column Section Break -->
+ <value>nextColumn</value>
+-<!-- Continuous Section Break -->
++ <!-- Continuous Section Break -->
+ <value>continuous</value>
+-<!-- Even Page Section Break -->
++ <!-- Even Page Section Break -->
+ <value>evenPage</value>
+-<!-- Odd Page Section Break -->
++ <!-- Odd Page Section Break -->
+ <value>oddPage</value>
+ </choice>
+ </list>
+@@ -15223,125 +15223,125 @@
+ <list>
+ <xs:documentation>Numbering Format</xs:documentation>
+ <choice>
+-<!-- Decimal Numbers -->
++ <!-- Decimal Numbers -->
+ <value>decimal</value>
+-<!-- Uppercase Roman Numerals -->
++ <!-- Uppercase Roman Numerals -->
+ <value>upperRoman</value>
+-<!-- Lowercase Roman Numerals -->
++ <!-- Lowercase Roman Numerals -->
+ <value>lowerRoman</value>
+-<!-- Uppercase Latin Alphabet -->
++ <!-- Uppercase Latin Alphabet -->
+ <value>upperLetter</value>
+-<!-- Lowercase Latin Alphabet -->
++ <!-- Lowercase Latin Alphabet -->
+ <value>lowerLetter</value>
+-<!-- Ordinal -->
++ <!-- Ordinal -->
+ <value>ordinal</value>
+-<!-- Cardinal Text -->
++ <!-- Cardinal Text -->
+ <value>cardinalText</value>
+-<!-- Ordinal Text -->
++ <!-- Ordinal Text -->
+ <value>ordinalText</value>
+-<!-- Hexadecimal Numbering -->
++ <!-- Hexadecimal Numbering -->
+ <value>hex</value>
+-<!-- Chicago Manual of Style -->
++ <!-- Chicago Manual of Style -->
+ <value>chicago</value>
+-<!-- Ideographs -->
++ <!-- Ideographs -->
+ <value>ideographDigital</value>
+-<!-- Japanese Counting System -->
++ <!-- Japanese Counting System -->
+ <value>japaneseCounting</value>
+-<!-- AIUEO Order Hiragana -->
++ <!-- AIUEO Order Hiragana -->
+ <value>aiueo</value>
+-<!-- Iroha Ordered Katakana -->
++ <!-- Iroha Ordered Katakana -->
+ <value>iroha</value>
+-<!-- Double Byte Arabic Numerals -->
++ <!-- Double Byte Arabic Numerals -->
+ <value>decimalFullWidth</value>
+-<!-- Single Byte Arabic Numerals -->
++ <!-- Single Byte Arabic Numerals -->
+ <value>decimalHalfWidth</value>
+-<!-- Japanese Legal Numbering -->
++ <!-- Japanese Legal Numbering -->
+ <value>japaneseLegal</value>
+-<!-- Japanese Digital Ten Thousand Counting System -->
++ <!-- Japanese Digital Ten Thousand Counting System -->
+ <value>japaneseDigitalTenThousand</value>
+-<!-- Decimal Numbers Enclosed in a Circle -->
++ <!-- Decimal Numbers Enclosed in a Circle -->
+ <value>decimalEnclosedCircle</value>
+-<!-- Double Byte Arabic Numerals Alternate -->
++ <!-- Double Byte Arabic Numerals Alternate -->
+ <value>decimalFullWidth2</value>
+-<!-- Full-Width AIUEO Order Hiragana -->
++ <!-- Full-Width AIUEO Order Hiragana -->
+ <value>aiueoFullWidth</value>
+-<!-- Full-Width Iroha Ordered Katakana -->
++ <!-- Full-Width Iroha Ordered Katakana -->
+ <value>irohaFullWidth</value>
+-<!-- Initial Zero Arabic Numerals -->
++ <!-- Initial Zero Arabic Numerals -->
+ <value>decimalZero</value>
+-<!-- Bullet -->
++ <!-- Bullet -->
+ <value>bullet</value>
+-<!-- Korean Ganada Numbering -->
++ <!-- Korean Ganada Numbering -->
+ <value>ganada</value>
+-<!-- Korean Chosung Numbering -->
++ <!-- Korean Chosung Numbering -->
+ <value>chosung</value>
+-<!-- Decimal Numbers Followed by a Period -->
++ <!-- Decimal Numbers Followed by a Period -->
+ <value>decimalEnclosedFullstop</value>
+-<!-- Decimal Numbers Enclosed in Parenthesis -->
++ <!-- Decimal Numbers Enclosed in Parenthesis -->
+ <value>decimalEnclosedParen</value>
+-<!-- Decimal Numbers Enclosed in a Circle -->
++ <!-- Decimal Numbers Enclosed in a Circle -->
+ <value>decimalEnclosedCircleChinese</value>
+-<!-- Ideographs Enclosed in a Circle -->
++ <!-- Ideographs Enclosed in a Circle -->
+ <value>ideographEnclosedCircle</value>
+-<!-- Traditional Ideograph Format -->
++ <!-- Traditional Ideograph Format -->
+ <value>ideographTraditional</value>
+-<!-- Zodiac Ideograph Format -->
++ <!-- Zodiac Ideograph Format -->
+ <value>ideographZodiac</value>
+-<!-- Traditional Zodiac Ideograph Format -->
++ <!-- Traditional Zodiac Ideograph Format -->
+ <value>ideographZodiacTraditional</value>
+-<!-- Taiwanese Counting System -->
++ <!-- Taiwanese Counting System -->
+ <value>taiwaneseCounting</value>
+-<!-- Traditional Legal Ideograph Format -->
++ <!-- Traditional Legal Ideograph Format -->
+ <value>ideographLegalTraditional</value>
+-<!-- Taiwanese Counting Thousand System -->
++ <!-- Taiwanese Counting Thousand System -->
+ <value>taiwaneseCountingThousand</value>
+-<!-- Taiwanese Digital Counting System -->
++ <!-- Taiwanese Digital Counting System -->
+ <value>taiwaneseDigital</value>
+-<!-- Chinese Counting System -->
++ <!-- Chinese Counting System -->
+ <value>chineseCounting</value>
+-<!-- Chinese Legal Simplified Format -->
++ <!-- Chinese Legal Simplified Format -->
+ <value>chineseLegalSimplified</value>
+-<!-- Chinese Counting Thousand System -->
++ <!-- Chinese Counting Thousand System -->
+ <value>chineseCountingThousand</value>
+-<!-- Korean Digital Counting System -->
++ <!-- Korean Digital Counting System -->
+ <value>koreanDigital</value>
+-<!-- Korean Counting System -->
++ <!-- Korean Counting System -->
+ <value>koreanCounting</value>
+-<!-- Korean Legal Numbering -->
++ <!-- Korean Legal Numbering -->
+ <value>koreanLegal</value>
+-<!-- Korean Digital Counting System Alternate -->
++ <!-- Korean Digital Counting System Alternate -->
+ <value>koreanDigital2</value>
+-<!-- Vietnamese Numerals -->
++ <!-- Vietnamese Numerals -->
+ <value>vietnameseCounting</value>
+-<!-- Lowercase Russian Alphabet -->
++ <!-- Lowercase Russian Alphabet -->
+ <value>russianLower</value>
+-<!-- Uppercase Russian Alphabet -->
++ <!-- Uppercase Russian Alphabet -->
+ <value>russianUpper</value>
+-<!-- No Numbering -->
++ <!-- No Numbering -->
+ <value>none</value>
+-<!-- Number With Dashes -->
++ <!-- Number With Dashes -->
+ <value>numberInDash</value>
+-<!-- Hebrew Numerals -->
++ <!-- Hebrew Numerals -->
+ <value>hebrew1</value>
+-<!-- Hebrew Alphabet -->
++ <!-- Hebrew Alphabet -->
+ <value>hebrew2</value>
+-<!-- Arabic Alphabet -->
++ <!-- Arabic Alphabet -->
+ <value>arabicAlpha</value>
+-<!-- Arabic Abjad Numerals -->
++ <!-- Arabic Abjad Numerals -->
+ <value>arabicAbjad</value>
+-<!-- Hindi Vowels -->
++ <!-- Hindi Vowels -->
+ <value>hindiVowels</value>
+-<!-- Hindi Consonants -->
++ <!-- Hindi Consonants -->
+ <value>hindiConsonants</value>
+-<!-- Hindi Numbers -->
++ <!-- Hindi Numbers -->
+ <value>hindiNumbers</value>
+-<!-- Hindi Counting System -->
++ <!-- Hindi Counting System -->
+ <value>hindiCounting</value>
+-<!-- Thai Letters -->
++ <!-- Thai Letters -->
+ <value>thaiLetters</value>
+-<!-- Thai Numerals -->
++ <!-- Thai Numerals -->
+ <value>thaiNumbers</value>
+-<!-- Thai Counting System -->
++ <!-- Thai Counting System -->
+ <value>thaiCounting</value>
+ </choice>
+ </list>
+@@ -15350,9 +15350,9 @@
+ <list>
+ <xs:documentation>Page Orientation</xs:documentation>
+ <choice>
+-<!-- Portrait Mode -->
++ <!-- Portrait Mode -->
+ <value>portrait</value>
+-<!-- Landscape Mode -->
++ <!-- Landscape Mode -->
+ <value>landscape</value>
+ </choice>
+ </list>
+@@ -15415,9 +15415,9 @@
+ <list>
+ <xs:documentation>Page Border Z-Order</xs:documentation>
+ <choice>
+-<!-- Page Border Ahead of Text -->
++ <!-- Page Border Ahead of Text -->
+ <value>front</value>
+-<!-- Page Border Behind Text -->
++ <!-- Page Border Behind Text -->
+ <value>back</value>
+ </choice>
+ </list>
+@@ -15426,11 +15426,11 @@
+ <list>
+ <xs:documentation>Page Border Display Options</xs:documentation>
+ <choice>
+-<!-- Display Page Border on All Pages -->
++ <!-- Display Page Border on All Pages -->
+ <value>allPages</value>
+-<!-- Display Page Border on First Page -->
++ <!-- Display Page Border on First Page -->
+ <value>firstPage</value>
+-<!-- Display Page Border on All Pages Except First -->
++ <!-- Display Page Border on All Pages Except First -->
+ <value>notFirstPage</value>
+ </choice>
+ </list>
+@@ -15439,9 +15439,9 @@
+ <list>
+ <xs:documentation>Page Border Positioning Base</xs:documentation>
+ <choice>
+-<!-- Page Border Is Positioned Relative to Page Edges -->
++ <!-- Page Border Is Positioned Relative to Page Edges -->
+ <value>page</value>
+-<!-- Page Border Is Positioned Relative to Text Extents -->
++ <!-- Page Border Is Positioned Relative to Text Extents -->
+ <value>text</value>
+ </choice>
+ </list>
+@@ -15492,15 +15492,15 @@
+ <list>
+ <xs:documentation>Chapter Separator Types</xs:documentation>
+ <choice>
+-<!-- Hyphen Chapter Separator -->
++ <!-- Hyphen Chapter Separator -->
+ <value>hyphen</value>
+-<!-- Period Chapter Separator -->
++ <!-- Period Chapter Separator -->
+ <value>period</value>
+-<!-- Colon Chapter Separator -->
++ <!-- Colon Chapter Separator -->
+ <value>colon</value>
+-<!-- Em Dash Chapter Separator -->
++ <!-- Em Dash Chapter Separator -->
+ <value>emDash</value>
+-<!-- En Dash Chapter Separator -->
++ <!-- En Dash Chapter Separator -->
+ <value>enDash</value>
+ </choice>
+ </list>
+@@ -15509,11 +15509,11 @@
+ <list>
+ <xs:documentation>Line Numbering Restart Position</xs:documentation>
+ <choice>
+-<!-- Restart Line Numbering on Each Page -->
++ <!-- Restart Line Numbering on Each Page -->
+ <value>newPage</value>
+-<!-- Restart Line Numbering for Each Section -->
++ <!-- Restart Line Numbering for Each Section -->
+ <value>newSection</value>
+-<!-- Continue Line Numbering From Previous Section -->
++ <!-- Continue Line Numbering From Previous Section -->
+ <value>continuous</value>
+ </choice>
+ </list>
+@@ -15619,13 +15619,13 @@
+ <list>
+ <xs:documentation>Vertical Alignment Type</xs:documentation>
+ <choice>
+-<!-- Align Top -->
++ <!-- Align Top -->
+ <value>top</value>
+-<!-- Align Center -->
++ <!-- Align Center -->
+ <value>center</value>
+-<!-- Vertical Justification -->
++ <!-- Vertical Justification -->
+ <value>both</value>
+-<!-- Align Bottom -->
++ <!-- Align Bottom -->
+ <value>bottom</value>
+ </choice>
+ </list>
+@@ -15640,13 +15640,13 @@
+ <list>
+ <xs:documentation>Document Grid Types</xs:documentation>
+ <choice>
+-<!-- No Document Grid -->
++ <!-- No Document Grid -->
+ <value>default</value>
+-<!-- Line Grid Only -->
++ <!-- Line Grid Only -->
+ <value>lines</value>
+-<!-- Line and Character Grid -->
++ <!-- Line and Character Grid -->
+ <value>linesAndChars</value>
+-<!-- Character Grid Only -->
++ <!-- Character Grid Only -->
+ <value>snapToChars</value>
+ </choice>
+ </list>
+@@ -15669,11 +15669,11 @@
+ <list>
+ <xs:documentation>Header or Footer Type</xs:documentation>
+ <choice>
+-<!-- Even Numbered Pages Only -->
++ <!-- Even Numbered Pages Only -->
+ <value>even</value>
+-<!-- Default Header or Footer -->
++ <!-- Default Header or Footer -->
+ <value>default</value>
+-<!-- First Page Only -->
++ <!-- First Page Only -->
+ <value>first</value>
+ </choice>
+ </list>
+@@ -15682,13 +15682,13 @@
+ <list>
+ <xs:documentation>Footnote or Endnote Type</xs:documentation>
+ <choice>
+-<!-- Normal Footnote/Endnote -->
++ <!-- Normal Footnote/Endnote -->
+ <value>normal</value>
+-<!-- Separator -->
++ <!-- Separator -->
+ <value>separator</value>
+-<!-- Continuation Separator -->
++ <!-- Continuation Separator -->
+ <value>continuationSeparator</value>
+-<!-- Continuation Notice Separator -->
++ <!-- Continuation Notice Separator -->
+ <value>continuationNotice</value>
+ </choice>
+ </list>
+@@ -15865,11 +15865,11 @@
+ <list>
+ <xs:documentation>Break Types</xs:documentation>
+ <choice>
+-<!-- Page Break -->
++ <!-- Page Break -->
+ <value>page</value>
+-<!-- Column Break -->
++ <!-- Column Break -->
+ <value>column</value>
+-<!-- Line Break -->
++ <!-- Line Break -->
+ <value>textWrapping</value>
+ </choice>
+ </list>
+@@ -15878,13 +15878,13 @@
+ <list>
+ <xs:documentation>Line Break Text Wrapping Restart Location</xs:documentation>
+ <choice>
+-<!-- Restart On Next Line -->
++ <!-- Restart On Next Line -->
+ <value>none</value>
+-<!-- Restart In Next Text Region When In Leftmost Position -->
++ <!-- Restart In Next Text Region When In Leftmost Position -->
+ <value>left</value>
+-<!-- Restart In Next Text Region When In Rightmost Position -->
++ <!-- Restart In Next Text Region When In Rightmost Position -->
+ <value>right</value>
+-<!-- Restart On Next Full Line -->
++ <!-- Restart On Next Full Line -->
+ <value>all</value>
+ </choice>
+ </list>
+@@ -15907,11 +15907,11 @@
+ <list>
+ <xs:documentation>Absolute Position Tab Alignment</xs:documentation>
+ <choice>
+-<!-- Left -->
++ <!-- Left -->
+ <value>left</value>
+-<!-- Center -->
++ <!-- Center -->
+ <value>center</value>
+-<!-- Right -->
++ <!-- Right -->
+ <value>right</value>
+ </choice>
+ </list>
+@@ -15920,9 +15920,9 @@
+ <list>
+ <xs:documentation>Absolute Position Tab Positioning Base</xs:documentation>
+ <choice>
+-<!-- Relative To Text Margins -->
++ <!-- Relative To Text Margins -->
+ <value>margin</value>
+-<!-- Relative To Indents -->
++ <!-- Relative To Indents -->
+ <value>indent</value>
+ </choice>
+ </list>
+@@ -15931,15 +15931,15 @@
+ <list>
+ <xs:documentation>Absolute Position Tab Leader Character</xs:documentation>
+ <choice>
+-<!-- No Leader Character -->
++ <!-- No Leader Character -->
+ <value>none</value>
+-<!-- Dot Leader Character -->
++ <!-- Dot Leader Character -->
+ <value>dot</value>
+-<!-- Hyphen Leader Character -->
++ <!-- Hyphen Leader Character -->
+ <value>hyphen</value>
+-<!-- Underscore Leader Character -->
++ <!-- Underscore Leader Character -->
+ <value>underscore</value>
+-<!-- Centered Dot Leader Character -->
++ <!-- Centered Dot Leader Character -->
+ <value>middleDot</value>
+ </choice>
+ </list>
+@@ -15972,13 +15972,13 @@
+ <list>
+ <xs:documentation>Proofing Error Type</xs:documentation>
+ <choice>
+-<!-- Start of Region Marked as Spelling Error -->
++ <!-- Start of Region Marked as Spelling Error -->
+ <value>spellStart</value>
+-<!-- End of Region Marked as Spelling Error -->
++ <!-- End of Region Marked as Spelling Error -->
+ <value>spellEnd</value>
+-<!-- Start of Region Marked as Grammatical Error -->
++ <!-- Start of Region Marked as Grammatical Error -->
+ <value>gramStart</value>
+-<!-- End of Region Marked as Grammatical Error -->
++ <!-- End of Region Marked as Grammatical Error -->
+ <value>gramEnd</value>
+ </choice>
+ </list>
+@@ -15993,19 +15993,19 @@
+ <list>
+ <xs:documentation>Range Permision Editing Group</xs:documentation>
+ <choice>
+-<!-- No Users Have Editing Permissions -->
++ <!-- No Users Have Editing Permissions -->
+ <value>none</value>
+-<!-- All Users Have Editing Permissions -->
++ <!-- All Users Have Editing Permissions -->
+ <value>everyone</value>
+-<!-- Administrator Group -->
++ <!-- Administrator Group -->
+ <value>administrators</value>
+-<!-- Contributors Group -->
++ <!-- Contributors Group -->
+ <value>contributors</value>
+-<!-- Editors Group -->
++ <!-- Editors Group -->
+ <value>editors</value>
+-<!-- Owners Group -->
++ <!-- Owners Group -->
+ <value>owners</value>
+-<!-- Current Group -->
++ <!-- Current Group -->
+ <value>current</value>
+ </choice>
+ </list>
+@@ -16237,11 +16237,11 @@
+ <list>
+ <xs:documentation>Font Type Hint</xs:documentation>
+ <choice>
+-<!-- High ANSI Font -->
++ <!-- High ANSI Font -->
+ <value>default</value>
+-<!-- East Asian Font -->
++ <!-- East Asian Font -->
+ <value>eastAsia</value>
+-<!-- Complex Script Font -->
++ <!-- Complex Script Font -->
+ <value>cs</value>
+ </choice>
+ </list>
+@@ -16250,21 +16250,21 @@
+ <list>
+ <xs:documentation>Theme Font</xs:documentation>
+ <choice>
+-<!-- Major East Asian Theme Font -->
++ <!-- Major East Asian Theme Font -->
+ <value>majorEastAsia</value>
+-<!-- Major Complex Script Theme Font -->
++ <!-- Major Complex Script Theme Font -->
+ <value>majorBidi</value>
+-<!-- Major ASCII Theme Font -->
++ <!-- Major ASCII Theme Font -->
+ <value>majorAscii</value>
+-<!-- Major High ANSI Theme Font -->
++ <!-- Major High ANSI Theme Font -->
+ <value>majorHAnsi</value>
+-<!-- Minor East Asian Theme Font -->
++ <!-- Minor East Asian Theme Font -->
+ <value>minorEastAsia</value>
+-<!-- Minor Complex Script Theme Font -->
++ <!-- Minor Complex Script Theme Font -->
+ <value>minorBidi</value>
+-<!-- Minor ASCII Theme Font -->
++ <!-- Minor ASCII Theme Font -->
+ <value>minorAscii</value>
+-<!-- Minor High ANSI Theme Font -->
++ <!-- Minor High ANSI Theme Font -->
+ <value>minorHAnsi</value>
+ </choice>
+ </list>
+@@ -16608,17 +16608,17 @@
+ <list>
+ <xs:documentation>Phonetic Guide Text Alignment</xs:documentation>
+ <choice>
+-<!-- Center -->
++ <!-- Center -->
+ <value>center</value>
+-<!-- Distribute All Characters -->
++ <!-- Distribute All Characters -->
+ <value>distributeLetter</value>
+-<!-- Distribute all Characters w/ Additional Space On Either Side -->
++ <!-- Distribute all Characters w/ Additional Space On Either Side -->
+ <value>distributeSpace</value>
+-<!-- Left Aligned -->
++ <!-- Left Aligned -->
+ <value>left</value>
+-<!-- Right Aligned -->
++ <!-- Right Aligned -->
+ <value>right</value>
+-<!-- Vertically Aligned to Right of Base Text -->
++ <!-- Vertically Aligned to Right of Base Text -->
+ <value>rightVertical</value>
+ </choice>
+ </list>
+@@ -16681,13 +16681,13 @@
+ <list>
+ <xs:documentation>Locking Types</xs:documentation>
+ <choice>
+-<!-- SDT Cannot Be Deleted -->
++ <!-- SDT Cannot Be Deleted -->
+ <value>sdtLocked</value>
+-<!-- Contents Cannot Be Edited At Runtime -->
++ <!-- Contents Cannot Be Edited At Runtime -->
+ <value>contentLocked</value>
+-<!-- No Locking -->
++ <!-- No Locking -->
+ <value>unlocked</value>
+-<!-- Contents Cannot Be Edited At Runtime And SDT Cannot Be Deleted -->
++ <!-- Contents Cannot Be Edited At Runtime And SDT Cannot Be Deleted -->
+ <value>sdtContentLocked</value>
+ </choice>
+ </list>
+@@ -16712,11 +16712,11 @@
+ <list>
+ <xs:documentation>Date Storage Format Types</xs:documentation>
+ <choice>
+-<!-- Same As Display -->
++ <!-- Same As Display -->
+ <value>text</value>
+-<!-- XML Schema Date Format -->
++ <!-- XML Schema Date Format -->
+ <value>date</value>
+-<!-- XML Schema DateTime Format -->
++ <!-- XML Schema DateTime Format -->
+ <value>dateTime</value>
+ </choice>
+ </list>
+@@ -16731,25 +16731,25 @@
+ <list>
+ <xs:documentation>Calendar Types</xs:documentation>
+ <choice>
+-<!-- Gregorian -->
++ <!-- Gregorian -->
+ <value>gregorian</value>
+-<!-- Hijri -->
++ <!-- Hijri -->
+ <value>hijri</value>
+-<!-- Hebrew -->
++ <!-- Hebrew -->
+ <value>hebrew</value>
+-<!-- Taiwan -->
++ <!-- Taiwan -->
+ <value>taiwan</value>
+-<!-- Japanese Emperor Era -->
++ <!-- Japanese Emperor Era -->
+ <value>japan</value>
+-<!-- Thai -->
++ <!-- Thai -->
+ <value>thai</value>
+-<!-- Korean Tangun Era -->
++ <!-- Korean Tangun Era -->
+ <value>korea</value>
+-<!-- Saka Era -->
++ <!-- Saka Era -->
+ <value>saka</value>
+-<!-- Gregorian transliterated English -->
++ <!-- Gregorian transliterated English -->
+ <value>gregorianXlitEnglish</value>
+-<!-- Gregorian transliterated French -->
++ <!-- Gregorian transliterated French -->
+ <value>gregorianXlitFrench</value>
+ </choice>
+ </list>
+@@ -17311,13 +17311,13 @@
+ <list>
+ <xs:documentation>Table Width Units</xs:documentation>
+ <choice>
+-<!-- No Width -->
++ <!-- No Width -->
+ <value>nil</value>
+-<!-- Width in Fiftieths of a Percent -->
++ <!-- Width in Fiftieths of a Percent -->
+ <value>pct</value>
+-<!-- Width in Twentieths of a Point -->
++ <!-- Width in Twentieths of a Point -->
+ <value>dxa</value>
+-<!-- Automatically Determined Width -->
++ <!-- Automatically Determined Width -->
+ <value>auto</value>
+ </choice>
+ </list>
+@@ -17431,9 +17431,9 @@
+ <list>
+ <xs:documentation>Merged Cell Type</xs:documentation>
+ <choice>
+-<!-- Continue Merged Region -->
++ <!-- Continue Merged Region -->
+ <value>continue</value>
+-<!-- Start/Restart Merged Region -->
++ <!-- Start/Restart Merged Region -->
+ <value>restart</value>
+ </choice>
+ </list>
+@@ -17550,7 +17550,7 @@
+ </define>
+ <define name="CT_Cnf">
+ <attribute name="val">
+- <text/>
++ <ref name="ST_Cnf"/>
+ <xs:documentation>Conditional Formatting Bit Mask</xs:documentation>
+ </attribute>
+ </define>
+@@ -17677,9 +17677,9 @@
+ <list>
+ <xs:documentation>Table Layout Type</xs:documentation>
+ <choice>
+-<!-- Fixed Width Table Layout -->
++ <!-- Fixed Width Table Layout -->
+ <value>fixed</value>
+-<!-- AutoFit Table Layout -->
++ <!-- AutoFit Table Layout -->
+ <value>autofit</value>
+ </choice>
+ </list>
+@@ -17694,9 +17694,9 @@
+ <list>
+ <xs:documentation>Table Overlap Setting</xs:documentation>
+ <choice>
+-<!-- Floating Table Cannot Overlap -->
++ <!-- Floating Table Cannot Overlap -->
+ <value>never</value>
+-<!-- Floating Table Can Overlap -->
++ <!-- Floating Table Can Overlap -->
+ <value>overlap</value>
+ </choice>
+ </list>
+@@ -17961,13 +17961,13 @@
+ <list>
+ <xs:documentation>Footnote Positioning Location</xs:documentation>
+ <choice>
+-<!-- Footnotes Positioned at Page Bottom -->
++ <!-- Footnotes Positioned at Page Bottom -->
+ <value>pageBottom</value>
+-<!-- Footnotes Positioned Beneath Text -->
++ <!-- Footnotes Positioned Beneath Text -->
+ <value>beneathText</value>
+-<!-- Footnotes Positioned At End of Section -->
++ <!-- Footnotes Positioned At End of Section -->
+ <value>sectEnd</value>
+-<!-- Footnotes Positioned At End of Document -->
++ <!-- Footnotes Positioned At End of Document -->
+ <value>docEnd</value>
+ </choice>
+ </list>
+@@ -17982,9 +17982,9 @@
+ <list>
+ <xs:documentation>Endnote Positioning Location</xs:documentation>
+ <choice>
+-<!-- Endnotes Positioned at End of Section -->
++ <!-- Endnotes Positioned at End of Section -->
+ <value>sectEnd</value>
+-<!-- Endnotes Positioned at End of Document -->
++ <!-- Endnotes Positioned at End of Document -->
+ <value>docEnd</value>
+ </choice>
+ </list>
+@@ -18005,11 +18005,11 @@
+ <list>
+ <xs:documentation>Footnote/Endnote Numbering Restart Locations</xs:documentation>
+ <choice>
+-<!-- Continue Numbering From Previous Section -->
++ <!-- Continue Numbering From Previous Section -->
+ <value>continuous</value>
+-<!-- Restart Numbering For Each Section -->
++ <!-- Restart Numbering For Each Section -->
+ <value>eachSect</value>
+-<!-- Restart Numbering On Each Page -->
++ <!-- Restart Numbering On Each Page -->
+ <value>eachPage</value>
+ </choice>
+ </list>
+@@ -18177,23 +18177,23 @@
+ <list>
+ <xs:documentation>Mail Merge ODSO Data Source Types</xs:documentation>
+ <choice>
+-<!-- Database Data Source -->
++ <!-- Database Data Source -->
+ <value>database</value>
+-<!-- Address Book Data Source -->
++ <!-- Address Book Data Source -->
+ <value>addressBook</value>
+-<!-- Alternate Document Format Data Source -->
++ <!-- Alternate Document Format Data Source -->
+ <value>document1</value>
+-<!-- Alternate Document Format Data Source Two -->
++ <!-- Alternate Document Format Data Source Two -->
+ <value>document2</value>
+-<!-- Text File Data Source -->
++ <!-- Text File Data Source -->
+ <value>text</value>
+-<!-- E-Mail Program Data Source -->
++ <!-- E-Mail Program Data Source -->
+ <value>email</value>
+-<!-- Native Data Souce -->
++ <!-- Native Data Souce -->
+ <value>native</value>
+-<!-- Legacy Document Format Data Source -->
++ <!-- Legacy Document Format Data Source -->
+ <value>legacy</value>
+-<!-- Aggregate Data Source -->
++ <!-- Aggregate Data Source -->
+ <value>master</value>
+ </choice>
+ </list>
+@@ -18328,27 +18328,27 @@
+ <list>
+ <xs:documentation>Target Screen Sizes for Generated Web Pages</xs:documentation>
+ <choice>
+-<!-- Optimize for 544x376 -->
++ <!-- Optimize for 544x376 -->
+ <value>544x376</value>
+-<!-- Optimize for 640x480 -->
++ <!-- Optimize for 640x480 -->
+ <value>640x480</value>
+-<!-- Optimize for 720x512 -->
++ <!-- Optimize for 720x512 -->
+ <value>720x512</value>
+-<!-- Optimize for 800x600 -->
++ <!-- Optimize for 800x600 -->
+ <value>800x600</value>
+-<!-- Optimize for 1024x768 -->
++ <!-- Optimize for 1024x768 -->
+ <value>1024x768</value>
+-<!-- Optimize for 1152x882 -->
++ <!-- Optimize for 1152x882 -->
+ <value>1152x882</value>
+-<!-- Optimize for 1152x900 -->
++ <!-- Optimize for 1152x900 -->
+ <value>1152x900</value>
+-<!-- Optimize for 1280x1024 -->
++ <!-- Optimize for 1280x1024 -->
+ <value>1280x1024</value>
+-<!-- Optimize for 1600x1200 -->
++ <!-- Optimize for 1600x1200 -->
+ <value>1600x1200</value>
+-<!-- Optimize for 1800x1440 -->
++ <!-- Optimize for 1800x1440 -->
+ <value>1800x1440</value>
+-<!-- Optimize for 1920x1200 -->
++ <!-- Optimize for 1920x1200 -->
+ <value>1920x1200</value>
+ </choice>
+ </list>
+@@ -18719,11 +18719,11 @@
+ <list>
+ <xs:documentation>Character-Level Whitespace Compression Settings</xs:documentation>
+ <choice>
+-<!-- Do Not Compress Whitespace -->
++ <!-- Do Not Compress Whitespace -->
+ <value>doNotCompress</value>
+-<!-- Compress Whitespace From Punctuation Characters -->
++ <!-- Compress Whitespace From Punctuation Characters -->
+ <value>compressPunctuation</value>
+-<!-- Compress Whitespace From Both Japanese Kana And Punctuation Characters -->
++ <!-- Compress Whitespace From Both Japanese Kana And Punctuation Characters -->
+ <value>compressPunctuationAndJapaneseKana</value>
+ </choice>
+ </list>
+@@ -18777,29 +18777,29 @@
+ <list>
+ <xs:documentation>Theme Color Reference</xs:documentation>
+ <choice>
+-<!-- Dark 1 Theme Color Reference -->
++ <!-- Dark 1 Theme Color Reference -->
+ <value>dark1</value>
+-<!-- Light 1 Theme Color Reference -->
++ <!-- Light 1 Theme Color Reference -->
+ <value>light1</value>
+-<!-- Dark 2 Theme Color Reference -->
++ <!-- Dark 2 Theme Color Reference -->
+ <value>dark2</value>
+-<!-- Light 2 Theme Color Reference -->
++ <!-- Light 2 Theme Color Reference -->
+ <value>light2</value>
+-<!-- Accent 1 Theme Color Reference -->
++ <!-- Accent 1 Theme Color Reference -->
+ <value>accent1</value>
+-<!-- Accent 2 Theme Color Reference -->
++ <!-- Accent 2 Theme Color Reference -->
+ <value>accent2</value>
+-<!-- Accent 3 Theme Color Reference -->
++ <!-- Accent 3 Theme Color Reference -->
+ <value>accent3</value>
+-<!-- Accent4 Theme Color Reference -->
++ <!-- Accent4 Theme Color Reference -->
+ <value>accent4</value>
+-<!-- Accent5 Theme Color Reference -->
++ <!-- Accent5 Theme Color Reference -->
+ <value>accent5</value>
+-<!-- Accent 6 Theme Color Reference -->
++ <!-- Accent 6 Theme Color Reference -->
+ <value>accent6</value>
+-<!-- Hyperlink Theme Color Reference -->
++ <!-- Hyperlink Theme Color Reference -->
+ <value>hyperlink</value>
+-<!-- Followed Hyperlink Theme Color Reference -->
++ <!-- Followed Hyperlink Theme Color Reference -->
+ <value>followedHyperlink</value>
+ </choice>
+ </list>
+@@ -19445,11 +19445,11 @@
+ <list>
+ <xs:documentation>Frame Scrollbar Visibility</xs:documentation>
+ <choice>
+-<!-- Always Show Scrollbar -->
++ <!-- Always Show Scrollbar -->
+ <value>on</value>
+-<!-- Never Show Scrollbar -->
++ <!-- Never Show Scrollbar -->
+ <value>off</value>
+-<!-- Automatically Show Scrollbar As Needed -->
++ <!-- Automatically Show Scrollbar As Needed -->
+ <value>auto</value>
+ </choice>
+ </list>
+@@ -19506,11 +19506,11 @@
+ <list>
+ <xs:documentation>Frameset Layout Order</xs:documentation>
+ <choice>
+-<!-- Stack Frames Vertically -->
++ <!-- Stack Frames Vertically -->
+ <value>rows</value>
+-<!-- Stack Frames Horizontally -->
++ <!-- Stack Frames Horizontally -->
+ <value>cols</value>
+-<!-- Do Not Stack Frames -->
++ <!-- Do Not Stack Frames -->
+ <value>none</value>
+ </choice>
+ </list>
+@@ -19587,11 +19587,11 @@
+ <list>
+ <xs:documentation>Content Between Numbering Symbol and Paragraph Text</xs:documentation>
+ <choice>
+-<!-- Tab Between Numbering and Text -->
++ <!-- Tab Between Numbering and Text -->
+ <value>tab</value>
+-<!-- Space Between Numbering and Text -->
++ <!-- Space Between Numbering and Text -->
+ <value>space</value>
+-<!-- Nothing Between Numbering and Text -->
++ <!-- Nothing Between Numbering and Text -->
+ <value>nothing</value>
+ </choice>
+ </list>
+@@ -19720,11 +19720,11 @@
+ <list>
+ <xs:documentation>Numbering Definition Type</xs:documentation>
+ <choice>
+-<!-- Single Level Numbering Definition -->
++ <!-- Single Level Numbering Definition -->
+ <value>singleLevel</value>
+-<!-- Multilevel Numbering Definition -->
++ <!-- Multilevel Numbering Definition -->
+ <value>multilevel</value>
+-<!-- Hybrid Multilevel Numbering Definition -->
++ <!-- Hybrid Multilevel Numbering Definition -->
+ <value>hybridMultilevel</value>
+ </choice>
+ </list>
+@@ -19838,45 +19838,45 @@
+ <list>
+ <xs:documentation>Conditional Table Style Formatting Types</xs:documentation>
+ <choice>
+-<!-- Whole table formatting -->
++ <!-- Whole table formatting -->
+ <value>wholeTable</value>
+-<!-- First Row Conditional Formatting -->
++ <!-- First Row Conditional Formatting -->
+ <value>firstRow</value>
+-<!-- Last table row formatting -->
++ <!-- Last table row formatting -->
+ <value>lastRow</value>
+-<!-- First Column Conditional Formatting -->
++ <!-- First Column Conditional Formatting -->
+ <value>firstCol</value>
+-<!-- Last table column formatting -->
++ <!-- Last table column formatting -->
+ <value>lastCol</value>
+-<!-- Banded Column Conditional Formatting -->
++ <!-- Banded Column Conditional Formatting -->
+ <value>band1Vert</value>
+-<!-- Even Column Stripe Conditional Formatting -->
++ <!-- Even Column Stripe Conditional Formatting -->
+ <value>band2Vert</value>
+-<!-- Banded Row Conditional Formatting -->
++ <!-- Banded Row Conditional Formatting -->
+ <value>band1Horz</value>
+-<!-- Even Row Stripe Conditional Formatting -->
++ <!-- Even Row Stripe Conditional Formatting -->
+ <value>band2Horz</value>
+-<!-- Top right table cell formatting -->
++ <!-- Top right table cell formatting -->
+ <value>neCell</value>
+-<!-- Top left table cell formatting -->
++ <!-- Top left table cell formatting -->
+ <value>nwCell</value>
+-<!-- Bottom right table cell formatting -->
++ <!-- Bottom right table cell formatting -->
+ <value>seCell</value>
+-<!-- Bottom left table cell formatting -->
++ <!-- Bottom left table cell formatting -->
+ <value>swCell</value>
+ </choice>
+ </list>
+ </define>
+- <define name="CT_TblStylePr">
++ <define name="CT_Style_tblStylePr">
+ <group>
+ <optional>
+ <element name="pPr">
+- <ref name="CT_PPr"/>
++ <ref name="CT_PPrBase"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="rPr">
+- <ref name="CT_RPr"/>
++ <ref name="EG_RPrBase"/>
+ </element>
+ </optional>
+ <optional>
+@@ -19886,31 +19886,40 @@
+ </optional>
+ <optional>
+ <element name="trPr">
+- <ref name="CT_TrPr"/>
++ <ref name="CT_TrPrBase"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="tcPr">
+- <ref name="CT_TcPr"/>
++ <ref name="CT_TcPrBase"/>
+ </element>
+ </optional>
+ </group>
+ <attribute name="type">
+- <text/>
++ <ref name="ST_TblStyleOverrideType"/>
+ <xs:documentation>Table Style Conditional Formatting Type</xs:documentation>
+ </attribute>
+ </define>
++ <define name="CT_Style_TblPr">
++ <ref name="CT_TblPrBase"/>
++ </define>
++ <define name="CT_Style_TrPr">
++ <ref name="CT_TrPrBase"/>
++ </define>
++ <define name="CT_Style_TcPr">
++ <ref name="CT_TcPrBase"/>
++ </define>
+ <define name="ST_StyleType">
+ <list>
+ <xs:documentation>Style Types</xs:documentation>
+ <choice>
+-<!-- Paragraph Style -->
++ <!-- Paragraph Style -->
+ <value>paragraph</value>
+-<!-- Character Style -->
++ <!-- Character Style -->
+ <value>character</value>
+-<!-- Table Style -->
++ <!-- Table Style -->
+ <value>table</value>
+-<!-- Numbering Style -->
++ <!-- Numbering Style -->
+ <value>numbering</value>
+ </choice>
+ </list>
+@@ -19999,12 +20008,12 @@
+ </optional>
+ <optional>
+ <element name="pPr">
+- <ref name="CT_PPr"/>
++ <ref name="CT_PPrBase"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="rPr">
+- <ref name="CT_RPr"/>
++ <ref name="EG_RPrBase"/>
+ </element>
+ </optional>
+ <optional>
+@@ -20014,17 +20023,17 @@
+ </optional>
+ <optional>
+ <element name="trPr">
+- <ref name="CT_TrPr"/>
++ <ref name="CT_TrPrBase"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="tcPr">
+- <ref name="CT_TcPr"/>
++ <ref name="CT_TcPrBase"/>
+ </element>
+ </optional>
+ <zeroOrMore>
+ <element name="tblStylePr">
+- <ref name="CT_TblStylePr"/>
++ <ref name="CT_Style_tblStylePr"/>
+ </element>
+ </zeroOrMore>
+ </group>
+@@ -20143,17 +20152,17 @@
+ <list>
+ <xs:documentation>Font Family Value</xs:documentation>
+ <choice>
+-<!-- Novelty Font -->
++ <!-- Novelty Font -->
+ <value>decorative</value>
+-<!-- Monospace Font -->
++ <!-- Monospace Font -->
+ <value>modern</value>
+-<!-- Proportional Font With Serifs -->
++ <!-- Proportional Font With Serifs -->
+ <value>roman</value>
+-<!-- Script Font -->
++ <!-- Script Font -->
+ <value>script</value>
+-<!-- Proportional Font Without Serifs -->
++ <!-- Proportional Font Without Serifs -->
+ <value>swiss</value>
+-<!-- No Font Family -->
++ <!-- No Font Family -->
+ <value>auto</value>
+ </choice>
+ </list>
+@@ -20168,11 +20177,11 @@
+ <list>
+ <xs:documentation>Font Pitch Value</xs:documentation>
+ <choice>
+-<!-- Fixed Width -->
++ <!-- Fixed Width -->
+ <value>fixed</value>
+-<!-- Proportional Width -->
++ <!-- Proportional Width -->
+ <value>variable</value>
+-<!-- Default -->
++ <!-- Default -->
+ <value>default</value>
+ </choice>
+ </list>
+@@ -20517,39 +20526,39 @@
+ <list>
+ <xs:documentation>Theme Color</xs:documentation>
+ <choice>
+-<!-- Dark 1 Theme Color -->
++ <!-- Dark 1 Theme Color -->
+ <value>dark1</value>
+-<!-- Light 1 Theme Color -->
++ <!-- Light 1 Theme Color -->
+ <value>light1</value>
+-<!-- Dark 2 Theme Color -->
++ <!-- Dark 2 Theme Color -->
+ <value>dark2</value>
+-<!-- Light 2 Theme Color -->
++ <!-- Light 2 Theme Color -->
+ <value>light2</value>
+-<!-- Accent 1 Theme Color -->
++ <!-- Accent 1 Theme Color -->
+ <value>accent1</value>
+-<!-- Accent 2 Theme Color -->
++ <!-- Accent 2 Theme Color -->
+ <value>accent2</value>
+-<!-- Accent 3 Theme Color -->
++ <!-- Accent 3 Theme Color -->
+ <value>accent3</value>
+-<!-- Accent 4 Theme Color -->
++ <!-- Accent 4 Theme Color -->
+ <value>accent4</value>
+-<!-- Accent 5 Theme Color -->
++ <!-- Accent 5 Theme Color -->
+ <value>accent5</value>
+-<!-- Accent 6 Theme Color -->
++ <!-- Accent 6 Theme Color -->
+ <value>accent6</value>
+-<!-- Hyperlink Theme Color -->
++ <!-- Hyperlink Theme Color -->
+ <value>hyperlink</value>
+-<!-- Followed Hyperlink Theme Color -->
++ <!-- Followed Hyperlink Theme Color -->
+ <value>followedHyperlink</value>
+-<!-- No Theme Color -->
++ <!-- No Theme Color -->
+ <value>none</value>
+-<!-- Background 1 Theme Color -->
++ <!-- Background 1 Theme Color -->
+ <value>background1</value>
+-<!-- Text 1 Theme Color -->
++ <!-- Text 1 Theme Color -->
+ <value>text1</value>
+-<!-- Background 2 Theme Color -->
++ <!-- Background 2 Theme Color -->
+ <value>background2</value>
+-<!-- Text 2 Theme Color -->
++ <!-- Text 2 Theme Color -->
+ <value>text2</value>
+ </choice>
+ </list>
+@@ -20558,11 +20567,11 @@
+ <list>
+ <xs:documentation>Insertion Behavior Types</xs:documentation>
+ <choice>
+-<!-- Insert Content At Specified Location -->
++ <!-- Insert Content At Specified Location -->
+ <value>content</value>
+-<!-- Ensure Entry Is In New Paragraph -->
++ <!-- Ensure Entry Is In New Paragraph -->
+ <value>p</value>
+-<!-- Ensure Entry Is On New Page -->
++ <!-- Ensure Entry Is On New Page -->
+ <value>pg</value>
+ </choice>
+ </list>
+@@ -20584,19 +20593,19 @@
+ <list>
+ <xs:documentation>Entry Types</xs:documentation>
+ <choice>
+-<!-- No Type -->
++ <!-- No Type -->
+ <value>none</value>
+-<!-- Normal -->
++ <!-- Normal -->
+ <value>normal</value>
+-<!-- Automatically Replace Name With Content -->
++ <!-- Automatically Replace Name With Content -->
+ <value>autoExp</value>
+-<!-- AutoText User Interface Entry -->
++ <!-- AutoText User Interface Entry -->
+ <value>toolbar</value>
+-<!-- AutoCorrect Entry -->
++ <!-- AutoCorrect Entry -->
+ <value>speller</value>
+-<!-- Form Field Help Text -->
++ <!-- Form Field Help Text -->
+ <value>formFld</value>
+-<!-- Structured Document Tag Placeholder Text -->
++ <!-- Structured Document Tag Placeholder Text -->
+ <value>bbPlcHdr</value>
+ </choice>
+ </list>
+@@ -20624,81 +20633,81 @@
+ <list>
+ <xs:documentation>Entry Gallery Types</xs:documentation>
+ <choice>
+-<!-- Structured Document Tag Placeholder Text Gallery -->
++ <!-- Structured Document Tag Placeholder Text Gallery -->
+ <value>placeholder</value>
+-<!-- All Galleries -->
++ <!-- All Galleries -->
+ <value>any</value>
+-<!-- No Gallery Classification -->
++ <!-- No Gallery Classification -->
+ <value>default</value>
+-<!-- Document Parts Gallery -->
++ <!-- Document Parts Gallery -->
+ <value>docParts</value>
+-<!-- Cover Page Gallery -->
++ <!-- Cover Page Gallery -->
+ <value>coverPg</value>
+-<!-- Equations Gallery -->
++ <!-- Equations Gallery -->
+ <value>eq</value>
+-<!-- Footers Gallery -->
++ <!-- Footers Gallery -->
+ <value>ftrs</value>
+-<!-- Headers Gallery -->
++ <!-- Headers Gallery -->
+ <value>hdrs</value>
+-<!-- Page Numbers Gallery -->
++ <!-- Page Numbers Gallery -->
+ <value>pgNum</value>
+-<!-- Table Gallery -->
++ <!-- Table Gallery -->
+ <value>tbls</value>
+-<!-- Watermark Gallery -->
++ <!-- Watermark Gallery -->
+ <value>watermarks</value>
+-<!-- AutoText Gallery -->
++ <!-- AutoText Gallery -->
+ <value>autoTxt</value>
+-<!-- Text Box Gallery -->
++ <!-- Text Box Gallery -->
+ <value>txtBox</value>
+-<!-- Page Numbers At Top Gallery -->
++ <!-- Page Numbers At Top Gallery -->
+ <value>pgNumT</value>
+-<!-- Page Numbers At Bottom Gallery -->
++ <!-- Page Numbers At Bottom Gallery -->
+ <value>pgNumB</value>
+-<!-- Page Numbers At Margins Gallery -->
++ <!-- Page Numbers At Margins Gallery -->
+ <value>pgNumMargins</value>
+-<!-- Table of Contents Gallery -->
++ <!-- Table of Contents Gallery -->
+ <value>tblOfContents</value>
+-<!-- Bibliography Gallery -->
++ <!-- Bibliography Gallery -->
+ <value>bib</value>
+-<!-- Custom Quick Parts Gallery -->
++ <!-- Custom Quick Parts Gallery -->
+ <value>custQuickParts</value>
+-<!-- Custom Cover Page Gallery -->
++ <!-- Custom Cover Page Gallery -->
+ <value>custCoverPg</value>
+-<!-- Custom Equation Gallery -->
++ <!-- Custom Equation Gallery -->
+ <value>custEq</value>
+-<!-- Custom Footer Gallery -->
++ <!-- Custom Footer Gallery -->
+ <value>custFtrs</value>
+-<!-- Custom Header Gallery -->
++ <!-- Custom Header Gallery -->
+ <value>custHdrs</value>
+-<!-- Custom Page Number Gallery -->
++ <!-- Custom Page Number Gallery -->
+ <value>custPgNum</value>
+-<!-- Custom Table Gallery -->
++ <!-- Custom Table Gallery -->
+ <value>custTbls</value>
+-<!-- Custom Watermark Gallery -->
++ <!-- Custom Watermark Gallery -->
+ <value>custWatermarks</value>
+-<!-- Custom AutoText Gallery -->
++ <!-- Custom AutoText Gallery -->
+ <value>custAutoTxt</value>
+-<!-- Custom Text Box Gallery -->
++ <!-- Custom Text Box Gallery -->
+ <value>custTxtBox</value>
+-<!-- Custom Page Number At Top Gallery -->
++ <!-- Custom Page Number At Top Gallery -->
+ <value>custPgNumT</value>
+-<!-- Custom Page Number At Bottom Gallery -->
++ <!-- Custom Page Number At Bottom Gallery -->
+ <value>custPgNumB</value>
+-<!-- Custom Page Number At Margins Gallery -->
++ <!-- Custom Page Number At Margins Gallery -->
+ <value>custPgNumMargins</value>
+-<!-- Custom Table of Contents Gallery -->
++ <!-- Custom Table of Contents Gallery -->
+ <value>custTblOfContents</value>
+-<!-- Custom Bibliography Gallery -->
++ <!-- Custom Bibliography Gallery -->
+ <value>custBib</value>
+-<!-- Custom 1 Gallery -->
++ <!-- Custom 1 Gallery -->
+ <value>custom1</value>
+-<!-- Custom 2 Gallery -->
++ <!-- Custom 2 Gallery -->
+ <value>custom2</value>
+-<!-- Custom 3 Gallery -->
++ <!-- Custom 3 Gallery -->
+ <value>custom3</value>
+-<!-- Custom 4 Gallery -->
++ <!-- Custom 4 Gallery -->
+ <value>custom4</value>
+-<!-- Custom 5 Gallery -->
++ <!-- Custom 5 Gallery -->
+ <value>custom5</value>
+ </choice>
+ </list>
+@@ -20804,13 +20813,13 @@
+ <list>
+ <xs:documentation>Automatic Caption Positioning Values</xs:documentation>
+ <choice>
+-<!-- Position Caption Above Object -->
++ <!-- Position Caption Above Object -->
+ <value>above</value>
+-<!-- Position Caption Below Object -->
++ <!-- Position Caption Below Object -->
+ <value>below</value>
+-<!-- Position Caption Left Of Object -->
++ <!-- Position Caption Left Of Object -->
+ <value>left</value>
+-<!-- Position Caption Right Of Object -->
++ <!-- Position Caption Right Of Object -->
+ <value>right</value>
+ </choice>
+ </list>
+@@ -22863,20 +22872,20 @@
+ <element name="num" tokenid="ooxml:CT_Numbering_num"/>
+ <element name="numIdMacAtCleanup" tokenid="ooxml:CT_Numbering_numIdMacAtCleanup"/>
+ </resource>
+- <resource name="ST_TblStyleOverrideType" resource="List" generated="yes">
+- <value name="wholeTable" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_wholeTable">wholeTable</value>
+- <value name="firstRow" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_firstRow">firstRow</value>
+- <value name="lastRow" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_lastRow">lastRow</value>
+- <value name="firstCol" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_firstCol">firstCol</value>
+- <value name="lastCol" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_lastCol">lastCol</value>
+- <value name="band1Vert" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_band1Vert">band1Vert</value>
+- <value name="band2Vert" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_band2Vert">band2Vert</value>
+- <value name="band1Horz" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_band1Horz">band1Horz</value>
+- <value name="band2Horz" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_band2Horz">band2Horz</value>
+- <value name="neCell" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_neCell">neCell</value>
+- <value name="nwCell" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_nwCell">nwCell</value>
+- <value name="seCell" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_seCell">seCell</value>
+- <value name="swCell" tokenid="ooxml:Value_wordprocessingml_ST_TblStyleOverrideType_swCell">swCell</value>
++ <resource name="ST_TblStyleOverrideType" resource="List">
++ <value tokenid="1">wholeTable</value>
++ <value tokenid="2">firstRow</value>
++ <value tokenid="3">lastRow</value>
++ <value tokenid="4">firstCol</value>
++ <value tokenid="5">lastCol</value>
++ <value tokenid="6">band1Vert</value>
++ <value tokenid="7">band2Vert</value>
++ <value tokenid="8">band1Horz</value>
++ <value tokenid="9">band2Horz</value>
++ <value tokenid="10">neCell</value>
++ <value tokenid="11">nwCell</value>
++ <value tokenid="12">seCell</value>
++ <value tokenid="13">swCell</value>
+ </resource>
+ <resource name="ST_StyleType" resource="List">
+ <value tokenid="1">paragraph</value>
+@@ -22884,6 +22893,14 @@
+ <value tokenid="3">table</value>
+ <value tokenid="4">numbering</value>
+ </resource>
++ <resource name="CT_Style_tblStylePr" resource="Properties">
++ <element name="pPr" tokenid="ooxml:CT_PPrBase"/>
++ <element name="rPr" tokenid="ooxml:EG_RPrBase"/>
++ <element name="tblPr" tokenid="ooxml:CT_TblPrBase"/>
++ <element name="trPr" tokenid="ooxml:CT_TrPrBase"/>
++ <element name="tcPr" tokenid="ooxml:CT_TcPrBase"/>
++ <attribute name="type" tokenid="ooxml:CT_TblStyleOverrideType"/>
++ </resource>
+ <resource name="CT_Style" resource="Properties">
+ <element name="name" tokenid="ooxml:CT_Style_name"/>
+ <element name="aliases" tokenid="ooxml:CT_Style_aliases"/>
+@@ -22971,7 +22988,7 @@
+ </resource>
+ <resource name="CT_Body" resource="Stream">
+ <action name="start" action="startSectionGroup"/>
+-<!--
++ <!--
+ <action name="start" action="footnoteSeparator"/>
+ <action name="start" action="footnoteCont"/>
+ <action name="start" action="endnoteSeparator"/>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]