in reply to Re^2: how to change node value based on other node value
in thread how to change node value based on other node value

um, as a path you wrote  '/Settings/Channels/Channel/Name="L1"'

xpather shows what you should have written

/Settings[1] /Channels[1] /*[ name() = "Channel" and @Name = "L1"]

or findnodes( q{ //Channel[ @Name = "L1" and @Voltage = "400" ] } )