			// initialize XMLHttpRequest object
			var xmlobj=null;
			var data=new Array();
			// send http request
			function sendRequest(doc){
			    // check for existing requests
			        if(xmlobj!=null&&xmlobj.readyState!=0&&xmlobj.readyState!=4){
			        xmlobj.abort();
			    }
		        try{
			        // instantiate object for Mozilla, Nestcape, etc.
			        xmlobj=new XMLHttpRequest();
			    }
		        catch(e){
			        try{
			            // instantiate object for Internet Explorer
		                xmlobj=new ActiveXObject('Microsoft.XMLHTTP');
			        }
			        catch(e){
			            // Ajax is not supported by the browser
		                xmlobj=null;
			            return false;
		            }
		        }
			    // assign state handler
		        xmlobj.onreadystatechange=stateChecker;
			    // open socket connection
		        xmlobj.open('GET',doc,true);
			    // send GET request
		        xmlobj.send(null);
			}
			// check request status
			function stateChecker(){
			    // if request is completed
		        if(xmlobj.readyState==4){
			        // if status == 200 display text file
			        if(xmlobj.status==200){
			            // create data container
		                createDataContainer();
			            // read XML data
		                data=xmlobj.responseXML.getElementsByTagName('item');
						// display XML data
			            displayData();
					}
					else{
						alert('Failed to get response :'+ xmlobj.statusText);
					}
				}
			}
			// create data container
			function createDataContainer(){
				var div=document.getElementById('containerxml');
				if(div){return};
				var div=document.createElement('div');
				div.setAttribute('id','containerxml');
				document.getElementsByTagName('body')[0].appendChild(div);
			}
			// display data at a given time interval
			function displayData(){
				// reset data container
				document.getElementById('containerxml').innerHTML='';
				var ul=document.createElement('ul');
				for(var i=0;i<data.length;i++){
					// create links
					var li=document.createElement('li');
					var a=document.createElement('a');
					// assign 'href' attribute
					a.setAttribute('href',data[i].getElementsByTagName('url')[0].firstChild.nodeValue);
					// add link labels
					a.appendChild(document.createTextNode(data[i].getElementsByTagName('title')[0].firstChild.nodeValue));
					li.appendChild(a);
					ul.appendChild(li);
				}
			document.getElementById('containerxml').appendChild(ul);
			// update headlines each 1 hour
			setTimeout("sendRequest('news.xml')",5*1000);
			}
			// execute program when page is loaded
			window.onload=function(){
				// check if browser is DOM compatible
				if(document.getElementById&&document.getElementsByTagName&&document.createElement){
					// load XML file
					sendRequest('news.xml');
				}
			}
