diff --git a/data/namespaces.json b/data/namespaces.json
index 14d05de24..93ea383b8 100644
--- a/data/namespaces.json
+++ b/data/namespaces.json
@@ -621,6 +621,11 @@
"Uri": "http://schemas.microsoft.com/office/spreadsheetml/2023/externalCodeService",
"Version": "Microsoft365"
},
+ {
+ "Prefix": "xlecs2",
+ "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2",
+ "Version": "Microsoft365"
+ },
{
"Prefix": "xlmsforms",
"Uri": "http://schemas.microsoft.com/office/spreadsheetml/2023/msForms",
@@ -641,6 +646,11 @@
"Uri": "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotDynamicArrays",
"Version": "Microsoft365"
},
+ {
+ "Prefix": "xlpds",
+ "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2025/pivotDataSource",
+ "Version": "Microsoft365"
+ },
{
"Prefix": "xlPr",
"Uri": "http://schemas.microsoft.com/office/spreadsheetml/2016/01/main",
diff --git a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json
index 6a80736eb..0626ce5dc 100644
--- a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json
+++ b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json
@@ -53,6 +53,154 @@
]
}
]
+ },
+ {
+ "Name": "xlpcalc:CT_PivotFieldSubtotals/xlpcalc:pivotFieldSubtotals",
+ "ClassName": "PivotFieldSubtotals",
+ "Summary": "Defines the PivotFieldSubtotals Class.",
+ "BaseClass": "OpenXmlCompositeElement",
+ "Version": "Microsoft365",
+ "Children": [
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotal"
+ }
+ ],
+ "Particle": {
+ "Kind": "Sequence",
+ "Items": [
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotal",
+ "Occurs": [
+ {}
+ ],
+ "InitialVersion": "Microsoft365"
+ }
+ ]
+ }
+ },
+ {
+ "Name": "xlpcalc:CT_PivotAreaReferenceSubtotals/xlpcalc:pivotAreaReferenceSubtotals",
+ "ClassName": "PivotAreaReferenceSubtotals",
+ "Summary": "Defines the PivotAreaReferenceSubtotals Class.",
+ "BaseClass": "OpenXmlCompositeElement",
+ "Version": "Microsoft365",
+ "Children": [
+ {
+ "Name": "xlpcalc:CT_PivotSubtotalType/xlpcalc:subtotal"
+ }
+ ],
+ "Particle": {
+ "Kind": "Sequence",
+ "Items": [
+ {
+ "Name": "xlpcalc:CT_PivotSubtotalType/xlpcalc:subtotal",
+ "Occurs": [
+ {
+ "Min": 1
+ }
+ ],
+ "InitialVersion": "Microsoft365"
+ }
+ ]
+ }
+ },
+ {
+ "Name": "xlpcalc:CT_PivotTableSubtotalLineItems/xlpcalc:pivotFieldSubtotalLineItems",
+ "ClassName": "PivotTableSubtotalLineItems",
+ "Summary": "Defines the PivotTableSubtotalLineItems Class.",
+ "BaseClass": "OpenXmlCompositeElement",
+ "Version": "Microsoft365",
+ "Children": [
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotalLineItem"
+ }
+ ],
+ "Particle": {
+ "Kind": "Sequence",
+ "Items": [
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotalLineItem",
+ "Occurs": [
+ {
+ "Min": 1
+ }
+ ],
+ "InitialVersion": "Microsoft365"
+ }
+ ]
+ }
+ },
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotal",
+ "ClassName": "SubtotalPivotItemSubtotal",
+ "Summary": "Defines the SubtotalPivotItemSubtotal Class.",
+ "BaseClass": "OpenXmlPivotItemSubtotalElement",
+ "IsDerived": true,
+ "IsLeafElement": true,
+ "Version": "Microsoft365"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotalLineItem",
+ "ClassName": "SubtotalLineItemPivotItemSubtotal",
+ "Summary": "Defines the SubtotalLineItemPivotItemSubtotal Class.",
+ "BaseClass": "OpenXmlPivotItemSubtotalElement",
+ "IsDerived": true,
+ "IsLeafElement": true,
+ "Version": "Microsoft365"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/",
+ "ClassName": "OpenXmlPivotItemSubtotalElement",
+ "Summary": "Defines the OpenXmlPivotItemSubtotalElement Class.",
+ "BaseClass": "OpenXmlLeafElement",
+ "IsAbstract": true,
+ "IsLeafElement": true,
+ "Version": "Microsoft365",
+ "Attributes": [
+ {
+ "QName": ":subtotalType",
+ "Type": "EnumValue\u003CDocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.AggregationType\u003E",
+ "Version": "Microsoft365",
+ "PropertyComments": "subtotalType",
+ "Validators": [
+ {
+ "Name": "RequiredValidator"
+ }
+ ]
+ },
+ {
+ "QName": ":itemLocation",
+ "Type": "UInt32Value",
+ "Version": "Microsoft365",
+ "PropertyComments": "itemLocation",
+ "Validators": [
+ {
+ "Name": "RequiredValidator"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "Name": "xlpcalc:CT_PivotSubtotalType/xlpcalc:subtotal",
+ "ClassName": "PivotSubtotalType",
+ "Summary": "Defines the PivotSubtotalType Class.",
+ "BaseClass": "OpenXmlLeafElement",
+ "IsLeafElement": true,
+ "Version": "Microsoft365",
+ "Attributes": [
+ {
+ "QName": ":subtotalType",
+ "Type": "EnumValue\u003CDocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.AggregationType\u003E",
+ "Version": "Microsoft365",
+ "PropertyComments": "subtotalType",
+ "Validators": [
+ {
+ "Name": "RequiredValidator"
+ }
+ ]
+ }
+ ]
}
],
"Enums": [
diff --git a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.json b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.json
new file mode 100644
index 000000000..85a298431
--- /dev/null
+++ b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.json
@@ -0,0 +1,27 @@
+{
+ "TargetNamespace": "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2",
+ "Types": [
+ {
+ "Name": "xlecs2:CT_ExternalCodeServiceImageAsInput/xlecs2:externalCodeServiceImageAsInput",
+ "ClassName": "ExternalCodeServiceImageAsInput",
+ "Summary": "Defines the ExternalCodeServiceImageAsInput Class.",
+ "BaseClass": "OpenXmlLeafElement",
+ "IsLeafElement": true,
+ "Version": "Microsoft365",
+ "Attributes": [
+ {
+ "QName": ":maxWidth",
+ "Type": "UInt32Value",
+ "Version": "Microsoft365",
+ "PropertyComments": "maxWidth"
+ },
+ {
+ "QName": ":maxHeight",
+ "Type": "UInt32Value",
+ "Version": "Microsoft365",
+ "PropertyComments": "maxHeight"
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.json b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.json
new file mode 100644
index 000000000..0d0bb6ec0
--- /dev/null
+++ b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.json
@@ -0,0 +1,40 @@
+{
+ "TargetNamespace": "http://schemas.microsoft.com/office/spreadsheetml/2025/pivotDataSource",
+ "Types": [
+ {
+ "Name": "xlpds:CT_PivotCacheDataSource/xlpds:pivotCacheDataSource",
+ "ClassName": "PivotCacheDataSource",
+ "Summary": "Defines the PivotCacheDataSource Class.",
+ "CompositeType": "OneSequence",
+ "BaseClass": "OpenXmlCompositeElement",
+ "Version": "Microsoft365",
+ "Attributes": [
+ {
+ "QName": ":ref",
+ "Type": "StringValue",
+ "Version": "Microsoft365",
+ "PropertyComments": "ref"
+ }
+ ],
+ "Children": [
+ {
+ "Name": "x:ST_Formula/xne:f",
+ "PropertyName": "Formula"
+ }
+ ],
+ "Particle": {
+ "Kind": "Sequence",
+ "Items": [
+ {
+ "Name": "x:ST_Formula/xne:f",
+ "Occurs": [
+ {
+ "Max": 1
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/data/schemas/schemas_openxmlformats_org_spreadsheetml_2006_main.json b/data/schemas/schemas_openxmlformats_org_spreadsheetml_2006_main.json
index 555a6a49c..474575dcf 100644
--- a/data/schemas/schemas_openxmlformats_org_spreadsheetml_2006_main.json
+++ b/data/schemas/schemas_openxmlformats_org_spreadsheetml_2006_main.json
@@ -25449,6 +25449,10 @@
{
"Name": "xlwcv:CT_Version/xlwcv:version",
"PropertyName": "Version"
+ },
+ {
+ "Name": "xlecs2:CT_ExternalCodeServiceImageAsInput/xlecs2:externalCodeServiceImageAsInput",
+ "PropertyName": "ExternalCodeServiceImageAsInput"
}
],
"Particle": {
@@ -25506,6 +25510,10 @@
"Name": "xlwcv:CT_Version/xlwcv:version",
"InitialVersion": "Microsoft365"
},
+ {
+ "Name": "xlecs2:CT_ExternalCodeServiceImageAsInput/xlecs2:externalCodeServiceImageAsInput",
+ "InitialVersion": "Microsoft365"
+ },
{
"Kind": "Any",
"Occurs": [
diff --git a/data/typed/namespaces.json b/data/typed/namespaces.json
index 879c2b6ad..5f71a55a1 100644
--- a/data/typed/namespaces.json
+++ b/data/typed/namespaces.json
@@ -187,6 +187,14 @@
"Prefix": "xlwcv",
"Namespace": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion"
},
+ {
+ "Prefix": "xlecs2",
+ "Namespace": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2"
+ },
+ {
+ "Prefix": "xlpds",
+ "Namespace": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.PivotDataSource"
+ },
{
"Prefix": "wne",
"Namespace": "DocumentFormat.OpenXml.Office.Word"
diff --git a/data/typed/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json b/data/typed/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json
index ba637e7d7..0ff50b5b0 100644
--- a/data/typed/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json
+++ b/data/typed/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.json
@@ -1,4 +1,8 @@
[
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/",
+ "ClassName": "OpenXmlPivotItemSubtotalElement"
+ },
{
"Name": "xlpcalc:CT_AggregationInfo/xlpcalc:aggregationInfo",
"ClassName": "AggregationInfo"
@@ -6,5 +10,29 @@
{
"Name": "xlpcalc:CT_FeatureSupport/xlpcalc:featureSupportInfo",
"ClassName": "FeatureSupport"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotAreaReferenceSubtotals/xlpcalc:pivotAreaReferenceSubtotals",
+ "ClassName": "PivotAreaReferenceSubtotals"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotTableSubtotalLineItems/xlpcalc:pivotFieldSubtotalLineItems",
+ "ClassName": "PivotTableSubtotalLineItems"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotFieldSubtotals/xlpcalc:pivotFieldSubtotals",
+ "ClassName": "PivotFieldSubtotals"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotal",
+ "ClassName": "SubtotalPivotItemSubtotal"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotSubtotalType/xlpcalc:subtotal",
+ "ClassName": "PivotSubtotalType"
+ },
+ {
+ "Name": "xlpcalc:CT_PivotItemSubtotal/xlpcalc:subtotalLineItem",
+ "ClassName": "SubtotalLineItemPivotItemSubtotal"
}
]
\ No newline at end of file
diff --git a/data/typed/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.json b/data/typed/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.json
new file mode 100644
index 000000000..bedf53430
--- /dev/null
+++ b/data/typed/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.json
@@ -0,0 +1,6 @@
+[
+ {
+ "Name": "xlecs2:CT_ExternalCodeServiceImageAsInput/xlecs2:externalCodeServiceImageAsInput",
+ "ClassName": "ExternalCodeServiceImageAsInput"
+ }
+]
\ No newline at end of file
diff --git a/data/typed/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.json b/data/typed/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.json
new file mode 100644
index 000000000..ff2973894
--- /dev/null
+++ b/data/typed/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.json
@@ -0,0 +1,6 @@
+[
+ {
+ "Name": "xlpds:CT_PivotCacheDataSource/xlpds:pivotCacheDataSource",
+ "ClassName": "PivotCacheDataSource"
+ }
+]
\ No newline at end of file
diff --git a/generated/DocumentFormat.OpenXml.Framework/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Namespaces.g.cs b/generated/DocumentFormat.OpenXml.Framework/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Namespaces.g.cs
index 070ff2804..0db6afa2b 100644
--- a/generated/DocumentFormat.OpenXml.Framework/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Namespaces.g.cs
+++ b/generated/DocumentFormat.OpenXml.Framework/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Namespaces.g.cs
@@ -146,10 +146,12 @@ internal partial class OpenXmlNamespaceResolver
{ "http://schemas.microsoft.com/office/excel/2010/spreadsheetDrawing", "xdr14" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag", "xfpb" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2023/externalCodeService", "xlecs" },
+ { "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2", "xlecs2" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2023/msForms", "xlmsforms" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotAutoRefresh", "xlpar" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "xlpcalc" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotDynamicArrays", "xlpda" },
+ { "http://schemas.microsoft.com/office/spreadsheetml/2025/pivotDataSource", "xlpds" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2016/01/main", "xlPr" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata", "xlrd" },
{ "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2", "xlrd2" },
@@ -316,10 +318,12 @@ internal partial class OpenXmlNamespaceResolver
{ "xdr14", "http://schemas.microsoft.com/office/excel/2010/spreadsheetDrawing" },
{ "xfpb", "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" },
{ "xlecs", "http://schemas.microsoft.com/office/spreadsheetml/2023/externalCodeService" },
+ { "xlecs2", "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2" },
{ "xlmsforms", "http://schemas.microsoft.com/office/spreadsheetml/2023/msForms" },
{ "xlpar", "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotAutoRefresh" },
{ "xlpcalc", "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation" },
{ "xlpda", "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotDynamicArrays" },
+ { "xlpds", "http://schemas.microsoft.com/office/spreadsheetml/2025/pivotDataSource" },
{ "xlPr", "http://schemas.microsoft.com/office/spreadsheetml/2016/01/main" },
{ "xlrd", "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" },
{ "xlrd2", "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2" },
@@ -486,10 +490,12 @@ internal partial class OpenXmlNamespaceResolver
{ "xdr14", FileFormatVersions.Office2010 },
{ "xfpb", FileFormatVersions.Microsoft365 },
{ "xlecs", FileFormatVersions.Microsoft365 },
+ { "xlecs2", FileFormatVersions.Microsoft365 },
{ "xlmsforms", FileFormatVersions.Microsoft365 },
{ "xlpar", FileFormatVersions.Microsoft365 },
{ "xlpcalc", FileFormatVersions.Microsoft365 },
{ "xlpda", FileFormatVersions.Microsoft365 },
+ { "xlpds", FileFormatVersions.Microsoft365 },
{ "xlPr", FileFormatVersions.Office2019 },
{ "xlrd", FileFormatVersions.Office2019 },
{ "xlrd2", FileFormatVersions.Office2019 },
diff --git a/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.NoNamespace.g.cs b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.NoNamespace.g.cs
index ae8074652..4f956a5a3 100644
--- a/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.NoNamespace.g.cs
+++ b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.NoNamespace.g.cs
@@ -12179,6 +12179,18 @@ public static partial class NoNamespace
///
public static readonly XName maxDate = "maxDate";
+ ///
+ /// Represents the maxHeight XML attribute.
+ ///
+ ///
+ /// As an XML attribute, it:
+ ///
+ /// - is contained in the following XML elements: .
+ /// - corresponds to the following strongly-typed properties: ExternalCodeServiceImageAsInput.MaxHeight.
+ ///
+ ///
+ public static readonly XName maxHeight = "maxHeight";
+
///
/// Represents the maximized XML attribute.
///
@@ -12311,6 +12323,18 @@ public static partial class NoNamespace
///
public static readonly XName maxValue = "maxValue";
+ ///
+ /// Represents the maxWidth XML attribute.
+ ///
+ ///
+ /// As an XML attribute, it:
+ ///
+ /// - is contained in the following XML elements: .
+ /// - corresponds to the following strongly-typed properties: ExternalCodeServiceImageAsInput.MaxWidth.
+ ///
+ ///
+ public static readonly XName maxWidth = "maxWidth";
+
///
/// Represents the maxX XML attribute.
///
diff --git a/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.X.g.cs b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.X.g.cs
index 4cbcade21..31e6dfb61 100644
--- a/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.X.g.cs
+++ b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.X.g.cs
@@ -1454,7 +1454,7 @@ public static partial class X
/// As an XML element, it:
///
/// - has the following parent XML elements: , , , , , , , , , .
- /// - has the following child XML elements: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , .
+ /// - has the following child XML elements: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , .
/// - has the following XML attributes: .
/// - corresponds to the following strongly-typed classes: CacheFieldExtension, CacheHierarchyExtension, CacheSourceExtension, CalculatedMemberExtension, ConditionalFormattingRuleExtension, ConnectionExtension, DataFieldExtension, Extension, PivotCacheDefinitionExtension, PivotFieldExtension, PivotFilterExtension, PivotHierarchyExtension, PivotTableDefinitionExtension, QueryTableExtension, SlicerCacheDefinitionExtension, StylesheetExtension, TableExtension, WorkbookExtension, WorksheetExtension.
///
diff --git a/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.XLECS2.g.cs b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.XLECS2.g.cs
new file mode 100644
index 000000000..4ea1dbbf6
--- /dev/null
+++ b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.XLECS2.g.cs
@@ -0,0 +1,31 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+using System.Xml.Linq;
+
+namespace DocumentFormat.OpenXml.Linq
+{
+ ///
+ /// Declares XNamespace and XName fields for the xmlns:xlecs2="http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2" namespace.
+ ///
+ public static partial class XLECS2
+ {
+ ///
+ /// Defines the XML namespace associated with the xlecs2 prefix.
+ ///
+ public static readonly XNamespace xlecs2 = "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2";
+
+ ///
+ /// Represents the xlecs2:externalCodeServiceImageAsInput XML element.
+ ///
+ ///
+ /// As an XML element, it:
+ ///
+ /// - has the following parent XML elements: .
+ /// - has the following XML attributes: , .
+ /// - corresponds to the following strongly-typed classes: ExternalCodeServiceImageAsInput.
+ ///
+ ///
+ public static readonly XName externalCodeServiceImageAsInput = xlecs2 + "externalCodeServiceImageAsInput";
+ }
+}
diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.g.cs
index 62bccf585..e3839f4fa 100644
--- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.g.cs
+++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2023_pivot2023Calculation.g.cs
@@ -122,6 +122,367 @@ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
}
+ ///
+ /// Defines the PivotFieldSubtotals Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpcalc:pivotFieldSubtotals.
+ ///
+ ///
+ /// The following table lists the possible child types:
+ ///
+ /// - <xlpcalc:subtotal>
+ ///
+ ///
+ public partial class PivotFieldSubtotals : OpenXmlCompositeElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "pivotFieldSubtotals");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotFieldSubtotals");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the PivotFieldSubtotals class.
+ ///
+ public PivotFieldSubtotals() : base()
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotFieldSubtotals class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotFieldSubtotals(IEnumerable childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotFieldSubtotals class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotFieldSubtotals(params OpenXmlElement[] childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotFieldSubtotals class from outer XML.
+ ///
+ /// Specifies the outer XML of the element.
+ public PivotFieldSubtotals(string outerXml) : base(outerXml)
+ {
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ builder.AddChild(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalPivotItemSubtotal.ElementType, static () => new DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalPivotItemSubtotal());
+ builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1)
+ {
+ new ElementParticle(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalPivotItemSubtotal.ElementType, 0, 0, version: FileFormatVersions.Microsoft365)
+ };
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+
+ ///
+ /// Defines the PivotAreaReferenceSubtotals Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpcalc:pivotAreaReferenceSubtotals.
+ ///
+ ///
+ /// The following table lists the possible child types:
+ ///
+ /// - <xlpcalc:subtotal>
+ ///
+ ///
+ public partial class PivotAreaReferenceSubtotals : OpenXmlCompositeElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "pivotAreaReferenceSubtotals");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotAreaReferenceSubtotals");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the PivotAreaReferenceSubtotals class.
+ ///
+ public PivotAreaReferenceSubtotals() : base()
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotAreaReferenceSubtotals class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotAreaReferenceSubtotals(IEnumerable childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotAreaReferenceSubtotals class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotAreaReferenceSubtotals(params OpenXmlElement[] childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotAreaReferenceSubtotals class from outer XML.
+ ///
+ /// Specifies the outer XML of the element.
+ public PivotAreaReferenceSubtotals(string outerXml) : base(outerXml)
+ {
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ builder.AddChild(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotSubtotalType.ElementType, static () => new DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotSubtotalType());
+ builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1)
+ {
+ new ElementParticle(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotSubtotalType.ElementType, 1, 0, version: FileFormatVersions.Microsoft365)
+ };
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+
+ ///
+ /// Defines the PivotTableSubtotalLineItems Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpcalc:pivotFieldSubtotalLineItems.
+ ///
+ ///
+ /// The following table lists the possible child types:
+ ///
+ /// - <xlpcalc:subtotalLineItem>
+ ///
+ ///
+ public partial class PivotTableSubtotalLineItems : OpenXmlCompositeElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "pivotFieldSubtotalLineItems");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotTableSubtotalLineItems");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the PivotTableSubtotalLineItems class.
+ ///
+ public PivotTableSubtotalLineItems() : base()
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotTableSubtotalLineItems class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotTableSubtotalLineItems(IEnumerable childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotTableSubtotalLineItems class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotTableSubtotalLineItems(params OpenXmlElement[] childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotTableSubtotalLineItems class from outer XML.
+ ///
+ /// Specifies the outer XML of the element.
+ public PivotTableSubtotalLineItems(string outerXml) : base(outerXml)
+ {
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ builder.AddChild(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalLineItemPivotItemSubtotal.ElementType, static () => new DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalLineItemPivotItemSubtotal());
+ builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1)
+ {
+ new ElementParticle(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalLineItemPivotItemSubtotal.ElementType, 1, 0, version: FileFormatVersions.Microsoft365)
+ };
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+
+ ///
+ /// Defines the SubtotalPivotItemSubtotal Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpcalc:subtotal.
+ ///
+ public partial class SubtotalPivotItemSubtotal : OpenXmlPivotItemSubtotalElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "subtotal");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotItemSubtotal");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the SubtotalPivotItemSubtotal class.
+ ///
+ public SubtotalPivotItemSubtotal() : base()
+ {
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+
+ ///
+ /// Defines the SubtotalLineItemPivotItemSubtotal Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpcalc:subtotalLineItem.
+ ///
+ public partial class SubtotalLineItemPivotItemSubtotal : OpenXmlPivotItemSubtotalElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "subtotalLineItem");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotItemSubtotal");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the SubtotalLineItemPivotItemSubtotal class.
+ ///
+ public SubtotalLineItemPivotItemSubtotal() : base()
+ {
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+
+ ///
+ /// Defines the OpenXmlPivotItemSubtotalElement Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is :.
+ ///
+ public abstract partial class OpenXmlPivotItemSubtotalElement : OpenXmlLeafElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new(string.Empty, string.Empty);
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotItemSubtotal");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the OpenXmlPivotItemSubtotalElement class.
+ ///
+ protected OpenXmlPivotItemSubtotalElement() : base()
+ {
+ }
+
+ ///
+ /// subtotalType, this property is only available in Microsoft365 and later.
+ /// Represents the following attribute in the schema: subtotalType
+ ///
+ public EnumValue? SubtotalType
+ {
+ get => GetAttribute>();
+ set => SetAttribute(value);
+ }
+
+ ///
+ /// itemLocation, this property is only available in Microsoft365 and later.
+ /// Represents the following attribute in the schema: itemLocation
+ ///
+ public UInt32Value? ItemLocation
+ {
+ get => GetAttribute();
+ set => SetAttribute(value);
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.AddElement()
+ .AddAttribute("subtotalType", a => a.SubtotalType, aBuilder =>
+ {
+ aBuilder.AddValidator(RequiredValidator.Instance);
+ })
+ .AddAttribute("itemLocation", a => a.ItemLocation, aBuilder =>
+ {
+ aBuilder.AddValidator(RequiredValidator.Instance);
+ });
+ }
+ }
+
+ ///
+ /// Defines the PivotSubtotalType Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpcalc:subtotal.
+ ///
+ public partial class PivotSubtotalType : OpenXmlLeafElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "subtotal");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "CT_PivotSubtotalType");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the PivotSubtotalType class.
+ ///
+ public PivotSubtotalType() : base()
+ {
+ }
+
+ ///
+ /// subtotalType, this property is only available in Microsoft365 and later.
+ /// Represents the following attribute in the schema: subtotalType
+ ///
+ public EnumValue? SubtotalType
+ {
+ get => GetAttribute>();
+ set => SetAttribute(value);
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ builder.AddElement()
+ .AddAttribute("subtotalType", a => a.SubtotalType, aBuilder =>
+ {
+ aBuilder.AddValidator(RequiredValidator.Instance);
+ });
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+
///
/// Defines the AggregationType enumeration.
///
diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.g.cs
new file mode 100644
index 000000000..0d72a9429
--- /dev/null
+++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2025_externalCodeService2.g.cs
@@ -0,0 +1,72 @@
+//
+
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+#nullable enable
+
+using DocumentFormat.OpenXml;
+using DocumentFormat.OpenXml.Framework;
+using DocumentFormat.OpenXml.Framework.Metadata;
+using DocumentFormat.OpenXml.Packaging;
+using DocumentFormat.OpenXml.Validation.Schema;
+using System;
+using System.Collections.Generic;
+using System.IO.Packaging;
+
+namespace DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2
+{
+ ///
+ /// Defines the ExternalCodeServiceImageAsInput Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlecs2:externalCodeServiceImageAsInput.
+ ///
+ public partial class ExternalCodeServiceImageAsInput : OpenXmlLeafElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2", "externalCodeServiceImageAsInput");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2", "CT_ExternalCodeServiceImageAsInput");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the ExternalCodeServiceImageAsInput class.
+ ///
+ public ExternalCodeServiceImageAsInput() : base()
+ {
+ }
+
+ ///
+ /// maxWidth, this property is only available in Microsoft365 and later.
+ /// Represents the following attribute in the schema: maxWidth
+ ///
+ public UInt32Value? MaxWidth
+ {
+ get => GetAttribute();
+ set => SetAttribute(value);
+ }
+
+ ///
+ /// maxHeight, this property is only available in Microsoft365 and later.
+ /// Represents the following attribute in the schema: maxHeight
+ ///
+ public UInt32Value? MaxHeight
+ {
+ get => GetAttribute();
+ set => SetAttribute(value);
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ builder.AddElement()
+ .AddAttribute("maxWidth", a => a.MaxWidth)
+ .AddAttribute("maxHeight", a => a.MaxHeight);
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+}
\ No newline at end of file
diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.g.cs
new file mode 100644
index 000000000..571779c9e
--- /dev/null
+++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2025_pivotDataSource.g.cs
@@ -0,0 +1,110 @@
+//
+
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+#nullable enable
+
+using DocumentFormat.OpenXml;
+using DocumentFormat.OpenXml.Framework;
+using DocumentFormat.OpenXml.Framework.Metadata;
+using DocumentFormat.OpenXml.Packaging;
+using DocumentFormat.OpenXml.Spreadsheet;
+using DocumentFormat.OpenXml.Validation.Schema;
+using System;
+using System.Collections.Generic;
+using System.IO.Packaging;
+
+namespace DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.PivotDataSource
+{
+ ///
+ /// Defines the PivotCacheDataSource Class.
+ /// This class is available in Microsoft365 and above.
+ /// When the object is serialized out as xml, it's qualified name is xlpds:pivotCacheDataSource.
+ ///
+ ///
+ /// The following table lists the possible child types:
+ ///
+ /// - <xne:f>
+ ///
+ ///
+ public partial class PivotCacheDataSource : OpenXmlCompositeElement
+ {
+ #pragma warning disable CS0109
+ internal static readonly new OpenXmlQualifiedName ElementQName = new("http://schemas.microsoft.com/office/spreadsheetml/2025/pivotDataSource", "pivotCacheDataSource");
+ internal static readonly new OpenXmlQualifiedName ElementTypeName = new("http://schemas.microsoft.com/office/spreadsheetml/2025/pivotDataSource", "CT_PivotCacheDataSource");
+ internal static readonly new OpenXmlSchemaType ElementType = new(ElementQName, ElementTypeName);
+ #pragma warning restore CS0109
+
+ ///
+ /// Initializes a new instance of the PivotCacheDataSource class.
+ ///
+ public PivotCacheDataSource() : base()
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotCacheDataSource class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotCacheDataSource(IEnumerable childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotCacheDataSource class with the specified child elements.
+ ///
+ /// Specifies the child elements.
+ public PivotCacheDataSource(params OpenXmlElement[] childElements) : base(childElements)
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the PivotCacheDataSource class from outer XML.
+ ///
+ /// Specifies the outer XML of the element.
+ public PivotCacheDataSource(string outerXml) : base(outerXml)
+ {
+ }
+
+ ///
+ /// ref, this property is only available in Microsoft365 and later.
+ /// Represents the following attribute in the schema: ref
+ ///
+ public StringValue? Ref
+ {
+ get => GetAttribute();
+ set => SetAttribute(value);
+ }
+
+ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
+ {
+ base.ConfigureMetadata(builder);
+ builder.SetSchema(ElementType);
+ builder.Availability = FileFormatVersions.Microsoft365;
+ builder.AddChild(DocumentFormat.OpenXml.Office.Excel.Formula.ElementType, static () => new DocumentFormat.OpenXml.Office.Excel.Formula());
+ builder.AddElement()
+ .AddAttribute("ref", a => a.Ref);
+ builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1)
+ {
+ new ElementParticle(DocumentFormat.OpenXml.Office.Excel.Formula.ElementType, 0, 1)
+ };
+ }
+
+ ///
+ /// Formula.
+ /// Represents the following element tag in the schema: xne:f.
+ ///
+ ///
+ /// xmlns:xne = http://schemas.microsoft.com/office/excel/2006/main
+ ///
+ public DocumentFormat.OpenXml.Office.Excel.Formula? Formula
+ {
+ get => GetElement(DocumentFormat.OpenXml.Office.Excel.Formula.ElementType) as DocumentFormat.OpenXml.Office.Excel.Formula;
+ set => SetElement(value, DocumentFormat.OpenXml.Office.Excel.Formula.ElementType);
+ }
+
+ ///
+ public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep);
+ }
+}
\ No newline at end of file
diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_openxmlformats_org_spreadsheetml_2006_main.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_openxmlformats_org_spreadsheetml_2006_main.g.cs
index 6b431d3d3..bdd368f24 100644
--- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_openxmlformats_org_spreadsheetml_2006_main.g.cs
+++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_openxmlformats_org_spreadsheetml_2006_main.g.cs
@@ -17,6 +17,7 @@
using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.MsForms;
using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotDynamicArrays;
using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion;
+using DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2;
using DocumentFormat.OpenXml.Office2010.Excel;
using DocumentFormat.OpenXml.Office2013.Excel;
using DocumentFormat.OpenXml.Office2013.ExcelAc;
@@ -49934,6 +49935,7 @@ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
/// - <x15:timelineCacheRefs>
/// - <x15:workbookPr>
/// - <xlecs:externalCodeService>
+ /// - <xlecs2:externalCodeServiceImageAsInput>
/// - <xlwcv:version>
///
///
@@ -50002,6 +50004,7 @@ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
builder.AddChild(DocumentFormat.OpenXml.Office2013.Excel.TimelineCacheReferences.ElementType, static () => new DocumentFormat.OpenXml.Office2013.Excel.TimelineCacheReferences());
builder.AddChild(DocumentFormat.OpenXml.Office2013.Excel.WorkbookProperties.ElementType, static () => new DocumentFormat.OpenXml.Office2013.Excel.WorkbookProperties());
builder.AddChild(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.ExternalCodeService.ExternalCodeService.ElementType, static () => new DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.ExternalCodeService.ExternalCodeService());
+ builder.AddChild(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2.ExternalCodeServiceImageAsInput.ElementType, static () => new DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2.ExternalCodeServiceImageAsInput());
builder.AddChild(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion.Version.ElementType, static () => new DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion.Version());
builder.AddElement()
.AddAttribute("uri", a => a.Uri, aBuilder =>
@@ -50024,6 +50027,7 @@ internal override void ConfigureMetadata(ElementMetadata.Builder builder)
new ElementParticle(DocumentFormat.OpenXml.Office2013.Excel.DataModel.ElementType, 1, 1, version: FileFormatVersions.Office2013),
new ElementParticle(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.ExternalCodeService.ExternalCodeService.ElementType, 1, 1, version: FileFormatVersions.Microsoft365),
new ElementParticle(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion.Version.ElementType, 1, 1, version: FileFormatVersions.Microsoft365),
+ new ElementParticle(DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2.ExternalCodeServiceImageAsInput.ElementType, 1, 1, version: FileFormatVersions.Microsoft365),
new AnyParticle(0, 1)
};
}
diff --git a/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json b/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json
index fc03cb55f..160240a77 100644
--- a/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json
+++ b/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json
@@ -22867,6 +22867,45 @@
"Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.FeatureSupport",
"Children": []
},
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotAreaReferenceSubtotals",
+ "Children": [
+ {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation*subtotal",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation*CT_PivotSubtotalType"
+ }
+ ]
+ },
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotFieldSubtotals",
+ "Children": [
+ {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation*subtotal",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation*CT_PivotItemSubtotal"
+ }
+ ]
+ },
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotSubtotalType",
+ "Children": []
+ },
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotTableSubtotalLineItems",
+ "Children": [
+ {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation*subtotalLineItem",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation*CT_PivotItemSubtotal"
+ }
+ ]
+ },
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalLineItemPivotItemSubtotal",
+ "Children": []
+ },
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.SubtotalPivotItemSubtotal",
+ "Children": []
+ },
{
"Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotAutoRefresh.Xsdboolean",
"Children": []
@@ -22879,6 +22918,19 @@
"Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.WorkbookCompatibilityVersion.Version",
"Children": []
},
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.ExternalCodeService2.ExternalCodeServiceImageAsInput",
+ "Children": []
+ },
+ {
+ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.PivotDataSource.PivotCacheDataSource",
+ "Children": [
+ {
+ "Name": "http://schemas.microsoft.com/office/excel/2006/main*f",
+ "Type": "http://schemas.openxmlformats.org/spreadsheetml/2006/main*ST_Formula"
+ }
+ ]
+ },
{
"Element": "DocumentFormat.OpenXml.Office.Word.AllocatedCommand",
"Children": []
@@ -46908,6 +46960,10 @@
{
"Name": "http://schemas.microsoft.com/office/spreadsheetml/2024/workbookCompatibilityVersion*version",
"Type": "http://schemas.microsoft.com/office/spreadsheetml/2024/workbookCompatibilityVersion*CT_Version"
+ },
+ {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2*externalCodeServiceImageAsInput",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2*CT_ExternalCodeServiceImageAsInput"
}
]
},
diff --git a/test/DocumentFormat.OpenXml.Framework.Tests/OpenXmlNamespaceTests.cs b/test/DocumentFormat.OpenXml.Framework.Tests/OpenXmlNamespaceTests.cs
index f59a3d557..50cf173b3 100644
--- a/test/DocumentFormat.OpenXml.Framework.Tests/OpenXmlNamespaceTests.cs
+++ b/test/DocumentFormat.OpenXml.Framework.Tests/OpenXmlNamespaceTests.cs
@@ -12,7 +12,7 @@ public class OpenXmlNamespaceTests
public void NamespaceCount()
{
var resolver = new OpenXmlNamespaceResolver();
- Assert.Equal(166, resolver.GetNamespacesInScope(System.Xml.XmlNamespaceScope.All).Count);
+ Assert.Equal(168, resolver.GetNamespacesInScope(System.Xml.XmlNamespaceScope.All).Count);
}
[InlineData("", "", FileFormatVersions.Office2007)]
diff --git a/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json b/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json
index 74d6427ba..ea1f149a3 100644
--- a/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json
+++ b/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json
@@ -49155,6 +49155,87 @@
}
]
},
+ {
+ "Key": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotAreaReferenceSubtotals",
+ "Value": [
+ {
+ "Key": "Microsoft365",
+ "Value": {
+ "ChildrenParticles": [
+ {
+ "MaxOccurs": 0,
+ "Type": {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation:subtotal",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation:CT_PivotSubtotalType"
+ }
+ }
+ ],
+ "ParticleType": "Sequence"
+ }
+ }
+ ]
+ },
+ {
+ "Key": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotFieldSubtotals",
+ "Value": [
+ {
+ "Key": "Microsoft365",
+ "Value": {
+ "ChildrenParticles": [
+ {
+ "MaxOccurs": 0,
+ "MinOccurs": 0,
+ "Type": {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation:subtotal",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation:CT_PivotItemSubtotal"
+ }
+ }
+ ],
+ "ParticleType": "Sequence"
+ }
+ }
+ ]
+ },
+ {
+ "Key": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.PivotTableSubtotalLineItems",
+ "Value": [
+ {
+ "Key": "Microsoft365",
+ "Value": {
+ "ChildrenParticles": [
+ {
+ "MaxOccurs": 0,
+ "Type": {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation:subtotalLineItem",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation:CT_PivotItemSubtotal"
+ }
+ }
+ ],
+ "ParticleType": "Sequence"
+ }
+ }
+ ]
+ },
+ {
+ "Key": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2025.PivotDataSource.PivotCacheDataSource",
+ "Value": [
+ {
+ "Key": "Microsoft365",
+ "Value": {
+ "ChildrenParticles": [
+ {
+ "MinOccurs": 0,
+ "Type": {
+ "Name": "http://schemas.microsoft.com/office/excel/2006/main:f",
+ "Type": "http://schemas.openxmlformats.org/spreadsheetml/2006/main:ST_Formula"
+ }
+ }
+ ],
+ "ParticleType": "Sequence"
+ }
+ }
+ ]
+ },
{
"Key": "DocumentFormat.OpenXml.Office.Word.AllocatedCommandManifest",
"Value": [
@@ -94868,6 +94949,12 @@
"Type": "http://schemas.microsoft.com/office/spreadsheetml/2024/workbookCompatibilityVersion:CT_Version"
}
},
+ {
+ "Type": {
+ "Name": "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2:externalCodeServiceImageAsInput",
+ "Type": "http://schemas.microsoft.com/office/spreadsheetml/2025/externalCodeService2:CT_ExternalCodeServiceImageAsInput"
+ }
+ },
{
"MinOccurs": 0,
"ParticleType": "Any"