diff --git a/data/namespaces.json b/data/namespaces.json index 9b77f7f9a..d81d08212 100644 --- a/data/namespaces.json +++ b/data/namespaces.json @@ -621,11 +621,21 @@ "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2023/msForms", "Version": "Microsoft365" }, + { + "Prefix": "xlpar", + "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotAutoRefresh", + "Version": "Microsoft365" + }, { "Prefix": "xlpcalc", "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2023/pivot2023Calculation", "Version": "Microsoft365" }, + { + "Prefix": "xlpda", + "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotDynamicArrays", + "Version": "Microsoft365" + }, { "Prefix": "xlPr", "Uri": "http://schemas.microsoft.com/office/spreadsheetml/2016/01/main", diff --git a/data/parts/FeaturePropertyBagsPart.json b/data/parts/FeaturePropertyBagsPart.json new file mode 100644 index 000000000..87327892e --- /dev/null +++ b/data/parts/FeaturePropertyBagsPart.json @@ -0,0 +1,13 @@ +{ + "Root": "xfpb:CT_FeaturePropertyBags", + "Name": "FeaturePropertyBagsPart", + "Base": "OpenXmlPart", + "ContentType": "application/vnd.ms-excel.featurepropertybag\u002Bxml", + "RelationshipType": "http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag", + "Target": "featurePropertyBag", + "RootElement": "FeaturePropertyBags", + "Paths": { + "General": "featurePropertyBag" + }, + "Version": "Microsoft365" +} \ No newline at end of file diff --git a/data/parts/WorkbookPart.json b/data/parts/WorkbookPart.json index b79092d14..e84d3922f 100644 --- a/data/parts/WorkbookPart.json +++ b/data/parts/WorkbookPart.json @@ -190,6 +190,11 @@ "ApiName": "RdRichValueWebImagePart", "Name": "RdRichValueWebImagePart", "HasFixedContent": true + }, + { + "ApiName": "FeaturePropertyBagsPart", + "Name": "FeaturePropertyBagsPart", + "HasFixedContent": true } ] } \ No newline at end of file diff --git a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json index 8c47b9abb..fcbaa7208 100644 --- a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json +++ b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json @@ -5,6 +5,7 @@ "Name": "xfpb:CT_FeaturePropertyBags/xfpb:FeaturePropertyBags", "ClassName": "FeaturePropertyBags", "Summary": "Defines the FeaturePropertyBags Class.", + "Part": "FeaturePropertyBagsPart", "BaseClass": "OpenXmlCompositeElement", "Version": "Microsoft365", "Attributes": [ @@ -55,6 +56,85 @@ ] } }, + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "ClassName": "FpbsFeaturePropertyBags", + "Summary": "Defines the FpbsFeaturePropertyBags Class.", + "BaseClass": "OpenXmlFeaturePropertyBagsElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_BagExtensions/xfpb:bagExt" + }, + { + "Name": "xfpb:CT_FeaturePropertyBag/xfpb:bag" + }, + { + "Name": "x:CT_ExtensionList/xfpb:extLst" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_BagExtensions/xfpb:bagExt", + "Occurs": [ + {} + ], + "InitialVersion": "Microsoft365" + }, + { + "Name": "xfpb:CT_FeaturePropertyBag/xfpb:bag", + "Occurs": [ + {} + ], + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_ExtensionList/xfpb:extLst", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_FeaturePropertyBags/", + "ClassName": "OpenXmlFeaturePropertyBagsElement", + "Summary": "Defines the OpenXmlFeaturePropertyBagsElement Class.", + "BaseClass": "OpenXmlCompositeElement", + "IsAbstract": true, + "Version": "Microsoft365", + "Attributes": [ + { + "QName": ":count", + "Type": "UInt32Value", + "Version": "Microsoft365", + "PropertyComments": "count" + } + ], + "AdditionalElements": [ + "x:CT_ExtensionList/xfpb:extLst", + "xfpb:CT_BagExtensions/xfpb:bagExt", + "xfpb:CT_FeaturePropertyBag/xfpb:bag" + ], + "Children": [ + { + "Name": "xfpb:CT_BagExtensions/xfpb:bagExt" + }, + { + "Name": "xfpb:CT_FeaturePropertyBag/xfpb:bag" + }, + { + "Name": "x:CT_ExtensionList/xfpb:extLst" + } + ] + }, { "Name": "xfpb:CT_XfComplement/xfpb:xfComplement", "ClassName": "XfComplement", @@ -97,6 +177,398 @@ } ] }, + { + "Name": "xfpb:CT_RevDxf/xfpb:revdxf", + "ClassName": "RevDxf", + "Summary": "Defines the RevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlCompositeElement", + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:headerRowRevDxf", + "ClassName": "HeaderRowRevDxfTableRevDxf", + "Summary": "Defines the HeaderRowRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:dataRevDxf", + "ClassName": "DataRevDxfTableRevDxf", + "Summary": "Defines the DataRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:totalsRowRevDxf", + "ClassName": "TotalsRowRevDxfTableRevDxf", + "Summary": "Defines the TotalsRowRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:headerRowBorderRevDxf", + "ClassName": "HeaderRowBorderRevDxfTableRevDxf", + "Summary": "Defines the HeaderRowBorderRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:tableBorderRevDxf", + "ClassName": "TableBorderRevDxfTableRevDxf", + "Summary": "Defines the TableBorderRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:totalsRowBorderRevDxf", + "ClassName": "TotalsRowBorderRevDxfTableRevDxf", + "Summary": "Defines the TotalsRowBorderRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:columnHeaderRevDxf", + "ClassName": "ColumnHeaderRevDxfTableRevDxf", + "Summary": "Defines the ColumnHeaderRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:columnBodyRevDxf", + "ClassName": "ColumnBodyRevDxfTableRevDxf", + "Summary": "Defines the ColumnBodyRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:columnTotalsRevDxf", + "ClassName": "ColumnTotalsRevDxfTableRevDxf", + "Summary": "Defines the ColumnTotalsRevDxfTableRevDxf Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlTableRevDxfElement", + "IsDerived": true, + "Version": "Microsoft365", + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "InitialVersion": "Microsoft365" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "Occurs": [ + { + "Max": 1 + } + ], + "InitialVersion": "Microsoft365" + } + ] + } + }, + { + "Name": "xfpb:CT_TableRevDxf/", + "ClassName": "OpenXmlTableRevDxfElement", + "Summary": "Defines the OpenXmlTableRevDxfElement Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlCompositeElement", + "IsAbstract": true, + "Version": "Microsoft365", + "AdditionalElements": [ + "x:CT_Dxf/xfpb:dxf", + "xfpb:CT_FeaturePropertyBags/xfpb:fpbs" + ], + "Children": [ + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "PropertyName": "FpbsFeaturePropertyBags" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "PropertyName": "DifferentialFormatType" + } + ] + }, { "Name": "xfpb:CT_BagExtensions/xfpb:bagExt", "ClassName": "BagExtensions", @@ -458,6 +930,112 @@ } ] }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "ClassName": "DifferentialFormatType", + "Summary": "Defines the DifferentialFormatType Class.", + "CompositeType": "OneSequence", + "BaseClass": "OpenXmlCompositeElement", + "Version": "Microsoft365", + "Children": [ + { + "Name": "x:CT_Font/x:font", + "PropertyName": "Font", + "PropertyComments": "Font Properties" + }, + { + "Name": "x:CT_NumFmt/x:numFmt", + "PropertyName": "NumberingFormat", + "PropertyComments": "Number Format" + }, + { + "Name": "x:CT_Fill/x:fill", + "PropertyName": "Fill", + "PropertyComments": "Fill" + }, + { + "Name": "x:CT_CellAlignment/x:alignment", + "PropertyName": "Alignment", + "PropertyComments": "Alignment" + }, + { + "Name": "x:CT_Border/x:border", + "PropertyName": "Border", + "PropertyComments": "Border Properties" + }, + { + "Name": "x:CT_CellProtection/x:protection", + "PropertyName": "Protection", + "PropertyComments": "Protection Properties" + }, + { + "Name": "x:CT_ExtensionList/x:extLst", + "PropertyName": "ExtensionList", + "PropertyComments": "Future Feature Data Storage Area" + } + ], + "Particle": { + "Kind": "Sequence", + "Items": [ + { + "Name": "x:CT_Font/x:font", + "Occurs": [ + { + "Max": 1 + } + ] + }, + { + "Name": "x:CT_NumFmt/x:numFmt", + "Occurs": [ + { + "Max": 1 + } + ] + }, + { + "Name": "x:CT_Fill/x:fill", + "Occurs": [ + { + "Max": 1 + } + ] + }, + { + "Name": "x:CT_CellAlignment/x:alignment", + "Occurs": [ + { + "Max": 1 + } + ] + }, + { + "Name": "x:CT_Border/x:border", + "Occurs": [ + { + "Max": 1 + } + ] + }, + { + "Name": "x:CT_CellProtection/x:protection", + "Occurs": [ + { + "Max": 1 + } + ] + }, + { + "Name": "x:CT_ExtensionList/x:extLst", + "Occurs": [ + { + "Max": 1 + } + ] + } + ] + } + }, { "Name": "xsd:unsignedInt/xfpb:bagId", "ClassName": "XsdunsignedInt", diff --git a/data/schemas/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.json b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.json new file mode 100644 index 000000000..ab155855b --- /dev/null +++ b/data/schemas/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.json @@ -0,0 +1,20 @@ +{ + "TargetNamespace": "http://schemas.microsoft.com/office/spreadsheetml/2024/pivotAutoRefresh", + "Types": [ + { + "Name": "xsd:boolean/xlpar:autoRefresh", + "ClassName": "Xsdboolean", + "Summary": "Defines the Xsdboolean Class.", + "BaseClass": "OpenXmlLeafTextElement", + "IsLeafText": true, + "Version": "Microsoft365", + "Validators": [ + { + "Name": "NumberValidator", + "Type": "xsd:boolean", + "IsInitialVersion": true + } + ] + } + ] +} \ No newline at end of file diff --git a/data/typed/namespaces.json b/data/typed/namespaces.json index 03319508f..40e6cf992 100644 --- a/data/typed/namespaces.json +++ b/data/typed/namespaces.json @@ -171,6 +171,10 @@ "Prefix": "xlpcalc", "Namespace": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation" }, + { + "Prefix": "xlpar", + "Namespace": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotAutoRefresh" + }, { "Prefix": "wne", "Namespace": "DocumentFormat.OpenXml.Office.Word" diff --git a/data/typed/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json b/data/typed/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json index 4691f3b2b..1266529c5 100644 --- a/data/typed/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json +++ b/data/typed/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.json @@ -1,4 +1,12 @@ [ + { + "Name": "xfpb:CT_FeaturePropertyBags/", + "ClassName": "OpenXmlFeaturePropertyBagsElement" + }, + { + "Name": "xfpb:CT_TableRevDxf/", + "ClassName": "OpenXmlTableRevDxfElement" + }, { "Name": "xfpb:CT_ArrayFeatureProperty/xfpb:a", "ClassName": "ArrayFeatureProperty" @@ -27,6 +35,18 @@ "Name": "xsd:unsignedInt/xfpb:bagId", "ClassName": "XsdunsignedInt" }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:columnBodyRevDxf", + "ClassName": "ColumnBodyRevDxfTableRevDxf" + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:columnHeaderRevDxf", + "ClassName": "ColumnHeaderRevDxfTableRevDxf" + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:columnTotalsRevDxf", + "ClassName": "ColumnTotalsRevDxfTableRevDxf" + }, { "Name": "xfpb:CT_DecimalFeatureProperty/xfpb:d", "ClassName": "DecimalFeatureProperty" @@ -35,6 +55,14 @@ "Name": "xsd:double/xfpb:d", "ClassName": "Xsddouble" }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:dataRevDxf", + "ClassName": "DataRevDxfTableRevDxf" + }, + { + "Name": "x:CT_Dxf/xfpb:dxf", + "ClassName": "DifferentialFormatType" + }, { "Name": "xfpb:CT_DXFComplement/xfpb:DXFComplement", "ClassName": "DXFComplement" @@ -45,7 +73,20 @@ }, { "Name": "xfpb:CT_FeaturePropertyBags/xfpb:FeaturePropertyBags", - "ClassName": "FeaturePropertyBags" + "ClassName": "FeaturePropertyBags", + "PartClassName": "FeaturePropertyBagsPart" + }, + { + "Name": "xfpb:CT_FeaturePropertyBags/xfpb:fpbs", + "ClassName": "FpbsFeaturePropertyBags" + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:headerRowBorderRevDxf", + "ClassName": "HeaderRowBorderRevDxfTableRevDxf" + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:headerRowRevDxf", + "ClassName": "HeaderRowRevDxfTableRevDxf" }, { "Name": "xfpb:CT_IntFeatureProperty/xfpb:i", @@ -63,6 +104,10 @@ "Name": "xsd:string/xfpb:rel", "ClassName": "RelXsdstring" }, + { + "Name": "xfpb:CT_RevDxf/xfpb:revdxf", + "ClassName": "RevDxf" + }, { "Name": "xfpb:CT_StringFeatureProperty/xfpb:s", "ClassName": "StringFeatureProperty" @@ -71,6 +116,18 @@ "Name": "xsd:string/xfpb:s", "ClassName": "SXsdstring" }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:tableBorderRevDxf", + "ClassName": "TableBorderRevDxfTableRevDxf" + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:totalsRowBorderRevDxf", + "ClassName": "TotalsRowBorderRevDxfTableRevDxf" + }, + { + "Name": "xfpb:CT_TableRevDxf/xfpb:totalsRowRevDxf", + "ClassName": "TotalsRowRevDxfTableRevDxf" + }, { "Name": "xfpb:CT_XfComplement/xfpb:xfComplement", "ClassName": "XfComplement" diff --git a/data/typed/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.json b/data/typed/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.json new file mode 100644 index 000000000..6b9aee095 --- /dev/null +++ b/data/typed/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.json @@ -0,0 +1,6 @@ +[ + { + "Name": "xsd:boolean/xlpar:autoRefresh", + "ClassName": "Xsdboolean" + } +] \ No newline at end of file diff --git a/gen/DocumentFormat.OpenXml.Generator/OpenXmlGenerator.cs b/gen/DocumentFormat.OpenXml.Generator/OpenXmlGenerator.cs index 76b7125c8..d63f27e69 100644 --- a/gen/DocumentFormat.OpenXml.Generator/OpenXmlGenerator.cs +++ b/gen/DocumentFormat.OpenXml.Generator/OpenXmlGenerator.cs @@ -88,7 +88,9 @@ IEnumerable GetRootElements() using (writer.AddBlock(new() { IncludeSemiColon = true })) { - foreach (var type in GetRootElements().OrderBy(t => t.Part).ThenBy(t => t.Name)) + var roots = GetRootElements(); + + foreach (var type in roots.OrderBy(t => t.Part).ThenBy(t => t.Name)) { // TODO: Do we want to include elements that don't have a registered type? if (string.IsNullOrEmpty(type.Part) || parts.Contains(type.Part)) 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 608490021..d91cd4434 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,7 +146,9 @@ internal partial class OpenXmlNamespaceResolver { "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag", "xfpb" }, { "http://schemas.microsoft.com/office/spreadsheetml/2023/externalCodeService", "xlecs" }, { "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/2016/01/main", "xlPr" }, { "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata", "xlrd" }, { "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2", "xlrd2" }, @@ -311,7 +313,9 @@ internal partial class OpenXmlNamespaceResolver { "xfpb", "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" }, { "xlecs", "http://schemas.microsoft.com/office/spreadsheetml/2023/externalCodeService" }, { "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" }, { "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" }, @@ -476,7 +480,9 @@ internal partial class OpenXmlNamespaceResolver { "xfpb", FileFormatVersions.Microsoft365 }, { "xlecs", FileFormatVersions.Microsoft365 }, { "xlmsforms", FileFormatVersions.Microsoft365 }, + { "xlpar", FileFormatVersions.Microsoft365 }, { "xlpcalc", FileFormatVersions.Microsoft365 }, + { "xlpda", 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 30428f4ec..8ac5594a2 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 @@ -1259,6 +1259,18 @@ public static partial class NoNamespace /// public static readonly XName asteriskTotals = "asteriskTotals"; + /// + /// Represents the att XML attribute. + /// + /// + /// As an XML attribute, it: + /// + /// is contained in the following XML elements: . + /// corresponds to the following strongly-typed properties: FeaturePropertyBag.Att. + /// + /// + public static readonly XName att = "att"; + /// /// Represents the attribute XML attribute. /// @@ -1727,6 +1739,18 @@ public static partial class NoNamespace /// public static readonly XName backwards = "backwards"; + /// + /// Represents the bagExtId XML attribute. + /// + /// + /// As an XML attribute, it: + /// + /// is contained in the following XML elements: . + /// corresponds to the following strongly-typed properties: FeaturePropertyBag.BagExtId. + /// + /// + public static readonly XName bagExtId = "bagExtId"; + /// /// Represents the bandCol XML attribute. /// @@ -3881,8 +3905,8 @@ public static partial class NoNamespace /// /// As an XML attribute, it: /// - /// is contained in the following XML elements: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , . - /// corresponds to the following strongly-typed properties: ArgumentDescriptions.Count, ArrayData.Count, Borders.Count, CacheFields.Count, CacheHierarchies.Count, CacheHierarchy.Count, CalculatedItems.Count, CalculatedMembers.Count, CellFormats.Count, CellStyleFormats.Count, CellStyles.Count, ChartFormats.Count, ColumnFields.Count, ColumnHierarchiesUsage.Count, ColumnItems.Count, ColumnSortMap.Count, ConditionalFormats.Count, DataFields.Count, DataReferences.Count, DataValidations.Count, DifferentialFormats.Count, Dimensions.Count, DiscreteProperties.Count, Dxfs.Count, Entries.Count, FieldsUsage.Count, Fills.Count, Fonts.Count, Formats.Count, FutureMetadata.Count, GroupItems.Count, GroupLevels.Count, GroupMembers.Count, Groups.Count, Items.Count, Kpis.Count, Maps.Count, MdxMetadata.Count, MeasureGroups.Count, MemberProperties.Count, Members.Count, MergeCells.Count, MetadataStrings.Count, MetadataTypes.Count, NumberingFormats.Count, OlapSlicerCacheLevelData.Count, OlapSlicerCacheLevelsData.Count, OlapSlicerCacheSelections.Count, Page.Count, PageFields.Count, Pages.Count, Parameters.Count, PivotAreaReference.Count, PivotAreaReferences.Count, PivotAreas.Count, PivotCacheRecords.Count, PivotFields.Count, PivotFilters.Count, PivotHierarchies.Count, PivotRow.Count, PivotSelection.Count, QueryCache.Count, QueryTableDeletedFields.Count, QueryTableFields.Count, RangeSets.Count, ReviewedList.Count, RichValueData.Count, RichValueStructures.Count, RowFields.Count, RowHierarchiesUsage.Count, RowItems.Count, RowSortMap.Count, Scenario.Count, ServerFormats.Count, SetLevels.Count, Sets.Count, SharedItems.Count, SharedStringTable.Count, SheetIdMap.Count, SlicerCacheHideItemsWithNoData.Count, SlicerCacheOlapLevelName.Count, SupportingPropertyBagArray.Count, SupportingPropertyBagArrayData.Count, SupportingPropertyBagData.Count, SupportingPropertyBagStructures.Count, TableColumns.Count, TableParts.Count, Tables.Count, TableStyle.Count, TableStyles.Count, TabularSlicerCacheItems.Count, TextFields.Count, TupleSet.Count, Users.Count, ValueColorPositions.Count, WebPublishItems.Count, WebPublishObjects.Count. + /// is contained in the following XML elements: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , . + /// corresponds to the following strongly-typed properties: ArgumentDescriptions.Count, ArrayData.Count, Borders.Count, CacheFields.Count, CacheHierarchies.Count, CacheHierarchy.Count, CalculatedItems.Count, CalculatedMembers.Count, CellFormats.Count, CellStyleFormats.Count, CellStyles.Count, ChartFormats.Count, ColumnFields.Count, ColumnHierarchiesUsage.Count, ColumnItems.Count, ColumnSortMap.Count, ConditionalFormats.Count, DataFields.Count, DataReferences.Count, DataValidations.Count, DifferentialFormats.Count, Dimensions.Count, DiscreteProperties.Count, Dxfs.Count, Entries.Count, FeaturePropertyBags.Count, FieldsUsage.Count, Fills.Count, Fonts.Count, Formats.Count, FutureMetadata.Count, GroupItems.Count, GroupLevels.Count, GroupMembers.Count, Groups.Count, Items.Count, Kpis.Count, Maps.Count, MdxMetadata.Count, MeasureGroups.Count, MemberProperties.Count, Members.Count, MergeCells.Count, MetadataStrings.Count, MetadataTypes.Count, NumberingFormats.Count, OlapSlicerCacheLevelData.Count, OlapSlicerCacheLevelsData.Count, OlapSlicerCacheSelections.Count, Page.Count, PageFields.Count, Pages.Count, Parameters.Count, PivotAreaReference.Count, PivotAreaReferences.Count, PivotAreas.Count, PivotCacheRecords.Count, PivotFields.Count, PivotFilters.Count, PivotHierarchies.Count, PivotRow.Count, PivotSelection.Count, QueryCache.Count, QueryTableDeletedFields.Count, QueryTableFields.Count, RangeSets.Count, ReviewedList.Count, RichValueData.Count, RichValueStructures.Count, RowFields.Count, RowHierarchiesUsage.Count, RowItems.Count, RowSortMap.Count, Scenario.Count, ServerFormats.Count, SetLevels.Count, Sets.Count, SharedItems.Count, SharedStringTable.Count, SheetIdMap.Count, SlicerCacheHideItemsWithNoData.Count, SlicerCacheOlapLevelName.Count, SupportingPropertyBagArray.Count, SupportingPropertyBagArrayData.Count, SupportingPropertyBagData.Count, SupportingPropertyBagStructures.Count, TableColumns.Count, TableParts.Count, Tables.Count, TableStyle.Count, TableStyles.Count, TabularSlicerCacheItems.Count, TextFields.Count, TupleSet.Count, Users.Count, ValueColorPositions.Count, WebPublishItems.Count, WebPublishObjects.Count. /// /// public static readonly XName count = "count"; @@ -6899,6 +6923,18 @@ public static partial class NoNamespace /// public static readonly XName extendable = "extendable"; + /// + /// Represents the extRef XML attribute. + /// + /// + /// As an XML attribute, it: + /// + /// is contained in the following XML elements: . + /// corresponds to the following strongly-typed properties: FeaturePropertyBag.ExtRef. + /// + /// + public static readonly XName extRef = "extRef"; + /// /// Represents the extrusioncolor XML attribute. /// @@ -10715,6 +10751,18 @@ public static partial class NoNamespace /// public static readonly XName justLastX = "justLastX"; + /// + /// Represents the k XML attributes. + /// + /// + /// As an XML attribute, it: + /// + /// is contained in the following XML elements: , , , , , , . + /// corresponds to the following strongly-typed properties: ArrayFeatureProperty.K, BagFeatureProperty.K, BoolFeatureProperty.K, DecimalFeatureProperty.K, IntFeatureProperty.K, RelFeatureProperty.K, StringFeatureProperty.K. + /// + /// + public static readonly XName k = "k"; + /// /// Represents the keepAlive XML attribute. /// @@ -21377,8 +21425,8 @@ public static partial class NoNamespace /// /// As an XML attribute, it: /// - /// is contained in the following XML elements: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , . - /// corresponds to the following strongly-typed properties: Algorithm.Type, Annotation.Type, AnnotationXml.Type, AutoNumberedBullet.Type, CacheSource.Type, Callout.Type, Category.Type, Channel.Type, ColorTransformCategory.Type, Command.Type, ConditionalFormat.Type, ConditionalFormattingRule.Type, ConditionalFormattingValueObject.Type, ConditionalFormatValueObject.Type, Connection.Type, Constraint.Type, ContextNode.Type, ContextNodeProperty.Type, DataValidation.Type, DynamicFilter.Type, Extrusion.Type, Field.Type, FieldListActiveTabTopLevelEntity.Type, Fill.Type, FillExtendedProperties.Type, GradientFill.Type, Iterate.Type, Mapping.Type, NumericDimension.Type, OEmbedShared.Type, OleChartElement.Type, Parameter.Type, PhoneticProperties.Type, PivotArea.Type, PivotFilter.Type, PlaceholderShape.Type, Point.Type, Reaction.Type, Rule.Type, Shadow.Type, Shape.Type, SlicerStyleElement.Type, SlideLayout.Type, SlideSize.Type, SparklineGroup.Type, StringDimension.Type, StyleDisplayCategory.Type, TableStyleElement.Type, TextField.Type, TextWrap.Type, TimelineStyleElement.Type, Trace.Type, TriggerEventRecord.Type, VolatileType.Type, WebExtensionBinding.Type. + /// is contained in the following XML elements: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , . + /// corresponds to the following strongly-typed properties: Algorithm.Type, Annotation.Type, AnnotationXml.Type, AutoNumberedBullet.Type, CacheSource.Type, Callout.Type, Category.Type, Channel.Type, ColorTransformCategory.Type, Command.Type, ConditionalFormat.Type, ConditionalFormattingRule.Type, ConditionalFormattingValueObject.Type, ConditionalFormatValueObject.Type, Connection.Type, Constraint.Type, ContextNode.Type, ContextNodeProperty.Type, DataValidation.Type, DynamicFilter.Type, Extrusion.Type, FeaturePropertyBag.Type, Field.Type, FieldListActiveTabTopLevelEntity.Type, Fill.Type, FillExtendedProperties.Type, GradientFill.Type, Iterate.Type, Mapping.Type, NumericDimension.Type, OEmbedShared.Type, OleChartElement.Type, Parameter.Type, PhoneticProperties.Type, PivotArea.Type, PivotFilter.Type, PlaceholderShape.Type, Point.Type, Reaction.Type, Rule.Type, Shadow.Type, Shape.Type, SlicerStyleElement.Type, SlideLayout.Type, SlideSize.Type, SparklineGroup.Type, StringDimension.Type, StyleDisplayCategory.Type, TableStyleElement.Type, TextField.Type, TextWrap.Type, TimelineStyleElement.Type, Trace.Type, TriggerEventRecord.Type, VolatileType.Type, WebExtensionBinding.Type. /// /// public static readonly XName type = "type"; 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 78c04ac90..e5c16cea0 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 @@ -1453,7 +1453,7 @@ public static partial class X /// /// As an XML element, it: /// - /// has the following parent XML elements: , , , , , , , , . + /// has the following parent 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.XFPB.g.cs b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.XFPB.g.cs new file mode 100644 index 000000000..128c697f4 --- /dev/null +++ b/generated/DocumentFormat.OpenXml.Linq/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Linq.XFPB.g.cs @@ -0,0 +1,163 @@ +// 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:xfpb="http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" namespace. + /// + public static partial class XFPB + { + /// + /// Defines the XML namespace associated with the xfpb prefix. + /// + public static readonly XNamespace xfpb = "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag"; + + /// + /// Represents the xfpb:a XML element. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: . + /// has the following child XML elements: , , , , , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: ArrayFeatureProperty. + /// + /// + public static readonly XName a = xfpb + "a"; + + /// + /// Represents the xfpb:b XML elements. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: BoolFeatureProperty, Xsdboolean. + /// + /// + public static readonly XName b = xfpb + "b"; + + /// + /// Represents the xfpb:bag XML element. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: . + /// has the following child XML elements: , , , , , , . + /// has the following XML attributes: , , , . + /// corresponds to the following strongly-typed classes: FeaturePropertyBag. + /// + /// + public static readonly XName bag = xfpb + "bag"; + + /// + /// Represents the xfpb:bagExt XML element. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: . + /// has the following child XML elements: . + /// corresponds to the following strongly-typed classes: BagExtensions. + /// + /// + public static readonly XName bagExt = xfpb + "bagExt"; + + /// + /// Represents the xfpb:bagId XML elements. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: BagFeatureProperty, XsdunsignedInt. + /// + /// + public static readonly XName bagId = xfpb + "bagId"; + + /// + /// Represents the xfpb:d XML elements. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: DecimalFeatureProperty, Xsddouble. + /// + /// + public static readonly XName d = xfpb + "d"; + + /// + /// Represents the xfpb:extLst XML element. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following child XML elements: . + /// corresponds to the following strongly-typed classes: ExtensionList. + /// + /// + public static readonly XName extLst = xfpb + "extLst"; + + /// + /// Represents the xfpb:FeaturePropertyBags XML element. + /// + /// + /// As an XML element, it: + /// + /// has the following child XML elements: , , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: FeaturePropertyBags. + /// + /// + public static readonly XName FeaturePropertyBags = xfpb + "FeaturePropertyBags"; + + /// + /// Represents the xfpb:i XML elements. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: IntFeatureProperty, Xsdinteger. + /// + /// + public static readonly XName i = xfpb + "i"; + + /// + /// Represents the xfpb:rel XML elements. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: RelFeatureProperty, RelXsdstring. + /// + /// + public static readonly XName rel = xfpb + "rel"; + + /// + /// Represents the xfpb:s XML elements. + /// + /// + /// As an XML element, it: + /// + /// has the following parent XML elements: , . + /// has the following XML attributes: . + /// corresponds to the following strongly-typed classes: StringFeatureProperty, SXsdstring. + /// + /// + public static readonly XName s = xfpb + "s"; + } +} diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IPartFactoryFeature.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IPartFactoryFeature.g.cs index 83d813023..554595f47 100644 --- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IPartFactoryFeature.g.cs +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IPartFactoryFeature.g.cs @@ -53,6 +53,7 @@ partial class SpreadsheetDocumentFeatures : IPartFactoryFeature ExtendedChartPart.RelationshipTypeConstant => new ExtendedChartPart(), ExtendedFilePropertiesPart.RelationshipTypeConstant => new ExtendedFilePropertiesPart(), ExternalWorkbookPart.RelationshipTypeConstant => new ExternalWorkbookPart(), + FeaturePropertyBagsPart.RelationshipTypeConstant => new FeaturePropertyBagsPart(), ImagePart.RelationshipTypeConstant => new ImagePart(), InternationalMacroSheetPart.RelationshipTypeConstant => new InternationalMacroSheetPart(), LabelInfoPart.RelationshipTypeConstant => new LabelInfoPart(), diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IRootElementFeature.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IRootElementFeature.g.cs index 179d240a9..ecc67ed7d 100644 --- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IRootElementFeature.g.cs +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_IRootElementFeature.g.cs @@ -73,6 +73,8 @@ partial class SpreadsheetDocumentFeatures : IRootElementFeature { new OpenXmlQualifiedName("http://schemas.openxmlformats.org/officeDocument/2006/extended-properties", "Properties"), () => new DocumentFormat.OpenXml.ExtendedProperties.Properties() }, // ExternalWorkbookPart { new OpenXmlQualifiedName("http://schemas.openxmlformats.org/spreadsheetml/2006/main", "externalLink"), () => new DocumentFormat.OpenXml.Spreadsheet.ExternalLink() }, + // FeaturePropertyBagsPart + { new OpenXmlQualifiedName("http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag", "FeaturePropertyBags"), () => new DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FeaturePropertyBags() }, // LabelInfoPart { new OpenXmlQualifiedName("http://schemas.microsoft.com/office/2020/mipLabelMetadata", "labelList"), () => new DocumentFormat.OpenXml.Office2021.MipLabelMetaData.ClassificationLabelList() }, // MacroSheetPart diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_ITypedPartFactoryFeature.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_ITypedPartFactoryFeature.g.cs index 71d909870..f105c2568 100644 --- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_ITypedPartFactoryFeature.g.cs +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Package_SpreadsheetDocument_ITypedPartFactoryFeature.g.cs @@ -185,6 +185,11 @@ partial class SpreadsheetDocumentFeatures : ITypedPartFactoryFeature return (T)(object)new ExternalWorkbookPart(); } + if (typeof(T) == typeof(FeaturePropertyBagsPart)) + { + return (T)(object)new FeaturePropertyBagsPart(); + } + if (typeof(T) == typeof(ImagePart)) { return (T)(object)new ImagePart(); diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_FeaturePropertyBagsPart.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_FeaturePropertyBagsPart.g.cs new file mode 100644 index 000000000..8a58d3540 --- /dev/null +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_FeaturePropertyBagsPart.g.cs @@ -0,0 +1,95 @@ +// + +// 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.Features; +using DocumentFormat.OpenXml.Framework; +using System; +using System.Collections.Generic; + +namespace DocumentFormat.OpenXml.Packaging +{ + /// + /// Defines the FeaturePropertyBagsPart + /// + public partial class FeaturePropertyBagsPart : OpenXmlPart, + IFixedContentTypePart + { + internal const string ContentTypeConstant = "application/vnd.ms-excel.featurepropertybag+xml"; + internal const string RelationshipTypeConstant = "http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag"; + private DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FeaturePropertyBags? _rootElement; + + /// + /// Creates an instance of the FeaturePropertyBagsPart OpenXmlType + /// + internal FeaturePropertyBagsPart() + { + } + + /// + public sealed override string ContentType => ContentTypeConstant; + + /// + /// Gets or sets the root element of this part. + /// + public DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FeaturePropertyBags FeaturePropertyBags + { + get + { + if (_rootElement is null) + { + LoadDomTree(); + } + + return _rootElement!; + } + + set + { + if (value is null) + { + throw new ArgumentNullException(nameof(value)); + } + + SetDomTree(value); + } + } + + private protected override OpenXmlPartRootElement? InternalRootElement + { + get + { + return _rootElement; + } + + set + { + _rootElement = value as DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FeaturePropertyBags; + } + } + + internal override OpenXmlPartRootElement? PartRootElement => FeaturePropertyBags; + + /// + public sealed override string RelationshipType => RelationshipTypeConstant; + + internal override bool IsInVersion(FileFormatVersions version) + { + return version.AtLeast(FileFormatVersions.Microsoft365); + } + + /// + public override IFeatureCollection Features => _features ??= new GeneratedFeatures(this); + + private sealed class GeneratedFeatures : TypedPartFeatureCollection, ITargetFeature + { + public GeneratedFeatures(OpenXmlPart part) : base(part) { } + string ITargetFeature.Name => "featurePropertyBag"; + string ITargetFeature.Path => "featurePropertyBag"; + } + + } +} diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_WorkbookPart.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_WorkbookPart.g.cs index a9b090d91..910fa251f 100644 --- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_WorkbookPart.g.cs +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/Part_WorkbookPart.g.cs @@ -84,6 +84,11 @@ internal WorkbookPart() /// public IEnumerable ExternalWorkbookParts => GetPartsOfType(); + /// + /// Gets the FeaturePropertyBagsPart of the WorkbookPart + /// + public FeaturePropertyBagsPart? FeaturePropertyBagsPart => GetSubPartOfType(); + private protected override OpenXmlPartRootElement? InternalRootElement { get @@ -281,6 +286,7 @@ public GeneratedFeatures(OpenXmlPart part) : base(part) { } { "http://schemas.microsoft.com/office/2017/06/relationships/rdSupportingPropertyBagStructure", "application/vnd.ms-excel.rdsupportingpropertybagstructure+xml", false, true, FileFormatVersions.Office2019 }, { "http://schemas.microsoft.com/office/2017/06/relationships/rdRichValueTypes", "application/vnd.ms-excel.rdrichvaluetypes+xml", false, true, FileFormatVersions.Office2019 }, { "http://schemas.microsoft.com/office/2020/07/relationships/rdrichvaluewebimage", "application/vnd.ms-excel.rdrichvaluewebimage+xml", false, false, FileFormatVersions.Office2021 }, + { "http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag", "application/vnd.ms-excel.featurepropertybag+xml", false, false, FileFormatVersions.Microsoft365 }, }; bool IPartConstraintFeature.TryGetRule(string relationshipId, out PartConstraintRule rule) => _partConstraints.TryGetRule(relationshipId, out rule); IEnumerable IPartConstraintFeature.Rules => _partConstraints.Rules; diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.g.cs index 772128a52..56c23b0a1 100644 --- a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.g.cs +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2022_featurepropertybag.g.cs @@ -30,7 +30,7 @@ namespace DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag /// <xfpb:bag> /// /// - public partial class FeaturePropertyBags : OpenXmlCompositeElement + public partial class FeaturePropertyBags : OpenXmlPartRootElement { /// /// Initializes a new instance of the FeaturePropertyBags class. @@ -93,86 +93,964 @@ internal override void ConfigureMetadata(ElementMetadata.Builder builder) /// public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + + internal FeaturePropertyBags(FeaturePropertyBagsPart ownerPart) : base(ownerPart) + { + } + + /// + /// Loads the DOM from the FeaturePropertyBagsPart + /// + /// Specifies the part to be loaded. + public void Load(FeaturePropertyBagsPart openXmlPart) + { + LoadFromPart(openXmlPart); + } + + /// + /// Saves the DOM into the FeaturePropertyBagsPart. + /// + /// Specifies the part to save to. + public void Save(FeaturePropertyBagsPart openXmlPart) + { + base.SaveToPart(openXmlPart); + } + + /// + /// Gets the FeaturePropertyBagsPart associated with this element. + /// + public FeaturePropertyBagsPart? FeaturePropertyBagsPart + { + get => OpenXmlPart as FeaturePropertyBagsPart; + internal set => OpenXmlPart = value; + } + } + + /// + /// Defines the FpbsFeaturePropertyBags Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:fpbs. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:extLst> + /// <xfpb:bagExt> + /// <xfpb:bag> + /// + /// + public partial class FpbsFeaturePropertyBags : OpenXmlFeaturePropertyBagsElement + { + /// + /// Initializes a new instance of the FpbsFeaturePropertyBags class. + /// + public FpbsFeaturePropertyBags() : base() + { + } + + /// + /// Initializes a new instance of the FpbsFeaturePropertyBags class with the specified child elements. + /// + /// Specifies the child elements. + public FpbsFeaturePropertyBags(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the FpbsFeaturePropertyBags class with the specified child elements. + /// + /// Specifies the child elements. + public FpbsFeaturePropertyBags(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the FpbsFeaturePropertyBags class from outer XML. + /// + /// Specifies the outer XML of the element. + public FpbsFeaturePropertyBags(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:fpbs"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.BagExtensions), 0, 0, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FeaturePropertyBag), 0, 0, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ExtensionList), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the OpenXmlFeaturePropertyBagsElement Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is :. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:extLst> + /// <xfpb:bagExt> + /// <xfpb:bag> + /// + /// + public abstract partial class OpenXmlFeaturePropertyBagsElement : OpenXmlCompositeElement + { + /// + /// Initializes a new instance of the OpenXmlFeaturePropertyBagsElement class. + /// + protected OpenXmlFeaturePropertyBagsElement() : base() + { + } + + /// + /// Initializes a new instance of the OpenXmlFeaturePropertyBagsElement class with the specified child elements. + /// + /// Specifies the child elements. + protected OpenXmlFeaturePropertyBagsElement(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the OpenXmlFeaturePropertyBagsElement class with the specified child elements. + /// + /// Specifies the child elements. + protected OpenXmlFeaturePropertyBagsElement(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the OpenXmlFeaturePropertyBagsElement class from outer XML. + /// + /// Specifies the outer XML of the element. + protected OpenXmlFeaturePropertyBagsElement(string outerXml) : base(outerXml) + { + } + + /// + /// count, this property is only available in Microsoft365 and later. + /// Represents the following attribute in the schema: count + /// + public UInt32Value? Count + { + get => GetAttribute(); + set => SetAttribute(value); + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.AddChild(); + builder.AddChild(); + builder.AddChild(); + builder.AddElement() + .AddAttribute("count", a => a.Count); + } + } + + /// + /// Defines the XfComplement Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:xfComplement. + /// + public partial class XfComplement : OpenXmlLeafElement + { + /// + /// Initializes a new instance of the XfComplement class. + /// + public XfComplement() : base() + { + } + + /// + /// i, this property is only available in Microsoft365 and later. + /// Represents the following attribute in the schema: i + /// + public UInt32Value? I + { + get => GetAttribute(); + set => SetAttribute(value); + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:xfComplement"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.AddElement() + .AddAttribute("i", a => a.I, aBuilder => + { + aBuilder.AddValidator(RequiredValidator.Instance); + }); + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the DXFComplement Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:DXFComplement. + /// + public partial class DXFComplement : OpenXmlLeafElement + { + /// + /// Initializes a new instance of the DXFComplement class. + /// + public DXFComplement() : base() + { + } + + /// + /// i, this property is only available in Microsoft365 and later. + /// Represents the following attribute in the schema: i + /// + public UInt32Value? I + { + get => GetAttribute(); + set => SetAttribute(value); + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:DXFComplement"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.AddElement() + .AddAttribute("i", a => a.I, aBuilder => + { + aBuilder.AddValidator(RequiredValidator.Instance); + }); + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the RevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:revdxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class RevDxf : OpenXmlCompositeElement + { + /// + /// Initializes a new instance of the RevDxf class. + /// + public RevDxf() : base() + { + } + + /// + /// Initializes a new instance of the RevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public RevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the RevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public RevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the RevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public RevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:revdxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.AddChild(); + builder.AddChild(); + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + /// FpbsFeaturePropertyBags. + /// Represents the following element tag in the schema: xfpb:fpbs. + /// + /// + /// xmlns:xfpb = http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag + /// + public DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags? FpbsFeaturePropertyBags + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// DifferentialFormatType. + /// Represents the following element tag in the schema: xfpb:dxf. + /// + /// + /// xmlns:xfpb = http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag + /// + public DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType? DifferentialFormatType + { + get => GetElement(); + set => SetElement(value); + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the HeaderRowRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:headerRowRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class HeaderRowRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the HeaderRowRevDxfTableRevDxf class. + /// + public HeaderRowRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the HeaderRowRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public HeaderRowRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the HeaderRowRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public HeaderRowRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the HeaderRowRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public HeaderRowRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:headerRowRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the DataRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:dataRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class DataRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the DataRevDxfTableRevDxf class. + /// + public DataRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the DataRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public DataRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the DataRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public DataRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the DataRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public DataRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:dataRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the TotalsRowRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:totalsRowRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class TotalsRowRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the TotalsRowRevDxfTableRevDxf class. + /// + public TotalsRowRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the TotalsRowRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public TotalsRowRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the TotalsRowRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public TotalsRowRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the TotalsRowRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public TotalsRowRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:totalsRowRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the HeaderRowBorderRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:headerRowBorderRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class HeaderRowBorderRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the HeaderRowBorderRevDxfTableRevDxf class. + /// + public HeaderRowBorderRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the HeaderRowBorderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public HeaderRowBorderRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the HeaderRowBorderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public HeaderRowBorderRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the HeaderRowBorderRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public HeaderRowBorderRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:headerRowBorderRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the TableBorderRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:tableBorderRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class TableBorderRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the TableBorderRevDxfTableRevDxf class. + /// + public TableBorderRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the TableBorderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public TableBorderRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the TableBorderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public TableBorderRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the TableBorderRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public TableBorderRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:tableBorderRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the TotalsRowBorderRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:totalsRowBorderRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class TotalsRowBorderRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the TotalsRowBorderRevDxfTableRevDxf class. + /// + public TotalsRowBorderRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the TotalsRowBorderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public TotalsRowBorderRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the TotalsRowBorderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public TotalsRowBorderRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the TotalsRowBorderRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public TotalsRowBorderRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:totalsRowBorderRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the ColumnHeaderRevDxfTableRevDxf Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:columnHeaderRevDxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class ColumnHeaderRevDxfTableRevDxf : OpenXmlTableRevDxfElement + { + /// + /// Initializes a new instance of the ColumnHeaderRevDxfTableRevDxf class. + /// + public ColumnHeaderRevDxfTableRevDxf() : base() + { + } + + /// + /// Initializes a new instance of the ColumnHeaderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public ColumnHeaderRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the ColumnHeaderRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public ColumnHeaderRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the ColumnHeaderRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public ColumnHeaderRevDxfTableRevDxf(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:columnHeaderRevDxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); } /// - /// Defines the XfComplement Class. + /// Defines the ColumnBodyRevDxfTableRevDxf Class. /// This class is available in Microsoft365 and above. - /// When the object is serialized out as xml, it's qualified name is xfpb:xfComplement. + /// When the object is serialized out as xml, it's qualified name is xfpb:columnBodyRevDxf. /// - public partial class XfComplement : OpenXmlLeafElement + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class ColumnBodyRevDxfTableRevDxf : OpenXmlTableRevDxfElement { /// - /// Initializes a new instance of the XfComplement class. + /// Initializes a new instance of the ColumnBodyRevDxfTableRevDxf class. /// - public XfComplement() : base() + public ColumnBodyRevDxfTableRevDxf() : base() { } /// - /// i, this property is only available in Microsoft365 and later. - /// Represents the following attribute in the schema: i + /// Initializes a new instance of the ColumnBodyRevDxfTableRevDxf class with the specified child elements. /// - public UInt32Value? I + /// Specifies the child elements. + public ColumnBodyRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the ColumnBodyRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public ColumnBodyRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the ColumnBodyRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public ColumnBodyRevDxfTableRevDxf(string outerXml) : base(outerXml) { - get => GetAttribute(); - set => SetAttribute(value); } internal override void ConfigureMetadata(ElementMetadata.Builder builder) { base.ConfigureMetadata(builder); - builder.SetSchema("xfpb:xfComplement"); + builder.SetSchema("xfpb:columnBodyRevDxf"); builder.Availability = FileFormatVersions.Microsoft365; - builder.AddElement() - .AddAttribute("i", a => a.I, aBuilder => - { - aBuilder.AddValidator(RequiredValidator.Instance); - }); + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; } /// - public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); } /// - /// Defines the DXFComplement Class. + /// Defines the ColumnTotalsRevDxfTableRevDxf Class. /// This class is available in Microsoft365 and above. - /// When the object is serialized out as xml, it's qualified name is xfpb:DXFComplement. + /// When the object is serialized out as xml, it's qualified name is xfpb:columnTotalsRevDxf. /// - public partial class DXFComplement : OpenXmlLeafElement + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public partial class ColumnTotalsRevDxfTableRevDxf : OpenXmlTableRevDxfElement { /// - /// Initializes a new instance of the DXFComplement class. + /// Initializes a new instance of the ColumnTotalsRevDxfTableRevDxf class. /// - public DXFComplement() : base() + public ColumnTotalsRevDxfTableRevDxf() : base() { } /// - /// i, this property is only available in Microsoft365 and later. - /// Represents the following attribute in the schema: i + /// Initializes a new instance of the ColumnTotalsRevDxfTableRevDxf class with the specified child elements. /// - public UInt32Value? I + /// Specifies the child elements. + public ColumnTotalsRevDxfTableRevDxf(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the ColumnTotalsRevDxfTableRevDxf class with the specified child elements. + /// + /// Specifies the child elements. + public ColumnTotalsRevDxfTableRevDxf(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the ColumnTotalsRevDxfTableRevDxf class from outer XML. + /// + /// Specifies the outer XML of the element. + public ColumnTotalsRevDxfTableRevDxf(string outerXml) : base(outerXml) { - get => GetAttribute(); - set => SetAttribute(value); } internal override void ConfigureMetadata(ElementMetadata.Builder builder) { base.ConfigureMetadata(builder); - builder.SetSchema("xfpb:DXFComplement"); + builder.SetSchema("xfpb:columnTotalsRevDxf"); builder.Availability = FileFormatVersions.Microsoft365; - builder.AddElement() - .AddAttribute("i", a => a.I, aBuilder => - { - aBuilder.AddValidator(RequiredValidator.Instance); - }); + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags), 1, 1, version: FileFormatVersions.Microsoft365), + new ElementParticle(typeof(DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType), 0, 1, version: FileFormatVersions.Microsoft365) + }; } /// - public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + + /// + /// Defines the OpenXmlTableRevDxfElement Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is :. + /// + /// + /// The following table lists the possible child types: + /// + /// <xfpb:dxf> + /// <xfpb:fpbs> + /// + /// + public abstract partial class OpenXmlTableRevDxfElement : OpenXmlCompositeElement + { + /// + /// Initializes a new instance of the OpenXmlTableRevDxfElement class. + /// + protected OpenXmlTableRevDxfElement() : base() + { + } + + /// + /// Initializes a new instance of the OpenXmlTableRevDxfElement class with the specified child elements. + /// + /// Specifies the child elements. + protected OpenXmlTableRevDxfElement(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the OpenXmlTableRevDxfElement class with the specified child elements. + /// + /// Specifies the child elements. + protected OpenXmlTableRevDxfElement(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the OpenXmlTableRevDxfElement class from outer XML. + /// + /// Specifies the outer XML of the element. + protected OpenXmlTableRevDxfElement(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.AddChild(); + builder.AddChild(); + } + + /// + /// FpbsFeaturePropertyBags. + /// Represents the following element tag in the schema: xfpb:fpbs. + /// + /// + /// xmlns:xfpb = http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag + /// + public DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags? FpbsFeaturePropertyBags + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// DifferentialFormatType. + /// Represents the following element tag in the schema: xfpb:dxf. + /// + /// + /// xmlns:xfpb = http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag + /// + public DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType? DifferentialFormatType + { + get => GetElement(); + set => SetElement(value); + } } /// @@ -848,6 +1726,175 @@ internal override void ConfigureMetadata(ElementMetadata.Builder builder) public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); } + /// + /// Defines the DifferentialFormatType Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xfpb:dxf. + /// + /// + /// The following table lists the possible child types: + /// + /// <x:border> + /// <x:alignment> + /// <x:protection> + /// <x:extLst> + /// <x:fill> + /// <x:font> + /// <x:numFmt> + /// + /// + public partial class DifferentialFormatType : OpenXmlCompositeElement + { + /// + /// Initializes a new instance of the DifferentialFormatType class. + /// + public DifferentialFormatType() : base() + { + } + + /// + /// Initializes a new instance of the DifferentialFormatType class with the specified child elements. + /// + /// Specifies the child elements. + public DifferentialFormatType(IEnumerable childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the DifferentialFormatType class with the specified child elements. + /// + /// Specifies the child elements. + public DifferentialFormatType(params OpenXmlElement[] childElements) : base(childElements) + { + } + + /// + /// Initializes a new instance of the DifferentialFormatType class from outer XML. + /// + /// Specifies the outer XML of the element. + public DifferentialFormatType(string outerXml) : base(outerXml) + { + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.SetSchema("xfpb:dxf"); + builder.Availability = FileFormatVersions.Microsoft365; + builder.AddChild(); + builder.AddChild(); + builder.AddChild(); + builder.AddChild(); + builder.AddChild(); + builder.AddChild(); + builder.AddChild(); + builder.Particle = new CompositeParticle.Builder(ParticleType.Sequence, 1, 1) + { + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.Font), 0, 1), + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.NumberingFormat), 0, 1), + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.Fill), 0, 1), + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.Alignment), 0, 1), + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.Border), 0, 1), + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.Protection), 0, 1), + new ElementParticle(typeof(DocumentFormat.OpenXml.Spreadsheet.ExtensionList), 0, 1) + }; + } + + /// + /// Font Properties. + /// Represents the following element tag in the schema: x:font. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.Font? Font + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// Number Format. + /// Represents the following element tag in the schema: x:numFmt. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.NumberingFormat? NumberingFormat + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// Fill. + /// Represents the following element tag in the schema: x:fill. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.Fill? Fill + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// Alignment. + /// Represents the following element tag in the schema: x:alignment. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.Alignment? Alignment + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// Border Properties. + /// Represents the following element tag in the schema: x:border. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.Border? Border + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// Protection Properties. + /// Represents the following element tag in the schema: x:protection. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.Protection? Protection + { + get => GetElement(); + set => SetElement(value); + } + + /// + /// Future Feature Data Storage Area. + /// Represents the following element tag in the schema: x:extLst. + /// + /// + /// xmlns:x = http://schemas.openxmlformats.org/spreadsheetml/2006/main + /// + public DocumentFormat.OpenXml.Spreadsheet.ExtensionList? ExtensionList + { + get => GetElement(); + set => SetElement(value); + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } + /// /// Defines the XsdunsignedInt Class. /// This class is available in Microsoft365 and above. diff --git a/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.g.cs b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.g.cs new file mode 100644 index 000000000..06c8a9d64 --- /dev/null +++ b/generated/DocumentFormat.OpenXml/DocumentFormat.OpenXml.Generator/DocumentFormat.OpenXml.Generator.OpenXmlGenerator/schemas_microsoft_com_office_spreadsheetml_2024_pivotAutoRefresh.g.cs @@ -0,0 +1,57 @@ +// + +// 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.Y2024.PivotAutoRefresh +{ + /// + /// Defines the Xsdboolean Class. + /// This class is available in Microsoft365 and above. + /// When the object is serialized out as xml, it's qualified name is xlpar:autoRefresh. + /// + public partial class Xsdboolean : OpenXmlLeafTextElement + { + /// + /// Initializes a new instance of the Xsdboolean class. + /// + public Xsdboolean() : base() + { + } + + /// + /// Initializes a new instance of the Xsdboolean class with the specified text content. + /// + /// Specifies the text content of the element. + public Xsdboolean(string text) : base(text) + { + } + + internal override OpenXmlSimpleType InnerTextToValue(string text) + { + return new BooleanValue { InnerText = text }; + } + + internal override void ConfigureMetadata(ElementMetadata.Builder builder) + { + base.ConfigureMetadata(builder); + builder.AddValidator(NumberValidator.Instance); + builder.SetSchema("xlpar:autoRefresh"); + builder.Availability = FileFormatVersions.Microsoft365; + } + + /// + public override OpenXmlElement CloneNode(bool deep) => CloneImp(deep); + } +} \ No newline at end of file diff --git a/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json b/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json index e526a673f..2c3e711fd 100644 --- a/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json +++ b/test/DocumentFormat.OpenXml.Framework.Tests/ElementChildren.json @@ -22723,6 +22723,10 @@ "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2023.Pivot2023Calculation.FeatureSupport", "Children": [] }, + { + "Element": "DocumentFormat.OpenXml.Office.SpreadSheetML.Y2024.PivotAutoRefresh.Xsdboolean", + "Children": [] + }, { "Element": "DocumentFormat.OpenXml.Office.Word.AllocatedCommand", "Children": [] @@ -23065,14 +23069,99 @@ "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.BoolFeatureProperty", "Children": [] }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ColumnBodyRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ColumnHeaderRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ColumnTotalsRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, { "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DXFComplement", "Children": [] }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DataRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, { "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DecimalFeatureProperty", "Children": [] }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "Children": [ + { + "Name": "alignment", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + }, + { + "Name": "border", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + }, + { + "Name": "extLst", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + }, + { + "Name": "fill", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + }, + { + "Name": "font", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + }, + { + "Name": "numFmt", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + }, + { + "Name": "protection", + "Namespace": "http://schemas.openxmlformats.org/spreadsheetml/2006/main" + } + ] + }, { "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ExtensionList", "Children": [ @@ -23132,6 +23221,49 @@ } ] }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags", + "Children": [ + { + "Name": "bag", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "bagExt", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "extLst", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.HeaderRowBorderRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.HeaderRowRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, { "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.IntFeatureProperty", "Children": [] @@ -23144,6 +23276,19 @@ "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.RelXsdstring", "Children": [] }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.RevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, { "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.SXsdstring", "Children": [] @@ -23152,6 +23297,45 @@ "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.StringFeatureProperty", "Children": [] }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.TableBorderRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.TotalsRowBorderRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, + { + "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.TotalsRowRevDxfTableRevDxf", + "Children": [ + { + "Name": "dxf", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + }, + { + "Name": "fpbs", + "Namespace": "http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag" + } + ] + }, { "Element": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.XfComplement", "Children": [] diff --git a/test/DocumentFormat.OpenXml.Framework.Tests/ElementLookupTests.cs b/test/DocumentFormat.OpenXml.Framework.Tests/ElementLookupTests.cs index 03a1c2c19..c0665786a 100644 --- a/test/DocumentFormat.OpenXml.Framework.Tests/ElementLookupTests.cs +++ b/test/DocumentFormat.OpenXml.Framework.Tests/ElementLookupTests.cs @@ -54,7 +54,7 @@ public void VerifyTypedRootsCanBeCreatedWord() .Where(t => !t.IsAbstract && typeof(OpenXmlPartRootElement).IsAssignableFrom(t)) .ToList(); - Assert.Equal(102, allTypedParts.Count); + Assert.Equal(103, allTypedParts.Count); // Act/Assert foreach (var rootType in allTypedParts) diff --git a/test/DocumentFormat.OpenXml.Framework.Tests/OpenXmlNamespaceTests.cs b/test/DocumentFormat.OpenXml.Framework.Tests/OpenXmlNamespaceTests.cs index cda428c46..63c0f43d4 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(161, resolver.GetNamespacesInScope(System.Xml.XmlNamespaceScope.All).Count); + Assert.Equal(163, resolver.GetNamespacesInScope(System.Xml.XmlNamespaceScope.All).Count); } [InlineData("", "", FileFormatVersions.Office2007)] diff --git a/test/DocumentFormat.OpenXml.Packaging.Tests/PartConstraintRuleTests.cs b/test/DocumentFormat.OpenXml.Packaging.Tests/PartConstraintRuleTests.cs index 1baba7f14..e49ab7e96 100644 --- a/test/DocumentFormat.OpenXml.Packaging.Tests/PartConstraintRuleTests.cs +++ b/test/DocumentFormat.OpenXml.Packaging.Tests/PartConstraintRuleTests.cs @@ -68,6 +68,8 @@ public void AllExpectedParts() public void ValidatePart(Type partType) { var part = InitializePart(partType); + + // If there are added parts, PartConstraintData.json needs to be updated with the new part's data and relationship. var expectedConstraints = GetConstraintData(part); var constraints = part.Features.GetRequired(); @@ -85,7 +87,8 @@ public void ValidatePart(Type partType) } #if DEBUG - _output.WriteObjectToTempFile("part constraints", constraints.Rules); + _output.WriteObjectToTempFile("expected constraints", expectedConstraints.Parts.OrderBy(p => p.RelationshipType)); + _output.WriteObjectToTempFile("actual constraints", constraints.Rules.OrderBy(p => p.RelationshipType).Select(p => new PartConstraintRule2(p))); #endif Assert.Equal( @@ -147,6 +150,7 @@ private static OpenXmlPart InitializePart(Type type) { var names = typeof(PartConstraintRuleTests).GetTypeInfo().Assembly.GetManifestResourceNames(); + // If there are added parts, PartConstraintData.json needs to be updated with the new part's data and relationship. using (var stream = typeof(PartConstraintRuleTests).GetTypeInfo().Assembly.GetManifestResourceStream("DocumentFormat.OpenXml.Packaging.Tests.data.PartConstraintData.json")) using (var reader = new StreamReader(stream)) { diff --git a/test/DocumentFormat.OpenXml.Packaging.Tests/data/PartConstraintData.json b/test/DocumentFormat.OpenXml.Packaging.Tests/data/PartConstraintData.json index 8d5461072..0f7e6e6e2 100644 --- a/test/DocumentFormat.OpenXml.Packaging.Tests/data/PartConstraintData.json +++ b/test/DocumentFormat.OpenXml.Packaging.Tests/data/PartConstraintData.json @@ -3970,6 +3970,13 @@ "MinOccursIsNonZero": false, "MaxOccursGreatThanOne": false, "FileFormat": "Office2021" + }, + { + "RelationshipType": "http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag", + "ContentType": "application/vnd.ms-excel.featurepropertybag+xml", + "MinOccursIsNonZero": false, + "MaxOccursGreatThanOne": false, + "FileFormat": "Microsoft365" } ] }, @@ -4228,5 +4235,15 @@ "TargetName": "sig", "TargetPath": "_xmlsignatures", "Parts": [] + }, + { + "Name": "DocumentFormat.OpenXml.Packaging.FeaturePropertyBagsPart", + "ContentType": "application/vnd.ms-excel.featurepropertybag+xml", + "IsContentTypeFixed": true, + "RelationshipType": "http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag", + "TargetFileExtension": ".xml", + "TargetName": "featurePropertyBag", + "TargetPath": "featurePropertyBag", + "Parts": [] } ] \ No newline at end of file diff --git a/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json b/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json index a1fd4752c..7b407d38d 100644 --- a/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json +++ b/test/DocumentFormat.OpenXml.Packaging.Tests/data/Particles.json @@ -34322,6 +34322,127 @@ } ] }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ColumnBodyRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ColumnHeaderRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ColumnTotalsRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DataRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.Font", + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.NumberingFormat", + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.Fill", + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.Alignment", + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.Border", + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.Protection", + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Spreadsheet.ExtensionList", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, { "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ExtensionList", "Value": [ @@ -34414,6 +34535,153 @@ } ] }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.BagExtensions", + "MaxOccurs": 0, + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FeaturePropertyBag", + "MaxOccurs": 0, + "MinOccurs": 0 + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.ExtensionList", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.HeaderRowBorderRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.HeaderRowRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.RevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.TableBorderRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.TotalsRowBorderRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, + { + "Key": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.TotalsRowRevDxfTableRevDxf", + "Value": [ + { + "Key": "Microsoft365", + "Value": { + "ChildrenParticles": [ + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.FpbsFeaturePropertyBags" + }, + { + "ElementType": "DocumentFormat.OpenXml.Office.Y2022.FeaturePropertyBag.DifferentialFormatType", + "MinOccurs": 0 + } + ], + "ParticleType": "Sequence" + } + } + ] + }, { "Key": "DocumentFormat.OpenXml.Office.Y2022.RichValueRel.ExtensionList", "Value": [