Hi, the XML you posted is incomplete & does not contain the workspace name part (so I had to guess some of the formatting & fill in some blanks myself - so this may not work for you).
This is how I aproached it - hopefully it is of some help...
flow with annotations...
the results...
the flow...
[{"id":"b13c609e.cc7a3","type":"inject","z":"bcf9fb5b.eed7f8","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"true","payloadType":"bool","x":190,"y":160,"wires":[["fddba160.17079"]]},{"id":"37e11698.e5276a","type":"xml","z":"bcf9fb5b.eed7f8","name":"xml --> js object","property":"payload","attr":"","chr":"","x":520,"y":160,"wires":[["fff724e0.66e708","c6084fa.aed5fb"]]},{"id":"fff724e0.66e708","type":"debug","z":"bcf9fb5b.eed7f8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":870,"y":160,"wires":[]},{"id":"c6084fa.aed5fb","type":"function","z":"bcf9fb5b.eed7f8","name":"js object to rows","func":"/*\npayload.Configuration.Workspaces[].Workspace[].Name[]\npayload.Configuration.Workspaces[].Workspace[].Elements[].Element[].Name[]\npayload.Configuration.Workspaces[].Workspace[].Elements[].Element[].ID[]\n*/\n\nmsg.originalData = msg.payload; //save in msg (for debugging)\n\nvar workspaces = msg.payload.Workspaces.Workspace;\n\n//workspace name get name\nvar wsName = 1;\nvar rows = [];\nfor (let iWS = 0; iWS < workspaces.length; iWS++) {\n let workspace = workspaces[iWS];\n let elements = workspace.Elements[0].Element;\n let workspaceName = workspace.Name[0];\n let workspaceRows = elements.map(el => {\n return {\n workspace: workspaceName,\n id: el.ID[0],\n name: el.Name[0],\n type: el.$[\"i:type\"],\n }\n })\n rows.push(...workspaceRows)\n}\nmsg.payload = rows;\nreturn msg;\n","outputs":1,"noerr":0,"initialize":"","finalize":"","x":540,"y":260,"wires":[["f49656b3.e6c808","794207fd.386fd8"]]},{"id":"f49656b3.e6c808","type":"debug","z":"bcf9fb5b.eed7f8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":870,"y":260,"wires":[]},{"id":"fddba160.17079","type":"template","z":"bcf9fb5b.eed7f8","name":"the XML","field":"payload","fieldType":"msg","format":"text","syntax":"plain","template":"<Workspaces>\n <Workspace>\n <BackgroundImageHeight>600</BackgroundImageHeight>\n <BackgroundImagePath i:nil=\"true\" />\n <BackgroundImageWidth>800</BackgroundImageWidth>\n <Name>workspace1</Name>\n <Elements>\n <Element\n xmlns=\"\" i:type=\"ChartElement\">\n <Appearance>\n <BackgroundImageIndex>0</BackgroundImageIndex>\n <BackgroundImages\n xmlns:d7p1=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\" />\n <BorderVisibility>Default</BorderVisibility>\n <CircularGaugeOptions>\n <Layout>Full</Layout>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Style>Default</Style>\n </CircularGaugeOptions>\n <DigitalGaugeOptions>\n <DigitCount>0</DigitCount>\n <Mode>Default</Mode>\n <Style>Default</Style>\n </DigitalGaugeOptions>\n <DisplayKind>Text</DisplayKind>\n <IndicatorOptions>\n <OffColor>Off</OffColor>\n <OnColor>Green</OnColor>\n </IndicatorOptions>\n <LinearGaugeOptions>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Orientation>Vertical</Orientation>\n <Style>Default</Style>\n </LinearGaugeOptions>\n <NameAlignment>Default</NameAlignment>\n <NameBackColor i:nil=\"true\" />\n <NameFont i:nil=\"true\" />\n <NameForeColor i:nil=\"true\" />\n <NameVisibility>Default</NameVisibility>\n <TextDisplayOptions>\n <FalseText i:nil=\"true\" />\n <Precision>0</Precision>\n <TrueText i:nil=\"true\" />\n </TextDisplayOptions>\n <ValueAlignment>Default</ValueAlignment>\n <ValueBackColor i:nil=\"true\" />\n <ValueEnlargement i:nil=\"true\" />\n <ValueFont i:nil=\"true\" />\n <ValueForeColor i:nil=\"true\" />\n <Visibility>Default</Visibility>\n </Appearance>\n <Enabled>false</Enabled>\n <Height>160</Height>\n <ID>828d1c10-e872-4cfb-baf4-465c3f18bd41</ID>\n <Name>Fermenter 1 Spunding</Name>\n <UserControl>false</UserControl>\n <Width>180</Width>\n <X>390</X>\n <Y>10</Y>\n <Channels>\n <ChartChannelOptions>\n <Appearance>\n <LineColor i:nil=\"true\" />\n </Appearance>\n <AutoScale>true</AutoScale>\n <AxisYMax>0</AxisYMax>\n <AxisYMin>0</AxisYMin>\n <ChannelID i:nil=\"true\" />\n </ChartChannelOptions>\n <ChartChannelOptions>\n <Appearance>\n <LineColor i:nil=\"true\" />\n </Appearance>\n <AutoScale>true</AutoScale>\n <AxisYMax>0</AxisYMax>\n <AxisYMin>0</AxisYMin>\n <ChannelID i:nil=\"true\" />\n </ChartChannelOptions>\n </Channels>\n <ChartAppearance>\n <HGridLines>1</HGridLines>\n <VGridLines>0</VGridLines>\n </ChartAppearance>\n <RefreshInterval>60</RefreshInterval>\n <SpanSeconds>86400</SpanSeconds>\n </Element>\n <Element\n xmlns=\"\" i:type=\"GlobalVariableElement\">\n <Appearance>\n <BackgroundImageIndex>0</BackgroundImageIndex>\n <BackgroundImages\n xmlns:d7p1=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n </BackgroundImages>\n <BorderVisibility>Default</BorderVisibility>\n <CircularGaugeOptions>\n <Layout>Full</Layout>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Style>Default</Style>\n </CircularGaugeOptions>\n <DigitalGaugeOptions>\n <DigitCount>1</DigitCount>\n <Mode>Default</Mode>\n <Style>Default</Style>\n </DigitalGaugeOptions>\n <DisplayKind>Text</DisplayKind>\n <IndicatorOptions>\n <OffColor>Off</OffColor>\n <OnColor>Green</OnColor>\n </IndicatorOptions>\n <LinearGaugeOptions>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Orientation>Vertical</Orientation>\n <Style>Default</Style>\n </LinearGaugeOptions>\n <NameAlignment>Default</NameAlignment>\n <NameBackColor i:nil=\"true\" />\n <NameFont i:nil=\"true\" />\n <NameForeColor i:nil=\"true\" />\n <NameVisibility>Default</NameVisibility>\n <TextDisplayOptions>\n <FalseText></FalseText>\n <Precision>0</Precision>\n <TrueText></TrueText>\n </TextDisplayOptions>\n <ValueAlignment>Default</ValueAlignment>\n <ValueBackColor i:nil=\"true\" />\n <ValueEnlargement i:nil=\"true\" />\n <ValueFont i:nil=\"true\" />\n <ValueForeColor i:nil=\"true\" />\n <Visibility>Default</Visibility>\n </Appearance>\n <Enabled>false</Enabled>\n <Height>160</Height>\n <ID>25cea11a-a4c6-4239-a4e0-b6e81220945b</ID>\n <Name>F1 iSpindel sg</Name>\n <UserControl>false</UserControl>\n <Width>180</Width>\n <X>570</X>\n <Y>10</Y>\n <Precision>3</Precision>\n <Value i:nil=\"true\" />\n <VariableName i:nil=\"true\" />\n <VariableType>String</VariableType>\n </Element>\n <Element\n xmlns=\"\" i:type=\"DeviceElement\">\n <Appearance>\n <BackgroundImageIndex>0</BackgroundImageIndex>\n <BackgroundImages\n xmlns:d7p1=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n </BackgroundImages>\n <BorderVisibility>Default</BorderVisibility>\n <CircularGaugeOptions>\n <Layout>Full</Layout>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Style>Default</Style>\n </CircularGaugeOptions>\n <DigitalGaugeOptions>\n <DigitCount>1</DigitCount>\n <Mode>Default</Mode>\n <Style>Default</Style>\n </DigitalGaugeOptions>\n <DisplayKind>Text</DisplayKind>\n <IndicatorOptions>\n <OffColor>Off</OffColor>\n <OnColor>Green</OnColor>\n </IndicatorOptions>\n <LinearGaugeOptions>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Orientation>Vertical</Orientation>\n <Style>Default</Style>\n </LinearGaugeOptions>\n <NameAlignment>Default</NameAlignment>\n <NameBackColor i:nil=\"true\" />\n <NameFont i:nil=\"true\" />\n <NameForeColor i:nil=\"true\" />\n <NameVisibility>Default</NameVisibility>\n <TextDisplayOptions>\n <FalseText></FalseText>\n <Precision>0</Precision>\n <TrueText></TrueText>\n </TextDisplayOptions>\n <ValueAlignment>Default</ValueAlignment>\n <ValueBackColor i:nil=\"true\" />\n <ValueEnlargement i:nil=\"true\" />\n <ValueFont i:nil=\"true\" />\n <ValueForeColor i:nil=\"true\" />\n <Visibility>Default</Visibility>\n </Appearance>\n <Enabled>false</Enabled>\n <Height>160</Height>\n <ID>ed1c4220-ebef-4809-ad08-85773e47586b</ID>\n <Name>Duty Cycle 1</Name>\n <UserControl>false</UserControl>\n <Width>180</Width>\n <X>20</X>\n <Y>10</Y>\n <PortID>80af1784-344e-403b-b0f0-9505c5a28489</PortID>\n </Element>\n </Elements>\n </Workspace>\n <Workspace>\n <BackgroundImageHeight>600</BackgroundImageHeight>\n <BackgroundImagePath i:nil=\"true\" />\n <BackgroundImageWidth>800</BackgroundImageWidth>\n <Name>workspace2</Name>\n <Elements>\n <Element\n xmlns=\"\" i:type=\"ChartElement\">\n <Appearance>\n <BackgroundImageIndex>0</BackgroundImageIndex>\n <BackgroundImages\n xmlns:d7p1=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\" />\n <BorderVisibility>Default</BorderVisibility>\n <CircularGaugeOptions>\n <Layout>Full</Layout>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Style>Default</Style>\n </CircularGaugeOptions>\n <DigitalGaugeOptions>\n <DigitCount>0</DigitCount>\n <Mode>Default</Mode>\n <Style>Default</Style>\n </DigitalGaugeOptions>\n <DisplayKind>Text</DisplayKind>\n <IndicatorOptions>\n <OffColor>Off</OffColor>\n <OnColor>Green</OnColor>\n </IndicatorOptions>\n <LinearGaugeOptions>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Orientation>Vertical</Orientation>\n <Style>Default</Style>\n </LinearGaugeOptions>\n <NameAlignment>Default</NameAlignment>\n <NameBackColor i:nil=\"true\" />\n <NameFont i:nil=\"true\" />\n <NameForeColor i:nil=\"true\" />\n <NameVisibility>Default</NameVisibility>\n <TextDisplayOptions>\n <FalseText i:nil=\"true\" />\n <Precision>0</Precision>\n <TrueText i:nil=\"true\" />\n </TextDisplayOptions>\n <ValueAlignment>Default</ValueAlignment>\n <ValueBackColor i:nil=\"true\" />\n <ValueEnlargement i:nil=\"true\" />\n <ValueFont i:nil=\"true\" />\n <ValueForeColor i:nil=\"true\" />\n <Visibility>Default</Visibility>\n </Appearance>\n <Enabled>false</Enabled>\n <Height>160</Height>\n <ID>828d1c10-e872-4cfb-baf4-465c3f18bd41</ID>\n <Name>Fermenter 1 Spunding</Name>\n <UserControl>false</UserControl>\n <Width>180</Width>\n <X>390</X>\n <Y>10</Y>\n <Channels>\n <ChartChannelOptions>\n <Appearance>\n <LineColor i:nil=\"true\" />\n </Appearance>\n <AutoScale>true</AutoScale>\n <AxisYMax>0</AxisYMax>\n <AxisYMin>0</AxisYMin>\n <ChannelID i:nil=\"true\" />\n </ChartChannelOptions>\n <ChartChannelOptions>\n <Appearance>\n <LineColor i:nil=\"true\" />\n </Appearance>\n <AutoScale>true</AutoScale>\n <AxisYMax>0</AxisYMax>\n <AxisYMin>0</AxisYMin>\n <ChannelID i:nil=\"true\" />\n </ChartChannelOptions>\n </Channels>\n <ChartAppearance>\n <HGridLines>1</HGridLines>\n <VGridLines>0</VGridLines>\n </ChartAppearance>\n <RefreshInterval>60</RefreshInterval>\n <SpanSeconds>86400</SpanSeconds>\n </Element>\n <Element\n xmlns=\"\" i:type=\"GlobalVariableElement\">\n <Appearance>\n <BackgroundImageIndex>0</BackgroundImageIndex>\n <BackgroundImages\n xmlns:d7p1=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n </BackgroundImages>\n <BorderVisibility>Default</BorderVisibility>\n <CircularGaugeOptions>\n <Layout>Full</Layout>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Style>Default</Style>\n </CircularGaugeOptions>\n <DigitalGaugeOptions>\n <DigitCount>1</DigitCount>\n <Mode>Default</Mode>\n <Style>Default</Style>\n </DigitalGaugeOptions>\n <DisplayKind>Text</DisplayKind>\n <IndicatorOptions>\n <OffColor>Off</OffColor>\n <OnColor>Green</OnColor>\n </IndicatorOptions>\n <LinearGaugeOptions>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Orientation>Vertical</Orientation>\n <Style>Default</Style>\n </LinearGaugeOptions>\n <NameAlignment>Default</NameAlignment>\n <NameBackColor i:nil=\"true\" />\n <NameFont i:nil=\"true\" />\n <NameForeColor i:nil=\"true\" />\n <NameVisibility>Default</NameVisibility>\n <TextDisplayOptions>\n <FalseText></FalseText>\n <Precision>0</Precision>\n <TrueText></TrueText>\n </TextDisplayOptions>\n <ValueAlignment>Default</ValueAlignment>\n <ValueBackColor i:nil=\"true\" />\n <ValueEnlargement i:nil=\"true\" />\n <ValueFont i:nil=\"true\" />\n <ValueForeColor i:nil=\"true\" />\n <Visibility>Default</Visibility>\n </Appearance>\n <Enabled>false</Enabled>\n <Height>160</Height>\n <ID>25cea11a-a4c6-4239-a4e0-b6e81220945b</ID>\n <Name>F1 iSpindel sg</Name>\n <UserControl>false</UserControl>\n <Width>180</Width>\n <X>570</X>\n <Y>10</Y>\n <Precision>3</Precision>\n <Value i:nil=\"true\" />\n <VariableName i:nil=\"true\" />\n <VariableType>String</VariableType>\n </Element>\n <Element\n xmlns=\"\" i:type=\"DeviceElement\">\n <Appearance>\n <BackgroundImageIndex>0</BackgroundImageIndex>\n <BackgroundImages\n xmlns:d7p1=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n <d7p1:string></d7p1:string>\n </BackgroundImages>\n <BorderVisibility>Default</BorderVisibility>\n <CircularGaugeOptions>\n <Layout>Full</Layout>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Style>Default</Style>\n </CircularGaugeOptions>\n <DigitalGaugeOptions>\n <DigitCount>1</DigitCount>\n <Mode>Default</Mode>\n <Style>Default</Style>\n </DigitalGaugeOptions>\n <DisplayKind>Text</DisplayKind>\n <IndicatorOptions>\n <OffColor>Off</OffColor>\n <OnColor>Green</OnColor>\n </IndicatorOptions>\n <LinearGaugeOptions>\n <MajorTickCount>11</MajorTickCount>\n <MaxValue>100</MaxValue>\n <MinValue>0</MinValue>\n <MinorTickCount>4</MinorTickCount>\n <Orientation>Vertical</Orientation>\n <Style>Default</Style>\n </LinearGaugeOptions>\n <NameAlignment>Default</NameAlignment>\n <NameBackColor i:nil=\"true\" />\n <NameFont i:nil=\"true\" />\n <NameForeColor i:nil=\"true\" />\n <NameVisibility>Default</NameVisibility>\n <TextDisplayOptions>\n <FalseText></FalseText>\n <Precision>0</Precision>\n <TrueText></TrueText>\n </TextDisplayOptions>\n <ValueAlignment>Default</ValueAlignment>\n <ValueBackColor i:nil=\"true\" />\n <ValueEnlargement i:nil=\"true\" />\n <ValueFont i:nil=\"true\" />\n <ValueForeColor i:nil=\"true\" />\n <Visibility>Default</Visibility>\n </Appearance>\n <Enabled>false</Enabled>\n <Height>160</Height>\n <ID>ed1c4220-ebef-4809-ad08-85773e47586b</ID>\n <Name>Duty Cycle 1</Name>\n <UserControl>false</UserControl>\n <Width>180</Width>\n <X>20</X>\n <Y>10</Y>\n <PortID>80af1784-344e-403b-b0f0-9505c5a28489</PortID>\n </Element>\n </Elements>\n </Workspace>\n </Workspaces> ","output":"str","x":340,"y":160,"wires":[["37e11698.e5276a"]]},{"id":"794207fd.386fd8","type":"csv","z":"bcf9fb5b.eed7f8","name":"","sep":",","hdrin":"","hdrout":"all","multi":"mult","ret":"\\n","temp":"workspace,id,name,type","skip":"0","strings":true,"include_empty_strings":"","include_null_values":"","x":730,"y":360,"wires":[["b4f12783.0dc248"]]},{"id":"b4f12783.0dc248","type":"debug","z":"bcf9fb5b.eed7f8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":870,"y":360,"wires":[]},{"id":"de3c6f38.9a12","type":"comment","z":"bcf9fb5b.eed7f8","name":"____Faking the XML ___","info":"","x":270,"y":120,"wires":[]},{"id":"3c993294.d9cf6e","type":"comment","z":"bcf9fb5b.eed7f8","name":"Convert to JS object","info":"","x":530,"y":120,"wires":[]},{"id":"233f7e4b.3d69f2","type":"comment","z":"bcf9fb5b.eed7f8","name":"Convert JS object to rows","info":"","x":530,"y":300,"wires":[]},{"id":"f4562179.50b9c","type":"comment","z":"bcf9fb5b.eed7f8","name":"Convert rows to CSV","info":"","x":780,"y":400,"wires":[]}]