20#include <config_wasm_strip.h>
35#include <com/sun/star/container/XNameAccess.hpp>
36#include <com/sun/star/io/XInputStream.hpp>
37#include <com/sun/star/document/XBinaryStreamResolver.hpp>
38#include <com/sun/star/document/XEmbeddedObjectResolver.hpp>
39#include <com/sun/star/text/XTextContent.hpp>
40#include <com/sun/star/xml/sax/SAXInvalidCharacterException.hpp>
41#include <com/sun/star/uri/XUriReferenceFactory.hpp>
42#include <com/sun/star/uri/UriReferenceFactory.hpp>
43#include <com/sun/star/util/XNumberFormatsSupplier.hpp>
44#include <com/sun/star/util/MeasureUnit.hpp>
62#include <com/sun/star/document/XEventsSupplier.hpp>
63#include <com/sun/star/document/XViewDataSupplier.hpp>
64#include <com/sun/star/frame/XModel.hpp>
65#include <com/sun/star/frame/XModule.hpp>
76#include <com/sun/star/style/XStyle.hpp>
77#include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
78#include <com/sun/star/lang/ServiceNotRegisteredException.hpp>
79#include <com/sun/star/lang/XMultiServiceFactory.hpp>
80#include <com/sun/star/beans/PropertyAttribute.hpp>
92#include <com/sun/star/document/XDocumentProperties.hpp>
93#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
94#include <com/sun/star/document/XMLOasisBasicExporter.hpp>
95#include <com/sun/star/embed/XEncryptionProtectedSource2.hpp>
96#include <com/sun/star/document/XGraphicStorageHandler.hpp>
97#include <com/sun/star/rdf/XMetadatable.hpp>
140 explicit SettingsExportFacade(
SvXMLExport& i_rExport )
141 :m_rExport( i_rExport )
145 virtual ~SettingsExportFacade()
150 const OUString& i_rValue )
override;
155 virtual void EndElement(
const bool i_bIgnoreWhitespace )
override;
157 virtual void Characters(
const OUString& i_rCharacters )
override;
159 virtual css::uno::Reference< css::uno::XComponentContext >
181 m_rExport.StartElement( sElementName,
true );
185void SettingsExportFacade::EndElement(
const bool i_bIgnoreWhitespace )
188 m_rExport.EndElement( sElementName, i_bIgnoreWhitespace );
192void SettingsExportFacade::Characters(
const OUString& i_rCharacters )
194 m_rExport.GetDocHandler()->characters( i_rCharacters );
197Reference< XComponentContext > SettingsExportFacade::GetComponentContext()
const
199 return m_rExport.getComponentContext();
204class SvXMLExportEventListener :
public cppu::WeakImplHelper<
205 css::lang::XEventListener >
211 explicit SvXMLExportEventListener(
SvXMLExport* pExport);
214 virtual void SAL_CALL disposing(
const lang::EventObject& rEventObject)
override;
219SvXMLExportEventListener::SvXMLExportEventListener(
SvXMLExport* pTempExport)
220 : pExport(pTempExport)
225void SAL_CALL SvXMLExportEventListener::disposing(
const lang::EventObject& )
229 pExport->DisposingModel();
269 size_t nSep = rOrigFileName.find(
':');
270 if( nSep != std::u16string_view::npos )
278 mbOutlineStyleAsNormalListStyle( false ),
280 mbExportTextNumberElement( false ),
281 mbNullDateInitialized( false )
412 uno::Reference<frame::XModule>
const xModule(
mxModel, uno::UNO_QUERY);
413 bool const isBaseForm(xModule.is() &&
414 xModule->getIdentifier() ==
"com.sun.star.sdb.FormDesign");
420 SAL_INFO(
"xmloff.core",
"tdf#138209 force form export to ODF 1.2");
425 SAL_INFO(
"xmloff.core",
"tdf#138209 force form export to ODF 1.2");
437 const uno::Reference< uno::XComponentContext >& xContext,
438 OUString implementationName,
439 sal_Int16
const eDefaultMeasureUnit ,
446 maUnitConv(xContext, util::MeasureUnit::
MM_100TH, eDefaultMeasureUnit, getSaneDefaultVersion()),
448 mnExportFlags( nExportFlags ),
451 mbSaveLinkedSections(true),
452 mbAutoStylesCollected(false)
454 SAL_WARN_IF( !xContext.is(),
"xmloff.core",
"got no service manager" );
459 const css::uno::Reference< css::uno::XComponentContext >& xContext,
460 OUString implementationName,
462 sal_Int16
const eDefaultMeasureUnit ,
463 const uno::Reference< xml::sax::XDocumentHandler > & rHandler)
467 mxExtHandler( rHandler,
uno::UNO_QUERY ),
469 msOrigFileName(
std::move( fileName )),
472 maUnitConv(xContext, util::MeasureUnit::
MM_100TH, eDefaultMeasureUnit, getSaneDefaultVersion()),
477 mbSaveLinkedSections(true),
478 mbAutoStylesCollected(false)
480 SAL_WARN_IF( !xContext.is(),
"xmloff.core",
"got no service manager" );
489 const css::uno::Reference< css::uno::XComponentContext >& xContext,
490 OUString implementationName,
492 const uno::Reference< xml::sax::XDocumentHandler > & rHandler,
493 const Reference< XModel >& rModel,
500 mxExtHandler( rHandler,
uno::UNO_QUERY ),
501 mxNumberFormatsSupplier (rModel,
uno::UNO_QUERY),
503 msOrigFileName(
std::move( fileName )),
506 maUnitConv( xContext,
509 getSaneDefaultVersion()),
511 mnExportFlags( nExportFlag ),
514 mbSaveLinkedSections(true),
515 mbAutoStylesCollected(false)
517 SAL_WARN_IF(!xContext.is(),
"xmloff.core",
"got no service manager" );
535 uno::Reference< beans::XPropertySetInfo > xPropertySetInfo =
mxExportInfo->getPropertySetInfo();
536 if (xPropertySetInfo.is())
543 if (xPropertySetInfo->hasPropertyByName(sProgressMax) &&
544 xPropertySetInfo->hasPropertyByName(sProgressCurrent))
551 if (xPropertySetInfo->hasPropertyByName(sRepeat))
557 if (xPropertySetInfo->hasPropertyByName(sWrittenNumberFormats))
575 mxModel.set( xDoc, UNO_QUERY );
577 throw lang::IllegalArgumentException();
592 uno::Reference< beans::XPropertySetInfo > xPropertySetInfo =
mxExportInfo->getPropertySetInfo();
593 if (xPropertySetInfo.is())
596 if (xPropertySetInfo->hasPropertyByName(sUsePrettyPrinting))
599 if (::cppu::any2bool(aAny))
608 if (xPropertySetInfo->hasPropertyByName(sWrittenNumberFormats))
611 uno::Sequence<sal_Int32> aWasUsed;
612 if(aAny >>= aWasUsed)
625 Reference < XInterface > xIfc =
626 xFactory->createInstance(
"com.sun.star.xml.NamespaceMap");
629 Reference< XNameAccess > xNamespaceMap( xIfc, UNO_QUERY );
630 if( xNamespaceMap.is() )
632 const Sequence< OUString > aPrefixes( xNamespaceMap->getElementNames() );
633 for( OUString
const &
prefix : aPrefixes )
636 if( xNamespaceMap->getByName(
prefix ) >>=
aURL )
642 catch(
const css::uno::Exception&)
658 Reference<XInterface> xValue;
662 uno::Reference<task::XStatusIndicator> xTmpStatus( xValue, UNO_QUERY );
663 if ( xTmpStatus.is() )
667 uno::Reference<document::XGraphicStorageHandler> xGraphicStorageHandler(xValue, UNO_QUERY);
668 if (xGraphicStorageHandler.is())
672 uno::Reference<document::XEmbeddedObjectResolver> xTmpObjectResolver(
674 if ( xTmpObjectResolver.is() )
678 uno::Reference<xml::sax::XDocumentHandler> xTmpDocHandler(
680 if( xTmpDocHandler.is() )
690 uno::Reference<beans::XPropertySet> xTmpPropertySet(
692 if( xTmpPropertySet.is() )
699 uno::Reference< beans::XPropertySetInfo > xPropertySetInfo =
701 static constexpr OUStringLiteral sBaseURI =
u"BaseURI";
702 if( xPropertySetInfo->hasPropertyByName(sBaseURI) )
710 static constexpr OUStringLiteral sStreamRelPath =
u"StreamRelPath";
711 if( xPropertySetInfo->hasPropertyByName(sStreamRelPath) )
717 static constexpr OUStringLiteral sStreamName =
u"StreamName";
718 if( xPropertySetInfo->hasPropertyByName(sStreamName) )
726 if( !sRelPath.isEmpty() )
734 static constexpr OUStringLiteral sOutlineStyleAsNormalListStyle(
735 u"OutlineStyleAsNormalListStyle" );
736 if( xPropertySetInfo->hasPropertyByName( sOutlineStyleAsNormalListStyle ) )
739 aAny >>=
mpImpl->mbOutlineStyleAsNormalListStyle;
742 OUString sTargetStorage(
"TargetStorage" );
743 if( xPropertySetInfo->hasPropertyByName( sTargetStorage ) )
746 static constexpr OUStringLiteral sExportTextNumberElement(
747 u"ExportTextNumberElement" );
748 if( xPropertySetInfo->hasPropertyByName( sExportTextNumberElement ) )
751 aAny >>=
mpImpl->mbExportTextNumberElement;
771 for(
const auto& rProp : aDescriptor )
773 const OUString& rPropName = rProp.Name;
774 const Any& rValue = rProp.Value;
776 if ( rPropName ==
"FileName" )
781 else if ( rPropName ==
"FilterName" )
789 for(
const auto& rProp : aDescriptor )
791 const OUString& rPropName = rProp.Name;
792 const Any& rValue = rProp.Value;
794 if (rPropName ==
"SourceShellID")
796 if (!(rValue >>=
mpImpl->maSrcShellID))
799 else if (rPropName ==
"DestinationShellID")
801 if (!(rValue >>=
mpImpl->maDestShellID))
804 else if( rPropName ==
"ImageFilter")
814 catch(
const uno::Exception& e)
819 OUString
sMessage(
ex.getValueTypeName() +
": \"" + e.Message +
"\"");
822 const char* pContext =
typeid(*e.Context).
name();
823 sMessage +=
" (context: " + OUString::createFromAscii(pContext) +
" )";
826 Sequence<OUString>(),
sMessage,
nullptr );
836 Sequence<OUString> aEmptySeq;
863 return {
"com.sun.star.document.ExportFilter",
"com.sun.star.xml.XMLExportFilter" };
869 static constexpr OUStringLiteral aPreferredPrefix(
u"gen");
879 while( nKey != USHRT_MAX )
881 sPrefix = aPreferredPrefix + OUString::number(++
n);
885 if (
mpImpl->mNamespaceMaps.empty()
886 || (
mpImpl->mNamespaceMaps.top().second !=
mpImpl->mDepth))
890 mpImpl->mNamespaceMaps.push(
908 const OUString& rValue )
915 const OUString& rValue )
928 const OUString& rValue )
942 const css::lang::Locale& rLocale,
bool bWriteEmpty )
944 if (rLocale.Variant.isEmpty())
953 if (bWriteEmpty || !rLocale.Language.isEmpty())
955 if (bWriteEmpty || !rLocale.Country.isEmpty())
966 const LanguageTag& rLanguageTag,
bool bWriteEmpty )
975 if (bWriteEmpty || !rLanguageTag.
getCountry().isEmpty())
987 OUString aLanguage, aScript, aCountry;
989 if (!aLanguage.isEmpty())
994 if (!aCountry.isEmpty())
1003 mxAttrList->AppendAttributeList( xAttrList );
1014 SAL_WARN_IF(
mxAttrList->getLength(),
"xmloff.core",
"XMLExport::CheckAttrList: list is not empty" );
1029 ::std::vector< SettingsGroup > aSettings;
1030 sal_Int32 nSettingsCount = 0;
1033 uno::Sequence< beans::PropertyValue > aViewSettings;
1036 nSettingsCount += aViewSettings.getLength();
1039 uno::Sequence<beans::PropertyValue> aConfigSettings;
1042 nSettingsCount += aConfigSettings.getLength();
1049 nSettingsCount != 0,
1053 SettingsExportFacade aSettingsExportContext( *
this );
1056 for (
auto const& settings : aSettings)
1058 if ( !settings.aSettings.hasElements() )
1061 const OUString& sSettingsName(
GetXMLToken( settings.eGroupName ) );
1084 static constexpr OUStringLiteral sStyleNames(
u"StyleNames" );
1085 static constexpr OUStringLiteral sStyleFamilies(
u"StyleFamilies" );
1086 uno::Reference< beans::XPropertySetInfo > xPropertySetInfo =
mxExportInfo->getPropertySetInfo();
1087 if ( xPropertySetInfo->hasPropertyByName( sStyleNames ) && xPropertySetInfo->hasPropertyByName( sStyleFamilies ) )
1089 Sequence<sal_Int32> aStyleFamilies;
1090 Sequence<OUString> aStyleNames;
1094 Any( aStyleFamilies ) );
1101 OUString sStyleNames(
"StyleNames" );
1102 OUString sStyleFamilies(
"StyleFamilies" );
1105 &&
mxExportInfo->getPropertySetInfo()->hasPropertyByName( sStyleNames )
1106 &&
mxExportInfo->getPropertySetInfo()->hasPropertyByName( sStyleFamilies ) )
1108 Sequence<sal_Int32> aStyleFamilies;
1109 mxExportInfo->getPropertyValue( sStyleFamilies ) >>= aStyleFamilies;
1110 Sequence<OUString> aStyleNames;
1111 mxExportInfo->getPropertyValue( sStyleNames ) >>= aStyleNames;
1180 OUString(
"http://FIXME") );
1187 uno::Reference< embed::XEncryptionProtectedSource2 > xEncr(
mpImpl->mxTargetStorage, uno::UNO_QUERY);
1189 if (xEncr.is() && xEncr->hasEncryptionData() &&
mxExtHandler.is())
1197 char const* pVersion(
nullptr);
1209 assert(!
"xmloff::SvXMLExport::exportDoc(), unexpected odf default version!");
1216 bool bOwnGraphicResolver =
false;
1217 bool bOwnEmbeddedResolver =
false;
1235 xFactory->createInstance(
"com.sun.star.document.ExportEmbeddedObjectResolver" ), UNO_QUERY);
1239 catch(
const css::uno::Exception&)
1248 static ::comphelper::PropertyMapEntry
const aInfoMap[] =
1250 { OUString(
"Class"), 0,
1252 PropertyAttribute::MAYBEVOID, 0},
1254 Reference< XPropertySet > xConvPropSet(
1255 ::comphelper::GenericPropertySet_CreateInstance(
1256 new ::comphelper::PropertySetInfo( aInfoMap ) ) );
1258 xConvPropSet->setPropertyValue(
"Class",
Any(
GetXMLToken( eClass )) );
1260 Reference< XPropertySet > xPropSet =
1268 Reference< xml::sax::XDocumentHandler > xTmpDocHandler(
1269 m_xContext->getServiceManager()->createInstanceWithArgumentsAndContext(
"com.sun.star.comp.Oasis2OOoTransformer", aArgs,
m_xContext),
1271 SAL_WARN_IF(!xTmpDocHandler.is(),
"xmloff.core",
"can't instantiate OASIS transformer component" );
1272 if( xTmpDocHandler.is() )
1278 catch(
const css::uno::Exception&)
1295 while( USHRT_MAX !=
nPos )
1308 OUString::createFromAscii(pVersion) );
1344 OUString aTmp =
"application/vnd.oasis.opendocument." +
GetXMLToken( eClass );
1386 if( bOwnGraphicResolver )
1392 if( bOwnEmbeddedResolver )
1408 return mpImpl->maSrcShellID;
1413 return mpImpl->maDestShellID;
1419 Reference< XDocumentPropertiesSupplier > xDocPropsSupplier(
mxModel,
1421 if (xDocPropsSupplier.is()) {
1422 Reference<XDocumentProperties> xDocProps(
1423 xDocPropsSupplier->getDocumentProperties());
1424 if (!xDocProps.is())
throw;
1426 xDocProps->setGenerator(generator);
1458 Reference< beans::XPropertySet > xPSet(
mxModel, UNO_QUERY );
1460 xPSet->getPropertyValue(
"BasicLibraries");
1464 Reference< document::XXMLBasicExporter > xExporter = document::XMLOasisBasicExporter::createWithHandler(
m_xContext, xHdl );
1466 xExporter->setSourceDocument(
mxModel );
1467 Sequence< PropertyValue > aMediaDesc( 0 );
1468 xExporter->filter( aMediaDesc );
1472 Reference< document::XEventsSupplier > xEvents(
GetModel(), UNO_QUERY );
1484 uno::Reference< lang::XMultiServiceFactory > xFact(
GetModel(), uno::UNO_QUERY );
1491 uno::Reference< container::XNameAccess > xGradient( xFact->createInstance(
"com.sun.star.drawing.GradientTable"), uno::UNO_QUERY );
1492 if( xGradient.is() )
1496 if( xGradient->hasElements() )
1498 const uno::Sequence< OUString > aNamesSeq ( xGradient->getElementNames() );
1499 for(
const OUString& rStrName : aNamesSeq )
1503 uno::Any aValue = xGradient->getByName( rStrName );
1505 aGradientStyle.
exportXML( rStrName, aValue );
1507 catch(
const container::NoSuchElementException&)
1514 catch(
const lang::ServiceNotRegisteredException&)
1521 uno::Reference< container::XNameAccess > xHatch( xFact->createInstance(
"com.sun.star.drawing.HatchTable"), uno::UNO_QUERY );
1526 if( xHatch->hasElements() )
1528 const uno::Sequence< OUString > aNamesSeq ( xHatch->getElementNames() );
1529 for(
const OUString& rStrName : aNamesSeq )
1533 uno::Any aValue = xHatch->getByName( rStrName );
1535 aHatchStyle.
exportXML( rStrName, aValue );
1537 catch(
const container::NoSuchElementException&)
1543 catch(
const lang::ServiceNotRegisteredException&)
1550 uno::Reference< container::XNameAccess > xBitmap( xFact->createInstance(
"com.sun.star.drawing.BitmapTable"), uno::UNO_QUERY );
1553 if( xBitmap->hasElements() )
1555 const uno::Sequence< OUString > aNamesSeq ( xBitmap->getElementNames() );
1556 for(
const OUString& rStrName : aNamesSeq )
1560 uno::Any aValue = xBitmap->getByName( rStrName );
1564 catch(
const container::NoSuchElementException&)
1571 catch(
const lang::ServiceNotRegisteredException&)
1578 uno::Reference< container::XNameAccess > xTransGradient( xFact->createInstance(
"com.sun.star.drawing.TransparencyGradientTable"), uno::UNO_QUERY );
1579 if( xTransGradient.is() )
1583 if( xTransGradient->hasElements() )
1585 const uno::Sequence< OUString > aNamesSeq ( xTransGradient->getElementNames() );
1586 for(
const OUString& rStrName : aNamesSeq )
1590 uno::Any aValue = xTransGradient->getByName( rStrName );
1592 aTransGradientstyle.
exportXML( rStrName, aValue );
1594 catch(
const container::NoSuchElementException&)
1601 catch(
const lang::ServiceNotRegisteredException&)
1608 uno::Reference< container::XNameAccess > xMarker( xFact->createInstance(
"com.sun.star.drawing.MarkerTable"), uno::UNO_QUERY );
1613 if( xMarker->hasElements() )
1615 const uno::Sequence< OUString > aNamesSeq ( xMarker->getElementNames() );
1616 for(
const OUString& rStrName : aNamesSeq )
1620 uno::Any aValue = xMarker->getByName( rStrName );
1622 aMarkerStyle.
exportXML( rStrName, aValue );
1624 catch(
const container::NoSuchElementException&)
1631 catch(
const lang::ServiceNotRegisteredException&)
1638 uno::Reference< container::XNameAccess > xDashes( xFact->createInstance(
"com.sun.star.drawing.DashTable"), uno::UNO_QUERY );
1643 if( xDashes->hasElements() )
1645 const uno::Sequence< OUString > aNamesSeq ( xDashes->getElementNames() );
1646 for(
const OUString& rStrName : aNamesSeq )
1650 uno::Any aValue = xDashes->getByName( rStrName );
1652 aDashStyle.
exportXML( rStrName, aValue );
1654 catch(
const container::NoSuchElementException&)
1661 catch(
const lang::ServiceNotRegisteredException&)
1695#if !ENABLE_WASM_STRIP_CHART
1715 uno::Reference<document::XViewDataSupplier> xViewDataSupplier(
GetModel(), uno::UNO_QUERY);
1716 if(!xViewDataSupplier.is())
1719 uno::Reference<container::XIndexAccess> xIndexAccess;
1720 xViewDataSupplier->setViewData( xIndexAccess );
1723 static constexpr OUStringLiteral sNoPreviewData =
u"NoPreviewData";
1725 xIndexAccess = xViewDataSupplier->getViewData();
1729 if(xIndexAccess.is() && xIndexAccess->hasElements() )
1731 sal_Int32
nCount = xIndexAccess->getCount();
1734 aAny = xIndexAccess->getByIndex(
i);
1735 uno::Sequence<beans::PropertyValue> aProps;
1736 if( aAny >>= aProps )
1738 if( aProps.hasElements() )
1749 sal_Int32 nOldLength(rProps.getLength());
1750 rProps.realloc(nOldLength + 1);
1770 Reference<style::XStyleFamiliesSupplier> xStyleFamiliesSupplier(
GetModel(), uno::UNO_QUERY);
1771 if (!xStyleFamiliesSupplier.is())
1774 Reference<container::XNameAccess> xStylesFamilies(xStyleFamiliesSupplier->getStyleFamilies());
1775 if (!xStylesFamilies.is())
1778 Reference<container::XIndexAccess> xCellStyles(xStylesFamilies->getByName(
"CellStyles"), uno::UNO_QUERY);
1779 if (!xCellStyles.is())
1782 sal_Int32
nCount(xCellStyles->getCount());
1785 Reference<style::XStyle> xStyle(xCellStyles->getByIndex(
i), uno::UNO_QUERY);
1786 if (bFromUsedStyles && !xStyle->isInUse())
1789 Reference<beans::XPropertySet> xCellProperties(xStyle, uno::UNO_QUERY);
1790 if (xCellProperties.is())
1792 sal_Int32 nNumberFormat = 0;
1793 if (xCellProperties->getPropertyValue(
"NumberFormat") >>= nNumberFormat)
1835 ?
mpNumExport->ForceSystemLanguage( nFormat ) : nFormat;
1845 if (!aOriginURL.isEmpty())
1865 if (xInputStream.is())
1881 if (xInputStream.is())
1920 Any aAny = xNA->getByName( rEmbeddedObjectURL );
1921 Reference < XInputStream > xIn;
1935 const OUString& rName,
1936 bool *pEncoded )
const
1949 uno::Reference< beans::XPropertySetInfo > xPropertySetInfo =
mxExportInfo->getPropertySetInfo();
1950 if (xPropertySetInfo.is())
1956 if (xPropertySetInfo->hasPropertyByName(sProgressMax) &&
1957 xPropertySetInfo->hasPropertyByName(sProgressCurrent) &&
1958 xPropertySetInfo->hasPropertyByName(sProgressRange))
1961 sal_Int32 nProgressMax(0);
1962 sal_Int32 nProgressCurrent(0);
1963 sal_Int32 nProgressRange(0);
1965 if (aAny >>= nProgressRange)
1968 if (aAny >>= nProgressMax)
1970 aAny =
mxExportInfo->getPropertyValue(sProgressCurrent);
1971 if (aAny >>= nProgressCurrent)
1974 if (xPropertySetInfo->hasPropertyByName(sRepeat))
1980 SAL_WARN(
"xmloff.core",
"why is it no boolean?" );
1997 mpEventExport->AddHandler(
"StarBasic", std::make_unique<XMLStarBasicExportHandler>());
1998 mpEventExport->AddHandler(
"Script", std::make_unique<XMLScriptExportHandler>());
2018 OUString sFilterService;
2020 Reference < lang::XServiceInfo > xServiceInfo( rComp, UNO_QUERY );
2021 if( xServiceInfo.is() )
2023 for (
const auto& [sModelService, sMatchingFilterService] :
aServiceMap)
2025 if( xServiceInfo->supportsService( sModelService ) )
2027 sFilterService = sMatchingFilterService;
2033 SAL_WARN_IF( !sFilterService.getLength(),
"xmloff.core",
"no export filter for own object" );
2035 if( sFilterService.isEmpty() )
2038 Reference < XDocumentHandler > xHdl =
2041 Sequence < Any > aArgs{
Any(xHdl) };
2042 Reference< document::XExporter > xExporter(
2043 m_xContext->getServiceManager()->createInstanceWithArgumentsAndContext(sFilterService, aArgs,
m_xContext),
2045 SAL_WARN_IF( !xExporter.is(),
"xmloff.core",
"can't instantiate export filter component for own object" );
2046 if( !xExporter.is() )
2049 xExporter->setSourceDocument( rComp );
2051 Reference<XFilter> xFilter( xExporter, UNO_QUERY );
2053 Sequence < PropertyValue > aMediaDesc( 0 );
2054 xFilter->filter( aMediaDesc );
2059 OUString sValue( rValue );
2062 uno::Reference< uri::XUriReference > xUriRef;
2063 if(!sValue.isEmpty() && sValue[0] !=
'#')
2067 xUriRef =
mpImpl->mxUriReferenceFactory->parse( rValue );
2068 if( xUriRef.is() && !xUriRef->isAbsolute() )
2072 bool bWasAbsolute =
false;
2076 catch(
const uno::Exception&)
2083 if( xUriRef->getScheme() ==
mpImpl->msPackageURIScheme )
2093 bool bIgnWSOutside )
2100 bool bIgnWSOutside )
2110 catch (
const SAXInvalidCharacterException& e)
2112 Sequence<OUString> aPars { rName };
2115 catch (
const SAXException& e)
2117 Sequence<OUString> aPars { rName };
2119 aPars, e.Message,
nullptr );
2135 catch (
const SAXInvalidCharacterException& e)
2137 Sequence<OUString> aPars { rChars };
2140 catch (
const SAXException& e)
2142 Sequence<OUString> aPars { rChars };
2144 aPars, e.Message,
nullptr );
2161 if (!
mpImpl->mNamespaceMaps.empty() &&
2162 (
mpImpl->mNamespaceMaps.top().second ==
mpImpl->mDepth))
2165 mpImpl->mNamespaceMaps.pop();
2168 (
mpImpl->mNamespaceMaps.top().second >=
mpImpl->mDepth),
"xmloff.core",
"SvXMLExport: NamespaceMaps corrupted");
2179 catch (
const SAXException& e)
2181 Sequence<OUString> aPars { rName };
2183 aPars, e.Message,
nullptr );
2199 catch (
const SAXException& e)
2202 {}, e.Message, nullptr );
2208 const Sequence<OUString>& rMsgParams,
2209 const OUString& rExceptionMessage,
2210 const Reference<XLocator>& rLocator )
2213 static std::mutex
aMutex;
2214 std::scoped_lock aGuard(aMutex);
2229 mpXMLErrors->AddRecord( nId, rMsgParams, rExceptionMessage, rLocator );
2234 const Sequence<OUString>& rMsgParams)
2236 SetError( nId, rMsgParams,
"",
nullptr );
2250 return mpImpl->maInterfaceToIdentifierMapper;
2256 return mpImpl->mbOutlineStyleAsNormalListStyle;
2261 return mpImpl->mxTargetStorage;
2266 if (
mpImpl->m_oOverrideODFVersion)
2268 return *
mpImpl->m_oOverrideODFVersion;
2275 sal_uInt16
const nLegacyPrefix, OUString
const& rValue)
2298 const uno::Reference<rdf::XMetadatable> xMeta(i_xIfc,
2304 const beans::StringPair mdref( xMeta->getMetadataReference() );
2305 if ( mdref.Second.isEmpty() )
2308 const OUString streamName =
mpImpl->mStreamName;
2309 if ( !streamName.isEmpty() )
2311 if ( streamName == mdref.First )
2317 SAL_WARN(
"xmloff.core",
"SvXMLExport::AddAttributeXmlId: invalid stream name");
2328 if ( mdref.First ==
"content.xml" )
2334 SAL_INFO(
"xmloff.core",
"SvXMLExport::AddAttributeXmlId: no stream name given: dropping styles.xml xml:id");
2341 uno::Reference<text::XTextContent>
const & i_xTextContent)
2350 const uno::Reference<rdf::XMetadatable> xMeta(
2351 i_xTextContent, uno::UNO_QUERY);
2352 if (!xMeta.is() || xMeta->getMetadataReference().Second.isEmpty())
2357 if (!
mpImpl->mpRDFaHelper)
2359 mpImpl->mpRDFaHelper.reset( new ::xmloff::RDFaExportHelper(*
this) );
2361 mpImpl->mpRDFaHelper->AddRDFa(xMeta);
2366 return mpImpl->mbExportTextNumberElement;
2372 if (!
mpImpl->mbNullDateInitialized)
2375 return mpImpl->mbNullDateInitialized;
2384 const sal_uInt16 nPrefixKey,
2385 const OUString& rLName,
2386 const bool bIgnoreWhitespaceOutside )
2394 sal_uInt16 nPrefixKey,
2399 , mbIgnoreWhitespaceInside( bIWSInside )
2400 , mbDoSomething( true )
2402 const OUString sLName( OUString::createFromAscii( pLName ) );
2408 sal_uInt16 nPrefixKey,
2409 const OUString& rLName,
2413 , mbIgnoreWhitespaceInside( bIWSInside )
2414 , mbDoSomething( true )
2421 sal_uInt16 nPrefixKey,
2426 , mbIgnoreWhitespaceInside( bIWSInside )
2427 , mbDoSomething( true )
2435 sal_uInt16 nPrefixKey,
2440 , mbIgnoreWhitespaceInside( bIWSInside )
2441 , mbDoSomething( bDoSth )
2449 const OUString& rQName,
2453 , mbIgnoreWhitespaceInside( bIWSInside )
2454 , mbDoSomething( true )
css::uno::Reference< css::frame::XModel2 > mxModel
constexpr OUStringLiteral XML_PROGRESSRANGE
constexpr OUStringLiteral XML_PROGRESSMAX
constexpr OUStringLiteral XML_PROGRESSCURRENT
constexpr OUStringLiteral XML_PROGRESSREPEAT
Reference< XPropertySet > PropertySetMerger_CreateInstance(const Reference< XPropertySet > &rPropSet1, const Reference< XPropertySet > &rPropSet2) noexcept
const uno::Reference< uno::XComponentContext > m_xContext
TStyleElements m_aElements
RequestPriorityClass meClass
const XMLEventNameTranslation aStandardEventTable[]
a translation table for the events defined in the XEventsSupplier service (implemented in XMLEventExp...
constexpr OUStringLiteral XML_EXPORT_FILTER_MATH
constexpr OUStringLiteral XML_EXPORT_FILTER_WRITER
constexpr OUStringLiteral XML_EXPORT_FILTER_IMPRESS
constexpr OUStringLiteral XML_EXPORT_FILTER_DRAW
constexpr OUStringLiteral XML_EXPORT_FILTER_CALC
constexpr OUStringLiteral XML_EXPORT_FILTER_CHART
OUString getOriginURL() const
OUString GetMainURL(DecodeMechanism eMechanism, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8) const
INetURLObject smartRel2Abs(OUString const &rTheRelURIRef, bool &rWasAbsolute, bool bIgnoreFragment=false, EncodeMechanism eMechanism=EncodeMechanism::WasEncoded, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8, bool bRelativeNonURIs=false, FSysStyle eStyle=FSysStyle::Detect) const
bool insertName(std::u16string_view rTheName, bool bAppendFinalSlash=false, sal_Int32 nIndex=LAST_SEGMENT, EncodeMechanism eMechanism=EncodeMechanism::WasEncoded, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8)
static OUString GetRelURL(std::u16string_view rTheBaseURIRef, OUString const &rTheAbsURIRef, EncodeMechanism eEncodeMechanism=EncodeMechanism::WasEncoded, DecodeMechanism eDecodeMechanism=DecodeMechanism::ToIUri, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8, FSysStyle eStyle=FSysStyle::Detect)
bool isSystemLocale() const
OUString getLanguage() const
OUString getScript() const
const OUString & getBcp47(bool bResolveSystem=true) const
OUString getCountry() const
void getIsoLanguageScriptCountry(OUString &rLanguage, OUString &rScript, OUString &rCountry) const
With this class you can export a <chart:chart> element containing its data as <table:table> element o...
const bool mbIgnoreWhitespaceInside
SvXMLElementExport(SvXMLExport &rExp, sal_uInt16 nPrefix, const char *pName, bool bIgnWSOutside, bool bIgnWSInside)
SAL_DLLPRIVATE void StartElement(const sal_uInt16 nPrefix, const OUString &rName, const bool bIgnoreWhitespaceOutside)
OUString mStreamName
name of stream in package, e.g., "content.xml"
bool mbExportTextNumberElement
::std::stack< ::std::pair< std::unique_ptr< SvXMLNamespaceMap >, tools::Long > > mNamespaceMaps
stack of backed up namespace maps long: depth at which namespace map has been backed up into the stac...
uno::Reference< embed::XStorage > mxTargetStorage
void SetSchemeOf(std::u16string_view rOrigFileName)
bool mbOutlineStyleAsNormalListStyle
::std::unique_ptr< ::xmloff::RDFaExportHelper > mpRDFaHelper
std::optional< SvtSaveOptions::ODFSaneDefaultVersion > m_oOverrideODFVersion
tools::Long mDepth
counts depth (number of open elements/start tags)
OUString msPackageURIScheme
::comphelper::UnoInterfaceToUniqueIdentifierMapper maInterfaceToIdentifierMapper
uno::Reference< uri::XUriReferenceFactory > mxUriReferenceFactory
bool mbNullDateInitialized
virtual void GetViewSettings(css::uno::Sequence< css::beans::PropertyValue > &aProps)
const SvXMLNamespaceMap & GetNamespaceMap() const
css::uno::Reference< css::document::XEmbeddedObjectResolver > mxEmbeddedResolver
std::unique_ptr< SvXMLExport_Impl > mpImpl
SAL_DLLPRIVATE void ImplExportMasterStyles()
ProgressBarHelper * GetProgressBarHelper()
virtual void DisposingModel()
OUString const & GetDestinationShellID() const
char const * GetODFVersionAttributeValue() const
returns value of ODF version attribute
css::uno::Reference< css::frame::XModel > mxModel
::comphelper::UnoInterfaceToUniqueIdentifierMapper & getInterfaceToIdentifierMapper()
SAL_DLLPRIVATE void InitCtor_()
virtual XMLFontAutoStylePool * CreateFontAutoStylePool()
void SetError(sal_Int32 nId, const css::uno::Sequence< OUString > &rMsgParams, const OUString &rExceptionMessage, const css::uno::Reference< css::xml::sax::XLocator > &rLocator)
Record an error condition that occurred during export.
void GetViewSettingsAndViews(css::uno::Sequence< css::beans::PropertyValue > &rProps)
OUString const & GetSourceShellID() const
virtual ErrCode exportDoc(enum ::xmloff::token::XMLTokenEnum eClass=::xmloff::token::XML_TOKEN_INVALID)
virtual void SAL_CALL initialize(const css::uno::Sequence< css::uno::Any > &aArguments) override
bool exportTextNumberElement() const
css::uno::Reference< css::xml::sax::XExtendedDocumentHandler > mxExtHandler
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() final override
virtual OUString SAL_CALL getName() override
OUString EnsureNamespace(OUString const &i_rNamespace)
ensures that the given namespace is in scope at the next started element.
std::unique_ptr< ProgressBarHelper > mpProgressBarHelper
virtual void ExportStyles_(bool bUsed)
Override this method to export the content of <style:styles>.
OUString GetRelativeReference(const OUString &rValue)
std::unique_ptr< XMLErrors > mpXMLErrors
OUString m_implementationName
void AddAttributeXmlId(css::uno::Reference< css::uno::XInterface > const &i_xIfc)
add xml:id attribute (for RDF metadata)
void AddAttributeList(const css::uno::Reference< css::xml::sax::XAttributeList > &xAttrList)
XMLEventExport & GetEventExport()
get Event export, with handlers for script types "None" and "StarBasic" already registered; other han...
void StartElement(sal_uInt16 nPrefix, enum ::xmloff::token::XMLTokenEnum eName, bool bIgnWSOutside)
virtual OUString SAL_CALL getImplementationName() final override
void AddAttribute(sal_uInt16 nPrefix, const OUString &rName, const OUString &rValue)
void Characters(const OUString &rChars)
SAL_DLLPRIVATE void ImplExportSettings()
css::uno::Reference< css::xml::sax::XDocumentHandler > mxHandler
std::unique_ptr< XMLEventExport > mpEventExport
SvXMLExportFlags getExportFlags() const
bool GetGraphicMimeTypeFromStream(css::uno::Reference< css::graphic::XGraphic > const &rxGraphic, OUString &rOutMimeType)
virtual void exportAnnotationMeta(const css::uno::Reference< css::drawing::XShape > &xShape)
void collectDataStyles(bool bFromUsedStyles)
SvXMLNamespaceMap & GetNamespaceMap_()
virtual void ExportContent_()=0
Override this method to export the content of <office:body>.
OUString AddEmbeddedObject(const OUString &rEmbeddedObjectURL)
sal_Int32 dataStyleForceSystemLanguage(sal_Int32 nFormat) const
SvXMLUnitConverter maUnitConv
rtl::Reference< comphelper::AttributeList > mxAttrList
virtual void exportDataStyles()
const css::uno::Reference< css::frame::XModel > & GetModel() const
virtual sal_Bool SAL_CALL filter(const css::uno::Sequence< css::beans::PropertyValue > &aDescriptor) override
virtual SvXMLAutoStylePoolP * CreateAutoStylePool()
virtual sal_Int32 GetDocumentSpecificSettings(::std::vector< SettingsGroup > &_out_rSettings)
returns the current document settings
SchXMLExportHelper * CreateChartExport()
enum ::xmloff::token::XMLTokenEnum meClass
rtl::Reference< SvXMLAutoStylePoolP > mxAutoStylePool
void SAL_DLLPRIVATE AddAttributeIdLegacy(sal_uInt16 const nLegacyPrefix, OUString const &rValue)
add xml:id and legacy namespace id
virtual void ExportMeta_()
Override this method to export the content of <office:meta>.
virtual void SAL_CALL cancel() override
virtual OUString getDataStyleName(const sal_Int32 nNumberFormat, bool bTimeFormat=false) const
virtual XMLPageExport * CreatePageExport()
virtual void ExportFontDecls_()
Override this method to export the font declarations The default implementation will export the conte...
virtual ~SvXMLExport() override
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) final override
css::uno::Reference< css::document::XGraphicStorageHandler > mxGraphicStorageHandler
css::uno::Reference< css::uno::XComponentContext > m_xContext
css::uno::Reference< css::beans::XPropertySet > mxExportInfo
SAL_DLLPRIVATE void DetermineModelType_()
SAL_DLLPRIVATE void ImplExportMeta()
css::uno::Reference< css::xml::sax::XAttributeList > GetXAttrList() const
virtual void ExportAutoStyles_()=0
Override this method to export the contents of <style:auto-styles>.
SvtSaveOptions::ODFSaneDefaultVersion getSaneDefaultVersion() const
returns the deterministic version for odf export
void IgnorableWhitespace()
void addChaffWhenEncryptedStorage()
virtual void exportAutoDataStyles()
SAL_DLLPRIVATE void ImplExportStyles()
std::unique_ptr< XMLImageMapExport > mpImageMapExport
css::uno::Reference< css::task::XStatusIndicator > mxStatusIndicator
virtual void SAL_CALL setSourceDocument(const css::uno::Reference< css::lang::XComponent > &xDoc) override
std::unique_ptr< SvXMLNamespaceMap > mpNamespaceMap
rtl::Reference< SvXMLAutoStylePoolP > const & GetAutoStylePool()
OUString EncodeStyleName(const OUString &rName, bool *pEncoded=nullptr) const
bool AddEmbeddedXGraphicAsBase64(css::uno::Reference< css::graphic::XGraphic > const &rxGraphic)
void SetDocHandler(const css::uno::Reference< css::xml::sax::XDocumentHandler > &rHandler)
css::uno::Reference< css::embed::XStorage > const & GetTargetStorage() const
virtual void SetBodyAttributes()
virtual void SAL_CALL setName(const OUString &aName) override
virtual void ExportScripts_()
Override this method to export the content of <office:scripts>.
bool writeOutlineStyleAsNormalListStyle() const
virtual void addDataStyle(const sal_Int32 nNumberFormat, bool bTimeFormat=false)
XMLImageMapExport & GetImageMapExport()
get the export for image maps
virtual void collectAutoStyles()
virtual XMLTextParagraphExport * CreateTextParagraphExport()
OUString const & GetImageFilterName() const
Get clamped mimetype for image export (empty if none)
void ExportEmbeddedOwnObject(css::uno::Reference< css::lang::XComponent > const &rComp)
SvtModuleOptions::EFactory meModelType
rtl::Reference< XMLFontAutoStylePool > mxFontAutoStylePool
css::uno::Reference< css::lang::XEventListener > mxEventListener
rtl::Reference< xmloff::OFormLayerXMLExport > mxFormExport
virtual void ExportMasterStyles_()=0
Override this method to export the contents of <style:master-styles>.
void AddLanguageTagAttributes(sal_uInt16 nPrefix, sal_uInt16 nPrefixRfc, const css::lang::Locale &rLocale, bool bWriteEmpty)
Add language tag attributes, deciding which are necessary.
const SvXMLUnitConverter & GetMM100UnitConverter() const
SvXMLExportFlags mnExportFlags
bool AddEmbeddedObjectAsBase64(const OUString &rEmbeddedObjectURL)
virtual XMLShapeExport * CreateShapeExport()
SvXMLErrorFlags mnErrorFlags
void AddAttributesRDFa(css::uno::Reference< css::text::XTextContent > const &i_xTextContent)
add RDFa attributes for a metadatable text content
void EndElement(sal_uInt16 nPrefix, enum ::xmloff::token::XMLTokenEnum eName, bool bIgnWSInside)
css::uno::Reference< css::util::XNumberFormatsSupplier > mxNumberFormatsSupplier
xmloff::OFormLayerXMLExport * CreateFormExport()
SAL_DLLPRIVATE void ImplExportContent()
SvXMLExport(const css::uno::Reference< css::uno::XComponentContext > &xContext, OUString implementationName, sal_Int16 const eDefaultMeasureUnit, const enum ::xmloff::token::XMLTokenEnum eClass, SvXMLExportFlags nExportFlag)
OUString AddEmbeddedXGraphic(css::uno::Reference< css::graphic::XGraphic > const &rxGraphic, OUString &rOutMimeType, OUString const &rRequestedName=OUString())
bool SetNullDateOnUnitConverter()
set null date from model to unit converter, if not already done
SAL_DLLPRIVATE void ImplExportAutoStyles()
virtual void GetConfigurationSettings(css::uno::Sequence< css::beans::PropertyValue > &aProps)
std::unique_ptr< SvXMLNumFmtExport > mpNumExport
OUString GetQNameByKey(sal_uInt16 nKey, const OUString &rLocalName, bool bCache=true) const
sal_uInt16 GetKeyByPrefix(const OUString &rPrefix) const
sal_uInt16 Add(const OUString &rPrefix, const OUString &rName, sal_uInt16 nKey=XML_NAMESPACE_UNKNOWN)
const OUString & GetPrefixByKey(sal_uInt16 nKey) const
the SvXMLTypeConverter converts values of various types from their internal representation to the tex...
OUString encodeStyleName(const OUString &rName, bool *pEncoded=nullptr) const
bool setNullDate(const css::uno::Reference< css::frame::XModel > &xModel)
get the Null Date of the XModel and set it to the UnitConverter
void overrideSaneDefaultVersion(SvtSaveOptions::ODFSaneDefaultVersion const)
static EFactory ClassifyFactoryByModel(const css::uno::Reference< css::frame::XModel > &xModel)
bool exportOfficeBinaryDataElement(const css::uno::Reference< css::io::XInputStream > &rIn)
void exportXML(const OUString &rStrName, const css::uno::Any &rValue)
The XMLErrors is used to collect all errors and warnings that occur for appropriate processing.
Export instances of EventsSupplier services.
void Export(css::uno::Reference< css::document::XEventsSupplier > const &xAccess, bool bUseWhitespace=true)
export the events (calls EventExport::Export(Reference<XNameAccess>) )
void exportXML(const OUString &rStrName, const css::uno::Any &rValue)
void exportXML(const OUString &rStrName, const css::uno::Any &rValue)
Export an ImageMap as defined by service com.sun.star.image.ImageMap to XML.
void exportXML(const OUString &rStrName, const css::uno::Any &rValue)
void exportAllSettings(const css::uno::Sequence< css::beans::PropertyValue > &aProps, const OUString &rName) const
void exportXML(const OUString &rStrName, const css::uno::Any &rValue)
static OUString GetMimeTypeForImageStream(const css::uno::Reference< css::io::XInputStream > &xInputStream)
css::uno::Type const & get()
static OUString GetGeneratorString()
virtual void StartElement(enum ::xmloff::token::XMLTokenEnum i_eName)=0
virtual css::uno::Reference< css::uno::XComponentContext > GetComponentContext() const =0
virtual void AddAttribute(enum ::xmloff::token::XMLTokenEnum i_eName, const OUString &i_rValue)=0
virtual void EndElement(const bool i_bIgnoreWhitespace)=0
virtual void Characters(const OUString &i_rCharacters)=0
Reference< XSingleServiceFactory > xFactory
Sequence< PropertyValue > aArguments
#define SAL_WARN_IF(condition, area, stream)
#define SAL_WARN(area, stream)
#define SAL_INFO(area, stream)
XMLOFF_DLLPUBLIC void exportXML(OUString const &rStrName, css::uno::Any const &rValue, SvXMLExport &rExport)
Reference< XComponentContext > getProcessComponentContext()
css::uno::Reference< css::uno::XCurrentContext > NewFlagContext(const OUString &sName)
css::beans::PropertyValue makePropertyValue(const OUString &rName, T &&rValue)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
Any SAL_CALL getCaughtException()
css::uno::Reference< css::deployment::XPackageRegistry > create(css::uno::Reference< css::deployment::XPackageRegistry > const &xRootRegistry, OUString const &context, OUString const &cachePath, css::uno::Reference< css::uno::XComponentContext > const &xComponentContext)
constexpr OUStringLiteral implementationName
const sal_uInt16 XML_NAMESPACE_UNKNOWN
Handling of tokens in XML:
XMLTokenEnum
The enumeration of all XML tokens.
@ XML_CONFIGURATION_SETTINGS
const OUString & GetXMLToken(enum XMLTokenEnum eToken)
return the OUString representation for eToken
UNOTOOLS_DLLPUBLIC SvtSaveOptions::ODFSaneDefaultVersion GetODFSaneDefaultVersion()
rtl::Reference< FragmentHandler > mxHandler
#define XMLERROR_FLAG_ERROR
#define XMLERROR_FLAG_SEVERE
#define XMLERROR_FLAG_WARNING
static void lcl_AddGrddl(SvXMLExport const &rExport, const SvXMLExportFlags)
constexpr OUStringLiteral XML_USEPRETTYPRINTING
const std::pair< OUString, OUString > aServiceMap[]
constexpr OUStringLiteral XML_MODEL_SERVICE_CHART
constexpr OUStringLiteral XML_MODEL_SERVICE_WRITER
constexpr OUStringLiteral XML_MODEL_SERVICE_IMPRESS
constexpr OUStringLiteral XML_MODEL_SERVICE_MATH
constexpr OUStringLiteral XML_EMBEDDEDOBJECT_URL_BASE
constexpr OUStringLiteral XML_EMBEDDEDOBJECTGRAPHIC_URL_BASE
constexpr OUStringLiteral XML_MODEL_SERVICE_CALC
constexpr OUStringLiteral XML_MODEL_SERVICE_DRAW
constexpr sal_uInt16 XML_NAMESPACE_DRAW
constexpr sal_uInt16 XML_NAMESPACE_XHTML
constexpr sal_uInt16 XML_NAMESPACE_FIELD
constexpr sal_uInt16 XML_NAMESPACE_TABLE_EXT
constexpr sal_uInt16 XML_NAMESPACE_META
constexpr sal_uInt16 XML_NAMESPACE_DC
constexpr sal_uInt16 XML_NAMESPACE_REPORT
constexpr sal_uInt16 XML_NAMESPACE_XLINK
constexpr sal_uInt16 XML_NAMESPACE_OOOC
constexpr sal_uInt16 XML_NAMESPACE_XSD
constexpr sal_uInt16 XML_NAMESPACE_SVG
constexpr sal_uInt16 XML_NAMESPACE_TEXT
constexpr sal_uInt16 XML_NAMESPACE_FORM
constexpr sal_uInt16 XML_NAMESPACE_XFORMS
constexpr sal_uInt16 XML_NAMESPACE_DR3D
constexpr sal_uInt16 XML_NAMESPACE_CHART
constexpr sal_uInt16 XML_NAMESPACE_XML
constexpr sal_uInt16 XML_NAMESPACE_DOM
constexpr sal_uInt16 XML_NAMESPACE_OF
constexpr sal_uInt16 XML_NAMESPACE_TABLE
constexpr sal_uInt16 XML_NAMESPACE_CALC_EXT
constexpr sal_uInt16 XML_NAMESPACE_OOOW
constexpr sal_uInt16 XML_NAMESPACE_CSS3TEXT
constexpr sal_uInt16 XML_NAMESPACE_FORMX
constexpr sal_uInt16 XML_NAMESPACE_LO_EXT
constexpr sal_uInt16 XML_NAMESPACE_OFFICE
constexpr sal_uInt16 XML_NAMESPACE_CONFIG
constexpr sal_uInt16 XML_NAMESPACE_OOO
constexpr sal_uInt16 XML_NAMESPACE_MATH
constexpr sal_uInt16 XML_NAMESPACE_GRDDL
constexpr sal_uInt16 XML_NAMESPACE_DRAW_EXT
constexpr sal_uInt16 XML_NAMESPACE_STYLE
constexpr sal_uInt16 XML_NAMESPACE_SCRIPT
constexpr sal_uInt16 XML_NAMESPACE_FO
constexpr sal_uInt16 XML_NAMESPACE_XSI
constexpr sal_uInt16 XML_NAMESPACE_NUMBER
constexpr OUStringLiteral XML_WRITTENNUMBERSTYLES