Changing attribute value in xml file using shell

I have an xml file.I want to change the value of some tag:

<WASConfig  version='1.1'>
    <JavaVirtualMachine>
      <scope>
        <server>
          <hostNode>myAsNode</hostNode>
          <name>myserver</name>
        </server>
      </scope>
      <Settings>
        <Setting>
          <name>genericJvmArguments</name>
          <value>-Dcom.ibm.websphere.ejbcontainer.poolSize=<ApplicationName>#<ModuleName>#<Bean>=1,1</value>
        </Setting>
      </Settings>
    </JavaVirtualMachine>
    <JavaVirtualMachine>
      <scope>
        <server>
          <hostNode>myAsNode2</hostNode>
          <name>myserver</name>
        </server>
      </scope>
      <Settings>
        <Setting>
          <name>genericJvmArguments</name>
          <value>-Dcom.ibm.websphere.ejbcontainer.poolSize=<ApplicationName>#<ModuleName>#<Bean>=1,1</value>
        </Setting>
      </Settings>
    </JavaVirtualMachine>
 </WASConfig>

I want to change hostnode tag myasnode to xxxxxx and myasnode2 to yyyyyy.

Please can you tell how to go after it?

Thanks

One way:

sed -e 's/>myAsNode</>xxxxxx</' -e 's/>myAsNode2</>yyyyyy</' file > newfile
# sed -i '/server/,/<\/server/{s/myAsNode\b/xxxxxx/;s/myAsNode2/yyyyyy/}' infile

Hi have some xml like this

  <example>
    <Cell Name="Cell1" ConfigureHost="claas" Role="APPSERV,BACKEND">
      <Node Name="aaaaa" Role="APPSERV,BACKEND,CLM"/>
      <Node Name="vvvv" Role="APPSERV,BACKEND"/>
      <Mercury Type="default" FQDN="ssssss" 
PrimaryReturnFQDN=""/>
    </Cell>
    
  </example>

From shell i want to do somethign like this .If r Role="APPSERV,BACKEND,CLM" i want to set a variable v=aaaa
and Role="APPSERV,BACKEND" set variable k=vvvv

Please help regarding this I am new to shell

Thanks

if [[ $(grep -E "Node Name=\"aaaaa\" Role=\"APPSERV" infile | sed 's/.*Role="\(.*\)"\/>/\1/') == "APPSERV,BACKEND,CLM" ]]
    then 
      v="aaaa" ; echo "V value" $v
  if [[ $(grep -E "Node Name=\"vvvv\" Role=\"APPSERV" infile | sed 's/.*Role="\(.*\)"\/>/\1/') == "APPSERV,BACKEND" ]]
    then k="vvvv" ; echo "K value" $k 
  fi 
fi

Another approach:

awk -F"\"" -v var1="aaaaa" -v var2="vvvv" '
$4=="APPSERV,BACKEND,CLM"{$2=var1}
$4=="APPSERV,BACKEND"{$2=var2}
1' OFS="\"" file