prettyprint-1.c main prettyprint UofC-DOM.c S_document_t* parse (char *filename) S_element_t* getDocumentElement(S_document_t *mp_currentDocument) S_node_t* getNextSibling(S_element_t *mp_elementCurrent) S_node_t* getParentNode(S_element_t *mp_elementCurrent) S_node_t* getFirstChild(S_element_t *mp_elementCurrent) S_node_t* getLastChild(S_element_t *mp_elementCurrent) S_NamedNodeMap_t* getAttributes(S_element_t *mp_elementCurrent) S_NodeList_t* getChildNodes(S_element_t *mp_elementCurrent) char* getElementNodeName(S_element_t *mp_elementCurrent) char* getElementNodeValue(S_element_t *mp_elementCurrent) char* getAttributeNodeName(S_element_t *mp_elementCurrent) char* getAttributeNodeValue(S_element_t *mp_elementCurrent) char* getTextNodeValue(S_element_t *mp_elementCurrent) int hasChildNodes(S_element_t *mp_elementCurrent) int hasAttributes(S_element_t *mp_elementCurrent) static void DOM_startElement(void *u_userdata, const char *sz_name, const char **sz_atts) static void DOM_endElement(void *u_userdata, const char *sz_name) static void DOM_charHandle(void *u_userdata, const char *sz_name, const char **sz_atts) UofC-DOM.h prototypes of all of the above functions except the three functions whose names which being with "DOM_"