00001 /*************************************************************************/ 00002 /* XML Parse Lib Header file - Public definitions. */ 00003 /* Library routines for parsing and generating XML. */ 00004 /* */ 00005 /* For Documentation and Usage Notes, see: */ 00006 /* http://xmlparselib.sourceforge.net/ */ 00007 /* */ 00008 /* Xml_Parse_Lib.c - MIT License: */ 00009 /* Copyright (C) 2001, Carl Kindman */ 00010 /* Permission is hereby granted, free of charge, to any person obtaining */ 00011 /* a copy of this software and associated documentation files (the */ 00012 /* "Software"), to deal in the Software without restriction, including */ 00013 /* without limitation the rights to use, copy, modify, merge, publish, */ 00014 /* distribute, sublicense, and/or sell copies of the Software, and to */ 00015 /* permit persons to whom the Software is furnished to do so, subject to */ 00016 /* the following conditions: */ 00017 /* */ 00018 /* The above copyright notice and this permission notice shall be */ 00019 /* included in all copies or substantial portions of the Software. */ 00020 /* */ 00021 /* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ 00022 /* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ 00023 /* MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE AND NONINFRINGEMENT. */ 00024 /* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ 00025 /* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ 00026 /* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ 00027 /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 00028 /* */ 00029 /* Carl Kindman 8-21-2001 carl_kindman@yahoo.com */ 00030 /************************************************************************/ 00031 #define XML_MAX_STRLEN 10000 00032 00033 /*-----------------------------------*/ 00034 /* Lower-level convenience routines. */ 00035 /*-----------------------------------*/ 00036 00037 /* Get next xml-tag, attribtues, and contents from an xml-file. */ 00038 void xml_parse( FILE* , char*, char*, int , int*); 00039 00040 /* Added by Zhan Wei */ 00041 /* Get next xml-tag, attribtues only from an xml-file. */ 00042 void xml_parse_tag_only( FILE* , char*, int, int*); 00043 00044 /* Pull-off tag's name. */ 00045 void xml_grab_tag_name( char *tag, char *name, int maxlen ); 00046 00047 /* Pull-off next attribute name-value pair, if any, from tag-string. */ 00048 void xml_grab_attrib( char *tag, char *name, char *value, int maxlen ); 00049