anchor.diff:    s:string;
     sPtr:PChar;
     lvParent:TDValueNode;
  -  j:Integer;
  -
   begin
     Result := nil;
     s := pvPath;
  
positive.code: 
  procedure TDValueNode.CheckSetNodeType(pvType:TDValueNodeType);
  begin
    if pvType in [vntObject, vntArray] then
    begin
      CheckCreateChildren;
    end else if pvType = vntValue then
    begin
      ClearChildren;    
      if not Assigned(FName) then FName := TDValueItem.Create;
      if not Assigned(FValue) then FValue := TDValueItem.Create;
    end;
  
    FNodeType := pvType;
  end;
  
  procedure TDValueNode.Delete(pvIndex:Integer);
  
negative.code:     {$ENDIF}
    private
      function GetCount: Integer;
      /// <summary>
      ///   ͷеӶ
      ///   б
      /// </summary>
      procedure ClearChildren();
      procedure CheckCreateChildren;
      procedure CreateName();
  