У меня есть XMl-файл, подобный этому
<orderinfo>
<data>
<Id>raj</Id>
<Customer>bvr</Customer>
<Suppliers>
<Supplier Id="svr" />
<Supplier Id="dvr" />
<Supplier Id="klr" />
</Suppliers>
</data>
<data>
<Id>svr</Id>
<Customer>raj</Customer>
<Suppliers>
<Supplier Id="avr" />
<Supplier Id="csr" />
<Supplier Id="ksr" />
</Suppliers>
</data>
<data>
<Id>avr</Id>
<Customer>svr</Customer>
<Suppliers>
<Supplier Id="Bpv" />
<Supplier Id="Wrr" />
<Supplier Id="Sdr" />
</Suppliers>
</data>
<data>
<Id>csr</Id>
<Customer>svr</Customer>
<Suppliers>
<Supplier Id="bvs" />
<Supplier Id="vvs" />
<Supplier Id="Ssv" />
</Suppliers>
</data>
<data>
<Id>klr</Id>
<Customer>PUMC</Customer>
<Suppliers>
<Supplier Id="ssn" />
<Supplier Id="qis" />
<Supplier Id="nan" />
</Suppliers>
</data>
</orderinfo>
выше xml представляет отношения поставщика с клиентом. Мне нужно искать Данные тега клиента не совпадают с тегом Id любого узла данных, тогда этот клиент является верхнимпокупатель.если мы нашли лучшего клиента, то выведите этот идентификатор узла, а затем идентификатор этого узла.на основе каждого идентификатора поставщика этого узла, мне нужно сопоставить. Идентификатор этого поставщика сопоставляется с любым тегом идентификатора всех узлов, если найденное совпадение выводит идентификаторы поставщика этого узла.если совпадений не найдено, просто оставьте этот идентификатор поставщика.Мне нужно повторить ту же процедуру, что и тогда, я получу связь между главным клиентом и нижним поставщиком.
В приведенных выше XML-данных мне нужно напечатать вот так
bvr
raj
svr dvr klr
avr csr ksr (empty) ssn qis nan
(bpv wrr sdr) (bvs vvs ssv)
здесь "bvr" - главный клиент, поскольку он не равен ни одному тегу Id узлов данных.затем напечатайте это top customer.next выведите идентификатор узла и идентификаторы поставщиков этого узла.Теперь начнем с использования этого идентификатора поставщика, сопоставьте идентификатор каждого поставщика, равный любому тегу Id узлов данных, в этом примере «Id поставщика» = «svr» «равен второму узлу данных« Id », затем распечатайте идентификаторы этого поставщика.затем идите и ищите ту же процедуру для остальных идентификаторов поставщиков.в этом примере идентификатор второго поставщика "dvr" не сопоставлен ни с одним идентификатором узла данных, поэтому просто распечатайте его.идентификатор третьего поставщика сопоставляется с последним идентификатором узла данных, поэтому выведите последние идентификаторы поставщика данных.затем перейдите к "Идентификатор поставщика svr делает ту же процедуру.
Просто я показал в форме представления графа для понимания. Как я могу напечатать эти элементы тега с такими данными. Пожалуйста, помогите мне кому-нибудь, потому что я очень новичок.Это очень сложно для меня.