11.4 Name Spaces at Start of Elements

<..record xmlns..>
 if( name.startsWith("xmlns") ){
   if( (name.length() == 5) || (name.charAt(5) == ’:’) ){
      <.bool := xmlns active?.>
      if( !bool ){
         nsName.add(name); nsValue.add(value);
 } }  }
 -_-_-

<..add missing xmlns attributes..>
 HashSet<String> registry = new HashSet<String>();
 for(int i=nsName.size(); i>top; ){
   i--;
   registry.add( (String) nsName.get(i) );
 }
 for(int i=top; i>0; ){
   i--;
   String nm = (String) nsName.get(i);
   if( ! registry.contains(nm) ){
      registry.add( nm );
      s += " " + nm + "=\"" +
          XtpipesUni.toUni( (String) nsValue.get(i), "<>&\"") + "\"";
 } }
 -_-_-

<..ScriptsManager fields..>+
 ArrayList<String> nsName = new ArrayList<String>(),
                          nsValue = new ArrayList<String>();
 Stack<Integer> nsStack = new Stack<Integer>();
 -_-_-

<..ScriptsManager imports..>+
 import java.util.ArrayList;
 import java.util.HashSet;
 import xtpipes.XtpipesUni;
 -_-_-