Главная Обратная связь

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)


 

 

 

 



Тема: Побудова сценаріїв об’єктної моделі відображення XML – документів



Мета роботи: Ознайомитися із: засобами побудови сценаріїв використовуючи об’єктну модель документа. Побудова сценаріїв перевірки правильності XML – документа з пошуком помилок.

 

Теоретичні відомості :[1 -4].

 

Для виконання роботи потрібно знати:

· Мови розробки сценаріїв, які використовуються при створення HTML – сторінок;

· Мову програмування сценаріїв JScript;

· Програмний об’єкт збереження даних (DSO) збереження - даних;

· Типи вузлів;

· Ієрархічна структура XML – документа;

· Загальні властивості, які підтримуються всіма типами вузлів;

· Доступ і відображення XML – документа;

· Властивості та методи вузла документ;

· Об’єкт NodeListта його властивості;

· Властивості та методи вузла Text;

· Властивості та методи вузла Element;

· Перевірка валідності документа.

 

Зміст роботи

1. Побудувати HTML – сторінку відображення XML – документу з використанням об’єктної моделі документу(DOM), згідно варіанту для кожного студента, в лабораторні роботі №1;

2. Побудувати HTML – сторінку із відображенням нотацій, примітивів та атрибутів в XML – документі;

3. Побудувати HTML – сторінку відображення структури об’єктної моделі документа та перевірки його валідності(правильності).

Варіанти та умови завдання такі ж як у лабораторні роботі №1.

Приклад.

Створити валідний XML – документу наявності книг у магазині. Наявність книг зберігаються у двох таблицях. Друга таблиця буде під таблицею першої за спільним полем. Перша з них має таку структуру:

А) назва; б) автор книги; в) палітурка; в) ціна; г) кількість сторінок.

Друга база даних:

А) автор книги; б) рік видання.

Файл з даними має вигляд

<?xml version="1.0"?>

<!-- File Name: Inventory12.xml -->

<INVENTORY>

<BOOK>

<TITLE>The Adventures of Huckleberry Finn</TITLE>

<AUTHOR Year = “1891”> Mark Twain </AUTHOR>

<BINDING> mass market paperback</BINDING>

<PAGES>298</PAGES>

<PRICE>$5.49</PRICE>

</BOOK>

<-- і так далі -->

</INVENTORY>

 

HTML – файл буде мати вигляд

<HTML>

<HEAD>

<TITLE>Book Inventory</TITLE>

<SCRIPT LANGUAGE="JavaScript" FOR="window" EVENT="ONLOAD">

HTMLCode = "";

Document = dsoInventory.XMLDocument;

for (i=0; i < Document.documentElement.childNodes.length; i++)

{

HTMLCode +=

"<SPAN STYLE='font-style:italic'>Title: </SPAN>"

+ Document.documentElement.childNodes(i).childNodes(0).text

+ "<BR>"

+ "<SPAN STYLE='font-style:italic'>Author: </SPAN>"

+ Document.documentElement.childNodes(i).childNodes(1).text

+ "<BR>"

+ "<SPAN STYLE='font-style:italic'>Author Born : </SPAN>"

+ Document.documentElement.childNodes(i).childNodes(1).attributes(0).nodeValue

+ "<BR>"

+ "<SPAN STYLE='font-style:italic'>Binding: </SPAN>"

+ Document.documentElement.childNodes(i).childNodes(2).text

+ "<BR>"

+ "<SPAN STYLE='font-style:italic'>Number of pages: "

+ "</SPAN>"

+ Document.documentElement.childNodes(i).childNodes(3).text

+ "<BR>"

+ "<SPAN STYLE='font-style:italic'>Price: </SPAN>"

+ Document.documentElement.childNodes(i).childNodes(4).text

+ "<P>";

}

DisplayDIV.innerHTML=HTMLCode;

</SCRIPT>

</HEAD>

<BODY>

