Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: иерархия узлов XML-документа
 
 автор: coloboc66   (18.08.2006 в 15:47)   письмо автору
 
 

Вот попытался разобраться в иерархии узлов XML- документа, но много осталось неясного. Вот пример кода с моими комментариями. Исправьте, что неправильно. Я так и не понял, что считается здесь nextSibling и previousSibling. Еще не понял- узел, дочерний для ближайшего верхнего по иерархии, является ли также дочерним для еще более высокого?

<shop> <!-- это корневой узел -->
  <books> <!-- childNode (and firstChild) for shop -->
    <book> <!-- childNode for books -->
      <title> <!--firstChild for book and firstChild) for book-->
       Название 1
      </title>
      <author><!--lastChild for book -->
       Автор1
      </author>
     </book>
    <book><!--lastChild for books -->
      <title>
       Название 1
      </title>
      <author>
       Автор1
      </author>
     </book>
   </books>
 <CDs> <!--lastChild for shop -->
   <cd>
    <title> <!--firstChild for cd -->
     Назв1
    </title>
    <cost>
     2
    </cost>
   </cd>
  <cd> <!--lastChild for CDs -->
    <title> <!--firstChild for cd -->
     Назв2
    </title>
    <cost>
     3
    </cost>
   </cd>
  </CDs>
</shop>

Правильно ли вообще составлено дерево?

   
 
 автор: RMW   (18.08.2006 в 23:24)   письмо автору
4.8 Кб
 
   для: coloboc66   (18.08.2006 в 15:47)
 

Чтобы проще было и наглядней можно нарисовать схемку,
я вот не пожалел времени,
зацени:) (в аттаче).
Правда схемка не совсем полная,
отсутствуют комментарии (а они тоже типа узлы, а я про это забыл).
nextSibling и previousSibling позволяют путешествовать между братьями.
Братья это два или более смежных узла имеющие общего родителя.
Например books и CDs это братья.
Если мы хотим от books перейти к CDs пишем nextSibling,
если наоборот previousSibling.
Насчёт того является ли дочерний узел дочерним и для более высокого
узла, ну вроде да, но на практике мне кажется, что узлы не могут так далеко
видеть друг друга, т.е узел может видеть своего папу и своих детей,
но не может видеть дедушку или внуков.
Для того, чтобы обратиться к дедушке нужно что-то вроде Node.parentNode.parentNode,
то есть не напрямую, а опять-таки через непосредственного родителя.
Всё вышесказанное ИМХО.

   
 
 автор: coloboc66   (18.08.2006 в 23:37)   письмо автору
 
   для: RMW   (18.08.2006 в 23:24)
 

Спасибо, будем разбираться дальше. На тему DOM вообще как-то много путаницы. Раньше в DHTML было все понятно- объект, свойство, метод. Теперь оказывается и теги стали объектами, и узлы появились, и интерфейсы...

   
 
 автор: CrazyAngel   (19.08.2006 в 05:07)   письмо автору
 
   для: coloboc66   (18.08.2006 в 23:37)
 

Хм...
http://www.artlebedev.ru/tools/technogrette/js/validate_xml_value/

   
 
 автор: Lelik   (19.08.2006 в 05:11)   письмо автору
 
   для: CrazyAngel   (19.08.2006 в 05:07)
 

проверил этот код по ссылке

<?xml version="1.0" encoding="UTF-8" ?>
<code>
  <tag1>Some text</tag1>
</code>

результат - это не XML :)))))))))))

   
 
 автор: CrazyAngel   (19.08.2006 в 05:26)   письмо автору
 
   для: Lelik   (19.08.2006 в 05:11)
 


<code>
  <tag1>Some text</tag1>
</code>


Он проверяет иерархию

   
 
 автор: coloboc66   (19.08.2006 в 23:17)   письмо автору
 
   для: CrazyAngel   (19.08.2006 в 05:26)
 

А в моем (вышеприведенном) коде пишет:"Все хорошо!". Но непонятно, почему на
<code>  
<tag1>Some text</tag1> 
</code> 

пишет: "Это неXML!" Иерархия-то соблюдается!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования