Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / XML / Просмотр XML - документов /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Пример использования - Программирование от RIN.RU
Пример использования

Вот пример использования описанных функций:




<script language="javascript">
<!--
var xmldoc = new ActiveXObject("msxml");
var xmlsrc = "http://localhost/xml/sample.xml";
function parse(root){
var i=0;
if(root.type==0){
this.document.writeln("<UL>Current tag is "+root.tagName+"
(parent is "+root.parent+"). ");
}else if(root.type==1){
this.document.writeln("<LI>It is a text of "+root.parent.tagName+"
element: <i>"+root.text+"</i></LI>");
}else{
this.document.writeln("<br><br>Error");
}
if(root.children!=null){
this.document.writeln("It consist of "+root.children.length+" elements:");
for(i=0;i<root.children.length;i++){
parse(root.children.item(i));
}
}
else{
this.document.writeln("</UL>");
}
}
function viewDocument(){
xmldoc.URL = xmlsrc;
this.document.writeln("<body bgcolor="white">");
this.document.writeln("<p><center><hr width=80%>XML sample page
<hr width=80%></center><p>");
parse(xmldoc.root);
this.document.writeln("</body>");
}
viewDocument();
//-->
</script>


Как видно из примера, в процессе обработки XML- документа необходимо рекурсивно обходить все ветви создаваемого анализатором дерева, причем, на каждом шаге возможны следующие ситуации:


  • Встретился новый элемент. В этом случае его название(задаваемое тэгом) доступно при помощи свойства tagName, а содержимое - свойством text. У любого непустого элемента существует хотя бы один потомок, представляющий собой содержимое этого элемента(в этом отличие представленной объектной модели msxml от реальной структуры документа - в XML под элементом понимается как название тэга, так и текстовое содержимое его)

  • Встретилось текстовое поле. Это поле может быть либо комментарием, либо просто текстом, содержащемся в текущем элементе


Для обработки потомков текущего элемента используется метод item(), который вызывается в цикле столько раз, сколько потомков у текущего элемента. Обработка каждого дочернего элемента осуществляется вызовом этой же функции, в чем и заключается рекурсия.



 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Использование msxml в IE 4

Объектная модель XML в Internet Explorer 4.0

Свойства и методы документа(объект XML Document)

Свойства и методы элементов документа

Использование ASP

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь
автоматизации call-центров и служб такси