<XML ID="dsoInventory" SRC="Inventory.xml"></XML>

<H2>Book Inventory</H2>

<DIV ID="DisplayDIV"></DIV>

</BODY>

</HTML>

Відображення атрибутів

<?xml version="1.0"?>

<!-- File Name: Entity.xml -->

<!DOCTYPE INVENTORY

[

<!NOTATION TXT SYSTEM "plain text file">

<!ENTITY Born_1835 SYSTEM "Review of Huckleberry Finn.txt"

NDATA TXT>

<!ENTITY Born_1819 SYSTEM "Review of Leaves of Grass.txt"

NDATA TXT>

<!ENTITY Born_1804 SYSTEM "Review of Sleepy Hollow.txt"

NDATA TXT>

<!ELEMENT INVENTORY (BOOK)*>

<!ELEMENT BOOK (TITLE, AUTHOR, BINDING, PAGES, PRICE)>

<!ELEMENT TITLE (#PCDATA)>

<!ELEMENT AUTHOR (#PCDATA)>

<!ATTLIST AUTHOR Born ENTITY #IMPLIED>

<!ELEMENT BINDING (#PCDATA)>

<!ELEMENT PAGES (#PCDATA)>

<!ELEMENT PRICE (#PCDATA)>

]

>

<INVENTORY>

<BOOK>

<TITLE>The Adventures of Huckleberry Finn</TITLE>

<AUTHOR Born='Born_1835'>Mark Twain</AUTHOR>

<BINDING>mass market paperback</BINDING>

<PAGES>298</PAGES>

<PRICE>$5.49</PRICE>

</BOOK>

<BOOK>

<TITLE>Leaves of Grass</TITLE>

<AUTHOR Born='Born_1819'>Walt Whitman</AUTHOR>

<BINDING>hardcover</BINDING>

<PAGES>462</PAGES>

<PRICE>$7.75</PRICE>

</BOOK>

<BOOK>

<TITLE>The Legend of Sleepy Hollow</TITLE>

<AUTHOR Born='Born_1804' >Washington Irving</AUTHOR>

<BINDING>mass market paperback</BINDING>

<PAGES>98</PAGES>

<PRICE>$2.95</PRICE>

</BOOK>

</INVENTORY>

<!-- File Name: Entity.htm -->

<HTML>

<HEAD>

<TITLE>Get Entity Information</TITLE>

<SCRIPT LANGUAGE="JavaScript" FOR="window" EVENT="ONLOAD">

Document = dsoInventory.XMLDocument;

DisplayText = " Hi !"

alert (DisplayText);

DisplayText ="";

Attribute =

Document.documentElement.childNodes(0).childNodes(1).attributes(0);

if (Attribute.dataType == "entity")

{

DisplayText = "'" + Attribute.nodeName

+ "' attribute has ENTITY type" + "\n";

DisplayText += "attribute value = "

+ Attribute.nodeValue + "\n";

Entity =

Document.doctype.entities.getNamedItem(Attribute.nodeValue);

DisplayText += "entity file = "

+ Entity.attributes.getNamedItem("SYSTEM").nodeValue

+ "\n";

NotationName =

Entity.attributes.getNamedItem("NDATA").nodeValue;

DisplayText += "entity notation = " + NotationName + "\n";

Notation =

Document.doctype.notations.getNamedItem(NotationName);

DisplayText += "notation URI or description = "

+ Notation.attributes.getNamedItem("SYSTEM").nodeValue

+ "\n";

alert (DisplayText);

location.href =

Entity.attributes.getNamedItem("SYSTEM").nodeValue;

}

</SCRIPT>

</HEAD>

<BODY>

<XML ID="dsoInventory" SRC="Entity.xml"></XML>

</BODY>

</HTML>



Просмотров 506

Эта страница нарушает авторские права




allrefrs.su - 2024 год. Все права принадлежат их авторам!