{"record":{"id":"1754b5b1003c6c3a","repo":"dotnet/wpf","slug":"the-given-data-space-label-name-is-already-in-use","errorCode":null,"errorMessage":"The given data space label name is already in use.","messagePattern":"The given data space label name is already in use\\.","errorType":"validation","errorClass":"ArgumentException","httpStatus":null,"severity":"error","filePath":"src/Microsoft.DotNet.Wpf/src/WindowsBase/System/IO/Packaging/CompoundFile/DataSpaceManager.cs","lineNumber":589,"sourceCode":"    /// <param name=\"newDataSpaceLabel\">New data space label</param>\n    internal void DefineDataSpace( string[] transformStack, string newDataSpaceLabel )\n    {\n        CheckDisposedStatus();\n        // Data space must have at least one transform\n        if( null == transformStack ||\n            0 == transformStack.Length )\n            throw new ArgumentException(\n                SR.TransformStackValid);\n\n        // Given label must be a non-empty string\n        CU.CheckStringAgainstNullAndEmpty(newDataSpaceLabel, \"newDataSpaceLabel\");\n\n        // Given label must not be a reserved string\n        CU.CheckStringAgainstReservedName(newDataSpaceLabel, \"newDataSpaceLabel\");\n\n        // Given label must not already be in use\n        if( DataSpaceIsDefined( newDataSpaceLabel ) )\n            throw new ArgumentException(\n                SR.DataSpaceLabelInUse);\n\n        // Given transform array must include labels that have already been defined\n        foreach( string transformLabel in transformStack )\n        {\n            CU.CheckStringAgainstNullAndEmpty( transformLabel, \"Transform label\" );\n\n            if( !TransformLabelIsDefined( transformLabel ) )\n                throw new ArgumentException(\n                    SR.TransformLabelUndefined);\n        }\n\n        // Passes all inspection, data space definition successful.\n        SetDataSpaceDefinition( newDataSpaceLabel, new DataSpaceDefinition(new ArrayList(transformStack), null));\n        _dirtyFlag = true;\n\n        return;\n    }","sourceCodeStart":571,"sourceCodeEnd":607,"githubUrl":"https://github.com/dotnet/wpf/blob/81131a70a4c573cd62748a5c36908fc4d662daa9/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/IO/Packaging/CompoundFile/DataSpaceManager.cs#L571-L607","documentation":"DataSpaceManager.DefineDataSpace throws ArgumentException (SR.DataSpaceLabelInUse) when the newDataSpaceLabel already names a defined data space. Labels are unique per compound file; defining a duplicate is rejected.","triggerScenarios":"Calling DefineDataSpace(stack, label) where DataSpaceIsDefined(label) is true — i.e. the label was defined earlier in the same compound file session.","commonSituations":"Re-running an initialization routine against an existing compound file, or retrying code after a partial failure where the first define already succeeded.","solutions":["Check DataSpaceIsDefined(label) before calling DefineDataSpace and skip/reuse if it exists.","Choose a unique label (append a counter or timestamp) when creating multiple data spaces.","Use a fresh compound file if the old label must be redefined with a different transform stack."],"exampleFix":"// before\nmanager.DefineDataSpace(stack, \"EncryptedData\"); // throws on second run\n// after\nif (!manager.DataSpaceIsDefined(\"EncryptedData\"))\n    manager.DefineDataSpace(stack, \"EncryptedData\");","handlingStrategy":"validation","validationCode":"if (manager.DataSpaceIsDefined(label)) { /* skip define or pick a new label */ }","typeGuard":null,"tryCatchPattern":"try { manager.DefineDataSpace(stack, label); } catch (ArgumentException) { label = label + Guid.NewGuid().ToString(\"N\"); manager.DefineDataSpace(stack, label); }","preventionTips":["Always check DataSpaceIsDefined before defining","Make initialization idempotent for repeated runs","Use unique labels per data space"],"tags":["wpf","packaging","argumentexception","compoundfile","duplicate-label"],"backgroundTag":"file-already-exists","analyzedSha":"81131a70a4c573cd62748a5c36908fc4d662daa9","analyzedAt":"2026-09-14T10:12:48.479Z","contentChangedAt":"2026-09-14T10:12:48.479Z","schemaVersion":2},"datasetVersion":"2026-09-21T21:30:21.729Z"}