Annotation of gpl/axl/src/axl_dtd.h, revision 1.1
1.1 ! misho 1: /*
! 2: * LibAxl: Another XML library
! 3: * Copyright (C) 2006 Advanced Software Production Line, S.L.
! 4: *
! 5: * This program is free software; you can redistribute it and/or
! 6: * modify it under the terms of the GNU Lesser General Public License
! 7: * as published by the Free Software Foundation; either version 2.1 of
! 8: * the License, or (at your option) any later version.
! 9: *
! 10: * This program is distributed in the hope that it will be useful,
! 11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
! 12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! 13: * GNU Lesser General Public License for more details.
! 14: *
! 15: * You should have received a copy of the GNU Lesser General Public
! 16: * License along with this program; if not, write to the Free
! 17: * Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
! 18: * 02111-1307 USA
! 19: *
! 20: * You may find a copy of the license under this software is released
! 21: * at COPYING file. This is LGPL software: you are welcome to
! 22: * develop proprietary applications using this library without any
! 23: * royalty or fee but returning back any change, improvement or
! 24: * addition in the form of source code, project image, documentation
! 25: * patches, etc.
! 26: *
! 27: * For commercial support on build XML enabled solutions contact us:
! 28: *
! 29: * Postal address:
! 30: * Advanced Software Production Line, S.L.
! 31: * Edificio Alius A, Oficina 102,
! 32: * C/ Antonio Suarez Nº 10,
! 33: * Alcalá de Henares 28802 Madrid
! 34: * Spain
! 35: *
! 36: * Email address:
! 37: * info@aspl.es - http://www.aspl.es/xml
! 38: */
! 39: #ifndef __AXL_DTD_H__
! 40: #define __AXL_DTD_H__
! 41:
! 42: #include <axl_decl.h>
! 43:
! 44: BEGIN_C_DECLS
! 45:
! 46: /**
! 47: * \addtogroup axl_dtd_module
! 48: * @{
! 49: */
! 50:
! 51: axlDtd * axl_dtd_parse (const char * entity,
! 52: int entity_size,
! 53: axlError ** error);
! 54:
! 55: axlDtd * axl_dtd_parse_from_file (const char * file_path,
! 56: axlError ** error);
! 57:
! 58: axl_bool axl_dtd_validate (axlDoc * doc,
! 59: axlDtd * dtd,
! 60: axlError ** error);
! 61:
! 62: axl_bool axl_dtd_are_equal (axlDtd * dtd,
! 63: axlDtd * dtd2);
! 64:
! 65: axlDtdElement * axl_dtd_get_root (axlDtd * dtd);
! 66:
! 67: axlDtdElement * axl_dtd_get_element (axlDtd * dtd,
! 68: const char * name);
! 69:
! 70: char * axl_dtd_get_element_name (axlDtdElement * element);
! 71:
! 72: AxlDtdElementType axl_dtd_get_element_type (axlDtdElement * element);
! 73:
! 74: axlDtdElementList * axl_dtd_get_item_list (axlDtdElement * element);
! 75:
! 76: axl_bool axl_dtd_element_is_toplevel (axlDtd * dtd, axlDtdElement * element);
! 77:
! 78: int axl_dtd_item_list_count (axlDtdElementList * itemList);
! 79:
! 80: AxlDtdNestedType axl_dtd_item_list_type (axlDtdElementList * itemList);
! 81:
! 82: AxlDtdTimes axl_dtd_item_list_repeat (axlDtdElementList * itemList);
! 83:
! 84: axlDtdElementListNode * axl_dtd_item_list_get_node (axlDtdElementList * itemList,
! 85: int position);
! 86:
! 87: NodeType axl_dtd_item_node_get_type (axlDtdElementListNode * node);
! 88:
! 89: axlDtdElementList * axl_dtd_item_node_get_list (axlDtdElementListNode * node);
! 90:
! 91: char * axl_dtd_item_node_get_value (axlDtdElementListNode * node);
! 92:
! 93: AxlDtdTimes axl_dtd_item_node_get_repeat (axlDtdElementListNode * node);
! 94:
! 95: axl_bool axl_dtd_entity_exists (axlDtd * dtd,
! 96: const char * name,
! 97: axlDtdEntityType type);
! 98:
! 99: char * axl_dtd_entity_value (axlDtd * dtd,
! 100: const char * name,
! 101: axlDtdEntityType type);
! 102:
! 103: axlDtdAttribute * axl_dtd_get_attr (axlDtd * dtd,
! 104: const char * nodeName);
! 105:
! 106: int axl_dtd_get_attr_contraints (axlDtd * dtd,
! 107: const char * nodeName);
! 108:
! 109: void axl_dtd_free (axlDtd * dtd);
! 110:
! 111: void axl_dtd_element_free (axlDtdElement * element);
! 112:
! 113: void axl_dtd_item_list_free (axlDtdElementList * list);
! 114:
! 115: axl_bool axl_dtd_check_entity_ref_and_expand (axlDtdEntityResolver resolver,
! 116: axlPointer data,
! 117: axlStream * stream,
! 118: const char * prefix,
! 119: axlError ** error);
! 120:
! 121:
! 122: /* DON'T USE THIS FUNCTIONS, PROTOTYPES DECLARATIONS */
! 123: axl_bool __axl_dtd_validate_item_list (axlDtdElementList * itemList,
! 124: axlNode * parent,
! 125: int * child_pos,
! 126: axlError ** error,
! 127: axl_bool top_level);
! 128:
! 129:
! 130: /* @} */
! 131:
! 132: END_C_DECLS
! 133:
! 134: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>