{"record":{"id":"c656d054537a1bef","repo":"dotnet/wpf","slug":"reachpackaging-notvalidsignaturedefinitionattribute","errorCode":null,"errorMessage":"ReachPackaging_NotValidSignatureDefinitionAttribute","messagePattern":"ReachPackaging_NotValidSignatureDefinitionAttribute","errorType":"exception","errorClass":"XpsPackagingException","httpStatus":null,"severity":"error","filePath":"src/Microsoft.DotNet.Wpf/src/ReachFramework/Packaging/XPSSignatureDefinition.cs","lineNumber":500,"sourceCode":"                {\n                    SpotId = new Guid(XmlConvert.DecodeName(attributeValue));\n                }\n                catch (ArgumentNullException)\n                {\n                    SpotId = null;\n                }\n                catch (FormatException)\n                {\n                    SpotId = null;\n                }\n            }\n            else if (attributeName == XpsS0Markup.XmlLang)\n            {\n                Culture = new CultureInfo(attributeValue);\n            }\n            else\n            {\n                throw new XpsPackagingException(SR.Format(SR.ReachPackaging_NotValidSignatureDefinitionAttribute, attributeName));\n            }\n        }\n\n        private\n        void\n        ValidateSpotLocationAttribute( string attributeName, string attributeValue )\n        {\n            ConfirmSpotLocation();\n\n            if (attributeName == XpsS0Markup.StartX)\n            {\n                SpotLocation.StartX = double.Parse(attributeValue, System.Globalization.CultureInfo.InvariantCulture);\n            }\n            else if (attributeName == XpsS0Markup.StartY)\n            {\n                SpotLocation.StartY = double.Parse(attributeValue, System.Globalization.CultureInfo.InvariantCulture);\n            }\n            else if (attributeName == XpsS0Markup.PageUri)","sourceCodeStart":482,"sourceCodeEnd":518,"githubUrl":"https://github.com/dotnet/wpf/blob/81131a70a4c573cd62748a5c36908fc4d662daa9/src/Microsoft.DotNet.Wpf/src/ReachFramework/Packaging/XPSSignatureDefinition.cs#L482-L518","documentation":"ValidateSignatureDefinitionAttribute throws this XpsPackagingException when ReadAttributes encounters an attribute name on a signature definition element that is not one of the recognized attributes (SpotID, SignerName, xml:lang, etc.). It signals an unexpected/invalid attribute in the SignatureDefinition XML of the XPS package.","triggerScenarios":"Thrown at src/Microsoft.DotNet.Wpf/src/ReachFramework/Packaging/XPSSignatureDefinition.cs:500 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Only write recognized attributes (SpotId, SignerName, xml:lang, SignBy, SigningLocale, Intent) inside the SignatureDefinition element","Remove the unrecognized attribute from the XPS SignatureDefinition markup","If reading third-party markup, catch XpsPackagingException around ParseSignatureDefinitions and skip malformed definitions"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"81131a70a4c573cd62748a5c36908fc4d662daa9","analyzedAt":"2026-09-14T10:12:48.479Z","contentChangedAt":"2026-09-14T10:12:48.479Z","schemaVersion":2},"datasetVersion":"2026-09-22T01:17:13.364Z"}