Detecting errors

Example program (with plug error):
  import dk.brics.xact.*;

  public class Hello {
      XML person = [[
          <person><name>John Doe</name></person>
      ]];
  
      XML html = [[
          <html>
	    <head><title>Hello</title></head>
            <body bgcolor="red">
              <h1>Hello <[name]></h1>
            </body>
          </html>	  
      ]];

      public XML sayHello() {
	  XML name = 
            person.select("/person/name/text()")[0];  
	  return html.plug("nema", name);
      }

      public static void main(String[] args) {
	  Hello hello = new Hello();
	  XML greeting = hello.sayHello();
	  greeting.analyze("xhtml1-transitional.dtd");  
	  System.out.println(greeting);
      }
  }
      

Output:

  <html>
     <head>
        <title>Hello</title>
     </head>
     <body bgcolor="red">
        <h1>Hello </h1>  
     </body>
  </html>
      
 Hello  

The XACT analyzer reports the error!

*** Inconsistent plug operation at line 20
    Template gap 'nema' does not exist