diff --git a/ChangeLog b/ChangeLog index ab53fcb2..b240c6d8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,22 @@ +Tue Nov 18 21:51:15 CET 2003 Daniel Veillard + + * include/libxml/*.h include/libxml/*.h.in: modified the file + header to add more informations, painful... + * genChRanges.py genUnicode.py: updated to generate said changes + in headers + * doc/apibuild.py: extract headers, add them to libxml2-api.xml + * *.html *.xsl *.xml: updated the stylesheets to flag geprecated + APIs modules. Updated the stylesheets, some cleanups, regenerated + * doc/html/*.html: regenerated added back book1 and libxml-lib.html + +Tue Nov 18 14:43:16 CET 2003 Daniel Veillard + + * doc/Makefile.am doc/*.xsl doc/*.html doc/apibuild.py: cleaned up + the build process to remove all remains from the old gtk-doc + inherited, libxml2-refs.xml is now generated by apibuild.py, the + stylesheets have been improved, and the API*html now generated + are XHTML1 valid too + Tue Nov 18 14:28:32 HKT 2003 William Brack * genChRanges.py, chvalid.c, include/libxml/chvalid.h: minor diff --git a/doc/APIconstructors.html b/doc/APIconstructors.html index a0983606..2a7d0eed 100644 --- a/doc/APIconstructors.html +++ b/doc/APIconstructors.html @@ -300,9 +300,9 @@ A:link, A:visited, A:active { text-decoration: underline } xmlAddDtdEntity
xmlGetDtdEntity

Type xmlEnumerationPtr:

xmlCreateEnumeration
+xmlParseNotationType
xmlCopyEnumeration
xmlParseEnumerationType
-xmlParseNotationType

Type xmlErrorPtr:

xmlCtxtGetLastError
xmlGetLastError

Type xmlExternalEntityLoader:

xmlGetExternalEntityLoader
diff --git a/doc/api.xsl b/doc/api.xsl index 132648f7..2b7bd717 100644 --- a/doc/api.xsl +++ b/doc/api.xsl @@ -108,7 +108,7 @@ -

Daniel Veillard

+

Daniel Veillard

@@ -164,7 +164,7 @@ -

Daniel Veillard

+

Daniel Veillard

@@ -220,7 +220,7 @@ -

Daniel Veillard

+

Daniel Veillard

@@ -276,7 +276,7 @@ -

Daniel Veillard

+

Daniel Veillard

@@ -352,7 +352,7 @@ -

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/apibuild.py b/doc/apibuild.py index d6d95496..57a205f4 100755 --- a/doc/apibuild.py +++ b/doc/apibuild.py @@ -64,414 +64,415 @@ def uniq(items): return d.keys() class identifier: - def __init__(self, name, module=None, type=None, lineno = 0, - info=None, extra=None): - self.name = name - self.module = module - self.type = type - self.info = info - self.extra = extra - self.lineno = lineno - self.static = 0 + def __init__(self, name, module=None, type=None, lineno = 0, + info=None, extra=None): + self.name = name + self.module = module + self.type = type + self.info = info + self.extra = extra + self.lineno = lineno + self.static = 0 - def __repr__(self): - r = "%s %s:" % (self.type, self.name) - if self.static: - r = r + " static" - if self.module != None: - r = r + " from %s" % (self.module) - if self.info != None: - r = r + " " + `self.info` - if self.extra != None: - r = r + " " + `self.extra` - return r + def __repr__(self): + r = "%s %s:" % (self.type, self.name) + if self.static: + r = r + " static" + if self.module != None: + r = r + " from %s" % (self.module) + if self.info != None: + r = r + " " + `self.info` + if self.extra != None: + r = r + " " + `self.extra` + return r - def set_module(self, module): - self.module = module - def set_type(self, type): - self.type = type - def set_info(self, info): - self.info = info - def set_extra(self, extra): - self.extra = extra - def set_lineno(self, lineno): - self.lineno = lineno - def set_static(self, static): - self.static = static + def set_module(self, module): + self.module = module + def set_type(self, type): + self.type = type + def set_info(self, info): + self.info = info + def set_extra(self, extra): + self.extra = extra + def set_lineno(self, lineno): + self.lineno = lineno + def set_static(self, static): + self.static = static - def get_name(self): - return self.name - def get_module(self): - return self.module - def get_type(self): - return self.type - def get_info(self): - return self.info - def get_lineno(self): - return self.lineno - def get_extra(self): - return self.extra - def get_static(self): - return self.static + def get_name(self): + return self.name + def get_module(self): + return self.module + def get_type(self): + return self.type + def get_info(self): + return self.info + def get_lineno(self): + return self.lineno + def get_extra(self): + return self.extra + def get_static(self): + return self.static - def update(self, module, type = None, info = None, extra=None): - if module != None and self.module == None: - self.set_module(module) - if type != None and self.type == None: - self.set_type(type) - if info != None: - self.set_info(info) - if extra != None: - self.set_extra(extra) + def update(self, module, type = None, info = None, extra=None): + if module != None and self.module == None: + self.set_module(module) + if type != None and self.type == None: + self.set_type(type) + if info != None: + self.set_info(info) + if extra != None: + self.set_extra(extra) class index: - def __init__(self, name = "noname"): - self.name = name - self.identifiers = {} - self.functions = {} - self.variables = {} - self.includes = {} - self.structs = {} - self.enums = {} - self.typedefs = {} - self.macros = {} - self.references = {} + def __init__(self, name = "noname"): + self.name = name + self.identifiers = {} + self.functions = {} + self.variables = {} + self.includes = {} + self.structs = {} + self.enums = {} + self.typedefs = {} + self.macros = {} + self.references = {} + self.info = {} - def add_ref(self, name, module, static, type, lineno, info=None, extra=None): - if name[0:2] == '__': - return None - d = None - try: - d = self.identifiers[name] - d.update(module, type, lineno, info, extra) - except: - d = identifier(name, module, type, lineno, info, extra) - self.identifiers[name] = d + def add_ref(self, name, module, static, type, lineno, info=None, extra=None): + if name[0:2] == '__': + return None + d = None + try: + d = self.identifiers[name] + d.update(module, type, lineno, info, extra) + except: + d = identifier(name, module, type, lineno, info, extra) + self.identifiers[name] = d - if d != None and static == 1: - d.set_static(1) + if d != None and static == 1: + d.set_static(1) - if d != None and name != None and type != None: - self.references[name] = d + if d != None and name != None and type != None: + self.references[name] = d - def add(self, name, module, static, type, lineno, info=None, extra=None): - if name[0:2] == '__': - return None - d = None - try: - d = self.identifiers[name] - d.update(module, type, lineno, info, extra) - except: - d = identifier(name, module, type, lineno, info, extra) - self.identifiers[name] = d + def add(self, name, module, static, type, lineno, info=None, extra=None): + if name[0:2] == '__': + return None + d = None + try: + d = self.identifiers[name] + d.update(module, type, lineno, info, extra) + except: + d = identifier(name, module, type, lineno, info, extra) + self.identifiers[name] = d - if d != None and static == 1: - d.set_static(1) + if d != None and static == 1: + d.set_static(1) - if d != None and name != None and type != None: - if type == "function": - self.functions[name] = d - elif type == "functype": - self.functions[name] = d - elif type == "variable": - self.variables[name] = d - elif type == "include": - self.includes[name] = d - elif type == "struct": - self.structs[name] = d - elif type == "enum": - self.enums[name] = d - elif type == "typedef": - self.typedefs[name] = d - elif type == "macro": - self.macros[name] = d + if d != None and name != None and type != None: + if type == "function": + self.functions[name] = d + elif type == "functype": + self.functions[name] = d + elif type == "variable": + self.variables[name] = d + elif type == "include": + self.includes[name] = d + elif type == "struct": + self.structs[name] = d + elif type == "enum": + self.enums[name] = d + elif type == "typedef": + self.typedefs[name] = d + elif type == "macro": + self.macros[name] = d + else: + print "Unable to register type ", type + return d + + def merge(self, idx): + for id in idx.functions.keys(): + # + # macro might be used to override functions or variables + # definitions + # + if self.macros.has_key(id): + del self.macros[id] + if self.functions.has_key(id): + print "function %s from %s redeclared in %s" % ( + id, self.functions[id].module, idx.functions[id].module) else: - print "Unable to register type ", type - return d + self.functions[id] = idx.functions[id] + self.identifiers[id] = idx.functions[id] + for id in idx.variables.keys(): + # + # macro might be used to override functions or variables + # definitions + # + if self.macros.has_key(id): + del self.macros[id] + if self.variables.has_key(id): + print "variable %s from %s redeclared in %s" % ( + id, self.variables[id].module, idx.variables[id].module) + else: + self.variables[id] = idx.variables[id] + self.identifiers[id] = idx.variables[id] + for id in idx.structs.keys(): + if self.structs.has_key(id): + print "struct %s from %s redeclared in %s" % ( + id, self.structs[id].module, idx.structs[id].module) + else: + self.structs[id] = idx.structs[id] + self.identifiers[id] = idx.structs[id] + for id in idx.typedefs.keys(): + if self.typedefs.has_key(id): + print "typedef %s from %s redeclared in %s" % ( + id, self.typedefs[id].module, idx.typedefs[id].module) + else: + self.typedefs[id] = idx.typedefs[id] + self.identifiers[id] = idx.typedefs[id] + for id in idx.macros.keys(): + # + # macro might be used to override functions or variables + # definitions + # + if self.variables.has_key(id): + continue + if self.functions.has_key(id): + continue + if self.enums.has_key(id): + continue + if self.macros.has_key(id): + print "macro %s from %s redeclared in %s" % ( + id, self.macros[id].module, idx.macros[id].module) + else: + self.macros[id] = idx.macros[id] + self.identifiers[id] = idx.macros[id] + for id in idx.enums.keys(): + if self.enums.has_key(id): + print "enum %s from %s redeclared in %s" % ( + id, self.enums[id].module, idx.enums[id].module) + else: + self.enums[id] = idx.enums[id] + self.identifiers[id] = idx.enums[id] - def merge(self, idx): - for id in idx.functions.keys(): - # - # macro might be used to override functions or variables - # definitions - # - if self.macros.has_key(id): - del self.macros[id] - if self.functions.has_key(id): - print "function %s from %s redeclared in %s" % ( - id, self.functions[id].module, idx.functions[id].module) - else: - self.functions[id] = idx.functions[id] - self.identifiers[id] = idx.functions[id] - for id in idx.variables.keys(): - # - # macro might be used to override functions or variables - # definitions - # - if self.macros.has_key(id): - del self.macros[id] - if self.variables.has_key(id): - print "variable %s from %s redeclared in %s" % ( - id, self.variables[id].module, idx.variables[id].module) - else: - self.variables[id] = idx.variables[id] - self.identifiers[id] = idx.variables[id] - for id in idx.structs.keys(): - if self.structs.has_key(id): - print "struct %s from %s redeclared in %s" % ( - id, self.structs[id].module, idx.structs[id].module) - else: - self.structs[id] = idx.structs[id] - self.identifiers[id] = idx.structs[id] - for id in idx.typedefs.keys(): - if self.typedefs.has_key(id): - print "typedef %s from %s redeclared in %s" % ( - id, self.typedefs[id].module, idx.typedefs[id].module) - else: - self.typedefs[id] = idx.typedefs[id] - self.identifiers[id] = idx.typedefs[id] - for id in idx.macros.keys(): - # - # macro might be used to override functions or variables - # definitions - # - if self.variables.has_key(id): - continue - if self.functions.has_key(id): - continue - if self.enums.has_key(id): - continue - if self.macros.has_key(id): - print "macro %s from %s redeclared in %s" % ( - id, self.macros[id].module, idx.macros[id].module) - else: - self.macros[id] = idx.macros[id] - self.identifiers[id] = idx.macros[id] - for id in idx.enums.keys(): - if self.enums.has_key(id): - print "enum %s from %s redeclared in %s" % ( - id, self.enums[id].module, idx.enums[id].module) - else: - self.enums[id] = idx.enums[id] - self.identifiers[id] = idx.enums[id] - - def merge_public(self, idx): - for id in idx.functions.keys(): - if self.functions.has_key(id): - up = idx.functions[id] - self.functions[id].update(None, up.type, up.info, up.extra) + def merge_public(self, idx): + for id in idx.functions.keys(): + if self.functions.has_key(id): + up = idx.functions[id] + self.functions[id].update(None, up.type, up.info, up.extra) # else: # print "Function %s from %s is not declared in headers" % ( # id, idx.functions[id].module) # TODO: do the same for variables. - def analyze_dict(self, type, dict): - count = 0 - public = 0 - for name in dict.keys(): - id = dict[name] - count = count + 1 - if id.static == 0: - public = public + 1 - if count != public: - print " %d %s , %d public" % (count, type, public) - elif count != 0: - print " %d public %s" % (count, type) + def analyze_dict(self, type, dict): + count = 0 + public = 0 + for name in dict.keys(): + id = dict[name] + count = count + 1 + if id.static == 0: + public = public + 1 + if count != public: + print " %d %s , %d public" % (count, type, public) + elif count != 0: + print " %d public %s" % (count, type) - def analyze(self): - self.analyze_dict("functions", self.functions) - self.analyze_dict("variables", self.variables) - self.analyze_dict("structs", self.structs) - self.analyze_dict("typedefs", self.typedefs) - self.analyze_dict("macros", self.macros) + def analyze(self): + self.analyze_dict("functions", self.functions) + self.analyze_dict("variables", self.variables) + self.analyze_dict("structs", self.structs) + self.analyze_dict("typedefs", self.typedefs) + self.analyze_dict("macros", self.macros) class CLexer: - """A lexer for the C language, tokenize the input by reading and - analyzing it line by line""" - def __init__(self, input): - self.input = input - self.tokens = [] - self.line = "" - self.lineno = 0 + """A lexer for the C language, tokenize the input by reading and + analyzing it line by line""" + def __init__(self, input): + self.input = input + self.tokens = [] + self.line = "" + self.lineno = 0 - def getline(self): - line = '' - while line == '': - line = self.input.readline() - if not line: - return None - self.lineno = self.lineno + 1 - line = string.lstrip(line) - line = string.rstrip(line) - if line == '': - continue - while line[-1] == '\\': - line = line[:-1] - n = self.input.readline() - self.lineno = self.lineno + 1 - n = string.lstrip(n) - n = string.rstrip(n) - if not n: - break - else: - line = line + n - return line + def getline(self): + line = '' + while line == '': + line = self.input.readline() + if not line: + return None + self.lineno = self.lineno + 1 + line = string.lstrip(line) + line = string.rstrip(line) + if line == '': + continue + while line[-1] == '\\': + line = line[:-1] + n = self.input.readline() + self.lineno = self.lineno + 1 + n = string.lstrip(n) + n = string.rstrip(n) + if not n: + break + else: + line = line + n + return line - def getlineno(self): - return self.lineno + def getlineno(self): + return self.lineno - def push(self, token): - self.tokens.insert(0, token); + def push(self, token): + self.tokens.insert(0, token); - def debug(self): - print "Last token: ", self.last - print "Token queue: ", self.tokens - print "Line %d end: " % (self.lineno), self.line + def debug(self): + print "Last token: ", self.last + print "Token queue: ", self.tokens + print "Line %d end: " % (self.lineno), self.line - def token(self): - while self.tokens == []: - if self.line == "": - line = self.getline() - else: - line = self.line - self.line = "" - if line == None: - return None + def token(self): + while self.tokens == []: + if self.line == "": + line = self.getline() + else: + line = self.line + self.line = "" + if line == None: + return None - if line[0] == '#': - self.tokens = map((lambda x: ('preproc', x)), - string.split(line)) - break; - l = len(line) - if line[0] == '"' or line[0] == "'": - end = line[0] - line = line[1:] - found = 0 - tok = "" - while found == 0: - i = 0 - l = len(line) - while i < l: - if line[i] == end: - self.line = line[i+1:] - line = line[:i] - l = i - found = 1 - break - if line[i] == '\\': - i = i + 1 - i = i + 1 - tok = tok + line - if found == 0: - line = self.getline() - if line == None: - return None - self.last = ('string', tok) - return self.last + if line[0] == '#': + self.tokens = map((lambda x: ('preproc', x)), + string.split(line)) + break; + l = len(line) + if line[0] == '"' or line[0] == "'": + end = line[0] + line = line[1:] + found = 0 + tok = "" + while found == 0: + i = 0 + l = len(line) + while i < l: + if line[i] == end: + self.line = line[i+1:] + line = line[:i] + l = i + found = 1 + break + if line[i] == '\\': + i = i + 1 + i = i + 1 + tok = tok + line + if found == 0: + line = self.getline() + if line == None: + return None + self.last = ('string', tok) + return self.last - if l >= 2 and line[0] == '/' and line[1] == '*': - line = line[2:] - found = 0 - tok = "" - while found == 0: - i = 0 - l = len(line) - while i < l: - if line[i] == '*' and i+1 < l and line[i+1] == '/': - self.line = line[i+2:] - line = line[:i-1] - l = i - found = 1 - break - i = i + 1 - if tok != "": - tok = tok + "\n" - tok = tok + line - if found == 0: - line = self.getline() - if line == None: - return None - self.last = ('comment', tok) - return self.last - if l >= 2 and line[0] == '/' and line[1] == '/': - line = line[2:] - self.last = ('comment', line) - return self.last - i = 0 - while i < l: - if line[i] == '/' and i+1 < l and line[i+1] == '/': - self.line = line[i:] - line = line[:i] - break - if line[i] == '/' and i+1 < l and line[i+1] == '*': - self.line = line[i:] - line = line[:i] - break - if line[i] == '"' or line[i] == "'": - self.line = line[i:] - line = line[:i] - break - i = i + 1 - l = len(line) - i = 0 - while i < l: - if line[i] == ' ' or line[i] == '\t': - i = i + 1 - continue - o = ord(line[i]) - if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \ - (o >= 48 and o <= 57): - s = i - while i < l: - o = ord(line[i]) - if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \ - (o >= 48 and o <= 57) or string.find( + if l >= 2 and line[0] == '/' and line[1] == '*': + line = line[2:] + found = 0 + tok = "" + while found == 0: + i = 0 + l = len(line) + while i < l: + if line[i] == '*' and i+1 < l and line[i+1] == '/': + self.line = line[i+2:] + line = line[:i-1] + l = i + found = 1 + break + i = i + 1 + if tok != "": + tok = tok + "\n" + tok = tok + line + if found == 0: + line = self.getline() + if line == None: + return None + self.last = ('comment', tok) + return self.last + if l >= 2 and line[0] == '/' and line[1] == '/': + line = line[2:] + self.last = ('comment', line) + return self.last + i = 0 + while i < l: + if line[i] == '/' and i+1 < l and line[i+1] == '/': + self.line = line[i:] + line = line[:i] + break + if line[i] == '/' and i+1 < l and line[i+1] == '*': + self.line = line[i:] + line = line[:i] + break + if line[i] == '"' or line[i] == "'": + self.line = line[i:] + line = line[:i] + break + i = i + 1 + l = len(line) + i = 0 + while i < l: + if line[i] == ' ' or line[i] == '\t': + i = i + 1 + continue + o = ord(line[i]) + if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \ + (o >= 48 and o <= 57): + s = i + while i < l: + o = ord(line[i]) + if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \ + (o >= 48 and o <= 57) or string.find( " \t(){}:;,+-*/%&!|[]=><", line[i]) == -1: - i = i + 1 - else: - break - self.tokens.append(('name', line[s:i])) - continue - if string.find("(){}:;,[]", line[i]) != -1: + i = i + 1 + else: + break + self.tokens.append(('name', line[s:i])) + continue + if string.find("(){}:;,[]", line[i]) != -1: # if line[i] == '(' or line[i] == ')' or line[i] == '{' or \ # line[i] == '}' or line[i] == ':' or line[i] == ';' or \ # line[i] == ',' or line[i] == '[' or line[i] == ']': - self.tokens.append(('sep', line[i])) - i = i + 1 - continue - if string.find("+-*><=/%&!|.", line[i]) != -1: + self.tokens.append(('sep', line[i])) + i = i + 1 + continue + if string.find("+-*><=/%&!|.", line[i]) != -1: # if line[i] == '+' or line[i] == '-' or line[i] == '*' or \ # line[i] == '>' or line[i] == '<' or line[i] == '=' or \ # line[i] == '/' or line[i] == '%' or line[i] == '&' or \ # line[i] == '!' or line[i] == '|' or line[i] == '.': - if line[i] == '.' and i + 2 < l and \ - line[i+1] == '.' and line[i+2] == '.': - self.tokens.append(('name', '...')) - i = i + 3 - continue + if line[i] == '.' and i + 2 < l and \ + line[i+1] == '.' and line[i+2] == '.': + self.tokens.append(('name', '...')) + i = i + 3 + continue - j = i + 1 - if j < l and ( - string.find("+-*><=/%&!|", line[j]) != -1): + j = i + 1 + if j < l and ( + string.find("+-*><=/%&!|", line[j]) != -1): # line[j] == '+' or line[j] == '-' or line[j] == '*' or \ # line[j] == '>' or line[j] == '<' or line[j] == '=' or \ # line[j] == '/' or line[j] == '%' or line[j] == '&' or \ # line[j] == '!' or line[j] == '|'): - self.tokens.append(('op', line[i:j+1])) - i = j + 1 - else: - self.tokens.append(('op', line[i])) - i = i + 1 - continue - s = i - while i < l: - o = ord(line[i]) - if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \ - (o >= 48 and o <= 57) or ( - string.find(" \t(){}:;,+-*/%&!|[]=><", line[i]) == -1): + self.tokens.append(('op', line[i:j+1])) + i = j + 1 + else: + self.tokens.append(('op', line[i])) + i = i + 1 + continue + s = i + while i < l: + o = ord(line[i]) + if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \ + (o >= 48 and o <= 57) or ( + string.find(" \t(){}:;,+-*/%&!|[]=><", line[i]) == -1): # line[i] != ' ' and line[i] != '\t' and # line[i] != '(' and line[i] != ')' and # line[i] != '{' and line[i] != '}' and @@ -484,868 +485,897 @@ class CLexer: # line[i] != ']' and line[i] != '=' and # line[i] != '*' and line[i] != '>' and # line[i] != '<'): - i = i + 1 - else: - break - self.tokens.append(('name', line[s:i])) + i = i + 1 + else: + break + self.tokens.append(('name', line[s:i])) - tok = self.tokens[0] - self.tokens = self.tokens[1:] - self.last = tok - return tok + tok = self.tokens[0] + self.tokens = self.tokens[1:] + self.last = tok + return tok class CParser: - """The C module parser""" - def __init__(self, filename, idx = None): - self.filename = filename - if len(filename) > 2 and filename[-2:] == '.h': - self.is_header = 1 - else: - self.is_header = 0 - self.input = open(filename) - self.lexer = CLexer(self.input) - if idx == None: - self.index = index() - else: - self.index = idx - self.top_comment = "" - self.last_comment = "" - self.comment = None - self.collect_ref = 0 + """The C module parser""" + def __init__(self, filename, idx = None): + self.filename = filename + if len(filename) > 2 and filename[-2:] == '.h': + self.is_header = 1 + else: + self.is_header = 0 + self.input = open(filename) + self.lexer = CLexer(self.input) + if idx == None: + self.index = index() + else: + self.index = idx + self.top_comment = "" + self.last_comment = "" + self.comment = None + self.collect_ref = 0 - def collect_references(self): - self.collect_ref = 1 + def collect_references(self): + self.collect_ref = 1 - def lineno(self): - return self.lexer.getlineno() + def lineno(self): + return self.lexer.getlineno() - def index_add(self, name, module, static, type, info=None, extra = None): - self.index.add(name, module, static, type, self.lineno(), - info, extra) + def index_add(self, name, module, static, type, info=None, extra = None): + self.index.add(name, module, static, type, self.lineno(), + info, extra) - def index_add_ref(self, name, module, static, type, info=None, - extra = None): - self.index.add_ref(name, module, static, type, self.lineno(), - info, extra) + def index_add_ref(self, name, module, static, type, info=None, + extra = None): + self.index.add_ref(name, module, static, type, self.lineno(), + info, extra) - def error(self, msg, token=-1): - print "Parse Error: " + msg - if token != -1: - print "Got token ", token - self.lexer.debug() - sys.exit(1) + def error(self, msg, token=-1): + print "Parse Error: " + msg + if token != -1: + print "Got token ", token + self.lexer.debug() + sys.exit(1) - def debug(self, msg, token=-1): - print "Debug: " + msg - if token != -1: - print "Got token ", token - self.lexer.debug() + def debug(self, msg, token=-1): + print "Debug: " + msg + if token != -1: + print "Got token ", token + self.lexer.debug() - def parseComment(self, token): - if self.top_comment == "": - self.top_comment = token[1] - if self.comment == None or token[1][0] == '*': - self.comment = token[1]; - else: - self.comment = self.comment + token[1] - token = self.lexer.token() - return token + def parseTopComment(self, comment): + res = {} + lines = string.split(comment, "\n") + item = None + for line in lines: + while line != "" and (line[0] == ' ' or line[0] == '\t'): + line = line[1:] + while line != "" and line[0] == '*': + line = line[1:] + while line != "" and (line[0] == ' ' or line[0] == '\t'): + line = line[1:] + try: + (it, line) = string.split(line, ":", 1) + item = it + while line != "" and (line[0] == ' ' or line[0] == '\t'): + line = line[1:] + if res.has_key(item): + res[item] = res[item] + " " + line + else: + res[item] = line + except: + if item != None: + if res.has_key(item): + res[item] = res[item] + " " + line + else: + res[item] = line + self.index.info = res + + def parseComment(self, token): + if self.top_comment == "": + self.top_comment = token[1] + if self.comment == None or token[1][0] == '*': + self.comment = token[1]; + else: + self.comment = self.comment + token[1] + token = self.lexer.token() + return token # # Parse a comment block associate to a macro # - def parseMacroComment(self, name, quiet = 0): - if name[0:2] == '__': - quiet = 1 + def parseMacroComment(self, name, quiet = 0): + if name[0:2] == '__': + quiet = 1 - args = [] - desc = "" + args = [] + desc = "" - if self.comment == None: - if not quiet: - print "Missing comment for macro %s" % (name) - return((args, desc)) - if self.comment[0] != '*': - if not quiet: - print "Missing * in macro comment for %s" % (name) - return((args, desc)) - lines = string.split(self.comment, '\n') - if lines[0] == '*': - del lines[0] - if lines[0] != "* %s:" % (name): - if not quiet: - print "Misformatted macro comment for %s" % (name) - print " Expecting '* %s:' got '%s'" % (name, lines[0]) - return((args, desc)) - del lines[0] - while lines[0] == '*': - del lines[0] - while len(lines) > 0 and lines[0][0:3] == '* @': - l = lines[0][3:] - try: - (arg, desc) = string.split(l, ':', 1) - desc=string.strip(desc) - arg=string.strip(arg) - except: - if not quiet: - print "Misformatted macro comment for %s" % (name) - print " problem with '%s'" % (lines[0]) - del lines[0] - continue - del lines[0] - l = string.strip(lines[0]) - while len(l) > 2 and l[0:3] != '* @': - while l[0] == '*': - l = l[1:] - desc = desc + ' ' + string.strip(l) - del lines[0] - if len(lines) == 0: - break - l = lines[0] - args.append((arg, desc)) - while len(lines) > 0 and lines[0] == '*': - del lines[0] - desc = "" - while len(lines) > 0: - l = lines[0] - while len(l) > 0 and l[0] == '*': - l = l[1:] - l = string.strip(l) - desc = desc + " " + l - del lines[0] + if self.comment == None: + if not quiet: + print "Missing comment for macro %s" % (name) + return((args, desc)) + if self.comment[0] != '*': + if not quiet: + print "Missing * in macro comment for %s" % (name) + return((args, desc)) + lines = string.split(self.comment, '\n') + if lines[0] == '*': + del lines[0] + if lines[0] != "* %s:" % (name): + if not quiet: + print "Misformatted macro comment for %s" % (name) + print " Expecting '* %s:' got '%s'" % (name, lines[0]) + return((args, desc)) + del lines[0] + while lines[0] == '*': + del lines[0] + while len(lines) > 0 and lines[0][0:3] == '* @': + l = lines[0][3:] + try: + (arg, desc) = string.split(l, ':', 1) + desc=string.strip(desc) + arg=string.strip(arg) + except: + if not quiet: + print "Misformatted macro comment for %s" % (name) + print " problem with '%s'" % (lines[0]) + del lines[0] + continue + del lines[0] + l = string.strip(lines[0]) + while len(l) > 2 and l[0:3] != '* @': + while l[0] == '*': + l = l[1:] + desc = desc + ' ' + string.strip(l) + del lines[0] + if len(lines) == 0: + break + l = lines[0] + args.append((arg, desc)) + while len(lines) > 0 and lines[0] == '*': + del lines[0] + desc = "" + while len(lines) > 0: + l = lines[0] + while len(l) > 0 and l[0] == '*': + l = l[1:] + l = string.strip(l) + desc = desc + " " + l + del lines[0] - desc = string.strip(desc) + desc = string.strip(desc) - if quiet == 0: - if desc == "": - print "Macro comment for %s lack description of the macro" % (name) + if quiet == 0: + if desc == "": + print "Macro comment for %s lack description of the macro" % (name) - return((args, desc)) + return((args, desc)) # # Parse a comment block and merge the informations found in the # parameters descriptions, finally returns a block as complete # as possible # - def mergeFunctionComment(self, name, description, quiet = 0): - if name == 'main': - quiet = 1 - if name[0:2] == '__': - quiet = 1 + def mergeFunctionComment(self, name, description, quiet = 0): + if name == 'main': + quiet = 1 + if name[0:2] == '__': + quiet = 1 - (ret, args) = description - desc = "" - retdesc = "" + (ret, args) = description + desc = "" + retdesc = "" - if self.comment == None: - if not quiet: - print "Missing comment for function %s" % (name) - return(((ret[0], retdesc), args, desc)) - if self.comment[0] != '*': - if not quiet: - print "Missing * in function comment for %s" % (name) - return(((ret[0], retdesc), args, desc)) - lines = string.split(self.comment, '\n') - if lines[0] == '*': - del lines[0] - if lines[0] != "* %s:" % (name): - if not quiet: - print "Misformatted function comment for %s" % (name) - print " Expecting '* %s:' got '%s'" % (name, lines[0]) - return(((ret[0], retdesc), args, desc)) - del lines[0] - while lines[0] == '*': - del lines[0] - nbargs = len(args) - while len(lines) > 0 and lines[0][0:3] == '* @': - l = lines[0][3:] - try: - (arg, desc) = string.split(l, ':', 1) - desc=string.strip(desc) - arg=string.strip(arg) - except: - if not quiet: - print "Misformatted function comment for %s" % (name) - print " problem with '%s'" % (lines[0]) - del lines[0] - continue - del lines[0] - l = string.strip(lines[0]) - while len(l) > 2 and l[0:3] != '* @': - while l[0] == '*': - l = l[1:] - desc = desc + ' ' + string.strip(l) - del lines[0] - if len(lines) == 0: - break - l = lines[0] - i = 0 - while i < nbargs: - if args[i][1] == arg: - args[i] = (args[i][0], arg, desc) - break; - i = i + 1 - if i >= nbargs: - if not quiet: - print "Unable to find arg %s from function comment for %s" % ( - arg, name) - while len(lines) > 0 and lines[0] == '*': - del lines[0] - desc = "" - while len(lines) > 0: - l = lines[0] - while len(l) > 0 and l[0] == '*': - l = l[1:] - l = string.strip(l) - if len(l) >= 6 and l[0:6] == "return" or l[0:6] == "Return": - try: - l = string.split(l, ' ', 1)[1] - except: - l = "" - retdesc = string.strip(l) - del lines[0] - while len(lines) > 0: - l = lines[0] - while len(l) > 0 and l[0] == '*': - l = l[1:] - l = string.strip(l) - retdesc = retdesc + " " + l - del lines[0] - else: - desc = desc + " " + l - del lines[0] + if self.comment == None: + if not quiet: + print "Missing comment for function %s" % (name) + return(((ret[0], retdesc), args, desc)) + if self.comment[0] != '*': + if not quiet: + print "Missing * in function comment for %s" % (name) + return(((ret[0], retdesc), args, desc)) + lines = string.split(self.comment, '\n') + if lines[0] == '*': + del lines[0] + if lines[0] != "* %s:" % (name): + if not quiet: + print "Misformatted function comment for %s" % (name) + print " Expecting '* %s:' got '%s'" % (name, lines[0]) + return(((ret[0], retdesc), args, desc)) + del lines[0] + while lines[0] == '*': + del lines[0] + nbargs = len(args) + while len(lines) > 0 and lines[0][0:3] == '* @': + l = lines[0][3:] + try: + (arg, desc) = string.split(l, ':', 1) + desc=string.strip(desc) + arg=string.strip(arg) + except: + if not quiet: + print "Misformatted function comment for %s" % (name) + print " problem with '%s'" % (lines[0]) + del lines[0] + continue + del lines[0] + l = string.strip(lines[0]) + while len(l) > 2 and l[0:3] != '* @': + while l[0] == '*': + l = l[1:] + desc = desc + ' ' + string.strip(l) + del lines[0] + if len(lines) == 0: + break + l = lines[0] + i = 0 + while i < nbargs: + if args[i][1] == arg: + args[i] = (args[i][0], arg, desc) + break; + i = i + 1 + if i >= nbargs: + if not quiet: + print "Unable to find arg %s from function comment for %s" % ( + arg, name) + while len(lines) > 0 and lines[0] == '*': + del lines[0] + desc = "" + while len(lines) > 0: + l = lines[0] + while len(l) > 0 and l[0] == '*': + l = l[1:] + l = string.strip(l) + if len(l) >= 6 and l[0:6] == "return" or l[0:6] == "Return": + try: + l = string.split(l, ' ', 1)[1] + except: + l = "" + retdesc = string.strip(l) + del lines[0] + while len(lines) > 0: + l = lines[0] + while len(l) > 0 and l[0] == '*': + l = l[1:] + l = string.strip(l) + retdesc = retdesc + " " + l + del lines[0] + else: + desc = desc + " " + l + del lines[0] - retdesc = string.strip(retdesc) - desc = string.strip(desc) + retdesc = string.strip(retdesc) + desc = string.strip(desc) - if quiet == 0: + if quiet == 0: # # report missing comments # - i = 0 - while i < nbargs: - if args[i][2] == None and args[i][0] != "void" and args[i][1] != None: - print "Function comment for %s lack description of arg %s" % (name, args[i][1]) - i = i + 1 - if retdesc == "" and ret[0] != "void": - print "Function comment for %s lack description of return value" % (name) - if desc == "": - print "Function comment for %s lack description of the function" % (name) + i = 0 + while i < nbargs: + if args[i][2] == None and args[i][0] != "void" and args[i][1] != None: + print "Function comment for %s lack description of arg %s" % (name, args[i][1]) + i = i + 1 + if retdesc == "" and ret[0] != "void": + print "Function comment for %s lack description of return value" % (name) + if desc == "": + print "Function comment for %s lack description of the function" % (name) - return(((ret[0], retdesc), args, desc)) + return(((ret[0], retdesc), args, desc)) - def parsePreproc(self, token): - name = token[1] - if name == "#include": - token = self.lexer.token() - if token == None: - return None - if token[0] == 'preproc': - self.index_add(token[1], self.filename, not self.is_header, + def parsePreproc(self, token): + name = token[1] + if name == "#include": + token = self.lexer.token() + if token == None: + return None + if token[0] == 'preproc': + self.index_add(token[1], self.filename, not self.is_header, "include") - return self.lexer.token() - return token - if name == "#define": - token = self.lexer.token() - if token == None: - return None - if token[0] == 'preproc': + return self.lexer.token() + return token + if name == "#define": + token = self.lexer.token() + if token == None: + return None + if token[0] == 'preproc': # TODO macros with arguments - name = token[1] - lst = [] - token = self.lexer.token() - while token != None and token[0] == 'preproc' and \ - token[1][0] != '#': - lst.append(token[1]) - token = self.lexer.token() - try: - name = string.split(name, '(') [0] - except: - pass - info = self.parseMacroComment(name, not self.is_header) - self.index_add(name, self.filename, not self.is_header, + name = token[1] + lst = [] + token = self.lexer.token() + while token != None and token[0] == 'preproc' and \ + token[1][0] != '#': + lst.append(token[1]) + token = self.lexer.token() + try: + name = string.split(name, '(') [0] + except: + pass + info = self.parseMacroComment(name, not self.is_header) + self.index_add(name, self.filename, not self.is_header, "macro", info) - return token - token = self.lexer.token() - while token != None and token[0] == 'preproc' and \ - token[1][0] != '#': - token = self.lexer.token() - return token + return token + token = self.lexer.token() + while token != None and token[0] == 'preproc' and \ + token[1][0] != '#': + token = self.lexer.token() + return token # # token acquisition on top of the lexer, it handle internally # preprocessor and comments since they are logically not part of # the program structure. # - def token(self): - global ignored_words + def token(self): + global ignored_words - token = self.lexer.token() - while token != None: - if token[0] == 'comment': - token = self.parseComment(token) - continue - elif token[0] == 'preproc': - token = self.parsePreproc(token) - continue - elif token[0] == "name" and ignored_words.has_key(token[1]): - (n, info) = ignored_words[token[1]] - i = 0 - while i < n: - token = self.lexer.token() - i = i + 1 - token = self.lexer.token() - continue - else: - if debug: - print "=> ", token - return token - return None + token = self.lexer.token() + while token != None: + if token[0] == 'comment': + token = self.parseComment(token) + continue + elif token[0] == 'preproc': + token = self.parsePreproc(token) + continue + elif token[0] == "name" and ignored_words.has_key(token[1]): + (n, info) = ignored_words[token[1]] + i = 0 + while i < n: + token = self.lexer.token() + i = i + 1 + token = self.lexer.token() + continue + else: + if debug: + print "=> ", token + return token + return None # # Parse a typedef, it records the type and its name. # - def parseTypedef(self, token): - if token == None: - return None - token = self.parseType(token) - if token == None: - self.error("parsing typedef") - return None - base_type = self.type - type = base_type + def parseTypedef(self, token): + if token == None: + return None + token = self.parseType(token) + if token == None: + self.error("parsing typedef") + return None + base_type = self.type + type = base_type #self.debug("end typedef type", token) - while token != None: - if token[0] == "name": - name = token[1] - signature = self.signature - if signature != None: - type = string.split(type, '(')[0] - d = self.mergeFunctionComment(name, - ((type, None), signature), 1) - self.index_add(name, self.filename, not self.is_header, + while token != None: + if token[0] == "name": + name = token[1] + signature = self.signature + if signature != None: + type = string.split(type, '(')[0] + d = self.mergeFunctionComment(name, + ((type, None), signature), 1) + self.index_add(name, self.filename, not self.is_header, "functype", d) - else: - if base_type == "struct": - self.index_add(name, self.filename, not self.is_header, + else: + if base_type == "struct": + self.index_add(name, self.filename, not self.is_header, "struct", type) - base_type = "struct " + name - else: - self.index_add(name, self.filename, not self.is_header, + base_type = "struct " + name + else: + self.index_add(name, self.filename, not self.is_header, "typedef", type) - token = self.token() - else: - self.error("parsing typedef: expecting a name") - return token + token = self.token() + else: + self.error("parsing typedef: expecting a name") + return token #self.debug("end typedef", token) - if token != None and token[0] == 'sep' and token[1] == ',': - type = base_type - token = self.token() - while token != None and token[0] == "op": - type = type + token[1] - token = self.token() - elif token != None and token[0] == 'sep' and token[1] == ';': - break; - elif token != None and token[0] == 'name': - type = base_type - continue; - else: - self.error("parsing typedef: expecting ';'", token) - return token - token = self.token() - return token + if token != None and token[0] == 'sep' and token[1] == ',': + type = base_type + token = self.token() + while token != None and token[0] == "op": + type = type + token[1] + token = self.token() + elif token != None and token[0] == 'sep' and token[1] == ';': + break; + elif token != None and token[0] == 'name': + type = base_type + continue; + else: + self.error("parsing typedef: expecting ';'", token) + return token + token = self.token() + return token # # Parse a C code block, used for functions it parse till # the balancing } included # - def parseBlock(self, token): - while token != None: - if token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseBlock(token) - elif token[0] == "sep" and token[1] == "}": - self.comment = None - token = self.token() - return token - else: - if self.collect_ref == 1: - oldtok = token - token = self.token() - if oldtok[0] == "name" and oldtok[1][0:3] == "xml": - if token[0] == "sep" and token[1] == "(": - self.index_add_ref(oldtok[1], self.filename, + def parseBlock(self, token): + while token != None: + if token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseBlock(token) + elif token[0] == "sep" and token[1] == "}": + self.comment = None + token = self.token() + return token + else: + if self.collect_ref == 1: + oldtok = token + token = self.token() + if oldtok[0] == "name" and oldtok[1][0:3] == "xml": + if token[0] == "sep" and token[1] == "(": + self.index_add_ref(oldtok[1], self.filename, 0, "function") - token = self.token() - elif token[0] == "name": - token = self.token() - if token[0] == "sep" and (token[1] == ";" or - token[1] == "," or token[1] == "="): - self.index_add_ref(oldtok[1], self.filename, + token = self.token() + elif token[0] == "name": + token = self.token() + if token[0] == "sep" and (token[1] == ";" or + token[1] == "," or token[1] == "="): + self.index_add_ref(oldtok[1], self.filename, 0, "type") - elif oldtok[0] == "name" and oldtok[1][0:4] == "XML_": - self.index_add_ref(oldtok[1], self.filename, + elif oldtok[0] == "name" and oldtok[1][0:4] == "XML_": + self.index_add_ref(oldtok[1], self.filename, 0, "typedef") - elif oldtok[0] == "name" and oldtok[1][0:7] == "LIBXML_": - self.index_add_ref(oldtok[1], self.filename, + elif oldtok[0] == "name" and oldtok[1][0:7] == "LIBXML_": + self.index_add_ref(oldtok[1], self.filename, 0, "typedef") - else: - token = self.token() - return token + else: + token = self.token() + return token # # Parse a C struct definition till the balancing } # - def parseStruct(self, token): - fields = [] + def parseStruct(self, token): + fields = [] #self.debug("start parseStruct", token) - while token != None: - if token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseTypeBlock(token) - elif token[0] == "sep" and token[1] == "}": - self.struct_fields = fields + while token != None: + if token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseTypeBlock(token) + elif token[0] == "sep" and token[1] == "}": + self.struct_fields = fields #self.debug("end parseStruct", token) #print fields - token = self.token() - return token - else: - base_type = self.type + token = self.token() + return token + else: + base_type = self.type #self.debug("before parseType", token) - token = self.parseType(token) + token = self.parseType(token) #self.debug("after parseType", token) - if token != None and token[0] == "name": - fname = token[1] - token = self.token() - if token[0] == "sep" and token[1] == ";": - self.comment = None - token = self.token() - fields.append((self.type, fname, self.comment)) - self.comment = None - else: - self.error("parseStruct: expecting ;", token) - elif token != None and token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseTypeBlock(token) - if token != None and token[0] == "name": - token = self.token() - if token != None and token[0] == "sep" and token[1] == ";": - token = self.token() - else: - self.error("parseStruct: expecting ;", token) - else: - self.error("parseStruct: name", token) - token = self.token() - self.type = base_type; - self.struct_fields = fields + if token != None and token[0] == "name": + fname = token[1] + token = self.token() + if token[0] == "sep" and token[1] == ";": + self.comment = None + token = self.token() + fields.append((self.type, fname, self.comment)) + self.comment = None + else: + self.error("parseStruct: expecting ;", token) + elif token != None and token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseTypeBlock(token) + if token != None and token[0] == "name": + token = self.token() + if token != None and token[0] == "sep" and token[1] == ";": + token = self.token() + else: + self.error("parseStruct: expecting ;", token) + else: + self.error("parseStruct: name", token) + token = self.token() + self.type = base_type; + self.struct_fields = fields #self.debug("end parseStruct", token) #print fields - return token + return token # # Parse a C enum block, parse till the balancing } # - def parseEnumBlock(self, token): - self.enums = [] - name = None - self.comment = None - comment = "" - value = "0" - while token != None: - if token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseTypeBlock(token) - elif token[0] == "sep" and token[1] == "}": - if name != None: - if self.comment != None: - comment = self.comment - self.comment = None - self.enums.append((name, value, comment)) - token = self.token() - return token - elif token[0] == "name": - if name != None: - if self.comment != None: - comment = string.strip(self.comment) - self.comment = None - self.enums.append((name, value, comment)) - name = token[1] - comment = "" - token = self.token() - if token[0] == "op" and token[1][0] == "=": - value = "" - if len(token[1]) > 1: - value = token[1][1:] - token = self.token() - while token[0] != "sep" or (token[1] != ',' and - token[1] != '}'): - value = value + token[1] - token = self.token() - else: - try: - value = "%d" % (int(value) + 1) - except: - print "Failed to compute value of enum %s" % (name) - value="" - if token[0] == "sep" and token[1] == ",": - token = self.token() - else: - token = self.token() - return token + def parseEnumBlock(self, token): + self.enums = [] + name = None + self.comment = None + comment = "" + value = "0" + while token != None: + if token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseTypeBlock(token) + elif token[0] == "sep" and token[1] == "}": + if name != None: + if self.comment != None: + comment = self.comment + self.comment = None + self.enums.append((name, value, comment)) + token = self.token() + return token + elif token[0] == "name": + if name != None: + if self.comment != None: + comment = string.strip(self.comment) + self.comment = None + self.enums.append((name, value, comment)) + name = token[1] + comment = "" + token = self.token() + if token[0] == "op" and token[1][0] == "=": + value = "" + if len(token[1]) > 1: + value = token[1][1:] + token = self.token() + while token[0] != "sep" or (token[1] != ',' and + token[1] != '}'): + value = value + token[1] + token = self.token() + else: + try: + value = "%d" % (int(value) + 1) + except: + print "Failed to compute value of enum %s" % (name) + value="" + if token[0] == "sep" and token[1] == ",": + token = self.token() + else: + token = self.token() + return token # # Parse a C definition block, used for structs it parse till # the balancing } # - def parseTypeBlock(self, token): - while token != None: - if token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseTypeBlock(token) - elif token[0] == "sep" and token[1] == "}": - token = self.token() - return token - else: - token = self.token() - return token + def parseTypeBlock(self, token): + while token != None: + if token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseTypeBlock(token) + elif token[0] == "sep" and token[1] == "}": + token = self.token() + return token + else: + token = self.token() + return token # # Parse a type: the fact that the type name can either occur after # the definition or within the definition makes it a little harder # if inside, the name token is pushed back before returning # - def parseType(self, token): - self.type = "" - self.struct_fields = [] - self.signature = None - if token == None: - return token + def parseType(self, token): + self.type = "" + self.struct_fields = [] + self.signature = None + if token == None: + return token - while token[0] == "name" and ( - token[1] == "const" or token[1] == "unsigned"): - if self.type == "": - self.type = token[1] - else: - self.type = self.type + " " + token[1] - token = self.token() + while token[0] == "name" and ( + token[1] == "const" or token[1] == "unsigned"): + if self.type == "": + self.type = token[1] + else: + self.type = self.type + " " + token[1] + token = self.token() - if token[0] == "name" and (token[1] == "long" or token[1] == "short"): - if self.type == "": - self.type = token[1] - else: - self.type = self.type + " " + token[1] - if token[0] == "name" and token[1] == "int": - if self.type == "": - self.type = tmp[1] - else: - self.type = self.type + " " + tmp[1] + if token[0] == "name" and (token[1] == "long" or token[1] == "short"): + if self.type == "": + self.type = token[1] + else: + self.type = self.type + " " + token[1] + if token[0] == "name" and token[1] == "int": + if self.type == "": + self.type = tmp[1] + else: + self.type = self.type + " " + tmp[1] - elif token[0] == "name" and token[1] == "struct": - if self.type == "": - self.type = token[1] - else: - self.type = self.type + " " + token[1] - token = self.token() - nametok = None - if token[0] == "name": - nametok = token - token = self.token() - if token != None and token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseStruct(token) - elif token != None and token[0] == "op" and token[1] == "*": - self.type = self.type + " " + nametok[1] + " *" - token = self.token() - while token != None and token[0] == "op" and token[1] == "*": - self.type = self.type + " *" - token = self.token() - if token[0] == "name": - nametok = token - token = self.token() - else: - self.error("struct : expecting name", token) - return token - elif token != None and token[0] == "name" and nametok != None: - self.type = self.type + " " + nametok[1] - return token + elif token[0] == "name" and token[1] == "struct": + if self.type == "": + self.type = token[1] + else: + self.type = self.type + " " + token[1] + token = self.token() + nametok = None + if token[0] == "name": + nametok = token + token = self.token() + if token != None and token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseStruct(token) + elif token != None and token[0] == "op" and token[1] == "*": + self.type = self.type + " " + nametok[1] + " *" + token = self.token() + while token != None and token[0] == "op" and token[1] == "*": + self.type = self.type + " *" + token = self.token() + if token[0] == "name": + nametok = token + token = self.token() + else: + self.error("struct : expecting name", token) + return token + elif token != None and token[0] == "name" and nametok != None: + self.type = self.type + " " + nametok[1] + return token - if nametok != None: - self.lexer.push(token) - token = nametok - return token + if nametok != None: + self.lexer.push(token) + token = nametok + return token - elif token[0] == "name" and token[1] == "enum": - if self.type == "": - self.type = token[1] - else: - self.type = self.type + " " + token[1] - self.enums = [] - token = self.token() - if token != None and token[0] == "sep" and token[1] == "{": - token = self.token() - token = self.parseEnumBlock(token) - else: - self.error("parsing enum: expecting '{'", token) - enum_type = None - if token != None and token[0] != "name": - self.lexer.push(token) - token = ("name", "enum") - else: - enum_type = token[1] - for enum in self.enums: - self.index_add(enum[0], self.filename, - not self.is_header, "enum", - (enum[1], enum[2], enum_type)) - return token + elif token[0] == "name" and token[1] == "enum": + if self.type == "": + self.type = token[1] + else: + self.type = self.type + " " + token[1] + self.enums = [] + token = self.token() + if token != None and token[0] == "sep" and token[1] == "{": + token = self.token() + token = self.parseEnumBlock(token) + else: + self.error("parsing enum: expecting '{'", token) + enum_type = None + if token != None and token[0] != "name": + self.lexer.push(token) + token = ("name", "enum") + else: + enum_type = token[1] + for enum in self.enums: + self.index_add(enum[0], self.filename, + not self.is_header, "enum", + (enum[1], enum[2], enum_type)) + return token - elif token[0] == "name": - if self.type == "": - self.type = token[1] - else: - self.type = self.type + " " + token[1] - else: - self.error("parsing type %s: expecting a name" % (self.type), - token) - return token - token = self.token() - while token != None and (token[0] == "op" or - token[0] == "name" and token[1] == "const"): - self.type = self.type + " " + token[1] - token = self.token() + elif token[0] == "name": + if self.type == "": + self.type = token[1] + else: + self.type = self.type + " " + token[1] + else: + self.error("parsing type %s: expecting a name" % (self.type), + token) + return token + token = self.token() + while token != None and (token[0] == "op" or + token[0] == "name" and token[1] == "const"): + self.type = self.type + " " + token[1] + token = self.token() # # if there is a parenthesis here, this means a function type # - if token != None and token[0] == "sep" and token[1] == '(': - self.type = self.type + token[1] - token = self.token() - while token != None and token[0] == "op" and token[1] == '*': - self.type = self.type + token[1] - token = self.token() - if token == None or token[0] != "name" : - self.error("parsing function type, name expected", token); - return token - self.type = self.type + token[1] - nametok = token - token = self.token() - if token != None and token[0] == "sep" and token[1] == ')': - self.type = self.type + token[1] - token = self.token() - if token != None and token[0] == "sep" and token[1] == '(': - token = self.token() - type = self.type; - token = self.parseSignature(token); - self.type = type; - else: - self.error("parsing function type, '(' expected", token); - return token - else: - self.error("parsing function type, ')' expected", token); - return token - self.lexer.push(token) - token = nametok - return token + if token != None and token[0] == "sep" and token[1] == '(': + self.type = self.type + token[1] + token = self.token() + while token != None and token[0] == "op" and token[1] == '*': + self.type = self.type + token[1] + token = self.token() + if token == None or token[0] != "name" : + self.error("parsing function type, name expected", token); + return token + self.type = self.type + token[1] + nametok = token + token = self.token() + if token != None and token[0] == "sep" and token[1] == ')': + self.type = self.type + token[1] + token = self.token() + if token != None and token[0] == "sep" and token[1] == '(': + token = self.token() + type = self.type; + token = self.parseSignature(token); + self.type = type; + else: + self.error("parsing function type, '(' expected", token); + return token + else: + self.error("parsing function type, ')' expected", token); + return token + self.lexer.push(token) + token = nametok + return token # # do some lookahead for arrays # - if token != None and token[0] == "name": - nametok = token - token = self.token() - if token != None and token[0] == "sep" and token[1] == '[': - self.type = self.type + nametok[1] - while token != None and token[0] == "sep" and token[1] == '[': - self.type = self.type + token[1] - token = self.token() - while token != None and token[0] != 'sep' and \ - token[1] != ']' and token[1] != ';': - self.type = self.type + token[1] - token = self.token() - if token != None and token[0] == 'sep' and token[1] == ']': - self.type = self.type + token[1] - token = self.token() - else: - self.error("parsing array type, ']' expected", token); - return token - elif token != None and token[0] == "sep" and token[1] == ':': + if token != None and token[0] == "name": + nametok = token + token = self.token() + if token != None and token[0] == "sep" and token[1] == '[': + self.type = self.type + nametok[1] + while token != None and token[0] == "sep" and token[1] == '[': + self.type = self.type + token[1] + token = self.token() + while token != None and token[0] != 'sep' and \ + token[1] != ']' and token[1] != ';': + self.type = self.type + token[1] + token = self.token() + if token != None and token[0] == 'sep' and token[1] == ']': + self.type = self.type + token[1] + token = self.token() + else: + self.error("parsing array type, ']' expected", token); + return token + elif token != None and token[0] == "sep" and token[1] == ':': # remove :12 in case it's a limited int size - token = self.token() - token = self.token() - self.lexer.push(token) - token = nametok + token = self.token() + token = self.token() + self.lexer.push(token) + token = nametok - return token + return token # # Parse a signature: '(' has been parsed and we scan the type definition # up to the ')' included - def parseSignature(self, token): - signature = [] - if token != None and token[0] == "sep" and token[1] == ')': - self.signature = [] - token = self.token() - return token - while token != None: - token = self.parseType(token) - if token != None and token[0] == "name": - signature.append((self.type, token[1], None)) - token = self.token() - elif token != None and token[0] == "sep" and token[1] == ',': - token = self.token() - continue - elif token != None and token[0] == "sep" and token[1] == ')': + def parseSignature(self, token): + signature = [] + if token != None and token[0] == "sep" and token[1] == ')': + self.signature = [] + token = self.token() + return token + while token != None: + token = self.parseType(token) + if token != None and token[0] == "name": + signature.append((self.type, token[1], None)) + token = self.token() + elif token != None and token[0] == "sep" and token[1] == ',': + token = self.token() + continue + elif token != None and token[0] == "sep" and token[1] == ')': # only the type was provided - if self.type == "...": - signature.append((self.type, "...", None)) - else: - signature.append((self.type, None, None)) - if token != None and token[0] == "sep": - if token[1] == ',': - token = self.token() - continue - elif token[1] == ')': - token = self.token() - break - self.signature = signature - return token + if self.type == "...": + signature.append((self.type, "...", None)) + else: + signature.append((self.type, None, None)) + if token != None and token[0] == "sep": + if token[1] == ',': + token = self.token() + continue + elif token[1] == ')': + token = self.token() + break + self.signature = signature + return token # # Parse a global definition, be it a type, variable or function # the extern "C" blocks are a bit nasty and require it to recurse. # - def parseGlobal(self, token): - static = 0 - if token[1] == 'extern': - token = self.token() - if token == None: - return token - if token[0] == 'string': - if token[1] == 'C': - token = self.token() - if token == None: - return token - if token[0] == 'sep' and token[1] == "{": - token = self.token() + def parseGlobal(self, token): + static = 0 + if token[1] == 'extern': + token = self.token() + if token == None: + return token + if token[0] == 'string': + if token[1] == 'C': + token = self.token() + if token == None: + return token + if token[0] == 'sep' and token[1] == "{": + token = self.token() # print 'Entering extern "C line ', self.lineno() - while token != None and (token[0] != 'sep' or - token[1] != "}"): - if token[0] == 'name': - token = self.parseGlobal(token) - else: - self.error( + while token != None and (token[0] != 'sep' or + token[1] != "}"): + if token[0] == 'name': + token = self.parseGlobal(token) + else: + self.error( "token %s %s unexpected at the top level" % ( token[0], token[1])) - token = self.parseGlobal(token) + token = self.parseGlobal(token) # print 'Exiting extern "C" line', self.lineno() - token = self.token() - return token - else: - return token - elif token[1] == 'static': - static = 1 - token = self.token() - if token == None or token[0] != 'name': - return token + token = self.token() + return token + else: + return token + elif token[1] == 'static': + static = 1 + token = self.token() + if token == None or token[0] != 'name': + return token - if token[1] == 'typedef': - token = self.token() - return self.parseTypedef(token) - else: - token = self.parseType(token) - type_orig = self.type - if token == None or token[0] != "name": - return token - type = type_orig - self.name = token[1] - token = self.token() - while token != None and (token[0] == "sep" or token[0] == "op"): - if token[0] == "sep": - if token[1] == "[": - type = type + token[1] - token = self.token() - while token != None and (token[0] != "sep" or \ - token[1] != ";"): - type = type + token[1] - token = self.token() + if token[1] == 'typedef': + token = self.token() + return self.parseTypedef(token) + else: + token = self.parseType(token) + type_orig = self.type + if token == None or token[0] != "name": + return token + type = type_orig + self.name = token[1] + token = self.token() + while token != None and (token[0] == "sep" or token[0] == "op"): + if token[0] == "sep": + if token[1] == "[": + type = type + token[1] + token = self.token() + while token != None and (token[0] != "sep" or \ + token[1] != ";"): + type = type + token[1] + token = self.token() - if token != None and token[0] == "op" and token[1] == "=": + if token != None and token[0] == "op" and token[1] == "=": # # Skip the initialization of the variable # - token = self.token() - if token[0] == 'sep' and token[1] == '{': - token = self.token() - token = self.parseBlock(token) - else: - self.comment = None - while token != None and (token[0] != "sep" or \ - (token[1] != ';' and token[1] != ',')): - token = self.token() - self.comment = None - if token == None or token[0] != "sep" or (token[1] != ';' and - token[1] != ','): - self.error("missing ';' or ',' after value") + token = self.token() + if token[0] == 'sep' and token[1] == '{': + token = self.token() + token = self.parseBlock(token) + else: + self.comment = None + while token != None and (token[0] != "sep" or \ + (token[1] != ';' and token[1] != ',')): + token = self.token() + self.comment = None + if token == None or token[0] != "sep" or (token[1] != ';' and + token[1] != ','): + self.error("missing ';' or ',' after value") - if token != None and token[0] == "sep": - if token[1] == ";": - self.comment = None - token = self.token() - if type == "struct": - self.index_add(self.name, self.filename, - not self.is_header, "struct", self.struct_fields) - else: - self.index_add(self.name, self.filename, - not self.is_header, "variable", type) - break - elif token[1] == "(": - token = self.token() - token = self.parseSignature(token) - if token == None: - return None - if token[0] == "sep" and token[1] == ";": - d = self.mergeFunctionComment(self.name, - ((type, None), self.signature), 1) - self.index_add(self.name, self.filename, static, + if token != None and token[0] == "sep": + if token[1] == ";": + self.comment = None + token = self.token() + if type == "struct": + self.index_add(self.name, self.filename, + not self.is_header, "struct", self.struct_fields) + else: + self.index_add(self.name, self.filename, + not self.is_header, "variable", type) + break + elif token[1] == "(": + token = self.token() + token = self.parseSignature(token) + if token == None: + return None + if token[0] == "sep" and token[1] == ";": + d = self.mergeFunctionComment(self.name, + ((type, None), self.signature), 1) + self.index_add(self.name, self.filename, static, "function", d) - token = self.token() - elif token[0] == "sep" and token[1] == "{": - d = self.mergeFunctionComment(self.name, - ((type, None), self.signature), static) - self.index_add(self.name, self.filename, static, + token = self.token() + elif token[0] == "sep" and token[1] == "{": + d = self.mergeFunctionComment(self.name, + ((type, None), self.signature), static) + self.index_add(self.name, self.filename, static, "function", d) - token = self.token() - token = self.parseBlock(token); - elif token[1] == ',': - self.comment = None - self.index_add(self.name, self.filename, static, + token = self.token() + token = self.parseBlock(token); + elif token[1] == ',': + self.comment = None + self.index_add(self.name, self.filename, static, "variable", type) - type = type_orig - token = self.token() - while token != None and token[0] == "sep": - type = type + token[1] - token = self.token() - if token != None and token[0] == "name": - self.name = token[1] - token = self.token() - else: - break + type = type_orig + token = self.token() + while token != None and token[0] == "sep": + type = type + token[1] + token = self.token() + if token != None and token[0] == "name": + self.name = token[1] + token = self.token() + else: + break - return token + return token - def parse(self): - print "Parsing %s" % (self.filename) - token = self.token() - while token != None: - if token[0] == 'name': - token = self.parseGlobal(token) - else: - self.error("token %s %s unexpected at the top level" % ( - token[0], token[1])) - token = self.parseGlobal(token) - return - return self.index + def parse(self): + print "Parsing %s" % (self.filename) + token = self.token() + while token != None: + if token[0] == 'name': + token = self.parseGlobal(token) + else: + self.error("token %s %s unexpected at the top level" % ( + token[0], token[1])) + token = self.parseGlobal(token) + return + self.parseTopComment(self.top_comment) + return self.index class docBuilder: @@ -1558,6 +1588,20 @@ class docBuilder: module = self.modulename_file(file) output.write(" \n" % (module)) dict = self.headers[file] + if dict.info != None: + for data in ('Summary', 'Description', 'Author'): + try: + output.write(" <%s>%s\n" % ( + string.lower(data), + escape(dict.info[data]), + string.lower(data))) + except: + print "Header %s lacks a %s description" % (module, data) + if dict.info.has_key('Description'): + desc = dict.info['Description'] + if string.find(desc, "DEPRECATED") != -1: + output.write(" \n") + ids = dict.functions.keys() + dict.variables.keys() + \ dict.macros.keys() + dict.typedefs.keys() + \ dict.structs.keys() + dict.enums.keys() diff --git a/doc/html/book1.html b/doc/html/book1.html new file mode 100644 index 00000000..d3ffae24 --- /dev/null +++ b/doc/html/book1.html @@ -0,0 +1,13 @@ + + +Reference Manual for libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Reference Manual for libxml2

API Menu
API Indexes
Related links

Table of Contents

  • DOCBparser: old DocBook SGML parser
  • HTMLparser: interface for an HTML 4.0 non-verifying parser
  • HTMLtree: specific APIs to process HTML tree, especially serialization
  • SAX: Old SAX version 1 handler, deprecated
  • SAX2: SAX2 parser interface used to build the DOM tree
  • c14n: Provide Canonical XML and Exclusive XML Canonicalization
  • catalog: interfaces to the Catalog handling system
  • chvalid: Unicode character range checking
  • debugXML: Tree debugging APIs
  • dict: string dictionnary
  • encoding: interface for the encoding conversion functions
  • entities: interface for the XML entities handling
  • globals: interface for all global variables of the library
  • hash: chained hash tables
  • list: lists interfaces
  • nanoftp: minimal FTP implementation
  • nanohttp: minimal HTTP implementation
  • parser: the core parser module
  • parserInternals: internals routines exported by the parser.
  • relaxng: implementation of the Relax-NG validation
  • schemasInternals: internal interfaces for XML Schemas
  • threads: interfaces for thread handling
  • tree: interfaces for tree manipulation
  • uri: library of generic URI related routines
  • valid: The DTD validation
  • xinclude: implementation of XInclude
  • xlink: unfinished XLink detection module
  • xmlIO: interface for the I/O interfaces used by the parser
  • xmlautomata: API to build regexp automata
  • xmlerror: error handling
  • xmlexports: macros for marking symbols as exportable/importable.
  • xmlmemory: interface for the memory allocator
  • xmlreader: the XMLReader implementation
  • xmlregexp: regular expressions handling
  • xmlschemas: incomplete XML Schemas structure implementation
  • xmlschemastypes: implementation of XML Schema Datatypes
  • xmlunicode: Unicode character APIs
  • xmlversion: compile-time version informations
  • xmlwriter: text writing API for XML
  • xpath: XML Path Language implementation
  • xpathInternals: internal interfaces for XML Path Language implementation
  • xpointer: API to handle XML Pointers

Daniel Veillard

diff --git a/doc/html/index.html b/doc/html/index.html index 33cc6a79..d3ffae24 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -8,5 +8,6 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Reference Manual for libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Reference Manual for libxml2

API Menu
API Indexes
Related links

Table of Contents

Daniel Veillard

+ Reference Manual for libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Reference Manual for libxml2

API Menu
API Indexes
Related links

Table of Contents

  • DOCBparser: old DocBook SGML parser
  • HTMLparser: interface for an HTML 4.0 non-verifying parser
  • HTMLtree: specific APIs to process HTML tree, especially serialization
  • SAX: Old SAX version 1 handler, deprecated
  • SAX2: SAX2 parser interface used to build the DOM tree
  • c14n: Provide Canonical XML and Exclusive XML Canonicalization
  • catalog: interfaces to the Catalog handling system
  • chvalid: Unicode character range checking
  • debugXML: Tree debugging APIs
  • dict: string dictionnary
  • encoding: interface for the encoding conversion functions
  • entities: interface for the XML entities handling
  • globals: interface for all global variables of the library
  • hash: chained hash tables
  • list: lists interfaces
  • nanoftp: minimal FTP implementation
  • nanohttp: minimal HTTP implementation
  • parser: the core parser module
  • parserInternals: internals routines exported by the parser.
  • relaxng: implementation of the Relax-NG validation
  • schemasInternals: internal interfaces for XML Schemas
  • threads: interfaces for thread handling
  • tree: interfaces for tree manipulation
  • uri: library of generic URI related routines
  • valid: The DTD validation
  • xinclude: implementation of XInclude
  • xlink: unfinished XLink detection module
  • xmlIO: interface for the I/O interfaces used by the parser
  • xmlautomata: API to build regexp automata
  • xmlerror: error handling
  • xmlexports: macros for marking symbols as exportable/importable.
  • xmlmemory: interface for the memory allocator
  • xmlreader: the XMLReader implementation
  • xmlregexp: regular expressions handling
  • xmlschemas: incomplete XML Schemas structure implementation
  • xmlschemastypes: implementation of XML Schema Datatypes
  • xmlunicode: Unicode character APIs
  • xmlversion: compile-time version informations
  • xmlwriter: text writing API for XML
  • xpath: XML Path Language implementation
  • xpathInternals: internal interfaces for XML Path Language implementation
  • xpointer: API to handle XML Pointers

Daniel Veillard

diff --git a/doc/html/libxml-DOCBparser.html b/doc/html/libxml-DOCBparser.html index 37f75086..62bd7bbb 100644 --- a/doc/html/libxml-DOCBparser.html +++ b/doc/html/libxml-DOCBparser.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module DOCBparser from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module DOCBparser from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	docbFreeParserCtxt	(docbParserCtxtPtr ctxt)
+ Module DOCBparser from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module DOCBparser from libxml2

API Menu
API Indexes
Related links

This module is deprecated

interface for a DocBook SGML non-verifying parser This code is DEPRECATED, and should not be used anymore.

Table of Contents

void	docbFreeParserCtxt	(docbParserCtxtPtr ctxt)
docbDocPtr	docbParseDoc	(xmlChar * cur, 
const char * encoding)
Typedef xmlDocPtr docbDocPtr
 
@@ -54,4 +55,4 @@ A:link, A:visited, A:active { text-decoration: underline }
 

parse an SGML document (and build a tree if using the standard SAX interface).

ctxt:an SGML parser context
Returns:0, -1 in case of error. the parser context is augmented as a result of the parsing.

Function: docbParseChunk

int	docbParseChunk	(docbParserCtxtPtr ctxt, 
const char * chunk,
int size,
int terminate)

Parse a Chunk of memory

-
ctxt:an XML parser context
chunk:an char array
size:the size in byte of the chunk
terminate:last chunk indicator
Returns:zero if no error, the xmlParserErrors otherwise.

Daniel Veillard

+
ctxt:an XML parser context
chunk:an char array
size:the size in byte of the chunk
terminate:last chunk indicator
Returns:zero if no error, the xmlParserErrors otherwise.

Daniel Veillard

diff --git a/doc/html/libxml-HTMLparser.html b/doc/html/libxml-HTMLparser.html index fee67dcb..22bc22ac 100644 --- a/doc/html/libxml-HTMLparser.html +++ b/doc/html/libxml-HTMLparser.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module HTMLparser from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module HTMLparser from libxml2

API Menu
API Indexes
Related links

Table of Contents

Typedef xmlParserNodeInfo htmlParserNodeInfo
+    Module HTMLparser from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module HTMLparser from libxml2

API Menu
API Indexes
Related links

this module implements an HTML 4.0 non-verifying parser with API compatible with the XML parser ones. It should be able to parse "real world" HTML, even if severely broken from a specification point of view.

Table of Contents

Typedef xmlParserNodeInfo htmlParserNodeInfo
 
 
int	htmlIsScriptAttribute	(const xmlChar * name)
int	htmlHandleOmittedElem	(int val)
@@ -94,11 +95,11 @@ A:link, A:visited, A:active { text-decoration: underline } char saveEndTag : Whether the end tag should be saved char empty : Is this an empty element ? char depr : Is this a deprecated element ? - char dtd : 1: only in Loose DTD, 2: only Frameset one + char dtd : 1: only in Loose DTD, 2: only Frameset char isinline : is this a block 0 or inline 1 element - const char * desc : the description NRK Jan.2003 * New fields encapsu + const char * desc : the description NRK Jan.2003 * New fiel const char ** subelts : allowed sub-elements of this element - const char * defaultsubelt : subelement for suggested auto-repair if necessary + const char * defaultsubelt : subelement for suggested auto-repair if const char ** attrs_opt : Optional Attributes const char ** attrs_depr : Additional deprecated attributes const char ** attrs_req : Required attributes @@ -206,4 +207,4 @@ A:link, A:visited, A:active { text-decoration: underline }

parse an HTML in-memory document and build a tree.

cur:a pointer to an array of xmlChar
encoding:a free form C string describing the HTML document encoding, or NULL
Returns:the resulting document tree

Function: htmlParseDocument

int	htmlParseDocument	(htmlParserCtxtPtr ctxt)

parse an HTML document (and build a tree if using the standard SAX interface).

-
ctxt:an HTML parser context
Returns:0, -1 in case of error. the parser context is augmented as a result of the parsing.

Daniel Veillard

+
ctxt:an HTML parser context
Returns:0, -1 in case of error. the parser context is augmented as a result of the parsing.

Daniel Veillard

diff --git a/doc/html/libxml-HTMLtree.html b/doc/html/libxml-HTMLtree.html index fa1c58ad..b3400f07 100644 --- a/doc/html/libxml-HTMLtree.html +++ b/doc/html/libxml-HTMLtree.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module HTMLtree from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module HTMLtree from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	htmlDocDumpMemory	(xmlDocPtr cur, 
xmlChar ** mem,
int * size)
+ Module HTMLtree from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module HTMLtree from libxml2

API Menu
API Indexes
Related links

this module implements a few function needed to process tree in an HTML specific way.

Table of Contents

void	htmlDocDumpMemory	(xmlDocPtr cur, 
xmlChar ** mem,
int * size)
int	htmlSaveFile	(const char * filename, 
xmlDocPtr cur)
#define HTML_TEXT_NODE
 
@@ -76,4 +77,4 @@ A:link, A:visited, A:active { text-decoration: underline }
 

Dump an HTML document to a file using a given encoding.

filename:the filename
cur:the document
encoding:the document encoding
format:should formatting spaces been added
Returns:the number of byte written or -1 in case of failure.

Function: htmlDocContentDumpOutput

void	htmlDocContentDumpOutput	(xmlOutputBufferPtr buf, 
xmlDocPtr cur,
const char * encoding)

Dump an HTML document. Formating return/spaces are added.

-
buf:the HTML buffer output
cur:the document
encoding:the encoding string

Daniel Veillard

+
buf:the HTML buffer output
cur:the document
encoding:the encoding string

Daniel Veillard

diff --git a/doc/html/libxml-SAX.html b/doc/html/libxml-SAX.html index ff7f9a51..64c7202e 100644 --- a/doc/html/libxml-SAX.html +++ b/doc/html/libxml-SAX.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module SAX from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module SAX from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	cdataBlock	(void * ctx, 
const xmlChar * value,
int len)
+ Module SAX from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module SAX from libxml2

API Menu
API Indexes
Related links

This module is deprecated

DEPRECATED set of SAX version 1 interfaces used to build the DOM tree.

Table of Contents

void	cdataBlock	(void * ctx, 
const xmlChar * value,
int len)
void	comment	(void * ctx, 
const xmlChar * value)
int	checkNamespace	(void * ctx, 
xmlChar * namespace)
void	startElement	(void * ctx, 
const xmlChar * fullname,
const xmlChar ** atts)
@@ -121,4 +122,4 @@ A:link, A:visited, A:active { text-decoration: underline }

called when the document end has been detected. DEPRECATED: use xmlSAX2EndDocument()

ctx:the user data (XML parser context)

Function: getLineNumber

int	getLineNumber	(void * ctx)

Provide the line number of the current parsing point. DEPRECATED: use xmlSAX2GetLineNumber()

-
ctx:the user data (XML parser context)
Returns:an int

Daniel Veillard

+
ctx:the user data (XML parser context)
Returns:an int

Daniel Veillard

diff --git a/doc/html/libxml-SAX2.html b/doc/html/libxml-SAX2.html new file mode 100644 index 00000000..ede7b229 --- /dev/null +++ b/doc/html/libxml-SAX2.html @@ -0,0 +1,143 @@ + + +Module SAX2 from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module SAX2 from libxml2

API Menu
API Indexes
Related links

those are the default SAX2 interfaces used by the library when building DOM tree.

Table of Contents

int	xmlSAX2CheckNamespace	(void * ctx, 
xmlChar * nameSpace)
+
void	xmlSAX2EndElementNs	(void * ctx, 
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI)
+
void	xmlSAX2Reference	(void * ctx, 
const xmlChar * name)
+
xmlNsPtr	xmlSAX2GetNamespace	(void * ctx)
+
void	xmlSAX2ElementDecl	(void * ctx, 
const xmlChar * name,
int type,
xmlElementContentPtr content)
+
void	xmlSAX2NamespaceDecl	(void * ctx, 
const xmlChar * href,
const xmlChar * prefix)
+
void	xmlSAX2AttributeDecl	(void * ctx, 
const xmlChar * elem,
const xmlChar * fullname,
int type,
int def,
const xmlChar * defaultValue,
xmlEnumerationPtr tree)
+
void	xmlSAX2EntityDecl	(void * ctx, 
const xmlChar * name,
int type,
const xmlChar * publicId,
const xmlChar * systemId,
xmlChar * content)
+
int	xmlSAX2GetColumnNumber	(void * ctx)
+
xmlEntityPtr	xmlSAX2GetEntity	(void * ctx, 
const xmlChar * name)
+
void	xmlSAX2UnparsedEntityDecl	(void * ctx, 
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId,
const xmlChar * notationName)
+
void	xmlSAX2InitDocbDefaultSAXHandler	(xmlSAXHandler * hdlr)
+
int	xmlSAXVersion	(xmlSAXHandler * hdlr, 
int version)
+
void	xmlSAX2IgnorableWhitespace	(void * ctx, 
const xmlChar * ch,
int len)
+
void	xmlSAX2NotationDecl	(void * ctx, 
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId)
+
void	xmlDefaultSAXHandlerInit	(void)
+
void	xmlSAX2StartDocument	(void * ctx)
+
void	xmlSAX2EndElement	(void * ctx, 
const xmlChar * name)
+
xmlParserInputPtr	xmlSAX2ResolveEntity	(void * ctx, 
const xmlChar * publicId,
const xmlChar * systemId)
+
void	xmlSAX2ExternalSubset	(void * ctx, 
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
+
const xmlChar *	xmlSAX2GetPublicId	(void * ctx)
+
void	xmlSAX2SetNamespace	(void * ctx, 
const xmlChar * name)
+
int	xmlSAX2IsStandalone	(void * ctx)
+
void	xmlSAX2EndDocument	(void * ctx)
+
void	xmlSAX2ProcessingInstruction	(void * ctx, 
const xmlChar * target,
const xmlChar * data)
+
void	xmlSAX2InternalSubset	(void * ctx, 
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
+
void	xmlSAX2Characters	(void * ctx, 
const xmlChar * ch,
int len)
+
void	xmlSAX2Comment	(void * ctx, 
const xmlChar * value)
+
void	xmlSAX2StartElement	(void * ctx, 
const xmlChar * fullname,
const xmlChar ** atts)
+
void	xmlSAX2SetDocumentLocator	(void * ctx, 
xmlSAXLocatorPtr loc)
+
void	xmlSAX2CDataBlock	(void * ctx, 
const xmlChar * value,
int len)
+
void	htmlDefaultSAXHandlerInit	(void)
+
int	xmlSAX2HasExternalSubset	(void * ctx)
+
void	xmlSAX2StartElementNs	(void * ctx, 
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI,
int nb_namespaces,
const xmlChar ** namespaces,
int nb_attributes,
int nb_defaulted,
const xmlChar ** attributes)
+
void	xmlSAX2GlobalNamespace	(void * ctx, 
const xmlChar * href,
const xmlChar * prefix)
+
int	xmlSAX2GetLineNumber	(void * ctx)
+
int	xmlSAX2HasInternalSubset	(void * ctx)
+
void	xmlSAX2InitHtmlDefaultSAXHandler	(xmlSAXHandler * hdlr)
+
void	docbDefaultSAXHandlerInit	(void)
+
int	xmlSAXDefaultVersion	(int version)
+
void	xmlSAX2InitDefaultSAXHandler	(xmlSAXHandler * hdlr, 
int warning)
+
xmlEntityPtr	xmlSAX2GetParameterEntity	(void * ctx, 
const xmlChar * name)
+
const xmlChar *	xmlSAX2GetSystemId	(void * ctx)
+

Description

+

Function: xmlSAX2CheckNamespace

int	xmlSAX2CheckNamespace	(void * ctx, 
xmlChar * nameSpace)
+

+
ctx:
nameSpace:
Returns:

Function: xmlSAX2EndElementNs

void	xmlSAX2EndElementNs	(void * ctx, 
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI)
+

SAX2 callback when an element end has been detected by the parser. It provides the namespace informations for the element.

+
ctx:the user data (XML parser context)
localname:the local name of the element
prefix:the element namespace prefix if available
URI:the element namespace name if available

Function: xmlSAX2Reference

void	xmlSAX2Reference	(void * ctx, 
const xmlChar * name)
+

called when an entity xmlSAX2Reference is detected.

+
ctx:the user data (XML parser context)
name:The entity name

Function: xmlSAX2GetNamespace

xmlNsPtr	xmlSAX2GetNamespace	(void * ctx)
+

+
ctx:
Returns:

Function: xmlSAX2ElementDecl

void	xmlSAX2ElementDecl	(void * ctx, 
const xmlChar * name,
int type,
xmlElementContentPtr content)
+

An element definition has been parsed

+
ctx:the user data (XML parser context)
name:the element name
type:the element type
content:the element value tree

Function: xmlSAX2NamespaceDecl

void	xmlSAX2NamespaceDecl	(void * ctx, 
const xmlChar * href,
const xmlChar * prefix)
+

+
ctx:
href:
prefix:

Function: xmlSAX2AttributeDecl

void	xmlSAX2AttributeDecl	(void * ctx, 
const xmlChar * elem,
const xmlChar * fullname,
int type,
int def,
const xmlChar * defaultValue,
xmlEnumerationPtr tree)
+

An attribute definition has been parsed

+
ctx:the user data (XML parser context)
elem:the name of the element
fullname:the attribute name
type:the attribute type
def:the type of default value
defaultValue:the attribute default value
tree:the tree of enumerated value set

Function: xmlSAX2EntityDecl

void	xmlSAX2EntityDecl	(void * ctx, 
const xmlChar * name,
int type,
const xmlChar * publicId,
const xmlChar * systemId,
xmlChar * content)
+

An entity definition has been parsed

+
ctx:the user data (XML parser context)
name:the entity name
type:the entity type
publicId:The public ID of the entity
systemId:The system ID of the entity
content:the entity value (without processing).

Function: xmlSAX2GetColumnNumber

int	xmlSAX2GetColumnNumber	(void * ctx)
+

Provide the column number of the current parsing point.

+
ctx:the user data (XML parser context)
Returns:an int

Function: xmlSAX2GetEntity

xmlEntityPtr	xmlSAX2GetEntity	(void * ctx, 
const xmlChar * name)
+

Get an entity by name

+
ctx:the user data (XML parser context)
name:The entity name
Returns:the xmlEntityPtr if found.

Function: xmlSAX2UnparsedEntityDecl

void	xmlSAX2UnparsedEntityDecl	(void * ctx, 
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId,
const xmlChar * notationName)
+

What to do when an unparsed entity declaration is parsed

+
ctx:the user data (XML parser context)
name:The name of the entity
publicId:The public ID of the entity
systemId:The system ID of the entity
notationName:the name of the notation

Function: xmlSAX2InitDocbDefaultSAXHandler

void	xmlSAX2InitDocbDefaultSAXHandler	(xmlSAXHandler * hdlr)
+

Initialize the default DocBook SAX2 handler

+
hdlr:the SAX handler

Function: xmlSAXVersion

int	xmlSAXVersion	(xmlSAXHandler * hdlr, 
int version)
+

Initialize the default XML SAX handler according to the version

+
hdlr:the SAX handler
version:the version, 1 or 2
Returns:0 in case of success and -1 in case of error.

Function: xmlSAX2IgnorableWhitespace

void	xmlSAX2IgnorableWhitespace	(void * ctx, 
const xmlChar * ch,
int len)
+

receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use xmlSAX2Characters

+
ctx:the user data (XML parser context)
ch:a xmlChar string
len:the number of xmlChar

Function: xmlSAX2NotationDecl

void	xmlSAX2NotationDecl	(void * ctx, 
const xmlChar * name,
const xmlChar * publicId,
const xmlChar * systemId)
+

What to do when a notation declaration has been parsed.

+
ctx:the user data (XML parser context)
name:The name of the notation
publicId:The public ID of the entity
systemId:The system ID of the entity

Function: xmlDefaultSAXHandlerInit

void	xmlDefaultSAXHandlerInit	(void)
+

Initialize the default SAX2 handler

+

Function: xmlSAX2StartDocument

void	xmlSAX2StartDocument	(void * ctx)
+

called when the document start being processed.

+
ctx:the user data (XML parser context)

Function: xmlSAX2EndElement

void	xmlSAX2EndElement	(void * ctx, 
const xmlChar * name)
+

called when the end of an element has been detected.

+
ctx:the user data (XML parser context)
name:The element name

Function: xmlSAX2ResolveEntity

xmlParserInputPtr	xmlSAX2ResolveEntity	(void * ctx, 
const xmlChar * publicId,
const xmlChar * systemId)
+

The entity loader, to control the loading of external entities, the application can either: - override this xmlSAX2ResolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine

+
ctx:the user data (XML parser context)
publicId:The public ID of the entity
systemId:The system ID of the entity
Returns:the xmlParserInputPtr if inlined or NULL for DOM behaviour.

Function: xmlSAX2ExternalSubset

void	xmlSAX2ExternalSubset	(void * ctx, 
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
+

Callback on external subset declaration.

+
ctx:the user data (XML parser context)
name:the root element name
ExternalID:the external ID
SystemID:the SYSTEM ID (e.g. filename or URL)

Function: xmlSAX2GetPublicId

const xmlChar *	xmlSAX2GetPublicId	(void * ctx)
+

Provides the public ID e.g. "-//SGMLSOURCE//DTD DEMO//EN"

+
ctx:the user data (XML parser context)
Returns:a xmlChar *

Function: xmlSAX2SetNamespace

void	xmlSAX2SetNamespace	(void * ctx, 
const xmlChar * name)
+

+
ctx:
name:

Function: xmlSAX2IsStandalone

int	xmlSAX2IsStandalone	(void * ctx)
+

Is this document tagged standalone ?

+
ctx:the user data (XML parser context)
Returns:1 if true

Function: xmlSAX2EndDocument

void	xmlSAX2EndDocument	(void * ctx)
+

called when the document end has been detected.

+
ctx:the user data (XML parser context)

Function: xmlSAX2ProcessingInstruction

void	xmlSAX2ProcessingInstruction	(void * ctx, 
const xmlChar * target,
const xmlChar * data)
+

A processing instruction has been parsed.

+
ctx:the user data (XML parser context)
target:the target name
data:the PI data's

Function: xmlSAX2InternalSubset

void	xmlSAX2InternalSubset	(void * ctx, 
const xmlChar * name,
const xmlChar * ExternalID,
const xmlChar * SystemID)
+

Callback on internal subset declaration.

+
ctx:the user data (XML parser context)
name:the root element name
ExternalID:the external ID
SystemID:the SYSTEM ID (e.g. filename or URL)

Function: xmlSAX2Characters

void	xmlSAX2Characters	(void * ctx, 
const xmlChar * ch,
int len)
+

receiving some chars from the parser.

+
ctx:the user data (XML parser context)
ch:a xmlChar string
len:the number of xmlChar

Function: xmlSAX2Comment

void	xmlSAX2Comment	(void * ctx, 
const xmlChar * value)
+

A xmlSAX2Comment has been parsed.

+
ctx:the user data (XML parser context)
value:the xmlSAX2Comment content

Function: xmlSAX2StartElement

void	xmlSAX2StartElement	(void * ctx, 
const xmlChar * fullname,
const xmlChar ** atts)
+

called when an opening tag has been processed.

+
ctx:the user data (XML parser context)
fullname:The element name, including namespace prefix
atts:An array of name/value attributes pairs, NULL terminated

Function: xmlSAX2SetDocumentLocator

void	xmlSAX2SetDocumentLocator	(void * ctx, 
xmlSAXLocatorPtr loc)
+

Receive the document locator at startup, actually xmlDefaultSAXLocator Everything is available on the context, so this is useless in our case.

+
ctx:the user data (XML parser context)
loc:A SAX Locator

Function: xmlSAX2CDataBlock

void	xmlSAX2CDataBlock	(void * ctx, 
const xmlChar * value,
int len)
+

called when a pcdata block has been parsed

+
ctx:the user data (XML parser context)
value:The pcdata content
len:the block length

Function: htmlDefaultSAXHandlerInit

void	htmlDefaultSAXHandlerInit	(void)
+

Initialize the default SAX handler

+

Function: xmlSAX2HasExternalSubset

int	xmlSAX2HasExternalSubset	(void * ctx)
+

Does this document has an external subset

+
ctx:the user data (XML parser context)
Returns:1 if true

Function: xmlSAX2StartElementNs

void	xmlSAX2StartElementNs	(void * ctx, 
const xmlChar * localname,
const xmlChar * prefix,
const xmlChar * URI,
int nb_namespaces,
const xmlChar ** namespaces,
int nb_attributes,
int nb_defaulted,
const xmlChar ** attributes)
+

SAX2 callback when an element start has been detected by the parser. It provides the namespace informations for the element, as well as the new namespace declarations on the element.

+
ctx:the user data (XML parser context)
localname:the local name of the element
prefix:the element namespace prefix if available
URI:the element namespace name if available
nb_namespaces:number of namespace definitions on that node
namespaces:pointer to the array of prefix/URI pairs namespace definitions
nb_attributes:the number of attributes on that node
nb_defaulted:the number of defaulted attributes.
attributes:pointer to the array of (localname/prefix/URI/value/end) attribute values.

Function: xmlSAX2GlobalNamespace

void	xmlSAX2GlobalNamespace	(void * ctx, 
const xmlChar * href,
const xmlChar * prefix)
+

+
ctx:
href:
prefix:

Function: xmlSAX2GetLineNumber

int	xmlSAX2GetLineNumber	(void * ctx)
+

Provide the line number of the current parsing point.

+
ctx:the user data (XML parser context)
Returns:an int

Function: xmlSAX2HasInternalSubset

int	xmlSAX2HasInternalSubset	(void * ctx)
+

Does this document has an internal subset

+
ctx:the user data (XML parser context)
Returns:1 if true

Function: xmlSAX2InitHtmlDefaultSAXHandler

void	xmlSAX2InitHtmlDefaultSAXHandler	(xmlSAXHandler * hdlr)
+

Initialize the default HTML SAX2 handler

+
hdlr:the SAX handler

Function: docbDefaultSAXHandlerInit

void	docbDefaultSAXHandlerInit	(void)
+

Initialize the default SAX handler

+

Function: xmlSAXDefaultVersion

int	xmlSAXDefaultVersion	(int version)
+

Set the default version of SAX used globally by the library. Note that this may not be a good thing to do from a library it is better to use xmlSAXVersion() to set up specifically the version for a given parsing context.

+
version:the version, 1 or 2
Returns:the previous value in case of success and -1 in case of error.

Function: xmlSAX2InitDefaultSAXHandler

void	xmlSAX2InitDefaultSAXHandler	(xmlSAXHandler * hdlr, 
int warning)
+

Initialize the default XML SAX2 handler

+
hdlr:the SAX handler
warning:flag if non-zero sets the handler warning procedure

Function: xmlSAX2GetParameterEntity

xmlEntityPtr	xmlSAX2GetParameterEntity	(void * ctx, 
const xmlChar * name)
+

Get a parameter entity by name

+
ctx:the user data (XML parser context)
name:The entity name
Returns:the xmlEntityPtr if found.

Function: xmlSAX2GetSystemId

const xmlChar *	xmlSAX2GetSystemId	(void * ctx)
+

Provides the system ID, basically URL or filename e.g. http://www.sgmlsource.com/dtds/memo.dtd

+
ctx:the user data (XML parser context)
Returns:a xmlChar *

Daniel Veillard

diff --git a/doc/html/libxml-c14n.html b/doc/html/libxml-c14n.html index 8d561f16..ccc44a19 100644 --- a/doc/html/libxml-c14n.html +++ b/doc/html/libxml-c14n.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module c14n from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module c14n from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlC14NExecute	(xmlDocPtr doc, 
xmlC14NIsVisibleCallback is_visible_callback,
void * user_data,
int exclusive,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)
+ Module c14n from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module c14n from libxml2

API Menu
API Indexes
Related links

the c14n modules provides a "Canonical XML" implementation

Table of Contents

int	xmlC14NExecute	(xmlDocPtr doc, 
xmlC14NIsVisibleCallback is_visible_callback,
void * user_data,
int exclusive,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)
int	xmlC14NDocSaveTo	(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int exclusive,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlOutputBufferPtr buf)
Function type: xmlC14NIsVisibleCallback
 int	xmlC14NIsVisibleCallback	(void * user_data, 
xmlNodePtr node,
xmlNodePtr parent) @@ -31,4 +32,4 @@ int xmlC14NIsVisibleCallback (void * user_data,
doc:the XML document for canonization
nodes:the nodes set to be included in the canonized image or NULL if all document nodes should be included
exclusive:the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
filename:the filename to store canonical XML image
compression:the compression level (zlib requred): -1 - libxml default, 0 - uncompressed, >0 - compression level
Returns:the number of bytes written success or a negative value on fail

Function: xmlC14NDocDumpMemory

int	xmlC14NDocDumpMemory	(xmlDocPtr doc, 
xmlNodeSetPtr nodes,
int exclusive,
xmlChar ** inclusive_ns_prefixes,
int with_comments,
xmlChar ** doc_txt_ptr)

Dumps the canonized image of given XML document into memory. For details see "Canonical XML" (http://www.w3.org/TR/xml-c14n) or "Exclusive XML Canonicalization" (http://www.w3.org/TR/xml-exc-c14n)

-
doc:the XML document for canonization
nodes:the nodes set to be included in the canonized image or NULL if all document nodes should be included
exclusive:the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
doc_txt_ptr:the memory pointer for allocated canonical XML text; the caller of this functions is responsible for calling xmlFree() to free allocated memory
Returns:the number of bytes written on success or a negative value on fail

Daniel Veillard

+
doc:the XML document for canonization
nodes:the nodes set to be included in the canonized image or NULL if all document nodes should be included
exclusive:the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)
inclusive_ns_prefixes:the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)
with_comments:include comments in the result (!=0) or not (==0)
doc_txt_ptr:the memory pointer for allocated canonical XML text; the caller of this functions is responsible for calling xmlFree() to free allocated memory
Returns:the number of bytes written on success or a negative value on fail

Daniel Veillard

diff --git a/doc/html/libxml-catalog.html b/doc/html/libxml-catalog.html index 49832033..362e6728 100644 --- a/doc/html/libxml-catalog.html +++ b/doc/html/libxml-catalog.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module catalog from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module catalog from libxml2

API Menu
API Indexes
Related links

Table of Contents

#define XML_CATALOGS_NAMESPACE
+    Module catalog from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module catalog from libxml2

API Menu
API Indexes
Related links

the catalog module implements the support for XML Catalogs and SGML catalogs

Table of Contents

#define XML_CATALOGS_NAMESPACE
 
 
xmlChar *	xmlCatalogLocalResolve	(void * catalogs, 
const xmlChar * pubID,
const xmlChar * sysID)
int	xmlACatalogAdd	(xmlCatalogPtr catal, 
const xmlChar * type,
const xmlChar * orig,
const xmlChar * replace)
@@ -141,4 +142,4 @@ The content of this structure is not made public by the API.

Free up all the memory associated with catalogs

Function: xmlCatalogResolveURI

xmlChar *	xmlCatalogResolveURI	(const xmlChar * URI)

Do a complete resolution lookup of an URI

-
URI:the URI
Returns:the URI of the resource or NULL if not found, it must be freed by the caller.

Daniel Veillard

+
URI:the URI
Returns:the URI of the resource or NULL if not found, it must be freed by the caller.

Daniel Veillard

diff --git a/doc/html/libxml-chvalid.html b/doc/html/libxml-chvalid.html index 9b0736f9..273dfd99 100644 --- a/doc/html/libxml-chvalid.html +++ b/doc/html/libxml-chvalid.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module chvalid from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module chvalid from libxml2

API Menu
API Indexes
Related links

Table of Contents

#define xmlIsPubidChar_ch
+    Module chvalid from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module chvalid from libxml2

API Menu
API Indexes
Related links

this module exports interfaces for the character range validation APIs This file is automatically generated from the cvs source definition files using the genChRanges.py Python script

Table of Contents

#define xmlIsPubidChar_ch
 
 
int	xmlIsBlank	(unsigned int ch)
Structure xmlChLRange
struct _xmlChLRange { @@ -121,4 +122,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Macro: xmlIsBlank_ch

#define xmlIsBlank_ch

Automatically generated by genChRanges.py

Function: xmlIsBaseChar

int	xmlIsBaseChar	(unsigned int ch)

This function is DEPRECATED. Use xmlIsBaseChar_ch or xmlIsBaseCharQ instead

-
ch:character to validate
Returns:true if argument valid, false otherwise

Daniel Veillard

+
ch:character to validate
Returns:true if argument valid, false otherwise

Daniel Veillard

diff --git a/doc/html/libxml-debugXML.html b/doc/html/libxml-debugXML.html index ffc18196..f4aa2ccd 100644 --- a/doc/html/libxml-debugXML.html +++ b/doc/html/libxml-debugXML.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module debugXML from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module debugXML from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlShellWrite	(xmlShellCtxtPtr ctxt, 
char * filename,
xmlNodePtr node,
xmlNodePtr node2)
+ Module debugXML from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module debugXML from libxml2

API Menu
API Indexes
Related links

Interfaces to a set of routines used for debugging the tree produced by the XML parser.

Table of Contents

int	xmlShellWrite	(xmlShellCtxtPtr ctxt, 
char * filename,
xmlNodePtr node,
xmlNodePtr node2)
void	xmlDebugDumpEntities	(FILE * output, 
xmlDocPtr doc)
Structure xmlShellCtxt
struct _xmlShellCtxt { char * filename @@ -126,4 +127,4 @@ int xmlShellCmd (xmlShellCtxtPtr<

Dumps debug information cncerning the document, not recursive

output:the FILE * for the output
doc:the document

Function: xmlShell

void	xmlShell	(xmlDocPtr doc, 
char * filename,
xmlShellReadlineFunc input,
FILE * output)

Implements the XML shell This allow to load, validate, view, modify and save a document using a environment similar to a UNIX commandline.

-
doc:the initial document
filename:the output buffer
input:the line reading function
output:the output FILE*, defaults to stdout if NULL

Daniel Veillard

+
doc:the initial document
filename:the output buffer
input:the line reading function
output:the output FILE*, defaults to stdout if NULL

Daniel Veillard

diff --git a/doc/html/libxml-dict.html b/doc/html/libxml-dict.html index 88f00ef0..04252056 100644 --- a/doc/html/libxml-dict.html +++ b/doc/html/libxml-dict.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module dict from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module dict from libxml2

API Menu
API Indexes
Related links

Table of Contents

const xmlChar *	xmlDictQLookup	(xmlDictPtr dict, 
const xmlChar * prefix,
const xmlChar * name)
+ Module dict from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module dict from libxml2

API Menu
API Indexes
Related links

dictionary of reusable strings, just used to avoid allocation and freeing operations.

Table of Contents

const xmlChar *	xmlDictQLookup	(xmlDictPtr dict, 
const xmlChar * prefix,
const xmlChar * name)
Typedef xmlDict * xmlDictPtr
 
 
int	xmlDictReference	(xmlDictPtr dict)
@@ -35,4 +36,4 @@ The content of this structure is not made public by the API.

Free the hash @dict and its contents. The userdata is deallocated with @f if provided.

dict:the dictionnary

Function: xmlDictOwns

int	xmlDictOwns	(xmlDictPtr dict, 
const xmlChar * str)

check if a string is owned by the disctionary

-
dict:the dictionnary
str:the string
Returns:1 if true, 0 if false and -1 in case of error -1 in case of error

Daniel Veillard

+
dict:the dictionnary
str:the string
Returns:1 if true, 0 if false and -1 in case of error -1 in case of error

Daniel Veillard

diff --git a/doc/html/libxml-encoding.html b/doc/html/libxml-encoding.html index 5ead6586..16ce0633 100644 --- a/doc/html/libxml-encoding.html +++ b/doc/html/libxml-encoding.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module encoding from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module encoding from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlDelEncodingAlias	(const char * alias)
+ Module encoding from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module encoding from libxml2

API Menu
API Indexes
Related links

interface for the encoding conversion functions needed for XML basic encoding and iconv() support. Related specs are rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646] UTF-8 and UTF-16 in Annexes [ISO-8859-1] ISO Latin-1 characters codes. [UNICODE] The Unicode Consortium, "The Unicode Standard -- Worldwide Character Encoding -- Version 1.0", Addison- Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is described in Unicode Technical Report #4. [US-ASCII] Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986.

Table of Contents

int	xmlDelEncodingAlias	(const char * alias)
const char *	xmlGetEncodingAlias	(const char * alias)
int	xmlUTF8Strloc	(const xmlChar * utf, 
const xmlChar * utfchar)
void	xmlCleanupCharEncodingHandlers	(void)
@@ -158,4 +159,4 @@ int xmlCharEncodingOutputFunc (unsigned char * out,
int * outlen,

Guess the encoding of the entity using the first bytes of the entity content accordingly of the non-normative appendix F of the XML-1.0 recommendation.

in:a pointer to the first bytes of the XML entity, must be at least 4 bytes long.
len:pointer to the length of the buffer
Returns:one of the XML_CHAR_ENCODING_... values.

Function: xmlCleanupEncodingAliases

void	xmlCleanupEncodingAliases	(void)

Unregisters all aliases

-

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-entities.html b/doc/html/libxml-entities.html index ea902945..60fca2e9 100644 --- a/doc/html/libxml-entities.html +++ b/doc/html/libxml-entities.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module entities from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module entities from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlEntityPtr	xmlAddDocEntity	(xmlDocPtr doc, 
const xmlChar * name,
int type,
const xmlChar * ExternalID,
const xmlChar * SystemID,
const xmlChar * content)
+ Module entities from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module entities from libxml2

API Menu
API Indexes
Related links

this module provides some of the entity API needed for the parser and applications.

Table of Contents

xmlEntityPtr	xmlAddDocEntity	(xmlDocPtr doc, 
const xmlChar * name,
int type,
const xmlChar * ExternalID,
const xmlChar * SystemID,
const xmlChar * content)
xmlEntityPtr	xmlGetDtdEntity	(xmlDocPtr doc, 
const xmlChar * name)
xmlEntityPtr	xmlAddDtdEntity	(xmlDocPtr doc, 
const xmlChar * name,
int type,
const xmlChar * ExternalID,
const xmlChar * SystemID,
const xmlChar * content)
void	xmlFreeEntitiesTable	(xmlEntitiesTablePtr table)
@@ -71,4 +72,4 @@ The content of this structure is not made public by the API.

Cleanup up the predefined entities table. Deprecated call

Function: xmlCreateEntitiesTable

xmlEntitiesTablePtr	xmlCreateEntitiesTable	(void)

create and initialize an empty entities hash table.

-
Returns:the xmlEntitiesTablePtr just created or NULL in case of error.

Daniel Veillard

+
Returns:the xmlEntitiesTablePtr just created or NULL in case of error.

Daniel Veillard

diff --git a/doc/html/libxml-globals.html b/doc/html/libxml-globals.html index c93a6b65..8b6b608c 100644 --- a/doc/html/libxml-globals.html +++ b/doc/html/libxml-globals.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module globals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module globals from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlThrDefSetStructuredErrorFunc	(void * ctx, 
xmlStructuredErrorFunc handler)
+ Module globals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module globals from libxml2

API Menu
API Indexes
Related links

all the global variables and thread handling for those variables is handled by this module. The bottom of this file is automatically generated by build_glob.py based on the description file global.data

Table of Contents

void	xmlThrDefSetStructuredErrorFunc	(void * ctx, 
xmlStructuredErrorFunc handler)
void	xmlInitializeGlobalState	(xmlGlobalStatePtr gs)
Variable const char * xmlTreeIndentString
 
@@ -214,4 +215,4 @@ void	xmlRegisterNodeFunc	(xmlNodePtr n
 

Function: xmlThrDefLineNumbersDefaultValue

int	xmlThrDefLineNumbersDefaultValue	(int v)

-
v:
Returns:

Daniel Veillard

+
v:
Returns:

Daniel Veillard

diff --git a/doc/html/libxml-hash.html b/doc/html/libxml-hash.html index 1d1ef6c3..9c98bd9c 100644 --- a/doc/html/libxml-hash.html +++ b/doc/html/libxml-hash.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module hash from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module hash from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlHashScanFull	(xmlHashTablePtr table, 
xmlHashScannerFull f,
void * data)
+ Module hash from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module hash from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlHashScanFull	(xmlHashTablePtr table, 
xmlHashScannerFull f,
void * data)
Function type: xmlHashDeallocator
 void	xmlHashDeallocator	(void * payload, 
xmlChar * name)

Callback to free data from a hash.

payload:the data in the hash
name:the name associated

@@ -119,4 +120,4 @@ The content of this structure is not made public by the API.

Find the userdata specified by the (@name, @name2, @name3) tuple and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.

table:the hash table
name:the name of the userdata
name2:a second name of the userdata
name3:a third name of the userdata
f:the deallocator function for removed item (if any)
Returns:0 if the removal succeeded and -1 in case of error or not found.

Function: xmlHashSize

int	xmlHashSize	(xmlHashTablePtr table)

Query the number of elements installed in the hash @table.

-
table:the hash table
Returns:the number of elements in the hash table or -1 in case of error

Daniel Veillard

+
table:the hash table
Returns:the number of elements in the hash table or -1 in case of error

Daniel Veillard

diff --git a/doc/html/libxml-lib.html b/doc/html/libxml-lib.html new file mode 100644 index 00000000..d3ffae24 --- /dev/null +++ b/doc/html/libxml-lib.html @@ -0,0 +1,13 @@ + + +Reference Manual for libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Reference Manual for libxml2

API Menu
API Indexes
Related links

Table of Contents

  • DOCBparser: old DocBook SGML parser
  • HTMLparser: interface for an HTML 4.0 non-verifying parser
  • HTMLtree: specific APIs to process HTML tree, especially serialization
  • SAX: Old SAX version 1 handler, deprecated
  • SAX2: SAX2 parser interface used to build the DOM tree
  • c14n: Provide Canonical XML and Exclusive XML Canonicalization
  • catalog: interfaces to the Catalog handling system
  • chvalid: Unicode character range checking
  • debugXML: Tree debugging APIs
  • dict: string dictionnary
  • encoding: interface for the encoding conversion functions
  • entities: interface for the XML entities handling
  • globals: interface for all global variables of the library
  • hash: chained hash tables
  • list: lists interfaces
  • nanoftp: minimal FTP implementation
  • nanohttp: minimal HTTP implementation
  • parser: the core parser module
  • parserInternals: internals routines exported by the parser.
  • relaxng: implementation of the Relax-NG validation
  • schemasInternals: internal interfaces for XML Schemas
  • threads: interfaces for thread handling
  • tree: interfaces for tree manipulation
  • uri: library of generic URI related routines
  • valid: The DTD validation
  • xinclude: implementation of XInclude
  • xlink: unfinished XLink detection module
  • xmlIO: interface for the I/O interfaces used by the parser
  • xmlautomata: API to build regexp automata
  • xmlerror: error handling
  • xmlexports: macros for marking symbols as exportable/importable.
  • xmlmemory: interface for the memory allocator
  • xmlreader: the XMLReader implementation
  • xmlregexp: regular expressions handling
  • xmlschemas: incomplete XML Schemas structure implementation
  • xmlschemastypes: implementation of XML Schema Datatypes
  • xmlunicode: Unicode character APIs
  • xmlversion: compile-time version informations
  • xmlwriter: text writing API for XML
  • xpath: XML Path Language implementation
  • xpathInternals: internal interfaces for XML Path Language implementation
  • xpointer: API to handle XML Pointers

Daniel Veillard

diff --git a/doc/html/libxml-list.html b/doc/html/libxml-list.html index d18e00e8..a64b7fcd 100644 --- a/doc/html/libxml-list.html +++ b/doc/html/libxml-list.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module list from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module list from libxml2

API Menu
API Indexes
Related links

Table of Contents

Function type: xmlListWalker
+    Module list from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module list from libxml2

API Menu
API Indexes
Related links

this module implement the list support used in various place in the library.

Table of Contents

Function type: xmlListWalker
 int	xmlListWalker	(const void * data, 
const void * user)

Callback function used when walking a list with xmlListWalk().

data:the data found in the list
user:extra user provided data to the walker
Returns:0 to stop walking the list, 1 otherwise.

Typedef xmlLink * xmlLinkPtr
@@ -119,4 +120,4 @@ int	xmlListDataCompare	(const void * data0, 
const void * data1)

Search the list for an existing value of @data

l:a list
data:a search value
Returns:the value associated to @data or NULL in case of error

Function: xmlListMerge

void	xmlListMerge	(xmlListPtr l1, 
xmlListPtr l2)

include all the elements of the second list in the first one and clear the second list

-
l1:the original list
l2:the new list

Daniel Veillard

+
l1:the original list
l2:the new list

Daniel Veillard

diff --git a/doc/html/libxml-nanoftp.html b/doc/html/libxml-nanoftp.html index 185c6d9f..999c9c33 100644 --- a/doc/html/libxml-nanoftp.html +++ b/doc/html/libxml-nanoftp.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module nanoftp from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module nanoftp from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlNanoFTPScanProxy	(const char * URL)
+ Module nanoftp from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module nanoftp from libxml2

API Menu
API Indexes
Related links

minimal FTP implementation allowing to fetch resources like external subset.

Table of Contents

void	xmlNanoFTPScanProxy	(const char * URL)
int	xmlNanoFTPQuit	(void * ctx)
int	xmlNanoFTPClose	(void * ctx)
Function type: ftpDataCallback
@@ -103,4 +104,4 @@ void	ftpListCallback	(void * userData, 
const char * filename,

Cleanup the FTP protocol layer. This cleanup proxy informations.

Function: xmlNanoFTPGetConnection

int	xmlNanoFTPGetConnection	(void * ctx)

Try to open a data connection to the server. Currently only passive mode is supported.

-
ctx:an FTP context
Returns:-1 incase of error, 0 otherwise

Daniel Veillard

+
ctx:an FTP context
Returns:-1 incase of error, 0 otherwise

Daniel Veillard

diff --git a/doc/html/libxml-nanohttp.html b/doc/html/libxml-nanohttp.html index 78616e54..190b2144 100644 --- a/doc/html/libxml-nanohttp.html +++ b/doc/html/libxml-nanohttp.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module nanohttp from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module nanohttp from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlNanoHTTPSave	(void * ctxt, 
const char * filename)
+ Module nanohttp from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module nanohttp from libxml2

API Menu
API Indexes
Related links

minimal HTTP implementation allowing to fetch resources like external subset.

Table of Contents

int	xmlNanoHTTPSave	(void * ctxt, 
const char * filename)
const char *	xmlNanoHTTPRedir	(void * ctx)
const char *	xmlNanoHTTPAuthHeader	(void * ctx)
int	xmlNanoHTTPFetch	(const char * URL, 
const char * filename,
char ** contentType)
@@ -58,4 +59,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Provides the specified encoding if specified in the HTTP headers.

ctx:the HTTP context
Returns:the specified encoding or NULL if not available

Function: xmlNanoHTTPReturnCode

int	xmlNanoHTTPReturnCode	(void * ctx)

Get the latest HTTP return code received

-
ctx:the HTTP context
Returns:the HTTP return code for the request.

Daniel Veillard

+
ctx:the HTTP context
Returns:the HTTP return code for the request.

Daniel Veillard

diff --git a/doc/html/libxml-parser.html b/doc/html/libxml-parser.html index ad58b52a..b519a2af 100644 --- a/doc/html/libxml-parser.html +++ b/doc/html/libxml-parser.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module parser from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module parser from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlSetupParserForBuffer	(xmlParserCtxtPtr ctxt, 
const xmlChar * buffer,
const char * filename)
+ Module parser from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module parser from libxml2

API Menu
API Indexes
Related links

Interfaces, constants and types related to the XML parser

Table of Contents

void	xmlSetupParserForBuffer	(xmlParserCtxtPtr ctxt, 
const xmlChar * buffer,
const char * filename)
xmlDocPtr	xmlCtxtReadFile	(xmlParserCtxtPtr ctxt, 
const char * filename,
const char * encoding,
int options)
int	xmlStrcmp	(const xmlChar * str1, 
const xmlChar * str2)
xmlDocPtr	xmlParseMemory	(const char * buffer, 
int size)
@@ -114,7 +115,7 @@ void xmlParserInputDeallocate (xmlChar *
const xmlParserNodeInfo *	xmlParserFindNodeInfo	(const xmlParserCtxtPtr ctx, 
const xmlNodePtr node)
int	xmlGetFeature	(xmlParserCtxtPtr ctxt, 
const char * name,
void * result)
Structure xmlParserNodeInfo
struct _xmlParserNodeInfo { - const struct _xmlNode * node : Position & line # that text that created the node + const struct _xmlNode * node : Position & line # that text that create unsigned long begin_pos unsigned long begin_line unsigned long end_pos @@ -696,4 +697,4 @@ void warningSAXFunc (void * ctx,
const char * msg,
... ...

Function: xmlSetExternalEntityLoader

void	xmlSetExternalEntityLoader	(xmlExternalEntityLoader f)

Changes the defaultexternal entity resolver function for the application

-
f:the new entity resolver function

Daniel Veillard

+
f:the new entity resolver function

Daniel Veillard

diff --git a/doc/html/libxml-parserInternals.html b/doc/html/libxml-parserInternals.html index 724cdfb7..5d57d769 100644 --- a/doc/html/libxml-parserInternals.html +++ b/doc/html/libxml-parserInternals.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module parserInternals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module parserInternals from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlChar *	xmlParseAttValue	(xmlParserCtxtPtr ctxt)
+ Module parserInternals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module parserInternals from libxml2

API Menu
API Indexes
Related links

this module exports a number of internal parsing routines they are not really all intended for applications but can prove useful doing low level processing.

Table of Contents

xmlChar *	xmlParseAttValue	(xmlParserCtxtPtr ctxt)
xmlParserCtxtPtr	xmlCreateMemoryParserCtxt	(const char * buffer, 
int size)
void	xmlParseAttributeListDecl	(xmlParserCtxtPtr ctxt)
xmlNodePtr	nodePop	(xmlParserCtxtPtr ctxt)
@@ -375,4 +376,4 @@ void xmlEntityReferenceFunc (xmlEntityPt

Macro: IS_CHAR_CH

#define IS_CHAR_CH

Behaves like IS_CHAR on single-byte value

Function: xmlParseEntityDecl

void	xmlParseEntityDecl	(xmlParserCtxtPtr ctxt)

parse <!ENTITY declarations [70] EntityDecl ::= GEDecl | PEDecl [71] GEDecl ::= '<!ENTITY' S Name S EntityDef S? '>' [72] PEDecl ::= '<!ENTITY' S '%' S Name S PEDef S? '>' [73] EntityDef ::= EntityValue | (ExternalID NDataDecl?) [74] PEDef ::= EntityValue | ExternalID [76] NDataDecl ::= S 'NDATA' S Name [ VC: Notation Declared ] The Name must match the declared name of a notation.

-
ctxt:an XML parser context

Daniel Veillard

+
ctxt:an XML parser context

Daniel Veillard

diff --git a/doc/html/libxml-relaxng.html b/doc/html/libxml-relaxng.html index eb6a8896..5373508d 100644 --- a/doc/html/libxml-relaxng.html +++ b/doc/html/libxml-relaxng.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module relaxng from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module relaxng from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlRelaxNGFreeValidCtxt	(xmlRelaxNGValidCtxtPtr ctxt)
+ Module relaxng from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module relaxng from libxml2

API Menu
API Indexes
Related links

implementation of the Relax-NG validation

Table of Contents

void	xmlRelaxNGFreeValidCtxt	(xmlRelaxNGValidCtxtPtr ctxt)
void	xmlRelaxNGSetValidErrors	(xmlRelaxNGValidCtxtPtr ctxt, 
xmlRelaxNGValidityErrorFunc err,
xmlRelaxNGValidityWarningFunc warn,
void * ctx)
void	xmlRelaxNGSetParserErrors	(xmlRelaxNGParserCtxtPtr ctxt, 
xmlRelaxNGValidityErrorFunc err,
xmlRelaxNGValidityWarningFunc warn,
void * ctx)
xmlRelaxNGParserCtxtPtr	xmlRelaxNGNewMemParserCtxt	(const char * buffer, 
int size)
@@ -143,4 +144,4 @@ void xmlRelaxNGValidityWarningFunc (void * ctx,
const char * msg,
Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-schemasInternals.html b/doc/html/libxml-schemasInternals.html index a4dbcbf4..cac4c052 100644 --- a/doc/html/libxml-schemasInternals.html +++ b/doc/html/libxml-schemasInternals.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module schemasInternals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module schemasInternals from libxml2

API Menu
API Indexes
Related links

Table of Contents

Typedef xmlSchemaNotation * xmlSchemaNotationPtr
+    Module schemasInternals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module schemasInternals from libxml2

API Menu
API Indexes
Related links

internal interfaces for the XML Schemas handling and schema validity checking

Table of Contents

Typedef xmlSchemaNotation * xmlSchemaNotationPtr
 
 
Typedef xmlSchemaAttributeGroup * xmlSchemaAttributeGroupPtr
 
@@ -302,4 +303,4 @@ The content of this structure is not made public by the API.
     

Macro: XML_SCHEMAS_ELEM_REF

#define XML_SCHEMAS_ELEM_REF

the element is a reference to a type

Macro: XML_SCHEMAS_ELEM_DEFAULT

#define XML_SCHEMAS_ELEM_DEFAULT

the element has a default value

Macro: XML_SCHEMAS_FACET_REPLACE

#define XML_SCHEMAS_FACET_REPLACE

replace the type of the facet

-

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-threads.html b/doc/html/libxml-threads.html index b405a01f..701c82cc 100644 --- a/doc/html/libxml-threads.html +++ b/doc/html/libxml-threads.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module threads from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module threads from libxml2

API Menu
API Indexes
Related links

Table of Contents

Typedef xmlRMutex * xmlRMutexPtr
+    Module threads from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module threads from libxml2

API Menu
API Indexes
Related links

set of generic threading related routines should work with pthreads, Windows native or TLS threads

Table of Contents

Typedef xmlRMutex * xmlRMutexPtr
 
 
void	xmlFreeRMutex	(xmlRMutexPtr tok)
int	xmlGetThreadId	(void)
@@ -63,4 +64,4 @@ The content of this structure is not made public by the API.

xmlLockLibrary() is used to take out a re-entrant lock on the libxml2 library.

Function: xmlRMutexLock

void	xmlRMutexLock	(xmlRMutexPtr tok)

xmlRMutexLock() is used to lock a libxml2 token_r.

-
tok:the reentrant mutex

Daniel Veillard

+
tok:the reentrant mutex

Daniel Veillard

diff --git a/doc/html/libxml-tree.html b/doc/html/libxml-tree.html index 5c8c94e6..108e2c3d 100644 --- a/doc/html/libxml-tree.html +++ b/doc/html/libxml-tree.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module tree from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module tree from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlNodePtr	xmlNewDocRawNode	(xmlDocPtr doc, 
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
+ Module tree from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module tree from libxml2

API Menu
API Indexes
Related links

this module describes the structures found in an tree resulting from an XML or HTML parsing, as well as the API provided for various processing on that tree

Table of Contents

xmlNodePtr	xmlNewDocRawNode	(xmlDocPtr doc, 
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
Structure xmlElementContent
struct _xmlElementContent { xmlElementContentType type : PCDATA, ELEMENT, SEQ or OR xmlElementContentOccur ocur : ONCE, OPT, MULT or PLUS @@ -106,7 +107,7 @@ A:link, A:visited, A:active { text-decoration: underline } const xmlChar * value : The ID name xmlAttrPtr attr : The attribute holding it const xmlChar * name : The attribute if attr is not available - int lineno : The line number if attr is not available + int lineno : The line number if attr is not availabl struct _xmlDoc * doc : The document holding the ID }

int	xmlSaveFormatFileTo	(xmlOutputBufferPtr buf, 
xmlDocPtr cur,
const char * encoding,
int format)
xmlDtdPtr	xmlGetIntSubset	(xmlDocPtr doc)
@@ -154,7 +155,7 @@ A:link, A:visited, A:active { text-decoration: underline } const xmlChar * end : end of the array to parse int length : length if known int line : Current line - int col : * NOTE: consumed is only tested for equality in th + int col : * NOTE: consumed is only tested for equa unsigned long consumed : How many xmlChars already consumed xmlParserInputDeallocate free : function to deallocate the base const xmlChar * encoding : the encoding string for entity @@ -171,7 +172,7 @@ A:link, A:visited, A:active { text-decoration: underline } const xmlChar * value : The Ref name xmlAttrPtr attr : The attribute holding it const xmlChar * name : The attribute if attr is not available - int lineno : The line number if attr is not available + int lineno : The line number if attr is not availabl }

int	xmlGetCompressMode	(void)
#define xmlRootNode
 
@@ -274,7 +275,7 @@ A:link, A:visited, A:active { text-decoration: underline }
     getParameterEntitySAXFunc	getParameterEntity
     cdataBlockSAXFunc	cdataBlock
     externalSubsetSAXFunc	externalSubset
-    unsigned int	initialized	: The following fields are extensions available onl
+    unsigned int	initialized	: The following fields are extensions ava
     void *	_private
     startElementNsSAX2Func	startElementNs
     endElementNsSAX2Func	endElementNs
@@ -342,7 +343,7 @@ A:link, A:visited, A:active { text-decoration: underline }
     xmlCharEncodingHandlerPtr	encoder	: I18N conversions to UTF-8
     xmlBufferPtr	buffer	: Local buffer encoded in UTF-8
     xmlBufferPtr	raw	: if encoder != NULL buffer for raw input
-    int	compressed	: -1=unknown, 0=not compressed, 1=compressed
+    int	compressed	: -1=unknown, 0=not compressed, 1=compres
     int	error
 }

xmlNodePtr	xmlDocSetRootElement	(xmlDocPtr doc, 
xmlNodePtr root)
xmlNsPtr	xmlSearchNs	(xmlDocPtr doc, 
xmlNodePtr node,
const xmlChar * nameSpace)
@@ -352,18 +353,18 @@ A:link, A:visited, A:active { text-decoration: underline }
int	xmlRemoveProp	(xmlAttrPtr cur)
Structure xmlParserCtxt
struct _xmlParserCtxt { struct _xmlSAXHandler * sax : The SAX handler - void * userData : For SAX interface only, used by DOM build + void * userData : For SAX interface only, used by DOM bui xmlDocPtr myDoc : the document being built int wellFormed : is the document well formed int replaceEntities : shall we replace entities ? const xmlChar * version : the XML version string const xmlChar * encoding : the declared encoding, if any int standalone : standalone document - int html : an HTML(1)/Docbook(2) document Input stream stack + int html : an HTML(1)/Docbook(2) document Input st xmlParserInputPtr input : Current input stream int inputNr : Number of current input streams int inputMax : Max number of input streams - xmlParserInputPtr * inputTab : stack of inputs Node analysis stack only used for + xmlParserInputPtr * inputTab : stack of inputs Node analysis stack onl xmlNodePtr node : Current parsed Node int nodeNr : Depth of the parsing stack int nodeMax : Max depth of the parsing stack @@ -391,14 +392,14 @@ A:link, A:visited, A:active { text-decoration: underline } int inSubset : Parsing is in int 1/ext 2 subset const xmlChar * intSubName : name of subset xmlChar * extSubURI : URI of external subset - xmlChar * extSubSystem : SYSTEM ID of external subset xml:space values + xmlChar * extSubSystem : SYSTEM ID of external subset xml:space int * space : Should the parser preserve spaces int spaceNr : Depth of the parsing stack int spaceMax : Max depth of the parsing stack int * spaceTab : array of space infos int depth : to prevent entity substitution loops xmlParserInputPtr entity : used to check entities boundaries - int charset : encoding of the in-memory content actually an xml + int charset : encoding of the in-memory content actua int nodelen : Those two fields are there to int nodemem : Speed up large node parsing int pedantic : signal pedantic warnings @@ -414,7 +415,7 @@ A:link, A:visited, A:active { text-decoration: underline } int docdict : * pre-interned strings * const xmlChar * str_xml const xmlChar * str_xmlns - const xmlChar * str_xml_ns : * Everything below is used only by the new SAX mod + const xmlChar * str_xml_ns : * Everything below is used only by the n int sax2 : operating in the new SAX mode int nsNr : the number of inherited namespaces int nsMax : the size of the arrays @@ -424,12 +425,12 @@ A:link, A:visited, A:active { text-decoration: underline } xmlHashTablePtr attsDefault : defaulted attributes if any xmlHashTablePtr attsSpecial : non-CDATA attributes if any int nsWellFormed : is the document XML Nanespace okay - int options : * Those fields are needed only for treaming parsin + int options : * Those fields are needed only for tream int dictNames : Use dictionary names for the tree int freeElemsNr : number of freed element nodes xmlNodePtr freeElems : List of freed element nodes int freeAttrsNr : number of freed attributes nodes - xmlAttrPtr freeAttrs : * the complete error informations for the last err + xmlAttrPtr freeAttrs : * the complete error informations for th xmlError lastError }

xmlNodePtr	xmlNewTextChild	(xmlNodePtr parent, 
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
void	xmlDocDumpFormatMemoryEnc	(xmlDocPtr out_doc, 
xmlChar ** doc_txt_ptr,
int * doc_txt_len,
const char * txt_encoding,
int format)
@@ -502,7 +503,7 @@ A:link, A:visited, A:active { text-decoration: underline } struct _xmlNode * parent : child->parent link struct _xmlNode * next : next sibling link struct _xmlNode * prev : previous sibling link - struct _xmlDoc * doc : the containing document End of common part + struct _xmlDoc * doc : the containing document End of common p xmlNs * ns : pointer to the associated namespace xmlChar * content : the content struct _xmlAttr * properties : properties list @@ -540,7 +541,7 @@ A:link, A:visited, A:active { text-decoration: underline } struct _xmlNode * parent : child->parent link struct _xmlNode * next : next sibling link struct _xmlNode * prev : previous sibling link - struct _xmlDoc * doc : autoreference to itself End of common part + struct _xmlDoc * doc : autoreference to itself End of common p int compression : level of zlib compression int standalone : standalone document (no external refs) struct _xmlDtd * intSubset : the document internal subset @@ -551,7 +552,7 @@ A:link, A:visited, A:active { text-decoration: underline } void * ids : Hash table for ID attributes if any void * refs : Hash table for IDREFs attributes if any const xmlChar * URL : The URI for that document - int charset : encoding of the in-memory content actually an xml + int charset : encoding of the in-memory content actua struct _xmlDict * dict : dict used to allocate names or NULL void * psvi : for type/PSVI informations }

xmlNodePtr	xmlNewDocNode	(xmlDocPtr doc, 
xmlNsPtr ns,
const xmlChar * name,
const xmlChar * content)
@@ -564,7 +565,7 @@ A:link, A:visited, A:active { text-decoration: underline } struct _xmlDoc * parent : child->parent link struct _xmlNode * next : next sibling link struct _xmlNode * prev : previous sibling link - struct _xmlDoc * doc : the containing document End of common part + struct _xmlDoc * doc : the containing document End of common p void * notations : Hash table for notations if any void * elements : Hash table for elements if any void * attributes : Hash table for attributes if any @@ -578,7 +579,7 @@ A:link, A:visited, A:active { text-decoration: underline } xmlOutputWriteCallback writecallback xmlOutputCloseCallback closecallback xmlCharEncodingHandlerPtr encoder : I18N conversions to UTF-8 - xmlBufferPtr buffer : Local buffer encoded in UTF-8 or ISOLatin + xmlBufferPtr buffer : Local buffer encoded in UTF-8 or ISOLat xmlBufferPtr conv : if encoder != NULL buffer for output int written : total number of byte written int error @@ -1207,4 +1208,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Free up all the structures associated to the chained namespaces.

cur:the first namespace pointer

Function: xmlGetLastChild

xmlNodePtr	xmlGetLastChild	(xmlNodePtr parent)

Search the last child of a node.

-
parent:the parent node
Returns:the last child or NULL if none.

Daniel Veillard

+
parent:the parent node
Returns:the last child or NULL if none.

Daniel Veillard

diff --git a/doc/html/libxml-uri.html b/doc/html/libxml-uri.html index 322cb953..51bb59c2 100644 --- a/doc/html/libxml-uri.html +++ b/doc/html/libxml-uri.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module uri from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module uri from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlNormalizeURIPath	(char * path)
+ Module uri from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module uri from libxml2

API Menu
API Indexes
Related links

library of generic URI related routines Implements RFC 2396

Table of Contents

int	xmlNormalizeURIPath	(char * path)
void	xmlPrintURI	(FILE * stream, 
xmlURIPtr uri)
char *	xmlURIUnescapeString	(const char * str, 
int len,
char * target)
xmlURIPtr	xmlParseURI	(const char * str)
@@ -70,4 +71,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Function: xmlBuildURI

xmlChar *	xmlBuildURI	(const xmlChar * URI, 
const xmlChar * base)

Computes he final URI of the reference done by checking that the given URI is valid, and building the final URI using the base URI. This is processed according to section 5.2 of the RFC 2396 5.2. Resolving Relative References to Absolute Form

-
URI:the URI instance found in the document
base:the base value
Returns:a new URI string (to be freed by the caller) or NULL in case of error.

Daniel Veillard

+
URI:the URI instance found in the document
base:the base value
Returns:a new URI string (to be freed by the caller) or NULL in case of error.

Daniel Veillard

diff --git a/doc/html/libxml-valid.html b/doc/html/libxml-valid.html index 74c7142f..1ae64c98 100644 --- a/doc/html/libxml-valid.html +++ b/doc/html/libxml-valid.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module valid from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module valid from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlValidateDocument	(xmlValidCtxtPtr ctxt, 
xmlDocPtr doc)
+ Module valid from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module valid from libxml2

API Menu
API Indexes
Related links

API for the DTD handling and the validity checking

Table of Contents

int	xmlValidateDocument	(xmlValidCtxtPtr ctxt, 
xmlDocPtr doc)
void	xmlFreeNotationTable	(xmlNotationTablePtr table)
Structure xmlNotationTable
struct _xmlHashTable { The content of this structure is not made public by the API. @@ -80,14 +81,14 @@ void xmlValidityWarningFunc (void * ctx,
const char * msg,
Structure xmlValidCtxt
struct _xmlValidCtxt { void * userData : user specific data block xmlValidityErrorFunc error : the callback in case of errors - xmlValidityWarningFunc warning : the callback in case of warning Node analysis sta + xmlValidityWarningFunc warning : the callback in case of warning Node an xmlNodePtr node : Current parsed Node int nodeNr : Depth of the parsing stack int nodeMax : Max depth of the parsing stack xmlNodePtr * nodeTab : array of nodes int finishDtd : finished validating the Dtd ? xmlDocPtr doc : the document - int valid : temporary validity check result state state used + int valid : temporary validity check result state s xmlValidState * vstate : current state int vstateNr : Depth of the validation stack int vstateMax : Max depth of the validation stack @@ -293,4 +294,4 @@ The content of this structure is not made public by the API.

Free an element content structure. This is a recursive call !

cur:the element content tree to free

Function: xmlValidatePushCData

int	xmlValidatePushCData	(xmlValidCtxtPtr ctxt, 
const xmlChar * data,
int len)

check the CData parsed for validation in the current stack

-
ctxt:the validation context
data:some character data read
len:the lenght of the data
Returns:1 if no validation problem was found or 0 otherwise

Daniel Veillard

+
ctxt:the validation context
data:some character data read
len:the lenght of the data
Returns:1 if no validation problem was found or 0 otherwise

Daniel Veillard

diff --git a/doc/html/libxml-xinclude.html b/doc/html/libxml-xinclude.html index 67f935b3..dd7f3a26 100644 --- a/doc/html/libxml-xinclude.html +++ b/doc/html/libxml-xinclude.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xinclude from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xinclude from libxml2

API Menu
API Indexes
Related links

Table of Contents

#define XINCLUDE_PARSE_TEXT
+    Module xinclude from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xinclude from libxml2

API Menu
API Indexes
Related links

API to handle XInclude processing, implements the World Wide Web Consortium Working Draft 26 October 2000

Table of Contents

#define XINCLUDE_PARSE_TEXT
 
 
Structure xmlXIncludeCtxt
struct _xmlXIncludeCtxt { The content of this structure is not made public by the API. @@ -53,4 +54,4 @@ The content of this structure is not made public by the API.

Function: xmlXIncludeNewContext

xmlXIncludeCtxtPtr	xmlXIncludeNewContext	(xmlDocPtr doc)

Creates a new XInclude context

doc:an XML Document
Returns:the new set

Macro: XINCLUDE_PARSE_ENCODING

#define XINCLUDE_PARSE_ENCODING

-

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-xlink.html b/doc/html/libxml-xlink.html new file mode 100644 index 00000000..f2b32c22 --- /dev/null +++ b/doc/html/libxml-xlink.html @@ -0,0 +1,117 @@ + + +Module xlink from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xlink from libxml2

API Menu
API Indexes
Related links

unfinished XLink detection module

Table of Contents

Enum xlinkShow {
+    XLINK_SHOW_NONE = 0
+    XLINK_SHOW_NEW = 1
+    XLINK_SHOW_EMBED = 2
+    XLINK_SHOW_REPLACE = 3
+}
+
+
Typedef xmlChar * xlinkHRef
+
+
void	xlinkSetDefaultHandler	(xlinkHandlerPtr handler)
+
Function type: xlinkExtendedLinkSetFunk
+void	xlinkExtendedLinkSetFunk	(void * ctx, 
xmlNodePtr node,
int nbLocators,
const xlinkHRef * hrefs,
const xlinkRole * roles,
int nbTitles,
const xlinkTitle * titles,
const xmlChar ** langs) +

This is the prototype for a extended link set detection callback.

ctx:user data pointer
node:the node carrying the link
nbLocators:the number of locators detected on the link
hrefs:pointer to the array of locator hrefs
roles:pointer to the array of locator roles
nbTitles:the number of titles detected on the link
titles:
langs:array of xml:lang values for the titles

+
Enum xlinkActuate {
+    XLINK_ACTUATE_NONE = 0
+    XLINK_ACTUATE_AUTO = 1
+    XLINK_ACTUATE_ONREQUEST = 2
+}
+
+
void	xlinkSetDefaultDetect	(xlinkNodeDetectFunc func)
+
xlinkType	xlinkIsLink	(xmlDocPtr doc, 
xmlNodePtr node)
+
xlinkNodeDetectFunc	xlinkGetDefaultDetect	(void)
+
Typedef xmlChar * xlinkTitle
+
+
Typedef xmlChar * xlinkRole
+
+
Function type: xlinkExtendedLinkFunk
+void	xlinkExtendedLinkFunk	(void * ctx, 
xmlNodePtr node,
int nbLocators,
const xlinkHRef * hrefs,
const xlinkRole * roles,
int nbArcs,
const xlinkRole * from,
const xlinkRole * to,
xlinkShow * show,
xlinkActuate * actuate,
int nbTitles,
const xlinkTitle * titles,
const xmlChar ** langs) +

This is the prototype for a extended link detection callback.

ctx:user data pointer
node:the node carrying the link
nbLocators:the number of locators detected on the link
hrefs:pointer to the array of locator hrefs
roles:pointer to the array of locator roles
nbArcs:the number of arcs detected on the link
from:pointer to the array of source roles found on the arcs
to:pointer to the array of target roles found on the arcs
show:array of values for the show attributes found on the arcs
actuate:array of values for the actuate attributes found on the arcs
nbTitles:the number of titles detected on the link
titles:
langs:array of xml:lang values for the titles

+
Structure xlinkHandler
struct _xlinkHandler { + xlinkSimpleLinkFunk simple + xlinkExtendedLinkFunk extended + xlinkExtendedLinkSetFunk set +}

Function type: xlinkNodeDetectFunc
+void	xlinkNodeDetectFunc	(void * ctx, 
xmlNodePtr node) +

This is the prototype for the link detection routine. It calls the default link detection callbacks upon link detection.

ctx:user data pointer
node:the node to check

+
xlinkHandlerPtr	xlinkGetDefaultHandler	(void)
+
Typedef xlinkHandler * xlinkHandlerPtr
+
+
Enum xlinkType {
+    XLINK_TYPE_NONE = 0
+    XLINK_TYPE_SIMPLE = 1
+    XLINK_TYPE_EXTENDED = 2
+    XLINK_TYPE_EXTENDED_SET = 3
+}
+
+
Function type: xlinkSimpleLinkFunk
+void	xlinkSimpleLinkFunk	(void * ctx, 
xmlNodePtr node,
const xlinkHRef href,
const xlinkRole role,
const xlinkTitle title) +

This is the prototype for a simple link detection callback.

ctx:user data pointer
node:the node carrying the link
href:the target of the link
role:the role string
title:the link title

+

Description

+

Function: xlinkSetDefaultHandler

void	xlinkSetDefaultHandler	(xlinkHandlerPtr handler)
+

Set the default xlink handlers

+
handler:the new value for the xlink handler block
+ This is the prototype for a extended link set detection callback. + + + + + + + + + +

Function: xlinkSetDefaultDetect

void	xlinkSetDefaultDetect	(xlinkNodeDetectFunc func)
+

Set the default xlink detection routine

+
func:pointer to the new detection routine.

Function: xlinkIsLink

xlinkType	xlinkIsLink	(xmlDocPtr doc, 
xmlNodePtr node)
+

Check whether the given node carries the attributes needed to be a link element (or is one of the linking elements issued from the (X)HTML DtDs). This routine don't try to do full checking of the link validity but tries to detect and return the appropriate link type.

+
doc:the document containing the node
node:the node pointer itself
Returns:the xlinkType of the node (XLINK_TYPE_NONE if there is no link detected.

Function: xlinkGetDefaultDetect

xlinkNodeDetectFunc	xlinkGetDefaultDetect	(void)
+

Get the default xlink detection routine

+
Returns:the current function or NULL;
+ This is the prototype for a extended link detection callback. + + + + + + + + + + + + + + + + + + + + This is the prototype for the link detection routine. It calls the default link detection callbacks upon link detection. + + + +

Function: xlinkGetDefaultHandler

xlinkHandlerPtr	xlinkGetDefaultHandler	(void)
+

Get the default xlink handler.

+
Returns:the current xlinkHandlerPtr value.
+ This is the prototype for a simple link detection callback. + + + + + + +

Daniel Veillard

diff --git a/doc/html/libxml-xmlIO.html b/doc/html/libxml-xmlIO.html index 09ecbca8..e6e95bd8 100644 --- a/doc/html/libxml-xmlIO.html +++ b/doc/html/libxml-xmlIO.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlIO from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlIO from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlIOHTTPRead	(void * context, 
char * buffer,
int len)
+ Module xmlIO from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlIO from libxml2

API Menu
API Indexes
Related links

interface for the I/O interfaces used by the parser

Table of Contents

int	xmlIOHTTPRead	(void * context, 
char * buffer,
int len)
Function type: xmlInputMatchCallback
 int	xmlInputMatchCallback	(char const * filename)
 

Callback used in the I/O Input API to detect if the current handler can provide input fonctionnalities for this resource.

filename:the filename or URI
Returns:1 if yes and 0 if another Input module should be used

@@ -205,4 +206,4 @@ int xmlInputCloseCallback (void * context)

Open a temporary buffer to collect the document for a subsequent HTTP POST request. Non-static as is called from the output buffer creation routine.

post_uri:The destination URI for the document
compression:The compression desired for the document.
Returns:an I/O context or NULL in case of error.

Function: xmlAllocParserInputBuffer

xmlParserInputBufferPtr	xmlAllocParserInputBuffer	(xmlCharEncoding enc)

Create a buffered parser input for progressive parsing

-
enc:the charset encoding if known
Returns:the new parser input or NULL

Daniel Veillard

+
enc:the charset encoding if known
Returns:the new parser input or NULL

Daniel Veillard

diff --git a/doc/html/libxml-xmlautomata.html b/doc/html/libxml-xmlautomata.html index aae64da3..9340e8b1 100644 --- a/doc/html/libxml-xmlautomata.html +++ b/doc/html/libxml-xmlautomata.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlautomata from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlautomata from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlFreeAutomata	(xmlAutomataPtr am)
+ Module xmlautomata from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlautomata from libxml2

API Menu
API Indexes
Related links

the API to build regexp automata

Table of Contents

void	xmlFreeAutomata	(xmlAutomataPtr am)
int	xmlAutomataNewCounter	(xmlAutomataPtr am, 
int min,
int max)
xmlAutomataStatePtr	xmlAutomataGetInitState	(xmlAutomataPtr am)
xmlAutomataStatePtr	xmlAutomataNewTransition2	(xmlAutomataPtr am, 
xmlAutomataStatePtr from,
xmlAutomataStatePtr to,
const xmlChar * token,
const xmlChar * token2,
void * data)
@@ -66,4 +67,4 @@ The content of this structure is not made public by the API.

If @to is NULL, this create first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token

am:an automata
from:the starting point of the transition
to:the target point of the transition or NULL
token:the input string associated to that transition
data:data passed to the callback function if the transition is activated
Returns:the target state or NULL in case of error

Function: xmlAutomataIsDeterminist

int	xmlAutomataIsDeterminist	(xmlAutomataPtr am)

Checks if an automata is determinist.

-
am:an automata
Returns:1 if true, 0 if not, and -1 in case of error

Daniel Veillard

+
am:an automata
Returns:1 if true, 0 if not, and -1 in case of error

Daniel Veillard

diff --git a/doc/html/libxml-xmlerror.html b/doc/html/libxml-xmlerror.html index 76cd808f..d8e2714e 100644 --- a/doc/html/libxml-xmlerror.html +++ b/doc/html/libxml-xmlerror.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlerror from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlerror from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlParserWarning	(void * ctx, 
const char * msg,
... ...)
+ Module xmlerror from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlerror from libxml2

API Menu
API Indexes
Related links

the API used to report errors

Table of Contents

void	xmlParserWarning	(void * ctx, 
const char * msg,
... ...)
Enum xmlErrorDomain {
     XML_FROM_NONE = 0
     XML_FROM_PARSER = 1 : The XML parser
@@ -45,9 +46,9 @@ void	xmlStructuredErrorFunc	(void * userData, 
void xmlSetGenericErrorFunc (void * ctx,
xmlGenericErrorFunc handler)
void	xmlParserPrintFileContext	(xmlParserInputPtr input)
Structure xmlError
struct _xmlError { - int domain : What part of the library raised this error + int domain : What part of the library raised this er int code : The error code, e.g. an xmlParserError - char * message : human-readable informative error message + char * message : human-readable informative error messag xmlErrorLevel level : how consequent is the error char * file : the filename int line : the line number if available @@ -621,4 +622,4 @@ void xmlGenericErrorFunc (void * ctx,
const char * msg,
.. -

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-xmlexports.html b/doc/html/libxml-xmlexports.html index 5ad44b71..f9576591 100644 --- a/doc/html/libxml-xmlexports.html +++ b/doc/html/libxml-xmlexports.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlexports from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlexports from libxml2

API Menu
API Indexes
Related links

Table of Contents

#define XMLCALL
+    Module xmlexports from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlexports from libxml2

API Menu
API Indexes
Related links

macros for marking symbols as exportable/importable.

Table of Contents

#define XMLCALL
 
 
#define _REENTRANT
 
@@ -25,4 +26,4 @@ A:link, A:visited, A:active { text-decoration: underline }
 

Macro: XMLPUBFUN

#define XMLPUBFUN

Macro: XMLPUBVAR

#define XMLPUBVAR

Macro: LIBXML_DLL_IMPORT

#define LIBXML_DLL_IMPORT

-

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-xmlmemory.html b/doc/html/libxml-xmlmemory.html index c0aece4d..5370ac5c 100644 --- a/doc/html/libxml-xmlmemory.html +++ b/doc/html/libxml-xmlmemory.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlmemory from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlmemory from libxml2

API Menu
API Indexes
Related links

Table of Contents

void *	xmlMemRealloc	(void * ptr, 
size_t size)
+ Module xmlmemory from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlmemory from libxml2

API Menu
API Indexes
Related links

provides interfaces for the memory allocator, including debugging capabilities.

Table of Contents

void *	xmlMemRealloc	(void * ptr, 
size_t size)
void *	xmlReallocLoc	(void * ptr, 
size_t size,
const char * file,
int line)
int	xmlGcMemGet	(xmlFreeFunc * freeFunc, 
xmlMallocFunc * mallocFunc,
xmlMallocFunc * mallocAtomicFunc,
xmlReallocFunc * reallocFunc,
xmlStrdupFunc * strdupFunc)
Function type: xmlStrdupFunc
@@ -101,4 +102,4 @@ void *	xmlMallocFunc	(size_t size)
 

a strdup() equivalent, with logging of the allocation info.

str:the initial string pointer
Returns:a pointer to the new string or NULL if allocation error occurred.

Function: xmlMemStrdupLoc

char *	xmlMemStrdupLoc	(const char * str, 
const char * file,
int line)

a strdup() equivalent, with logging of the allocation info.

-
str:the initial string pointer
file:the file name or NULL
line:the line number
Returns:a pointer to the new string or NULL if allocation error occurred.

Daniel Veillard

+
str:the initial string pointer
file:the file name or NULL
line:the line number
Returns:a pointer to the new string or NULL if allocation error occurred.

Daniel Veillard

diff --git a/doc/html/libxml-xmlreader.html b/doc/html/libxml-xmlreader.html index 98f6719b..8b3f82a6 100644 --- a/doc/html/libxml-xmlreader.html +++ b/doc/html/libxml-xmlreader.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlreader from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlreader from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlChar *	xmlTextReaderBaseUri	(xmlTextReaderPtr reader)
+ Module xmlreader from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlreader from libxml2

API Menu
API Indexes
Related links

API of the XML streaming API based on C# interfaces.

Table of Contents

xmlChar *	xmlTextReaderBaseUri	(xmlTextReaderPtr reader)
xmlTextReaderPtr	xmlNewTextReaderFilename	(const char * URI)
int	xmlTextReaderMoveToAttributeNo	(xmlTextReaderPtr reader, 
int no)
int	xmlTextReaderHasAttributes	(xmlTextReaderPtr reader)
@@ -277,4 +278,4 @@ The content of this structure is not made public by the API.

Whether the node can have a text value.

reader:the xmlTextReaderPtr used
Returns:1 if true, 0 if false, and -1 in case or error

Function: xmlTextReaderConstBaseUri

const xmlChar *	xmlTextReaderConstBaseUri	(xmlTextReaderPtr reader)

The base URI of the node.

-
reader:the xmlTextReaderPtr used
Returns:the base URI or NULL if not available, the string will be deallocated with the reader

Daniel Veillard

+
reader:the xmlTextReaderPtr used
Returns:the base URI or NULL if not available, the string will be deallocated with the reader

Daniel Veillard

diff --git a/doc/html/libxml-xmlregexp.html b/doc/html/libxml-xmlregexp.html index f8ea5963..ce5c477d 100644 --- a/doc/html/libxml-xmlregexp.html +++ b/doc/html/libxml-xmlregexp.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlregexp from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlregexp from libxml2

API Menu
API Indexes
Related links

Table of Contents

void	xmlRegFreeExecCtxt	(xmlRegExecCtxtPtr exec)
+ Module xmlregexp from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlregexp from libxml2

API Menu
API Indexes
Related links

basic API for libxml regular expressions handling used for XML Schemas and validation.

Table of Contents

void	xmlRegFreeExecCtxt	(xmlRegExecCtxtPtr exec)
int	xmlRegexpExec	(xmlRegexpPtr comp, 
const xmlChar * content)
Function type: xmlRegExecCallbacks
 void	xmlRegExecCallbacks	(xmlRegExecCtxtPtr exec, 
const xmlChar * token,
void * transdata,
void * inputdata) @@ -55,4 +56,4 @@ The content of this structure is not made public by the API.

Parses a regular expression conforming to XML Schemas Part 2 Datatype Appendix F and build an automata suitable for testing strings against that regular expression

regexp:a regular expression string
Returns:the compiled expression or NULL in case of error

Function: xmlRegexpPrint

void	xmlRegexpPrint	(FILE * output, 
xmlRegexpPtr regexp)

Print the content of the compiled regular expression

-
output:the file for the output debug
regexp:the compiled regexp

Daniel Veillard

+
output:the file for the output debug
regexp:the compiled regexp

Daniel Veillard

diff --git a/doc/html/libxml-xmlschemas.html b/doc/html/libxml-xmlschemas.html index b0af892b..b3fa4ad1 100644 --- a/doc/html/libxml-xmlschemas.html +++ b/doc/html/libxml-xmlschemas.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlschemas from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlschemas from libxml2

API Menu
API Indexes
Related links

Table of Contents

Structure xmlSchemaParserCtxt
struct _xmlSchemaParserCtxt { + Module xmlschemas from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlschemas from libxml2

API Menu
API Indexes
Related links

interface to the XML Schemas handling and schema validity checking, it is incomplete right now.

Table of Contents

Structure xmlSchemaParserCtxt
struct _xmlSchemaParserCtxt { The content of this structure is not made public by the API. }

xmlSchemaParserCtxtPtr	xmlSchemaNewDocParserCtxt	(xmlDocPtr doc)
void	xmlSchemaFree	(xmlSchemaPtr schema)
@@ -80,7 +81,7 @@ void xmlSchemaValidityWarningFunc (void * ctx,
const char * msg,
xmlHashTablePtr elemDecl xmlHashTablePtr notaDecl xmlHashTablePtr schemasImports - void * _private : unused by the library for users or bindings + void * _private : unused by the library for users or bind xmlHashTablePtr groupDecl }

xmlSchemaValidCtxtPtr	xmlSchemaNewValidCtxt	(xmlSchemaPtr schema)

Description

@@ -138,4 +139,4 @@ void xmlSchemaValidityWarningFunc (void * ctx,
const char * msg,
Function: xmlSchemaNewValidCtxt
xmlSchemaValidCtxtPtr	xmlSchemaNewValidCtxt	(xmlSchemaPtr schema)

Create an XML Schemas validation context based on the given schema

-
schema:a precompiled XML Schemas
Returns:the validation context or NULL in case of error

Daniel Veillard

+
schema:a precompiled XML Schemas
Returns:the validation context or NULL in case of error

Daniel Veillard

diff --git a/doc/html/libxml-xmlschemastypes.html b/doc/html/libxml-xmlschemastypes.html index 90d1b087..0c2c01d2 100644 --- a/doc/html/libxml-xmlschemastypes.html +++ b/doc/html/libxml-xmlschemastypes.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlschemastypes from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlschemastypes from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlSchemaFacetPtr	xmlSchemaNewFacet	(void)
+ Module xmlschemastypes from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlschemastypes from libxml2

API Menu
API Indexes
Related links

module providing the XML Schema Datatypes implementation both definition and validity checking

Table of Contents

xmlSchemaFacetPtr	xmlSchemaNewFacet	(void)
int	xmlSchemaValPredefTypeNode	(xmlSchemaTypePtr type, 
const xmlChar * value,
xmlSchemaValPtr * val,
xmlNodePtr node)
void	xmlSchemaFreeFacet	(xmlSchemaFacetPtr facet)
int	xmlSchemaValidatePredefinedType	(xmlSchemaTypePtr type, 
const xmlChar * value,
xmlSchemaValPtr * val)
@@ -43,4 +44,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Lookup a type in the default XML Schemas type library

name:the type name
ns:the URI of the namespace usually "http://www.w3.org/2001/XMLSchema"
Returns:the type if found, NULL otherwise

Function: xmlSchemaCheckFacet

int	xmlSchemaCheckFacet	(xmlSchemaFacetPtr facet, 
xmlSchemaTypePtr typeDecl,
xmlSchemaParserCtxtPtr ctxt,
const xmlChar * name)

Checks the default values types, especially for facets

-
facet:the facet
typeDecl:the schema type definition
ctxt:the schema parser context or NULL
name:name of the type
Returns:0 if okay or -1 in cae of error

Daniel Veillard

+
facet:the facet
typeDecl:the schema type definition
ctxt:the schema parser context or NULL
name:name of the type
Returns:0 if okay or -1 in cae of error

Daniel Veillard

diff --git a/doc/html/libxml-xmlunicode.html b/doc/html/libxml-xmlunicode.html index 24d9f30a..0a5d87dc 100644 --- a/doc/html/libxml-xmlunicode.html +++ b/doc/html/libxml-xmlunicode.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlunicode from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlunicode from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlUCSIsBlockElements	(int code)
+ Module xmlunicode from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlunicode from libxml2

API Menu
API Indexes
Related links

API for the Unicode character APIs This file is automatically generated from the UCS description files of the Unicode Character Database

Table of Contents

int	xmlUCSIsBlockElements	(int code)
int	xmlUCSIsVariationSelectorsSupplement	(int code)
int	xmlUCSIsTags	(int code)
int	xmlUCSIsEnclosedAlphanumerics	(int code)
@@ -508,4 +509,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Check whether the character is part of Me UCS Category

code:UCS code point
Returns:1 if true 0 otherwise

Function: xmlUCSIsCatS

int	xmlUCSIsCatS	(int code)

Check whether the character is part of S UCS Category

-
code:UCS code point
Returns:1 if true 0 otherwise

Daniel Veillard

+
code:UCS code point
Returns:1 if true 0 otherwise

Daniel Veillard

diff --git a/doc/html/libxml-xmlversion.html b/doc/html/libxml-xmlversion.html index 7adbacb0..877e8002 100644 --- a/doc/html/libxml-xmlversion.html +++ b/doc/html/libxml-xmlversion.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlversion from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlversion from libxml2

API Menu
API Indexes
Related links

Table of Contents

#define LIBXML_VERSION_STRING
+    Module xmlversion from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlversion from libxml2

API Menu
API Indexes
Related links

compile-time version informations for the XML library

Table of Contents

#define LIBXML_VERSION_STRING
 
 
#define LIBXML_DOCB_ENABLED
 
@@ -112,4 +113,4 @@ A:link, A:visited, A:active { text-decoration: underline }
 

Macro: LIBXML_VALID_ENABLED

#define LIBXML_VALID_ENABLED

Whether the DTD validation support is configured in

Macro: LIBXML_TREE_ENABLED

#define LIBXML_TREE_ENABLED

Whether the DOM like tree manipulation API support is configured in

Macro: LIBXML_WRITER_ENABLED

#define LIBXML_WRITER_ENABLED

Whether the xmlWriter saving interface is configured in

-

Daniel Veillard

+

Daniel Veillard

diff --git a/doc/html/libxml-xmlwriter.html b/doc/html/libxml-xmlwriter.html index 6d98a063..54662f27 100644 --- a/doc/html/libxml-xmlwriter.html +++ b/doc/html/libxml-xmlwriter.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xmlwriter from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlwriter from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlTextWriterStartDocument	(xmlTextWriterPtr writer, 
const char * version,
const char * encoding,
const char * standalone)
+ Module xmlwriter from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xmlwriter from libxml2

API Menu
API Indexes
Related links

text writing API for XML

Table of Contents

int	xmlTextWriterStartDocument	(xmlTextWriterPtr writer, 
const char * version,
const char * encoding,
const char * standalone)
int	xmlTextWriterEndPI	(xmlTextWriterPtr writer)
int	xmlTextWriterWriteBase64	(xmlTextWriterPtr writer, 
const char * data,
int start,
int len)
#define xmlTextWriterWriteProcessingInstruction
@@ -233,4 +234,4 @@ The content of this structure is not made public by the API.
 
writer:
name:
format:
argptr:
Returns:

Macro: xmlTextWriterEndDTDEntity

#define xmlTextWriterEndDTDEntity

Function: xmlTextWriterWriteFormatElementNS

int	xmlTextWriterWriteFormatElementNS	(xmlTextWriterPtr writer, 
const xmlChar * prefix,
const xmlChar * name,
const xmlChar * namespaceURI,
const char * format,
... ...)

Write a formatted xml element with namespace support.

-
writer:the xmlTextWriterPtr
prefix:namespace prefix
name:element local name
namespaceURI:namespace URI
format:format string (see printf)
...:
Returns:the bytes written (may be 0 because of buffering) or -1 in case of error

Daniel Veillard

+
writer:the xmlTextWriterPtr
prefix:namespace prefix
name:element local name
namespaceURI:namespace URI
format:format string (see printf)
...:
Returns:the bytes written (may be 0 because of buffering) or -1 in case of error

Daniel Veillard

diff --git a/doc/html/libxml-xpath.html b/doc/html/libxml-xpath.html index c5a5f7a4..9c4d1e89 100644 --- a/doc/html/libxml-xpath.html +++ b/doc/html/libxml-xpath.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xpath from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xpath from libxml2

API Menu
API Indexes
Related links

Table of Contents

int	xmlXPathCastNodeSetToBoolean	(xmlNodeSetPtr ns)
+ Module xpath from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xpath from libxml2

API Menu
API Indexes
Related links

API for the XML Path Language implementation XML Path Language implementation XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer

Table of Contents

int	xmlXPathCastNodeSetToBoolean	(xmlNodeSetPtr ns)
Typedef xmlXPathObject * xmlXPathObjectPtr
 
 
int	xmlXPathIsNaN	(double val)
@@ -116,25 +117,25 @@ A:link, A:visited, A:active { text-decoration: underline } xmlHashTablePtr funcHash : Hash table of defined funcs int nb_axis : number of defined axis int max_axis : max number of axis - xmlXPathAxisPtr axis : Array of defined axis the namespace nodes of the + xmlXPathAxisPtr axis : Array of defined axis the namespace nod xmlNsPtr * namespaces : Array of namespaces int nsNr : number of namespace in scope void * user : function to free extra variables int contextSize : the context size - int proximityPosition : the proximity position extra stuff for XPointer + int proximityPosition : the proximity position extra stuff for int xptr : it this an XPointer context xmlNodePtr here : for here() - xmlNodePtr origin : for origin() the set of namespace declarations in + xmlNodePtr origin : for origin() the set of namespace decla xmlHashTablePtr nsHash : The namespaces hash table void * varLookupFunc : variable lookup func - void * varLookupData : variable lookup data Possibility to link in an ex - void * extra : needed for XSLT The function name and URI when ca + void * varLookupData : variable lookup data Possibility to lin + void * extra : needed for XSLT The function name and U const xmlChar * function const xmlChar * functionURI : function lookup function and data void * funcLookupFunc : function lookup func - void * funcLookupData : function lookup data temporary namespace lists ke + void * funcLookupData : function lookup data temporary namespac xmlNsPtr * tmpNsList : Array of namespaces - int tmpNsNr : number of namespace in scope error reporting mech + int tmpNsNr : number of namespace in scope error repo void * userData : user specific data block xmlStructuredErrorFunc error : the callback in case of errors xmlError lastError : the last error @@ -164,7 +165,7 @@ A:link, A:visited, A:active { text-decoration: underline }
Structure xmlNodeSet
struct _xmlNodeSet { int nodeNr : number of nodes in the set int nodeMax : size of the array as allocated - xmlNodePtr * nodeTab : array of nodes in no particular order @@ with_ns + xmlNodePtr * nodeTab : array of nodes in no particular order @ }

Typedef xmlXPathFunct * xmlXPathFuncPtr
 
 
Function type: xmlXPathConvertFunc
@@ -370,4 +371,4 @@ The content of this structure is not made public by the API.
 

Compile an XPath expression

str:the XPath expression
Returns:the xmlXPathCompExprPtr resulting from the compilation or NULL. the caller has to free the object.

Function: xmlXPathCastNodeSetToNumber

double	xmlXPathCastNodeSetToNumber	(xmlNodeSetPtr ns)

Converts a node-set to its number value

-
ns:a node-set
Returns:the number value

Daniel Veillard

+
ns:a node-set
Returns:the number value

Daniel Veillard

diff --git a/doc/html/libxml-xpathInternals.html b/doc/html/libxml-xpathInternals.html index d10076a9..74839ac2 100644 --- a/doc/html/libxml-xpathInternals.html +++ b/doc/html/libxml-xpathInternals.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xpathInternals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xpathInternals from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlNodeSetPtr	xmlXPathNodeSetMerge	(xmlNodeSetPtr val1, 
xmlNodeSetPtr val2)
+ Module xpathInternals from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xpathInternals from libxml2

API Menu
API Indexes
Related links

internal interfaces for XML Path Language implementation used to build new modules on top of XPath like XPointer and XSLT

Table of Contents

xmlNodeSetPtr	xmlXPathNodeSetMerge	(xmlNodeSetPtr val1, 
xmlNodeSetPtr val2)
void	xmlXPathRoundFunction	(xmlXPathParserContextPtr ctxt, 
int nargs)
#define CAST_TO_NUMBER
 
@@ -466,4 +467,4 @@ A:link, A:visited, A:active { text-decoration: underline }
 

Implement the true() XPath function boolean true()

ctxt:the XPath Parser context
nargs:the number of arguments

Function: xmlXPathPopNumber

double	xmlXPathPopNumber	(xmlXPathParserContextPtr ctxt)

Pops a number from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.

-
ctxt:an XPath parser context
Returns:the number

Daniel Veillard

+
ctxt:an XPath parser context
Returns:the number

Daniel Veillard

diff --git a/doc/html/libxml-xpointer.html b/doc/html/libxml-xpointer.html index 8477b2a0..43d3bfbf 100644 --- a/doc/html/libxml-xpointer.html +++ b/doc/html/libxml-xpointer.html @@ -8,8 +8,9 @@ H2 {font-family: Verdana,Arial,Helvetica} H3 {font-family: Verdana,Arial,Helvetica} A:link, A:visited, A:active { text-decoration: underline } Module xpointer from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xpointer from libxml2

API Menu
API Indexes
Related links

Table of Contents

xmlXPathObjectPtr	xmlXPtrNewRangePoints	(xmlXPathObjectPtr start, 
xmlXPathObjectPtr end)
+ Module xpointer from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module xpointer from libxml2

API Menu
API Indexes
Related links

API to handle XML Pointers Base implementation was made accordingly to W3C Candidate Recommendation 7 June 2000

Table of Contents

xmlXPathObjectPtr	xmlXPtrNewRangePoints	(xmlXPathObjectPtr start, 
xmlXPathObjectPtr end)
Typedef xmlLocationSet * xmlLocationSetPtr
 
 
xmlNodePtr	xmlXPtrBuildNodeList	(xmlXPathObjectPtr obj)
@@ -83,4 +84,4 @@ A:link, A:visited, A:active { text-decoration: underline }

Removes an entry from an existing LocationSet list.

cur:the initial range set
val:the index to remove

Function: xmlXPtrNewRangeNodePoint

xmlXPathObjectPtr	xmlXPtrNewRangeNodePoint	(xmlNodePtr start, 
xmlXPathObjectPtr end)

Create a new xmlXPathObjectPtr of type range from a node to a point

-
start:the starting node
end:the ending point
Returns:the newly created object.

Daniel Veillard

+
start:the starting node
end:the ending point
Returns:the newly created object.

Daniel Veillard

diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml index f24e7529..7eadd4e8 100644 --- a/doc/libxml2-api.xml +++ b/doc/libxml2-api.xml @@ -2,6 +2,10 @@ + old DocBook SGML parser + interface for a DocBook SGML non-verifying parser This code is DEPRECATED, and should not be used anymore. + Daniel Veillard + @@ -21,6 +25,9 @@ + interface for an HTML 4.0 non-verifying parser + this module implements an HTML 4.0 non-verifying parser with API compatible with the XML parser ones. It should be able to parse "real world" HTML, even if severely broken from a specification point of view. + Daniel Veillard @@ -90,6 +97,9 @@ + specific APIs to process HTML tree, especially serialization + this module implements a few function needed to process tree in an HTML specific way. + Daniel Veillard @@ -114,6 +124,10 @@ + Old SAX version 1 handler, deprecated + DEPRECATED set of SAX version 1 interfaces used to build the DOM tree. + Daniel Veillard + @@ -153,6 +167,9 @@ + SAX2 parser interface used to build the DOM tree + those are the default SAX2 interfaces used by the library when building DOM tree. + Daniel Veillard @@ -198,6 +215,9 @@ + Provide Canonical XML and Exclusive XML Canonicalization + the c14n modules provides a "Canonical XML" implementation + Aleksey Sanin <aleksey@aleksey.com> @@ -205,6 +225,9 @@ + interfaces to the Catalog handling system + the catalog module implements the support for XML Catalogs and SGML catalogs + Daniel Veillard @@ -256,6 +279,9 @@ + Unicode character range checking + this module exports interfaces for the character range validation APIs This file is automatically generated from the cvs source definition files using the genChRanges.py Python script + William Brack <wbrack@mmm.com.hk> @@ -297,6 +323,9 @@ + Tree debugging APIs + Interfaces to a set of routines used for debugging the tree produced by the XML parser. + Daniel Veillard @@ -331,6 +360,9 @@ + string dictionnary + dictionary of reusable strings, just used to avoid allocation and freeing operations. + Daniel Veillard @@ -342,6 +374,9 @@ + interface for the encoding conversion functions + interface for the encoding conversion functions needed for XML basic encoding and iconv() support. Related specs are rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646] UTF-8 and UTF-16 in Annexes [ISO-8859-1] ISO Latin-1 characters codes. [UNICODE] The Unicode Consortium, "The Unicode Standard -- Worldwide Character Encoding -- Version 1.0", Addison- Wesley, Volume 1, 1991, Volume 2, 1992. UTF-8 is described in Unicode Technical Report #4. [US-ASCII] Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. + Daniel Veillard @@ -403,6 +438,9 @@ + interface for the XML entities handling + this module provides some of the entity API needed for the parser and applications. + Daniel Veillard @@ -431,6 +469,9 @@ + interface for all global variables of the library + all the global variables and thread handling for those variables is handled by this module. The bottom of this file is automatically generated by build_glob.py based on the description file global.data + Gary Pennington <Gary.Pennington@uk.sun.com>, Daniel Veillard @@ -490,6 +531,8 @@ + chained hash tables + Bjorn Reese <bjorn.reese@systematic.dk> @@ -521,6 +564,9 @@ + lists interfaces + this module implement the list support used in various place in the library. + Gary Pennington <Gary.Pennington@uk.sun.com> @@ -556,6 +602,9 @@ + minimal FTP implementation + minimal FTP implementation allowing to fetch resources like external subset. + Daniel Veillard @@ -582,6 +631,9 @@ + minimal HTTP implementation + minimal HTTP implementation allowing to fetch resources like external subset. + Daniel Veillard @@ -600,6 +652,9 @@ + the core parser module + Interfaces, constants and types related to the XML parser + Daniel Veillard @@ -773,6 +828,9 @@ + internals routines exported by the parser. + this module exports a number of internal parsing routines they are not really all intended for applications but can prove useful doing low level processing. + Daniel Veillard @@ -896,6 +954,9 @@ + implementation of the Relax-NG validation + implementation of the Relax-NG validation + Daniel Veillard @@ -967,6 +1028,9 @@ + internal interfaces for XML Schemas + internal interfaces for the XML Schemas handling and schema validity checking + Daniel Veillard @@ -1053,6 +1117,9 @@ + interfaces for thread handling + set of generic threading related routines should work with pthreads, Windows native or TLS threads + Daniel Veillard @@ -1074,6 +1141,9 @@ + interfaces for tree manipulation + this module describes the structures found in an tree resulting from an XML or HTML parsing, as well as the API provided for various processing on that tree + Daniel Veillard @@ -1340,6 +1410,9 @@ + library of generic URI related routines + library of generic URI related routines Implements RFC 2396 + Daniel Veillard @@ -1357,6 +1430,9 @@ + The DTD validation + API for the DTD handling and the validity checking + Daniel Veillard @@ -1443,6 +1519,9 @@ + implementation of XInclude + API to handle XInclude processing, implements the World Wide Web Consortium Working Draft 26 October 2000 + Daniel Veillard @@ -1460,6 +1539,9 @@ + unfinished XLink detection module + unfinished XLink detection module + Daniel Veillard @@ -1491,6 +1573,9 @@ + interface for the I/O interfaces used by the parser + interface for the I/O interfaces used by the parser + Daniel Veillard @@ -1548,6 +1633,9 @@ + API to build regexp automata + the API to build regexp automata + Daniel Veillard @@ -1570,6 +1658,9 @@ + error handling + the API used to report errors + Daniel Veillard @@ -2105,6 +2196,9 @@ + macros for marking symbols as exportable/importable. + macros for marking symbols as exportable/importable. + Igor Zlatovic <igor@zlatkovic.com> @@ -2112,6 +2206,9 @@ + interface for the memory allocator + provides interfaces for the memory allocator, including debugging capabilities. + Daniel Veillard @@ -2140,6 +2237,9 @@ + the XMLReader implementation + API of the XML streaming API based on C# interfaces. + Daniel Veillard @@ -2247,6 +2347,9 @@ + regular expressions handling + basic API for libxml regular expressions handling used for XML Schemas and validation. + Daniel Veillard @@ -2263,6 +2366,9 @@ + incomplete XML Schemas structure implementation + interface to the XML Schemas handling and schema validity checking, it is incomplete right now. + Daniel Veillard @@ -2313,6 +2419,9 @@ + implementation of XML Schema Datatypes + module providing the XML Schema Datatypes implementation both definition and validity checking + Daniel Veillard @@ -2326,6 +2435,9 @@ + Unicode character APIs + API for the Unicode character APIs This file is automatically generated from the UCS description files of the Unicode Character Database + Daniel Veillard @@ -2494,6 +2606,9 @@ + compile-time version informations + compile-time version informations for the XML library + Daniel Veillard @@ -2530,6 +2645,9 @@ + text writing API for XML + text writing API for XML + Alfred Mickautsch <alfred@mickautsch.de> @@ -2607,6 +2725,9 @@ + XML Path Language implementation + API for the XML Path Language implementation XML Path Language implementation XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer + Daniel Veillard @@ -2714,6 +2835,9 @@ + internal interfaces for XML Path Language implementation + internal interfaces for XML Path Language implementation used to build new modules on top of XPath like XPointer and XSLT + Daniel Veillard @@ -2864,6 +2988,9 @@ + API to handle XML Pointers + API to handle XML Pointers Base implementation was made accordingly to W3C Candidate Recommendation 7 June 2000 + Daniel Veillard diff --git a/doc/libxml2-refs.xml b/doc/libxml2-refs.xml index 2f108769..ab1554fd 100644 --- a/doc/libxml2-refs.xml +++ b/doc/libxml2-refs.xml @@ -6037,9 +6037,9 @@ + - diff --git a/doc/newapi.xsl b/doc/newapi.xsl index 5cbfab99..f92332c4 100644 --- a/doc/newapi.xsl +++ b/doc/newapi.xsl @@ -43,7 +43,7 @@
  • Code Examples
  • API Menu
  • + href="index.html">API Menu
  • Parser API
  • Tree API
  • Reader API
  • @@ -103,6 +103,7 @@ @@ -244,7 +245,7 @@ : - + @@ -425,6 +426,15 @@ + + +

    This module is deprecated

    +
    + +

    +
    +
    + Module from @@ -460,13 +470,28 @@ -

    Table of Contents

    - -

    Description

    - + + + +
    +

    Table of Contents

    + +

    Description

    + - -

    Daniel Veillard

    + +
    +
    + +

    Table of Contents

    + +

    Description

    + + + +
    +
    +

    Daniel Veillard

    @@ -489,12 +514,17 @@ -
  • +
  • + + : + +
  • - + + Reference Manual for - @@ -529,7 +559,7 @@
    -

    Daniel Veillard

    +

    Daniel Veillard

    @@ -548,6 +578,17 @@
    +
    + + + + + + + + + + diff --git a/genChRanges.py b/genChRanges.py index 27a44faf..d613148b 100755 --- a/genChRanges.py +++ b/genChRanges.py @@ -207,15 +207,16 @@ date = time.asctime(time.localtime(time.time())) header.write( """/* - * chvalid.h: this header exports interfaces for the character - * range validation APIs + * Summary: Unicode character range checking + * Description: this module exports interfaces for the character + * range validation APIs * * This file is automatically generated from the cvs source * definition files using the genChRanges.py Python script * * Generation date: %s * Sources: %s - * William Brack + * Author: William Brack */ #ifndef __XML_CHVALID_H__ diff --git a/genUnicode.py b/genUnicode.py index d3da5a0c..40af3509 100755 --- a/genUnicode.py +++ b/genUnicode.py @@ -209,7 +209,8 @@ date = time.asctime(time.localtime(time.time())) header.write( """/* - * xmlunicode.h: this header exports interfaces for the Unicode character APIs + * Summary: Unicode character APIs + * Description: API for the Unicode character APIs * * This file is automatically generated from the * UCS description files of the Unicode Character Database @@ -218,7 +219,7 @@ header.write( * * Generation date: %s * Sources: %s - * Daniel Veillard + * Author: Daniel Veillard */ #ifndef __XML_UNICODE_H__ diff --git a/include/libxml/DOCBparser.h b/include/libxml/DOCBparser.h index 3be1f98c..f97d2bfb 100644 --- a/include/libxml/DOCBparser.h +++ b/include/libxml/DOCBparser.h @@ -1,9 +1,11 @@ /* - * DOCBparser.h : interface for a DocBook SGML non-verifying parser + * Summary: old DocBook SGML parser + * Description: interface for a DocBook SGML non-verifying parser + * This code is DEPRECATED, and should not be used anymore. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __DOCB_PARSER_H__ diff --git a/include/libxml/HTMLparser.h b/include/libxml/HTMLparser.h index 6bab1a53..f39f0bb5 100644 --- a/include/libxml/HTMLparser.h +++ b/include/libxml/HTMLparser.h @@ -1,9 +1,13 @@ /* - * HTMLparser.h : interface for an HTML 4.0 non-verifying parser + * Summary: interface for an HTML 4.0 non-verifying parser + * Description: this module implements an HTML 4.0 non-verifying parser + * with API compatible with the XML parser ones. It should + * be able to parse "real world" HTML, even if severely + * broken from a specification point of view. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __HTML_PARSER_H__ diff --git a/include/libxml/HTMLtree.h b/include/libxml/HTMLtree.h index 832c7c8e..157aa670 100644 --- a/include/libxml/HTMLtree.h +++ b/include/libxml/HTMLtree.h @@ -1,10 +1,11 @@ /* - * HTMLtree.h : describes the structures found in an tree resulting - * from an XML parsing. + * Summary: specific APIs to process HTML tree, especially serialization + * Description: this module implements a few function needed to process + * tree in an HTML specific way. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __HTML_TREE_H__ diff --git a/include/libxml/SAX.h b/include/libxml/SAX.h index 3d5896e0..a305b69f 100644 --- a/include/libxml/SAX.h +++ b/include/libxml/SAX.h @@ -1,9 +1,11 @@ /* - * SAX.h : Old SAX vewrsion1 handler interfaces. + * Summary: Old SAX version 1 handler, deprecated + * Description: DEPRECATED set of SAX version 1 interfaces used to + * build the DOM tree. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel Veillard + * Author: Daniel Veillard */ diff --git a/include/libxml/SAX2.h b/include/libxml/SAX2.h index 1793f911..f5cc53cc 100644 --- a/include/libxml/SAX2.h +++ b/include/libxml/SAX2.h @@ -1,9 +1,11 @@ /* - * SAX.h : Default SAX2 handler interfaces to build a tree. + * Summary: SAX2 parser interface used to build the DOM tree + * Description: those are the default SAX2 interfaces used by + * the library when building DOM tree. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel Veillard + * Author: Daniel Veillard */ diff --git a/include/libxml/c14n.h b/include/libxml/c14n.h index 8a78929f..4bc441c4 100644 --- a/include/libxml/c14n.h +++ b/include/libxml/c14n.h @@ -1,11 +1,16 @@ /* + * Summary: Provide Canonical XML and Exclusive XML Canonicalization + * Description: the c14n modules provides a + * * "Canonical XML" implementation * http://www.w3.org/TR/xml-c14n * + * and an + * * "Exclusive XML Canonicalization" implementation * http://www.w3.org/TR/xml-exc-c14n - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * * Author: Aleksey Sanin */ diff --git a/include/libxml/catalog.h b/include/libxml/catalog.h index c8a5ac33..9701da06 100644 --- a/include/libxml/catalog.h +++ b/include/libxml/catalog.h @@ -1,15 +1,17 @@ /** - * catalog.h: interfaces of the Catalog handling system + * Summary: interfaces to the Catalog handling system + * Description: the catalog module implements the support for + * XML Catalogs and SGML catalogs * - * Reference: SGML Open Technical Resolution TR9401:1997. - * http://www.jclark.com/sp/catalog.htm + * SGML Open Technical Resolution TR9401:1997. + * http://www.jclark.com/sp/catalog.htm * - * XML Catalogs Working Draft 12 Jun 2001 - * http://www.oasis-open.org/committees/entity/spec-2001-06-12.html + * XML Catalogs Working Draft 06 August 2001 + * http://www.oasis-open.org/committees/entity/spec-2001-08-06.html * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_CATALOG_H__ diff --git a/include/libxml/chvalid.h b/include/libxml/chvalid.h index 0e0c7f4c..db122630 100644 --- a/include/libxml/chvalid.h +++ b/include/libxml/chvalid.h @@ -1,5 +1,6 @@ /* - * chvalid.h: this header exports interfaces for the character + * Summary: Unicode character range checking + * Description: this module exports interfaces for the character * range validation APIs * * This file is automatically generated from the cvs source @@ -7,7 +8,7 @@ * * Generation date: Tue Nov 18 08:14:21 2003 * Sources: chvalid.def - * William Brack + * Author: William Brack */ #ifndef __XML_CHVALID_H__ diff --git a/include/libxml/debugXML.h b/include/libxml/debugXML.h index 58211eb0..85966e52 100644 --- a/include/libxml/debugXML.h +++ b/include/libxml/debugXML.h @@ -1,8 +1,11 @@ /* - * debugXML.h : Interfaces to a set of routines used for debugging the tree + * Summary: Tree debugging APIs + * Description: Interfaces to a set of routines used for debugging the tree * produced by the XML parser. * - * Daniel Veillard + * Copy: See Copyright for the status of this software. + * + * Author: Daniel Veillard */ #ifndef __DEBUG_XML__ diff --git a/include/libxml/dict.h b/include/libxml/dict.h index d04a973a..e3390b36 100644 --- a/include/libxml/dict.h +++ b/include/libxml/dict.h @@ -1,19 +1,11 @@ /* - * dict.h: dictionary of reusable strings, just used to avoid allocation + * Summary: string dictionnary + * Description: dictionary of reusable strings, just used to avoid allocation * and freeing operations. * - * Copyright (C) 2003 Daniel Veillard. + * Copy: See Copyright for the status of this software. * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF - * MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND - * CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER. - * - * Author: daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_DICT_H__ diff --git a/include/libxml/encoding.h b/include/libxml/encoding.h index 4c6b7a86..74b4c4ab 100644 --- a/include/libxml/encoding.h +++ b/include/libxml/encoding.h @@ -1,8 +1,9 @@ /* - * encoding.h : interface for the encoding conversion functions needed for - * XML + * Summary: interface for the encoding conversion functions + * Description: interface for the encoding conversion functions needed for + * XML basic encoding and iconv() support. * - * Related specs: + * Related specs are * rfc2044 (UTF-8 and UTF-16) F. Yergeau Alis Technologies * [ISO-10646] UTF-8 and UTF-16 in Annexes * [ISO-8859-1] ISO Latin-1 characters codes. @@ -13,9 +14,9 @@ * [US-ASCII] Coded Character Set--7-bit American Standard Code for * Information Interchange, ANSI X3.4-1986. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_CHAR_ENCODING_H__ diff --git a/include/libxml/entities.h b/include/libxml/entities.h index 515913db..2dc12173 100644 --- a/include/libxml/entities.h +++ b/include/libxml/entities.h @@ -1,9 +1,11 @@ /* - * entities.h : interface for the XML entities handling + * Summary: interface for the XML entities handling + * Description: this module provides some of the entity API needed + * for the parser and applications. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_ENTITIES_H__ diff --git a/include/libxml/globals.h b/include/libxml/globals.h index 733632c7..e38c1032 100644 --- a/include/libxml/globals.h +++ b/include/libxml/globals.h @@ -1,13 +1,14 @@ /* - * globals.h: interface for all global variables of the library + * Summary: interface for all global variables of the library + * Description: all the global variables and thread handling for + * those variables is handled by this module. * * The bottom of this file is automatically generated by build_glob.py * based on the description file global.data * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Gary Pennington - * daniel@veillard.com + * Author: Gary Pennington , Daniel Veillard */ #ifndef __XML_GLOBALS_H diff --git a/include/libxml/hash.h b/include/libxml/hash.h index 8e5d0bb4..0c52eeb5 100644 --- a/include/libxml/hash.h +++ b/include/libxml/hash.h @@ -1,18 +1,11 @@ /* - * hash.h: chained hash tables + * Summary: chained hash tables + * description: this module implement the hash table support used in + * various place in the library. * - * Copyright (C) 2000 Bjorn Reese and Daniel Veillard. + * Copy: See Copyright for the status of this software. * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF - * MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND - * CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER. - * - * Author: bjorn.reese@systematic.dk + * Author: Bjorn Reese */ #ifndef __XML_HASH_H__ diff --git a/include/libxml/list.h b/include/libxml/list.h index 297831ae..1d834824 100644 --- a/include/libxml/list.h +++ b/include/libxml/list.h @@ -1,18 +1,11 @@ /* - * list.h: lists interfaces + * Summary: lists interfaces + * Description: this module implement the list support used in + * various place in the library. * - * Copyright (C) 2000 Gary Pennington and Daniel Veillard. + * Copy: See Copyright for the status of this software. * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF - * MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND - * CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER. - * - * Author: Gary.Pennington@uk.sun.com + * Author: Gary Pennington */ #ifndef __XML_LINK_INCLUDE__ diff --git a/include/libxml/nanoftp.h b/include/libxml/nanoftp.h index 2156c796..01fadb82 100644 --- a/include/libxml/nanoftp.h +++ b/include/libxml/nanoftp.h @@ -1,9 +1,11 @@ /* - * nanohttp.c: minimalist FTP implementation to fetch external subsets. + * Summary: minimal FTP implementation + * Description: minimal FTP implementation allowing to fetch resources + * like external subset. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __NANO_FTP_H__ diff --git a/include/libxml/nanohttp.h b/include/libxml/nanohttp.h index f404c7be..28531849 100644 --- a/include/libxml/nanohttp.h +++ b/include/libxml/nanohttp.h @@ -1,9 +1,11 @@ /* - * nanohttp.c: minimalist HTTP implementation to fetch external subsets. + * Summary: minimal HTTP implementation + * Description: minimal HTTP implementation allowing to fetch resources + * like external subset. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __NANO_HTTP_H__ diff --git a/include/libxml/parser.h b/include/libxml/parser.h index d7f8ce74..c4b5ff3e 100644 --- a/include/libxml/parser.h +++ b/include/libxml/parser.h @@ -1,9 +1,10 @@ /* - * parser.h : Interfaces, constants and types related to the XML parser. + * Summary: the core parser module + * Description: Interfaces, constants and types related to the XML parser * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_PARSER_H__ diff --git a/include/libxml/parserInternals.h b/include/libxml/parserInternals.h index e139199e..7e4503d2 100644 --- a/include/libxml/parserInternals.h +++ b/include/libxml/parserInternals.h @@ -1,10 +1,12 @@ /* - * parserInternals.h : internals routines exported by the parser. + * Summary: internals routines exported by the parser. + * Description: this module exports a number of internal parsing routines + * they are not really all intended for applications but + * can prove useful doing low level processing. * - * See Copyright for the status of this software. - * - * daniel@veillard.com + * Copy: See Copyright for the status of this software. * + * Author: Daniel Veillard */ #ifndef __XML_PARSER_INTERNALS_H__ diff --git a/include/libxml/relaxng.h b/include/libxml/relaxng.h index 519616ad..3cf95c2b 100644 --- a/include/libxml/relaxng.h +++ b/include/libxml/relaxng.h @@ -1,9 +1,10 @@ /* - * relaxng.h: header for the implementation of the Relax-NG validation + * Summary: implementation of the Relax-NG validation + * Description: implementation of the Relax-NG validation * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_RELAX_NG__ diff --git a/include/libxml/schemasInternals.h b/include/libxml/schemasInternals.h index db42d3e5..a044b672 100644 --- a/include/libxml/schemasInternals.h +++ b/include/libxml/schemasInternals.h @@ -1,10 +1,11 @@ /* - * schemasInternals.h : internal interfaces for the XML Schemas handling - * and schema validity checking + * Summary: internal interfaces for XML Schemas + * Description: internal interfaces for the XML Schemas handling + * and schema validity checking * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel.Veillard@w3.org + * Author: Daniel Veillard */ diff --git a/include/libxml/threads.h b/include/libxml/threads.h index 193c9aeb..fb6b7048 100644 --- a/include/libxml/threads.h +++ b/include/libxml/threads.h @@ -1,9 +1,11 @@ /** - * threads.c: set of generic threading related routines + * Summary: interfaces for thread handling + * Description: set of generic threading related routines + * should work with pthreads, Windows native or TLS threads * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_THREADS_H__ diff --git a/include/libxml/tree.h b/include/libxml/tree.h index 82b757ab..cfa95ec2 100644 --- a/include/libxml/tree.h +++ b/include/libxml/tree.h @@ -1,11 +1,12 @@ /* - * tree.h : describes the structures found in an tree resulting - * from an XML parsing. + * Summary: interfaces for tree manipulation + * Description: this module describes the structures found in an tree resulting + * from an XML or HTML parsing, as well as the API provided for + * various processing on that tree * - * See Copyright for the status of this software. - * - * daniel@veillard.com + * Copy: See Copyright for the status of this software. * + * Author: Daniel Veillard */ #ifndef __XML_TREE_H__ diff --git a/include/libxml/uri.h b/include/libxml/uri.h index 7c896416..5e29e631 100644 --- a/include/libxml/uri.h +++ b/include/libxml/uri.h @@ -1,11 +1,11 @@ /** - * uri.c: library of generic URI related routines + * Summary: library of generic URI related routines + * Description: library of generic URI related routines + * Implements RFC 2396 * - * Reference: RFC 2396 + * Copy: See Copyright for the status of this software. * - * See Copyright for the status of this software. - * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_URI_H__ diff --git a/include/libxml/valid.h b/include/libxml/valid.h index 4444650a..1ff3f0b5 100644 --- a/include/libxml/valid.h +++ b/include/libxml/valid.h @@ -1,9 +1,10 @@ /* - * valid.h : interface to the DTD handling and the validity checking + * Summary: The DTD validation + * Description: API for the DTD handling and the validity checking * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ diff --git a/include/libxml/xinclude.h b/include/libxml/xinclude.h index c952d3aa..a7799318 100644 --- a/include/libxml/xinclude.h +++ b/include/libxml/xinclude.h @@ -1,12 +1,13 @@ /* - * xinclude.c : API to handle XInclude processing - * + * Summary: implementation of XInclude + * Description: API to handle XInclude processing, + * implements the * World Wide Web Consortium Working Draft 26 October 2000 * http://www.w3.org/TR/2000/WD-xinclude-20001026 * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_XINCLUDE_H__ diff --git a/include/libxml/xlink.h b/include/libxml/xlink.h index cb7ad717..4b99611a 100644 --- a/include/libxml/xlink.h +++ b/include/libxml/xlink.h @@ -1,13 +1,10 @@ /* - * xlink.h : interfaces to the hyperlinks detection module + * Summary: unfinished XLink detection module + * Description: unfinished XLink detection module * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Related specification: http://www.w3.org/TR/xlink - * http://www.w3.org/HTML/ - * and XBase - * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_XLINK_H__ diff --git a/include/libxml/xmlIO.h b/include/libxml/xmlIO.h index ac390ce0..2ab845d6 100644 --- a/include/libxml/xmlIO.h +++ b/include/libxml/xmlIO.h @@ -1,10 +1,10 @@ /* - * xmlIO.h : interface for the I/O interfaces used by the parser + * Summary: interface for the I/O interfaces used by the parser + * Description: interface for the I/O interfaces used by the parser * - * See Copyright for the status of this software. - * - * daniel@veillard.com + * Copy: See Copyright for the status of this software. * + * Author: Daniel Veillard */ #ifndef __XML_IO_H__ diff --git a/include/libxml/xmlautomata.h b/include/libxml/xmlautomata.h index c51284b2..16a1467e 100644 --- a/include/libxml/xmlautomata.h +++ b/include/libxml/xmlautomata.h @@ -1,9 +1,10 @@ /* - * automata.h : description of the API to build regexp automats + * Summary: API to build regexp automata + * Description: the API to build regexp automata * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel Veillard + * Author: Daniel Veillard */ #ifndef __XML_AUTOMATA_H__ diff --git a/include/libxml/xmlerror.h b/include/libxml/xmlerror.h index 35320235..648ddffb 100644 --- a/include/libxml/xmlerror.h +++ b/include/libxml/xmlerror.h @@ -1,3 +1,12 @@ +/* + * Summary: error handling + * Description: the API used to report errors + * + * Copy: See Copyright for the status of this software. + * + * Author: Daniel Veillard + */ + #include #ifndef __XML_ERROR_H__ diff --git a/include/libxml/xmlexports.h b/include/libxml/xmlexports.h index 4b40da7d..c90e4207 100644 --- a/include/libxml/xmlexports.h +++ b/include/libxml/xmlexports.h @@ -1,9 +1,10 @@ /* - * xmlexports.h : macros for marking symbols as exportable/importable. + * Summary: macros for marking symbols as exportable/importable. + * Description: macros for marking symbols as exportable/importable. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * igor@zlatkovic.com + * Author: Igor Zlatovic */ #ifndef __XML_EXPORTS_H__ diff --git a/include/libxml/xmlmemory.h b/include/libxml/xmlmemory.h index c78f65a4..3d890d0d 100644 --- a/include/libxml/xmlmemory.h +++ b/include/libxml/xmlmemory.h @@ -1,7 +1,11 @@ /* - * xmlmemory.h: interface for the memory allocation debug. + * Summary: interface for the memory allocator + * Description: provides interfaces for the memory allocator, + * including debugging capabilities. * - * daniel@veillard.com + * Copy: See Copyright for the status of this software. + * + * Author: Daniel Veillard */ diff --git a/include/libxml/xmlreader.h b/include/libxml/xmlreader.h index d273681f..a144764f 100644 --- a/include/libxml/xmlreader.h +++ b/include/libxml/xmlreader.h @@ -1,9 +1,10 @@ /* - * xmlreader.h : Interfaces, constants and types of the XML streaming API. + * Summary: the XMLReader implementation + * Description: API of the XML streaming API based on C# interfaces. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_XMLREADER_H__ diff --git a/include/libxml/xmlregexp.h b/include/libxml/xmlregexp.h index 0e332b6c..6a9bcf1f 100644 --- a/include/libxml/xmlregexp.h +++ b/include/libxml/xmlregexp.h @@ -1,9 +1,11 @@ /* - * regexp.h : describes the basic API for libxml regular expressions handling + * Summary: regular expressions handling + * Description: basic API for libxml regular expressions handling used + * for XML Schemas and validation. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel Veillard + * Author: Daniel Veillard */ #ifndef __XML_REGEXP_H__ diff --git a/include/libxml/xmlschemas.h b/include/libxml/xmlschemas.h index ea469a33..49bf3b49 100644 --- a/include/libxml/xmlschemas.h +++ b/include/libxml/xmlschemas.h @@ -1,10 +1,11 @@ /* - * schemas.h : interface to the XML Schemas handling and schema validity - * checking + * Summary: incomplete XML Schemas structure implementation + * Description: interface to the XML Schemas handling and schema validity + * checking, it is incomplete right now. * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel.Veillard@w3.org + * Author: Daniel Veillard */ diff --git a/include/libxml/xmlschemastypes.h b/include/libxml/xmlschemastypes.h index 873101e0..4514c593 100644 --- a/include/libxml/xmlschemastypes.h +++ b/include/libxml/xmlschemastypes.h @@ -1,10 +1,11 @@ /* - * schemastypes.c : interface of the XML Schema Datatypes - * definition and validity checking + * Summary: implementation of XML Schema Datatypes + * Description: module providing the XML Schema Datatypes implementation + * both definition and validity checking * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * Daniel Veillard + * Author: Daniel Veillard */ diff --git a/include/libxml/xmlunicode.h b/include/libxml/xmlunicode.h index 48ac131e..b8537dc8 100644 --- a/include/libxml/xmlunicode.h +++ b/include/libxml/xmlunicode.h @@ -1,5 +1,6 @@ /* - * xmlunicode.h: this header exports interfaces for the Unicode character APIs + * Summary: Unicode character APIs + * Description: API for the Unicode character APIs * * This file is automatically generated from the * UCS description files of the Unicode Character Database @@ -8,7 +9,7 @@ * * Generation date: Mon Nov 10 22:35:10 2003 * Sources: Blocks-4.0.1d1b.txt UnicodeData-4.0.1d1b.txt - * Daniel Veillard + * Author: Daniel Veillard */ #ifndef __XML_UNICODE_H__ diff --git a/include/libxml/xmlversion.h.in b/include/libxml/xmlversion.h.in index 91c6107e..dd78b882 100644 --- a/include/libxml/xmlversion.h.in +++ b/include/libxml/xmlversion.h.in @@ -1,9 +1,10 @@ /* - * xmlversion.h : compile-time version informations for the XML parser. + * Summary: compile-time version informations + * Description: compile-time version informations for the XML library * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_VERSION_H__ diff --git a/include/libxml/xmlwin32version.h b/include/libxml/xmlwin32version.h index f19be593..d09dd03a 100644 --- a/include/libxml/xmlwin32version.h +++ b/include/libxml/xmlwin32version.h @@ -1,10 +1,11 @@ /* - * xmlwin32version.h : compile-time version informations for the XML parser - * when compiled on the Windows platform + * Summary: compile-time version informations on Windows + * Description: compile-time version informations for the XML library + * when compiled on the Windows platform * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_VERSION_H__ diff --git a/include/libxml/xmlwin32version.h.in b/include/libxml/xmlwin32version.h.in index 3ecdf750..7554966a 100644 --- a/include/libxml/xmlwin32version.h.in +++ b/include/libxml/xmlwin32version.h.in @@ -1,10 +1,11 @@ /* - * xmlwin32version.h : compile-time version informations for the XML parser - * when compiled on the Windows platform + * Summary: compile-time version informations on Windows + * Description: compile-time version informations for the XML library + * when compiled on the Windows platform * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_VERSION_H__ diff --git a/include/libxml/xmlwriter.h b/include/libxml/xmlwriter.h index 224d030c..23635def 100644 --- a/include/libxml/xmlwriter.h +++ b/include/libxml/xmlwriter.h @@ -1,13 +1,10 @@ - /* - * xmlwriter.h : Interfaces, - constants and types of the - * text writing API.for XML + * Summary: text writing API for XML + * Description: text writing API for XML * - * For license and disclaimer see the license and disclaimer of - * libxml2. + * Copy: See Copyright for the status of this software. * - * alfred@mickautsch.de + * Author: Alfred Mickautsch */ #ifndef __XML_XMLWRITER_H__ diff --git a/include/libxml/xpath.h b/include/libxml/xpath.h index dbd1b777..5172e932 100644 --- a/include/libxml/xpath.h +++ b/include/libxml/xpath.h @@ -1,12 +1,19 @@ /* - * xpath.c: interface for XML Path Language implementation + * Summary: XML Path Language implementation + * Description: API for the XML Path Language implementation * - * Reference: W3C Working Draft 5 July 1999 - * http://www.w3.org/Style/XSL/Group/1999/07/xpath-19990705.html + * XML Path Language implementation + * XPath is a language for addressing parts of an XML document, + * designed to be used by both XSLT and XPointer + * http://www.w3.org/TR/xpath * - * See COPYRIGHT for the status of this software + * Implements + * W3C Recommendation 16 November 1999 + * http://www.w3.org/TR/1999/REC-xpath-19991116 * - * Author: daniel@veillard.com + * Copy: See Copyright for the status of this software. + * + * Author: Daniel Veillard */ #ifndef __XML_XPATH_H__ diff --git a/include/libxml/xpathInternals.h b/include/libxml/xpathInternals.h index 896742b4..75e5d742 100644 --- a/include/libxml/xpathInternals.h +++ b/include/libxml/xpathInternals.h @@ -1,10 +1,12 @@ /* - * xpathInternals.c: internal interfaces for XML Path Language implementation - * used to build new modules on top of XPath + * Summary: internal interfaces for XML Path Language implementation + * Description: internal interfaces for XML Path Language implementation + * used to build new modules on top of XPath like XPointer and + * XSLT * - * See COPYRIGHT for the status of this software + * Copy: See Copyright for the status of this software. * - * Author: daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_XPATH_INTERNALS_H__ diff --git a/include/libxml/xpointer.h b/include/libxml/xpointer.h index 67e17db0..7f59eb7f 100644 --- a/include/libxml/xpointer.h +++ b/include/libxml/xpointer.h @@ -1,12 +1,17 @@ /* - * xpointer.h : API to handle XML Pointers + * Summary: API to handle XML Pointers + * Description: API to handle XML Pointers + * Base implementation was made accordingly to + * W3C Candidate Recommendation 7 June 2000 + * http://www.w3.org/TR/2000/CR-xptr-20000607 * - * World Wide Web Consortium Working Draft 03-March-1998 - * http://www.w3.org/TR/1998/WD-xptr-19980303 + * Added support for the element() scheme described in: + * W3C Proposed Recommendation 13 November 2002 + * http://www.w3.org/TR/2002/PR-xptr-element-20021113/ * - * See Copyright for the status of this software. + * Copy: See Copyright for the status of this software. * - * daniel@veillard.com + * Author: Daniel Veillard */ #ifndef __XML_XPTR_H__