ape.html revision 38ae7e4efe803ea78b6499cd05a394db32623e41
48c0c81cd6fabac9d3386406d97633780365b839coar<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>E.�Code for Add Keyword Example</title><meta name="generator" content="DocBook XSL Stylesheets V1.61.2"><link rel="home" href="index.html" title="Libxml Tutorial"><link rel="up" href="index.html" title="Libxml Tutorial"><link rel="previous" href="apd.html" title="D.�Code for XPath Example"><link rel="next" href="apf.html" title="F.�Code for Add Attribute Example"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">E.�Code for Add Keyword Example</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apd.html">Prev</a>�</td><th width="60%" align="center">�</th><td width="20%" align="right">�<a accesskey="n" href="apf.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="addkeywordappendix"></a>E.�Code for Add Keyword Example</h2></div></div><div></div></div><p>
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj#include <stdio.h>
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj#include <string.h>
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj#include <stdlib.h>
0bd0176ce9f4321eeb506aa372d0bcc84befbf4cstrikerparseStory (xmlDocPtr doc, xmlNodePtr cur, char *keyword) {
c25203fdca093d4504c51b4cd974ff60d5aa4fb1wrowe xmlNewTextChild (cur, NULL, "keyword", keyword);
8721697e2aece27b0e738519329f7976c72b27bfjerenkrantzparseDoc(char *docname, char *keyword) {
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz xmlDocPtr doc;
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz xmlNodePtr cur;
df14f0d3a5191cdd7c4bb5b03acd135d43a6f51brbb doc = xmlParseFile(docname);
571760de5e60c0b459cb11be45507b923cd023eejwoolley if (doc == NULL ) {
571760de5e60c0b459cb11be45507b923cd023eejwoolley fprintf(stderr,"Document not parsed successfully. \n");
9180a5933673ffb1af633c255ceee029340f3b1erbb return (NULL);
2900ab946a2d76b73a14cebfe2985d253f01c967stoddard cur = xmlDocGetRootElement(doc);
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb if (cur == NULL) {
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb fprintf(stderr,"empty document\n");
b876b7bcf0ce3d232da723246d709e8dbbfe8762rbb xmlFreeDoc(doc);
cf6bf6c34c936e6a6fe731dbce4a5c3c8bf8e9a3gstein return (NULL);
8dd4618c4709236b4ea297d7250d282e463ce2d8rbb if (xmlStrcmp(cur->name, (const xmlChar *) "story")) {
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick fprintf(stderr,"document of the wrong type, root node != story");
2deb319e6b3de239f45c16a3e9e836d44f1f7108rbb xmlFreeDoc(doc);
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb return (NULL);
af4c982a7cf4515f124935f99a329744035fc699slive cur = cur->xmlChildrenNode;
af4c982a7cf4515f124935f99a329744035fc699slive while (cur != NULL) {
af4c982a7cf4515f124935f99a329744035fc699slive if ((!xmlStrcmp(cur->name, (const xmlChar *)"storyinfo"))){
af4c982a7cf4515f124935f99a329744035fc699slive parseStory (doc, cur, keyword);
af4c982a7cf4515f124935f99a329744035fc699slive cur = cur->next;
4b62424416882687387923b3130b96241503cbe0jerenkrantz return(doc);
dbec4658981e4f9127e8676457c28d42932be7cdtrawickmain(int argc, char **argv) {
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz char *docname;
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz char *keyword;
f17588e04d2412bf1345783ed1d173322d728d6ftrawick xmlDocPtr doc;
f17588e04d2412bf1345783ed1d173322d728d6ftrawick if (argc <= 2) {
f17588e04d2412bf1345783ed1d173322d728d6ftrawick printf("Usage: %s docname, keyword\n", argv[0]);
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz docname = argv[1];
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz keyword = argv[2];
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz doc = parseDoc (docname, keyword);
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe if (doc != NULL) {
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz xmlSaveFormatFile (docname, doc, 0);
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz xmlFreeDoc(doc);
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apd.html">Prev</a>�</td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right">�<a accesskey="n" href="apf.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">D.�Code for XPath Example�</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">�F.�Code for Add Attribute Example</td></tr></table></div></body></html>