anchor.diff:  begin
     pack := NewPack;
     node := pack.Node('/root/group/item');
  -  Check(assigned(node.Attrs));
  +  check(assigned(node.Attrs));
     with node.Attrs do
     begin
  -    Check(Count = 3);
  +    check(Count = 3);
       with Item(0) do
       begin
  -      Check(Name = 'a', 'a name');
  -      Check(Text = '1', 'a text');
  +      check(Name = 'a', 'a name');
  +      check(Text = '1', 'a text');
       end;
       with Item(1) do
       begin
  -      Check(Name = 'b', 'b name');
  -      Check(Text = '2', 'b text');
  +      check(Name = 'b', 'b name');
  +      check(Text = '2', 'b text');
       end;
       with Item(2) do
       begin
  -      Check(Name = 'c', 'c name');
  -      Check(Text = '3', 'c text');
  +      check(Name = 'c', 'c name');
  +      check(Text = '3', 'c text');
       end;
     end;
   end;
  
positive.code: begin
    pack := NewPack;
    nodes := pack.Nodes('/root/group/*');
    Check(nodes.Count = 2);
    Check(assigned(nodes.Item('item'))); // by name, get the first
    Check(assigned(nodes.Item(0)));
    Check(assigned(nodes.Item(1)));
    with pack.Node('/root/group') do
    begin
      Add('new').Text('foo');
      Check(nodes.Count = 2); // have not changed nodes list - correct
      Check(pack.Nodes('/root/group/*').Count = 3); // new list
    end;
    nodes := pack.Nodes('/root/group/item[@b=''2'']');
    Check(assigned(nodes), 'nodes by @id');
    Check(nodes.Count > 0, 'nodes count');
    Check(assigned(nodes.Item(0)), 'nodes has item');
    Check(nodes.Item(0).Attrs.Count = 3, 'nodes.attrs.count');
    nodes := pack.Nodes('/root/group/item[@a=''1'']');
    Check(nodes.Count = 2, 'nodes.count for @a');
    nodes := pack.Nodes('/root/group/item[@xpto=''otpx'']');
    Check(nodes.Count = 0, 'nodes.count empty');
  end;
  
  procedure TCoreTests.XMLChilds;
  
negative.code:     begin
        with Add('a').Add('b') do
        begin
         check(Parent.Name = 'a', 'b parent');
        end;
        check(Childs.Count = 1, 'new child');
        check(pack.Node('/root/group/new/a').Childs.Count = 1, 'a child');
        check(assigned(pack.Node('/root/group/new/a/b')), 'a/b level');
      end;
    end;
    node := pack.Node('/root/default', TXMLNodeDefault.Create('def', 'text'));
    check(assigned(node), 'node default');
    check(node.Name = 'def', 'default name');
    check(node.Text = 'text', 'default text');
  end;
  
  procedure TCoreTests.XMLNodes;
  