Есть множество трубопроводов и есть множество клиентов, которые могут\не могут просматривать значения параметров трубпроводов(температура вещества в трубопроводе). Так вот могут\не могут должно зависить от настройки ПО, которое я сейчас разрабатываю! Вот привожу XML-файл того что я уже создал: Код (Text): <Clients> <Client id="0" Description="Клиент номер один" NetWorkPort="1111" Count="1"/> <Client id="1" Description="Клиент номер два" NetWorkPort="2222" Count="1"/> </Clients> <Tubings> <Pipe Number="0" Name="Респект-давление на рулез объекте" <Client id="0" Allow="0"/> <Client id="1" Allow="1"/> /> <Pipe Number="1" Name="Респект-температура на рулез объекте" <Client id="1" Allow="0"/> <Client id="0" Allow="1"/> /> </Tubings> в коде выше, Характеристика клиентов тег Clients определяет общие настройки клиентов, кол-во просматриваемых параметров, сетевой порт для получения данных по трубопроводу, название клиент, его идентификатор, возможно добавлю другие! Характеристика трубопровдов В теге Tubings(он не верен, я привел чтобы пояснить свою мысль), хочу создать однотипный тип тега Pipe в котором я смогу: - Указать номер трубопровода - Название трубопровода - Массив однотипных тегов Client, в каждом из которых можно будет указать Идентификатор клиента(его описание в в п. "Характеристика клиентов"), а также флаг Allow который будет говорить о том, что можно ли данному клиенту высылать информации об изменении параметра данного трубопровода. Не получается: Создать однотипный тег Client в нутри тега Pipe, который в свою очередь однотипный и входит в Tubings. Однотипность мне позволяет в коде парсера который я получаю через XML-Buindings в среде Turbo-Delphi обращаться как будто тег указатель и можно делать метод Next, что значительно упращает код!
а почему тег неправилно оформлен. может так надо? <Pipe Number="0" Name="Респект-давление на рулез объекте"> <Client id="0" Allow="0"/> <Client id="1" Allow="1"/> </<Pipe>
opennetworks Такой продукт шибко громоздкий! Очень я скажу! Я уже решил проблему! Запрещаю по умолчанию то что чаще всего не надо и имею в xml перечень тех труб, что надо открыть клиенту, получается удобно: Код (Text): [b]var[/b] tmpPipeID : Integer; tmpClientID : Intger; [b]begin[/b] for I := 0 to xmlpipe.count -1 do begin tmpPipeID := xmlfile.Pipe[i].pipeid; tmpClientId := xmlfile.pipeid[i].Clientid; Array[ClientID].Pipe[tmpPipeID].Allow := True; end; все просто!