Интересный код, для работы с XPath. Надо понимать что штука очень сильная и медленная.
Результат выполнения будет, в Memo1 будет - «Привет мир!»
<?xml version="1.0" encoding="UTF-8" ?> <collection> <element name="connect"> <![CDATA[Привет мир!]]> </element> </collection>
И вот код чтения по атрибуту
procedure TForm1.FormCreate(Sender: TObject); var iNode : IDOMNode; Sel: IDOMNodeSelect; begin // try XMLDocument1.FileName := 'TheXML.xml'; XMLDocument1.Active := True; Sel := XMLDocument1.DOMDocument as IDomNodeSelect; iNode := Sel.selectNode('//element[@name="connect"]/text()'); if Assigned(iNode) and (not VarIsNull(iNode.nodeValue)) then begin Memo1.Lines.Text := VarToStr(iNode.nodeValue); end; except on E: Exception do MessageDlg(E.ClassName + ': ' + E.Message, mtError, [mbOK], 0); end; end;