Parsing the file ar01s02.htmlPrev    ar01s04.htmlNext Parsing the file
Parsing the file requires only the name of the file and a single
      function call, plus error checking. Full code: 
apc.htmlAppendix C, Code for Keyword Example 
    
        
1 xmlDocPtr doc;
	
2 xmlNodePtr cur;
	
3 doc = xmlParseFile(docname);
	
	
4 if (doc == NULL ) {
		fprintf(stderr,"Document not parsed successfully. \n");
		return;
	}
	
5 cur = xmlDocGetRootElement(doc);
	
	
6 if (cur == NULL) {
		fprintf(stderr,"empty document\n");
		xmlFreeDoc(doc);
		return;
	}
	
	
7 if (xmlStrcmp(cur->name, (const xmlChar *) "story")) {
		fprintf(stderr,"document of the wrong type, root node != story");
		xmlFreeDoc(doc);
		return;
	}
    
      
#declaredoc1  Declare the pointer that will point to your parsed document.
#declarenode2  Declare a node pointer (you'll need this in order to
	  interact with individual nodes).
#checkparseerror4  Check to see that the document was successfully parsed. If it
	    was not, 
libxml will at this point
	    register an error and stop. 
	    
[Note] Note One common example of an error at this point is improper
	    handling of encoding. The 
XML standard requires
	    documents stored with an encoding other than UTF-8 or UTF-16 to
	    contain an explicit declaration of their encoding. If the
	    declaration is there, 
libxml will
	    automatically perform the necessary conversion to UTF-8 for
		you. More information on 
XML's encoding
		requirements is contained in the 
http://www.w3.org/TR/REC-xml#charencodingstandard .
	  
#getrootelement5  Retrieve the document's root element.
#checkemptyerror6  Check to make sure the document actually contains something.
#checkroottype7  In our case, we need to make sure the document is the right
	  type. "story" is the root type of the documents used in this
	  tutorial.
      
    
ar01s02.htmlPrev  index.htmlUp  ar01s04.htmlNext Data Types index.htmlHome  Retrieving Element Content 