Web Services, Part VIII: Reading DTDs with JavaScript: Adding Entity References on the Fly - Doc JavaScript | WebReference

Web Services, Part VIII: Reading DTDs with JavaScript: Adding Entity References on the Fly - Doc JavaScript


Web Services, Part VIII: Reading DTDs with JavaScript

Adding Entity References on the Fly

You can create entity references on the fly. Remember our date element from mydvd7.xml:

<date>Jan 30, 2002</date>

Let's add an entity reference for the day of the week, before the date. We have already prepared the substitution in the DTD file:

<!ENTITY day "Wednesday, ">

First, let's create the entity reference node:

var newEntityReference = xmlDoc.createEntityReference("day");

Find the first and only date element:

objNodeList = xmlDoc.getElementsByTagName("date");

Now, insert the new node as a child of the date element, before its first child, the text: Jan 30, 2002:


objNodeList(0).insertBefore(newEntityReference,
  objNodeList(0).childNodes(0));

Let's verify now that the date element has two children: "Wednesday, " and "Jan 30, 2002". The following lines print these two nodes, as well as the child of the entity reference:

alert(objNodeList(0).childNodes(0).text);
alert(objNodeList(0).childNodes(1).text);
alert(objNodeList(0).childNodes(0).childNodes(0).text);

Running this script will yield the two expected results. But notice that the entity reference has its own child which is also "Wednesday, ".


Next: code listings

http://www.internet.com


Produced by Yehuda Shiran and Tomer Shiran
All Rights Reserved. Legal Notices.
Created: February 11, 2002
Revised: February 11, 2002

URL: http://www.webreference.com/js/column103/7.html